decocms 4.358.1 → 4.358.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/client/assets/{AlertCircle-DPaRwgAG.js → AlertCircle-B4feVBXY.js} +1 -1
- package/dist/client/assets/{AreaChart-CPSJGT4X.js → AreaChart-xk7ixbvq.js} +1 -1
- package/dist/client/assets/{ArrowLeft-XjRNFRv1.js → ArrowLeft-CEiALrg5.js} +1 -1
- package/dist/client/assets/{ArrowRight-J-petX6f.js → ArrowRight-BTq6Mik4.js} +1 -1
- package/dist/client/assets/{ArrowUp-CaHcPB8P.js → ArrowUp-DUd1tvoY.js} +1 -1
- package/dist/client/assets/{Check-JeFVYVsD.js → Check-DSznPieK.js} +1 -1
- package/dist/client/assets/{CheckCircle-B4aCNQJF.js → CheckCircle-BoKMuFFK.js} +1 -1
- package/dist/client/assets/{ChevronRight-CTXDn067.js → ChevronRight-hScC2vQT.js} +1 -1
- package/dist/client/assets/{ChevronSelectorVertical-BdzqI_Xi.js → ChevronSelectorVertical-DYGDtqQU.js} +1 -1
- package/dist/client/assets/{ChevronUp-D737agYe.js → ChevronUp-D2N9Rnsm.js} +1 -1
- package/dist/client/assets/{Copy01-6dDv22T0.js → Copy01-D6tBkCFE.js} +1 -1
- package/dist/client/assets/{CreditCard01-vUDzOCKN.js → CreditCard01-DHrVBbVQ.js} +1 -1
- package/dist/client/assets/{DotsVertical-C_GXibMO.js → DotsVertical-DCodbdte.js} +1 -1
- package/dist/client/assets/{Download01-Cj7iGaqQ.js → Download01-DABFHb1d.js} +1 -1
- package/dist/client/assets/{ErrorBarContext-DkoZiC3w.js → ErrorBarContext-B6wKzwbu.js} +1 -1
- package/dist/client/assets/{Eye-CE-B81UX.js → Eye-B3oSsvLj.js} +1 -1
- package/dist/client/assets/{GitBranch01-CA7uP9ea.js → GitBranch01-DzMJOGpq.js} +1 -1
- package/dist/client/assets/{Globe01-C4bqo-s6.js → Globe01-BrqsrpDf.js} +1 -1
- package/dist/client/assets/{HardDrive-BXwcYpMb.js → HardDrive-GH60QJZP.js} +1 -1
- package/dist/client/assets/{Image01-CPXhRcpD.js → Image01-BXIhjY0H.js} +1 -1
- package/dist/client/assets/{Key01-BRzVe6En.js → Key01-Cu5VaAjI.js} +1 -1
- package/dist/client/assets/{Link01-jwUl0VA2.js → Link01-BX-inToB.js} +1 -1
- package/dist/client/assets/{LinkExternal01-CQkNNysg.js → LinkExternal01-BeqAzxr0.js} +1 -1
- package/dist/client/assets/{Monitor01-BEXQ2Ufe.js → Monitor01-B8Eiio86.js} +1 -1
- package/dist/client/assets/{Package-CWgS7aGL.js → Package-nKUXgWuw.js} +1 -1
- package/dist/client/assets/{Palette-CJp_qQUp.js → Palette-DR1mcJdO.js} +1 -1
- package/dist/client/assets/{Play-DXr4SlB4.js → Play-CUMxd8pI.js} +1 -1
- package/dist/client/assets/{Plus-VBzAzGvj.js → Plus-CWZNNoAx.js} +1 -1
- package/dist/client/assets/{SearchLg-eFvz4geh.js → SearchLg-XAxRszGI.js} +1 -1
- package/dist/client/assets/{SearchMd-Z0aCyP31.js → SearchMd-s6uNB4wI.js} +1 -1
- package/dist/client/assets/{Sector-BNkZJTvV.js → Sector-CJ2wnW0I.js} +1 -1
- package/dist/client/assets/{Settings02-Cruxvgg5.js → Settings02-DbPGs1Rx.js} +1 -1
- package/dist/client/assets/{Share07-B_cBawT5.js → Share07-sjsNxfH0.js} +1 -1
- package/dist/client/assets/{Shield01-CdZECJoy.js → Shield01-CXJEVef8.js} +1 -1
- package/dist/client/assets/{Stars01-DhZ4bIeh.js → Stars01-BbALL_Dz.js} +1 -1
- package/dist/client/assets/{Sun-yIhUijXR.js → Sun-D9EHkDHZ.js} +1 -1
- package/dist/client/assets/{Tool01-CED40lZm.js → Tool01-Cgauvp7A.js} +1 -1
- package/dist/client/assets/{Tool02-BXyLkOoT.js → Tool02-CKD21joz.js} +1 -1
- package/dist/client/assets/{Trash01-D4zzNKOs.js → Trash01-D5k8EQTh.js} +1 -1
- package/dist/client/assets/{TrendUp01-BS25tCwK.js → TrendUp01-Cp4l1k_8.js} +1 -1
- package/dist/client/assets/{Upload01-CUqXLK6y.js → Upload01-jz7bmbIK.js} +1 -1
- package/dist/client/assets/{User01-DE5O7H7j.js → User01-BwDlOx51.js} +1 -1
- package/dist/client/assets/{UserSquare-BX0Y2TWZ.js → UserSquare-CWwSbzOR.js} +1 -1
- package/dist/client/assets/{Users01-DuDTleoN.js → Users01-BMy_qWce.js} +1 -1
- package/dist/client/assets/{Users03-BRuCKyfI.js → Users03-ug4mReK5.js} +1 -1
- package/dist/client/assets/{XCircle-B04wAQpu.js → XCircle-CN2ioUu0.js} +1 -1
- package/dist/client/assets/{XClose-DNLErYyb.js → XClose-ClZTxkdu.js} +1 -1
- package/dist/client/assets/{Zap-CugJ59Kw.js → Zap-B4KpUTOC.js} +1 -1
- package/dist/client/assets/{ZoomOut-BiO8sX4m.js → ZoomOut-DUIhc7iI.js} +1 -1
- package/dist/client/assets/{access-gate-DNscBn-J.js → access-gate-PswGCIi5.js} +1 -1
- package/dist/client/assets/{agent-icon-2Brp-tzf.js → agent-icon-PWN9uPtp.js} +1 -1
- package/dist/client/assets/{agents-list-MYf1OTmf.js → agents-list-Cy704Di0.js} +1 -1
- package/dist/client/assets/{ai-providers-IEvC3m_0.js → ai-providers-D_yn2Kps.js} +1 -1
- package/dist/client/assets/{alert-DA4bcZHo.js → alert-KgicFiyn.js} +1 -1
- package/dist/client/assets/{alert-dialog-BxnHhmWY.js → alert-dialog-Bjg29J3P.js} +1 -1
- package/dist/client/assets/{analytics-tab-C65wb6yE.js → analytics-tab-WLPbHPxB.js} +1 -1
- package/dist/client/assets/{api-keys-CLUI5yOt.js → api-keys-8V378lXS.js} +1 -1
- package/dist/client/assets/api-keys-B-u9SWvl.js +1 -0
- package/dist/client/assets/{app-editor-CW_Z-zSE.js → app-editor-CR5r-AtS.js} +1 -1
- package/dist/client/assets/{auth-C1sSy1I_.js → auth-Bc7owB5v.js} +1 -1
- package/dist/client/assets/{auth-catchall-Cl51b39x.js → auth-catchall-C_UCoG9W.js} +1 -1
- package/dist/client/assets/{auth-entry-DwA_XRHv.js → auth-entry-Cuwr_VGY.js} +1 -1
- package/dist/client/assets/{auth-split-layout-DPCEizTJ.js → auth-split-layout-Botzu9So.js} +1 -1
- package/dist/client/assets/{authenticate-and-persist-oauth-BIhqpyGw.js → authenticate-and-persist-oauth-AWML-ztq.js} +1 -1
- package/dist/client/assets/{automation-list-row-BPDjHB4X.js → automation-list-row-C4w0_Yq6.js} +1 -1
- package/dist/client/assets/{automation-runs-fa-TFht1.js → automation-runs-B_p5OeyC.js} +1 -1
- package/dist/client/assets/{automations-CZnQfZ3w.js → automations-CR1Pv9Ly.js} +1 -1
- package/dist/client/assets/{autosend-DoFxpWqR.js → autosend-CrytFey2.js} +1 -1
- package/dist/client/assets/{avatar-QqQiR6fK.js → avatar-yu57dhaD.js} +1 -1
- package/dist/client/assets/{badge-yMyvOLD3.js → badge-mMw16-Pu.js} +1 -1
- package/dist/client/assets/{block-document-WJ37E3Ni.js → block-document-CkRsAO_A.js} +1 -1
- package/dist/client/assets/{breadcrumb-BDAUanwC.js → breadcrumb-CC2ZhPB-.js} +1 -1
- package/dist/client/assets/{buckets-etYgDqf7.js → buckets-COWiCqWm.js} +1 -1
- package/dist/client/assets/{bulk-category-panel-TjU9hA6M.js → bulk-category-panel-CqcCwrQ0.js} +1 -1
- package/dist/client/assets/{capability-load-error-DkvKRx5b.js → capability-load-error-CFvjxFBc.js} +1 -1
- package/dist/client/assets/{cards-J1P_sgLl.js → cards-Dlq0pGY7.js} +1 -1
- package/dist/client/assets/{category-editor-CnqXWFJe.js → category-editor-B5y0eMGh.js} +1 -1
- package/dist/client/assets/{cdn-tab-CdoMepAY.js → cdn-tab-BbhbA0tB.js} +1 -1
- package/dist/client/assets/{chart-DgJ8Lj_z.js → chart-B1NG_PuC.js} +1 -1
- package/dist/client/assets/{chat-context-DxI0qb93.js → chat-context-Bz9AX9yW.js} +1 -1
- package/dist/client/assets/{checkbox-Bv_GOC-t.js → checkbox-C0yVK60S.js} +1 -1
- package/dist/client/assets/{choose-editor-C7AIaX6k.js → choose-editor-Cu-okl5i.js} +1 -1
- package/dist/client/assets/{cli-auth-success-CXVZFO0S.js → cli-auth-success-yNjPM-kO.js} +1 -1
- package/dist/client/assets/{client-icons-DdaC6sYj.js → client-icons-lMh-sqiv.js} +1 -1
- package/dist/client/assets/{collection-detail-D8Fgfe_y.js → collection-detail-CClSHkGH.js} +1 -1
- package/dist/client/assets/{collection-display-button-DoLL3dHH.js → collection-display-button-BdIYh2Ep.js} +1 -1
- package/dist/client/assets/{collection-search-28-_kNJz.js → collection-search-CwqJ9Dia.js} +1 -1
- package/dist/client/assets/{collection-table-wrapper-CeD9_VYm.js → collection-table-wrapper-DLYv8gtk.js} +1 -1
- package/dist/client/assets/{collection-tabs-0xbXLZOC.js → collection-tabs-B_eSFPng.js} +1 -1
- package/dist/client/assets/{command-CbxQwPAk.js → command-CkDjlTXU.js} +1 -1
- package/dist/client/assets/{commerce-onboarding-DltC125X.js → commerce-onboarding-BgFEuUtH.js} +1 -1
- package/dist/client/assets/{connect-DqjDrR3h.js → connect-QTqdrw1M.js} +1 -1
- package/dist/client/assets/{connect-layout-Bu0WZMR_.js → connect-layout-BLSobfTy.js} +1 -1
- package/dist/client/assets/{connection-v15YrTSw.js → connection-CKyNZYOJ.js} +1 -1
- package/dist/client/assets/{connection-card-Bzr21Ou8.js → connection-card-CdA6w6nj.js} +1 -1
- package/dist/client/assets/{connection-detail-BDNGZ8tC.js → connection-detail-BveeSkor.js} +1 -1
- package/dist/client/assets/{connection-form-helpers-B4cG-D7o.js → connection-form-helpers-BEELjr90.js} +1 -1
- package/dist/client/assets/{connections-B-hlfNZJ.js → connections-DuV040Zr.js} +1 -1
- package/dist/client/assets/{create-organization-dialog-BklPNOel.js → create-organization-dialog-5fYd65TA.js} +1 -1
- package/dist/client/assets/{decopilot-sse-pool-BnSfF29I.js → decopilot-sse-pool-CkQ6ZRGu.js} +1 -1
- package/dist/client/assets/{dialog-BKi4ovai.js → dialog-yNkqhTt0.js} +1 -1
- package/dist/client/assets/{domain-settings-BYWSoGqG.js → domain-settings-BIup9mMA.js} +1 -1
- package/dist/client/assets/{drawer-Brlbfw3K.js → drawer-Osy8uHfr.js} +1 -1
- package/dist/client/assets/{dropdown-menu-cKkiZvfH.js → dropdown-menu-BsVti3MJ.js} +1 -1
- package/dist/client/assets/{e2e-tab-AK0drfJR.js → e2e-tab-DLCsUR2p.js} +1 -1
- package/dist/client/assets/{editor-5C9HKUf_.js → editor-DriQrOTE.js} +1 -1
- package/dist/client/assets/{empty-state-QWKD3zPq.js → empty-state-0cyTMWAI.js} +1 -1
- package/dist/client/assets/{empty-state-CSwM--V8.js → empty-state-CGlXCCL3.js} +1 -1
- package/dist/client/assets/{extract-connection-data-CxL8-WFV.js → extract-connection-data-CgsoMbpk.js} +1 -1
- package/dist/client/assets/{file-explorer-2Qp6thGj.js → file-explorer-C4b--YYN.js} +1 -1
- package/dist/client/assets/{file-type-icon-CgIeRA5V.js → file-type-icon-D4mjEpYh.js} +1 -1
- package/dist/client/assets/{folder-icon-BgXuWGYM.js → folder-icon-BTkY4QvK.js} +1 -1
- package/dist/client/assets/{form-mXpbE17u.js → form-JHjimXp-.js} +1 -1
- package/dist/client/assets/{general-CrLocpSx.js → general-DEkc0htC.js} +1 -1
- package/dist/client/assets/{github-icon-CoGoMYrC.js → github-icon-CsrFdTqg.js} +1 -1
- package/dist/client/assets/{hooks-d3UYkGk8.js → hooks-DANXBliL.js} +1 -1
- package/dist/client/assets/{index-DZ0DPlBW.js → index-BQbrxApR.js} +1 -1
- package/dist/client/assets/{index--oE26u5Z.js → index-BzV3bISK.js} +1 -1
- package/dist/client/assets/{index-BotDajI_.js → index-C-470Zac.js} +1 -1
- package/dist/client/assets/{index-BhQz8p58.js → index-C2EC-8EL.js} +1 -1
- package/dist/client/assets/{index-C0SGJ6GK.js → index-CYGHWhAG.js} +1 -1
- package/dist/client/assets/{index-Cu5G9hQZ.js → index-Cr9NwzG_.js} +1 -1
- package/dist/client/assets/{index-D7dBG_xb.js → index-D6Wx8_a-.js} +1 -1
- package/dist/client/assets/{index-ClTC9lyB.js → index-DWoH_HtY.js} +1 -1
- package/dist/client/assets/{index-DWLzuJaz.js → index-DYMgyYa7.js} +1 -1
- package/dist/client/assets/{index-bbgkkxsB.js → index-Du0UrpQW.js} +1 -1
- package/dist/client/assets/{index-GEMwVlLI.js → index-jVjQV0hI.js} +6 -6
- package/dist/client/assets/{index-redirect-I7csUGQa.js → index-redirect-DES_itg8.js} +1 -1
- package/dist/client/assets/{index-C3vlrgoO.js → index-wCxpHMXU.js} +2 -2
- package/dist/client/assets/{infiniteQueryObserver-B6plkr5u.js → infiniteQueryObserver-BeHrAgTJ.js} +1 -1
- package/dist/client/assets/{infra-billing-D7w1W9Om.js → infra-billing-B4wQxygg.js} +1 -1
- package/dist/client/assets/{input-DjDT3ozl.js → input-B1KBCyOs.js} +1 -1
- package/dist/client/assets/{integration-icon-YB5qEO1J.js → integration-icon-CePBNsW5.js} +1 -1
- package/dist/client/assets/{invite-member-dialog-Bn1ycp_V.js → invite-member-dialog-Bt5E6A0n.js} +1 -1
- package/dist/client/assets/{label-DZ4z0CyF.js → label-Yogy3AMi.js} +1 -1
- package/dist/client/assets/{layout-Bf8dZkIH.js → layout-vR4ZjU0Y.js} +1 -1
- package/dist/client/assets/{login-COTODW0U.js → login-BNEwujRE.js} +1 -1
- package/dist/client/assets/{markdown-BsaXwE5E.js → markdown-pR8dS8tN.js} +1 -1
- package/dist/client/assets/{mcp-app-renderer-BIDmKHPE.js → mcp-app-renderer-yKTik6A5.js} +1 -1
- package/dist/client/assets/{mcp-oauth-BH_5gt0z.js → mcp-oauth-Blxm9yu4.js} +1 -1
- package/dist/client/assets/{members-BNkTVkyS.js → members-B-zfccSk.js} +1 -1
- package/dist/client/assets/{monaco-editor-CmzYFyFO.js → monaco-editor-C1EipHZw.js} +1 -1
- package/dist/client/assets/{monitoring-stats-row-DJUu-f5P.js → monitoring-stats-row-kZlGn9lw.js} +1 -1
- package/dist/client/assets/{multi-select-nhzAp1k1.js → multi-select-DbQIPTvx.js} +1 -1
- package/dist/client/assets/{oauth-callback-ai-provider-BWp4BRgr.js → oauth-callback-ai-provider-CkT7e4xe.js} +1 -1
- package/dist/client/assets/{oauth-callback-Uw1X8Rm8.js → oauth-callback-go6uCK8z.js} +1 -1
- package/dist/client/assets/{onboarding-BOMneDTJ.js → onboarding-ZsHNNbTD.js} +1 -1
- package/dist/client/assets/{org-layout-D6PNY6Ib.js → org-layout-DGEdM2Nu.js} +1 -1
- package/dist/client/assets/{organization-choice-DsLSY9bh.js → organization-choice-dpjOK7dX.js} +1 -1
- package/dist/client/assets/{orgs-BjjFeeii.js → orgs-D9Thop-7.js} +1 -1
- package/dist/client/assets/{page-seo-form-DMqXi0PY.js → page-seo-form-FpfB128L.js} +1 -1
- package/dist/client/assets/{popover-BNMBwf36.js → popover-KRufMKxS.js} +1 -1
- package/dist/client/assets/{post-calendar-Tdl1cWb4.js → post-calendar-C3AebbbR.js} +1 -1
- package/dist/client/assets/{post-editor-Jxhwxzu9.js → post-editor-B1vjx1wx.js} +1 -1
- package/dist/client/assets/{primitives-eDVkDLyD.js → primitives-BUOq_WQw.js} +1 -1
- package/dist/client/assets/{profile-CwwUYHeI.js → profile-W9d1pU_e.js} +1 -1
- package/dist/client/assets/{project-app-view-DvSxxiMZ.js → project-app-view-CfpylulM.js} +1 -1
- package/dist/client/assets/{project-icon-B33pWTBF.js → project-icon-B94kMA3_.js} +1 -1
- package/dist/client/assets/{prompts-cFL0cJDn.js → prompts-DaUX-VsQ.js} +1 -1
- package/dist/client/assets/record-editor-CkacRj41.js +1 -0
- package/dist/client/assets/redirect-editor-QFv5yaYh.js +1 -0
- package/dist/client/assets/registry-BKojoZoQ.js +2 -0
- package/dist/client/assets/{registry-layout-D5fD-Otx.js → registry-layout-zvbeoiS_.js} +1 -1
- package/dist/client/assets/{reports-aRuC8m37.js → reports-Cu8NNHJP.js} +1 -1
- package/dist/client/assets/{repositories-nM4wwnxj.js → repositories-D-8nbJWQ.js} +1 -1
- package/dist/client/assets/{repository-import-picker-DHQHo5M0.js → repository-import-picker-B16wm8S6.js} +1 -1
- package/dist/client/assets/{repository-picker-Davl2db1.js → repository-picker-BDbRX4J2.js} +1 -1
- package/dist/client/assets/{require-capability-Dh758p3I.js → require-capability-Brgi9MZC.js} +1 -1
- package/dist/client/assets/{required-auth-layout-Uc_CkAJg.js → required-auth-layout-7OnYlzzI.js} +1 -1
- package/dist/client/assets/{reset-password-EEEdMymz.js → reset-password-Bpi4U0v1.js} +1 -1
- package/dist/client/assets/{review-settings-CjBJZxkY.js → review-settings-BB0z6lbx.js} +1 -1
- package/dist/client/assets/{roles-CrX1vqT3.js → roles-BZxoN_WF.js} +1 -1
- package/dist/client/assets/{schema-DnToVa8P.js → schema-DEBkVaPA.js} +1 -1
- package/dist/client/assets/{scroll-area-2e4a5OfN.js → scroll-area-5Gm53RHY.js} +1 -1
- package/dist/client/assets/{search-input-CME3I8Cx.js → search-input-BfRFSUX5.js} +1 -1
- package/dist/client/assets/{secrets-qwifqiz3.js → secrets-BI5nZAHq.js} +1 -1
- package/dist/client/assets/{sections-editor-C88ayfGP.js → sections-editor-Dy4bMVx9.js} +1 -1
- package/dist/client/assets/{select-VPKdzxMt.js → select-D2esvO84.js} +1 -1
- package/dist/client/assets/{select-model-CHfp8VKE.js → select-model-C02TlxcO.js} +1 -1
- package/dist/client/assets/{self-tool-result-BAvGcAut.js → self-tool-result-DG5s1xX7.js} +1 -1
- package/dist/client/assets/{seo-editor-Clpe4Rdt.js → seo-editor-Dx9vDVJD.js} +1 -1
- package/dist/client/assets/settings-layout-voBtcJ4c.js +1 -0
- package/dist/client/assets/{settings-sidebar-CWNcptzM.js → settings-sidebar-8bs0eLOB.js} +1 -1
- package/dist/client/assets/{shell-controls-CmmBBJCt.js → shell-controls-sw1RAMWc.js} +1 -1
- package/dist/client/assets/{shell-layout-BLU43UIn.js → shell-layout-BKNo8IP7.js} +1 -1
- package/dist/client/assets/{skill-preview-BASX8Hpu.js → skill-preview-COY_tzil.js} +1 -1
- package/dist/client/assets/{skills-aksi4LPg.js → skills-CirkkNm8.js} +1 -1
- package/dist/client/assets/{sso-BTlZuOfj.js → sso-BYOvoXWp.js} +1 -1
- package/dist/client/assets/{store-BcoxyfGQ.js → store-93oYAikO.js} +1 -1
- package/dist/client/assets/store-registry-DLLF2duk.js +2 -0
- package/dist/client/assets/{switch-BhK2KylJ.js → switch-C83YjSMx.js} +1 -1
- package/dist/client/assets/{synced-repos-CR6g9wZL.js → synced-repos-B1PdvR5A.js} +1 -1
- package/dist/client/assets/{table-5aEMIHUZ.js → table-CaELPge9.js} +1 -1
- package/dist/client/assets/{tabs-Cw42mozl.js → tabs-DNXilkmX.js} +1 -1
- package/dist/client/assets/{task-board-C1zp-ho0.js → task-board-UoxyHghA.js} +1 -1
- package/dist/client/assets/{task-route-wg2gZHHJ.js → task-route-BTYDQRMB.js} +1 -1
- package/dist/client/assets/{tasks-DzpLWLqn.js → tasks-DB8ZBOnH.js} +1 -1
- package/dist/client/assets/{textarea-Bf0SiHvR.js → textarea-BVGL4VzR.js} +1 -1
- package/dist/client/assets/{thread-intent-BRW0j7-l.js → thread-intent-DlW98pT-.js} +1 -1
- package/dist/client/assets/{thread-route-BuT3Z3dy.js → thread-route-BfZqAdlp.js} +1 -1
- package/dist/client/assets/{toggle-group-Cwb378pp.js → toggle-group-BFoG8LvG.js} +1 -1
- package/dist/client/assets/{toolbar-DX5jGVFs.js → toolbar-CSi4T63u.js} +1 -1
- package/dist/client/assets/{toolbar-icon-button-D4bCpf5Z.js → toolbar-icon-button-BDwbo3iu.js} +1 -1
- package/dist/client/assets/{track-Dh5F_mbH.js → track-BwotVDYq.js} +1 -1
- package/dist/client/assets/{types-B8HpU9JD.js → types-CxLXVtsa.js} +1 -1
- package/dist/client/assets/{use-ai-providers-B1HFrjua.js → use-ai-providers-DAIKj8K_.js} +1 -1
- package/dist/client/assets/{use-automations-DbfJVsW4.js → use-automations-CcJYDVHH.js} +1 -1
- package/dist/client/assets/{use-autosave-zP6tBKhw.js → use-autosave-DkYdqG5Q.js} +1 -1
- package/dist/client/assets/{use-connection-lTfFnel8.js → use-connection-Ckt2VSVj.js} +1 -1
- package/dist/client/assets/{use-copy-DX7iyDKr.js → use-copy-D_r7vUr3.js} +1 -1
- package/dist/client/assets/{use-create-virtual-mcp-CbuGNJJR.js → use-create-virtual-mcp-Bcr83t2O.js} +1 -1
- package/dist/client/assets/{use-date-fns-locale-DCymTtPU.js → use-date-fns-locale-BhkvBGh5.js} +1 -1
- package/dist/client/assets/{use-debounced-autosave-Nz7DBL7e.js → use-debounced-autosave-9KKq9zM9.js} +1 -1
- package/dist/client/assets/{use-debounced-value-DxNd4y3x.js → use-debounced-value-zfbRgwSa.js} +1 -1
- package/dist/client/assets/{use-decopilot-events-DWEiQT43.js → use-decopilot-events-Dk2thWkI.js} +1 -1
- package/dist/client/assets/{use-delete-connection-B_lk3bSX.js → use-delete-connection-BTwremoh.js} +1 -1
- package/dist/client/assets/{use-deployment-admin-CqMmCaPd.js → use-deployment-admin-B-blvFdu.js} +1 -1
- package/dist/client/assets/{use-destination-route-CE0McHhc.js → use-destination-route-DOmalBIZ.js} +1 -1
- package/dist/client/assets/{use-file-configs-C5wJ1oSO.js → use-file-configs-Dnm1IOUj.js} +1 -1
- package/dist/client/assets/{use-infinite-scroll-BAvQfIh1.js → use-infinite-scroll-C_KRQFtJ.js} +1 -1
- package/dist/client/assets/{use-join-requests-DcvE_USw.js → use-join-requests-j7pP3D2t.js} +1 -1
- package/dist/client/assets/{use-mcp-auth-status-Db54y-KA.js → use-mcp-auth-status-9fSmzejd.js} +1 -1
- package/dist/client/assets/{use-mcp-client-D1ECnrcj.js → use-mcp-client-B0Utyl6_.js} +1 -1
- package/dist/client/assets/{use-mcp-prompts-BZhbWvcv.js → use-mcp-prompts-DyVA4Qsg.js} +1 -1
- package/dist/client/assets/{use-mcp-tools-DMeVX7Jo.js → use-mcp-tools-Bl1AaPU5.js} +1 -1
- package/dist/client/assets/{use-members-BhMPk-px.js → use-members-DHE1d9JH.js} +1 -1
- package/dist/client/assets/{use-navigate-to-agent-B570w3XH.js → use-navigate-to-agent-gzG4Ilg4.js} +1 -1
- package/dist/client/assets/{use-org-auth-client-CDJgGWRT.js → use-org-auth-client-CNCWRij0.js} +1 -1
- package/dist/client/assets/{use-org-notice-BqsplDoe.js → use-org-notice-BvKoElEP.js} +1 -1
- package/dist/client/assets/{use-org-sso-C4AVAKlD.js → use-org-sso-BdRX_9vq.js} +1 -1
- package/dist/client/assets/{use-organization-roles-BYgRSEKz.js → use-organization-roles-BK2K8Im9.js} +1 -1
- package/dist/client/assets/{use-organization-settings-BqfPlWlo.js → use-organization-settings-QMzmHJ8V.js} +1 -1
- package/dist/client/assets/{use-panel-navigate-2qkxUZs9.js → use-panel-navigate-BHUMH5LJ.js} +1 -1
- package/dist/client/assets/{use-registry-connections-BadGbohL.js → use-registry-connections-Ce9R841t.js} +1 -1
- package/dist/client/assets/{use-secrets-CeR6MIhP.js → use-secrets-BzfnIrZM.js} +1 -1
- package/dist/client/assets/{use-section-preview-base-DJvxTS95.js → use-section-preview-base-DCtnTCwm.js} +1 -1
- package/dist/client/assets/{use-status-sounds-D9JIu7Hm.js → use-status-sounds-B3rVna2J.js} +1 -1
- package/dist/client/assets/{use-tags-DGvXNc2e.js → use-tags-J0GNorDt.js} +1 -1
- package/dist/client/assets/{use-view-mode-DehGA0b4.js → use-view-mode-Baq2aGok.js} +1 -1
- package/dist/client/assets/{use-virtual-mcp-DHUIPWyc.js → use-virtual-mcp-b2E02BqA.js} +1 -1
- package/dist/client/assets/useInfiniteQuery-DWBUS5nx.js +1 -0
- package/dist/client/assets/useSuspenseInfiniteQuery-o9ts3gfL.js +1 -0
- package/dist/client/assets/{users-IaJ805do.js → users-DUGKGMNy.js} +1 -1
- package/dist/client/assets/{variant-calendar-e4WVkRdr.js → variant-calendar-DlPcIlwu.js} +1 -1
- package/dist/client/assets/{view-mode-toggle-DidX_Gh8.js → view-mode-toggle-C7NegMIk.js} +1 -1
- package/dist/client/index.html +1 -1
- package/dist/server/cli.js +2 -2
- package/dist/server/server.js +2 -2
- package/package.json +1 -1
- package/dist/client/assets/api-keys-DuO6DGVm.js +0 -1
- package/dist/client/assets/record-editor-DmB0-QoJ.js +0 -1
- package/dist/client/assets/redirect-editor-CUjqTuPf.js +0 -1
- package/dist/client/assets/registry-DC6hVBbv.js +0 -2
- package/dist/client/assets/settings-layout-ktw7RoNC.js +0 -1
- package/dist/client/assets/store-registry-BoIejWxm.js +0 -2
- package/dist/client/assets/useInfiniteQuery-WKKEwCIs.js +0 -1
- package/dist/client/assets/useSuspenseInfiniteQuery-CPnLyRrb.js +0 -1
package/dist/server/cli.js
CHANGED
|
@@ -1965,7 +1965,7 @@ Usage: deco services <up|down|status>`),process.exit(1)}}var Xs1=D(()=>{uy()});f
|
|
|
1965
1965
|
`.execute($);if(Number(W.rows[0]?.cnt)===0){console.warn(`Failed to migrate ${G}/${K}, keeping in old table`);continue}}await Nh`
|
|
1966
1966
|
DELETE FROM kysely_migration WHERE name = ${Q}
|
|
1967
1967
|
`.execute($)}}async function P8$($){await l94($),await c94($);let Z=new E8$({db:$,provider:{getMigrations:()=>Promise.resolve(gr0)}}),{error:Q,results:X}=await Z.migrateToLatest(),Y=0;if(X?.forEach((J)=>{if(J.status==="Success")Y++;else if(J.status==="Error")console.error(`Failed to execute migration "${J.migrationName}"`)}),Q)throw console.error("Failed to migrate"),console.error(Q),Q;return Y}async function m94($){let{keepOpen:Z=!1,database:Q,skipBetterAuth:X=!1}=$??{},Y="skipped";if(!X&&!Q)Y=await Wp0();let J=Q??l$(),G=async()=>{if(!Z&&!Q)await XD(J).catch((K)=>{console.warn("Warning: Error closing database:",K)})};try{let K=await P8$(J.db);return await G(),{betterAuth:Y,kysely:K}}catch(K){throw await G(),K}}async function d94(){let $=l$(),Z=new E8$({db:$.db,provider:{getMigrations:()=>Promise.resolve(gr0)}}),{error:Q,results:X}=await Z.migrateDown();if(X?.forEach((Y)=>{if(Y.status==="Success")console.log(`\u2705 Migration "${Y.migrationName}" rolled back successfully`);else if(Y.status==="Error")console.error(`\u274C Failed to rollback migration "${Y.migrationName}"`)}),Q)throw console.error("Failed to rollback migration"),console.error(Q),Q}var T8$=D(()=>{j8$();Hp0();TQ()});async function QY0($){let Z={...process.env},Q=i60($,Z);console.log(JT1(Q.settings.encryptionKey));let X=Q.settings.betterAuthSecret||(Q.settings.localMode?fe1(Q.settings.dataDir):""),{ensureServices:Y}=await Promise.resolve().then(() => (XX0(),QX0)),{outputs:J,services:G}=await Y({home:Q.settings.dataDir,externalDatabaseUrl:Q.externalDatabaseUrl,externalNatsUrl:Q.externalNatsUrl});if(!Q.skipMigrations){let{migrateBetterAuth:W}=await Promise.resolve().then(() => (Hp0(),ye1));await W(J.databaseUrl);let{createDatabase:H}=await Promise.resolve().then(() => (TQ(),es1)),{migrateToLatest:F}=await Promise.resolve().then(() => (T8$(),A8$)),U=H(J.databaseUrl);await F({keepOpen:!0,database:U,skipBetterAuth:!0})}let K={...Q.settings,betterAuthSecret:X,databaseUrl:J.databaseUrl,natsUrls:J.natsUrls,...J.s3?{s3Endpoint:J.s3.endpoint,s3Bucket:J.s3.bucket,s3AccessKeyId:J.s3.accessKeyId,s3SecretAccessKey:J.s3.secretAccessKey,s3ForcePathStyle:J.s3.forcePathStyle}:{}};return Ys1(K),{settings:K,services:G.map((W)=>({name:W.name==="PostgreSQL"?"Postgres":W.name,port:W.port})),managedServiceNames:G.filter((W)=>W.owner==="managed").map((W)=>W.name)}}var hr0=D(()=>{uy();be1();A$()});var M8$={};e(M8$,{updateService:()=>Zz,subscribeCliState:()=>cr0,setTuiConsoleIntercepted:()=>XY0,setServerUrl:()=>zt,setMigrationsDone:()=>Et,setDevMode:()=>p94,resetCliStateForTests:()=>i94,isTuiConsoleIntercepted:()=>YY0,getCliState:()=>lr0,addLogEntry:()=>HD});function R8$(){return[{name:"Postgres",status:"pending",port:0},{name:"NATS",status:"pending",port:0}]}function q8$(){return{services:R8$(),migrationsStatus:"pending",serverUrl:null,logs:[]}}function i94(){OY=q8$()}function jt(){for(let $ of ur0)$()}function lr0(){return OY}function cr0($){return ur0.add($),()=>ur0.delete($)}function Zz($){OY={...OY,services:OY.services.map((Z)=>Z.name===$.name?$:Z)},jt()}function Et(){OY={...OY,migrationsStatus:"done"},jt()}function zt($){OY={...OY,serverUrl:$},jt()}function HD($){let Z=[...OY.logs,$];OY={...OY,logs:Z.length>500?Z.slice(-500):Z},jt()}function p94(){OY={...OY,services:[...R8$(),{name:"API",status:"pending",port:0},{name:"Vite",status:"pending",port:0}]},jt()}function XY0($){I8$=$}function YY0(){return I8$}var OY,ur0,I8$=!1;var Qz=D(()=>{OY=q8$();ur0=new Set});import{createServer as V8$}from"net";function n94($){return new Promise((Z)=>{let Q=V8$();Q.once("error",()=>Z(!1)),Q.listen($,"0.0.0.0",()=>{Q.close(()=>Z(!0))})})}async function Pt($){if(await n94($))return $;let Z=await new Promise((Q,X)=>{let Y=V8$();Y.once("error",X),Y.listen(0,"0.0.0.0",()=>{let J=Y.address(),G=typeof J==="object"&&J?J.port:0;Y.close(()=>Q(G))})});return console.warn(`Port ${$} is in use, using port ${Z} instead.`),Z}var mr0=()=>{};var ir0={};e(ir0,{startDevServer:()=>o94,pipeToLogStore:()=>dr0});import{join as t94}from"path";function dr0($){let Z=$.getReader(),Q=new TextDecoder,X="";function Y(){let J=X.split(`
|
|
1968
|
-
`);X=J.pop()??"";for(let G of J){let K=Bun.stripANSI(G).replace(/^\[\d+\]\s*/,"").trim();if(!K)continue;HD({method:"",path:"",status:0,duration:0,timestamp:new Date,rawLine:K})}}(async()=>{try{for(;;){let{done:J,value:G}=await Z.read();if(J)break;X+=Q.decode(G,{stream:!0}),Y()}}catch{}if(X.trim()){let J=Bun.stripANSI(X).replace(/^\[\d+\]\s*/,"").trim();if(J)HD({method:"",path:"",status:0,duration:0,timestamp:new Date,rawLine:J})}})()}async function o94($){let{baseUrl:Z,noTui:Q}=$,X=process.env.HOST==="0.0.0.0"&&Boolean(process.env.PORT),Y=X?process.env.PORT:$.vitePort,J=Z||`http://localhost:${Y}`,G=X?await Pt(Number(Y)+1):await Pt(Number($.port)),{settings:K,services:W,managedServiceNames:H}=await QY0({port:String(G),home:$.home,baseUrl:$.baseUrl,localMode:$.localMode,skipMigrations:$.skipMigrations,noTui:$.noTui,vitePort:$.vitePort});for(let L of W)Zz({name:L.name,status:"ready",port:L.port});Et();let F=t94(import.meta.dir,"..","..","..","..",".."),U=Q===!0,N=Bun.spawn(["bun","run","dev:servers"],{cwd:F,env:{...process.env,PORT:String(K.port),VITE_PORT:String(Y),DATABASE_URL:K.databaseUrl,NATS_URL:K.natsUrls.join(","),NODE_ENV:K.nodeEnv,BASE_URL:J,DECOCMS_LOCAL_MODE:String(K.localMode),DECOCMS_HOME:K.dataDir,DATA_DIR:K.dataDir,DECO_CLI:"1",...K.betterAuthSecret?{BETTER_AUTH_SECRET:K.betterAuthSecret}:{},...K.s3Endpoint?{S3_ENDPOINT:K.s3Endpoint,S3_BUCKET:K.s3Bucket??"",S3_ACCESS_KEY_ID:K.s3AccessKeyId??"",S3_SECRET_ACCESS_KEY:K.s3SecretAccessKey??"",S3_FORCE_PATH_STYLE:String(K.s3ForcePathStyle)}:{},...K.natsCredsPath?{NATS_CREDS:K.natsCredsPath}:{}},stdio:["inherit",U?"inherit":"pipe",U?"inherit":"pipe"]});if(!U)dr0(N.stdout),dr0(N.stderr);zt(J),Zz({name:"Vite",status:"ready",port:Number(Y)}),Zz({name:"API",status:"ready",port:Number(K.port)});let O=async(L)=>{if(N.kill(L),await N.exited,H.length>0){let{stopServices:w}=await Promise.resolve().then(() => (XX0(),QX0));await w(K.dataDir)}};return process.on("SIGINT",()=>O("SIGINT")),process.on("SIGTERM",()=>O("SIGTERM")),{port:Number(Y),process:N}}var pr0=D(()=>{hr0();Qz();mr0()});var JY0;var nr0=D(()=>{JY0={name:"decocms",version:"4.358.1",description:"Deco CMS \u2014 Self-hostable MCP Gateway for managing AI connections and tools",author:"Deco team",repository:{type:"git",url:"git+https://github.com/decocms/studio.git",directory:"apps/api"},bugs:{url:"https://github.com/decocms/studio/issues"},type:"module",bin:{deco:"./dist/server/cli.js"},files:["dist/**/*"],scripts:{dev:"bun run migrate && bun run dev:server","dev:server":"bun run --cwd=../../packages/sandbox build && NODE_ENV=development bun --env-file=.env --hot run src/index.ts",build:"bun run build:server","build:server":"bun run scripts/bundle-server-script.ts --dist ./dist/server","generate:tool-contracts":"bun run scripts/generate-tool-contracts.ts","db:migrate":"bun run ./dist/server/migrate.js","db:migrate:dbos":"bun run ./dist/server/migrate-dbos.js",check:"tsc --noEmit",start:"bun run ./dist/server/server.js",migrate:"bun run src/database/migrate.ts","migrate:dbos":"bun run src/database/migrate-dbos.ts",test:"bun test src","better-auth:migrate":"bunx --bun @better-auth/cli migrate -y --config src/auth/index.ts",prepublishOnly:"bun run --cwd=../.. build:studio"},optionalDependencies:{"@duckdb/node-api":"^1.5.0-r.1"},dependencies:{"@ai-sdk/anthropic":"^3.0.85","@ai-sdk/google":"^3.0.83","@ai-sdk/openai":"^3.0.73","@anthropic-ai/sdk":"^0.105.0","@aws-sdk/client-s3":"^3.1013.0","@aws-sdk/client-sts":"^3.1013.0","@aws-sdk/lib-storage":"^3.1013.0","@aws-sdk/s3-request-presigner":"^3.1013.0","@clickhouse/client":"^1.8.1","@dbos-inc/dbos-sdk":"^4.21.6","@inkjs/ui":"^2.0.0","@nats-io/jetstream":"3.4.0","@nats-io/kv":"3.4.0","@nats-io/nats-core":"3.4.0","@nats-io/transport-node":"3.4.0","@openrouter/ai-sdk-provider":"^2.9.1","@opentelemetry/core":"^2.6.0","embedded-postgres":"^18.3.0-beta.16",ink:"^6.8.0",kysely:"^0.28.12","posthog-node":"^5.0.0",react:"^19.2.6","react-dom":"^19.2.6"},devDependencies:{"@ai-sdk/provider":"^3.0.10","@better-auth/sso":"1.4.1","@decocms/better-auth":"1.5.17","@decocms/bindings":"workspace:*","@decocms/mcp-utils":"workspace:*","@decocms/runtime":"workspace:*","@decocms/sandbox":"workspace:*","@decocms/shared":"workspace:*","@jitl/quickjs-wasmfile-release-sync":"0.31.0","@modelcontextprotocol/sdk":"1.29.0","@opentelemetry/api":"^1.9.0","@opentelemetry/api-logs":"^0.211.0","@opentelemetry/exporter-logs-otlp-proto":"^0.211.0","@opentelemetry/exporter-prometheus":"^0.208.0","@opentelemetry/exporter-trace-otlp-proto":"^0.207.0","@opentelemetry/instrumentation-runtime-node":"^0.24.0","@opentelemetry/resources":"^2.6.0","@opentelemetry/sdk-logs":"^0.211.0","@opentelemetry/sdk-metrics":"^2.2.0","@opentelemetry/sdk-node":"^0.207.0","@opentelemetry/sdk-trace-base":"^2.5.0","@types/bun":"^1.3.1","@types/google.maps":"^3.65.2","@types/pg":"^8.15.6","@types/react-syntax-highlighter":"^15.5.13","@vercel/nft":"^1.1.1",ai:"^6.0.208","better-auth":"1.4.22",croner:"^9.1.0",degit:"^2.8.4",hono:"^4.10.7",jose:"^6.0.11",nanoid:"^5.1.6",pg:"^8.16.3",typescript:"^7.0.2",typescript5:"npm:typescript@^5.9.3",zod:"4.3.6"},homepage:"https://github.com/decocms/studio",keywords:["mcp","model-context-protocol","ai","gateway","self-hosted","tools"],license:"MIT",publishConfig:{access:"public"}}});import{Box as a94,Text as k8$}from"ink";import{jsx as s94,jsxs as S8$}from"react/jsx-runtime";function C8$({version:$}){return S8$(a94,{flexDirection:"column",marginTop:1,children:[MX0.map((Z,Q)=>s94(k8$,{color:VX0[Q],children:Z},Q)),S8$(k8$,{dimColor:!0,children:[" v",$]})]})}var _8$=D(()=>{Yt()});import{Box as Xz,Text as FD}from"ink";import{Spinner as e94}from"@inkjs/ui";import{jsx as CJ,jsxs as Bh}from"react/jsx-runtime";function v8$({status:$}){if($==="pending")return CJ(e94,{label:""});return CJ(FD,{color:"green",children:"\u2713"})}function $Z4($){return`${$.name}: ${$.port||"...."}`}function x8$({services:$,migrationsStatus:Z,home:Q,serverUrl:X}){return Bh(Xz,{flexDirection:"column",paddingBottom:1,children:[CJ(C8$,{version:JY0.version}),CJ(Xz,{marginBottom:1,children:CJ(FD,{dimColor:!0,children:"\u2500".repeat(80)})}),CJ(Xz,{children:Bh(FD,{dimColor:!0,children:["Home: ",Q]})}),Bh(Xz,{gap:2,children:[$.map((Y)=>Bh(Xz,{gap:1,children:[CJ(FD,{children:$Z4(Y)}),CJ(v8$,{status:Y.status})]},Y.name)),Bh(Xz,{gap:1,children:[CJ(FD,{children:"Migrations"}),CJ(v8$,{status:Z})]})]}),CJ(Xz,{children:X?Bh(FD,{children:["Open in browser: ",CJ(FD,{color:"cyan",children:X})]}):CJ(FD,{dimColor:!0,children:"Starting..."})})]})}var f8$=D(()=>{nr0();_8$()});import{Box as ZZ4,Text as At}from"ink";import{jsx as tr0,jsxs as or0}from"react/jsx-runtime";function QZ4($){if($>=500)return"red";if($>=400)return"yellow";if($>=300)return"cyan";return"green"}function b8$({logs:$}){return tr0(ZZ4,{flexDirection:"column",children:$.map((Z,Q)=>{if(Z.rawLine)return tr0(At,{dimColor:!0,children:Z.rawLine},Q);let X=Z.duration<1000?`${Z.duration}ms`:`${(Z.duration/1000).toFixed(1)}s`;return or0(At,{children:[or0(At,{dimColor:!0,children:[Z.method.padEnd(6)," ",Z.path.padEnd(30)," "]}),tr0(At,{color:QZ4(Z.status),children:Z.status}),or0(At,{dimColor:!0,children:[" ",X.padStart(8)]})]},Q)})})}var y8$=()=>{};var rr0={};e(rr0,{App:()=>JZ4});import{Box as XZ4}from"ink";import{useSyncExternalStore as YZ4}from"react";import{jsx as g8$,jsxs as GZ4}from"react/jsx-runtime";function JZ4({home:$}){let Z=YZ4(cr0,lr0);return GZ4(XZ4,{flexDirection:"column",children:[g8$(x8$,{services:Z.services,migrationsStatus:Z.migrationsStatus,home:$,serverUrl:Z.serverUrl}),g8$(b8$,{logs:Z.logs})]})}var ar0=D(()=>{f8$();y8$();Qz()});var JG="thread-gate",WN="decopilot-hosted-harness",HN="decopilot-hosted-harness-sandboxed",GG="automations",UD="background-tools",Yz="task-board-github-reads";var h8$="11";function u8$($){return{name:"decocms",systemDatabaseUrl:$.systemDatabaseUrl,systemDatabaseSchemaName:"dbos",systemDatabasePoolSize:$.poolSize,runAdminServer:!1,executorID:$.executorID,applicationVersion:h8$,...$.listenQueues!==void 0?{listenQueues:$.listenQueues}:{}}}var l8$=()=>{};import KZ4 from"pg";async function m8$($,Z){let{databaseUrl:Q,lockTimeoutMs:X=WZ4}=$,Y=$.log??((W)=>console.log(W)),J=new KZ4.Client({connectionString:Q});await J.connect();let G=Date.now(),K=!1;try{while(!K){if(K=(await J.query("SELECT pg_try_advisory_lock($1) AS locked",[c8$.toString()])).rows[0]?.locked===!0,K)break;if(Date.now()-G>=X)throw Error(`Timed out after ${X}ms waiting for the DBOS migration lock. Another process is still migrating the dbos schema; this pod will restart and retry.`);await B$(HZ4)}let W=Date.now()-G;if(W>1000)Y(`[dbos] waited ${W}ms for the migration lock; another process migrated first`);return await Z()}finally{if(K)try{await J.query("SELECT pg_advisory_unlock($1)",[c8$.toString()])}catch{}await J.end().catch(()=>{})}}var c8$=8314027461559302n,WZ4=600000,HZ4=500;var d8$=D(()=>{Z8()});function FZ4(){let $=(process.env.BUN_OPTIONS??"").split(/\s+/).filter(Boolean);return[...process.argv.slice(1),...$]}function sr0($,Z){for(let Q=0;Q<$.length;Q++){let X=$[Q];if(X===void 0)continue;if(X===Z)return $[Q+1];if(X.startsWith(`${Z}=`))return X.slice(Z.length+1)}return}function i8$(){let $=FZ4();if($.includes("--cpu-prof")){console.log(JSON.stringify({msg:"cpu-profiling-active",dir:sr0($,"--cpu-prof-dir")??process.cwd(),name:sr0($,"--cpu-prof-name"),markdown:$.includes("--cpu-prof-md"),intervalUs:Number(sr0($,"--cpu-prof-interval")??1000),note:"profile is written on process exit"}));return}if(process.env.CPU_PROFILE)console.warn(JSON.stringify({msg:"cpu-profiling-requested-but-inactive",hint:'CPU profiling is a Bun launch flag. Set BUN_OPTIONS="--cpu-prof --cpu-prof-md --cpu-prof-dir=/tmp" before starting the process.'}))}function p8$(){if(process.env.HEAP_WATCH!=="1")return()=>{};let $=Number(process.env.HEAP_WATCH_INTERVAL_MS??60000),Z=async()=>{let Q=aE();if(!Q)return;let X={};try{let{heapStats:Y}=await import("bun:jsc"),J=Y(),G=Object.entries(J.objectTypeCounts).sort((K,W)=>W[1]-K[1]).slice(0,20);X={objectCount:J.objectCount,heapSize:J.heapSize,top:Object.fromEntries(G)}}catch{}console.log(JSON.stringify({msg:"heap-watch",ts:new Date().toISOString(),uptimeS:Math.round(process.uptime()),rss:Q.rss,heapUsed:Q.heapUsed,heapTotal:Q.heapTotal,external:Q.external,arrayBuffers:Q.arrayBuffers,...X}))};return Z().catch(()=>{}),GY0=setInterval(()=>void Z().catch(()=>{}),$),GY0.unref?.(),process.on("SIGUSR2",()=>{try{let Q=Bun.generateHeapSnapshot("v8"),X=typeof Q==="string"?Q:JSON.stringify(Q),Y=`/tmp/heap-${process.pid}-${Date.now()}.heapsnapshot`;Bun.write(Y,X),console.log(JSON.stringify({msg:"heap-snapshot-written",path:Y}))}catch(Q){console.error("[heap-watch] snapshot failed:",Q)}}),()=>{if(GY0)clearInterval(GY0)}}var GY0;var n8$=()=>{};import*as UZ4 from"bun:jsc";function t8$(){if(process.env.STALL_WATCHDOG!=="1")return()=>{};let $=Number(process.env.STALL_WATCHDOG_MS??100),Z=Number(process.env.STALL_WATCHDOG_TICK_MS??50);try{NZ4()}catch(J){return console.error("[stall-watchdog] failed to start sampling profiler:",J),()=>{}}let Q,X=performance.now()+Z,Y=()=>{let J=performance.now(),G=J-X;X=J+Z;let K=[];try{K=BZ4()?.traces??[]}catch{}if(G>$&&K.length>0){let W=new Map;for(let F of K){let U=F.frames.find((O)=>O.sourceURL&&!/Unknown Executable/.test(O.category??""))??F.frames[0];if(!U)continue;let N=(U.sourceURL??"?").replace(/^.*\/node_modules\//,"node_modules/"),B=`${U.name??"?"} @ ${N}:${U.line??"?"}`;W.set(B,(W.get(B)??0)+1)}let H=[...W.entries()].sort((F,U)=>U[1]-F[1]).slice(0,8).map(([F,U])=>({frame:F,count:U}));console.warn(JSON.stringify({msg:"stall-stack",ts:new Date().toISOString(),lagMs:Math.round(G),samplesInWindow:K.length,top:H}))}Q=setTimeout(Y,Z),Q.unref?.()};return Q=setTimeout(Y,Z),Q.unref?.(),()=>{if(Q)clearTimeout(Q)}}var NZ4,BZ4;var o8$=D(()=>{({startSamplingProfiler:NZ4,samplingProfilerStackTraces:BZ4}=UZ4)});function r8$(){i8$();let $=[p8$(),is1(),t8$()];return()=>{for(let Z of $)Z()}}var a8$=D(()=>{$p0();n8$();o8$()});var Jz=v((s8$)=>{Object.defineProperty(s8$,"__esModule",{value:!0});s8$.RepublishHeaders=s8$.DirectMsgHeaders=s8$.JsHeaders=s8$.AdvisoryKind=void 0;s8$.isOrderedPushConsumerOptions=OZ4;s8$.isPullConsumer=DZ4;s8$.isPushConsumer=LZ4;s8$.isBoundPushConsumerOptions=wZ4;function OZ4($){if($&&typeof $==="object")return"name_prefix"in $||"deliver_subject_prefix"in $||"filter_subjects"in $||"filter_subject"in $||"deliver_policy"in $||"opt_start_seq"in $||"opt_start_time"in $||"replay_policy"in $||"inactive_threshold"in $||"headers_only"in $||"deliver_prefix"in $;return!1}function DZ4($){return $.isPullConsumer()}function LZ4($){return $.isPushConsumer()}function wZ4($){if($&&typeof $==="object")return"deliver_subject"in $||"deliver_group"in $||"idle_heartbeat"in $;return!1}s8$.AdvisoryKind={API:"api_audit",StreamAction:"stream_action",ConsumerAction:"consumer_action",SnapshotCreate:"snapshot_create",SnapshotComplete:"snapshot_complete",RestoreCreate:"restore_create",RestoreComplete:"restore_complete",MaxDeliver:"max_deliver",Terminated:"terminated",Ack:"consumer_ack",StreamLeaderElected:"stream_leader_elected",StreamQuorumLost:"stream_quorum_lost",ConsumerLeaderElected:"consumer_leader_elected",ConsumerQuorumLost:"consumer_quorum_lost"};s8$.JsHeaders={StreamSourceHdr:"Nats-Stream-Source",LastConsumerSeqHdr:"Nats-Last-Consumer",LastStreamSeqHdr:"Nats-Last-Stream",ConsumerStalledHdr:"Nats-Consumer-Stalled",MessageSizeHdr:"Nats-Msg-Size",RollupHdr:"Nats-Rollup",RollupValueSubject:"sub",RollupValueAll:"all",PendingMessagesHdr:"Nats-Pending-Messages",PendingBytesHdr:"Nats-Pending-Bytes",RequiredApiLevel:"Nats-Required-Api-Level"};s8$.DirectMsgHeaders={Stream:"Nats-Stream",Sequence:"Nats-Sequence",TimeStamp:"Nats-Time-Stamp",Subject:"Nats-Subject",LastSequence:"Nats-Last-Sequence",NumPending:"Nats-Num-Pending"};s8$.RepublishHeaders={Stream:"Nats-Stream",Subject:"Nats-Subject",Sequence:"Nats-Sequence",LastSequence:"Nats-Last-Sequence",Size:"Nats-Msg-Size"}});var _J=v(($4$)=>{Object.defineProperty($4$,"__esModule",{value:!0});$4$.TD=$4$.TE=$4$.Empty=void 0;$4$.encode=IZ4;$4$.decode=MZ4;$4$.Empty=new Uint8Array(0);$4$.TE=new TextEncoder;$4$.TD=new TextDecoder;function qZ4(...$){let Z=0;for(let Y=0;Y<$.length;Y++)Z+=$[Y].length;let Q=new Uint8Array(Z),X=0;for(let Y=0;Y<$.length;Y++)Q.set($[Y],X),X+=$[Y].length;return Q}function IZ4(...$){let Z=[];for(let Q=0;Q<$.length;Q++)Z.push($4$.TE.encode($[Q]));if(Z.length===0)return $4$.Empty;if(Z.length===1)return Z[0];return qZ4(...Z)}function MZ4($){if(!$||$.length===0)return"";return $4$.TD.decode($)}});var vJ=v((X4$)=>{Object.defineProperty(X4$,"__esModule",{value:!0});X4$.errors=X4$.PermissionViolationError=X4$.NoRespondersError=X4$.TimeoutError=X4$.RequestError=X4$.ProtocolError=X4$.ConnectionError=X4$.DrainingConnectionError=X4$.ClosedConnectionError=X4$.AuthorizationError=X4$.UserAuthenticationExpiredError=X4$.InvalidOperationError=X4$.InvalidArgumentError=X4$.InvalidSubjectError=void 0;class $a0 extends Error{constructor($,Z){super(`illegal subject: '${$}'`,Z);this.name="InvalidSubjectError"}}X4$.InvalidSubjectError=$a0;class KY0 extends Error{constructor($,Z){super($,Z);this.name="InvalidArgumentError"}static format($,Z,Q){if(Array.isArray(Z)&&Z.length>1)Z=Z[0];if(Array.isArray($))$=$.map((X)=>`'${X}'`),$=$.join(",");else $=`'${$}'`;return new KY0(`${$} ${Z}`,Q)}}X4$.InvalidArgumentError=KY0;class Za0 extends Error{constructor($,Z){super($,Z);this.name="InvalidOperationError"}}X4$.InvalidOperationError=Za0;class WY0 extends Error{constructor($,Z){super($,Z);this.name="UserAuthenticationExpiredError"}static parse($){if($.toLowerCase().indexOf("user authentication expired")!==-1)return new WY0($);return null}}X4$.UserAuthenticationExpiredError=WY0;class HY0 extends Error{constructor($,Z){super($,Z);this.name="AuthorizationError"}static parse($){let Z=["authorization violation","account authentication expired","authentication timeout"],Q=$.toLowerCase();for(let X=0;X<Z.length;X++)if(Q.indexOf(Z[X])!==-1)return new HY0($);return null}}X4$.AuthorizationError=HY0;class Qa0 extends Error{constructor(){super("closed connection");this.name="ClosedConnectionError"}}X4$.ClosedConnectionError=Qa0;class Xa0 extends Error{constructor(){super("connection draining");this.name="DrainingConnectionError"}}X4$.DrainingConnectionError=Xa0;class Ya0 extends Error{constructor($,Z){super($,Z);this.name="ConnectionError"}}X4$.ConnectionError=Ya0;class Ja0 extends Error{constructor($,Z){super($,Z);this.name="ProtocolError"}}X4$.ProtocolError=Ja0;class Ga0 extends Error{constructor($="",Z){super($,Z);this.name="RequestError"}isNoResponders(){return this.cause instanceof FY0}}X4$.RequestError=Ga0;class Ka0 extends Error{constructor($){super("timeout",$);this.name="TimeoutError"}}X4$.TimeoutError=Ka0;class FY0 extends Error{subject;constructor($,Z){super(`no responders: '${$}'`,Z);this.subject=$,this.name="NoResponders"}}X4$.NoRespondersError=FY0;class UY0 extends Error{operation;subject;queue;constructor($,Z,Q,X,Y){super($,Y);this.name="PermissionViolationError",this.operation=Z,this.subject=Q,this.queue=X}static parse($){if(($?$.toLowerCase():"").indexOf("permissions violation")===-1)return null;let Q="publish",X="",Y=void 0,J=$.match(/(Publish|Subscription) to "(\S+)"/);if(J){if(Q=J[1].toLowerCase(),X=J[2],Q==="subscription"){let G=$.match(/using queue "(\S+)"/);if(G)Y=G[1]}}return new UY0($,Q,X,Y)}}X4$.PermissionViolationError=UY0;X4$.errors={AuthorizationError:HY0,ClosedConnectionError:Qa0,ConnectionError:Ya0,DrainingConnectionError:Xa0,InvalidArgumentError:KY0,InvalidOperationError:Za0,InvalidSubjectError:$a0,NoRespondersError:FY0,PermissionViolationError:UY0,ProtocolError:Ja0,RequestError:Ga0,TimeoutError:Ka0,UserAuthenticationExpiredError:WY0}});var _K=v((W4$)=>{Object.defineProperty(W4$,"__esModule",{value:!0});W4$.SimpleMutex=W4$.Perf=void 0;W4$.extend=dZ4;W4$.render=iZ4;W4$.timeout=pZ4;W4$.delay=nZ4;W4$.deadline=tZ4;W4$.deferred=Ha0;W4$.debugDeferred=oZ4;W4$.shuffle=rZ4;W4$.collect=aZ4;W4$.jitter=K4$;W4$.backoff=sZ4;W4$.nanos=eZ4;W4$.millis=$74;W4$.randomToken=X74;var mZ4=_J(),Wa0=vJ();function dZ4($,...Z){for(let Q=0;Q<Z.length;Q++){let X=Z[Q];Object.keys(X).forEach(function(Y){$[Y]=X[Y]})}return $}function iZ4($){return mZ4.TD.decode($).replace(/\n/g,"\u240A").replace(/\r/g,"\u240D")}function pZ4($,Z=!0){let Q=Z?new Wa0.TimeoutError:null,X,Y,J=new Promise((G,K)=>{X={cancel:()=>{if(Y)clearTimeout(Y)}},Y=setTimeout(()=>{if(Q===null)K(new Wa0.TimeoutError);else K(Q)},$)});return Object.assign(J,X)}function nZ4($=0){let Z,Q=new Promise((X)=>{let Y=setTimeout(()=>{X()},$);Z={cancel:()=>{if(Y)clearTimeout(Y),X()}}});return Object.assign(Q,Z)}async function tZ4($,Z=1000){let Q=Ha0(),X=setTimeout(()=>{Q.reject(new Wa0.TimeoutError)},Z);try{return await Promise.race([$,Q])}finally{clearTimeout(X)}}function Ha0(){let $={},Z=new Promise((Q,X)=>{$={resolve:Q,reject:X}});return Object.assign(Z,$)}function oZ4(){let $={},Z=new Promise((Q,X)=>{$={resolve:(Y)=>{console.trace("resolve",Y),Q(Y)},reject:(Y)=>{console.trace("reject"),X(Y)}}});return Object.assign(Z,$)}function rZ4($){for(let Z=$.length-1;Z>0;Z--){let Q=Math.floor(Math.random()*(Z+1));[$[Z],$[Q]]=[$[Q],$[Z]]}return $}async function aZ4($){let Z=[];for await(let Q of $)Z.push(Q);return Z}class J4${timers;measures;constructor(){this.timers=new Map,this.measures=new Map}mark($){this.timers.set($,performance.now())}measure($,Z,Q){let X=this.timers.get(Z);if(X===void 0)throw Error(`${Z} is not defined`);let Y=this.timers.get(Q);if(Y===void 0)throw Error(`${Q} is not defined`);this.measures.set($,Y-X)}getEntries(){let $=[];return this.measures.forEach((Z,Q)=>{$.push({name:Q,duration:Z})}),$}}W4$.Perf=J4$;class G4${max;current;waiting;constructor($=1){this.max=$,this.current=0,this.waiting=[]}lock(){if(this.current++,this.current<=this.max)return Promise.resolve();let $=Ha0();return this.waiting.push($),$}unlock(){this.current--,this.waiting.pop()?.resolve()}}W4$.SimpleMutex=G4$;function K4$($){if($===0)return 0;return Math.floor($/2+Math.random()*$)}function sZ4($=[0,250,250,500,500,3000,5000]){if(!Array.isArray($))$=[0,250,250,500,500,3000,5000];let Z=$.length-1;return{backoff(Q){return K4$(Q>Z?$[Z]:$[Q])}}}function eZ4($){return $*1e6}function $74($){return Math.floor($/1e6)}var Z74="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",FN=new Uint8Array(62);for(let $=0;$<62;$++)FN[$]=Z74.charCodeAt($);var Q74=218340105584896;function X74(){let $=Math.floor(Math.random()*Q74),Z=$%62,Q=FN[Z];$=($-Z)/62,Z=$%62;let X=FN[Z];$=($-Z)/62,Z=$%62;let Y=FN[Z];$=($-Z)/62,Z=$%62;let J=FN[Z];$=($-Z)/62,Z=$%62;let G=FN[Z];$=($-Z)/62,Z=$%62;let K=FN[Z];$=($-Z)/62,Z=$%62;let W=FN[Z];$=($-Z)/62;let H=FN[$];return String.fromCharCode(Q,X,Y,J,G,K,W,H)}});var L4$=v((O4$)=>{Object.defineProperty(O4$,"__esModule",{value:!0});O4$.nuid=O4$.NuidImpl=void 0;var E74="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",ND=62,BY0=12,N4$=10,F4$=33,z74=333,U4$=BY0+N4$,Ua0=new Uint8Array(ND);for(let $=0;$<ND;$++)Ua0[$]=E74.charCodeAt($);var NY0=4294967296,B4$=BigInt(ND)**BigInt(N4$),Tt=Number(B4$/(1n<<32n)),Fa0=Number(B4$%(1n<<32n));function P74($){for(let Z=0;Z<$.length;Z++)$[Z]=Math.floor(Math.random()*256)}function A74($){if(globalThis?.crypto?.getRandomValues)globalThis.crypto.getRandomValues($);else P74($)}class Na0{buf;cbuf;seqHi;seqLo;inc;inited;constructor(){this.buf=new Uint8Array(U4$),this.cbuf=new Uint8Array(BY0),this.inited=!1}init(){this.inited=!0,this.setPre(),this.initSeqAndInc(),this.fillSeq()}initSeqAndInc(){let $=0;do this.seqHi=Math.floor(Math.random()*(Tt+1)),this.seqLo=Math.floor(Math.random()*NY0);while($++<8&&this.seqHi===Tt&&this.seqLo>=Fa0);if(this.seqHi===Tt&&this.seqLo>=Fa0)this.seqLo=0;this.inc=Math.random()*(z74-F4$)+F4$|0}setPre(){A74(this.cbuf);for(let $=0;$<BY0;$++)this.buf[$]=Ua0[this.cbuf[$]%ND]}fillSeq(){let $=this.seqHi,Z=this.seqLo;for(let Q=U4$-1;Q>=BY0;Q--){let X=Math.floor($/ND),J=($-X*ND)*NY0+Z,G=Math.floor(J/ND),K=J-G*ND;this.buf[Q]=Ua0[K],$=X,Z=G}}next(){if(!this.inited)this.init();if(this.seqLo+=this.inc,this.seqLo>=NY0)this.seqLo-=NY0,this.seqHi+=1;if(this.seqHi>Tt||this.seqHi===Tt&&this.seqLo>=Fa0)this.setPre(),this.initSeqAndInc();this.fillSeq();let $=this.buf;return String.fromCharCode($[0],$[1],$[2],$[3],$[4],$[5],$[6],$[7],$[8],$[9],$[10],$[11],$[12],$[13],$[14],$[15],$[16],$[17],$[18],$[19],$[20],$[21])}reset(){this.init()}}O4$.NuidImpl=Na0;O4$.nuid=new Na0});var z4$=v((j4$)=>{Object.defineProperty(j4$,"__esModule",{value:!0});j4$.nuid=j4$.Nuid=void 0;var w4$=L4$();j4$.Nuid=w4$.NuidImpl;j4$.nuid=w4$.nuid});var DY0=v((OY0)=>{Object.defineProperty(OY0,"__esModule",{value:!0});OY0.nuid=OY0.Nuid=void 0;var P4$=z4$();Object.defineProperty(OY0,"Nuid",{enumerable:!0,get:function(){return P4$.Nuid}});Object.defineProperty(OY0,"nuid",{enumerable:!0,get:function(){return P4$.nuid}})});var BD=v((A4$)=>{Object.defineProperty(A4$,"__esModule",{value:!0});A4$.DEFAULT_HOST=A4$.DEFAULT_PORT=A4$.Match=void 0;A4$.syncIterator=V74;A4$.createInbox=k74;var I74=DY0(),M74=vJ();A4$.Match={Exact:"exact",CanonicalMIME:"canonical",IgnoreCase:"insensitive"};function V74($){let Z=$[Symbol.asyncIterator]();return{async next(){let Q=await Z.next();if(Q.done)return Promise.resolve(null);return Promise.resolve(Q.value)}}}function k74($=""){if($=$||"_INBOX",typeof $!=="string")throw TypeError("prefix must be a string");return $.split(".").forEach((Z)=>{if(Z==="*"||Z===">")throw M74.InvalidArgumentError.format("prefix",`cannot have wildcards ('${$}')`)}),`${$}.${I74.nuid.next()}`}A4$.DEFAULT_PORT=4222;A4$.DEFAULT_HOST="127.0.0.1"});var Rt=v((I4$)=>{Object.defineProperty(I4$,"__esModule",{value:!0});I4$.DataBuffer=void 0;var R4$=_J();class q4${buffers;byteLength;constructor(){this.buffers=[],this.byteLength=0}static concat(...$){let Z=0;for(let Y=0;Y<$.length;Y++)Z+=$[Y].length;let Q=new Uint8Array(Z),X=0;for(let Y=0;Y<$.length;Y++)Q.set($[Y],X),X+=$[Y].length;return Q}static fromAscii($){if(!$)$="";return R4$.TE.encode($)}static toAscii($){return R4$.TD.decode($)}reset(){this.buffers.length=0,this.byteLength=0}pack(){if(this.buffers.length>1){let $=new Uint8Array(this.byteLength),Z=0;for(let Q=0;Q<this.buffers.length;Q++)$.set(this.buffers[Q],Z),Z+=this.buffers[Q].length;this.buffers.length=0,this.buffers.push($)}}shift(){if(this.buffers.length){let $=this.buffers.shift();if($)return this.byteLength-=$.length,$}return new Uint8Array(0)}drain($){if(this.buffers.length){this.pack();let Z=this.buffers.pop();if(Z){let Q=this.byteLength;if($===void 0||$>Q)$=Q;let X=Z.subarray(0,$);if(Q>$)this.buffers.push(Z.subarray($));return this.byteLength=Q-$,X}}return new Uint8Array(0)}fill($,...Z){if($)this.buffers.push($),this.byteLength+=$.length;for(let Q=0;Q<Z.length;Q++)if(Z[Q]&&Z[Q].length)this.buffers.push(Z[Q]),this.byteLength+=Z[Q].length}peek(){if(this.buffers.length)return this.pack(),this.buffers[0];return new Uint8Array(0)}size(){return this.byteLength}length(){return this.buffers.length}}I4$.DataBuffer=q4$});var Gz=v((k4$)=>{Object.defineProperty(k4$,"__esModule",{value:!0});k4$.LF=k4$.CR=k4$.CRLF=k4$.CR_LF_LEN=k4$.CR_LF=void 0;k4$.setTransportFactory=y74;k4$.defaultPort=g74;k4$.getUrlParseFn=h74;k4$.newTransport=u74;k4$.getResolveFn=l74;k4$.protoLen=V4$;k4$.extractProtocolMessage=c74;var x74=_J(),f74=BD(),b74=Rt(),xJ;function y74($){xJ=$}function g74(){return xJ!==void 0&&xJ.defaultPort!==void 0?xJ.defaultPort:f74.DEFAULT_PORT}function h74(){return xJ!==void 0&&xJ.urlParseFn?xJ.urlParseFn:void 0}function u74(){if(!xJ||typeof xJ.factory!=="function")throw Error("transport fn is not set");return xJ.factory()}function l74(){return xJ!==void 0&&xJ.dnsResolveFn?xJ.dnsResolveFn:void 0}k4$.CR_LF=`\r
|
|
1968
|
+
`);X=J.pop()??"";for(let G of J){let K=Bun.stripANSI(G).replace(/^\[\d+\]\s*/,"").trim();if(!K)continue;HD({method:"",path:"",status:0,duration:0,timestamp:new Date,rawLine:K})}}(async()=>{try{for(;;){let{done:J,value:G}=await Z.read();if(J)break;X+=Q.decode(G,{stream:!0}),Y()}}catch{}if(X.trim()){let J=Bun.stripANSI(X).replace(/^\[\d+\]\s*/,"").trim();if(J)HD({method:"",path:"",status:0,duration:0,timestamp:new Date,rawLine:J})}})()}async function o94($){let{baseUrl:Z,noTui:Q}=$,X=process.env.HOST==="0.0.0.0"&&Boolean(process.env.PORT),Y=X?process.env.PORT:$.vitePort,J=Z||`http://localhost:${Y}`,G=X?await Pt(Number(Y)+1):await Pt(Number($.port)),{settings:K,services:W,managedServiceNames:H}=await QY0({port:String(G),home:$.home,baseUrl:$.baseUrl,localMode:$.localMode,skipMigrations:$.skipMigrations,noTui:$.noTui,vitePort:$.vitePort});for(let L of W)Zz({name:L.name,status:"ready",port:L.port});Et();let F=t94(import.meta.dir,"..","..","..","..",".."),U=Q===!0,N=Bun.spawn(["bun","run","dev:servers"],{cwd:F,env:{...process.env,PORT:String(K.port),VITE_PORT:String(Y),DATABASE_URL:K.databaseUrl,NATS_URL:K.natsUrls.join(","),NODE_ENV:K.nodeEnv,BASE_URL:J,DECOCMS_LOCAL_MODE:String(K.localMode),DECOCMS_HOME:K.dataDir,DATA_DIR:K.dataDir,DECO_CLI:"1",...K.betterAuthSecret?{BETTER_AUTH_SECRET:K.betterAuthSecret}:{},...K.s3Endpoint?{S3_ENDPOINT:K.s3Endpoint,S3_BUCKET:K.s3Bucket??"",S3_ACCESS_KEY_ID:K.s3AccessKeyId??"",S3_SECRET_ACCESS_KEY:K.s3SecretAccessKey??"",S3_FORCE_PATH_STYLE:String(K.s3ForcePathStyle)}:{},...K.natsCredsPath?{NATS_CREDS:K.natsCredsPath}:{}},stdio:["inherit",U?"inherit":"pipe",U?"inherit":"pipe"]});if(!U)dr0(N.stdout),dr0(N.stderr);zt(J),Zz({name:"Vite",status:"ready",port:Number(Y)}),Zz({name:"API",status:"ready",port:Number(K.port)});let O=async(L)=>{if(N.kill(L),await N.exited,H.length>0){let{stopServices:w}=await Promise.resolve().then(() => (XX0(),QX0));await w(K.dataDir)}};return process.on("SIGINT",()=>O("SIGINT")),process.on("SIGTERM",()=>O("SIGTERM")),{port:Number(Y),process:N}}var pr0=D(()=>{hr0();Qz();mr0()});var JY0;var nr0=D(()=>{JY0={name:"decocms",version:"4.358.2",description:"Deco CMS \u2014 Self-hostable MCP Gateway for managing AI connections and tools",author:"Deco team",repository:{type:"git",url:"git+https://github.com/decocms/studio.git",directory:"apps/api"},bugs:{url:"https://github.com/decocms/studio/issues"},type:"module",bin:{deco:"./dist/server/cli.js"},files:["dist/**/*"],scripts:{dev:"bun run migrate && bun run dev:server","dev:server":"bun run --cwd=../../packages/sandbox build && NODE_ENV=development bun --env-file=.env --hot run src/index.ts",build:"bun run build:server","build:server":"bun run scripts/bundle-server-script.ts --dist ./dist/server","generate:tool-contracts":"bun run scripts/generate-tool-contracts.ts","db:migrate":"bun run ./dist/server/migrate.js","db:migrate:dbos":"bun run ./dist/server/migrate-dbos.js",check:"tsc --noEmit",start:"bun run ./dist/server/server.js",migrate:"bun run src/database/migrate.ts","migrate:dbos":"bun run src/database/migrate-dbos.ts",test:"bun test src","better-auth:migrate":"bunx --bun @better-auth/cli migrate -y --config src/auth/index.ts",prepublishOnly:"bun run --cwd=../.. build:studio"},optionalDependencies:{"@duckdb/node-api":"^1.5.0-r.1"},dependencies:{"@ai-sdk/anthropic":"^3.0.85","@ai-sdk/google":"^3.0.83","@ai-sdk/openai":"^3.0.73","@anthropic-ai/sdk":"^0.105.0","@aws-sdk/client-s3":"^3.1013.0","@aws-sdk/client-sts":"^3.1013.0","@aws-sdk/lib-storage":"^3.1013.0","@aws-sdk/s3-request-presigner":"^3.1013.0","@clickhouse/client":"^1.8.1","@dbos-inc/dbos-sdk":"^4.21.6","@inkjs/ui":"^2.0.0","@nats-io/jetstream":"3.4.0","@nats-io/kv":"3.4.0","@nats-io/nats-core":"3.4.0","@nats-io/transport-node":"3.4.0","@openrouter/ai-sdk-provider":"^2.9.1","@opentelemetry/core":"^2.6.0","embedded-postgres":"^18.3.0-beta.16",ink:"^6.8.0",kysely:"^0.28.12","posthog-node":"^5.0.0",react:"^19.2.6","react-dom":"^19.2.6"},devDependencies:{"@ai-sdk/provider":"^3.0.10","@better-auth/sso":"1.4.1","@decocms/better-auth":"1.5.17","@decocms/bindings":"workspace:*","@decocms/mcp-utils":"workspace:*","@decocms/runtime":"workspace:*","@decocms/sandbox":"workspace:*","@decocms/shared":"workspace:*","@jitl/quickjs-wasmfile-release-sync":"0.31.0","@modelcontextprotocol/sdk":"1.29.0","@opentelemetry/api":"^1.9.0","@opentelemetry/api-logs":"^0.211.0","@opentelemetry/exporter-logs-otlp-proto":"^0.211.0","@opentelemetry/exporter-prometheus":"^0.208.0","@opentelemetry/exporter-trace-otlp-proto":"^0.207.0","@opentelemetry/instrumentation-runtime-node":"^0.24.0","@opentelemetry/resources":"^2.6.0","@opentelemetry/sdk-logs":"^0.211.0","@opentelemetry/sdk-metrics":"^2.2.0","@opentelemetry/sdk-node":"^0.207.0","@opentelemetry/sdk-trace-base":"^2.5.0","@types/bun":"^1.3.1","@types/google.maps":"^3.65.2","@types/pg":"^8.15.6","@types/react-syntax-highlighter":"^15.5.13","@vercel/nft":"^1.1.1",ai:"^6.0.208","better-auth":"1.4.22",croner:"^9.1.0",degit:"^2.8.4",hono:"^4.10.7",jose:"^6.0.11",nanoid:"^5.1.6",pg:"^8.16.3",typescript:"^7.0.2",typescript5:"npm:typescript@^5.9.3",zod:"4.3.6"},homepage:"https://github.com/decocms/studio",keywords:["mcp","model-context-protocol","ai","gateway","self-hosted","tools"],license:"MIT",publishConfig:{access:"public"}}});import{Box as a94,Text as k8$}from"ink";import{jsx as s94,jsxs as S8$}from"react/jsx-runtime";function C8$({version:$}){return S8$(a94,{flexDirection:"column",marginTop:1,children:[MX0.map((Z,Q)=>s94(k8$,{color:VX0[Q],children:Z},Q)),S8$(k8$,{dimColor:!0,children:[" v",$]})]})}var _8$=D(()=>{Yt()});import{Box as Xz,Text as FD}from"ink";import{Spinner as e94}from"@inkjs/ui";import{jsx as CJ,jsxs as Bh}from"react/jsx-runtime";function v8$({status:$}){if($==="pending")return CJ(e94,{label:""});return CJ(FD,{color:"green",children:"\u2713"})}function $Z4($){return`${$.name}: ${$.port||"...."}`}function x8$({services:$,migrationsStatus:Z,home:Q,serverUrl:X}){return Bh(Xz,{flexDirection:"column",paddingBottom:1,children:[CJ(C8$,{version:JY0.version}),CJ(Xz,{marginBottom:1,children:CJ(FD,{dimColor:!0,children:"\u2500".repeat(80)})}),CJ(Xz,{children:Bh(FD,{dimColor:!0,children:["Home: ",Q]})}),Bh(Xz,{gap:2,children:[$.map((Y)=>Bh(Xz,{gap:1,children:[CJ(FD,{children:$Z4(Y)}),CJ(v8$,{status:Y.status})]},Y.name)),Bh(Xz,{gap:1,children:[CJ(FD,{children:"Migrations"}),CJ(v8$,{status:Z})]})]}),CJ(Xz,{children:X?Bh(FD,{children:["Open in browser: ",CJ(FD,{color:"cyan",children:X})]}):CJ(FD,{dimColor:!0,children:"Starting..."})})]})}var f8$=D(()=>{nr0();_8$()});import{Box as ZZ4,Text as At}from"ink";import{jsx as tr0,jsxs as or0}from"react/jsx-runtime";function QZ4($){if($>=500)return"red";if($>=400)return"yellow";if($>=300)return"cyan";return"green"}function b8$({logs:$}){return tr0(ZZ4,{flexDirection:"column",children:$.map((Z,Q)=>{if(Z.rawLine)return tr0(At,{dimColor:!0,children:Z.rawLine},Q);let X=Z.duration<1000?`${Z.duration}ms`:`${(Z.duration/1000).toFixed(1)}s`;return or0(At,{children:[or0(At,{dimColor:!0,children:[Z.method.padEnd(6)," ",Z.path.padEnd(30)," "]}),tr0(At,{color:QZ4(Z.status),children:Z.status}),or0(At,{dimColor:!0,children:[" ",X.padStart(8)]})]},Q)})})}var y8$=()=>{};var rr0={};e(rr0,{App:()=>JZ4});import{Box as XZ4}from"ink";import{useSyncExternalStore as YZ4}from"react";import{jsx as g8$,jsxs as GZ4}from"react/jsx-runtime";function JZ4({home:$}){let Z=YZ4(cr0,lr0);return GZ4(XZ4,{flexDirection:"column",children:[g8$(x8$,{services:Z.services,migrationsStatus:Z.migrationsStatus,home:$,serverUrl:Z.serverUrl}),g8$(b8$,{logs:Z.logs})]})}var ar0=D(()=>{f8$();y8$();Qz()});var JG="thread-gate",WN="decopilot-hosted-harness",HN="decopilot-hosted-harness-sandboxed",GG="automations",UD="background-tools",Yz="task-board-github-reads";var h8$="11";function u8$($){return{name:"decocms",systemDatabaseUrl:$.systemDatabaseUrl,systemDatabaseSchemaName:"dbos",systemDatabasePoolSize:$.poolSize,runAdminServer:!1,executorID:$.executorID,applicationVersion:h8$,...$.listenQueues!==void 0?{listenQueues:$.listenQueues}:{}}}var l8$=()=>{};import KZ4 from"pg";async function m8$($,Z){let{databaseUrl:Q,lockTimeoutMs:X=WZ4}=$,Y=$.log??((W)=>console.log(W)),J=new KZ4.Client({connectionString:Q});await J.connect();let G=Date.now(),K=!1;try{while(!K){if(K=(await J.query("SELECT pg_try_advisory_lock($1) AS locked",[c8$.toString()])).rows[0]?.locked===!0,K)break;if(Date.now()-G>=X)throw Error(`Timed out after ${X}ms waiting for the DBOS migration lock. Another process is still migrating the dbos schema; this pod will restart and retry.`);await B$(HZ4)}let W=Date.now()-G;if(W>1000)Y(`[dbos] waited ${W}ms for the migration lock; another process migrated first`);return await Z()}finally{if(K)try{await J.query("SELECT pg_advisory_unlock($1)",[c8$.toString()])}catch{}await J.end().catch(()=>{})}}var c8$=8314027461559302n,WZ4=600000,HZ4=500;var d8$=D(()=>{Z8()});function FZ4(){let $=(process.env.BUN_OPTIONS??"").split(/\s+/).filter(Boolean);return[...process.argv.slice(1),...$]}function sr0($,Z){for(let Q=0;Q<$.length;Q++){let X=$[Q];if(X===void 0)continue;if(X===Z)return $[Q+1];if(X.startsWith(`${Z}=`))return X.slice(Z.length+1)}return}function i8$(){let $=FZ4();if($.includes("--cpu-prof")){console.log(JSON.stringify({msg:"cpu-profiling-active",dir:sr0($,"--cpu-prof-dir")??process.cwd(),name:sr0($,"--cpu-prof-name"),markdown:$.includes("--cpu-prof-md"),intervalUs:Number(sr0($,"--cpu-prof-interval")??1000),note:"profile is written on process exit"}));return}if(process.env.CPU_PROFILE)console.warn(JSON.stringify({msg:"cpu-profiling-requested-but-inactive",hint:'CPU profiling is a Bun launch flag. Set BUN_OPTIONS="--cpu-prof --cpu-prof-md --cpu-prof-dir=/tmp" before starting the process.'}))}function p8$(){if(process.env.HEAP_WATCH!=="1")return()=>{};let $=Number(process.env.HEAP_WATCH_INTERVAL_MS??60000),Z=async()=>{let Q=aE();if(!Q)return;let X={};try{let{heapStats:Y}=await import("bun:jsc"),J=Y(),G=Object.entries(J.objectTypeCounts).sort((K,W)=>W[1]-K[1]).slice(0,20);X={objectCount:J.objectCount,heapSize:J.heapSize,top:Object.fromEntries(G)}}catch{}console.log(JSON.stringify({msg:"heap-watch",ts:new Date().toISOString(),uptimeS:Math.round(process.uptime()),rss:Q.rss,heapUsed:Q.heapUsed,heapTotal:Q.heapTotal,external:Q.external,arrayBuffers:Q.arrayBuffers,...X}))};return Z().catch(()=>{}),GY0=setInterval(()=>void Z().catch(()=>{}),$),GY0.unref?.(),process.on("SIGUSR2",()=>{try{let Q=Bun.generateHeapSnapshot("v8"),X=typeof Q==="string"?Q:JSON.stringify(Q),Y=`/tmp/heap-${process.pid}-${Date.now()}.heapsnapshot`;Bun.write(Y,X),console.log(JSON.stringify({msg:"heap-snapshot-written",path:Y}))}catch(Q){console.error("[heap-watch] snapshot failed:",Q)}}),()=>{if(GY0)clearInterval(GY0)}}var GY0;var n8$=()=>{};import*as UZ4 from"bun:jsc";function t8$(){if(process.env.STALL_WATCHDOG!=="1")return()=>{};let $=Number(process.env.STALL_WATCHDOG_MS??100),Z=Number(process.env.STALL_WATCHDOG_TICK_MS??50);try{NZ4()}catch(J){return console.error("[stall-watchdog] failed to start sampling profiler:",J),()=>{}}let Q,X=performance.now()+Z,Y=()=>{let J=performance.now(),G=J-X;X=J+Z;let K=[];try{K=BZ4()?.traces??[]}catch{}if(G>$&&K.length>0){let W=new Map;for(let F of K){let U=F.frames.find((O)=>O.sourceURL&&!/Unknown Executable/.test(O.category??""))??F.frames[0];if(!U)continue;let N=(U.sourceURL??"?").replace(/^.*\/node_modules\//,"node_modules/"),B=`${U.name??"?"} @ ${N}:${U.line??"?"}`;W.set(B,(W.get(B)??0)+1)}let H=[...W.entries()].sort((F,U)=>U[1]-F[1]).slice(0,8).map(([F,U])=>({frame:F,count:U}));console.warn(JSON.stringify({msg:"stall-stack",ts:new Date().toISOString(),lagMs:Math.round(G),samplesInWindow:K.length,top:H}))}Q=setTimeout(Y,Z),Q.unref?.()};return Q=setTimeout(Y,Z),Q.unref?.(),()=>{if(Q)clearTimeout(Q)}}var NZ4,BZ4;var o8$=D(()=>{({startSamplingProfiler:NZ4,samplingProfilerStackTraces:BZ4}=UZ4)});function r8$(){i8$();let $=[p8$(),is1(),t8$()];return()=>{for(let Z of $)Z()}}var a8$=D(()=>{$p0();n8$();o8$()});var Jz=v((s8$)=>{Object.defineProperty(s8$,"__esModule",{value:!0});s8$.RepublishHeaders=s8$.DirectMsgHeaders=s8$.JsHeaders=s8$.AdvisoryKind=void 0;s8$.isOrderedPushConsumerOptions=OZ4;s8$.isPullConsumer=DZ4;s8$.isPushConsumer=LZ4;s8$.isBoundPushConsumerOptions=wZ4;function OZ4($){if($&&typeof $==="object")return"name_prefix"in $||"deliver_subject_prefix"in $||"filter_subjects"in $||"filter_subject"in $||"deliver_policy"in $||"opt_start_seq"in $||"opt_start_time"in $||"replay_policy"in $||"inactive_threshold"in $||"headers_only"in $||"deliver_prefix"in $;return!1}function DZ4($){return $.isPullConsumer()}function LZ4($){return $.isPushConsumer()}function wZ4($){if($&&typeof $==="object")return"deliver_subject"in $||"deliver_group"in $||"idle_heartbeat"in $;return!1}s8$.AdvisoryKind={API:"api_audit",StreamAction:"stream_action",ConsumerAction:"consumer_action",SnapshotCreate:"snapshot_create",SnapshotComplete:"snapshot_complete",RestoreCreate:"restore_create",RestoreComplete:"restore_complete",MaxDeliver:"max_deliver",Terminated:"terminated",Ack:"consumer_ack",StreamLeaderElected:"stream_leader_elected",StreamQuorumLost:"stream_quorum_lost",ConsumerLeaderElected:"consumer_leader_elected",ConsumerQuorumLost:"consumer_quorum_lost"};s8$.JsHeaders={StreamSourceHdr:"Nats-Stream-Source",LastConsumerSeqHdr:"Nats-Last-Consumer",LastStreamSeqHdr:"Nats-Last-Stream",ConsumerStalledHdr:"Nats-Consumer-Stalled",MessageSizeHdr:"Nats-Msg-Size",RollupHdr:"Nats-Rollup",RollupValueSubject:"sub",RollupValueAll:"all",PendingMessagesHdr:"Nats-Pending-Messages",PendingBytesHdr:"Nats-Pending-Bytes",RequiredApiLevel:"Nats-Required-Api-Level"};s8$.DirectMsgHeaders={Stream:"Nats-Stream",Sequence:"Nats-Sequence",TimeStamp:"Nats-Time-Stamp",Subject:"Nats-Subject",LastSequence:"Nats-Last-Sequence",NumPending:"Nats-Num-Pending"};s8$.RepublishHeaders={Stream:"Nats-Stream",Subject:"Nats-Subject",Sequence:"Nats-Sequence",LastSequence:"Nats-Last-Sequence",Size:"Nats-Msg-Size"}});var _J=v(($4$)=>{Object.defineProperty($4$,"__esModule",{value:!0});$4$.TD=$4$.TE=$4$.Empty=void 0;$4$.encode=IZ4;$4$.decode=MZ4;$4$.Empty=new Uint8Array(0);$4$.TE=new TextEncoder;$4$.TD=new TextDecoder;function qZ4(...$){let Z=0;for(let Y=0;Y<$.length;Y++)Z+=$[Y].length;let Q=new Uint8Array(Z),X=0;for(let Y=0;Y<$.length;Y++)Q.set($[Y],X),X+=$[Y].length;return Q}function IZ4(...$){let Z=[];for(let Q=0;Q<$.length;Q++)Z.push($4$.TE.encode($[Q]));if(Z.length===0)return $4$.Empty;if(Z.length===1)return Z[0];return qZ4(...Z)}function MZ4($){if(!$||$.length===0)return"";return $4$.TD.decode($)}});var vJ=v((X4$)=>{Object.defineProperty(X4$,"__esModule",{value:!0});X4$.errors=X4$.PermissionViolationError=X4$.NoRespondersError=X4$.TimeoutError=X4$.RequestError=X4$.ProtocolError=X4$.ConnectionError=X4$.DrainingConnectionError=X4$.ClosedConnectionError=X4$.AuthorizationError=X4$.UserAuthenticationExpiredError=X4$.InvalidOperationError=X4$.InvalidArgumentError=X4$.InvalidSubjectError=void 0;class $a0 extends Error{constructor($,Z){super(`illegal subject: '${$}'`,Z);this.name="InvalidSubjectError"}}X4$.InvalidSubjectError=$a0;class KY0 extends Error{constructor($,Z){super($,Z);this.name="InvalidArgumentError"}static format($,Z,Q){if(Array.isArray(Z)&&Z.length>1)Z=Z[0];if(Array.isArray($))$=$.map((X)=>`'${X}'`),$=$.join(",");else $=`'${$}'`;return new KY0(`${$} ${Z}`,Q)}}X4$.InvalidArgumentError=KY0;class Za0 extends Error{constructor($,Z){super($,Z);this.name="InvalidOperationError"}}X4$.InvalidOperationError=Za0;class WY0 extends Error{constructor($,Z){super($,Z);this.name="UserAuthenticationExpiredError"}static parse($){if($.toLowerCase().indexOf("user authentication expired")!==-1)return new WY0($);return null}}X4$.UserAuthenticationExpiredError=WY0;class HY0 extends Error{constructor($,Z){super($,Z);this.name="AuthorizationError"}static parse($){let Z=["authorization violation","account authentication expired","authentication timeout"],Q=$.toLowerCase();for(let X=0;X<Z.length;X++)if(Q.indexOf(Z[X])!==-1)return new HY0($);return null}}X4$.AuthorizationError=HY0;class Qa0 extends Error{constructor(){super("closed connection");this.name="ClosedConnectionError"}}X4$.ClosedConnectionError=Qa0;class Xa0 extends Error{constructor(){super("connection draining");this.name="DrainingConnectionError"}}X4$.DrainingConnectionError=Xa0;class Ya0 extends Error{constructor($,Z){super($,Z);this.name="ConnectionError"}}X4$.ConnectionError=Ya0;class Ja0 extends Error{constructor($,Z){super($,Z);this.name="ProtocolError"}}X4$.ProtocolError=Ja0;class Ga0 extends Error{constructor($="",Z){super($,Z);this.name="RequestError"}isNoResponders(){return this.cause instanceof FY0}}X4$.RequestError=Ga0;class Ka0 extends Error{constructor($){super("timeout",$);this.name="TimeoutError"}}X4$.TimeoutError=Ka0;class FY0 extends Error{subject;constructor($,Z){super(`no responders: '${$}'`,Z);this.subject=$,this.name="NoResponders"}}X4$.NoRespondersError=FY0;class UY0 extends Error{operation;subject;queue;constructor($,Z,Q,X,Y){super($,Y);this.name="PermissionViolationError",this.operation=Z,this.subject=Q,this.queue=X}static parse($){if(($?$.toLowerCase():"").indexOf("permissions violation")===-1)return null;let Q="publish",X="",Y=void 0,J=$.match(/(Publish|Subscription) to "(\S+)"/);if(J){if(Q=J[1].toLowerCase(),X=J[2],Q==="subscription"){let G=$.match(/using queue "(\S+)"/);if(G)Y=G[1]}}return new UY0($,Q,X,Y)}}X4$.PermissionViolationError=UY0;X4$.errors={AuthorizationError:HY0,ClosedConnectionError:Qa0,ConnectionError:Ya0,DrainingConnectionError:Xa0,InvalidArgumentError:KY0,InvalidOperationError:Za0,InvalidSubjectError:$a0,NoRespondersError:FY0,PermissionViolationError:UY0,ProtocolError:Ja0,RequestError:Ga0,TimeoutError:Ka0,UserAuthenticationExpiredError:WY0}});var _K=v((W4$)=>{Object.defineProperty(W4$,"__esModule",{value:!0});W4$.SimpleMutex=W4$.Perf=void 0;W4$.extend=dZ4;W4$.render=iZ4;W4$.timeout=pZ4;W4$.delay=nZ4;W4$.deadline=tZ4;W4$.deferred=Ha0;W4$.debugDeferred=oZ4;W4$.shuffle=rZ4;W4$.collect=aZ4;W4$.jitter=K4$;W4$.backoff=sZ4;W4$.nanos=eZ4;W4$.millis=$74;W4$.randomToken=X74;var mZ4=_J(),Wa0=vJ();function dZ4($,...Z){for(let Q=0;Q<Z.length;Q++){let X=Z[Q];Object.keys(X).forEach(function(Y){$[Y]=X[Y]})}return $}function iZ4($){return mZ4.TD.decode($).replace(/\n/g,"\u240A").replace(/\r/g,"\u240D")}function pZ4($,Z=!0){let Q=Z?new Wa0.TimeoutError:null,X,Y,J=new Promise((G,K)=>{X={cancel:()=>{if(Y)clearTimeout(Y)}},Y=setTimeout(()=>{if(Q===null)K(new Wa0.TimeoutError);else K(Q)},$)});return Object.assign(J,X)}function nZ4($=0){let Z,Q=new Promise((X)=>{let Y=setTimeout(()=>{X()},$);Z={cancel:()=>{if(Y)clearTimeout(Y),X()}}});return Object.assign(Q,Z)}async function tZ4($,Z=1000){let Q=Ha0(),X=setTimeout(()=>{Q.reject(new Wa0.TimeoutError)},Z);try{return await Promise.race([$,Q])}finally{clearTimeout(X)}}function Ha0(){let $={},Z=new Promise((Q,X)=>{$={resolve:Q,reject:X}});return Object.assign(Z,$)}function oZ4(){let $={},Z=new Promise((Q,X)=>{$={resolve:(Y)=>{console.trace("resolve",Y),Q(Y)},reject:(Y)=>{console.trace("reject"),X(Y)}}});return Object.assign(Z,$)}function rZ4($){for(let Z=$.length-1;Z>0;Z--){let Q=Math.floor(Math.random()*(Z+1));[$[Z],$[Q]]=[$[Q],$[Z]]}return $}async function aZ4($){let Z=[];for await(let Q of $)Z.push(Q);return Z}class J4${timers;measures;constructor(){this.timers=new Map,this.measures=new Map}mark($){this.timers.set($,performance.now())}measure($,Z,Q){let X=this.timers.get(Z);if(X===void 0)throw Error(`${Z} is not defined`);let Y=this.timers.get(Q);if(Y===void 0)throw Error(`${Q} is not defined`);this.measures.set($,Y-X)}getEntries(){let $=[];return this.measures.forEach((Z,Q)=>{$.push({name:Q,duration:Z})}),$}}W4$.Perf=J4$;class G4${max;current;waiting;constructor($=1){this.max=$,this.current=0,this.waiting=[]}lock(){if(this.current++,this.current<=this.max)return Promise.resolve();let $=Ha0();return this.waiting.push($),$}unlock(){this.current--,this.waiting.pop()?.resolve()}}W4$.SimpleMutex=G4$;function K4$($){if($===0)return 0;return Math.floor($/2+Math.random()*$)}function sZ4($=[0,250,250,500,500,3000,5000]){if(!Array.isArray($))$=[0,250,250,500,500,3000,5000];let Z=$.length-1;return{backoff(Q){return K4$(Q>Z?$[Z]:$[Q])}}}function eZ4($){return $*1e6}function $74($){return Math.floor($/1e6)}var Z74="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",FN=new Uint8Array(62);for(let $=0;$<62;$++)FN[$]=Z74.charCodeAt($);var Q74=218340105584896;function X74(){let $=Math.floor(Math.random()*Q74),Z=$%62,Q=FN[Z];$=($-Z)/62,Z=$%62;let X=FN[Z];$=($-Z)/62,Z=$%62;let Y=FN[Z];$=($-Z)/62,Z=$%62;let J=FN[Z];$=($-Z)/62,Z=$%62;let G=FN[Z];$=($-Z)/62,Z=$%62;let K=FN[Z];$=($-Z)/62,Z=$%62;let W=FN[Z];$=($-Z)/62;let H=FN[$];return String.fromCharCode(Q,X,Y,J,G,K,W,H)}});var L4$=v((O4$)=>{Object.defineProperty(O4$,"__esModule",{value:!0});O4$.nuid=O4$.NuidImpl=void 0;var E74="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",ND=62,BY0=12,N4$=10,F4$=33,z74=333,U4$=BY0+N4$,Ua0=new Uint8Array(ND);for(let $=0;$<ND;$++)Ua0[$]=E74.charCodeAt($);var NY0=4294967296,B4$=BigInt(ND)**BigInt(N4$),Tt=Number(B4$/(1n<<32n)),Fa0=Number(B4$%(1n<<32n));function P74($){for(let Z=0;Z<$.length;Z++)$[Z]=Math.floor(Math.random()*256)}function A74($){if(globalThis?.crypto?.getRandomValues)globalThis.crypto.getRandomValues($);else P74($)}class Na0{buf;cbuf;seqHi;seqLo;inc;inited;constructor(){this.buf=new Uint8Array(U4$),this.cbuf=new Uint8Array(BY0),this.inited=!1}init(){this.inited=!0,this.setPre(),this.initSeqAndInc(),this.fillSeq()}initSeqAndInc(){let $=0;do this.seqHi=Math.floor(Math.random()*(Tt+1)),this.seqLo=Math.floor(Math.random()*NY0);while($++<8&&this.seqHi===Tt&&this.seqLo>=Fa0);if(this.seqHi===Tt&&this.seqLo>=Fa0)this.seqLo=0;this.inc=Math.random()*(z74-F4$)+F4$|0}setPre(){A74(this.cbuf);for(let $=0;$<BY0;$++)this.buf[$]=Ua0[this.cbuf[$]%ND]}fillSeq(){let $=this.seqHi,Z=this.seqLo;for(let Q=U4$-1;Q>=BY0;Q--){let X=Math.floor($/ND),J=($-X*ND)*NY0+Z,G=Math.floor(J/ND),K=J-G*ND;this.buf[Q]=Ua0[K],$=X,Z=G}}next(){if(!this.inited)this.init();if(this.seqLo+=this.inc,this.seqLo>=NY0)this.seqLo-=NY0,this.seqHi+=1;if(this.seqHi>Tt||this.seqHi===Tt&&this.seqLo>=Fa0)this.setPre(),this.initSeqAndInc();this.fillSeq();let $=this.buf;return String.fromCharCode($[0],$[1],$[2],$[3],$[4],$[5],$[6],$[7],$[8],$[9],$[10],$[11],$[12],$[13],$[14],$[15],$[16],$[17],$[18],$[19],$[20],$[21])}reset(){this.init()}}O4$.NuidImpl=Na0;O4$.nuid=new Na0});var z4$=v((j4$)=>{Object.defineProperty(j4$,"__esModule",{value:!0});j4$.nuid=j4$.Nuid=void 0;var w4$=L4$();j4$.Nuid=w4$.NuidImpl;j4$.nuid=w4$.nuid});var DY0=v((OY0)=>{Object.defineProperty(OY0,"__esModule",{value:!0});OY0.nuid=OY0.Nuid=void 0;var P4$=z4$();Object.defineProperty(OY0,"Nuid",{enumerable:!0,get:function(){return P4$.Nuid}});Object.defineProperty(OY0,"nuid",{enumerable:!0,get:function(){return P4$.nuid}})});var BD=v((A4$)=>{Object.defineProperty(A4$,"__esModule",{value:!0});A4$.DEFAULT_HOST=A4$.DEFAULT_PORT=A4$.Match=void 0;A4$.syncIterator=V74;A4$.createInbox=k74;var I74=DY0(),M74=vJ();A4$.Match={Exact:"exact",CanonicalMIME:"canonical",IgnoreCase:"insensitive"};function V74($){let Z=$[Symbol.asyncIterator]();return{async next(){let Q=await Z.next();if(Q.done)return Promise.resolve(null);return Promise.resolve(Q.value)}}}function k74($=""){if($=$||"_INBOX",typeof $!=="string")throw TypeError("prefix must be a string");return $.split(".").forEach((Z)=>{if(Z==="*"||Z===">")throw M74.InvalidArgumentError.format("prefix",`cannot have wildcards ('${$}')`)}),`${$}.${I74.nuid.next()}`}A4$.DEFAULT_PORT=4222;A4$.DEFAULT_HOST="127.0.0.1"});var Rt=v((I4$)=>{Object.defineProperty(I4$,"__esModule",{value:!0});I4$.DataBuffer=void 0;var R4$=_J();class q4${buffers;byteLength;constructor(){this.buffers=[],this.byteLength=0}static concat(...$){let Z=0;for(let Y=0;Y<$.length;Y++)Z+=$[Y].length;let Q=new Uint8Array(Z),X=0;for(let Y=0;Y<$.length;Y++)Q.set($[Y],X),X+=$[Y].length;return Q}static fromAscii($){if(!$)$="";return R4$.TE.encode($)}static toAscii($){return R4$.TD.decode($)}reset(){this.buffers.length=0,this.byteLength=0}pack(){if(this.buffers.length>1){let $=new Uint8Array(this.byteLength),Z=0;for(let Q=0;Q<this.buffers.length;Q++)$.set(this.buffers[Q],Z),Z+=this.buffers[Q].length;this.buffers.length=0,this.buffers.push($)}}shift(){if(this.buffers.length){let $=this.buffers.shift();if($)return this.byteLength-=$.length,$}return new Uint8Array(0)}drain($){if(this.buffers.length){this.pack();let Z=this.buffers.pop();if(Z){let Q=this.byteLength;if($===void 0||$>Q)$=Q;let X=Z.subarray(0,$);if(Q>$)this.buffers.push(Z.subarray($));return this.byteLength=Q-$,X}}return new Uint8Array(0)}fill($,...Z){if($)this.buffers.push($),this.byteLength+=$.length;for(let Q=0;Q<Z.length;Q++)if(Z[Q]&&Z[Q].length)this.buffers.push(Z[Q]),this.byteLength+=Z[Q].length}peek(){if(this.buffers.length)return this.pack(),this.buffers[0];return new Uint8Array(0)}size(){return this.byteLength}length(){return this.buffers.length}}I4$.DataBuffer=q4$});var Gz=v((k4$)=>{Object.defineProperty(k4$,"__esModule",{value:!0});k4$.LF=k4$.CR=k4$.CRLF=k4$.CR_LF_LEN=k4$.CR_LF=void 0;k4$.setTransportFactory=y74;k4$.defaultPort=g74;k4$.getUrlParseFn=h74;k4$.newTransport=u74;k4$.getResolveFn=l74;k4$.protoLen=V4$;k4$.extractProtocolMessage=c74;var x74=_J(),f74=BD(),b74=Rt(),xJ;function y74($){xJ=$}function g74(){return xJ!==void 0&&xJ.defaultPort!==void 0?xJ.defaultPort:f74.DEFAULT_PORT}function h74(){return xJ!==void 0&&xJ.urlParseFn?xJ.urlParseFn:void 0}function u74(){if(!xJ||typeof xJ.factory!=="function")throw Error("transport fn is not set");return xJ.factory()}function l74(){return xJ!==void 0&&xJ.dnsResolveFn?xJ.dnsResolveFn:void 0}k4$.CR_LF=`\r
|
|
1969
1969
|
`;k4$.CR_LF_LEN=k4$.CR_LF.length;k4$.CRLF=b74.DataBuffer.fromAscii(k4$.CR_LF);k4$.CR=new Uint8Array(k4$.CRLF)[0];k4$.LF=new Uint8Array(k4$.CRLF)[1];function V4$($){for(let Z=0;Z<$.length;Z++){let Q=Z+1;if($.byteLength>Q&&$[Z]===k4$.CR&&$[Q]===k4$.LF)return Q+1}return 0}function c74($){let Z=V4$($);if(Z>0){let X=new Uint8Array($).slice(0,Z);return x74.TD.decode(X)}return""}});var wa0=v((y4$)=>{Object.defineProperty(y4$,"__esModule",{value:!0});y4$.ipV4=x4$;y4$.isIP=e74;y4$.parseIP=f4$;var qt=4,Kz=16,LY0=48,v4$=57,C4$=65,a74=70,_4$=97,s74=102,La0=16777215;function x4$($,Z,Q,X){let Y=new Uint8Array(Kz);return[0,0,0,0,0,0,0,0,0,0,255,255].forEach((G,K)=>{Y[K]=G}),Y[12]=$,Y[13]=Z,Y[14]=Q,Y[15]=X,Y}function e74($){return f4$($)!==void 0}function f4$($){for(let Z=0;Z<$.length;Z++)switch($[Z]){case".":return b4$($);case":":return $Q4($)}return}function b4$($){let Z=new Uint8Array(qt);for(let Q=0;Q<qt;Q++){if($.length===0)return;if(Q>0){if($[0]!==".")return;$=$.substring(1)}let{n:X,c:Y,ok:J}=ZQ4($);if(!J||X>255)return;$=$.substring(Y),Z[Q]=X}return x4$(Z[0],Z[1],Z[2],Z[3])}function $Q4($){let Z=new Uint8Array(Kz),Q=-1;if($.length>=2&&$[0]===":"&&$[1]===":"){if(Q=0,$=$.substring(2),$.length===0)return Z}let X=0;while(X<Kz){let{n:Y,c:J,ok:G}=QQ4($);if(!G||Y>65535)return;if(J<$.length&&$[J]==="."){if(Q<0&&X!=Kz-qt)return;if(X+qt>Kz)return;let K=b4$($);if(K===void 0)return;Z[X]=K[12],Z[X+1]=K[13],Z[X+2]=K[14],Z[X+3]=K[15],$="",X+=qt;break}if(Z[X]=Y>>8,Z[X+1]=Y,X+=2,$=$.substring(J),$.length===0)break;if($[0]!==":"||$.length==1)return;if($=$.substring(1),$[0]===":"){if(Q>=0)return;if(Q=X,$=$.substring(1),$.length===0)break}}if($.length!==0)return;if(X<Kz){if(Q<0)return;let Y=Kz-X;for(let J=X-1;J>=Q;J--)Z[J+Y]=Z[J];for(let J=Q+Y-1;J>=Q;J--)Z[J]=0}else if(Q>=0)return;return Z}function ZQ4($){let Z=0,Q=0;for(Z=0;Z<$.length&&LY0<=$.charCodeAt(Z)&&$.charCodeAt(Z)<=v4$;Z++)if(Q=Q*10+($.charCodeAt(Z)-LY0),Q>=La0)return{n:La0,c:Z,ok:!1};if(Z===0)return{n:0,c:0,ok:!1};return{n:Q,c:Z,ok:!0}}function QQ4($){let Z=0,Q=0;for(Q=0;Q<$.length;Q++){if(LY0<=$.charCodeAt(Q)&&$.charCodeAt(Q)<=v4$)Z*=16,Z+=$.charCodeAt(Q)-LY0;else if(_4$<=$.charCodeAt(Q)&&$.charCodeAt(Q)<=s74)Z*=16,Z+=$.charCodeAt(Q)-_4$+10;else if(C4$<=$.charCodeAt(Q)&&$.charCodeAt(Q)<=a74)Z*=16,Z+=$.charCodeAt(Q)-C4$+10;else break;if(Z>=La0)return{n:0,c:Q,ok:!1}}if(Q===0)return{n:0,c:Q,ok:!1};return{n:Z,c:Q,ok:!0}}});var Ta0=v((h4$)=>{Object.defineProperty(h4$,"__esModule",{value:!0});h4$.Servers=h4$.ServerImpl=void 0;h4$.isIPV4OrHostname=g4$;h4$.hostPort=Aa0;var ja0=Gz(),Ea0=_K(),za0=wa0(),GQ4=BD(),KQ4=vJ();function g4$($){if($.indexOf("[")!==-1||$.indexOf("::")!==-1)return!1;if($.indexOf(".")!==-1)return!0;if($.split(":").length<=2)return!0;return!1}function Pa0($){return!g4$($)}function WQ4($){let Q=$.toUpperCase().indexOf("::FFFF:");if(Q!==-1&&$.indexOf(".")!==-1){let X=$.substring(Q+7);return X=X.replace("[",""),X.replace("]","")}return $}function Aa0($){if($=$.trim(),$.match(/^(.*:\/\/)(.*)/m))$=$.replace(/^(.*:\/\/)(.*)/gm,"$2");if($=WQ4($),Pa0($)&&$.indexOf("[")===-1)$=`[${$}]`;let Z=Pa0($)?$.match(/(]:)(\d+)/):$.match(/(:)(\d+)/),Q=Z&&Z.length===3&&Z[1]&&Z[2]?parseInt(Z[2]):GQ4.DEFAULT_PORT,Y=new URL(`${Q===80?"https":"http"}://${$}`);Y.port=`${Q}`;let J=Y.hostname;if(J.charAt(0)==="[")J=J.substring(1,J.length-1);return{listen:Y.host,hostname:J,port:Q}}class Oh{src;listen;hostname;port;didConnect;reconnects;lastConnect;gossiped;tlsName;resolves;constructor($,Z=!1){this.src=$,this.tlsName="";let Q=Aa0($);this.listen=Q.listen,this.hostname=Q.hostname,this.port=Q.port,this.didConnect=!1,this.reconnects=0,this.lastConnect=0,this.gossiped=Z}toString(){return this.listen}async resolve($){if(!$.fn||$.resolve===!1)return[this];let Z=[];if((0,za0.isIP)(this.hostname))return[this];else{let Q=await $.fn(this.hostname);if($.debug)console.log(`resolve ${this.hostname} = ${Q.join(",")}`);for(let X of Q){let Y=this.port===80?"https":"http",J=new URL(`${Y}://${Pa0(X)?"["+X+"]":X}`);J.port=`${this.port}`;let G=new Oh(J.host,!1);G.tlsName=this.hostname,Z.push(G)}}if($.randomize)(0,Ea0.shuffle)(Z);return this.resolves=Z,Z}}h4$.ServerImpl=Oh;class wY0{firstSelect;servers;currentServer;tlsName;randomize;constructor($={}){this.firstSelect=!0,this.servers=[],this.tlsName="",this.randomize=$.randomize||!1}setServers($){if(!Array.isArray($)||$.length===0)throw KQ4.InvalidArgumentError.format("servers","cannot be empty");let Z=(0,ja0.getUrlParseFn)(),Q=new Map;for(let Y of this.servers)Q.set(Y.listen,Y);let X=[];for(let Y of $){Y=Z?Z(Y):Y;let{listen:J}=Aa0(Y),G=Q.get(J);if(G)G.gossiped=!1,X.push(G);else X.push(new Oh(Y))}if(this.randomize)(0,Ea0.shuffle)(X);if(this.servers=X,this.currentServer===void 0||!X.includes(this.currentServer))this.currentServer=X[0],this.firstSelect=!0}clear(){this.servers.length=0}updateTLSName(){let $=this.getCurrentServer();if(!(0,za0.isIP)($.hostname))this.tlsName=$.hostname,this.servers.forEach((Z)=>{if(Z.gossiped)Z.tlsName=this.tlsName})}getCurrentServer(){return this.currentServer}addServer($,Z=!1){let Q=(0,ja0.getUrlParseFn)();$=Q?Q($):$;let X=new Oh($,Z);if((0,za0.isIP)(X.hostname))X.tlsName=this.tlsName;this.servers.push(X)}selectServer(){if(this.firstSelect)return this.firstSelect=!1,this.currentServer;let $=this.servers.shift();if($)this.servers.push($),this.currentServer=$;return $}removeCurrentServer(){this.removeServer(this.currentServer)}removeServer($){if($){let Z=this.servers.indexOf($);this.servers.splice(Z,1)}}snapshot(){return wY0.freezeAll(this.servers)}snapshotForHandler(){let $=this.currentServer;if(!$)return this.snapshot();let Z=this.servers.indexOf($);if(Z<=0)return this.snapshot();return wY0.freezeAll([$,...this.servers.slice(0,Z),...this.servers.slice(Z+1)])}static freezeAll($){return $.map((Z)=>Object.freeze({hostname:Z.hostname,port:Z.port,listen:Z.listen,src:Z.src,tlsName:Z.tlsName,reconnects:Z.reconnects,lastConnect:Z.lastConnect,gossiped:Z.gossiped,didConnect:Z.didConnect}))}find($){return this.servers.find((Z)=>Z.listen===$.listen)}setCurrent($){this.currentServer=$}length(){return this.servers.length}next(){return this.servers.length?this.servers[0]:void 0}getServers(){return this.servers}update($,Z){let Q=[],X=[],Y=(0,ja0.getUrlParseFn)(),J=new Map;if($.connect_urls&&$.connect_urls.length>0)$.connect_urls.forEach((K)=>{K=Y?Y(K,Z):K;let W=new Oh(K,!0);J.set(K,W)});let G=[];if(this.servers.forEach((K,W)=>{let H=K.listen;if(K.gossiped&&this.currentServer.listen!==H&&J.get(H)===void 0)G.push(W);J.delete(H)}),G.reverse(),G.forEach((K)=>{let W=this.servers.splice(K,1);X=X.concat(W[0].listen)}),J.forEach((K,W)=>{this.servers.push(K),Q.push(W)}),this.randomize&&Q.length>0){let K=this.currentServer,W=this.servers.filter((H)=>H!==K);(0,Ea0.shuffle)(W),this.servers=K?[K,...W]:W}return{added:Q,deleted:X}}}h4$.Servers=wY0});var jY0=v((m4$)=>{Object.defineProperty(m4$,"__esModule",{value:!0});m4$.QueuedIteratorImpl=void 0;var Ra0=_K(),l4$=vJ();class c4${inflight;processed;received;noIterator;iterClosed;done;signal;yields;filtered;pendingFiltered;ctx;_data;err;time;profile;yielding;didBreak;constructor(){this.inflight=0,this.filtered=0,this.pendingFiltered=0,this.processed=0,this.received=0,this.noIterator=!1,this.done=!1,this.signal=(0,Ra0.deferred)(),this.yields=[],this.iterClosed=(0,Ra0.deferred)(),this.time=0,this.yielding=!1,this.didBreak=!1,this.profile=!1}[Symbol.asyncIterator](){return this.iterate()}push($){if(this.done)return;if(this.didBreak){if(typeof $==="function"){let Z=$;try{Z()}catch(Q){}}return}if(typeof $==="function")this.pendingFiltered++;this.yields.push($),this.signal.resolve()}async*iterate(){if(this.noIterator)throw new l4$.InvalidOperationError("iterator cannot be used when a callback is registered");if(this.yielding)throw new l4$.InvalidOperationError("iterator is already yielding");this.yielding=!0;try{while(!0){if(this.yields.length===0)await this.signal;if(this.err)throw this.err;let $=this.yields;this.inflight=$.length,this.yields=[];for(let Z=0;Z<$.length;Z++){if(typeof $[Z]==="function"){this.pendingFiltered--;let X=$[Z];try{X()}catch(Y){throw Y}if(this.err)throw this.err;continue}this.processed++,this.inflight--;let Q=this.profile?Date.now():0;yield $[Z],this.time=this.profile?Date.now()-Q:0}if(this.done)break;else if(this.yields.length===0)$.length=0,this.yields=$,this.signal=(0,Ra0.deferred)()}}finally{this.didBreak=!0,this.stop()}}stop($){if(this.done)return;this.err=$,this.done=!0,this.signal.resolve(),this.iterClosed.resolve($)}getProcessed(){return this.noIterator?this.received:this.processed}getPending(){return this.yields.length+this.inflight-this.pendingFiltered}getReceived(){return this.received-this.filtered}}m4$.QueuedIteratorImpl=c4$});var qa0=v((n4$)=>{Object.defineProperty(n4$,"__esModule",{value:!0});n4$.MuxSubscription=void 0;var NQ4=BD(),i4$=vJ();class p4${baseInbox;reqs;constructor(){this.reqs=new Map}size(){return this.reqs.size}init($){return this.baseInbox=`${(0,NQ4.createInbox)($)}.`,this.baseInbox}add($){if(!isNaN($.received))$.received=0;this.reqs.set($.token,$)}get($){return this.reqs.get($)}cancel($){this.reqs.delete($.token)}getToken($){let Z=$.subject||"";if(Z.indexOf(this.baseInbox)===0)return Z.substring(this.baseInbox.length);return null}all(){return Array.from(this.reqs.values())}handleError($,Z){if($)return this.all().forEach((Q)=>{Q.resolver(Z,{})}),!0;if(Z.operation==="publish"){let Q=this.all().find((X)=>{return X.requestSubject===Z.subject});if(Q)return Q.resolver(Z,{}),!0}return!1}dispatcher(){return($,Z)=>{let Q=this.getToken(Z);if(Q){let X=this.get(Q);if(X){if($===null)$=Z?.data?.length===0&&Z.headers?.code===503?new i4$.NoRespondersError(X.requestSubject):null;X.resolver($,Z)}}}}close(){let $=new i4$.RequestError("connection closed");this.reqs.forEach((Z)=>{Z.resolver($,{})})}}n4$.MuxSubscription=p4$});var Ia0=v((r4$)=>{Object.defineProperty(r4$,"__esModule",{value:!0});r4$.Heartbeat=void 0;var BQ4=_K();class o4${ph;interval;maxOut;timer;pendings;constructor($,Z,Q){this.ph=$,this.interval=Z,this.maxOut=Q,this.pendings=[]}start(){this.cancel(),this._schedule()}cancel($){if(this.timer)clearTimeout(this.timer),this.timer=void 0;if(this._reset(),$)this.ph.disconnect()}_schedule(){this.timer=setTimeout(()=>{if(this.ph.dispatchStatus({type:"ping",pendingPings:this.pendings.length+1}),this.pendings.length===this.maxOut){this.cancel(!0);return}let $=(0,BQ4.deferred)();this.ph.flush($).then(()=>{this._reset()}).catch(()=>{this.cancel()}),this.pendings.push($),this._schedule()},this.interval)}_reset(){this.pendings=this.pendings.filter(($)=>{return $.resolve(),!1})}}r4$.Heartbeat=o4$});var ka0=v((Z6$)=>{Object.defineProperty(Z6$,"__esModule",{value:!0});Z6$.DenoBuffer=Z6$.MAX_SIZE=Z6$.AssertionError=void 0;Z6$.assert=e4$;Z6$.concat=$6$;Z6$.append=DQ4;Z6$.readAll=LQ4;Z6$.writeAll=wQ4;var OQ4=_J();class Ma0 extends Error{constructor($){super($);this.name="AssertionError"}}Z6$.AssertionError=Ma0;function e4$($,Z="Assertion failed."){if(!$)throw new Ma0(Z)}var s4$=32768;Z6$.MAX_SIZE=4294967294;function EY0($,Z,Q=0){let X=Z.byteLength-Q;if($.byteLength>X)$=$.subarray(0,X);return Z.set($,Q),$.byteLength}function $6$($,Z){if($===void 0&&Z===void 0)return new Uint8Array(0);if($===void 0)return Z;if(Z===void 0)return $;let Q=new Uint8Array($.length+Z.length);return Q.set($,0),Q.set(Z,$.length),Q}function DQ4($,Z){return $6$($,Uint8Array.of(Z))}class Va0{_buf;_off;constructor($){if(this._off=0,$==null){this._buf=new Uint8Array(0);return}this._buf=new Uint8Array($)}bytes($={copy:!0}){if($.copy===!1)return this._buf.subarray(this._off);return this._buf.slice(this._off)}empty(){return this._buf.byteLength<=this._off}get length(){return this._buf.byteLength-this._off}get capacity(){return this._buf.buffer.byteLength}truncate($){if($===0){this.reset();return}if($<0||$>this.length)throw Error("bytes.Buffer: truncation out of range");this._reslice(this._off+$)}reset(){this._reslice(0),this._off=0}_tryGrowByReslice($){let Z=this._buf.byteLength;if($<=this.capacity-Z)return this._reslice(Z+$),Z;return-1}_reslice($){e4$($<=this._buf.buffer.byteLength),this._buf=new Uint8Array(this._buf.buffer,0,$)}readByte(){let $=new Uint8Array(1);if(this.read($))return $[0];return null}read($){if(this.empty()){if(this.reset(),$.byteLength===0)return 0;return null}let Z=EY0(this._buf.subarray(this._off),$);return this._off+=Z,Z}writeByte($){return this.write(Uint8Array.of($))}writeString($){return this.write(OQ4.TE.encode($))}write($){let Z=this._grow($.byteLength);return EY0($,this._buf,Z)}_grow($){let Z=this.length;if(Z===0&&this._off!==0)this.reset();let Q=this._tryGrowByReslice($);if(Q>=0)return Q;let X=this.capacity;if($<=Math.floor(X/2)-Z)EY0(this._buf.subarray(this._off),this._buf);else if(X+$>Z6$.MAX_SIZE)throw Error("The buffer cannot be grown beyond the maximum size.");else{let Y=new Uint8Array(Math.min(2*X+$,Z6$.MAX_SIZE));EY0(this._buf.subarray(this._off),Y),this._buf=Y}return this._off=0,this._reslice(Math.min(Z+$,Z6$.MAX_SIZE)),Z}grow($){if($<0)throw Error("Buffer._grow: negative count");let Z=this._grow($);this._reslice(Z)}readFrom($){let Z=0,Q=new Uint8Array(s4$);while(!0){let X=this.capacity-this.length<s4$,Y=X?Q:new Uint8Array(this._buf.buffer,this.length),J=$.read(Y);if(J===null)return Z;if(X)this.write(Y.subarray(0,J));else this._reslice(this.length+J);Z+=J}}}Z6$.DenoBuffer=Va0;function LQ4($){let Z=new Va0;return Z.readFrom($),Z.bytes()}function wQ4($,Z){let Q=0;while(Q<Z.length)Q+=$.write(Z.subarray(Q))}});var _a0=v((G6$)=>{Object.defineProperty(G6$,"__esModule",{value:!0});G6$.cc=G6$.State=G6$.Parser=G6$.Kind=void 0;G6$.describe=RQ4;var Sa0=ka0(),Ca0=_J();G6$.Kind={OK:0,ERR:1,MSG:2,INFO:3,PING:4,PONG:5};function RQ4($){let Z,Q="";switch($.kind){case G6$.Kind.MSG:Z="MSG";break;case G6$.Kind.OK:Z="OK";break;case G6$.Kind.ERR:Z="ERR",Q=Ca0.TD.decode($.data);break;case G6$.Kind.PING:Z="PING";break;case G6$.Kind.PONG:Z="PONG";break;case G6$.Kind.INFO:Z="INFO",Q=Ca0.TD.decode($.data)}return`${Z}: ${Q}`}function X6$(){let $={};return $.sid=-1,$.hdr=-1,$.size=-1,$}var Y6$=48,qQ4=57,Dh=67108864;class J6${dispatcher;state;as;drop;hdr;ma;argBuf;msgBuf;constructor($){this.dispatcher=$,this.state=G6$.State.OP_START,this.as=0,this.drop=0,this.hdr=0}parse($){let Z;for(Z=0;Z<$.length;Z++){let Q=$[Z];switch(this.state){case G6$.State.OP_START:switch(Q){case G6$.cc.M:case G6$.cc.m:this.state=G6$.State.OP_M,this.hdr=-1,this.ma=X6$();break;case G6$.cc.H:case G6$.cc.h:this.state=G6$.State.OP_H,this.hdr=0,this.ma=X6$();break;case G6$.cc.P:case G6$.cc.p:this.state=G6$.State.OP_P;break;case G6$.cc.PLUS:this.state=G6$.State.OP_PLUS;break;case G6$.cc.MINUS:this.state=G6$.State.OP_MINUS;break;case G6$.cc.I:case G6$.cc.i:this.state=G6$.State.OP_I;break;default:throw this.fail($.subarray(Z))}break;case G6$.State.OP_H:switch(Q){case G6$.cc.M:case G6$.cc.m:this.state=G6$.State.OP_M;break;default:throw this.fail($.subarray(Z))}break;case G6$.State.OP_M:switch(Q){case G6$.cc.S:case G6$.cc.s:this.state=G6$.State.OP_MS;break;default:throw this.fail($.subarray(Z))}break;case G6$.State.OP_MS:switch(Q){case G6$.cc.G:case G6$.cc.g:this.state=G6$.State.OP_MSG;break;default:throw this.fail($.subarray(Z))}break;case G6$.State.OP_MSG:switch(Q){case G6$.cc.SPACE:case G6$.cc.TAB:this.state=G6$.State.OP_MSG_SPC;break;default:throw this.fail($.subarray(Z))}break;case G6$.State.OP_MSG_SPC:switch(Q){case G6$.cc.SPACE:case G6$.cc.TAB:continue;default:this.state=G6$.State.MSG_ARG,this.as=Z}break;case G6$.State.MSG_ARG:switch(Q){case G6$.cc.CR:this.drop=1;break;case G6$.cc.NL:{let X=this.argBuf?this.argBuf.bytes():$.subarray(this.as,Z-this.drop);this.processMsgArgs(X),this.drop=0,this.as=Z+1,this.state=G6$.State.MSG_PAYLOAD,Z=this.as+this.ma.size-1;break}default:if(this.argBuf)this.argBuf.writeByte(Q)}break;case G6$.State.MSG_PAYLOAD:if(this.msgBuf)if(this.msgBuf.length>=this.ma.size){let X=this.msgBuf.bytes({copy:!1});this.dispatcher.push({kind:G6$.Kind.MSG,msg:this.ma,data:X}),this.argBuf=void 0,this.msgBuf=void 0,this.state=G6$.State.MSG_END}else{let X=this.ma.size-this.msgBuf.length,Y=$.length-Z;if(Y<X)X=Y;if(X>0)this.msgBuf.write($.subarray(Z,Z+X)),Z=Z+X-1;else this.msgBuf.writeByte(Q)}else if(Z-this.as>=this.ma.size)this.dispatcher.push({kind:G6$.Kind.MSG,msg:this.ma,data:$.subarray(this.as,Z)}),this.argBuf=void 0,this.msgBuf=void 0,this.state=G6$.State.MSG_END;break;case G6$.State.MSG_END:switch(Q){case G6$.cc.NL:this.drop=0,this.as=Z+1,this.state=G6$.State.OP_START;break;default:continue}break;case G6$.State.OP_PLUS:switch(Q){case G6$.cc.O:case G6$.cc.o:this.state=G6$.State.OP_PLUS_O;break;default:throw this.fail($.subarray(Z))}break;case G6$.State.OP_PLUS_O:switch(Q){case G6$.cc.K:case G6$.cc.k:this.state=G6$.State.OP_PLUS_OK;break;default:throw this.fail($.subarray(Z))}break;case G6$.State.OP_PLUS_OK:switch(Q){case G6$.cc.NL:this.dispatcher.push({kind:G6$.Kind.OK}),this.drop=0,this.state=G6$.State.OP_START;break}break;case G6$.State.OP_MINUS:switch(Q){case G6$.cc.E:case G6$.cc.e:this.state=G6$.State.OP_MINUS_E;break;default:throw this.fail($.subarray(Z))}break;case G6$.State.OP_MINUS_E:switch(Q){case G6$.cc.R:case G6$.cc.r:this.state=G6$.State.OP_MINUS_ER;break;default:throw this.fail($.subarray(Z))}break;case G6$.State.OP_MINUS_ER:switch(Q){case G6$.cc.R:case G6$.cc.r:this.state=G6$.State.OP_MINUS_ERR;break;default:throw this.fail($.subarray(Z))}break;case G6$.State.OP_MINUS_ERR:switch(Q){case G6$.cc.SPACE:case G6$.cc.TAB:this.state=G6$.State.OP_MINUS_ERR_SPC;break;default:throw this.fail($.subarray(Z))}break;case G6$.State.OP_MINUS_ERR_SPC:switch(Q){case G6$.cc.SPACE:case G6$.cc.TAB:continue;default:this.state=G6$.State.MINUS_ERR_ARG,this.as=Z}break;case G6$.State.MINUS_ERR_ARG:switch(Q){case G6$.cc.CR:this.drop=1;break;case G6$.cc.NL:{let X;if(this.argBuf)X=this.argBuf.bytes(),this.argBuf=void 0;else X=$.subarray(this.as,Z-this.drop);this.dispatcher.push({kind:G6$.Kind.ERR,data:X}),this.drop=0,this.as=Z+1,this.state=G6$.State.OP_START;break}default:if(this.argBuf)this.argBuf.write(Uint8Array.of(Q))}break;case G6$.State.OP_P:switch(Q){case G6$.cc.I:case G6$.cc.i:this.state=G6$.State.OP_PI;break;case G6$.cc.O:case G6$.cc.o:this.state=G6$.State.OP_PO;break;default:throw this.fail($.subarray(Z))}break;case G6$.State.OP_PO:switch(Q){case G6$.cc.N:case G6$.cc.n:this.state=G6$.State.OP_PON;break;default:throw this.fail($.subarray(Z))}break;case G6$.State.OP_PON:switch(Q){case G6$.cc.G:case G6$.cc.g:this.state=G6$.State.OP_PONG;break;default:throw this.fail($.subarray(Z))}break;case G6$.State.OP_PONG:switch(Q){case G6$.cc.NL:this.dispatcher.push({kind:G6$.Kind.PONG}),this.drop=0,this.state=G6$.State.OP_START;break}break;case G6$.State.OP_PI:switch(Q){case G6$.cc.N:case G6$.cc.n:this.state=G6$.State.OP_PIN;break;default:throw this.fail($.subarray(Z))}break;case G6$.State.OP_PIN:switch(Q){case G6$.cc.G:case G6$.cc.g:this.state=G6$.State.OP_PING;break;default:throw this.fail($.subarray(Z))}break;case G6$.State.OP_PING:switch(Q){case G6$.cc.NL:this.dispatcher.push({kind:G6$.Kind.PING}),this.drop=0,this.state=G6$.State.OP_START;break}break;case G6$.State.OP_I:switch(Q){case G6$.cc.N:case G6$.cc.n:this.state=G6$.State.OP_IN;break;default:throw this.fail($.subarray(Z))}break;case G6$.State.OP_IN:switch(Q){case G6$.cc.F:case G6$.cc.f:this.state=G6$.State.OP_INF;break;default:throw this.fail($.subarray(Z))}break;case G6$.State.OP_INF:switch(Q){case G6$.cc.O:case G6$.cc.o:this.state=G6$.State.OP_INFO;break;default:throw this.fail($.subarray(Z))}break;case G6$.State.OP_INFO:switch(Q){case G6$.cc.SPACE:case G6$.cc.TAB:this.state=G6$.State.OP_INFO_SPC;break;default:throw this.fail($.subarray(Z))}break;case G6$.State.OP_INFO_SPC:switch(Q){case G6$.cc.SPACE:case G6$.cc.TAB:continue;default:this.state=G6$.State.INFO_ARG,this.as=Z}break;case G6$.State.INFO_ARG:switch(Q){case G6$.cc.CR:this.drop=1;break;case G6$.cc.NL:{let X;if(this.argBuf)X=this.argBuf.bytes(),this.argBuf=void 0;else X=$.subarray(this.as,Z-this.drop);this.dispatcher.push({kind:G6$.Kind.INFO,data:X}),this.drop=0,this.as=Z+1,this.state=G6$.State.OP_START;break}default:if(this.argBuf)this.argBuf.writeByte(Q)}break;default:throw this.fail($.subarray(Z))}}if((this.state===G6$.State.MSG_ARG||this.state===G6$.State.MINUS_ERR_ARG||this.state===G6$.State.INFO_ARG)&&!this.argBuf)this.argBuf=new Sa0.DenoBuffer($.subarray(this.as,Z-this.drop));if(this.state===G6$.State.MSG_PAYLOAD&&!this.msgBuf){if(!this.argBuf)this.cloneMsgArg();this.msgBuf=new Sa0.DenoBuffer($.subarray(this.as))}}cloneMsgArg(){let $=this.ma.subject.length,Z=this.ma.reply?this.ma.reply.length:0,Q=new Uint8Array($+Z);if(Q.set(this.ma.subject),this.ma.reply)Q.set(this.ma.reply,$);if(this.argBuf=new Sa0.DenoBuffer(Q),this.ma.subject=Q.subarray(0,$),this.ma.reply)this.ma.reply=Q.subarray($)}processMsgArgs($){if(this.hdr>=0)return this.processHeaderMsgArgs($);let Z=[],Q=-1;for(let X=0;X<$.length;X++)switch($[X]){case G6$.cc.SPACE:case G6$.cc.TAB:case G6$.cc.CR:case G6$.cc.NL:if(Q>=0)Z.push($.subarray(Q,X)),Q=-1;break;default:if(Q<0)Q=X}if(Q>=0)Z.push($.subarray(Q));switch(Z.length){case 3:this.ma.subject=Z[0],this.ma.sid=this.protoParseInt(Z[1]),this.ma.reply=void 0,this.ma.size=this.protoParseInt(Z[2],Dh);break;case 4:this.ma.subject=Z[0],this.ma.sid=this.protoParseInt(Z[1]),this.ma.reply=Z[2],this.ma.size=this.protoParseInt(Z[3],Dh);break;default:throw this.fail($,"processMsgArgs Parse Error")}if(this.ma.sid<0)throw this.fail($,"processMsgArgs Bad or Missing Sid Error");if(this.ma.size<0)throw this.fail($,"processMsgArgs Bad or Missing Size Error")}fail($,Z=""){if(!Z)Z=`parse error [${this.state}]`;else Z=`${Z} [${this.state}]`;return Error(`${Z}: ${Ca0.TD.decode($)}`)}processHeaderMsgArgs($){let Z=[],Q=-1;for(let X=0;X<$.length;X++)switch($[X]){case G6$.cc.SPACE:case G6$.cc.TAB:case G6$.cc.CR:case G6$.cc.NL:if(Q>=0)Z.push($.subarray(Q,X)),Q=-1;break;default:if(Q<0)Q=X}if(Q>=0)Z.push($.subarray(Q));switch(Z.length){case 4:this.ma.subject=Z[0],this.ma.sid=this.protoParseInt(Z[1]),this.ma.reply=void 0,this.ma.hdr=this.protoParseInt(Z[2],Dh),this.ma.size=this.protoParseInt(Z[3],Dh);break;case 5:this.ma.subject=Z[0],this.ma.sid=this.protoParseInt(Z[1]),this.ma.reply=Z[2],this.ma.hdr=this.protoParseInt(Z[3],Dh),this.ma.size=this.protoParseInt(Z[4],Dh);break;default:throw this.fail($,"processHeaderMsgArgs Parse Error")}if(this.ma.sid<0)throw this.fail($,"processHeaderMsgArgs Bad or Missing Sid Error");if(this.ma.hdr<0||this.ma.hdr>this.ma.size)throw this.fail($,"processHeaderMsgArgs Bad or Missing Header Size Error");if(this.ma.size<0)throw this.fail($,"processHeaderMsgArgs Bad or Missing Size Error")}protoParseInt($,Z){if($.length===0||$.length>15)return-1;let Q=0;for(let X=0;X<$.length;X++){if($[X]<Y6$||$[X]>qQ4)return-1;Q=Q*10+($[X]-Y6$)}return Z!==void 0&&Q>Z?-1:Q}}G6$.Parser=J6$;G6$.State={OP_START:0,OP_PLUS:1,OP_PLUS_O:2,OP_PLUS_OK:3,OP_MINUS:4,OP_MINUS_E:5,OP_MINUS_ER:6,OP_MINUS_ERR:7,OP_MINUS_ERR_SPC:8,MINUS_ERR_ARG:9,OP_M:10,OP_MS:11,OP_MSG:12,OP_MSG_SPC:13,MSG_ARG:14,MSG_PAYLOAD:15,MSG_END:16,OP_H:17,OP_P:18,OP_PI:19,OP_PIN:20,OP_PING:21,OP_PO:22,OP_PON:23,OP_PONG:24,OP_I:25,OP_IN:26,OP_INF:27,OP_INFO:28,OP_INFO_SPC:29,INFO_ARG:30};G6$.cc={CR:13,E:69,e:101,F:70,f:102,G:71,g:103,H:72,h:104,I:73,i:105,K:75,k:107,M:77,m:109,MINUS:45,N:78,n:110,NL:10,O:79,o:111,P:80,p:112,PLUS:43,R:82,r:114,S:83,s:115,SPACE:32,TAB:9}});var AY0=v((W6$)=>{Object.defineProperty(W6$,"__esModule",{value:!0});W6$.MsgHdrsImpl=void 0;W6$.canonicalMIMEHeaderKey=xa0;W6$.headers=VQ4;var K6$=_J(),vK=BD(),PY0=vJ();function xa0($){let F=!0,U=Array($.length);for(let N=0;N<$.length;N++){let B=$.charCodeAt(N);if(B===58||B<33||B>126)throw PY0.InvalidArgumentError.format("header",`'${$[N]}' is not a valid character in a header name`);if(F&&97<=B&&B<=122)B-=32;else if(!F&&65<=B&&B<=90)B+=32;U[N]=B,F=B==45}return String.fromCharCode(...U)}function VQ4($=0,Z=""){if($===0&&Z!=="")throw PY0.InvalidArgumentError.format("code","is required");else if($>0&&Z==="")throw PY0.InvalidArgumentError.format("description","is required");return new Lh($,Z)}var va0="NATS/1.0";class Lh{_code;headers;_description;constructor($=0,Z=""){this._code=$,this._description=Z,this.headers=new Map}[Symbol.iterator](){return this.headers.entries()}size(){return this.headers.size}equals($){if($&&this.headers.size===$.headers.size&&this._code===$._code){for(let[Z,Q]of this.headers){let X=$.values(Z);if(Q.length!==X.length)return!1;let Y=[...Q].sort(),J=[...X].sort();for(let G=0;G<Y.length;G++)if(Y[G]!==J[G])return!1}return!0}return!1}static decode($){let Z=new Lh,X=K6$.TD.decode($).split(`\r
|
|
1970
1970
|
`),Y=X[0];if(Y!==va0){let J=Y.replace(va0,"").trim();if(J.length>0){if(Z._code=parseInt(J,10),isNaN(Z._code))Z._code=0;let G=Z._code.toString();J=J.replace(G,""),Z._description=J.trim()}}if(X.length>=1)X.slice(1).map((J)=>{if(J){let G=J.indexOf(":");if(G>-1){let K=J.slice(0,G),W=J.slice(G+1).trim();Z.append(K,W)}}});return Z}toString(){if(this.headers.size===0&&this._code===0)return"";let $=va0;if(this._code>0&&this._description!=="")$+=` ${this._code} ${this._description}`;for(let[Z,Q]of this.headers)for(let X=0;X<Q.length;X++)$=`${$}\r
|
|
1971
1971
|
${Z}: ${Q[X]}`;return`${$}\r
|
|
@@ -3541,7 +3541,7 @@ you can set the \`dangerouslyAllowBrowser\` option to \`true\`, e.g.,
|
|
|
3541
3541
|
|
|
3542
3542
|
new Anthropic({ apiKey, dangerouslyAllowBrowser: true });
|
|
3543
3543
|
`);this.baseURL=J.baseURL,this._baseURLIsExplicit=Y.__baseURLIsExplicit??!!$,this.timeout=J.timeout??qF1.DEFAULT_TIMEOUT,this.logger=J.logger??console,this.logLevel=A10,this.logLevel=ZM0(J.logLevel,"ClientOptions.logLevel",r4(this))??ZM0(F4("ANTHROPIC_LOG"),"process.env['ANTHROPIC_LOG']",r4(this))??A10,this.fetchOptions=J.fetchOptions,this.maxRetries=J.maxRetries??2,this.fetch=J.fetch??Mp$(),e0(this,uM0,kp$,"f"),this.middleware=[...J.middleware??[]];let G=F4("ANTHROPIC_CUSTOM_HEADERS");if(G){let W={};for(let H of G.split(`
|
|
3544
|
-
`)){let F=H.indexOf(":");if(F>=0)W[H.substring(0,F).trim()]=H.substring(F+1).trim()}J.defaultHeaders={...W,...J.defaultHeaders}}let K=Y.__auth;if(delete J.__auth,delete J.__baseURLIsExplicit,this._options=J,this.apiKey=typeof Z==="string"?Z:null,this.authToken=Q,this.webhookKey=X,K){if(this._authState=K,!this._baseURLIsExplicit&&K.baseURL)this.baseURL=K.baseURL}else if(this._authState={provider:null,tokenCache:null,resolution:null,error:null,extraHeaders:{}},this.apiKey==null&&this.authToken==null){let W=J.credentials??null;if(W)this._authState.provider=W,this._authState.tokenCache=this._makeTokenCache(W);else if(J.config!=null){let H=oW1(J.config,this._credentialResolverOptions());this._authState.provider=H.provider,this._authState.tokenCache=this._makeTokenCache(H.provider),this._authState.extraHeaders=H.extraHeaders,this._applyCredentialBaseURL(H.baseURL)}else if(J.profile!=null)this._authState.resolution=this._resolveDefaultCredentials(J.profile);else this._authState.resolution=this._resolveDefaultCredentials()}}_applyCredentialBaseURL($){if(!$)return;let Z=$.replace(/\/+$/,"");if(this._authState.baseURL=Z,!this._baseURLIsExplicit)this.baseURL=Z}_credentialResolverOptions(){return{baseURL:this.baseURL,fetch:this._credentialsFetch(),userAgent:this.getUserAgent(),onCacheWriteError:($)=>{r4(this).debug("credential cache write failed (best-effort)",$)},onSafetyWarning:($)=>{r4(this).warn($)}}}_credentialsFetch(){return sW1(this.fetch,this.middleware,void 0,this)}_makeTokenCache($){return new lW1($,(Z)=>{r4(this).debug("advisory token refresh failed; serving cached token",Z)})}withOptions($){let Z="credentials"in $||"config"in $||"profile"in $,Q="apiKey"in $||"authToken"in $||Z,X={...this._options,...this._baseURLIsExplicit?{baseURL:this.baseURL}:{},maxRetries:this.maxRetries,timeout:this.timeout,logger:this.logger,logLevel:this.logLevel,fetch:this.fetch,fetchOptions:this.fetchOptions,middleware:this.middleware,apiKey:this.apiKey,authToken:this.authToken,webhookKey:this.webhookKey,credentials:this.credentials,...Z?{credentials:void 0,config:void 0,profile:void 0}:{},...$,__auth:Q?void 0:this._authState,__baseURLIsExplicit:"baseURL"in $?!0:this._baseURLIsExplicit};return new this.constructor(X)}async _resolveDefaultCredentials($){try{let Z=await Un$(this._credentialResolverOptions(),$);if(Z)this._authState.provider=Z.provider,this._authState.tokenCache=this._makeTokenCache(Z.provider),this._authState.extraHeaders=Z.extraHeaders,this._applyCredentialBaseURL(Z.baseURL);else if($!=null)throw new N1(`Profile "${$}" could not be resolved (no <config_dir>/configs/${$}.json found).`)}catch(Z){this._authState.error=Z}finally{this._authState.resolution=null}}defaultQuery(){return this._options.defaultQuery}validateHeaders({values:$,nulls:Z}){if($.get("x-api-key")||$.get("authorization"))return;if(this._authState.error)throw this._authState.error;if(this._authState.tokenCache||this._authState.resolution)return;if(this.apiKey&&$.get("x-api-key"))return;if(Z.has("x-api-key"))return;if(this.authToken&&$.get("authorization"))return;if(Z.has("authorization"))return;throw Error('Could not resolve authentication method. Expected one of apiKey, authToken, credentials, config, or profile to be set. Or for one of the "X-Api-Key" or "Authorization" headers to be explicitly omitted')}_authFlags($){let Z=this._requestAuthFlags.get($);if(!Z)Z={usedTokenCache:!1,didRefreshFor401:!1},this._requestAuthFlags.set($,Z);return Z}async authHeaders($){if(this._authState.resolution)await this._authState.resolution;if(this._authState.error)return;if(this._authState.tokenCache&&this.apiKey==null){let Z=await this._authState.tokenCache.getToken();return this._authFlags($).usedTokenCache=!0,v0([{Authorization:`Bearer ${Z}`}])}return v0([await this.apiKeyAuth($),await this.bearerAuth($)])}async apiKeyAuth($){if(this.apiKey==null)return;return v0([{"X-Api-Key":this.apiKey}])}async bearerAuth($){if(this.authToken==null)return;return v0([{Authorization:`Bearer ${this.authToken}`}])}stringifyQuery($){return up$($)}getUserAgent(){return`${this.constructor.name}/JS ${sG}`}defaultIdempotencyKey(){return`stainless-node-retry-${Cm()}`}makeStatusError($,Z,Q,X){return x9.generate($,Z,Q,X)}buildURL($,Z,Q){let X=!c(this,RF1,"m",dt$).call(this)&&Q||this.baseURL,Y=zp$($)?new URL($):new URL(X+(X.endsWith("/")&&$.startsWith("/")?$.slice(1):$)),J=this.defaultQuery(),G=Object.fromEntries(Y.searchParams);if(!SW1(J)||!SW1(G))Z={...G,...J,...Z};if(typeof Z==="object"&&Z&&!Array.isArray(Z))Y.search=this.stringifyQuery(Z);return Y.toString()}_calculateNonstreamingTimeout($){if(3600*$/128000>600)throw new N1("Streaming is required for operations that may take longer than 10 minutes. See https://github.com/anthropics/anthropic-sdk-typescript#streaming-responses for more details");return 600000}async prepareOptions($){}async prepareRequest($,{url:Z,options:Q}){if(this._authState.tokenCache&&this.apiKey==null){let X=$.headers instanceof Headers?$.headers:new Headers($.headers);for(let[J,G]of Object.entries(this._authState.extraHeaders))if(!X.has(J))X.set(J,G);if(!X.get("anthropic-beta")?.split(",").map((J)=>J.trim())?.includes(rf))X.append("anthropic-beta",rf);$.headers=X}}backendMiddleware(){return[]}get($,Z){return this.methodRequest("get",$,Z)}post($,Z){return this.methodRequest("post",$,Z)}patch($,Z){return this.methodRequest("patch",$,Z)}put($,Z){return this.methodRequest("put",$,Z)}delete($,Z){return this.methodRequest("delete",$,Z)}methodRequest($,Z,Q){return this.request(Promise.resolve(Q).then((X)=>{return{method:$,path:Z,...X}}))}request($,Z=null){return new af(this,this.makeRequest($,Z,void 0))}async makeRequest($,Z,Q){let X=await $,Y=X.maxRetries??this.maxRetries;if(Z==null)Z=Y,this._requestAuthFlags.delete(X);await this.prepareOptions(X);let{req:J,url:G,timeout:K}=await this.buildRequest(X,{retryCount:Y-Z}),W="log_"+(Math.random()*16777216|0).toString(16).padStart(6,"0"),H=Q===void 0?"":`, retryOf: ${Q}`,F=Date.now();if(X.signal?.aborted)throw new ZX;let U=new AbortController,N=await this.fetchWithTimeout(G,J,K,U,X,{requestLogID:W,retryOfRequestLogID:Q}).catch(of),B=Date.now();if(N instanceof globalThis.Error){let w=`retrying, ${Z} attempts remaining`;if(X.signal?.aborted)throw new ZX;let j=aG(N)||/timed? ?out/i.test(String(N)+("cause"in N?String(N.cause):"")),E=this.middleware.length>0||!!X.middleware?.length||this.backendMiddleware().length>0;if(E&&!j&&!jn$(N))throw r4(this).info(`[${W}] middleware error (not retryable)`),r4(this).debug(`[${W}] middleware error (not retryable)`,sF({retryOfRequestLogID:Q,url:G,durationMs:B-F,message:N.message})),N;if(Z)return r4(this).info(`[${W}] connection ${j?"timed out":"failed"} - ${w}`),r4(this).debug(`[${W}] connection ${j?"timed out":"failed"} (${w})`,sF({retryOfRequestLogID:Q,url:G,durationMs:B-F,message:N.message})),this.retryRequest(X,Z,Q??W);if(r4(this).info(`[${W}] connection ${j?"timed out":"failed"} - error; no more retries left`),r4(this).debug(`[${W}] connection ${j?"timed out":"failed"} (error; no more retries left)`,sF({retryOfRequestLogID:Q,url:G,durationMs:B-F,message:N.message})),j)throw new H10;if(E&&!aW1(N))throw N;throw new kB({cause:N})}let O=[...N.headers.entries()].filter(([w])=>w==="request-id").map(([w,j])=>", "+w+": "+JSON.stringify(j)).join(""),L=`[${W}${H}${O}] ${J.method} ${G} ${N.ok?"succeeded":"failed"} with status ${N.status} in ${B-F}ms`;if(!N.ok){let w=await this.shouldRetry(N,X);if(Z&&w){let q=`retrying, ${Z} attempts remaining`;return await Vp$(N.body),r4(this).info(`${L} - ${q}`),r4(this).debug(`[${W}] response error (${q})`,sF({retryOfRequestLogID:Q,url:N.url,status:N.status,headers:N.headers,durationMs:B-F})),this.retryRequest(X,Z,Q??W,N.headers)}let j=w?"error; no more retries left":"error; not retryable";r4(this).info(`${L} - ${j}`);let E=await N.text().catch((q)=>of(q).message),z=j10(E),P=z?void 0:E;throw r4(this).debug(`[${W}] response error (${j})`,sF({retryOfRequestLogID:Q,url:N.url,status:N.status,headers:N.headers,message:P,durationMs:Date.now()-F})),this.makeStatusError(N.status,z,P,N.headers)}return r4(this).info(L),r4(this).debug(`[${W}] response start`,sF({retryOfRequestLogID:Q,url:N.url,status:N.status,headers:N.headers,durationMs:B-F})),{response:N,options:X,controller:U,requestLogID:W,retryOfRequestLogID:Q,startTime:F}}getAPIList($,Z,Q){return this.requestAPIList(Z,Q&&"then"in Q?Q.then((X)=>({method:"get",path:$,...X})):{method:"get",path:$,...Q})}requestAPIList($,Z){let Q=this.makeRequest(Z,null,void 0);return new KM0(this,Q,$)}async fetchWithTimeout($,Z,Q,X,Y,J){let{signal:G,method:K,...W}=Z||{},H=this._makeAbort(X);if(G)G.addEventListener("abort",H,{once:!0});let F=globalThis.ReadableStream&&W.body instanceof globalThis.ReadableStream||typeof W.body==="object"&&W.body!==null&&Symbol.asyncIterator in W.body,U={signal:X.signal,...F?{duplex:"half"}:{},method:"GET",...W};if(K)U.method=K.toUpperCase();let N=this.fetch,B=async(E,z)=>{let P=setTimeout(H,Q);try{return await N.call(void 0,E,z)}finally{clearTimeout(P)}},O=Y===void 0?B:async(E,z={})=>{let P=typeof E==="string"?E:E instanceof URL?E.href:E.url;if(z.headers=z.headers instanceof Headers?z.headers:new Headers(z.headers),await this.prepareRequest(z,{url:P,options:Y}),J)r4(this).debug(`[${J.requestLogID}] sending request`,sF({retryOfRequestLogID:J.retryOfRequestLogID,method:z.method,url:P,options:Y,headers:z.headers}));return B(E,z)},L=Y?.middleware,w=this.backendMiddleware(),j=L?.length||w.length?[...this.middleware,...L??[],...w]:this.middleware;return await sW1(O,j,Y,this)($,U)}async shouldRetry($,Z){let Q=this._authFlags(Z);if($.status===401&&this._authState.tokenCache&&Q.usedTokenCache&&!Q.didRefreshFor401)return Q.didRefreshFor401=!0,this._authState.tokenCache.invalidate(),!0;let X=$.headers.get("x-should-retry");if(X==="true")return!0;if(X==="false")return!1;if($.status===408)return!0;if($.status===409)return!0;if($.status===429)return!0;if($.status>=500)return!0;return!1}async retryRequest($,Z,Q,X){let Y,J=X?.get("retry-after-ms");if(J){let K=parseFloat(J);if(!Number.isNaN(K))Y=K}let G=X?.get("retry-after");if(G&&!Y){let K=parseFloat(G);if(!Number.isNaN(K))Y=K*1000;else Y=Date.parse(G)-Date.now()}if(Y===void 0){let K=$.maxRetries??this.maxRetries;Y=this.calculateDefaultRetryTimeoutMillis(Z,K)}return await lW(Y),this.makeRequest($,Z-1,Q)}calculateDefaultRetryTimeoutMillis($,Z){let Y=Z-$,J=Math.min(0.5*Math.pow(2,Y),8),G=1-Math.random()*0.25;return J*G*1000}calculateNonstreamingTimeout($,Z){if(3600000*$/128000>600000||Z!=null&&$>Z)throw new N1("Streaming is required for operations that may take longer than 10 minutes. See https://github.com/anthropics/anthropic-sdk-typescript#long-requests for more details");return 600000}async buildRequest($,{retryCount:Z=0}={}){let Q={...$},{method:X,path:Y,query:J,defaultBaseURL:G}=Q;if(this._authState.resolution)await this._authState.resolution;if(!this._baseURLIsExplicit&&this._authState.baseURL&&this.baseURL!==this._authState.baseURL)this.baseURL=this._authState.baseURL;let K=this.buildURL(Y,J,G);if("timeout"in Q)Ap$("timeout",Q.timeout);Q.timeout=Q.timeout??this.timeout;let{bodyHeaders:W,body:H}=this.buildBody({options:Q}),F=await this.buildHeaders({options:$,method:X,bodyHeaders:W,retryCount:Z});return{req:{method:X,headers:F,...Q.signal&&{signal:Q.signal},...globalThis.ReadableStream&&H instanceof globalThis.ReadableStream&&{duplex:"half"},...H&&{body:H},...this.fetchOptions??{},...Q.fetchOptions??{}},url:K,timeout:Q.timeout}}async buildHeaders({options:$,method:Z,bodyHeaders:Q,retryCount:X}){let Y={};if(this.idempotencyHeader&&Z!=="get"){if(!$.idempotencyKey)$.idempotencyKey=this.defaultIdempotencyKey();Y[this.idempotencyHeader]=$.idempotencyKey}let J=v0([Y,{Accept:"application/json","User-Agent":this.getUserAgent(),"X-Stainless-Retry-Count":String(X),...$.timeout?{"X-Stainless-Timeout":String(Math.trunc($.timeout/1000))}:{},...E10(),...this._options.dangerouslyAllowBrowser?{"anthropic-dangerous-direct-browser-access":"true"}:void 0,"anthropic-version":"2023-06-01"},await this.authHeaders($),this._options.defaultHeaders,Q,$.headers]);return this.validateHeaders(J),J.values}_makeAbort($){return()=>$.abort()}buildBody({options:{body:$,headers:Z}}){if(!$)return{bodyHeaders:void 0,body:void 0};let Q=v0([Z]);if(ArrayBuffer.isView($)||$ instanceof ArrayBuffer||$ instanceof DataView||typeof $==="string"&&Q.values.has("content-type")||globalThis.Blob&&$ instanceof globalThis.Blob||$ instanceof FormData||$ instanceof URLSearchParams||globalThis.ReadableStream&&$ instanceof globalThis.ReadableStream)return{bodyHeaders:void 0,body:$};else if(typeof $==="object"&&((Symbol.asyncIterator in $)||(Symbol.iterator in $)&&("next"in $)&&typeof $.next==="function"))return{bodyHeaders:void 0,body:pI0($)};else if(typeof $==="object"&&Q.values.get("content-type")==="application/x-www-form-urlencoded")return{bodyHeaders:{"content-type":"application/x-www-form-urlencoded"},body:this.stringifyQuery($)};else return c(this,uM0,"f").call(this,{body:$,headers:Q})}}var RF1,qF1,uM0,dt$,it$="\\n\\nHuman:",pt$="\\n\\nAssistant:",_B;var IF1=D(()=>{YJ();uW();iI0();hW1();c5();vm();np$();Nn$();En$();B5();YH1();mt$();JM0();UF1();TF1();FF1();AF1();iI0();a4();eF();uW();qF1=f9,uM0=new WeakMap,RF1=new WeakSet,dt$=function(){return this.baseURL!=="https://api.anthropic.com"};f9.Anthropic=qF1;f9.HUMAN_PROMPT=it$;f9.AI_PROMPT=pt$;f9.DEFAULT_TIMEOUT=600000;f9.AnthropicError=N1;f9.APIError=x9;f9.APIConnectionError=kB;f9.APIConnectionTimeoutError=H10;f9.APIUserAbortError=ZX;f9.NotFoundError=B10;f9.ConflictError=O10;f9.RateLimitError=L10;f9.BadRequestError=F10;f9.AuthenticationError=U10;f9.InternalServerError=w10;f9.PermissionDeniedError=N10;f9.UnprocessableEntityError=D10;f9.toFile=WM0;_B=class _B extends f9{constructor(){super(...arguments);this.completions=new Qd(this),this.messages=new Ub(this),this.models=new Yd(this),this.beta=new dZ(this)}};_B.Completions=Qd;_B.Messages=Ub;_B.Models=Yd;_B.Beta=dZ});var nt$=D(()=>{c5();R10();uW()});var AH1=D(()=>{IF1();YH1();JM0();nt$();IF1();B5();c5()});var tt$;var ot$=D(()=>{YG1();AH1();tt$={info:{id:"anthropic",name:"Anthropic",description:"Anthropic's Claude family of models",logo:"https://assets.decocache.com/decocms/51a209ae-14bc-4b6f-8216-8eb670695bd7/Anthropic-Icon--Streamline-Svg-Logos.svg"},supportedMethods:["api-key"],create($){let Z=h00({apiKey:$}),Q=new _B({apiKey:$});return{info:this.info,aiSdk:Z,async listModels(){return(await Q.models.list()).data.map((Y)=>({modelId:Y.id,providerId:"anthropic",title:Y.display_name,description:null,logo:null,capabilities:[],limits:null,costs:null}))},async countTokens({messages:X,modelId:Y}){return{count:(await Q.messages.countTokens({messages:X,model:Y})).input_tokens}}}}}});var rt$=D(()=>{qG1()});var at$=D(()=>{rt$()});function EF6($){let Z=$.name.replace("models/","");if(/^imagen-/.test(Z)||/-image/.test(Z)){let Q=["image"];if($.supportedGenerationMethods.includes("generateContent"))Q.push("text");return Q}return[]}var st$;var et$=D(()=>{NG1();at$();st$={info:{id:"google",name:"Google Gemini",description:"Google's Gemini family of models",logo:"https://assets.decocache.com/decocms/29370b4b-c623-487b-a6c4-a1637a2c0401/Google__G__logo.svg"},supportedMethods:["api-key"],create($){let Z=c00({apiKey:$});return{info:this.info,aiSdk:Z,asyncResearch:{canHandle:(Q)=>i00(Q),start:async({modelId:Q,query:X,abortSignal:Y})=>{let{interactionId:J}=await pq0({apiKey:$,agent:Q,query:X,abortSignal:Y});return{jobId:J}},resume:({jobId:Q,abortSignal:X,onProgress:Y,pollIntervalMs:J})=>nq0({apiKey:$,interactionId:Q,abortSignal:X,onProgress:Y,pollIntervalMs:J})},async listModels(){let Q=await fetch("https://generativelanguage.googleapis.com/v1beta/models",{headers:{"x-goog-api-key":$}});if(!Q.ok)throw Error(`Google listModels failed: ${Q.status}`);return(await Q.json()).models.filter((Y)=>Y.lifecycleState!=="DEPRECATED").map((Y)=>{let J=Y.name.replace("models/","");return{modelId:J,providerId:"google",title:Y.displayName,description:Y.description,logo:null,capabilities:EF6(Y),limits:{contextWindow:Y.inputTokenLimit,maxOutputTokens:Y.outputTokenLimit},costs:null,...i00(J)&&{asyncResearch:!0}}})}}}}});var $o$="https://api.llmapi.ai/v1",zF6="https://llmapi.ai/wp-content/uploads/2026/01/Frame-2085662993.png",Zo$;var Qo$=D(()=>{iq0();Zo$={info:{id:"llmapi",name:"LLMAPI",description:"One API key, 400+ models across every provider",logo:zF6},supportedMethods:["api-key"],create($){let Z=hf({apiKey:$||"not-needed",baseURL:$o$,name:"llmapi"}),Q=Object.assign((...X)=>Z.chat(...X),Z,{languageModel:Z.chat});return{info:this.info,aiSdk:Q,async listModels(){let X=await fetch(`${$o$}/models`,{headers:$?{Authorization:`Bearer ${$}`}:{},signal:AbortSignal.timeout(15000)});if(!X.ok)throw Error(`LLMAPI listModels failed: ${X.status}`);let{data:Y}=await X.json();return Y.map((J)=>{let G=J.architecture??{},K=!!J.reasoning_levels?.length||!!J.providers?.some((W)=>W.reasoning);return{providerId:"llmapi",modelId:J.id,title:J.name||J.id,description:J.description??null,logo:null,capabilities:[...new Set([...(G.input_modalities??[]).map((W)=>W==="image"?"vision":W),...G.output_modalities??[],...J.supported_parameters?.includes("tools")?["tools"]:[],...K?["reasoning"]:[]])],limits:{contextWindow:J.context_length??0,maxOutputTokens:null},costs:{input:Number(J.pricing?.prompt)||0,output:Number(J.pricing?.completion)||0}}})}}}}});function PF6($){let Z=JSON.parse($);if(!Z.baseUrl||typeof Z.baseUrl!=="string")throw Error("Invalid OpenAI-compatible credential: missing baseUrl field");let Q=Z.baseUrl.replace(/\/+$/,"");if(!Q.endsWith("/v1"))Q+="/v1";return{baseUrl:Q,apiKey:Z.apiKey??""}}var AF6="https://assets.decocache.com/decocms/d138aa7e-5b8c-4821-9e64-6aff40df2cdc/ChatGPT_logo.svg",Xo$;var Yo$=D(()=>{iq0();Xo$={info:{id:"openai-compatible",name:"OpenAI Compatible",description:"Custom OpenAI-compatible endpoint",logo:AF6},supportedMethods:["api-key"],create($){let{baseUrl:Z,apiKey:Q}=PF6($),X=hf({baseURL:Z,apiKey:Q||"not-needed",name:"openai-compatible"}),Y=Object.assign((...J)=>X.chat(...J),X,{languageModel:X.chat});return{info:this.info,aiSdk:Y,async listModels(){let J={};if(Q)J.Authorization=`Bearer ${Q}`;let G=await fetch(`${Z}/models`,{headers:J,signal:AbortSignal.timeout(15000)});if(!G.ok)throw Error(`OpenAI-compatible listModels failed: ${G.status}`);return(await G.json()).data.map((W)=>({providerId:"openai-compatible",modelId:W.id,title:W.id,description:W.owned_by?`Owned by ${W.owned_by}`:null,logo:null,capabilities:[],limits:null,costs:null}))}}}}});function XQ(){return{...k0().aiGatewayEnabled&&{deco:kL},anthropic:tt$,google:st$,openrouter:DW0,llmapi:Zo$,"openai-compatible":Xo$}}var vB=D(()=>{ot$();et$();Qo$();Yo$();x61();LW0();A$()});import V3 from"zod";var MF1;var Jo$=D(()=>{M0();vB();MF1=h({name:"AI_PROVIDERS_LIST",description:"List all supported AI providers and their connection methods (API key, OAuth).",annotations:{readOnlyHint:!0,idempotentHint:!0},inputSchema:V3.object({}),outputSchema:V3.object({providers:V3.array(V3.object({id:V3.string(),name:V3.string(),description:V3.string(),logo:V3.string().optional(),supportedMethods:V3.array(V3.enum(["api-key","oauth-pkce"])),supportsTopUp:V3.boolean().optional(),supportsCredits:V3.boolean().optional(),supportsProvision:V3.boolean().optional()}))}),handler:async($,Z)=>{return o(Z),t(Z),await Z.access.check(),{providers:Object.values(XQ()).filter((X)=>!!X).map((X)=>({...X.info,supportedMethods:X.supportedMethods,supportsTopUp:!!X.getTopUpUrl,supportsCredits:!!X.getCreditsBalance,supportsProvision:!!X.provisionKey}))}}})});import iZ from"zod";var VF1;var Go$=D(()=>{M0();Em();VF1=h({name:"AI_PROVIDERS_LIST_MODELS",description:"List models available from an AI provider. Requires a valid stored API key.",annotations:{readOnlyHint:!0,idempotentHint:!0},inputSchema:iZ.object({keyId:iZ.string().describe("The provider key ID to use")}),outputSchema:iZ.object({models:iZ.array(iZ.object({providerId:iZ.string(),modelId:iZ.string(),title:iZ.string(),description:iZ.string().nullish(),logo:iZ.string().nullish(),capabilities:iZ.array(iZ.string()),limits:iZ.object({contextWindow:iZ.coerce.number(),maxOutputTokens:iZ.coerce.number().nullable()}).nullish(),costs:iZ.object({input:iZ.coerce.number(),output:iZ.coerce.number()}).nullish(),asyncResearch:iZ.boolean().optional()}))}),handler:async($,Z)=>{o(Z);let Q=t(Z);await Z.access.check();let[X,Y]=await Promise.all([Z.aiProviders.listModels($.keyId,Q.id),hW(Z.db,Q.id,Q.role??Z.auth.user?.role)]);return{models:X.filter((G)=>gW(Y,$.keyId,G.modelId))}}})});import xB from"zod";var kF1;var Ko$=D(()=>{M0();vB();kF1=h({name:"AI_PROVIDERS_ACTIVE",description:"List AI providers that have at least one API key configured and ready to use.",inputSchema:xB.object({}),outputSchema:xB.object({providers:xB.array(xB.object({id:xB.string(),name:xB.string(),description:xB.string(),logo:xB.string().optional(),keyCount:xB.number()}))}),handler:async($,Z)=>{o(Z);let Q=t(Z);await Z.access.check();let X=await Z.storage.aiProviderKeys.list({organizationId:Q.id}),Y=new Map;for(let G of X)Y.set(G.providerId,(Y.get(G.providerId)??0)+1);return{providers:[...Y.entries()].flatMap(([G,K])=>{let H=XQ()[G];if(!H)return console.warn(`AI provider "${G}" has stored keys but is not in the registry; skipping.`),[];return[{...H.info,keyCount:K}]})}}})});var fB=D(()=>{f8()});import dW from"zod";var Nb,SF1;var T$0=D(()=>{v4();M0();fB();Nb=dW.object({id:dW.string(),providerId:dW.string(),label:dW.string(),presetId:dW.string().nullable(),createdAt:dW.string()}),SF1=h({name:"AI_PROVIDER_KEY_CREATE",description:"Store an API key for an AI provider. The key is encrypted at rest in the vault.",inputSchema:dW.object({providerId:dW.enum(MQ),label:dW.string().min(1).max(100),apiKey:dW.string().min(1),presetId:dW.string().min(1).max(64).optional()}),outputSchema:Nb,handler:async($,Z)=>{o(Z);let Q=t(Z);await Z.access.check();let X=await Z.storage.aiProviderKeys.create({providerId:$.providerId,label:$.label,apiKey:$.apiKey,organizationId:Q.id,createdBy:Z.auth.user.id,presetId:$.presetId??null});return k1.capture({distinctId:Z.auth.user.id,event:"ai_provider_key_created",groups:{organization:Q.id},properties:{organization_id:Q.id,provider_id:X.providerId,preset_id:X.presetId,key_id:X.id,label:X.label}}),{id:X.id,providerId:X.providerId,label:X.label,presetId:X.presetId,createdAt:X.createdAt}}})});import lM0 from"zod";var Jd=($,Z)=>$&&$.keyId===Z?null:$,TF6=($,Z)=>{let Q={tiers:{fast:Jd($.tiers.fast,Z),smart:Jd($.tiers.smart,Z),thinking:Jd($.tiers.thinking,Z),image:Jd($.tiers.image,Z),web_search:Jd($.tiers.web_search,Z),deep_research:Jd($.tiers.deep_research,Z)}},X=Q.tiers.fast!==$.tiers.fast||Q.tiers.smart!==$.tiers.smart||Q.tiers.thinking!==$.tiers.thinking||Q.tiers.image!==$.tiers.image||Q.tiers.web_search!==$.tiers.web_search||Q.tiers.deep_research!==$.tiers.deep_research;return{config:Q,changed:X}},CF1;var Wo$=D(()=>{v4();M0();CF1=h({name:"AI_PROVIDER_KEY_DELETE",description:"Delete a stored AI provider API key. Cannot be undone.",inputSchema:lM0.object({keyId:lM0.string().describe("The provider key ID to delete")}),outputSchema:lM0.object({success:lM0.boolean()}),handler:async($,Z)=>{o(Z);let Q=t(Z);await Z.access.check();let X=await Z.storage.organizationSettings.get(Q.id);if(X?.simple_mode){let{config:Y,changed:J}=TF6(X.simple_mode,$.keyId);if(J)await Z.storage.organizationSettings.upsert(Q.id,{simple_mode:Y})}return await Z.storage.aiProviderKeys.delete($.keyId,Q.id),k1.capture({distinctId:Z.auth.user.id,event:"ai_provider_key_deleted",groups:{organization:Q.id},properties:{organization_id:Q.id,key_id:$.keyId}}),{success:!0}}})});import cM0 from"zod";var _F1;var Ho$=D(()=>{M0();T$0();_F1=h({name:"AI_PROVIDER_KEY_UPDATE",description:"Update the label and/or API key of a stored AI provider key. Pass apiKey to rotate the stored credential.",inputSchema:cM0.object({keyId:cM0.string(),label:cM0.string().min(1).max(100).optional(),apiKey:cM0.string().min(1).optional()}),outputSchema:Nb,handler:async($,Z)=>{o(Z);let Q=t(Z);await Z.access.check();let X=await Z.storage.aiProviderKeys.updateKey($.keyId,Q.id,{label:$.label,apiKey:$.apiKey});return{id:X.id,providerId:X.providerId,label:X.label,presetId:X.presetId,createdAt:X.createdAt}}})});import Gd from"zod";var vF1;var Fo$=D(()=>{M0();vF1=h({name:"AI_PROVIDER_KEY_PREVIEW",description:"Get the label and a masked preview of a stored AI provider API key. The API key is partially obscured (only the last 4 characters are visible). For openai-compatible keys the baseUrl is also returned.",inputSchema:Gd.object({keyId:Gd.string()}),outputSchema:Gd.object({label:Gd.string(),maskedKey:Gd.string(),baseUrl:Gd.string().optional()}),handler:async($,Z)=>{o(Z);let Q=t(Z);return await Z.access.check(),Z.storage.aiProviderKeys.getPreview($.keyId,Q.id)}})});import iW from"zod";var xF1;var Uo$=D(()=>{M0();fB();Em();xF1=h({name:"AI_PROVIDER_KEY_LIST",description:"List stored AI provider API keys. Returns metadata only \u2014 secrets are never exposed.",annotations:{readOnlyHint:!0,idempotentHint:!0},inputSchema:iW.object({providerId:iW.enum(TJ0).optional()}),outputSchema:iW.object({keys:iW.array(iW.object({id:iW.string(),providerId:iW.string(),label:iW.string(),presetId:iW.string().nullable(),createdBy:iW.string(),createdAt:iW.string()}))}),handler:async($,Z)=>{o(Z);let Q=t(Z);await Z.access.check();let[X,Y]=await Promise.all([Z.storage.aiProviderKeys.list({organizationId:Q.id,providerId:$.providerId}),hW(Z.db,Q.id,Q.role??Z.auth.user?.role)]);return{keys:X.filter((K)=>im$(Y,K.id)).map(({organizationId:K,...W})=>W)}}})});import{createHash as RF6,randomBytes as qF6}from"crypto";function No$(){return qF6(32).toString("base64url")}function Bo$($){return RF6("sha256").update($).digest("base64url")}var Oo$=()=>{};import Kd from"zod";function Do$($){return $==="localhost"||$.endsWith(".localhost")||$==="127.0.0.1"||$==="[::1]"||$==="::1"}function IF6($){let Z=k0(),Q=Z.baseUrl??`http://localhost:${Z.port}`,X=new URL($),Y=new URL(Q);if(X.origin===Y.origin)return!0;return X.protocol===Y.protocol&&Do$(X.hostname)&&Do$(Y.hostname)}var fF1;var Lo$=D(()=>{M0();fB();vB();Oo$();A$();fF1=h({name:"AI_PROVIDER_OAUTH_URL",description:"Get the OAuth PKCE authorization URL for a provider. Returns URL and state token.",inputSchema:Kd.object({providerId:Kd.enum(MQ),callbackUrl:Kd.string().url().refine(($)=>{return IF6($)},{message:"callbackUrl must be on the same origin as BASE_URL"})}),outputSchema:Kd.object({url:Kd.string(),stateToken:Kd.string().describe("Opaque token \u2014 pass to AI_PROVIDER_OAUTH_EXCHANGE")}),handler:async($,Z)=>{o(Z);let Q=t(Z);await Z.access.check();let X=XQ()[$.providerId];if(!X)throw Error(`Unknown provider: ${$.providerId}`);if(!X.supportedMethods.includes("oauth-pkce")||!X.getOAuthUrl)throw Error(`Provider ${$.providerId} does not support OAuth PKCE`);let Y=No$(),J=Bo$(Y),G=await Z.storage.oauthPkceStates.create(Y,Q.id,Z.auth.user.id),K=new URL($.callbackUrl);K.searchParams.set("state",G);let W={callbackUrl:K.toString(),codeChallenge:J,codeChallengeMethod:"S256",organizationId:Q.id};return{url:X.getOAuthUrl(W),stateToken:G}}})});import R$0 from"zod";var bF1;var wo$=D(()=>{M0();fB();vB();T$0();bF1=h({name:"AI_PROVIDER_OAUTH_EXCHANGE",description:"Exchange an OAuth authorization code for an API key. Completes the OAuth flow started by AI_PROVIDER_OAUTH_URL.",inputSchema:R$0.object({providerId:R$0.enum(MQ),code:R$0.string(),stateToken:R$0.string().describe("The stateToken returned by AI_PROVIDER_OAUTH_URL"),label:R$0.string().min(1).max(100)}),outputSchema:Nb,handler:async($,Z)=>{o(Z);let Q=t(Z);await Z.access.check();let X=XQ()[$.providerId];if(!X)throw Error(`Unknown provider: ${$.providerId}`);if(!X.supportedMethods.includes("oauth-pkce")||!X.exchangeOAuthCode)throw Error(`Provider ${$.providerId} does not support OAuth PKCE`);let Y=o0(Z);if(!Y)throw Error("Unable to determine user ID");let J=await Z.storage.oauthPkceStates.consume($.stateToken,Q.id,Y),{apiKey:G}=await X.exchangeOAuthCode({code:$.code,codeVerifier:J,codeChallengeMethod:"S256"}),K=await Z.storage.aiProviderKeys.upsert({providerId:$.providerId,label:$.label,apiKey:G,organizationId:Q.id,createdBy:Y});return{id:K.id,providerId:K.providerId,label:K.label,presetId:K.presetId,createdAt:K.createdAt}}})});import jo$ from"zod";var yF1;var Eo$=D(()=>{M0();fB();vB();zD();T$0();yF1=h({name:"AI_PROVIDER_PROVISION_KEY",description:"Auto-provision an API key for a provider that supports server-to-server key creation (e.g. Deco AI Gateway).",inputSchema:jo$.object({providerId:jo$.enum(MQ)}),outputSchema:Nb,handler:async($,Z)=>{o(Z);let Q=t(Z);await Z.access.check();let X=o0(Z);if(!X)throw Error("Unable to determine user ID");let Y=XQ()[$.providerId];if(!Y)throw Error(`Unknown provider: ${$.providerId}`);if(!Y.provisionKey)throw Error(`Provider ${$.providerId} does not support key provisioning`);let J=await SH(X),G=await Y.provisionKey(J,Q.id),K=await Z.storage.aiProviderKeys.upsert({providerId:$.providerId,label:"Auto-provisioned",apiKey:G,organizationId:Q.id,createdBy:X});return{id:K.id,providerId:K.providerId,label:K.label,presetId:K.presetId,createdAt:K.createdAt}}})});function gF1(){let $=k0();return $.aiGatewayEnabled&&!!$.aiGatewayAdminToken}async function MF6($,Z,Q){let X=k0(),Y=await fetch(`${X.aiGatewayUrl}${$}`,{method:"POST",headers:{Authorization:`Bearer ${X.aiGatewayAdminToken}`,"Content-Type":"application/json"},body:JSON.stringify(Z),signal:AbortSignal.timeout(15000)});if(!Y.ok){let J=await Y.text().catch(()=>"");throw Error(`${Q} failed (${Y.status}): ${J}`)}}async function zo$($){if(!gF1())throw Error("gateway admin not configured \u2014 cannot credit top-up");await MF6("/api/admin/credits",{orgId:$.organizationId,amountCents:$.amountCents,description:"Studio credit top-up (Stripe)",referenceId:$.referenceId},"gateway top-up credit")}var hF1=D(()=>{A$()});import Wd from"zod";var VF6=1e6,uF1;var Po$=D(()=>{hF1();$A();E5();A$();M0();fB();vB();zD();uF1=h({name:"AI_PROVIDER_TOPUP_URL",description:"Get a checkout URL to top up credits for a provider that supports it (e.g. Deco AI Gateway)",inputSchema:Wd.object({providerId:Wd.enum(MQ),amountCents:Wd.number().int().positive().max(VF6).describe("Amount in cents (e.g. 1000 = $10.00), max $10,000.00"),currency:Wd.enum(["usd","brl"]).default("usd")}),outputSchema:Wd.object({url:Wd.string().describe("Checkout URL \u2014 open in browser to complete payment")}),handler:async($,Z)=>{o(Z);let Q=t(Z);await Z.access.check();let X=o0(Z);if(!X)throw Error("Unable to determine user ID");let Y=k0();if($.providerId==="deco"&&Y.stripeSecretKey&&gF1()&&Q.slug){let W=await Z.storage.organizationBilling.getBilling(Q.id),H=`${j5()}${CL(Q.slug)}`,{url:F}=await wP$({organizationId:Q.id,amountCents:$.amountCents,currency:$.currency,feePercent:Y.topupFeePercent,customerId:W?.stripeCustomerId??null,successUrl:`${H}?topup=success`,cancelUrl:`${H}?topup=canceled`});return{url:F}}let J=XQ()[$.providerId];if(!J)throw Error(`Unknown provider: ${$.providerId}`);if(!J.getTopUpUrl)throw Error(`Provider ${$.providerId} does not support credit top-ups`);let G=await SH(X,Z.auth.user?.email);return{url:await J.getTopUpUrl(G,Q.id,$.amountCents,$.currency)}}})});import mM0 from"zod";function kF6($){return Number.isFinite($)}var lF1;var Ao$=D(()=>{M0();fB();vB();zD();lF1=h({name:"AI_PROVIDER_CREDITS",description:"Get the current credit balance for a provider (providers that support it, e.g. Deco AI Gateway)",inputSchema:mM0.object({providerId:mM0.enum(MQ)}),outputSchema:mM0.object({balanceCents:mM0.number().describe("Remaining balance in cents (e.g. 1000 = $10.00)")}),handler:async($,Z)=>{o(Z);let Q=t(Z);await Z.access.check();let X=o0(Z);if(!X)throw Error("Unable to determine user ID");let Y=XQ()[$.providerId];if(!Y)throw Error(`Unknown provider: ${$.providerId}`);if(!Y.getCreditsBalance)throw Error(`Provider ${$.providerId} does not expose a credits balance`);let J=await SH(X),G=await Y.getCreditsBalance(J,Q.id);if(!kF6(G.balanceCents))throw console.error(`AI provider "${$.providerId}" returned a non-finite credits balance for org ${Q.id}: ${G.balanceCents}`),Error(`Provider ${$.providerId} returned an invalid credits balance`);return G}})});var To$=D(()=>{Jo$();Go$();Ko$();T$0();Wo$();Ho$();Fo$();Uo$();Lo$();wo$();Eo$();Po$();Ao$()});import Lj from"zod";function _F6($){let Z=$.trim();if(Z.startsWith(CF6))throw Error("That looks like a Console API key, which bills per-token API usage instead of your subscription. Run `claude setup-token` and paste the token it prints.");if(/\s/.test(Z))throw Error("The token must not contain spaces or line breaks");if(Z.length===0)throw Error("The token must not be empty");return Z}var cF1,CF6="sk-ant-api",Ro$,qo$,Io$;var Mo$=D(()=>{M0();cF1=Lj.object({connected:Lj.boolean(),linkedAt:Lj.string().nullable(),expiresAt:Lj.string().nullable().describe("Known expiry, or null when the token carries none we can read")});Ro$=h({name:"CLAUDE_SUBSCRIPTION_CONNECT",description:"Link the caller's Claude subscription with a token from `claude setup-token`, so their claude-code runs bill against their own Pro/Max plan. Stored encrypted, for the caller only.",inputSchema:Lj.object({token:Lj.string().min(1).describe("The token printed by `claude setup-token` (sk-ant-oat\u2026)")}),outputSchema:cF1,handler:async($,Z)=>{o(Z),t(Z),await Z.access.check();let Q=o0(Z);if(!Q)throw Error("Unable to determine user ID");let X=_F6($.token);return{connected:!0,...await Z.storage.claudeSubscriptions.upsert({userId:Q,accessToken:X})}}}),qo$=h({name:"CLAUDE_SUBSCRIPTION_STATUS",description:"Whether the caller has a linked Claude subscription token, and since when.",inputSchema:Lj.object({}),outputSchema:cF1,handler:async($,Z)=>{o(Z),t(Z),await Z.access.check();let Q=o0(Z);if(!Q)throw Error("Unable to determine user ID");let X=await Z.storage.claudeSubscriptions.find(Q);if(!X)return{connected:!1,linkedAt:null,expiresAt:null};return{connected:!(X.expiresAt!==null&&new Date(X.expiresAt)<=new Date),...X}}}),Io$=h({name:"CLAUDE_SUBSCRIPTION_DISCONNECT",description:"Unlink the caller's Claude subscription and delete the stored token.",inputSchema:Lj.object({}),outputSchema:cF1,handler:async($,Z)=>{o(Z),t(Z),await Z.access.check();let Q=o0(Z);if(!Q)throw Error("Unable to determine user ID");return await Z.storage.claudeSubscriptions.delete(Q),{connected:!1,linkedAt:null,expiresAt:null}}})});import XU from"zod";var dM0;var mF1=D(()=>{dM0=XU.object({id:XU.string(),scope:XU.enum(["user","organization"]),userId:XU.string().nullable(),name:XU.string(),description:XU.string().nullable(),createdBy:XU.string(),createdAt:XU.string(),updatedBy:XU.string(),updatedAt:XU.string()})});import q$0 from"zod";var xF6=65536,dF1;var Vo$=D(()=>{M0();mF1();dF1=h({name:"SECRET_CREATE",description:"Create a secret. The value is encrypted at rest in the credential vault and never returned by any tool. Scope 'user' is private to the caller within this organization; scope 'organization' is visible to all org members.",inputSchema:q$0.object({scope:q$0.enum(["user","organization"]),name:q$0.string().min(1).max(128).regex(/^[A-Za-z0-9_.-]+$/,{message:"Name may only contain letters, digits, underscore, dot, and hyphen."}),value:q$0.string().min(1).max(xF6),description:q$0.string().max(500).optional()}),outputSchema:dM0,handler:async($,Z)=>{o(Z);let Q=t(Z);await Z.access.check();let X=Z.auth.user.id,Y=$.scope==="user"?{kind:"user",userId:X}:{kind:"organization"};return await Z.storage.secrets.create({organizationId:Q.id,scope:Y,name:$.name,value:$.value,description:$.description??null,createdBy:X})}})});import iM0 from"zod";var iF1;var ko$=D(()=>{M0();mF1();iF1=h({name:"SECRET_LIST",description:"List secrets visible to the caller: all organization-scoped secrets, plus user-scoped secrets owned by the caller. Values are never returned.",annotations:{readOnlyHint:!0,idempotentHint:!0},inputSchema:iM0.object({scope:iM0.enum(["user","organization"]).optional()}),outputSchema:iM0.object({secrets:iM0.array(dM0)}),handler:async($,Z)=>{o(Z);let Q=t(Z);await Z.access.check();let X=Z.auth.user.id,Y=$.scope==="user"?{kind:"user",userId:X}:$.scope==="organization"?{kind:"organization"}:void 0;return{secrets:await Z.storage.secrets.list({organizationId:Q.id,callerUserId:X,scope:Y})}}})});var So$=D(()=>{Vo$();ko$()});var Bb=v((lF6)=>{var pF1;(function($){$.HEADER="header",$.QUERY="query"})(pF1||(pF1={}));var nF1;(function($){$.HEADER="header",$.QUERY="query"})(nF1||(nF1={}));var tF1;(function($){$.HTTP="http",$.HTTPS="https"})(tF1||(tF1={}));var I$0;(function($){$.MD5="md5",$.CRC32="crc32",$.CRC32C="crc32c",$.SHA1="sha1",$.SHA256="sha256"})(I$0||(I$0={}));var bF6=($)=>{let Z=[];if($.sha256!==void 0)Z.push({algorithmId:()=>I$0.SHA256,checksumConstructor:()=>$.sha256});if($.md5!=null)Z.push({algorithmId:()=>I$0.MD5,checksumConstructor:()=>$.md5});return{addChecksumAlgorithm(Q){Z.push(Q)},checksumAlgorithms(){return Z}}},yF6=($)=>{let Z={};return $.checksumAlgorithms().forEach((Q)=>{Z[Q.algorithmId()]=Q.checksumConstructor()}),Z},gF6=($)=>{return bF6($)},hF6=($)=>{return yF6($)},oF1;(function($){$[$.HEADER=0]="HEADER",$[$.TRAILER=1]="TRAILER"})(oF1||(oF1={}));var uF6="__smithy_context",rF1;(function($){$.PROFILE="profile",$.SSO_SESSION="sso-session",$.SERVICES="services"})(rF1||(rF1={}));var aF1;(function($){$.HTTP_0_9="http/0.9",$.HTTP_1_0="http/1.0",$.TDS_8_0="tds/8.0"})(aF1||(aF1={}));lF6.AlgorithmId=I$0;lF6.EndpointURLScheme=tF1;lF6.FieldPosition=oF1;lF6.HttpApiKeyAuthLocation=nF1;lF6.HttpAuthLocation=pF1;lF6.IniSectionType=rF1;lF6.RequestHandlerProtocol=aF1;lF6.SMITHY_CONTEXT_KEY=uF6;lF6.getDefaultClientConfiguration=gF6;lF6.resolveDefaultRuntimeConfig=hF6});var YU=v((YU6)=>{var{SMITHY_CONTEXT_KEY:Co$}=Bb(),sF6=($)=>$[Co$]||($[Co$]={});class pM0{method;protocol;hostname;port;path;query;headers;username;password;fragment;body;constructor($){this.method=$.method||"GET",this.hostname=$.hostname||"localhost",this.port=$.port,this.query=$.query||{},this.headers=$.headers||{},this.body=$.body,this.protocol=$.protocol?$.protocol.slice(-1)!==":"?`${$.protocol}:`:$.protocol:"https:",this.path=$.path?$.path.charAt(0)!=="/"?`/${$.path}`:$.path:"/",this.username=$.username,this.password=$.password,this.fragment=$.fragment}static clone($){let Z=new pM0({...$,headers:{...$.headers}});if(Z.query)Z.query=eF6(Z.query);return Z}static isInstance($){if(!$)return!1;let Z=$;return"method"in Z&&"protocol"in Z&&"hostname"in Z&&"path"in Z&&typeof Z.query==="object"&&typeof Z.headers==="object"}clone(){return pM0.clone(this)}}function eF6($){return Object.keys($).reduce((Z,Q)=>{let X=$[Q];return{...Z,[Q]:Array.isArray(X)?[...X]:X}},{})}class _o${statusCode;reason;headers;body;constructor($){this.statusCode=$.statusCode,this.reason=$.reason,this.headers=$.headers||{},this.body=$.body}static isInstance($){if(!$)return!1;let Z=$;return typeof Z.statusCode==="number"&&typeof Z.headers==="object"}}var $U6=new RegExp("^(?!.*-$)(?!-)[a-zA-Z0-9-]{1,63}$"),vo$=($,Z=!1)=>{if(!Z)return $U6.test($);let Q=$.split(".");for(let X of Q)if(!vo$(X))return!1;return!0};function ZU6($){return/^[a-z0-9][a-z0-9\.\-]*[a-z0-9]$/.test($)}var QU6=($)=>{if(typeof $==="function")return $;let Z=Promise.resolve($);return()=>Z};function xo$($){let Z={};if($=$.replace(/^\?/,""),$)for(let Q of $.split("&")){let[X,Y=null]=Q.split("=");if(X=decodeURIComponent(X),Y)Y=decodeURIComponent(Y);if(!(X in Z))Z[X]=Y;else if(Array.isArray(Z[X]))Z[X].push(Y);else Z[X]=[Z[X],Y]}return Z}var nM0=($)=>{if(typeof $==="string")return nM0(new URL($));let{hostname:Z,pathname:Q,port:X,protocol:Y,search:J}=$,G;if(J)G=xo$(J);return{hostname:Z,port:X?parseInt(X):void 0,protocol:Y,path:Q,query:G}},XU6=($)=>{if(typeof $==="object"){if("url"in $){let Z=nM0($.url);if($.headers){Z.headers={};for(let Q in $.headers)Z.headers[Q.toLowerCase()]=$.headers[Q].join(", ")}return Z}return $}return nM0($)};YU6.HttpRequest=pM0;YU6.HttpResponse=_o$;YU6.getSmithyContext=sF6;YU6.isValidHostLabel=vo$;YU6.isValidHostname=ZU6;YU6.normalizeProvider=QU6;YU6.parseQueryString=xo$;YU6.parseUrl=nM0;YU6.toEndpointV1=XU6});var pW=v((MU6)=>{var{getSmithyContext:fo$,HttpResponse:OU6,toEndpointV1:DU6}=YU(),tM0=($)=>{if(typeof $==="function")return $();return $},$U1=($,Z,Q,X,Y)=>({name:Z,namespace:$,traits:Q,input:X,output:Y}),LU6=($)=>(Z,Q)=>async(X)=>{let{response:Y}=await Z(X),{operationSchema:J}=fo$(Q),[,G,K,W,H,F]=J??[];try{let U=await $.protocol.deserializeResponse($U1(G,K,W,H,F),{...$,...Q},Y);return{response:Y,output:U}}catch(U){if(Object.defineProperty(U,"$response",{value:Y,enumerable:!1,writable:!1,configurable:!1}),!("$metadata"in U)){try{U.message+=`
|
|
3544
|
+
`)){let F=H.indexOf(":");if(F>=0)W[H.substring(0,F).trim()]=H.substring(F+1).trim()}J.defaultHeaders={...W,...J.defaultHeaders}}let K=Y.__auth;if(delete J.__auth,delete J.__baseURLIsExplicit,this._options=J,this.apiKey=typeof Z==="string"?Z:null,this.authToken=Q,this.webhookKey=X,K){if(this._authState=K,!this._baseURLIsExplicit&&K.baseURL)this.baseURL=K.baseURL}else if(this._authState={provider:null,tokenCache:null,resolution:null,error:null,extraHeaders:{}},this.apiKey==null&&this.authToken==null){let W=J.credentials??null;if(W)this._authState.provider=W,this._authState.tokenCache=this._makeTokenCache(W);else if(J.config!=null){let H=oW1(J.config,this._credentialResolverOptions());this._authState.provider=H.provider,this._authState.tokenCache=this._makeTokenCache(H.provider),this._authState.extraHeaders=H.extraHeaders,this._applyCredentialBaseURL(H.baseURL)}else if(J.profile!=null)this._authState.resolution=this._resolveDefaultCredentials(J.profile);else this._authState.resolution=this._resolveDefaultCredentials()}}_applyCredentialBaseURL($){if(!$)return;let Z=$.replace(/\/+$/,"");if(this._authState.baseURL=Z,!this._baseURLIsExplicit)this.baseURL=Z}_credentialResolverOptions(){return{baseURL:this.baseURL,fetch:this._credentialsFetch(),userAgent:this.getUserAgent(),onCacheWriteError:($)=>{r4(this).debug("credential cache write failed (best-effort)",$)},onSafetyWarning:($)=>{r4(this).warn($)}}}_credentialsFetch(){return sW1(this.fetch,this.middleware,void 0,this)}_makeTokenCache($){return new lW1($,(Z)=>{r4(this).debug("advisory token refresh failed; serving cached token",Z)})}withOptions($){let Z="credentials"in $||"config"in $||"profile"in $,Q="apiKey"in $||"authToken"in $||Z,X={...this._options,...this._baseURLIsExplicit?{baseURL:this.baseURL}:{},maxRetries:this.maxRetries,timeout:this.timeout,logger:this.logger,logLevel:this.logLevel,fetch:this.fetch,fetchOptions:this.fetchOptions,middleware:this.middleware,apiKey:this.apiKey,authToken:this.authToken,webhookKey:this.webhookKey,credentials:this.credentials,...Z?{credentials:void 0,config:void 0,profile:void 0}:{},...$,__auth:Q?void 0:this._authState,__baseURLIsExplicit:"baseURL"in $?!0:this._baseURLIsExplicit};return new this.constructor(X)}async _resolveDefaultCredentials($){try{let Z=await Un$(this._credentialResolverOptions(),$);if(Z)this._authState.provider=Z.provider,this._authState.tokenCache=this._makeTokenCache(Z.provider),this._authState.extraHeaders=Z.extraHeaders,this._applyCredentialBaseURL(Z.baseURL);else if($!=null)throw new N1(`Profile "${$}" could not be resolved (no <config_dir>/configs/${$}.json found).`)}catch(Z){this._authState.error=Z}finally{this._authState.resolution=null}}defaultQuery(){return this._options.defaultQuery}validateHeaders({values:$,nulls:Z}){if($.get("x-api-key")||$.get("authorization"))return;if(this._authState.error)throw this._authState.error;if(this._authState.tokenCache||this._authState.resolution)return;if(this.apiKey&&$.get("x-api-key"))return;if(Z.has("x-api-key"))return;if(this.authToken&&$.get("authorization"))return;if(Z.has("authorization"))return;throw Error('Could not resolve authentication method. Expected one of apiKey, authToken, credentials, config, or profile to be set. Or for one of the "X-Api-Key" or "Authorization" headers to be explicitly omitted')}_authFlags($){let Z=this._requestAuthFlags.get($);if(!Z)Z={usedTokenCache:!1,didRefreshFor401:!1},this._requestAuthFlags.set($,Z);return Z}async authHeaders($){if(this._authState.resolution)await this._authState.resolution;if(this._authState.error)return;if(this._authState.tokenCache&&this.apiKey==null){let Z=await this._authState.tokenCache.getToken();return this._authFlags($).usedTokenCache=!0,v0([{Authorization:`Bearer ${Z}`}])}return v0([await this.apiKeyAuth($),await this.bearerAuth($)])}async apiKeyAuth($){if(this.apiKey==null)return;return v0([{"X-Api-Key":this.apiKey}])}async bearerAuth($){if(this.authToken==null)return;return v0([{Authorization:`Bearer ${this.authToken}`}])}stringifyQuery($){return up$($)}getUserAgent(){return`${this.constructor.name}/JS ${sG}`}defaultIdempotencyKey(){return`stainless-node-retry-${Cm()}`}makeStatusError($,Z,Q,X){return x9.generate($,Z,Q,X)}buildURL($,Z,Q){let X=!c(this,RF1,"m",dt$).call(this)&&Q||this.baseURL,Y=zp$($)?new URL($):new URL(X+(X.endsWith("/")&&$.startsWith("/")?$.slice(1):$)),J=this.defaultQuery(),G=Object.fromEntries(Y.searchParams);if(!SW1(J)||!SW1(G))Z={...G,...J,...Z};if(typeof Z==="object"&&Z&&!Array.isArray(Z))Y.search=this.stringifyQuery(Z);return Y.toString()}_calculateNonstreamingTimeout($){if(3600*$/128000>600)throw new N1("Streaming is required for operations that may take longer than 10 minutes. See https://github.com/anthropics/anthropic-sdk-typescript#streaming-responses for more details");return 600000}async prepareOptions($){}async prepareRequest($,{url:Z,options:Q}){if(this._authState.tokenCache&&this.apiKey==null){let X=$.headers instanceof Headers?$.headers:new Headers($.headers);for(let[J,G]of Object.entries(this._authState.extraHeaders))if(!X.has(J))X.set(J,G);if(!X.get("anthropic-beta")?.split(",").map((J)=>J.trim())?.includes(rf))X.append("anthropic-beta",rf);$.headers=X}}backendMiddleware(){return[]}get($,Z){return this.methodRequest("get",$,Z)}post($,Z){return this.methodRequest("post",$,Z)}patch($,Z){return this.methodRequest("patch",$,Z)}put($,Z){return this.methodRequest("put",$,Z)}delete($,Z){return this.methodRequest("delete",$,Z)}methodRequest($,Z,Q){return this.request(Promise.resolve(Q).then((X)=>{return{method:$,path:Z,...X}}))}request($,Z=null){return new af(this,this.makeRequest($,Z,void 0))}async makeRequest($,Z,Q){let X=await $,Y=X.maxRetries??this.maxRetries;if(Z==null)Z=Y,this._requestAuthFlags.delete(X);await this.prepareOptions(X);let{req:J,url:G,timeout:K}=await this.buildRequest(X,{retryCount:Y-Z}),W="log_"+(Math.random()*16777216|0).toString(16).padStart(6,"0"),H=Q===void 0?"":`, retryOf: ${Q}`,F=Date.now();if(X.signal?.aborted)throw new ZX;let U=new AbortController,N=await this.fetchWithTimeout(G,J,K,U,X,{requestLogID:W,retryOfRequestLogID:Q}).catch(of),B=Date.now();if(N instanceof globalThis.Error){let w=`retrying, ${Z} attempts remaining`;if(X.signal?.aborted)throw new ZX;let j=aG(N)||/timed? ?out/i.test(String(N)+("cause"in N?String(N.cause):"")),E=this.middleware.length>0||!!X.middleware?.length||this.backendMiddleware().length>0;if(E&&!j&&!jn$(N))throw r4(this).info(`[${W}] middleware error (not retryable)`),r4(this).debug(`[${W}] middleware error (not retryable)`,sF({retryOfRequestLogID:Q,url:G,durationMs:B-F,message:N.message})),N;if(Z)return r4(this).info(`[${W}] connection ${j?"timed out":"failed"} - ${w}`),r4(this).debug(`[${W}] connection ${j?"timed out":"failed"} (${w})`,sF({retryOfRequestLogID:Q,url:G,durationMs:B-F,message:N.message})),this.retryRequest(X,Z,Q??W);if(r4(this).info(`[${W}] connection ${j?"timed out":"failed"} - error; no more retries left`),r4(this).debug(`[${W}] connection ${j?"timed out":"failed"} (error; no more retries left)`,sF({retryOfRequestLogID:Q,url:G,durationMs:B-F,message:N.message})),j)throw new H10;if(E&&!aW1(N))throw N;throw new kB({cause:N})}let O=[...N.headers.entries()].filter(([w])=>w==="request-id").map(([w,j])=>", "+w+": "+JSON.stringify(j)).join(""),L=`[${W}${H}${O}] ${J.method} ${G} ${N.ok?"succeeded":"failed"} with status ${N.status} in ${B-F}ms`;if(!N.ok){let w=await this.shouldRetry(N,X);if(Z&&w){let q=`retrying, ${Z} attempts remaining`;return await Vp$(N.body),r4(this).info(`${L} - ${q}`),r4(this).debug(`[${W}] response error (${q})`,sF({retryOfRequestLogID:Q,url:N.url,status:N.status,headers:N.headers,durationMs:B-F})),this.retryRequest(X,Z,Q??W,N.headers)}let j=w?"error; no more retries left":"error; not retryable";r4(this).info(`${L} - ${j}`);let E=await N.text().catch((q)=>of(q).message),z=j10(E),P=z?void 0:E;throw r4(this).debug(`[${W}] response error (${j})`,sF({retryOfRequestLogID:Q,url:N.url,status:N.status,headers:N.headers,message:P,durationMs:Date.now()-F})),this.makeStatusError(N.status,z,P,N.headers)}return r4(this).info(L),r4(this).debug(`[${W}] response start`,sF({retryOfRequestLogID:Q,url:N.url,status:N.status,headers:N.headers,durationMs:B-F})),{response:N,options:X,controller:U,requestLogID:W,retryOfRequestLogID:Q,startTime:F}}getAPIList($,Z,Q){return this.requestAPIList(Z,Q&&"then"in Q?Q.then((X)=>({method:"get",path:$,...X})):{method:"get",path:$,...Q})}requestAPIList($,Z){let Q=this.makeRequest(Z,null,void 0);return new KM0(this,Q,$)}async fetchWithTimeout($,Z,Q,X,Y,J){let{signal:G,method:K,...W}=Z||{},H=this._makeAbort(X);if(G)G.addEventListener("abort",H,{once:!0});let F=globalThis.ReadableStream&&W.body instanceof globalThis.ReadableStream||typeof W.body==="object"&&W.body!==null&&Symbol.asyncIterator in W.body,U={signal:X.signal,...F?{duplex:"half"}:{},method:"GET",...W};if(K)U.method=K.toUpperCase();let N=this.fetch,B=async(E,z)=>{let P=setTimeout(H,Q);try{return await N.call(void 0,E,z)}finally{clearTimeout(P)}},O=Y===void 0?B:async(E,z={})=>{let P=typeof E==="string"?E:E instanceof URL?E.href:E.url;if(z.headers=z.headers instanceof Headers?z.headers:new Headers(z.headers),await this.prepareRequest(z,{url:P,options:Y}),J)r4(this).debug(`[${J.requestLogID}] sending request`,sF({retryOfRequestLogID:J.retryOfRequestLogID,method:z.method,url:P,options:Y,headers:z.headers}));return B(E,z)},L=Y?.middleware,w=this.backendMiddleware(),j=L?.length||w.length?[...this.middleware,...L??[],...w]:this.middleware;return await sW1(O,j,Y,this)($,U)}async shouldRetry($,Z){let Q=this._authFlags(Z);if($.status===401&&this._authState.tokenCache&&Q.usedTokenCache&&!Q.didRefreshFor401)return Q.didRefreshFor401=!0,this._authState.tokenCache.invalidate(),!0;let X=$.headers.get("x-should-retry");if(X==="true")return!0;if(X==="false")return!1;if($.status===408)return!0;if($.status===409)return!0;if($.status===429)return!0;if($.status>=500)return!0;return!1}async retryRequest($,Z,Q,X){let Y,J=X?.get("retry-after-ms");if(J){let K=parseFloat(J);if(!Number.isNaN(K))Y=K}let G=X?.get("retry-after");if(G&&!Y){let K=parseFloat(G);if(!Number.isNaN(K))Y=K*1000;else Y=Date.parse(G)-Date.now()}if(Y===void 0){let K=$.maxRetries??this.maxRetries;Y=this.calculateDefaultRetryTimeoutMillis(Z,K)}return await lW(Y),this.makeRequest($,Z-1,Q)}calculateDefaultRetryTimeoutMillis($,Z){let Y=Z-$,J=Math.min(0.5*Math.pow(2,Y),8),G=1-Math.random()*0.25;return J*G*1000}calculateNonstreamingTimeout($,Z){if(3600000*$/128000>600000||Z!=null&&$>Z)throw new N1("Streaming is required for operations that may take longer than 10 minutes. See https://github.com/anthropics/anthropic-sdk-typescript#long-requests for more details");return 600000}async buildRequest($,{retryCount:Z=0}={}){let Q={...$},{method:X,path:Y,query:J,defaultBaseURL:G}=Q;if(this._authState.resolution)await this._authState.resolution;if(!this._baseURLIsExplicit&&this._authState.baseURL&&this.baseURL!==this._authState.baseURL)this.baseURL=this._authState.baseURL;let K=this.buildURL(Y,J,G);if("timeout"in Q)Ap$("timeout",Q.timeout);Q.timeout=Q.timeout??this.timeout;let{bodyHeaders:W,body:H}=this.buildBody({options:Q}),F=await this.buildHeaders({options:$,method:X,bodyHeaders:W,retryCount:Z});return{req:{method:X,headers:F,...Q.signal&&{signal:Q.signal},...globalThis.ReadableStream&&H instanceof globalThis.ReadableStream&&{duplex:"half"},...H&&{body:H},...this.fetchOptions??{},...Q.fetchOptions??{}},url:K,timeout:Q.timeout}}async buildHeaders({options:$,method:Z,bodyHeaders:Q,retryCount:X}){let Y={};if(this.idempotencyHeader&&Z!=="get"){if(!$.idempotencyKey)$.idempotencyKey=this.defaultIdempotencyKey();Y[this.idempotencyHeader]=$.idempotencyKey}let J=v0([Y,{Accept:"application/json","User-Agent":this.getUserAgent(),"X-Stainless-Retry-Count":String(X),...$.timeout?{"X-Stainless-Timeout":String(Math.trunc($.timeout/1000))}:{},...E10(),...this._options.dangerouslyAllowBrowser?{"anthropic-dangerous-direct-browser-access":"true"}:void 0,"anthropic-version":"2023-06-01"},await this.authHeaders($),this._options.defaultHeaders,Q,$.headers]);return this.validateHeaders(J),J.values}_makeAbort($){return()=>$.abort()}buildBody({options:{body:$,headers:Z}}){if(!$)return{bodyHeaders:void 0,body:void 0};let Q=v0([Z]);if(ArrayBuffer.isView($)||$ instanceof ArrayBuffer||$ instanceof DataView||typeof $==="string"&&Q.values.has("content-type")||globalThis.Blob&&$ instanceof globalThis.Blob||$ instanceof FormData||$ instanceof URLSearchParams||globalThis.ReadableStream&&$ instanceof globalThis.ReadableStream)return{bodyHeaders:void 0,body:$};else if(typeof $==="object"&&((Symbol.asyncIterator in $)||(Symbol.iterator in $)&&("next"in $)&&typeof $.next==="function"))return{bodyHeaders:void 0,body:pI0($)};else if(typeof $==="object"&&Q.values.get("content-type")==="application/x-www-form-urlencoded")return{bodyHeaders:{"content-type":"application/x-www-form-urlencoded"},body:this.stringifyQuery($)};else return c(this,uM0,"f").call(this,{body:$,headers:Q})}}var RF1,qF1,uM0,dt$,it$="\\n\\nHuman:",pt$="\\n\\nAssistant:",_B;var IF1=D(()=>{YJ();uW();iI0();hW1();c5();vm();np$();Nn$();En$();B5();YH1();mt$();JM0();UF1();TF1();FF1();AF1();iI0();a4();eF();uW();qF1=f9,uM0=new WeakMap,RF1=new WeakSet,dt$=function(){return this.baseURL!=="https://api.anthropic.com"};f9.Anthropic=qF1;f9.HUMAN_PROMPT=it$;f9.AI_PROMPT=pt$;f9.DEFAULT_TIMEOUT=600000;f9.AnthropicError=N1;f9.APIError=x9;f9.APIConnectionError=kB;f9.APIConnectionTimeoutError=H10;f9.APIUserAbortError=ZX;f9.NotFoundError=B10;f9.ConflictError=O10;f9.RateLimitError=L10;f9.BadRequestError=F10;f9.AuthenticationError=U10;f9.InternalServerError=w10;f9.PermissionDeniedError=N10;f9.UnprocessableEntityError=D10;f9.toFile=WM0;_B=class _B extends f9{constructor(){super(...arguments);this.completions=new Qd(this),this.messages=new Ub(this),this.models=new Yd(this),this.beta=new dZ(this)}};_B.Completions=Qd;_B.Messages=Ub;_B.Models=Yd;_B.Beta=dZ});var nt$=D(()=>{c5();R10();uW()});var AH1=D(()=>{IF1();YH1();JM0();nt$();IF1();B5();c5()});var tt$;var ot$=D(()=>{YG1();AH1();tt$={info:{id:"anthropic",name:"Anthropic",description:"Anthropic's Claude family of models",logo:"https://assets.decocache.com/decocms/51a209ae-14bc-4b6f-8216-8eb670695bd7/Anthropic-Icon--Streamline-Svg-Logos.svg"},supportedMethods:["api-key"],create($){let Z=h00({apiKey:$}),Q=new _B({apiKey:$});return{info:this.info,aiSdk:Z,async listModels(){return(await Q.models.list()).data.map((Y)=>({modelId:Y.id,providerId:"anthropic",title:Y.display_name,description:null,logo:null,capabilities:[],limits:null,costs:null}))},async countTokens({messages:X,modelId:Y}){return{count:(await Q.messages.countTokens({messages:X,model:Y})).input_tokens}}}}}});var rt$=D(()=>{qG1()});var at$=D(()=>{rt$()});function EF6($){let Z=$.name.replace("models/","");if(/^imagen-/.test(Z)||/-image/.test(Z)){let Q=["image"];if($.supportedGenerationMethods.includes("generateContent"))Q.push("text");return Q}return[]}var st$;var et$=D(()=>{NG1();at$();st$={info:{id:"google",name:"Google Gemini",description:"Google's Gemini family of models",logo:"https://assets.decocache.com/decocms/29370b4b-c623-487b-a6c4-a1637a2c0401/Google__G__logo.svg"},supportedMethods:["api-key"],create($){let Z=c00({apiKey:$});return{info:this.info,aiSdk:Z,asyncResearch:{canHandle:(Q)=>i00(Q),start:async({modelId:Q,query:X,abortSignal:Y})=>{let{interactionId:J}=await pq0({apiKey:$,agent:Q,query:X,abortSignal:Y});return{jobId:J}},resume:({jobId:Q,abortSignal:X,onProgress:Y,pollIntervalMs:J})=>nq0({apiKey:$,interactionId:Q,abortSignal:X,onProgress:Y,pollIntervalMs:J})},async listModels(){let Q=await fetch("https://generativelanguage.googleapis.com/v1beta/models",{headers:{"x-goog-api-key":$},signal:AbortSignal.timeout(15000)});if(!Q.ok)throw Error(`Google listModels failed: ${Q.status}`);return(await Q.json()).models.filter((Y)=>Y.lifecycleState!=="DEPRECATED").map((Y)=>{let J=Y.name.replace("models/","");return{modelId:J,providerId:"google",title:Y.displayName,description:Y.description,logo:null,capabilities:EF6(Y),limits:{contextWindow:Y.inputTokenLimit,maxOutputTokens:Y.outputTokenLimit},costs:null,...i00(J)&&{asyncResearch:!0}}})}}}}});var $o$="https://api.llmapi.ai/v1",zF6="https://llmapi.ai/wp-content/uploads/2026/01/Frame-2085662993.png",Zo$;var Qo$=D(()=>{iq0();Zo$={info:{id:"llmapi",name:"LLMAPI",description:"One API key, 400+ models across every provider",logo:zF6},supportedMethods:["api-key"],create($){let Z=hf({apiKey:$||"not-needed",baseURL:$o$,name:"llmapi"}),Q=Object.assign((...X)=>Z.chat(...X),Z,{languageModel:Z.chat});return{info:this.info,aiSdk:Q,async listModels(){let X=await fetch(`${$o$}/models`,{headers:$?{Authorization:`Bearer ${$}`}:{},signal:AbortSignal.timeout(15000)});if(!X.ok)throw Error(`LLMAPI listModels failed: ${X.status}`);let{data:Y}=await X.json();return Y.map((J)=>{let G=J.architecture??{},K=!!J.reasoning_levels?.length||!!J.providers?.some((W)=>W.reasoning);return{providerId:"llmapi",modelId:J.id,title:J.name||J.id,description:J.description??null,logo:null,capabilities:[...new Set([...(G.input_modalities??[]).map((W)=>W==="image"?"vision":W),...G.output_modalities??[],...J.supported_parameters?.includes("tools")?["tools"]:[],...K?["reasoning"]:[]])],limits:{contextWindow:J.context_length??0,maxOutputTokens:null},costs:{input:Number(J.pricing?.prompt)||0,output:Number(J.pricing?.completion)||0}}})}}}}});function PF6($){let Z=JSON.parse($);if(!Z.baseUrl||typeof Z.baseUrl!=="string")throw Error("Invalid OpenAI-compatible credential: missing baseUrl field");let Q=Z.baseUrl.replace(/\/+$/,"");if(!Q.endsWith("/v1"))Q+="/v1";return{baseUrl:Q,apiKey:Z.apiKey??""}}var AF6="https://assets.decocache.com/decocms/d138aa7e-5b8c-4821-9e64-6aff40df2cdc/ChatGPT_logo.svg",Xo$;var Yo$=D(()=>{iq0();Xo$={info:{id:"openai-compatible",name:"OpenAI Compatible",description:"Custom OpenAI-compatible endpoint",logo:AF6},supportedMethods:["api-key"],create($){let{baseUrl:Z,apiKey:Q}=PF6($),X=hf({baseURL:Z,apiKey:Q||"not-needed",name:"openai-compatible"}),Y=Object.assign((...J)=>X.chat(...J),X,{languageModel:X.chat});return{info:this.info,aiSdk:Y,async listModels(){let J={};if(Q)J.Authorization=`Bearer ${Q}`;let G=await fetch(`${Z}/models`,{headers:J,signal:AbortSignal.timeout(15000)});if(!G.ok)throw Error(`OpenAI-compatible listModels failed: ${G.status}`);return(await G.json()).data.map((W)=>({providerId:"openai-compatible",modelId:W.id,title:W.id,description:W.owned_by?`Owned by ${W.owned_by}`:null,logo:null,capabilities:[],limits:null,costs:null}))}}}}});function XQ(){return{...k0().aiGatewayEnabled&&{deco:kL},anthropic:tt$,google:st$,openrouter:DW0,llmapi:Zo$,"openai-compatible":Xo$}}var vB=D(()=>{ot$();et$();Qo$();Yo$();x61();LW0();A$()});import V3 from"zod";var MF1;var Jo$=D(()=>{M0();vB();MF1=h({name:"AI_PROVIDERS_LIST",description:"List all supported AI providers and their connection methods (API key, OAuth).",annotations:{readOnlyHint:!0,idempotentHint:!0},inputSchema:V3.object({}),outputSchema:V3.object({providers:V3.array(V3.object({id:V3.string(),name:V3.string(),description:V3.string(),logo:V3.string().optional(),supportedMethods:V3.array(V3.enum(["api-key","oauth-pkce"])),supportsTopUp:V3.boolean().optional(),supportsCredits:V3.boolean().optional(),supportsProvision:V3.boolean().optional()}))}),handler:async($,Z)=>{return o(Z),t(Z),await Z.access.check(),{providers:Object.values(XQ()).filter((X)=>!!X).map((X)=>({...X.info,supportedMethods:X.supportedMethods,supportsTopUp:!!X.getTopUpUrl,supportsCredits:!!X.getCreditsBalance,supportsProvision:!!X.provisionKey}))}}})});import iZ from"zod";var VF1;var Go$=D(()=>{M0();Em();VF1=h({name:"AI_PROVIDERS_LIST_MODELS",description:"List models available from an AI provider. Requires a valid stored API key.",annotations:{readOnlyHint:!0,idempotentHint:!0},inputSchema:iZ.object({keyId:iZ.string().describe("The provider key ID to use")}),outputSchema:iZ.object({models:iZ.array(iZ.object({providerId:iZ.string(),modelId:iZ.string(),title:iZ.string(),description:iZ.string().nullish(),logo:iZ.string().nullish(),capabilities:iZ.array(iZ.string()),limits:iZ.object({contextWindow:iZ.coerce.number(),maxOutputTokens:iZ.coerce.number().nullable()}).nullish(),costs:iZ.object({input:iZ.coerce.number(),output:iZ.coerce.number()}).nullish(),asyncResearch:iZ.boolean().optional()}))}),handler:async($,Z)=>{o(Z);let Q=t(Z);await Z.access.check();let[X,Y]=await Promise.all([Z.aiProviders.listModels($.keyId,Q.id),hW(Z.db,Q.id,Q.role??Z.auth.user?.role)]);return{models:X.filter((G)=>gW(Y,$.keyId,G.modelId))}}})});import xB from"zod";var kF1;var Ko$=D(()=>{M0();vB();kF1=h({name:"AI_PROVIDERS_ACTIVE",description:"List AI providers that have at least one API key configured and ready to use.",inputSchema:xB.object({}),outputSchema:xB.object({providers:xB.array(xB.object({id:xB.string(),name:xB.string(),description:xB.string(),logo:xB.string().optional(),keyCount:xB.number()}))}),handler:async($,Z)=>{o(Z);let Q=t(Z);await Z.access.check();let X=await Z.storage.aiProviderKeys.list({organizationId:Q.id}),Y=new Map;for(let G of X)Y.set(G.providerId,(Y.get(G.providerId)??0)+1);return{providers:[...Y.entries()].flatMap(([G,K])=>{let H=XQ()[G];if(!H)return console.warn(`AI provider "${G}" has stored keys but is not in the registry; skipping.`),[];return[{...H.info,keyCount:K}]})}}})});var fB=D(()=>{f8()});import dW from"zod";var Nb,SF1;var T$0=D(()=>{v4();M0();fB();Nb=dW.object({id:dW.string(),providerId:dW.string(),label:dW.string(),presetId:dW.string().nullable(),createdAt:dW.string()}),SF1=h({name:"AI_PROVIDER_KEY_CREATE",description:"Store an API key for an AI provider. The key is encrypted at rest in the vault.",inputSchema:dW.object({providerId:dW.enum(MQ),label:dW.string().min(1).max(100),apiKey:dW.string().min(1),presetId:dW.string().min(1).max(64).optional()}),outputSchema:Nb,handler:async($,Z)=>{o(Z);let Q=t(Z);await Z.access.check();let X=await Z.storage.aiProviderKeys.create({providerId:$.providerId,label:$.label,apiKey:$.apiKey,organizationId:Q.id,createdBy:Z.auth.user.id,presetId:$.presetId??null});return k1.capture({distinctId:Z.auth.user.id,event:"ai_provider_key_created",groups:{organization:Q.id},properties:{organization_id:Q.id,provider_id:X.providerId,preset_id:X.presetId,key_id:X.id,label:X.label}}),{id:X.id,providerId:X.providerId,label:X.label,presetId:X.presetId,createdAt:X.createdAt}}})});import lM0 from"zod";var Jd=($,Z)=>$&&$.keyId===Z?null:$,TF6=($,Z)=>{let Q={tiers:{fast:Jd($.tiers.fast,Z),smart:Jd($.tiers.smart,Z),thinking:Jd($.tiers.thinking,Z),image:Jd($.tiers.image,Z),web_search:Jd($.tiers.web_search,Z),deep_research:Jd($.tiers.deep_research,Z)}},X=Q.tiers.fast!==$.tiers.fast||Q.tiers.smart!==$.tiers.smart||Q.tiers.thinking!==$.tiers.thinking||Q.tiers.image!==$.tiers.image||Q.tiers.web_search!==$.tiers.web_search||Q.tiers.deep_research!==$.tiers.deep_research;return{config:Q,changed:X}},CF1;var Wo$=D(()=>{v4();M0();CF1=h({name:"AI_PROVIDER_KEY_DELETE",description:"Delete a stored AI provider API key. Cannot be undone.",inputSchema:lM0.object({keyId:lM0.string().describe("The provider key ID to delete")}),outputSchema:lM0.object({success:lM0.boolean()}),handler:async($,Z)=>{o(Z);let Q=t(Z);await Z.access.check();let X=await Z.storage.organizationSettings.get(Q.id);if(X?.simple_mode){let{config:Y,changed:J}=TF6(X.simple_mode,$.keyId);if(J)await Z.storage.organizationSettings.upsert(Q.id,{simple_mode:Y})}return await Z.storage.aiProviderKeys.delete($.keyId,Q.id),k1.capture({distinctId:Z.auth.user.id,event:"ai_provider_key_deleted",groups:{organization:Q.id},properties:{organization_id:Q.id,key_id:$.keyId}}),{success:!0}}})});import cM0 from"zod";var _F1;var Ho$=D(()=>{M0();T$0();_F1=h({name:"AI_PROVIDER_KEY_UPDATE",description:"Update the label and/or API key of a stored AI provider key. Pass apiKey to rotate the stored credential.",inputSchema:cM0.object({keyId:cM0.string(),label:cM0.string().min(1).max(100).optional(),apiKey:cM0.string().min(1).optional()}),outputSchema:Nb,handler:async($,Z)=>{o(Z);let Q=t(Z);await Z.access.check();let X=await Z.storage.aiProviderKeys.updateKey($.keyId,Q.id,{label:$.label,apiKey:$.apiKey});return{id:X.id,providerId:X.providerId,label:X.label,presetId:X.presetId,createdAt:X.createdAt}}})});import Gd from"zod";var vF1;var Fo$=D(()=>{M0();vF1=h({name:"AI_PROVIDER_KEY_PREVIEW",description:"Get the label and a masked preview of a stored AI provider API key. The API key is partially obscured (only the last 4 characters are visible). For openai-compatible keys the baseUrl is also returned.",inputSchema:Gd.object({keyId:Gd.string()}),outputSchema:Gd.object({label:Gd.string(),maskedKey:Gd.string(),baseUrl:Gd.string().optional()}),handler:async($,Z)=>{o(Z);let Q=t(Z);return await Z.access.check(),Z.storage.aiProviderKeys.getPreview($.keyId,Q.id)}})});import iW from"zod";var xF1;var Uo$=D(()=>{M0();fB();Em();xF1=h({name:"AI_PROVIDER_KEY_LIST",description:"List stored AI provider API keys. Returns metadata only \u2014 secrets are never exposed.",annotations:{readOnlyHint:!0,idempotentHint:!0},inputSchema:iW.object({providerId:iW.enum(TJ0).optional()}),outputSchema:iW.object({keys:iW.array(iW.object({id:iW.string(),providerId:iW.string(),label:iW.string(),presetId:iW.string().nullable(),createdBy:iW.string(),createdAt:iW.string()}))}),handler:async($,Z)=>{o(Z);let Q=t(Z);await Z.access.check();let[X,Y]=await Promise.all([Z.storage.aiProviderKeys.list({organizationId:Q.id,providerId:$.providerId}),hW(Z.db,Q.id,Q.role??Z.auth.user?.role)]);return{keys:X.filter((K)=>im$(Y,K.id)).map(({organizationId:K,...W})=>W)}}})});import{createHash as RF6,randomBytes as qF6}from"crypto";function No$(){return qF6(32).toString("base64url")}function Bo$($){return RF6("sha256").update($).digest("base64url")}var Oo$=()=>{};import Kd from"zod";function Do$($){return $==="localhost"||$.endsWith(".localhost")||$==="127.0.0.1"||$==="[::1]"||$==="::1"}function IF6($){let Z=k0(),Q=Z.baseUrl??`http://localhost:${Z.port}`,X=new URL($),Y=new URL(Q);if(X.origin===Y.origin)return!0;return X.protocol===Y.protocol&&Do$(X.hostname)&&Do$(Y.hostname)}var fF1;var Lo$=D(()=>{M0();fB();vB();Oo$();A$();fF1=h({name:"AI_PROVIDER_OAUTH_URL",description:"Get the OAuth PKCE authorization URL for a provider. Returns URL and state token.",inputSchema:Kd.object({providerId:Kd.enum(MQ),callbackUrl:Kd.string().url().refine(($)=>{return IF6($)},{message:"callbackUrl must be on the same origin as BASE_URL"})}),outputSchema:Kd.object({url:Kd.string(),stateToken:Kd.string().describe("Opaque token \u2014 pass to AI_PROVIDER_OAUTH_EXCHANGE")}),handler:async($,Z)=>{o(Z);let Q=t(Z);await Z.access.check();let X=XQ()[$.providerId];if(!X)throw Error(`Unknown provider: ${$.providerId}`);if(!X.supportedMethods.includes("oauth-pkce")||!X.getOAuthUrl)throw Error(`Provider ${$.providerId} does not support OAuth PKCE`);let Y=No$(),J=Bo$(Y),G=await Z.storage.oauthPkceStates.create(Y,Q.id,Z.auth.user.id),K=new URL($.callbackUrl);K.searchParams.set("state",G);let W={callbackUrl:K.toString(),codeChallenge:J,codeChallengeMethod:"S256",organizationId:Q.id};return{url:X.getOAuthUrl(W),stateToken:G}}})});import R$0 from"zod";var bF1;var wo$=D(()=>{M0();fB();vB();T$0();bF1=h({name:"AI_PROVIDER_OAUTH_EXCHANGE",description:"Exchange an OAuth authorization code for an API key. Completes the OAuth flow started by AI_PROVIDER_OAUTH_URL.",inputSchema:R$0.object({providerId:R$0.enum(MQ),code:R$0.string(),stateToken:R$0.string().describe("The stateToken returned by AI_PROVIDER_OAUTH_URL"),label:R$0.string().min(1).max(100)}),outputSchema:Nb,handler:async($,Z)=>{o(Z);let Q=t(Z);await Z.access.check();let X=XQ()[$.providerId];if(!X)throw Error(`Unknown provider: ${$.providerId}`);if(!X.supportedMethods.includes("oauth-pkce")||!X.exchangeOAuthCode)throw Error(`Provider ${$.providerId} does not support OAuth PKCE`);let Y=o0(Z);if(!Y)throw Error("Unable to determine user ID");let J=await Z.storage.oauthPkceStates.consume($.stateToken,Q.id,Y),{apiKey:G}=await X.exchangeOAuthCode({code:$.code,codeVerifier:J,codeChallengeMethod:"S256"}),K=await Z.storage.aiProviderKeys.upsert({providerId:$.providerId,label:$.label,apiKey:G,organizationId:Q.id,createdBy:Y});return{id:K.id,providerId:K.providerId,label:K.label,presetId:K.presetId,createdAt:K.createdAt}}})});import jo$ from"zod";var yF1;var Eo$=D(()=>{M0();fB();vB();zD();T$0();yF1=h({name:"AI_PROVIDER_PROVISION_KEY",description:"Auto-provision an API key for a provider that supports server-to-server key creation (e.g. Deco AI Gateway).",inputSchema:jo$.object({providerId:jo$.enum(MQ)}),outputSchema:Nb,handler:async($,Z)=>{o(Z);let Q=t(Z);await Z.access.check();let X=o0(Z);if(!X)throw Error("Unable to determine user ID");let Y=XQ()[$.providerId];if(!Y)throw Error(`Unknown provider: ${$.providerId}`);if(!Y.provisionKey)throw Error(`Provider ${$.providerId} does not support key provisioning`);let J=await SH(X),G=await Y.provisionKey(J,Q.id),K=await Z.storage.aiProviderKeys.upsert({providerId:$.providerId,label:"Auto-provisioned",apiKey:G,organizationId:Q.id,createdBy:X});return{id:K.id,providerId:K.providerId,label:K.label,presetId:K.presetId,createdAt:K.createdAt}}})});function gF1(){let $=k0();return $.aiGatewayEnabled&&!!$.aiGatewayAdminToken}async function MF6($,Z,Q){let X=k0(),Y=await fetch(`${X.aiGatewayUrl}${$}`,{method:"POST",headers:{Authorization:`Bearer ${X.aiGatewayAdminToken}`,"Content-Type":"application/json"},body:JSON.stringify(Z),signal:AbortSignal.timeout(15000)});if(!Y.ok){let J=await Y.text().catch(()=>"");throw Error(`${Q} failed (${Y.status}): ${J}`)}}async function zo$($){if(!gF1())throw Error("gateway admin not configured \u2014 cannot credit top-up");await MF6("/api/admin/credits",{orgId:$.organizationId,amountCents:$.amountCents,description:"Studio credit top-up (Stripe)",referenceId:$.referenceId},"gateway top-up credit")}var hF1=D(()=>{A$()});import Wd from"zod";var VF6=1e6,uF1;var Po$=D(()=>{hF1();$A();E5();A$();M0();fB();vB();zD();uF1=h({name:"AI_PROVIDER_TOPUP_URL",description:"Get a checkout URL to top up credits for a provider that supports it (e.g. Deco AI Gateway)",inputSchema:Wd.object({providerId:Wd.enum(MQ),amountCents:Wd.number().int().positive().max(VF6).describe("Amount in cents (e.g. 1000 = $10.00), max $10,000.00"),currency:Wd.enum(["usd","brl"]).default("usd")}),outputSchema:Wd.object({url:Wd.string().describe("Checkout URL \u2014 open in browser to complete payment")}),handler:async($,Z)=>{o(Z);let Q=t(Z);await Z.access.check();let X=o0(Z);if(!X)throw Error("Unable to determine user ID");let Y=k0();if($.providerId==="deco"&&Y.stripeSecretKey&&gF1()&&Q.slug){let W=await Z.storage.organizationBilling.getBilling(Q.id),H=`${j5()}${CL(Q.slug)}`,{url:F}=await wP$({organizationId:Q.id,amountCents:$.amountCents,currency:$.currency,feePercent:Y.topupFeePercent,customerId:W?.stripeCustomerId??null,successUrl:`${H}?topup=success`,cancelUrl:`${H}?topup=canceled`});return{url:F}}let J=XQ()[$.providerId];if(!J)throw Error(`Unknown provider: ${$.providerId}`);if(!J.getTopUpUrl)throw Error(`Provider ${$.providerId} does not support credit top-ups`);let G=await SH(X,Z.auth.user?.email);return{url:await J.getTopUpUrl(G,Q.id,$.amountCents,$.currency)}}})});import mM0 from"zod";function kF6($){return Number.isFinite($)}var lF1;var Ao$=D(()=>{M0();fB();vB();zD();lF1=h({name:"AI_PROVIDER_CREDITS",description:"Get the current credit balance for a provider (providers that support it, e.g. Deco AI Gateway)",inputSchema:mM0.object({providerId:mM0.enum(MQ)}),outputSchema:mM0.object({balanceCents:mM0.number().describe("Remaining balance in cents (e.g. 1000 = $10.00)")}),handler:async($,Z)=>{o(Z);let Q=t(Z);await Z.access.check();let X=o0(Z);if(!X)throw Error("Unable to determine user ID");let Y=XQ()[$.providerId];if(!Y)throw Error(`Unknown provider: ${$.providerId}`);if(!Y.getCreditsBalance)throw Error(`Provider ${$.providerId} does not expose a credits balance`);let J=await SH(X),G=await Y.getCreditsBalance(J,Q.id);if(!kF6(G.balanceCents))throw console.error(`AI provider "${$.providerId}" returned a non-finite credits balance for org ${Q.id}: ${G.balanceCents}`),Error(`Provider ${$.providerId} returned an invalid credits balance`);return G}})});var To$=D(()=>{Jo$();Go$();Ko$();T$0();Wo$();Ho$();Fo$();Uo$();Lo$();wo$();Eo$();Po$();Ao$()});import Lj from"zod";function _F6($){let Z=$.trim();if(Z.startsWith(CF6))throw Error("That looks like a Console API key, which bills per-token API usage instead of your subscription. Run `claude setup-token` and paste the token it prints.");if(/\s/.test(Z))throw Error("The token must not contain spaces or line breaks");if(Z.length===0)throw Error("The token must not be empty");return Z}var cF1,CF6="sk-ant-api",Ro$,qo$,Io$;var Mo$=D(()=>{M0();cF1=Lj.object({connected:Lj.boolean(),linkedAt:Lj.string().nullable(),expiresAt:Lj.string().nullable().describe("Known expiry, or null when the token carries none we can read")});Ro$=h({name:"CLAUDE_SUBSCRIPTION_CONNECT",description:"Link the caller's Claude subscription with a token from `claude setup-token`, so their claude-code runs bill against their own Pro/Max plan. Stored encrypted, for the caller only.",inputSchema:Lj.object({token:Lj.string().min(1).describe("The token printed by `claude setup-token` (sk-ant-oat\u2026)")}),outputSchema:cF1,handler:async($,Z)=>{o(Z),t(Z),await Z.access.check();let Q=o0(Z);if(!Q)throw Error("Unable to determine user ID");let X=_F6($.token);return{connected:!0,...await Z.storage.claudeSubscriptions.upsert({userId:Q,accessToken:X})}}}),qo$=h({name:"CLAUDE_SUBSCRIPTION_STATUS",description:"Whether the caller has a linked Claude subscription token, and since when.",inputSchema:Lj.object({}),outputSchema:cF1,handler:async($,Z)=>{o(Z),t(Z),await Z.access.check();let Q=o0(Z);if(!Q)throw Error("Unable to determine user ID");let X=await Z.storage.claudeSubscriptions.find(Q);if(!X)return{connected:!1,linkedAt:null,expiresAt:null};return{connected:!(X.expiresAt!==null&&new Date(X.expiresAt)<=new Date),...X}}}),Io$=h({name:"CLAUDE_SUBSCRIPTION_DISCONNECT",description:"Unlink the caller's Claude subscription and delete the stored token.",inputSchema:Lj.object({}),outputSchema:cF1,handler:async($,Z)=>{o(Z),t(Z),await Z.access.check();let Q=o0(Z);if(!Q)throw Error("Unable to determine user ID");return await Z.storage.claudeSubscriptions.delete(Q),{connected:!1,linkedAt:null,expiresAt:null}}})});import XU from"zod";var dM0;var mF1=D(()=>{dM0=XU.object({id:XU.string(),scope:XU.enum(["user","organization"]),userId:XU.string().nullable(),name:XU.string(),description:XU.string().nullable(),createdBy:XU.string(),createdAt:XU.string(),updatedBy:XU.string(),updatedAt:XU.string()})});import q$0 from"zod";var xF6=65536,dF1;var Vo$=D(()=>{M0();mF1();dF1=h({name:"SECRET_CREATE",description:"Create a secret. The value is encrypted at rest in the credential vault and never returned by any tool. Scope 'user' is private to the caller within this organization; scope 'organization' is visible to all org members.",inputSchema:q$0.object({scope:q$0.enum(["user","organization"]),name:q$0.string().min(1).max(128).regex(/^[A-Za-z0-9_.-]+$/,{message:"Name may only contain letters, digits, underscore, dot, and hyphen."}),value:q$0.string().min(1).max(xF6),description:q$0.string().max(500).optional()}),outputSchema:dM0,handler:async($,Z)=>{o(Z);let Q=t(Z);await Z.access.check();let X=Z.auth.user.id,Y=$.scope==="user"?{kind:"user",userId:X}:{kind:"organization"};return await Z.storage.secrets.create({organizationId:Q.id,scope:Y,name:$.name,value:$.value,description:$.description??null,createdBy:X})}})});import iM0 from"zod";var iF1;var ko$=D(()=>{M0();mF1();iF1=h({name:"SECRET_LIST",description:"List secrets visible to the caller: all organization-scoped secrets, plus user-scoped secrets owned by the caller. Values are never returned.",annotations:{readOnlyHint:!0,idempotentHint:!0},inputSchema:iM0.object({scope:iM0.enum(["user","organization"]).optional()}),outputSchema:iM0.object({secrets:iM0.array(dM0)}),handler:async($,Z)=>{o(Z);let Q=t(Z);await Z.access.check();let X=Z.auth.user.id,Y=$.scope==="user"?{kind:"user",userId:X}:$.scope==="organization"?{kind:"organization"}:void 0;return{secrets:await Z.storage.secrets.list({organizationId:Q.id,callerUserId:X,scope:Y})}}})});var So$=D(()=>{Vo$();ko$()});var Bb=v((lF6)=>{var pF1;(function($){$.HEADER="header",$.QUERY="query"})(pF1||(pF1={}));var nF1;(function($){$.HEADER="header",$.QUERY="query"})(nF1||(nF1={}));var tF1;(function($){$.HTTP="http",$.HTTPS="https"})(tF1||(tF1={}));var I$0;(function($){$.MD5="md5",$.CRC32="crc32",$.CRC32C="crc32c",$.SHA1="sha1",$.SHA256="sha256"})(I$0||(I$0={}));var bF6=($)=>{let Z=[];if($.sha256!==void 0)Z.push({algorithmId:()=>I$0.SHA256,checksumConstructor:()=>$.sha256});if($.md5!=null)Z.push({algorithmId:()=>I$0.MD5,checksumConstructor:()=>$.md5});return{addChecksumAlgorithm(Q){Z.push(Q)},checksumAlgorithms(){return Z}}},yF6=($)=>{let Z={};return $.checksumAlgorithms().forEach((Q)=>{Z[Q.algorithmId()]=Q.checksumConstructor()}),Z},gF6=($)=>{return bF6($)},hF6=($)=>{return yF6($)},oF1;(function($){$[$.HEADER=0]="HEADER",$[$.TRAILER=1]="TRAILER"})(oF1||(oF1={}));var uF6="__smithy_context",rF1;(function($){$.PROFILE="profile",$.SSO_SESSION="sso-session",$.SERVICES="services"})(rF1||(rF1={}));var aF1;(function($){$.HTTP_0_9="http/0.9",$.HTTP_1_0="http/1.0",$.TDS_8_0="tds/8.0"})(aF1||(aF1={}));lF6.AlgorithmId=I$0;lF6.EndpointURLScheme=tF1;lF6.FieldPosition=oF1;lF6.HttpApiKeyAuthLocation=nF1;lF6.HttpAuthLocation=pF1;lF6.IniSectionType=rF1;lF6.RequestHandlerProtocol=aF1;lF6.SMITHY_CONTEXT_KEY=uF6;lF6.getDefaultClientConfiguration=gF6;lF6.resolveDefaultRuntimeConfig=hF6});var YU=v((YU6)=>{var{SMITHY_CONTEXT_KEY:Co$}=Bb(),sF6=($)=>$[Co$]||($[Co$]={});class pM0{method;protocol;hostname;port;path;query;headers;username;password;fragment;body;constructor($){this.method=$.method||"GET",this.hostname=$.hostname||"localhost",this.port=$.port,this.query=$.query||{},this.headers=$.headers||{},this.body=$.body,this.protocol=$.protocol?$.protocol.slice(-1)!==":"?`${$.protocol}:`:$.protocol:"https:",this.path=$.path?$.path.charAt(0)!=="/"?`/${$.path}`:$.path:"/",this.username=$.username,this.password=$.password,this.fragment=$.fragment}static clone($){let Z=new pM0({...$,headers:{...$.headers}});if(Z.query)Z.query=eF6(Z.query);return Z}static isInstance($){if(!$)return!1;let Z=$;return"method"in Z&&"protocol"in Z&&"hostname"in Z&&"path"in Z&&typeof Z.query==="object"&&typeof Z.headers==="object"}clone(){return pM0.clone(this)}}function eF6($){return Object.keys($).reduce((Z,Q)=>{let X=$[Q];return{...Z,[Q]:Array.isArray(X)?[...X]:X}},{})}class _o${statusCode;reason;headers;body;constructor($){this.statusCode=$.statusCode,this.reason=$.reason,this.headers=$.headers||{},this.body=$.body}static isInstance($){if(!$)return!1;let Z=$;return typeof Z.statusCode==="number"&&typeof Z.headers==="object"}}var $U6=new RegExp("^(?!.*-$)(?!-)[a-zA-Z0-9-]{1,63}$"),vo$=($,Z=!1)=>{if(!Z)return $U6.test($);let Q=$.split(".");for(let X of Q)if(!vo$(X))return!1;return!0};function ZU6($){return/^[a-z0-9][a-z0-9\.\-]*[a-z0-9]$/.test($)}var QU6=($)=>{if(typeof $==="function")return $;let Z=Promise.resolve($);return()=>Z};function xo$($){let Z={};if($=$.replace(/^\?/,""),$)for(let Q of $.split("&")){let[X,Y=null]=Q.split("=");if(X=decodeURIComponent(X),Y)Y=decodeURIComponent(Y);if(!(X in Z))Z[X]=Y;else if(Array.isArray(Z[X]))Z[X].push(Y);else Z[X]=[Z[X],Y]}return Z}var nM0=($)=>{if(typeof $==="string")return nM0(new URL($));let{hostname:Z,pathname:Q,port:X,protocol:Y,search:J}=$,G;if(J)G=xo$(J);return{hostname:Z,port:X?parseInt(X):void 0,protocol:Y,path:Q,query:G}},XU6=($)=>{if(typeof $==="object"){if("url"in $){let Z=nM0($.url);if($.headers){Z.headers={};for(let Q in $.headers)Z.headers[Q.toLowerCase()]=$.headers[Q].join(", ")}return Z}return $}return nM0($)};YU6.HttpRequest=pM0;YU6.HttpResponse=_o$;YU6.getSmithyContext=sF6;YU6.isValidHostLabel=vo$;YU6.isValidHostname=ZU6;YU6.normalizeProvider=QU6;YU6.parseQueryString=xo$;YU6.parseUrl=nM0;YU6.toEndpointV1=XU6});var pW=v((MU6)=>{var{getSmithyContext:fo$,HttpResponse:OU6,toEndpointV1:DU6}=YU(),tM0=($)=>{if(typeof $==="function")return $();return $},$U1=($,Z,Q,X,Y)=>({name:Z,namespace:$,traits:Q,input:X,output:Y}),LU6=($)=>(Z,Q)=>async(X)=>{let{response:Y}=await Z(X),{operationSchema:J}=fo$(Q),[,G,K,W,H,F]=J??[];try{let U=await $.protocol.deserializeResponse($U1(G,K,W,H,F),{...$,...Q},Y);return{response:Y,output:U}}catch(U){if(Object.defineProperty(U,"$response",{value:Y,enumerable:!1,writable:!1,configurable:!1}),!("$metadata"in U)){try{U.message+=`
|
|
3545
3545
|
Deserialization error: to see the raw response, inspect the hidden field {error}.$response on this object.`}catch(B){if(!Q.logger||Q.logger?.constructor?.name==="NoOpLogger")console.warn("Deserialization error: to see the raw response, inspect the hidden field {error}.$response on this object.");else Q.logger?.warn?.("Deserialization error: to see the raw response, inspect the hidden field {error}.$response on this object.")}if(typeof U.$responseBodyText<"u"){if(U.$response)U.$response.body=U.$responseBodyText}try{if(OU6.isInstance(Y)){let{headers:B={},statusCode:O}=Y,L=Object.entries(B);U.$metadata={httpStatusCode:O,requestId:sF1(/^x-[\w-]+-request-?id$/,L),extendedRequestId:sF1(/^x-[\w-]+-id-2$/,L),cfId:sF1(/^x-[\w-]+-cf-id$/,L)}}}catch(B){}}throw U}},sF1=($,Z)=>{return(Z.find(([Q])=>{return Q.match($)})||[void 0,void 0])[1]},wU6=($)=>(Z,Q)=>async(X)=>{let{operationSchema:Y}=fo$(Q),[,J,G,K,W,H]=Y??[],F=Q.endpointV2?async()=>DU6(Q.endpointV2):$.endpoint,U=await $.protocol.serializeRequest($U1(J,G,K,W,H),X.input,{...$,...Q,endpoint:F});return Z({...X,request:U})},bo$={name:"deserializerMiddleware",step:"deserialize",tags:["DESERIALIZER"],override:!0},yo$={name:"serializerMiddleware",step:"serialize",tags:["SERIALIZER"],override:!0};function jU6($){return{applyToStack:(Z)=>{Z.add(wU6($),yo$),Z.add(LU6($),bo$),$.protocol.setSerdeContext($)}}}class FJ{name;namespace;traits;static assign($,Z){return Object.assign($,Z)}static[Symbol.hasInstance]($){let Z=this.prototype.isPrototypeOf($);if(!Z&&typeof $==="object"&&$!==null)return $.symbol===this.symbol;return Z}getName(){return this.namespace+"#"+this.name}}class sM0 extends FJ{static symbol=Symbol.for("@smithy/lis");name;traits;valueSchema;symbol=sM0.symbol}var EU6=($,Z,Q,X)=>FJ.assign(new sM0,{name:Z,namespace:$,traits:Q,valueSchema:X});class eM0 extends FJ{static symbol=Symbol.for("@smithy/map");name;traits;keySchema;valueSchema;symbol=eM0.symbol}var zU6=($,Z,Q,X,Y)=>FJ.assign(new eM0,{name:Z,namespace:$,traits:Q,keySchema:X,valueSchema:Y});class $V0 extends FJ{static symbol=Symbol.for("@smithy/ope");name;traits;input;output;symbol=$V0.symbol}var PU6=($,Z,Q,X,Y)=>FJ.assign(new $V0,{name:Z,namespace:$,traits:Q,input:X,output:Y});class S$0 extends FJ{static symbol=Symbol.for("@smithy/str");name;traits;memberNames;memberList;symbol=S$0.symbol}var AU6=($,Z,Q,X,Y)=>FJ.assign(new S$0,{name:Z,namespace:$,traits:Q,memberNames:X,memberList:Y});class ZV0 extends S$0{static symbol=Symbol.for("@smithy/err");ctor;symbol=ZV0.symbol}var TU6=($,Z,Q,X,Y,J)=>FJ.assign(new ZV0,{name:Z,namespace:$,traits:Q,memberNames:X,memberList:Y,ctor:null}),oM0=[];function k$0($){if(typeof $==="object")return $;if($=$|0,oM0[$])return oM0[$];let Z={},Q=0;for(let X of["httpLabel","idempotent","idempotencyToken","sensitive","httpPayload","httpResponseCode","httpQueryParams"])if(($>>Q++&1)===1)Z[X]=1;return oM0[$]=Z}var M$0={it:Symbol.for("@smithy/nor-struct-it"),ns:Symbol.for("@smithy/ns")},rM0=[],aM0={};class yB{ref;memberName;static symbol=Symbol.for("@smithy/nor");symbol=yB.symbol;name;schema;_isMemberSchema;traits;memberTraits;normalizedTraits;constructor($,Z){this.ref=$,this.memberName=Z;let Q=[],X=$,Y=$;this._isMemberSchema=!1;while(eF1(X))Q.push(X[1]),X=X[0],Y=tM0(X),this._isMemberSchema=!0;if(Q.length>0){this.memberTraits={};for(let J=Q.length-1;J>=0;--J){let G=Q[J];Object.assign(this.memberTraits,k$0(G))}}else this.memberTraits=0;if(Y instanceof yB){let J=this.memberTraits;Object.assign(this,Y),this.memberTraits=Object.assign({},J,Y.getMemberTraits(),this.getMemberTraits()),this.normalizedTraits=void 0,this.memberName=Z??Y.memberName;return}if(this.schema=tM0(Y),go$(this.schema))this.name=`${this.schema[1]}#${this.schema[2]}`,this.traits=this.schema[3];else this.name=this.memberName??String(Y),this.traits=0;if(this._isMemberSchema&&!Z)throw Error(`@smithy/core/schema - NormalizedSchema member init ${this.getName(!0)} missing member name.`)}static[Symbol.hasInstance]($){let Z=this.prototype.isPrototypeOf($);if(!Z&&typeof $==="object"&&$!==null)return $.symbol===this.symbol;return Z}static of($){let Z=typeof $==="function"||typeof $==="object"&&$!==null;if(typeof $==="number"){if(rM0[$])return rM0[$]}else if(typeof $==="string"){if(aM0[$])return aM0[$]}else if(Z){if($[M$0.ns])return $[M$0.ns]}let Q=tM0($);if(Q instanceof yB)return Q;if(eF1(Q)){let[Y,J]=Q;if(Y instanceof yB)return Object.assign(Y.getMergedTraits(),k$0(J)),Y;throw Error(`@smithy/core/schema - may not init unwrapped member schema=${JSON.stringify($,null,2)}.`)}let X=new yB(Q);if(Z)return $[M$0.ns]=X;if(typeof Q==="string")return aM0[Q]=X;if(typeof Q==="number")return rM0[Q]=X;return X}getSchema(){let $=this.schema;if(Array.isArray($)&&$[0]===0)return $[4];return $}getName($=!1){let{name:Z}=this;return!$&&Z&&Z.includes("#")?Z.split("#")[1]:Z||void 0}getMemberName(){return this.memberName}isMemberSchema(){return this._isMemberSchema}isListSchema(){let $=this.getSchema();return typeof $==="number"?$>=64&&$<128:$[0]===1}isMapSchema(){let $=this.getSchema();return typeof $==="number"?$>=128&&$<=255:$[0]===2}isStructSchema(){let $=this.getSchema();if(typeof $!=="object")return!1;let Z=$[0];return Z===3||Z===-3||Z===4}isUnionSchema(){let $=this.getSchema();if(typeof $!=="object")return!1;return $[0]===4}isBlobSchema(){let $=this.getSchema();return $===21||$===42}isTimestampSchema(){let $=this.getSchema();return typeof $==="number"&&$>=4&&$<=7}isUnitSchema(){return this.getSchema()==="unit"}isDocumentSchema(){return this.getSchema()===15}isStringSchema(){return this.getSchema()===0}isBooleanSchema(){return this.getSchema()===2}isNumericSchema(){return this.getSchema()===1}isBigIntegerSchema(){return this.getSchema()===17}isBigDecimalSchema(){return this.getSchema()===19}isStreaming(){let{streaming:$}=this.getMergedTraits();return!!$||this.getSchema()===42}isIdempotencyToken(){return!!this.getMergedTraits().idempotencyToken}getMergedTraits(){return this.normalizedTraits??(this.normalizedTraits={...this.getOwnTraits(),...this.getMemberTraits()})}getMemberTraits(){return k$0(this.memberTraits)}getOwnTraits(){return k$0(this.traits)}getKeySchema(){let[$,Z]=[this.isDocumentSchema(),this.isMapSchema()];if(!$&&!Z)throw Error(`@smithy/core/schema - cannot get key for non-map: ${this.getName(!0)}`);let Q=this.getSchema(),X=$?15:Q[4]??0;return V$0([X,0],"key")}getValueSchema(){let $=this.getSchema(),[Z,Q,X]=[this.isDocumentSchema(),this.isMapSchema(),this.isListSchema()],Y=typeof $==="number"?63&$:$&&typeof $==="object"&&(Q||X)?$[3+$[0]]:Z?15:void 0;if(Y!=null)return V$0([Y,0],Q?"value":"member");throw Error(`@smithy/core/schema - ${this.getName(!0)} has no value member.`)}getMemberSchema($){let Z=this.getSchema();if(this.isStructSchema()&&Z[4].includes($)){let Q=Z[4].indexOf($),X=Z[5][Q];return V$0(eF1(X)?X:[X,0],$)}if(this.isDocumentSchema())return V$0([15,0],$);throw Error(`@smithy/core/schema - ${this.getName(!0)} has no member=${$}.`)}getMemberSchemas(){let $={};try{for(let[Z,Q]of this.structIterator())$[Z]=Q}catch(Z){}return $}getEventStreamMember(){if(this.isStructSchema()){for(let[$,Z]of this.structIterator())if(Z.isStreaming()&&Z.isStructSchema())return $}return""}*structIterator(){if(this.isUnitSchema())return;if(!this.isStructSchema())throw Error("@smithy/core/schema - cannot iterate non-struct schema.");let $=this.getSchema(),Z=$[4].length,Q=$[M$0.it];if(Q&&Z===Q.length){yield*Q;return}Q=Array(Z);for(let X=0;X<Z;++X){let Y=$[4][X],J=V$0([$[5][X],0],Y);yield Q[X]=[Y,J]}$[M$0.it]=Q}}function V$0($,Z){if($ instanceof yB)return Object.assign($,{memberName:Z,_isMemberSchema:!0});return new yB($,Z)}var eF1=($)=>Array.isArray($)&&$.length===2,go$=($)=>Array.isArray($)&&$.length>=5;class C$0 extends FJ{static symbol=Symbol.for("@smithy/sim");name;schemaRef;traits;symbol=C$0.symbol}var RU6=($,Z,Q,X)=>FJ.assign(new C$0,{name:Z,namespace:$,traits:X,schemaRef:Q}),qU6=($,Z,Q,X)=>FJ.assign(new C$0,{name:Z,namespace:$,traits:Q,schemaRef:X}),IU6={BLOB:21,STREAMING_BLOB:42,BOOLEAN:2,STRING:0,NUMERIC:1,BIG_INTEGER:17,BIG_DECIMAL:19,DOCUMENT:15,TIMESTAMP_DEFAULT:4,TIMESTAMP_DATE_TIME:5,TIMESTAMP_HTTP_DATE:6,TIMESTAMP_EPOCH_SECONDS:7,LIST_MODIFIER:64,MAP_MODIFIER:128};class bB{namespace;schemas;exceptions;static registries=new Map;constructor($,Z=new Map,Q=new Map){this.namespace=$,this.schemas=Z,this.exceptions=Q}static for($){if(!bB.registries.has($))bB.registries.set($,new bB($));return bB.registries.get($)}copyFrom($){let{schemas:Z,exceptions:Q}=this;for(let[X,Y]of $.schemas)if(!Z.has(X))Z.set(X,Y);for(let[X,Y]of $.exceptions)if(!Q.has(X))Q.set(X,Y)}register($,Z){let Q=this.normalizeShapeId($);for(let X of[this,bB.for(Q.split("#")[0])])X.schemas.set(Q,Z)}getSchema($){let Z=this.normalizeShapeId($);if(!this.schemas.has(Z)){if(!$.includes("#")){let Q="#"+$,X=[];for(let[Y,J]of this.schemas.entries())if(Y.endsWith(Q))X.push(J);if(X.length===1)return X[0]}throw Error(`@smithy/core/schema - schema not found for ${Z}`)}return this.schemas.get(Z)}registerError($,Z){let Q=$,X=Q[1];for(let Y of[this,bB.for(X)])Y.schemas.set(X+"#"+Q[2],Q),Y.exceptions.set(Q,Z)}getErrorCtor($){let Z=$;if(this.exceptions.has(Z))return this.exceptions.get(Z);return bB.for(Z[1]).exceptions.get(Z)}getBaseException(){for(let $ of this.exceptions.keys())if(Array.isArray($)){let[,Z,Q]=$,X=Z+"#"+Q;if(X.startsWith("smithy.ts.sdk.synthetic.")&&X.endsWith("ServiceException"))return $}return}find($){for(let Z of this.schemas.values())if($(Z))return Z;return}clear(){this.schemas.clear(),this.exceptions.clear()}normalizeShapeId($){if($.includes("#"))return $;return this.namespace+"#"+$}}MU6.ErrorSchema=ZV0;MU6.ListSchema=sM0;MU6.MapSchema=eM0;MU6.NormalizedSchema=yB;MU6.OperationSchema=$V0;MU6.SCHEMA=IU6;MU6.Schema=FJ;MU6.SimpleSchema=C$0;MU6.StructureSchema=S$0;MU6.TypeRegistry=bB;MU6.deref=tM0;MU6.deserializerMiddlewareOption=bo$;MU6.error=TU6;MU6.getSchemaSerdePlugin=jU6;MU6.isStaticSchema=go$;MU6.list=EU6;MU6.map=zU6;MU6.op=PU6;MU6.operation=$U1;MU6.serializerMiddlewareOption=yo$;MU6.sim=RU6;MU6.simAdapter=qU6;MU6.simpleSchemaCacheN=rM0;MU6.simpleSchemaCacheS=aM0;MU6.struct=AU6;MU6.traitsCache=oM0;MU6.translateTraits=k$0});var O5=v((vN6)=>{var{getSmithyContext:ZN6,normalizeProvider:QN6}=YU();vN6.getSmithyContext=ZN6;vN6.normalizeProvider=QN6;var{SMITHY_CONTEXT_KEY:XN6,AlgorithmId:XV0}=Bb();vN6.AlgorithmId=XV0;var{NormalizedSchema:YN6}=pW(),Ob=($,Z)=>{let Q=[];if($)Q.push($);if(Z)for(let X of Z)Q.push(X);return Q},wj=($,Z)=>{return`${$||"anonymous"}${Z&&Z.length>0?` (a.k.a. ${Z.join(",")})`:""}`},_$0=()=>{let $=[],Z=[],Q=!1,X=new Set,Y=(U)=>U.sort((N,B)=>ho$[B.step]-ho$[N.step]||uo$[B.priority||"normal"]-uo$[N.priority||"normal"]),J=(U)=>{let N=!1,B=(O)=>{let L=Ob(O.name,O.aliases);if(L.includes(U)){N=!0;for(let w of L)X.delete(w);return!1}return!0};return $=$.filter(B),Z=Z.filter(B),N},G=(U)=>{let N=!1,B=(O)=>{if(O.middleware===U){N=!0;for(let L of Ob(O.name,O.aliases))X.delete(L);return!1}return!0};return $=$.filter(B),Z=Z.filter(B),N},K=(U)=>{return $.forEach((N)=>{U.add(N.middleware,{...N})}),Z.forEach((N)=>{U.addRelativeTo(N.middleware,{...N})}),U.identifyOnResolve?.(F.identifyOnResolve()),U},W=(U)=>{let N=[];return U.before.forEach((B)=>{if(B.before.length===0&&B.after.length===0)N.push(B);else N.push(...W(B))}),N.push(U),U.after.reverse().forEach((B)=>{if(B.before.length===0&&B.after.length===0)N.push(B);else N.push(...W(B))}),N},H=(U=!1)=>{let N=[],B=[],O={};return $.forEach((w)=>{let j={...w,before:[],after:[]};for(let E of Ob(j.name,j.aliases))O[E]=j;N.push(j)}),Z.forEach((w)=>{let j={...w,before:[],after:[]};for(let E of Ob(j.name,j.aliases))O[E]=j;B.push(j)}),B.forEach((w)=>{if(w.toMiddleware){let j=O[w.toMiddleware];if(j===void 0){if(U)return;throw Error(`${w.toMiddleware} is not found when adding ${wj(w.name,w.aliases)} middleware ${w.relation} ${w.toMiddleware}`)}if(w.relation==="after")j.after.push(w);if(w.relation==="before")j.before.push(w)}}),Y(N).map(W).reduce((w,j)=>{return w.push(...j),w},[])},F={add:(U,N={})=>{let{name:B,override:O,aliases:L}=N,w={step:"initialize",priority:"normal",middleware:U,...N},j=Ob(B,L);if(j.length>0){if(j.some((E)=>X.has(E))){if(!O)throw Error(`Duplicate middleware name '${wj(B,L)}'`);for(let E of j){let z=$.findIndex((A)=>A.name===E||A.aliases?.some((q)=>q===E));if(z===-1)continue;let P=$[z];if(P.step!==w.step||w.priority!==P.priority)throw Error(`"${wj(P.name,P.aliases)}" middleware with ${P.priority} priority in ${P.step} step cannot be overridden by "${wj(B,L)}" middleware with ${w.priority} priority in ${w.step} step.`);$.splice(z,1)}}for(let E of j)X.add(E)}$.push(w)},addRelativeTo:(U,N)=>{let{name:B,override:O,aliases:L}=N,w={middleware:U,...N},j=Ob(B,L);if(j.length>0){if(j.some((E)=>X.has(E))){if(!O)throw Error(`Duplicate middleware name '${wj(B,L)}'`);for(let E of j){let z=Z.findIndex((A)=>A.name===E||A.aliases?.some((q)=>q===E));if(z===-1)continue;let P=Z[z];if(P.toMiddleware!==w.toMiddleware||P.relation!==w.relation)throw Error(`"${wj(P.name,P.aliases)}" middleware ${P.relation} "${P.toMiddleware}" middleware cannot be overridden by "${wj(B,L)}" middleware ${w.relation} "${w.toMiddleware}" middleware.`);Z.splice(z,1)}}for(let E of j)X.add(E)}Z.push(w)},clone:()=>K(_$0()),use:(U)=>{U.applyToStack(F)},remove:(U)=>{if(typeof U==="string")return J(U);else return G(U)},removeByTag:(U)=>{let N=!1,B=(O)=>{let{tags:L,name:w,aliases:j}=O;if(L&&L.includes(U)){let E=Ob(w,j);for(let z of E)X.delete(z);return N=!0,!1}return!0};return $=$.filter(B),Z=Z.filter(B),N},concat:(U)=>{let N=K(_$0());return N.use(U),N.identifyOnResolve(Q||N.identifyOnResolve()||(U.identifyOnResolve?.()??!1)),N},applyToStack:K,identify:()=>{return H(!0).map((U)=>{let N=U.step??U.relation+" "+U.toMiddleware;return wj(U.name,U.aliases)+" - "+N})},identifyOnResolve(U){if(typeof U==="boolean")Q=U;return Q},resolve:(U,N)=>{for(let B of H().map((O)=>O.middleware).reverse())U=B(U,N);if(Q)console.log(F.identify());return U}};return F},ho$={initialize:5,serialize:4,build:3,finalizeRequest:2,deserialize:1},uo$={high:3,normal:2,low:1},JN6=($)=>()=>{throw Error($)},GN6=($)=>()=>Promise.reject($),QV0=()=>{let $=new WeakSet;return(Z,Q)=>{if(typeof Q==="object"&&Q!==null){if($.has(Q))return"[Circular]";$.add(Q)}return Q}},KN6=($)=>{return new Promise((Z)=>setTimeout(Z,$*1000))},mo$={minDelay:2,maxDelay:120},JU;(function($){$.ABORTED="ABORTED",$.FAILURE="FAILURE",$.SUCCESS="SUCCESS",$.RETRY="RETRY",$.TIMEOUT="TIMEOUT"})(JU||(JU={}));var WN6=($)=>{if($.state===JU.ABORTED){let Z=Error(`${JSON.stringify({...$,reason:"Request was aborted"},QV0())}`);throw Z.name="AbortError",Z}else if($.state===JU.TIMEOUT){let Z=Error(`${JSON.stringify({...$,reason:"Waiter has timed out"},QV0())}`);throw Z.name="TimeoutError",Z}else if($.state!==JU.SUCCESS)throw Error(`${JSON.stringify($,QV0())}`);return $},HN6=async({minDelay:$,maxDelay:Z,maxWaitTime:Q,abortController:X,client:Y,abortSignal:J},G,K)=>{let W={},[H,F]=[$*1000,Z*1000],U=0,N=Date.now()+Q*1000,B=Date.now()+60000,O=!1;while(!0){if(U>0){let j=NN6(H,F,U,N);if(X?.signal?.aborted||J?.aborted)return W["AbortController signal aborted."]|=0,W["AbortController signal aborted."]+=1,{state:JU.ABORTED,observedResponses:W};if(Date.now()+j>N)return{state:JU.TIMEOUT,observedResponses:W};await KN6(j/1000)}let{state:L,reason:w}=await K(Y,G);if(w){let j=UN6(w);W[j]|=0,W[j]+=1}if(L!==JU.RETRY)return{state:L,reason:w,final:w,observedResponses:W};if(U+=1,!O&&Date.now()>=B)FN6(W,Y),O=!0}},FN6=($={},Z)=>{let Q=Object.keys($),X=0;for(let G of Q){let K=$[G]|0;if(G.startsWith("403:"))X+=K}let Y=Z?.config?.logger,J=typeof Y?.warn==="function"&&!Y.constructor?.name?.includes?.("NoOpLogger")?Y:console;if(X>=3||Q[Q.length-1]?.startsWith("403:"))J.warn("@smithy/util-waiter WARN - 403 status code encountered during waiter polling.")},UN6=($)=>{let Z=$?.$response?.statusCode??$?.$metadata?.httpStatusCode;if($?.$responseBodyText)return`${Z?Z+": ":""}Deserialization error for body: ${$.$responseBodyText}`;if(Z){if($?.$response||$?.message)return`${Z??"Unknown"}: ${$?.message}`;return`${Z}: OK`}return String($?.message??JSON.stringify($,QV0())??"Unknown")},NN6=($,Z,Q,X)=>{let Y=Math.log(Z/$)/Math.log(2)+1;if(Q>Y)return Z;let J=$*2**(Q-1),G=Math.min(J,Z),K=BN6($,G);if(Date.now()+K>X){let W=X-Date.now();return Math.max(0,W-500)}return K},BN6=($,Z)=>$+Math.random()*(Z-$),ON6=($)=>{if($.maxWaitTime<=0)throw Error("WaiterConfiguration.maxWaitTime must be greater than 0");else if($.minDelay<=0)throw Error("WaiterConfiguration.minDelay must be greater than 0");else if($.maxDelay<=0)throw Error("WaiterConfiguration.maxDelay must be greater than 0");else if($.maxWaitTime<=$.minDelay)throw Error(`WaiterConfiguration.maxWaitTime [${$.maxWaitTime}] must be greater than WaiterConfiguration.minDelay [${$.minDelay}] for this waiter`);else if($.maxDelay<$.minDelay)throw Error(`WaiterConfiguration.maxDelay [${$.maxDelay}] must be greater than WaiterConfiguration.minDelay [${$.minDelay}] for this waiter`)},lo$=($)=>{let Z,Q=new Promise((X)=>{if(Z=()=>X({state:JU.ABORTED}),typeof $.addEventListener==="function")$.addEventListener("abort",Z);else $.onabort=Z});return{clearListener(){if(typeof $.removeEventListener==="function")$.removeEventListener("abort",Z)},aborted:Q}},DN6=async($,Z,Q)=>{let X={...mo$,...$};ON6(X);let Y=[HN6(X,Z,Q)],J=[];if($.abortSignal){let{aborted:G,clearListener:K}=lo$($.abortSignal);J.push(K),Y.push(G)}if($.abortController?.signal){let{aborted:G,clearListener:K}=lo$($.abortController.signal);J.push(K),Y.push(G)}return Promise.race(Y).then((G)=>{for(let K of J)K();return G})};class do${config;middlewareStack=_$0();initConfig;handlers;constructor($){this.config=$;let{protocol:Z,protocolSettings:Q}=$;if(Q){if(typeof Z==="function")$.protocol=new Z(Q)}}send($,Z,Q){let X=typeof Z!=="function"?Z:void 0,Y=typeof Z==="function"?Z:Q,J=X===void 0&&this.config.cacheMiddleware===!0,G;if(J){if(!this.handlers)this.handlers=new WeakMap;let K=this.handlers;if(K.has($.constructor))G=K.get($.constructor);else G=$.resolveMiddleware(this.middlewareStack,this.config,X),K.set($.constructor,G)}else delete this.handlers,G=$.resolveMiddleware(this.middlewareStack,this.config,X);if(Y)G($).then((K)=>Y(null,K.output),(K)=>Y(K)).catch(()=>{});else return G($).then((K)=>K.output)}destroy(){this.config?.requestHandler?.destroy?.(),delete this.handlers}}var ZU1="***SensitiveInformation***";function YV0($,Z){if(Z==null)return Z;let Q=YN6.of($);if(Q.getMergedTraits().sensitive)return ZU1;if(Q.isListSchema()){if(!!Q.getValueSchema().getMergedTraits().sensitive)return ZU1}else if(Q.isMapSchema()){if(!!Q.getKeySchema().getMergedTraits().sensitive||!!Q.getValueSchema().getMergedTraits().sensitive)return ZU1}else if(Q.isStructSchema()&&typeof Z==="object"){let X=Z,Y={};for(let[J,G]of Q.structIterator())if(X[J]!=null)Y[J]=YV0(G,X[J]);return Y}return Z}class XU1{middlewareStack=_$0();schema;static classBuilder(){return new io$}resolveMiddlewareWithContext($,Z,Q,{middlewareFn:X,clientName:Y,commandName:J,inputFilterSensitiveLog:G,outputFilterSensitiveLog:K,smithyContext:W,additionalContext:H,CommandCtor:F}){for(let w of X.bind(this)(F,$,Z,Q))this.middlewareStack.use(w);let U=$.concat(this.middlewareStack),{logger:N}=Z,B={logger:N,clientName:Y,commandName:J,inputFilterSensitiveLog:G,outputFilterSensitiveLog:K,[XN6]:{commandInstance:this,...W},...H},{requestHandler:O}=Z,L=Q??{};if(W.eventStream)L={isEventStream:!0,...L};return U.resolve((w)=>O.handle(w.request,L),B)}}class io${_init=()=>{};_ep={};_middlewareFn=()=>[];_commandName="";_clientName="";_additionalContext={};_smithyContext={};_inputFilterSensitiveLog=void 0;_outputFilterSensitiveLog=void 0;_serializer=null;_deserializer=null;_operationSchema;init($){this._init=$}ep($){return this._ep=$,this}m($){return this._middlewareFn=$,this}s($,Z,Q={}){return this._smithyContext={service:$,operation:Z,...Q},this}c($={}){return this._additionalContext=$,this}n($,Z){return this._clientName=$,this._commandName=Z,this}f($=(Q)=>Q,Z=(Q)=>Q){return this._inputFilterSensitiveLog=$,this._outputFilterSensitiveLog=Z,this}ser($){return this._serializer=$,this}de($){return this._deserializer=$,this}sc($){return this._operationSchema=$,this._smithyContext.operationSchema=$,this}build(){let $=this,Z;return Z=class extends XU1{input;static getEndpointParameterInstructions(){return $._ep}constructor(...[Q]){super();this.input=Q??{},$._init(this),this.schema=$._operationSchema}resolveMiddleware(Q,X,Y){let J=$._operationSchema,G=J?.[4]??J?.input,K=J?.[5]??J?.output;return this.resolveMiddlewareWithContext(Q,X,Y,{CommandCtor:Z,middlewareFn:$._middlewareFn,clientName:$._clientName,commandName:$._commandName,inputFilterSensitiveLog:$._inputFilterSensitiveLog??(J?YV0.bind(null,G):(W)=>W),outputFilterSensitiveLog:$._outputFilterSensitiveLog??(J?YV0.bind(null,K):(W)=>W),smithyContext:$._smithyContext,additionalContext:$._additionalContext})}serialize=$._serializer;deserialize=$._deserializer}}}var LN6="***SensitiveInformation***",wN6=($,Z,Q)=>{for(let[J,G]of Object.entries($)){let K=async function(H,F,U){let N=new G(H);if(typeof F==="function")this.send(N,F);else if(typeof U==="function"){if(typeof F!=="object")throw Error(`Expected http options but got ${typeof F}`);this.send(N,F||{},U)}else return this.send(N,F)},W=(J[0].toLowerCase()+J.slice(1)).replace(/Command$/,"");Z.prototype[W]=K}let{paginators:X={},waiters:Y={}}=Q??{};for(let[J,G]of Object.entries(X))if(Z.prototype[J]===void 0)Z.prototype[J]=function(K={},W,...H){return G({...W,client:this},K,...H)};for(let[J,G]of Object.entries(Y))if(Z.prototype[J]===void 0)Z.prototype[J]=async function(K={},W,...H){let F=W;if(typeof W==="number")F={maxWaitTime:W};return G({...F,client:this},K,...H)}};class Hd extends Error{$fault;$response;$retryable;$metadata;constructor($){super($.message);Object.setPrototypeOf(this,Object.getPrototypeOf(this).constructor.prototype),this.name=$.name,this.$fault=$.$fault,this.$metadata=$.$metadata}static isInstance($){if(!$)return!1;let Z=$;return Hd.prototype.isPrototypeOf(Z)||Boolean(Z.$fault)&&Boolean(Z.$metadata)&&(Z.$fault==="client"||Z.$fault==="server")}static[Symbol.hasInstance]($){if(!$)return!1;let Z=$;if(this===Hd)return Hd.isInstance($);if(Hd.isInstance($)){if(Z.name&&this.name)return this.prototype.isPrototypeOf($)||Z.name===this.name;return this.prototype.isPrototypeOf($)}return!1}}var po$=($,Z={})=>{Object.entries(Z).filter(([,X])=>X!==void 0).forEach(([X,Y])=>{if($[X]==null||$[X]==="")$[X]=Y});let Q=$.message||$.Message||"UnknownError";return $.message=Q,delete $.Message,$},no$=({output:$,parsedBody:Z,exceptionCtor:Q,errorCode:X})=>{let Y=EN6($),J=Y.httpStatusCode?Y.httpStatusCode+"":void 0,G=new Q({name:Z?.code||Z?.Code||X||J||"UnknownError",$fault:"client",$metadata:Y});throw po$(G,Z)},jN6=($)=>{return({output:Z,parsedBody:Q,errorCode:X})=>{no$({output:Z,parsedBody:Q,exceptionCtor:$,errorCode:X})}},EN6=($)=>({httpStatusCode:$.statusCode,requestId:$.headers["x-amzn-requestid"]??$.headers["x-amzn-request-id"]??$.headers["x-amz-request-id"],extendedRequestId:$.headers["x-amz-id-2"],cfId:$.headers["x-amz-cf-id"]}),zN6=($)=>{switch($){case"standard":return{retryMode:"standard",connectionTimeout:3100};case"in-region":return{retryMode:"standard",connectionTimeout:1100};case"cross-region":return{retryMode:"standard",connectionTimeout:3100};case"mobile":return{retryMode:"standard",connectionTimeout:30000};default:return{}}},co$=!1,PN6=($)=>{if($&&!co$&&parseInt($.substring(1,$.indexOf(".")))<16)co$=!0},to$=Object.values(XV0),oo$=($)=>{let Z=[];for(let Q in XV0){let X=XV0[Q];if($[X]===void 0)continue;Z.push({algorithmId:()=>X,checksumConstructor:()=>$[X]})}for(let[Q,X]of Object.entries($.checksumAlgorithms??{}))Z.push({algorithmId:()=>Q,checksumConstructor:()=>X});return{addChecksumAlgorithm(Q){$.checksumAlgorithms=$.checksumAlgorithms??{};let X=Q.algorithmId(),Y=Q.checksumConstructor();if(to$.includes(X))$.checksumAlgorithms[X.toUpperCase()]=Y;else $.checksumAlgorithms[X]=Y;Z.push(Q)},checksumAlgorithms(){return Z}}},ro$=($)=>{let Z={};return $.checksumAlgorithms().forEach((Q)=>{let X=Q.algorithmId();if(to$.includes(X))Z[X]=Q.checksumConstructor()}),Z},ao$=($)=>{return{setRetryStrategy(Z){$.retryStrategy=Z},retryStrategy(){return $.retryStrategy}}},so$=($)=>{let Z={};return Z.retryStrategy=$.retryStrategy(),Z},eo$=($)=>{return Object.assign(oo$($),ao$($))},AN6=eo$,TN6=($)=>{return Object.assign(ro$($),so$($))},RN6=($)=>Array.isArray($)?$:[$],$r$=($)=>{for(let Q in $)if(Object.prototype.hasOwnProperty.call($,Q)&&$[Q]["#text"]!==void 0)$[Q]=$[Q]["#text"];else if(typeof $[Q]==="object"&&$[Q]!==null)$[Q]=$r$($[Q]);return $},qN6=($)=>{return $!=null};class Zr${trace(){}debug(){}info(){}warn(){}error(){}}function Qr$($,Z,Q){let X,Y,J;if(typeof Z>"u"&&typeof Q>"u")X={},J=$;else if(X=$,typeof Z==="function")return Y=Z,J=Q,VN6(X,Y,J);else J=Z;for(let G of Object.keys(J)){if(!Array.isArray(J[G])){X[G]=J[G];continue}Xr$(X,null,J,G)}return X}var IN6=($)=>{let Z={};for(let[Q,X]of Object.entries($||{}))Z[Q]=[,X];return Z},MN6=($,Z)=>{let Q={};for(let X in Z)Xr$(Q,$,Z,X);return Q},VN6=($,Z,Q)=>{return Qr$($,Object.entries(Q).reduce((X,[Y,J])=>{if(Array.isArray(J))X[Y]=J;else if(typeof J==="function")X[Y]=[Z,J()];else X[Y]=[Z,J];return X},{}))},Xr$=($,Z,Q,X)=>{if(Z!==null){let G=Q[X];if(typeof G==="function")G=[,G];let[K=kN6,W=SN6,H=X]=G;if(typeof K==="function"&&K(Z[H])||typeof K!=="function"&&!!K)$[X]=W(Z[H]);return}let[Y,J]=Q[X];if(typeof J==="function"){let G,K=Y===void 0&&(G=J())!=null,W=typeof Y==="function"&&!!Y(void 0)||typeof Y!=="function"&&!!Y;if(K)$[X]=G;else if(W)$[X]=J()}else{let G=Y===void 0&&J!=null,K=typeof Y==="function"&&!!Y(J)||typeof Y!=="function"&&!!Y;if(G||K)$[X]=J}},kN6=($)=>$!=null,SN6=($)=>$,CN6=($)=>{if($!==$)return"NaN";switch($){case 1/0:return"Infinity";case-1/0:return"-Infinity";default:return $}},_N6=($)=>$.toISOString().replace(".000Z","Z"),QU1=($)=>{if($==null)return{};if(Array.isArray($))return $.filter((Z)=>Z!=null).map(QU1);if(typeof $==="object"){let Z={};for(let Q of Object.keys($)){if($[Q]==null)continue;Z[Q]=QU1($[Q])}return Z}return $};vN6.Client=do$;vN6.Command=XU1;vN6.NoOpLogger=Zr$;vN6.SENSITIVE_STRING=LN6;vN6.ServiceException=Hd;vN6.WaiterState=JU;vN6._json=QU1;vN6.checkExceptions=WN6;vN6.constructStack=_$0;vN6.convertMap=IN6;vN6.createAggregatedClient=wN6;vN6.createWaiter=DN6;vN6.decorateServiceException=po$;vN6.emitWarningIfUnsupportedVersion=PN6;vN6.getArrayIfSingleItem=RN6;vN6.getChecksumConfiguration=oo$;vN6.getDefaultClientConfiguration=AN6;vN6.getDefaultExtensionConfiguration=eo$;vN6.getRetryConfiguration=ao$;vN6.getValueFromTextNode=$r$;vN6.invalidFunction=JN6;vN6.invalidProvider=GN6;vN6.isSerializableHeaderValue=qN6;vN6.loadConfigsForDefaultMode=zN6;vN6.map=Qr$;vN6.resolveChecksumRuntimeConfig=ro$;vN6.resolveDefaultRuntimeConfig=TN6;vN6.resolveRetryRuntimeConfig=so$;vN6.schemaLogFilter=YV0;vN6.serializeDateTime=_N6;vN6.serializeFloat=CN6;vN6.take=MN6;vN6.throwDefaultError=no$;vN6.waiterServiceDefaults=mo$;vN6.withBaseException=jN6});var U4=v((DO6)=>{var{homedir:jB6}=K0("os"),{sep:EB6,join:v$0}=K0("path"),{createHash:zB6}=K0("crypto"),{readFile:Hr$}=K0("fs/promises"),{IniSectionType:JV0}=Bb(),{normalizeProvider:GV0}=O5(),{isValidHostLabel:PB6}=YU();class Fd extends Error{name="ProviderError";tryNextLink;constructor($,Z=!0){let Q,X=!0;if(typeof Z==="boolean")Q=void 0,X=Z;else if(Z!=null&&typeof Z==="object")Q=Z.logger,X=Z.tryNextLink??!0;super($);this.tryNextLink=X,Object.setPrototypeOf(this,Fd.prototype),Q?.debug?.(`@smithy/property-provider ${X?"->":"(!)"} ${$}`)}static from($,Z=!0){return Object.assign(new this($.message,Z),$)}}class x$0 extends Fd{name="CredentialsProviderError";constructor($,Z=!0){super($,Z);Object.setPrototypeOf(this,x$0.prototype)}}class WU1 extends Fd{name="TokenProviderError";constructor($,Z=!0){super($,Z);Object.setPrototypeOf(this,WU1.prototype)}}var Fr$=(...$)=>async()=>{if($.length===0)throw new Fd("No providers in chain");let Z;for(let Q of $)try{return await Q()}catch(X){if(Z=X,X?.tryNextLink)continue;throw X}throw Z},Ur$=($)=>()=>Promise.resolve($),HU1=($,Z,Q)=>{let X,Y,J,G=!1,K=async()=>{if(!Y)Y=$();try{X=await Y,J=!0,G=!1}finally{Y=void 0}return X};if(Z===void 0)return async(W)=>{if(!J||W?.forceRefresh)X=await K();return X};return async(W)=>{if(!J||W?.forceRefresh)X=await K();if(G)return X;if(Q&&!Q(X))return G=!0,X;if(Z(X))return await K(),X;return X}},gB=($,Z,Q)=>{if(!(Z in $))return;if($[Z]==="true")return!0;if($[Z]==="false")return!1;throw Error(`Cannot load ${Q} "${Z}". Expected "true" or "false", got ${$[Z]}.`)},AB6=($,Z,Q)=>{if(!(Z in $))return;let X=parseInt($[Z],10);if(Number.isNaN(X))throw TypeError(`Cannot load ${Q} '${Z}'. Expected number, got '${$[Z]}'.`);return X},nW;(function($){$.ENV="env",$.CONFIG="shared config entry"})(nW||(nW={}));var YU1={},TB6=()=>{if(process&&process.geteuid)return`${process.geteuid()}`;return"DEFAULT"},f$0=()=>{let{HOME:$,USERPROFILE:Z,HOMEPATH:Q,HOMEDRIVE:X=`C:${EB6}`}=process.env;if($)return $;if(Z)return Z;if(Q)return`${X}${Q}`;let Y=TB6();if(!YU1[Y])YU1[Y]=jB6();return YU1[Y]},Nr$="AWS_PROFILE",Br$="default",Or$=($)=>$.profile||process.env[Nr$]||Br$,Dr$=($)=>{let Q=zB6("sha1").update($).digest("hex");return v$0(f$0(),".aws","sso","cache",`${Q}.json`)},KV0={},RB6=async($)=>{if(KV0[$])return KV0[$];let Z=Dr$($),Q=await Hr$(Z,"utf8");return JSON.parse(Q)},Db=".",qB6=($)=>Object.entries($).filter(([Z])=>{let Q=Z.indexOf(Db);if(Q===-1)return!1;return Object.values(JV0).includes(Z.substring(0,Q))}).reduce((Z,[Q,X])=>{let Y=Q.indexOf(Db),J=Q.substring(0,Y)===JV0.PROFILE?Q.substring(Y+1):Q;return Z[J]=X,Z},{...$.default&&{default:$.default}}),IB6="AWS_CONFIG_FILE",Lr$=()=>process.env[IB6]||v$0(f$0(),".aws","config"),MB6="AWS_SHARED_CREDENTIALS_FILE",VB6=()=>process.env[MB6]||v$0(f$0(),".aws","credentials"),kB6=/^([\w-]+)\s(["'])?([\w-@\+\.%:/]+)\2$/,SB6=["__proto__","profile __proto__"],GU1=($)=>{let Z={},Q,X;for(let Y of $.split(/\r?\n/)){let J=Y.split(/(^|\s)[;#]/)[0].trim();if(J[0]==="["&&J[J.length-1]==="]"){Q=void 0,X=void 0;let K=J.substring(1,J.length-1),W=kB6.exec(K);if(W){let[,H,,F]=W;if(Object.values(JV0).includes(H))Q=[H,F].join(Db)}else Q=K;if(SB6.includes(K))throw Error(`Found invalid profile name "${K}"`)}else if(Q){let K=J.indexOf("=");if(![0,-1].includes(K)){let[W,H]=[J.substring(0,K).trim(),J.substring(K+1).trim()];if(H==="")X=W;else{if(X&&Y.trimStart()===Y)X=void 0;Z[Q]=Z[Q]||{};let F=X?[X,W].join(Db):W;Z[Q][F]=H}}}}return Z},JU1={},WV0={},HV0=($,Z)=>{if(WV0[$]!==void 0)return WV0[$];if(!JU1[$]||Z?.ignoreCache)JU1[$]=Hr$($,"utf8");return JU1[$]},Yr$=()=>({}),FU1=async($={})=>{let{filepath:Z=VB6(),configFilepath:Q=Lr$()}=$,X=f$0(),Y="~/",J=Z;if(Z.startsWith("~/"))J=v$0(X,Z.slice(2));let G=Q;if(Q.startsWith("~/"))G=v$0(X,Q.slice(2));let K=await Promise.all([HV0(G,{ignoreCache:$.ignoreCache}).then(GU1).then(qB6).catch(Yr$),HV0(J,{ignoreCache:$.ignoreCache}).then(GU1).catch(Yr$)]);return{configFile:K[0],credentialsFile:K[1]}},CB6=($)=>Object.entries($).filter(([Z])=>Z.startsWith(JV0.SSO_SESSION+Db)).reduce((Z,[Q,X])=>({...Z,[Q.substring(Q.indexOf(Db)+1)]:X}),{}),_B6=()=>({}),vB6=async($={})=>HV0($.configFilepath??Lr$()).then(GU1).then(CB6).catch(_B6),xB6=(...$)=>{let Z={};for(let Q of $)for(let[X,Y]of Object.entries(Q))if(Z[X]!==void 0)Object.assign(Z[X],Y);else Z[X]=Y;return Z},fB6=async($)=>{let Z=await FU1($);return xB6(Z.configFile,Z.credentialsFile)},bB6={getFileRecord(){return WV0},interceptFile($,Z){WV0[$]=Promise.resolve(Z)},getTokenRecord(){return KV0},interceptToken($,Z){KV0[$]=Z}};function wr$($){try{let Z=new Set(Array.from($.match(/([A-Z_]){3,}/g)??[]));return Z.delete("CONFIG"),Z.delete("CONFIG_PREFIX_SEPARATOR"),Z.delete("ENV"),[...Z].join(", ")}catch(Z){return $}}var yB6=($,Z)=>async()=>{try{let Q=$(process.env,Z);if(Q===void 0)throw Error();return Q}catch(Q){throw new x$0(Q.message||`Not found in ENV: ${wr$($.toString())}`,{logger:Z?.logger})}},gB6=($,{preferredFile:Z="config",...Q}={})=>async()=>{let X=Or$(Q),{configFile:Y,credentialsFile:J}=await FU1(Q),G=J[X]||{},K=Y[X]||{},W=Z==="config"?{...G,...K}:{...K,...G};try{let F=$(W,Z==="config"?Y:J);if(F===void 0)throw Error();return F}catch(H){throw new x$0(H.message||`Not found in config files w/ profile [${X}]: ${wr$($.toString())}`,{logger:Q.logger})}},hB6=($)=>typeof $==="function",jr$=($)=>hB6($)?async()=>await $():Ur$($),KU1=({environmentVariableSelector:$,configFileSelector:Z,default:Q},X={})=>{let{signingName:Y,logger:J}=X;return HU1(Fr$(yB6($,{signingName:Y,logger:J}),gB6(Z,X),jr$(Q)))},UU1="AWS_USE_DUALSTACK_ENDPOINT",NU1="use_dualstack_endpoint",uB6=!1,lB6={environmentVariableSelector:($)=>gB($,UU1,nW.ENV),configFileSelector:($)=>gB($,NU1,nW.CONFIG),default:!1},cB6={environmentVariableSelector:($)=>gB($,UU1,nW.ENV),configFileSelector:($)=>gB($,NU1,nW.CONFIG),default:void 0},BU1="AWS_USE_FIPS_ENDPOINT",OU1="use_fips_endpoint",mB6=!1,dB6={environmentVariableSelector:($)=>gB($,BU1,nW.ENV),configFileSelector:($)=>gB($,OU1,nW.CONFIG),default:!1},iB6={environmentVariableSelector:($)=>gB($,BU1,nW.ENV),configFileSelector:($)=>gB($,OU1,nW.CONFIG),default:void 0},pB6=($)=>{let{tls:Z,endpoint:Q,urlParser:X,useDualstackEndpoint:Y}=$;return Object.assign($,{tls:Z??!0,endpoint:GV0(typeof Q==="string"?X(Q):Q),isCustomEndpoint:!0,useDualstackEndpoint:GV0(Y??!1)})},nB6=async($)=>{let{tls:Z=!0}=$,Q=await $.region();if(!new RegExp(/^([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9-]{0,61}[a-zA-Z0-9])$/).test(Q))throw Error("Invalid region in client config");let Y=await $.useDualstackEndpoint(),J=await $.useFipsEndpoint(),{hostname:G}=await $.regionInfoProvider(Q,{useDualstackEndpoint:Y,useFipsEndpoint:J})??{};if(!G)throw Error("Cannot resolve hostname from client config");return $.urlParser(`${Z?"https:":"http:"}//${G}`)},tB6=($)=>{let Z=GV0($.useDualstackEndpoint??!1),{endpoint:Q,useFipsEndpoint:X,urlParser:Y,tls:J}=$;return Object.assign($,{tls:J??!0,endpoint:Q?GV0(typeof Q==="string"?Y(Q):Q):()=>nB6({...$,useDualstackEndpoint:Z,useFipsEndpoint:X}),isCustomEndpoint:!!Q,useDualstackEndpoint:Z})},Er$="AWS_REGION",zr$="region",Pr$={environmentVariableSelector:($)=>$[Er$],configFileSelector:($)=>$[zr$],default:()=>{throw Error("Region is missing")}},oB6={preferredFile:"credentials"},Jr$=new Set,rB6=($,Z=PB6)=>{if(!Jr$.has($)&&!Z($))if($==="*")console.warn('@smithy/config-resolver WARN - Please use the caller region instead of "*". See "sigv4a" in https://github.com/aws/aws-sdk-js-v3/blob/main/supplemental-docs/CLIENTS.md.');else throw Error(`Region not accepted: region="${$}" is not a valid hostname component.`);else Jr$.add($)},Ar$=($)=>typeof $==="string"&&($.startsWith("fips-")||$.endsWith("-fips")),aB6=($)=>Ar$($)?["fips-aws-global","aws-fips"].includes($)?"us-east-1":$.replace(/fips-(dkr-|prod-)?|-fips/,""):$,sB6=($)=>{let{region:Z,useFipsEndpoint:Q}=$;if(!Z)throw Error("Region is missing");return Object.assign($,{region:async()=>{let X=typeof Z==="function"?await Z():Z,Y=aB6(X);return rB6(Y),Y},useFipsEndpoint:async()=>{let X=typeof Z==="string"?Z:await Z();if(Ar$(X))return!0;return typeof Q!=="function"?Promise.resolve(!!Q):Q()}})},Gr$=($=[],{useFipsEndpoint:Z,useDualstackEndpoint:Q})=>$.find(({tags:X})=>Z===X.includes("fips")&&Q===X.includes("dualstack"))?.hostname,eB6=($,{regionHostname:Z,partitionHostname:Q})=>Z?Z:Q?Q.replace("{region}",$):void 0,$O6=($,{partitionHash:Z})=>Object.keys(Z||{}).find((Q)=>Z[Q].regions.includes($))??"aws",ZO6=($,{signingRegion:Z,regionRegex:Q,useFipsEndpoint:X})=>{if(Z)return Z;else if(X){let Y=Q.replace("\\\\","\\").replace(/^\^/g,"\\.").replace(/\$$/g,"\\."),J=$.match(Y);if(J)return J[0].slice(1,-1)}},QO6=($,{useFipsEndpoint:Z=!1,useDualstackEndpoint:Q=!1,signingService:X,regionHash:Y,partitionHash:J})=>{let G=$O6($,{partitionHash:J}),K=$ in Y?$:J[G]?.endpoint??$,W={useFipsEndpoint:Z,useDualstackEndpoint:Q},H=Gr$(Y[K]?.variants,W),F=Gr$(J[G]?.variants,W),U=eB6(K,{regionHostname:H,partitionHostname:F});if(U===void 0)throw Error(`Endpoint resolution failed for: ${{resolvedRegion:K,useFipsEndpoint:Z,useDualstackEndpoint:Q}}`);let N=ZO6(U,{signingRegion:Y[K]?.signingRegion,regionRegex:J[G].regionRegex,useFipsEndpoint:Z});return{partition:G,signingService:X,hostname:U,...N&&{signingRegion:N},...Y[K]?.signingService&&{signingService:Y[K].signingService}}},XO6="AWS_EXECUTION_ENV",Kr$="AWS_REGION",Wr$="AWS_DEFAULT_REGION",YO6="AWS_EC2_METADATA_DISABLED",JO6=["in-region","cross-region","mobile","standard","legacy"],GO6="/latest/meta-data/placement/region",KO6="AWS_DEFAULTS_MODE",WO6="defaults_mode",HO6={environmentVariableSelector:($)=>{return $[KO6]},configFileSelector:($)=>{return $[WO6]},default:"legacy"},FO6=({region:$=KU1(Pr$),defaultsMode:Z=KU1(HO6)}={})=>HU1(async()=>{let Q=typeof Z==="function"?await Z():Z;switch(Q?.toLowerCase()){case"auto":return UO6($);case"in-region":case"cross-region":case"mobile":case"standard":case"legacy":return Promise.resolve(Q?.toLocaleLowerCase());case void 0:return Promise.resolve("legacy");default:throw Error(`Invalid parameter for "defaultsMode", expect ${JO6.join(", ")}, got ${Q}`)}}),UO6=async($)=>{if($){let Z=typeof $==="function"?await $():$,Q=await NO6();if(!Q)return"standard";if(Z===Q)return"in-region";else return"cross-region"}return"standard"},NO6=async()=>{if(process.env[XO6]&&(process.env[Kr$]||process.env[Wr$]))return process.env[Kr$]??process.env[Wr$];if(!process.env[YO6])try{let $=await BO6();return(await OO6({hostname:$.hostname,path:GO6})).toString()}catch($){}},BO6=async()=>{let $=process.env.AWS_EC2_METADATA_SERVICE_ENDPOINT;if($){let Q=new URL($);return{hostname:Q.hostname,path:Q.pathname}}if(process.env.AWS_EC2_METADATA_SERVICE_ENDPOINT_MODE==="IPv6")return{hostname:"fd00:ec2::254",path:"/"};return{hostname:"169.254.169.254",path:"/"}},OO6=async({hostname:$,path:Z})=>{let{request:Q}=K0("http");return new Promise((X,Y)=>{let J=Q({method:"GET",hostname:$.replace(/^\[(.+)]$/,"$1"),path:Z,timeout:1000,signal:AbortSignal.timeout(1000)});J.on("error",(G)=>{Y(G),J.destroy()}),J.on("timeout",()=>{Y(Error("TimeoutError from instance metadata service")),J.destroy()}),J.on("response",(G)=>{let{statusCode:K=400}=G;if(K<200||300<=K){Y(Object.assign(Error("Error response received from instance metadata service"),{statusCode:K})),J.destroy();return}let W=[];G.on("data",(H)=>W.push(H)),G.on("end",()=>{X(Buffer.concat(W)),J.destroy()})}),J.end()})};DO6.CONFIG_PREFIX_SEPARATOR=Db;DO6.CONFIG_USE_DUALSTACK_ENDPOINT=NU1;DO6.CONFIG_USE_FIPS_ENDPOINT=OU1;DO6.CredentialsProviderError=x$0;DO6.DEFAULT_PROFILE=Br$;DO6.DEFAULT_USE_DUALSTACK_ENDPOINT=uB6;DO6.DEFAULT_USE_FIPS_ENDPOINT=mB6;DO6.ENV_PROFILE=Nr$;DO6.ENV_USE_DUALSTACK_ENDPOINT=UU1;DO6.ENV_USE_FIPS_ENDPOINT=BU1;DO6.NODE_REGION_CONFIG_FILE_OPTIONS=oB6;DO6.NODE_REGION_CONFIG_OPTIONS=Pr$;DO6.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS=lB6;DO6.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS=dB6;DO6.ProviderError=Fd;DO6.REGION_ENV_NAME=Er$;DO6.REGION_INI_NAME=zr$;DO6.SelectorType=nW;DO6.TokenProviderError=WU1;DO6.booleanSelector=gB;DO6.chain=Fr$;DO6.externalDataInterceptor=bB6;DO6.fromStatic=jr$;DO6.fromValue=Ur$;DO6.getHomeDir=f$0;DO6.getProfileName=Or$;DO6.getRegionInfo=QO6;DO6.getSSOTokenFilepath=Dr$;DO6.getSSOTokenFromFile=RB6;DO6.loadConfig=KU1;DO6.loadSharedConfigFiles=FU1;DO6.loadSsoSessionData=vB6;DO6.memoize=HU1;DO6.nodeDualstackConfigSelectors=cB6;DO6.nodeFipsConfigSelectors=iB6;DO6.numberSelector=AB6;DO6.parseKnownFiles=fB6;DO6.readFile=HV0;DO6.resolveCustomEndpointsConfig=pB6;DO6.resolveDefaultsModeConfig=FO6;DO6.resolveEndpointsConfig=tB6;DO6.resolveRegionConfig=sB6});var L9=v((cD6)=>{var{CONFIG_PREFIX_SEPARATOR:Tr$,loadConfig:YD6}=U4(),{toEndpointV1:FV0,getSmithyContext:JD6,normalizeProvider:DU1,isValidHostLabel:Ir$}=YU();cD6.isValidHostLabel=Ir$;cD6.middlewareEndpointToEndpointV1=FV0;cD6.toEndpointV1=FV0;var{EndpointURLScheme:jU1}=Bb(),Rr$="AWS_ENDPOINT_URL",qr$="endpoint_url",GD6=($)=>({environmentVariableSelector:(Z)=>{let Q=$.split(" ").map((J)=>J.toUpperCase()),X=Z[[Rr$,...Q].join("_")];if(X)return X;let Y=Z[Rr$];if(Y)return Y;return},configFileSelector:(Z,Q)=>{if(Q&&Z.services){let Y=Q[["services",Z.services].join(Tr$)];if(Y){let J=$.split(" ").map((K)=>K.toLowerCase()),G=Y[[J.join("_"),qr$].join(Tr$)];if(G)return G}}let X=Z[qr$];if(X)return X;return},default:void 0}),UV0=async($)=>YD6(GD6($??""))(),KD6=async($)=>{let Z=$?.Bucket||"";if(typeof $.Bucket==="string")$.Bucket=Z.replace(/#/g,encodeURIComponent("#")).replace(/\?/g,encodeURIComponent("?"));if(ND6(Z)){if($.ForcePathStyle===!0)throw Error("Path-style addressing cannot be used with ARN buckets")}else if(!UD6(Z)||Z.indexOf(".")!==-1&&!String($.Endpoint).startsWith("http:")||Z.toLowerCase()!==Z||Z.length<3)$.ForcePathStyle=!0;if($.DisableMultiRegionAccessPoints)$.disableMultiRegionAccessPoints=!0,$.DisableMRAP=!0;return $},WD6=/^[a-z0-9][a-z0-9\.\-]{1,61}[a-z0-9]$/,HD6=/(\d+\.){3}\d+/,FD6=/\.\./,UD6=($)=>WD6.test($)&&!HD6.test($)&&!FD6.test($),ND6=($)=>{let[Z,Q,X,,,Y]=$.split(":"),J=Z==="arn"&&$.split(":").length>=6,G=Boolean(J&&Q&&X&&Y);if(J&&!G)throw Error(`Invalid ARN: ${$} was an invalid ARN.`);return G},BD6=($,Z,Q,X=!1)=>{let Y=async()=>{let J;if(X)J=Q.clientContextParams?.[$]??Q[$]??Q[Z];else J=Q[$]??Q[Z];if(typeof J==="function")return J();return J};if($==="credentialScope"||Z==="CredentialScope")return async()=>{let J=typeof Q.credentials==="function"?await Q.credentials():Q.credentials;return J?.credentialScope??J?.CredentialScope};if($==="accountId"||Z==="AccountId")return async()=>{let J=typeof Q.credentials==="function"?await Q.credentials():Q.credentials;return J?.accountId??J?.AccountId};if($==="endpoint"||Z==="endpoint")return async()=>{if(Q.isCustomEndpoint===!1)return;let J=await Y();if(J&&typeof J==="object"){if("url"in J)return J.url.href;if("hostname"in J){let{protocol:G,hostname:K,port:W,path:H}=J;return`${G}//${K}${W?":"+W:""}${H}`}}return J};return Y};function Mr$($){return async(Z,Q,X,Y)=>{if(!X.isCustomEndpoint){let K;if(X.serviceConfiguredEndpoint)K=await X.serviceConfiguredEndpoint();else K=await $(X.serviceId);if(K)X.endpoint=()=>Promise.resolve(FV0(K)),X.isCustomEndpoint=!0}let J=await Vr$(Z,Q,X);if(typeof X.endpointProvider!=="function")throw Error("config.endpointProvider is not set.");let G=X.endpointProvider(J,Y);if(X.isCustomEndpoint&&X.endpoint){let K=await X.endpoint();if(K?.headers){G.headers??={};for(let[W,H]of Object.entries(K.headers))G.headers[W]=Array.isArray(H)?H:[H]}}return G}}var Vr$=async($,Z,Q)=>{let X={},Y=Z?.getEndpointParameterInstructions?.()||{};for(let[J,G]of Object.entries(Y))switch(G.type){case"staticContextParams":X[J]=G.value;break;case"contextParams":X[J]=$[G.name];break;case"clientContextParams":case"builtInParams":X[J]=await BD6(G.name,J,Q,G.type!=="builtInParams")();break;case"operationContextParams":X[J]=G.get($);break;default:throw Error("Unrecognized endpoint parameter instruction: "+JSON.stringify(G))}if(Object.keys(Y).length===0)Object.assign(X,Q);if(String(Q.serviceId).toLowerCase()==="s3")await KD6(X);return X};function OD6($,Z,Q){if(!$.__smithy_context)$.__smithy_context={features:{}};else if(!$.__smithy_context.features)$.__smithy_context.features={};$.__smithy_context.features[Z]=Q}function kr$($){let Z=Mr$($);return({config:Q,instructions:X})=>{return(Y,J)=>async(G)=>{if(Q.isCustomEndpoint)OD6(J,"ENDPOINT_OVERRIDE","N");let K=await Z(G.input,{getEndpointParameterInstructions(){return X}},{...Q},J);J.endpointV2=K,J.authSchemes=K.properties?.authSchemes;let W=J.authSchemes?.[0];if(W){J.signing_region=W.signingRegion,J.signing_service=W.signingName;let F=JD6(J)?.selectedHttpAuthScheme?.httpAuthOption;if(F)F.signingProperties=Object.assign(F.signingProperties||{},{signing_region:W.signingRegion,signingRegion:W.signingRegion,signing_service:W.signingName,signingName:W.signingName,signingRegionSet:W.signingRegionSet},W.properties)}return Y({...G})}}}var DD6={name:"serializerMiddleware"},Sr$={step:"serialize",tags:["ENDPOINT_PARAMETERS","ENDPOINT_V2","ENDPOINT"],name:"endpointV2Middleware",override:!0,relation:"before",toMiddleware:DD6.name};function LD6($){let Z=kr$($);return(Q,X)=>({applyToStack:(Y)=>{Y.addRelativeTo(Z({config:Q,instructions:X}),Sr$)}})}function wD6($){return(Z)=>{let Q=Z.tls??!0,{endpoint:X,useDualstackEndpoint:Y,useFipsEndpoint:J}=Z,G=X!=null?async()=>FV0(await DU1(X)()):void 0,W=Object.assign(Z,{endpoint:G,tls:Q,isCustomEndpoint:!!X,useDualstackEndpoint:DU1(Y??!1),useFipsEndpoint:DU1(J??!1)}),H=void 0;return W.serviceConfiguredEndpoint=async()=>{if(Z.serviceId&&!H)H=$(Z.serviceId);return H},W}}class EU1{nodes;root;conditions;results;constructor($,Z,Q,X){this.nodes=$,this.root=Z,this.conditions=Q,this.results=X}static from($,Z,Q,X){return new EU1($,Z,Q,X)}}class Cr${capacity;data=new Map;parameters=[];constructor({size:$,params:Z}){if(this.capacity=$??50,Z)this.parameters=Z}get($,Z){let Q=this.hash($);if(Q===!1)return Z();if(!this.data.has(Q)){if(this.data.size>this.capacity+10){let X=this.data.keys(),Y=0;while(!0){let{value:J,done:G}=X.next();if(this.data.delete(J),G||++Y>10)break}}this.data.set(Q,Z())}return this.data.get(Q)}size(){return this.data.size}hash($){let Z="",{parameters:Q}=this;if(Q.length===0)return!1;for(let X of Q){let Y=String($[X]??"");if(Y.includes("|;"))return!1;Z+=Y+"|;"}return Z}}class YQ extends Error{constructor($){super($);this.name="EndpointError"}}var b$0="endpoints";function jj($){if(typeof $!=="object"||$==null)return $;if("ref"in $)return`$${jj($.ref)}`;if("fn"in $)return`${$.fn}(${($.argv||[]).map(jj).join(", ")})`;return JSON.stringify($,null,2)}var _r$={},jD6=($,Z)=>$===Z;function ED6(...$){for(let Z of $)if(Z!=null)return Z;return}var zD6=($)=>{let Z=$.split("."),Q=[];for(let X of Z){let Y=X.indexOf("[");if(Y!==-1){if(X.indexOf("]")!==X.length-1)throw new YQ(`Path: '${$}' does not end with ']'`);let J=X.slice(Y+1,-1);if(Number.isNaN(parseInt(J)))throw new YQ(`Invalid array index: '${J}' in path: '${$}'`);if(Y!==0)Q.push(X.slice(0,Y));Q.push(J)}else Q.push(X)}return Q},vr$=($,Z)=>zD6(Z).reduce((Q,X)=>{if(typeof Q!=="object")throw new YQ(`Index '${X}' in '${Z}' not found in '${JSON.stringify($)}'`);else if(Array.isArray(Q)){let Y=parseInt(X);return Q[Y<0?Q.length+Y:Y]}return Q[X]},$),PD6=($)=>$!=null;function AD6($,Z,Q){return $?Z:Q}var TD6=($)=>!$,RD6=new RegExp("^(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}$"),xr$=($)=>RD6.test($)||$.startsWith("[")&&$.endsWith("]"),LU1={[jU1.HTTP]:80,[jU1.HTTPS]:443},qD6=($)=>{let Z=(()=>{try{if($ instanceof URL)return $;if(typeof $==="object"&&"hostname"in $){let{hostname:N,port:B,protocol:O="",path:L="",query:w={}}=$,j=new URL(`${O}//${N}${B?`:${B}`:""}${L}`);return j.search=Object.entries(w).map(([E,z])=>`${E}=${z}`).join("&"),j}return new URL($)}catch(N){return null}})();if(!Z)return console.error(`Unable to parse ${JSON.stringify($)} as a whatwg URL.`),null;let Q=Z.href,{host:X,hostname:Y,pathname:J,protocol:G,search:K}=Z;if(K)return null;let W=G.slice(0,-1);if(!Object.values(jU1).includes(W))return null;let H=xr$(Y),F=Q.includes(`${X}:${LU1[W]}`)||typeof $==="string"&&$.includes(`${X}:${LU1[W]}`),U=`${X}${F?`:${LU1[W]}`:""}`;return{scheme:W,authority:U,path:J,normalizedPath:J.endsWith("/")?J:`${J}/`,isIp:H}};function ID6($,Z,Q){if(Q===1)return[$];if($==="")return[""];let X=$.split(Z);if(Q===0)return X;return X.slice(0,Q-1).concat(X.slice(1).join(Z))}var MD6=($,Z)=>$===Z,VD6=($,Z,Q,X)=>{if($==null||Z>=Q||$.length<Q||/[^\u0000-\u007f]/.test($))return null;if(!X)return $.substring(Z,Q);return $.substring($.length-Q,$.length-Z)},kD6=($)=>encodeURIComponent($).replace(/[!*'()]/g,(Z)=>`%${Z.charCodeAt(0).toString(16).toUpperCase()}`),SD6={booleanEquals:jD6,coalesce:ED6,getAttr:vr$,isSet:PD6,isValidHostLabel:Ir$,ite:AD6,not:TD6,parseURL:qD6,split:ID6,stringEquals:MD6,substring:VD6,uriEncode:kD6},fr$=($,Z)=>{let Q=[],{referenceRecord:X,endpointParams:Y}=Z,J=0;while(J<$.length){let G=$.indexOf("{",J);if(G===-1){Q.push($.slice(J));break}Q.push($.slice(J,G));let K=$.indexOf("}",G);if(K===-1){Q.push($.slice(G));break}if($[G+1]==="{"&&$[K+1]==="}")Q.push($.slice(G+1,K)),J=K+2;let W=$.substring(G+1,K);if(W.includes("#")){let[H,F]=W.split("#");Q.push(vr$(X[H]??Y[H],F))}else Q.push(X[W]??Y[W]);J=K+1}return Q.join("")},CD6=({ref:$},Z)=>{return Z.referenceRecord[$]??Z.endpointParams[$]},y$0=($,Z,Q)=>{if(typeof $==="string")return fr$($,Q);else if($.fn)return yr$.callFunction($,Q);else if($.ref)return CD6($,Q);throw new YQ(`'${Z}': ${String($)} is not a string, function or reference.`)},br$=({fn:$,argv:Z},Q)=>{let X=Array(Z.length);for(let G=0;G<X.length;++G){let K=Z[G];if(typeof K==="boolean"||typeof K==="number")X[G]=K;else X[G]=yr$.evaluateExpression(K,"arg",Q)}let Y=$.indexOf(".");if(Y!==-1){let K=_r$[$.slice(0,Y)]?.[$.slice(Y+1)];if(typeof K==="function")return K(...X)}let J=SD6[$];if(typeof J==="function")return J(...X);throw Error(`function ${$} not loaded in endpointFunctions.`)},yr$={evaluateExpression:y$0,callFunction:br$},gr$=($,Z)=>{let{assign:Q}=$;if(Q&&Q in Z.referenceRecord)throw new YQ(`'${Q}' is already defined in Reference Record.`);let X=br$($,Z);Z.logger?.debug?.(`${b$0} evaluateCondition: ${jj($)} = ${jj(X)}`);let Y=X===""?!0:!!X;if(Q!=null)return{result:Y,toAssign:{name:Q,value:X}};return{result:Y}},hr$=($,Z)=>Object.entries($??{}).reduce((Q,[X,Y])=>{return Q[X]=Y.map((J)=>{let G=y$0(J,"Header value entry",Z);if(typeof G!=="string")throw new YQ(`Header '${X}' value '${G}' is not a string`);return G}),Q},{}),zU1=($,Z)=>Object.entries($).reduce((Q,[X,Y])=>{return Q[X]=lr$.getEndpointProperty(Y,Z),Q},{}),ur$=($,Z)=>{if(Array.isArray($))return $.map((Q)=>ur$(Q,Z));switch(typeof $){case"string":return fr$($,Z);case"object":if($===null)throw new YQ(`Unexpected endpoint property: ${$}`);return lr$.getEndpointProperties($,Z);case"boolean":return $;default:throw new YQ(`Unexpected endpoint property type: ${typeof $}`)}},lr$={getEndpointProperty:ur$,getEndpointProperties:zU1},cr$=($,Z)=>{let Q=y$0($,"Endpoint URL",Z);if(typeof Q==="string")try{return new URL(Q)}catch(X){throw console.error(`Failed to construct URL with ${Q}`,X),X}throw new YQ(`Endpoint URL must be a string, got ${typeof Q}`)},wU1=1e8,_D6=($,Z)=>{let{nodes:Q,root:X,results:Y,conditions:J}=$,G=X,K={},W={referenceRecord:K,endpointParams:Z.endpointParams,logger:Z.logger};while(G!==1&&G!==-1&&G<wU1){let H=3*(Math.abs(G)-1),[F,U,N]=[Q[H],Q[H+1],Q[H+2]],[B,O,L]=J[F],w=gr$({fn:B,assign:L,argv:O},W);if(w.toAssign){let{name:j,value:E}=w.toAssign;K[j]=E}G=G>=0===w.result?U:N}if(G>=wU1){let H=Y[G-wU1];if(H[0]===-1){let[,B]=H;throw new YQ(y$0(B,"Error",W))}let[F,U,N]=H;return{url:cr$(F,W),properties:zU1(U,W),headers:hr$(N??{},W)}}throw new YQ("No matching endpoint.")},PU1=($=[],Z)=>{let Q={},X={...Z,referenceRecord:{...Z.referenceRecord}},Y=!1;for(let J of $){let{result:G,toAssign:K}=gr$(J,X);if(!G)return{result:G};if(K)Y=!0,Q[K.name]=K.value,X.referenceRecord[K.name]=K.value,Z.logger?.debug?.(`${b$0} assign: ${K.name} := ${jj(K.value)}`)}if(Y)return{result:!0,referenceRecord:Q};return{result:!0}},vD6=($,Z)=>{let{conditions:Q,endpoint:X}=$,{result:Y,referenceRecord:J}=PU1(Q,Z);if(!Y)return;let G=J?{...Z,referenceRecord:{...Z.referenceRecord,...J}}:Z,{url:K,properties:W,headers:H}=X;Z.logger?.debug?.(`${b$0} Resolving endpoint from template: ${jj(X)}`);let F={url:cr$(K,G)};if(H!=null)F.headers=hr$(H,G);if(W!=null)F.properties=zU1(W,G);return F},xD6=($,Z)=>{let{conditions:Q,error:X}=$,{result:Y,referenceRecord:J}=PU1(Q,Z);if(!Y)return;let G=J?{...Z,referenceRecord:{...Z.referenceRecord,...J}}:Z;throw new YQ(y$0(X,"Error",G))},mr$=($,Z)=>{for(let Q of $)if(Q.type==="endpoint"){let X=vD6(Q,Z);if(X)return X}else if(Q.type==="error")xD6(Q,Z);else if(Q.type==="tree"){let X=dr$.evaluateTreeRule(Q,Z);if(X)return X}else throw new YQ(`Unknown endpoint rule: ${Q}`);throw new YQ("Rules evaluation failed")},fD6=($,Z)=>{let{conditions:Q,rules:X}=$,{result:Y,referenceRecord:J}=PU1(Q,Z);if(!Y)return;let G=J?{...Z,referenceRecord:{...Z.referenceRecord,...J}}:Z;return dr$.evaluateRules(X,G)},dr$={evaluateRules:mr$,evaluateTreeRule:fD6},bD6=($,Z)=>{let{endpointParams:Q,logger:X}=Z,{parameters:Y,rules:J}=$;Z.logger?.debug?.(`${b$0} Initial EndpointParams: ${jj(Q)}`);for(let K in Y){let W=Y[K],H=Q[K];if(H==null&&W.default!=null){Q[K]=W.default;continue}if(W.required&&H==null)throw new YQ(`Missing required parameter: '${K}'`)}let G=mr$(J,{endpointParams:Q,logger:X,referenceRecord:{}});return Z.logger?.debug?.(`${b$0} Resolved endpoint: ${jj(G)}`),G},yD6=($)=>{let{endpoint:Z}=$;if(Z===void 0)$.endpoint=async()=>{throw Error("@smithy/middleware-endpoint: (default endpointRuleSet) endpoint is not set - you must configure an endpoint.")};return $},gD6=Mr$(UV0),hD6=wD6(UV0),uD6=kr$(UV0),lD6=LD6(UV0);cD6.BinaryDecisionDiagram=EU1;cD6.EndpointCache=Cr$;cD6.EndpointError=YQ;cD6.customEndpointFunctions=_r$;cD6.decideEndpoint=_D6;cD6.endpointMiddleware=uD6;cD6.endpointMiddlewareOptions=Sr$;cD6.getEndpointFromInstructions=gD6;cD6.getEndpointPlugin=lD6;cD6.isIpAddress=xr$;cD6.resolveEndpoint=bD6;cD6.resolveEndpointConfig=hD6;cD6.resolveEndpointRequiredConfig=yD6;cD6.resolveParams=Vr$});var eX=v((cw6)=>{var{createHmac:GL6,createHash:KL6,getRandomValues:WL6}=K0("crypto"),{ReadStream:HL6,lstatSync:FL6,fstatSync:UL6}=K0("fs"),{HttpResponse:NL6}=YU(),{toEndpointV1:BL6}=L9(),{Duplex:OL6,Readable:g$0,Writable:sr$,PassThrough:ir$}=K0("stream"),er$=($)=>typeof ArrayBuffer==="function"&&$ instanceof ArrayBuffer||Object.prototype.toString.call($)==="[object ArrayBuffer]",Bd=($,Z=0,Q=$.byteLength-Z)=>{if(!er$($))throw TypeError(`The "input" argument must be ArrayBuffer. Received type ${typeof $} (${$})`);return Buffer.from($,Z,Q)},DV0=($,Z)=>{if(typeof $!=="string")throw TypeError(`The "input" argument must be of type string. Received type ${typeof $} (${$})`);return Z?Buffer.from($,Z):Buffer.from($)},DL6=/^[A-Za-z0-9+/]*={0,2}$/,$a$=($)=>{if($.length*3%4!==0)throw TypeError("Incorrect padding on base64 string.");if(!DL6.exec($))throw TypeError("Invalid base64 string.");let Z=DV0($,"base64");return new Uint8Array(Z.buffer,Z.byteOffset,Z.byteLength)},LV0=($)=>{let Z=DV0($,"utf8");return new Uint8Array(Z.buffer,Z.byteOffset,Z.byteLength/Uint8Array.BYTES_PER_ELEMENT)},VU1=($)=>{let Z;if(typeof $==="string")Z=LV0($);else Z=$;if(typeof Z!=="object"||typeof Z.byteOffset!=="number"||typeof Z.byteLength!=="number")throw Error("@smithy/util-base64: toBase64 encoder function only accepts string | Uint8Array.");return Bd(Z.buffer,Z.byteOffset,Z.byteLength).toString("base64")};function LL6($,Z,Q,X){return class Y extends Uint8Array{static fromString(J,G="utf-8"){if(typeof J==="string"){if(G==="base64")return Y.mutate(X(J));return Y.mutate(Z(J))}throw Error(`Unsupported conversion from ${typeof J} to Uint8ArrayBlobAdapter.`)}static mutate(J){return Object.setPrototypeOf(J,Y.prototype),J}transformToString(J="utf-8"){if(J==="base64")return Q(this);return $(this)}}}var Za$=($)=>{if(typeof $==="string")return $;if(typeof $!=="object"||typeof $.byteOffset!=="number"||typeof $.byteLength!=="number")throw Error("@smithy/util-utf8: toUtf8 encoder function only accepts string | Uint8Array.");return Bd($.buffer,$.byteOffset,$.byteLength).toString("utf8")},GX=Array.from({length:256},($,Z)=>Z.toString(16).padStart(2,"0"));function wL6($){if(typeof crypto<"u"&&typeof crypto.randomUUID==="function")return()=>crypto.randomUUID();return()=>{let Z=new Uint8Array(16);return $(Z),Z[6]=Z[6]&15|64,Z[8]=Z[8]&63|128,GX[Z[0]]+GX[Z[1]]+GX[Z[2]]+GX[Z[3]]+"-"+GX[Z[4]]+GX[Z[5]]+"-"+GX[Z[6]]+GX[Z[7]]+"-"+GX[Z[8]]+GX[Z[9]]+"-"+GX[Z[10]]+GX[Z[11]]+GX[Z[12]]+GX[Z[13]]+GX[Z[14]]+GX[Z[15]]}}var jL6=($,Z,Q=(X)=>X)=>$,EL6=($)=>{switch($){case"true":return!0;case"false":return!1;default:throw Error(`Unable to parse boolean value "${$}"`)}},zL6=($)=>{if($===null||$===void 0)return;if(typeof $==="number"){if($===0||$===1)m$0.warn(BV0(`Expected boolean, got ${typeof $}: ${$}`));if($===0)return!1;if($===1)return!0}if(typeof $==="string"){let Z=$.toLowerCase();if(Z==="false"||Z==="true")m$0.warn(BV0(`Expected boolean, got ${typeof $}: ${$}`));if(Z==="false")return!1;if(Z==="true")return!0}if(typeof $==="boolean")return $;throw TypeError(`Expected boolean, got ${typeof $}: ${$}`)},l$0=($)=>{if($===null||$===void 0)return;if(typeof $==="string"){let Z=parseFloat($);if(!Number.isNaN(Z)){if(String(Z)!==String($))m$0.warn(BV0(`Expected number but observed string: ${$}`));return Z}}if(typeof $==="number")return $;throw TypeError(`Expected number, got ${typeof $}: ${$}`)},PL6=Math.ceil(340282346638528860000000000000000000000),NV0=($)=>{let Z=l$0($);if(Z!==void 0&&!Number.isNaN(Z)&&Z!==1/0&&Z!==-1/0){if(Math.abs(Z)>PL6)throw TypeError(`Expected 32-bit float, got ${$}`)}return Z},c$0=($)=>{if($===null||$===void 0)return;if(Number.isInteger($)&&!Number.isNaN($))return $;throw TypeError(`Expected integer, got ${typeof $}: ${$}`)},AL6=c$0,RU1=($)=>kU1($,32),qU1=($)=>kU1($,16),IU1=($)=>kU1($,8),kU1=($,Z)=>{let Q=c$0($);if(Q!==void 0&&TL6(Q,Z)!==Q)throw TypeError(`Expected ${Z}-bit integer, got ${$}`);return Q},TL6=($,Z)=>{switch(Z){case 32:return Int32Array.of($)[0];case 16:return Int16Array.of($)[0];case 8:return Int8Array.of($)[0]}},RL6=($,Z)=>{if($===null||$===void 0){if(Z)throw TypeError(`Expected a non-null value for ${Z}`);throw TypeError("Expected a non-null value")}return $},Qa$=($)=>{if($===null||$===void 0)return;if(typeof $==="object"&&!Array.isArray($))return $;let Z=Array.isArray($)?"array":typeof $;throw TypeError(`Expected object, got ${Z}: ${$}`)},qL6=($)=>{if($===null||$===void 0)return;if(typeof $==="string")return $;if(["boolean","number","bigint"].includes(typeof $))return m$0.warn(BV0(`Expected string, got ${typeof $}: ${$}`)),String($);throw TypeError(`Expected string, got ${typeof $}: ${$}`)},IL6=($)=>{if($===null||$===void 0)return;let Z=Qa$($),Q=[];for(let X in Z)if(Z[X]!=null)Q.push(X);if(Q.length===0)throw TypeError("Unions must have exactly one non-null member. None were found.");if(Q.length>1)throw TypeError(`Unions must have exactly one non-null member. Keys ${Q} were not null.`);return Z},SU1=($)=>{if(typeof $=="string")return l$0(Ld($));return l$0($)},ML6=SU1,Xa$=($)=>{if(typeof $=="string")return NV0(Ld($));return NV0($)},VL6=/(-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?)|(-?Infinity)|(NaN)/g,Ld=($)=>{let Z=$.match(VL6);if(Z===null||Z[0].length!==$.length)throw TypeError("Expected real number, got implicit NaN");return parseFloat($)},CU1=($)=>{if(typeof $=="string")return Ya$($);return l$0($)},kL6=CU1,SL6=CU1,CL6=($)=>{if(typeof $=="string")return Ya$($);return NV0($)},Ya$=($)=>{switch($){case"NaN":return NaN;case"Infinity":return 1/0;case"-Infinity":return-1/0;default:throw Error(`Unable to parse float value: ${$}`)}},Ja$=($)=>{if(typeof $==="string")return c$0(Ld($));return c$0($)},_L6=Ja$,vL6=($)=>{if(typeof $==="string")return RU1(Ld($));return RU1($)},Od=($)=>{if(typeof $==="string")return qU1(Ld($));return qU1($)},Ga$=($)=>{if(typeof $==="string")return IU1(Ld($));return IU1($)},BV0=($)=>{return String(TypeError($).stack||$).split(`
|
|
3546
3546
|
`).slice(0,5).filter((Z)=>!Z.includes("stackTraceWarning")).join(`
|
|
3547
3547
|
`)},m$0={warn:console.warn},xL6=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],_U1=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function fL6($){let Z=$.getUTCFullYear(),Q=$.getUTCMonth(),X=$.getUTCDay(),Y=$.getUTCDate(),J=$.getUTCHours(),G=$.getUTCMinutes(),K=$.getUTCSeconds(),W=Y<10?`0${Y}`:`${Y}`,H=J<10?`0${J}`:`${J}`,F=G<10?`0${G}`:`${G}`,U=K<10?`0${K}`:`${K}`;return`${xL6[X]}, ${W} ${_U1[Q]} ${Z} ${H}:${F}:${U} GMT`}var bL6=new RegExp(/^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(?:\.(\d+))?[zZ]$/),yL6=($)=>{if($===null||$===void 0)return;if(typeof $!=="string")throw TypeError("RFC-3339 date-times must be expressed as strings");let Z=bL6.exec($);if(!Z)throw TypeError("Invalid RFC-3339 date-time value");let[Q,X,Y,J,G,K,W,H]=Z,F=Od(Dd(X)),U=GU(Y,"month",1,12),N=GU(J,"day",1,31);return h$0(F,U,N,{hours:G,minutes:K,seconds:W,fractionalMilliseconds:H})},gL6=new RegExp(/^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(?:\.(\d+))?(([-+]\d{2}\:\d{2})|[zZ])$/),hL6=($)=>{if($===null||$===void 0)return;if(typeof $!=="string")throw TypeError("RFC-3339 date-times must be expressed as strings");let Z=gL6.exec($);if(!Z)throw TypeError("Invalid RFC-3339 date-time value");let[Q,X,Y,J,G,K,W,H,F]=Z,U=Od(Dd(X)),N=GU(Y,"month",1,12),B=GU(J,"day",1,31),O=h$0(U,N,B,{hours:G,minutes:K,seconds:W,fractionalMilliseconds:H});if(F.toUpperCase()!="Z")O.setTime(O.getTime()-sL6(F));return O},uL6=new RegExp(/^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\d{2}) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\d{4}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? GMT$/),lL6=new RegExp(/^(?:Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\d{2})-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\d{2}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? GMT$/),cL6=new RegExp(/^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( [1-9]|\d{2}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? (\d{4})$/),mL6=($)=>{if($===null||$===void 0)return;if(typeof $!=="string")throw TypeError("RFC-7231 date-times must be expressed as strings");let Z=uL6.exec($);if(Z){let[Q,X,Y,J,G,K,W,H]=Z;return h$0(Od(Dd(J)),AU1(Y),GU(X,"day",1,31),{hours:G,minutes:K,seconds:W,fractionalMilliseconds:H})}if(Z=lL6.exec($),Z){let[Q,X,Y,J,G,K,W,H]=Z;return nL6(h$0(iL6(J),AU1(Y),GU(X,"day",1,31),{hours:G,minutes:K,seconds:W,fractionalMilliseconds:H}))}if(Z=cL6.exec($),Z){let[Q,X,Y,J,G,K,W,H]=Z;return h$0(Od(Dd(H)),AU1(X),GU(Y.trimLeft(),"day",1,31),{hours:J,minutes:G,seconds:K,fractionalMilliseconds:W})}throw TypeError("Invalid RFC-7231 date-time value")},dL6=($)=>{if($===null||$===void 0)return;let Z;if(typeof $==="number")Z=$;else if(typeof $==="string")Z=SU1($);else if(typeof $==="object"&&$.tag===1)Z=$.value;else throw TypeError("Epoch timestamps must be expressed as floating point numbers or their string representation");if(Number.isNaN(Z)||Z===1/0||Z===-1/0)throw TypeError("Epoch timestamps must be valid, non-Infinite, non-NaN numerics");return new Date(Math.round(Z*1000))},h$0=($,Z,Q,X)=>{let Y=Z-1;return oL6($,Y,Q),new Date(Date.UTC($,Y,Q,GU(X.hours,"hour",0,23),GU(X.minutes,"minute",0,59),GU(X.seconds,"seconds",0,60),aL6(X.fractionalMilliseconds)))},iL6=($)=>{let Z=new Date().getUTCFullYear(),Q=Math.floor(Z/100)*100+Od(Dd($));if(Q<Z)return Q+100;return Q},pL6=1576800000000,nL6=($)=>{if($.getTime()-new Date().getTime()>pL6)return new Date(Date.UTC($.getUTCFullYear()-100,$.getUTCMonth(),$.getUTCDate(),$.getUTCHours(),$.getUTCMinutes(),$.getUTCSeconds(),$.getUTCMilliseconds()));return $},AU1=($)=>{let Z=_U1.indexOf($);if(Z<0)throw TypeError(`Invalid month: ${$}`);return Z+1},tL6=[31,28,31,30,31,30,31,31,30,31,30,31],oL6=($,Z,Q)=>{let X=tL6[Z];if(Z===1&&rL6($))X=29;if(Q>X)throw TypeError(`Invalid day for ${_U1[Z]} in ${$}: ${Q}`)},rL6=($)=>{return $%4===0&&($%100!==0||$%400===0)},GU=($,Z,Q,X)=>{let Y=Ga$(Dd($));if(Y<Q||Y>X)throw TypeError(`${Z} must be between ${Q} and ${X}, inclusive`);return Y},aL6=($)=>{if($===null||$===void 0)return 0;return Xa$("0."+$)*1000},sL6=($)=>{let Z=$[0],Q=1;if(Z=="+")Q=1;else if(Z=="-")Q=-1;else throw TypeError(`Offset direction, ${Z}, must be "+" or "-"`);let X=Number($.substring(1,3)),Y=Number($.substring(4,6));return Q*(X*60+Y)*60*1000},Dd=($)=>{let Z=0;while(Z<$.length-1&&$.charAt(Z)==="0")Z++;if(Z===0)return $;return $.slice(Z)},Lb=function(Z){return Object.assign(new String(Z),{deserializeJSON(){return JSON.parse(String(Z))},toString(){return String(Z)},toJSON(){return String(Z)}})};Lb.from=($)=>{if($&&typeof $==="object"&&($ instanceof Lb||("deserializeJSON"in $)))return $;else if(typeof $==="string"||Object.getPrototypeOf($)===String.prototype)return Lb(String($));return Lb(JSON.stringify($))};Lb.fromObject=Lb.from;function eL6($){if($.includes(",")||$.includes('"'))$=`"${$.replace(/"/g,"\\\"")}"`;return $}var vU1="(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun)(?:[ne|u?r]?s?day)?",xU1="(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)",fU1="(\\d?\\d):(\\d{2}):(\\d{2})(?:\\.(\\d+))?",Ka$="(\\d?\\d)",Wa$="(\\d{4})",$w6=new RegExp(/^(\d{4})-(\d\d)-(\d\d)[tT](\d\d):(\d\d):(\d\d)(\.(\d+))?(([-+]\d\d:\d\d)|[zZ])$/),Zw6=new RegExp(`^${vU1}, ${Ka$} ${xU1} ${Wa$} ${fU1} GMT$`),Qw6=new RegExp(`^${vU1}, ${Ka$}-${xU1}-(\\d\\d) ${fU1} GMT$`),Xw6=new RegExp(`^${vU1} ${xU1} ( [1-9]|\\d\\d) ${fU1} ${Wa$}$`),Yw6=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],Jw6=($)=>{if($==null)return;let Z=NaN;if(typeof $==="number")Z=$;else if(typeof $==="string"){if(!/^-?\d*\.?\d+$/.test($))throw TypeError("parseEpochTimestamp - numeric string invalid.");Z=Number.parseFloat($)}else if(typeof $==="object"&&$.tag===1)Z=$.value;if(isNaN(Z)||Math.abs(Z)===1/0)throw TypeError("Epoch timestamps must be valid finite numbers.");return new Date(Math.round(Z*1000))},Gw6=($)=>{if($==null)return;if(typeof $!=="string")throw TypeError("RFC3339 timestamps must be strings");let Z=$w6.exec($);if(!Z)throw TypeError(`Invalid RFC3339 timestamp format ${$}`);let[,Q,X,Y,J,G,K,,W,H]=Z;hB(X,1,12),hB(Y,1,31),hB(J,0,23),hB(G,0,59),hB(K,0,60);let F=new Date(Date.UTC(Number(Q),Number(X)-1,Number(Y),Number(J),Number(G),Number(K),Number(W)?Math.round(parseFloat(`0.${W}`)*1000):0));if(F.setUTCFullYear(Number(Q)),H.toUpperCase()!="Z"){let[,U,N,B]=/([+-])(\d\d):(\d\d)/.exec(H)||[void 0,"+",0,0],O=U==="-"?1:-1;F.setTime(F.getTime()+O*(Number(N)*60*60*1000+Number(B)*60*1000))}return F},Kw6=($)=>{if($==null)return;if(typeof $!=="string")throw TypeError("RFC7231 timestamps must be strings.");let Z,Q,X,Y,J,G,K,W;if(W=Zw6.exec($))[,Z,Q,X,Y,J,G,K]=W;else if(W=Qw6.exec($))[,Z,Q,X,Y,J,G,K]=W,X=(Number(X)+1900).toString();else if(W=Xw6.exec($))[,Q,Z,Y,J,G,K,X]=W;if(X&&G){let H=Date.UTC(Number(X),Yw6.indexOf(Q),Number(Z),Number(Y),Number(J),Number(G),K?Math.round(parseFloat(`0.${K}`)*1000):0);hB(Z,1,31),hB(Y,0,23),hB(J,0,59),hB(G,0,60);let F=new Date(H);return F.setUTCFullYear(Number(X)),F}throw TypeError(`Invalid RFC7231 date-time value ${$}.`)};function hB($,Z,Q){let X=Number($);if(X<Z||X>Q)throw Error(`Value ${X} out of range [${Z}, ${Q}]`)}function Ww6($,Z,Q){if(Q<=0||!Number.isInteger(Q))throw Error("Invalid number of delimiters ("+Q+") for splitEvery.");let X=$.split(Z);if(Q===1)return X;let Y=[],J="";for(let G=0;G<X.length;G++){if(J==="")J=X[G];else J+=Z+X[G];if((G+1)%Q===0)Y.push(J),J=""}if(J!=="")Y.push(J);return Y}var Hw6=($)=>{let Z=$.length,Q=[],X=!1,Y=void 0,J=0;for(let G=0;G<Z;++G){let K=$[G];switch(K){case'"':if(Y!=="\\")X=!X;break;case",":if(!X)Q.push($.slice(J,G)),J=G+1;break}Y=K}return Q.push($.slice(J)),Q.map((G)=>{G=G.trim();let K=G.length;if(K<2)return G;if(G[0]==='"'&&G[K-1]==='"')G=G.slice(1,K-1);return G.replace(/\\"/g,'"')})},pr$=/^-?\d*(\.\d+)?$/;class wV0{string;type;constructor($,Z){if(this.string=$,this.type=Z,!pr$.test($))throw Error('@smithy/core/serde - NumericValue must only contain [0-9], at most one decimal point ".", and an optional negation prefix "-".')}toString(){return this.string}static[Symbol.hasInstance]($){if(!$||typeof $!=="object")return!1;let Z=$;return wV0.prototype.isPrototypeOf($)||Z.type==="bigDecimal"&&pr$.test(Z.string)}}function Fw6($){return new wV0(String($),"bigDecimal")}var Ha$={},MU1={};for(let $=0;$<256;$++){let Z=$.toString(16).toLowerCase();if(Z.length===1)Z=`0${Z}`;Ha$[$]=Z,MU1[Z]=$}function Uw6($){if($.length%2!==0)throw Error("Hex encoded strings must have an even number length");let Z=new Uint8Array($.length/2);for(let Q=0;Q<$.length;Q+=2){let X=$.slice(Q,Q+2).toLowerCase();if(X in MU1)Z[Q/2]=MU1[X];else throw Error(`Cannot decode unrecognized sequence ${X} as hexadecimal`)}return Z}function Fa$($){let Z="";for(let Q=0;Q<$.byteLength;Q++)Z+=Ha$[$[Q]];return Z}var Nw6=($)=>{if(!$)return 0;if(typeof $==="string")return Buffer.byteLength($);else if(typeof $.byteLength==="number")return $.byteLength;else if(typeof $.size==="number")return $.size;else if(typeof $.start==="number"&&typeof $.end==="number")return $.end+1-$.start;else if($ instanceof HL6){if($.path!=null)return FL6($.path).size;else if(typeof $.fd==="number")return UL6($.fd).size}throw Error(`Body Length computation failed for ${$}`)},Ua$=($)=>{if(typeof $==="string")return LV0($);if(ArrayBuffer.isView($))return new Uint8Array($.buffer,$.byteOffset,$.byteLength/Uint8Array.BYTES_PER_ELEMENT);return new Uint8Array($)},Na$=($,Z)=>(Q,X)=>async(Y)=>{let{response:J}=await Q(Y);try{let G=await Z(J,$);return{response:J,output:G}}catch(G){if(Object.defineProperty(G,"$response",{value:J,enumerable:!1,writable:!1,configurable:!1}),!("$metadata"in G)){try{G.message+=`
|