decocms 2.186.9 → 2.186.10
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-DoDnREQU.js → AlertCircle-Cbtm5L98.js} +1 -1
- package/dist/client/assets/{ArrowLeft-1uQ4hoAA.js → ArrowLeft-CCViWpBS.js} +1 -1
- package/dist/client/assets/{ArrowUp-CiCCsmLU.js → ArrowUp-PknJL_3i.js} +1 -1
- package/dist/client/assets/{Check-DsqqbwRv.js → Check-Cj1LnSt2.js} +1 -1
- package/dist/client/assets/{ChevronDown-DMIUCeXF.js → ChevronDown-CHOEDpCq.js} +1 -1
- package/dist/client/assets/{ChevronRight-BvErZvXV.js → ChevronRight-DY2lrGOn.js} +1 -1
- package/dist/client/assets/{ChevronUp-BPTkFtVQ.js → ChevronUp-B38OwFL_.js} +1 -1
- package/dist/client/assets/{Container-D8gJR-V9.js → Container-DLm11uCu.js} +1 -1
- package/dist/client/assets/{Dataflow03-D9B0IMv1.js → Dataflow03-Ba3PnLD-.js} +1 -1
- package/dist/client/assets/{FolderClosed-DtTyOuV-.js → FolderClosed-rrRpN158.js} +1 -1
- package/dist/client/assets/{Loading01-DTPGNGDe.js → Loading01-CJFbgK59.js} +1 -1
- package/dist/client/assets/{Play-BSN624z4.js → Play-CsSGdP4Z.js} +1 -1
- package/dist/client/assets/{Plus-VNSvGQN9.js → Plus-CfD-fvi9.js} +1 -1
- package/dist/client/assets/{RefreshCcw01-Dbe0-ztA.js → RefreshCcw01-Cja044eH.js} +1 -1
- package/dist/client/assets/{SearchMd-BVguqJPF.js → SearchMd-B4W5fcyf.js} +1 -1
- package/dist/client/assets/{Settings01-BKawEeOc.js → Settings01-CMhz8juF.js} +1 -1
- package/dist/client/assets/{Trash01-p_-P7rrZ.js → Trash01-Cl6ql_TT.js} +1 -1
- package/dist/client/assets/{Type01-D1knZTdC.js → Type01-UhdL8ksX.js} +1 -1
- package/dist/client/assets/{Upload01-D-cgBdXK.js → Upload01-DX94fj05.js} +1 -1
- package/dist/client/assets/{User01-C1Py8RLi.js → User01-BgxUQ8sC.js} +1 -1
- package/dist/client/assets/{X-AnvD8fGN.js → X-De9pN2CV.js} +1 -1
- package/dist/client/assets/{XCircle-Of71XlDY.js → XCircle-wueTdlAa.js} +1 -1
- package/dist/client/assets/{XClose-CIHCEBuc.js → XClose-CZL78D4W.js} +1 -1
- package/dist/client/assets/{Zap-Cbf8Gxw3.js → Zap-CeI4Bf9r.js} +1 -1
- package/dist/client/assets/{agent-connections-preview-9beskZXW.js → agent-connections-preview-DgOyqMmO.js} +1 -1
- package/dist/client/assets/{agent-detail-CpQCW--v.js → agent-detail-BrPBEK2H.js} +1 -1
- package/dist/client/assets/{agents-C4-J6TQS.js → agents-C0fbUAlo.js} +1 -1
- package/dist/client/assets/{ai-providers-logos-Du8KzWpH.js → ai-providers-logos-BditdJqa.js} +1 -1
- package/dist/client/assets/{alert-dialog-BIZOEctM.js → alert-dialog-BTHm3OB6.js} +1 -1
- package/dist/client/assets/{auth-catchall-BjYN1-n9.js → auth-catchall-c350Gt_l.js} +1 -1
- package/dist/client/assets/{automation-detail-Ca2mfThk.js → automation-detail-KCkCQOlG.js} +1 -1
- package/dist/client/assets/{automations-D_MLQzBu.js → automations-DlYjNJ-T.js} +1 -1
- package/dist/client/assets/{avatar-BDzYYIB_.js → avatar-B2cKnsRn.js} +1 -1
- package/dist/client/assets/{badge-CintUB2m.js → badge-BHawtHqt.js} +1 -1
- package/dist/client/assets/{breadcrumb-CCT_gYCX.js → breadcrumb-D8w6T3TH.js} +1 -1
- package/dist/client/assets/{card-DiqqquYR.js → card-DP3El98a.js} +1 -1
- package/dist/client/assets/{checkbox-B5yMaD1U.js → checkbox-B17TL9Yy.js} +1 -1
- package/dist/client/assets/{collapsible-CUnNCwaM.js → collapsible-DbjcsjQi.js} +1 -1
- package/dist/client/assets/{collection-detail-DYyODume.js → collection-detail-C6eOIJhR.js} +1 -1
- package/dist/client/assets/{collection-display-button-6w4fqzbK.js → collection-display-button-CCE6Hf4p.js} +1 -1
- package/dist/client/assets/{collection-search-R3szwhKc.js → collection-search-DQX16wbn.js} +1 -1
- package/dist/client/assets/{collection-table-wrapper-BYkH4l2b.js → collection-table-wrapper-Csa2FMUQ.js} +1 -1
- package/dist/client/assets/{collection-tabs-CTpzw-QP.js → collection-tabs-CNP12Tiu.js} +1 -1
- package/dist/client/assets/{collections-Md0axhBZ.js → collections-nigUfX75.js} +1 -1
- package/dist/client/assets/{command-oqXofzFf.js → command-CEWGR7a5.js} +1 -1
- package/dist/client/assets/{connection-card-u3N2FMhV.js → connection-card-4f__CZNa.js} +1 -1
- package/dist/client/assets/{connection-detail-DkArP4xi.js → connection-detail-B9kB7yu6.js} +1 -1
- package/dist/client/assets/{connections-DYEJw6-9.js → connections-BCGXism-.js} +1 -1
- package/dist/client/assets/{constants-Cf6w8uWj.js → constants-B5ylLz8P.js} +1 -1
- package/dist/client/assets/constants-G9TKH6sR.js +1 -0
- package/dist/client/assets/{context-BNN0sjtQ.js → context-DRHBeAGs.js} +1 -1
- package/dist/client/assets/{create-organization-dialog-Dxw___Aq.js → create-organization-dialog-CWSHs2rw.js} +1 -1
- package/dist/client/assets/{create-project-dialog-Db-cXCFP.js → create-project-dialog-CX--SrDy.js} +1 -1
- package/dist/client/assets/{danger-D0MixhKB.js → danger-CGFCjSd5.js} +1 -1
- package/dist/client/assets/{danger-zone-DJu8uIZo.js → danger-zone-DS1p5Z1H.js} +1 -1
- package/dist/client/assets/{dependencies-DKpj5-z2.js → dependencies-DzKDg0s7.js} +1 -1
- package/dist/client/assets/{dialog-B_ZBKGcK.js → dialog-D7WigTyK.js} +1 -1
- package/dist/client/assets/{drawer-DxTGqDKY.js → drawer-DkpraRh8.js} +1 -1
- package/dist/client/assets/{dropdown-menu-BGBf4SQr.js → dropdown-menu-PjKkpqts.js} +1 -1
- package/dist/client/assets/{dynamic-plugin-layout-BwaaiDL6.js → dynamic-plugin-layout--G8RvSxX.js} +1 -1
- package/dist/client/assets/{editable-task-title-mwJckul7.js → editable-task-title-DW-xTRvX.js} +1 -1
- package/dist/client/assets/{empty-state-Dt5CC_E7.js → empty-state-CAvSvSHU.js} +1 -1
- package/dist/client/assets/{empty-state-5hCgVmoA.js → empty-state-D14a0Zxq.js} +1 -1
- package/dist/client/assets/{env-vars-editor-CSLx760Y.js → env-vars-editor-Kwm2KcaP.js} +1 -1
- package/dist/client/assets/{extract-connection-data-BdJfym5q.js → extract-connection-data-BhDGo06G.js} +1 -1
- package/dist/client/assets/{form-BAfFoDTS.js → form-DXxHt_ci.js} +1 -1
- package/dist/client/assets/{general-ihPcNIOb.js → general-BQAd2Vf4.js} +1 -1
- package/dist/client/assets/{home-BSU9U8m-.js → home-C9Hjf4rP.js} +1 -1
- package/dist/client/assets/{import-from-deco-dialog-CxiHwpr_.js → import-from-deco-dialog-B6yW7KqN.js} +1 -1
- package/dist/client/assets/{index-BUla3j6g.js → index-B-Jlqnye.js} +1 -1
- package/dist/client/assets/{index-DzY5efun.js → index-BBdUsNQs.js} +1 -1
- package/dist/client/assets/{index-ALdwmNA1.js → index-BxcI4xNK.js} +1 -1
- package/dist/client/assets/{index-CT7BYuwf.js → index-D3056qAr.js} +1 -1
- package/dist/client/assets/{index-BlVIyhiN.js → index-DWiV_aLY.js} +1 -1
- package/dist/client/assets/{index-BB9dnQ8g.js → index-DlX3m2OJ.js} +1 -1
- package/dist/client/assets/{index-BclDkWx8.js → index-Dqx4k4bH.js} +1 -1
- package/dist/client/assets/{index-D2soXfaG.js → index-Drzwukrz.js} +1 -1
- package/dist/client/assets/{index-CGKC8BVy.js → index-cjdRPOfg.js} +1 -1
- package/dist/client/assets/{index-Y_g6-sbQ.js → index-fnzLSheB.js} +2 -2
- package/dist/client/assets/{index-TzbVkru2.js → index-mZiJdp7F.js} +1 -1
- package/dist/client/assets/{infiniteQueryObserver-BvNG1QG_.js → infiniteQueryObserver-DN95LZQa.js} +1 -1
- package/dist/client/assets/{input-BJjZBSH8.js → input-CBI5HJST.js} +1 -1
- package/dist/client/assets/{integration-icon-7Bz6GmNv.js → integration-icon-3E3I1Ow-.js} +1 -1
- package/dist/client/assets/{label-BagqgWUv.js → label-_1-T_NFE.js} +1 -1
- package/dist/client/assets/{layout-BPbh2R4B.js → layout-6qPsvkaE.js} +1 -1
- package/dist/client/assets/{layout-BL6sB2DL.js → layout-Bz1664Tv.js} +1 -1
- package/dist/client/assets/{login-DfPhQ0qS.js → login-C_txKEQ0.js} +1 -1
- package/dist/client/assets/{logo-upload-BlhGNrgV.js → logo-upload-mdUsABL8.js} +1 -1
- package/dist/client/assets/{mcp-app-renderer-BSLoo8nT.js → mcp-app-renderer-B2FWYfE4.js} +1 -1
- package/dist/client/assets/{mcp-server-card-DV_BN-gm.js → mcp-server-card-BIEWzRvB.js} +1 -1
- package/dist/client/assets/{mcp-server-detail-CZ_j8X5E.js → mcp-server-detail-BOnb8TLh.js} +2 -2
- package/dist/client/assets/{members-2b6Jtq6P.js → members-ayS36sMo.js} +1 -1
- package/dist/client/assets/{monaco-editor-CzOYJf-q.js → monaco-editor-WEkFmf8F.js} +1 -1
- package/dist/client/assets/{monitoring-dashboard-edit-BltMP3h3.js → monitoring-dashboard-edit-Cjg34Kwl.js} +1 -1
- package/dist/client/assets/{monitoring-dashboard-view-CwHqCHxn.js → monitoring-dashboard-view-Sy_NtlSG.js} +1 -1
- package/dist/client/assets/{monitoring-B3bfHtHG.js → monitoring-oPPTc1LP.js} +1 -1
- package/dist/client/assets/{monitoring-stats-row-DdkGoKLi.js → monitoring-stats-row-Bn9Uwk5d.js} +1 -1
- package/dist/client/assets/{oauth-callback-Csht94Tu.js → oauth-callback-49UXjt9V.js} +1 -1
- package/dist/client/assets/{oauth-callback-ai-provider-4QVXXmM1.js → oauth-callback-ai-provider-BVZyJ0h5.js} +1 -1
- package/dist/client/assets/{org-ai-providers-Udjn3QRR.js → org-ai-providers-BM6HJKuc.js} +1 -1
- package/dist/client/assets/{page-CZ2WRv_I.js → page-DZsI7Ctd.js} +1 -1
- package/dist/client/assets/{page-Bu3owRsU.js → page-DqQHSwAo.js} +1 -1
- package/dist/client/assets/{plugin-empty-state-2Yos5GOU.js → plugin-empty-state-ChNZcRJs.js} +1 -1
- package/dist/client/assets/{plugin-header-CqAMfljl.js → plugin-header-D6KTV5fu.js} +1 -1
- package/dist/client/assets/plugins-DWpFeozR.js +1 -0
- package/dist/client/assets/{popover-lD-HtMf4.js → popover-DoT6XNod.js} +1 -1
- package/dist/client/assets/{project-app-view-BuPOn3s0.js → project-app-view-D27YxwOB.js} +1 -1
- package/dist/client/assets/project-layout-CxV9JRT2.js +1 -0
- package/dist/client/assets/{project-plugins-CIRGXDFY.js → project-plugins-DWXQnNI_.js} +1 -1
- package/dist/client/assets/{projects-list-BcL7c7DQ.js → projects-list-DGwgAc0o.js} +1 -1
- package/dist/client/assets/{registry-layout-j-JX07UN.js → registry-layout-D_7EozeN.js} +1 -1
- package/dist/client/assets/{registry-utils-DDsRF62n.js → registry-utils-BiwNNrLy.js} +1 -1
- package/dist/client/assets/{reset-password-CHFMULJN.js → reset-password-D4joRU3v.js} +1 -1
- package/dist/client/assets/{resizable-CTPIKv4j.js → resizable-BTe7pUxK.js} +1 -1
- package/dist/client/assets/{save-actions-xo9lGU3J.js → save-actions-r3fCxT64.js} +1 -1
- package/dist/client/assets/{scroll-area-Dvs0ghbP.js → scroll-area-DcQSaz6_.js} +1 -1
- package/dist/client/assets/{select-9VPJVrM5.js → select-CuLy3REb.js} +1 -1
- package/dist/client/assets/{select-virtual-mcp-B6M52JVi.js → select-virtual-mcp-DF77Fde_.js} +1 -1
- package/dist/client/assets/{shell-layout-DO1T7Kx6.js → shell-layout-ORIDPuR9.js} +2 -2
- package/dist/client/assets/{sidebar-settings-CZn76McG.js → sidebar-settings-C0JRgwvB.js} +1 -1
- package/dist/client/assets/{skeleton-DPPFiXsR.js → skeleton-kJ_1M0ks.js} +1 -1
- package/dist/client/assets/{spinner-DRNxYthF.js → spinner-CJLGQeTL.js} +1 -1
- package/dist/client/assets/{store-invite-CrG3z_Nw.js → store-invite-BvklUdrL.js} +1 -1
- package/dist/client/assets/{switch-BHSO5vl3.js → switch-uIQMlKq6.js} +1 -1
- package/dist/client/assets/{table-CvtSPXA4.js → table-BTOlVJn3.js} +1 -1
- package/dist/client/assets/{tabs-CdWME6KE.js → tabs-CxRF-CYj.js} +1 -1
- package/dist/client/assets/{task-status-DFJ-29wD.js → task-status-zYkVm9gw.js} +1 -1
- package/dist/client/assets/tasks-cDGgR1rD.js +1 -0
- package/dist/client/assets/{tasks-panel-BRc3ZfGK.js → tasks-panel-otVJY_Br.js} +1 -1
- package/dist/client/assets/{textarea-Dtfhz_OA.js → textarea-rEHudfyV.js} +1 -1
- package/dist/client/assets/{time-range-picker-DcKa3AFf.js → time-range-picker-BCnME4zz.js} +1 -1
- package/dist/client/assets/{toggle-group-iephCdnh.js → toggle-group-vE44W8pW.js} +1 -1
- package/dist/client/assets/{tools-list-CDbT-l23.js → tools-list-BZyPUTpN.js} +1 -1
- package/dist/client/assets/{tooltip-Cem552VW.js → tooltip-hlHlzWhV.js} +1 -1
- package/dist/client/assets/{types-DmDUXWAD.js → types-BMfsriOE.js} +1 -1
- package/dist/client/assets/{use-automations-DSFrBv_6.js → use-automations-BNWbF42a.js} +1 -1
- package/dist/client/assets/{use-collections-D0k_QRc1.js → use-collections-B0VCcn8e.js} +1 -1
- package/dist/client/assets/{use-connection-CP_xYk4Q.js → use-connection-BUxUpG_F.js} +1 -1
- package/dist/client/assets/{use-copy-d-3iM6J5.js → use-copy-J8HCGL54.js} +1 -1
- package/dist/client/assets/{use-create-virtual-mcp-Dl6pqwaW.js → use-create-virtual-mcp-CSUTkPbs.js} +1 -1
- package/dist/client/assets/{use-infinite-scroll-DtHbnYey.js → use-infinite-scroll-ztH4kpTo.js} +1 -1
- package/dist/client/assets/{use-install-from-registry-DZlZY82P.js → use-install-from-registry-BkNDTVYn.js} +1 -1
- package/dist/client/assets/{use-list-state-DlUAsHMe.js → use-list-state-DYEAn42K.js} +1 -1
- package/dist/client/assets/{use-mcp-prompts-8NM9rwku.js → use-mcp-prompts-vhovBlsL.js} +1 -1
- package/dist/client/assets/{use-mcp-resources-CHuUMbyT.js → use-mcp-resources-BR6sQvU6.js} +1 -1
- package/dist/client/assets/{use-mcp-tools-BhKK8D6X.js → use-mcp-tools-CfZSf4F7.js} +1 -1
- package/dist/client/assets/{use-members-dsS5L-Vf.js → use-members-DgXFii4e.js} +1 -1
- package/dist/client/assets/{use-project-3rL77wj_.js → use-project-_2326oBQ.js} +1 -1
- package/dist/client/assets/{use-store-discovery-CbIFZaKF.js → use-store-discovery-QlCtGR49.js} +1 -1
- package/dist/client/assets/{use-view-mode-CUtH8BDh.js → use-view-mode-Ctjdtgx6.js} +1 -1
- package/dist/client/assets/{use-virtual-mcp-tHRSpblC.js → use-virtual-mcp-DtVNlpR8.js} +1 -1
- package/dist/client/assets/useInfiniteQuery-COM61pAf.js +1 -0
- package/dist/client/assets/{useMutation-09-2Qwl6.js → useMutation-CsiTkFgY.js} +1 -1
- package/dist/client/assets/useQuery-D7A6izWp.js +1 -0
- package/dist/client/assets/useSuspenseInfiniteQuery-aZXW_lbE.js +1 -0
- package/dist/client/assets/{user-BOuwXTIR.js → user-Bs9OrNKP.js} +1 -1
- package/dist/client/assets/{workflow-D4GNw4Q9.js → workflow--ij0aqKH.js} +1 -1
- package/dist/client/assets/{workflow-BXPIrAUA.js → workflow-XMMRqOtB.js} +1 -1
- package/dist/client/index.html +1 -1
- package/dist/server/cli.js +2 -2
- package/dist/server/server.js +1 -1
- package/package.json +1 -1
- package/dist/client/assets/constants-B4UGdbkn.js +0 -1
- package/dist/client/assets/plugins-CCu6p4dx.js +0 -1
- package/dist/client/assets/project-layout-u1PVsl6x.js +0 -1
- package/dist/client/assets/tasks-BlhTZX1-.js +0 -1
- package/dist/client/assets/useInfiniteQuery-CjAl-HeV.js +0 -1
- package/dist/client/assets/useQuery-DKMHT49Q.js +0 -1
- package/dist/client/assets/useSuspenseInfiniteQuery-DZTp9qX4.js +0 -1
- package/dist/server/node_modules/pg/LICENSE +0 -21
- package/dist/server/node_modules/pg/README.md +0 -95
- package/dist/server/node_modules/pg/esm/index.mjs +0 -20
- package/dist/server/node_modules/pg/lib/client.js +0 -743
- package/dist/server/node_modules/pg/lib/connection-parameters.js +0 -171
- package/dist/server/node_modules/pg/lib/connection.js +0 -221
- package/dist/server/node_modules/pg/lib/crypto/cert-signatures.js +0 -122
- package/dist/server/node_modules/pg/lib/crypto/sasl.js +0 -212
- package/dist/server/node_modules/pg/lib/crypto/utils-legacy.js +0 -43
- package/dist/server/node_modules/pg/lib/crypto/utils-webcrypto.js +0 -89
- package/dist/server/node_modules/pg/lib/crypto/utils.js +0 -9
- package/dist/server/node_modules/pg/lib/defaults.js +0 -91
- package/dist/server/node_modules/pg/lib/index.js +0 -73
- package/dist/server/node_modules/pg/lib/native/client.js +0 -323
- package/dist/server/node_modules/pg/lib/native/index.js +0 -2
- package/dist/server/node_modules/pg/lib/native/query.js +0 -165
- package/dist/server/node_modules/pg/lib/query.js +0 -252
- package/dist/server/node_modules/pg/lib/result.js +0 -109
- package/dist/server/node_modules/pg/lib/stream.js +0 -83
- package/dist/server/node_modules/pg/lib/type-overrides.js +0 -35
- package/dist/server/node_modules/pg/lib/utils.js +0 -217
- package/dist/server/node_modules/pg/package.json +0 -76
- package/dist/server/node_modules/postgres-array/index.d.ts +0 -4
- package/dist/server/node_modules/postgres-array/index.js +0 -97
- package/dist/server/node_modules/postgres-array/license +0 -21
- package/dist/server/node_modules/postgres-array/package.json +0 -35
- package/dist/server/node_modules/postgres-array/readme.md +0 -43
- package/dist/server/node_modules/postgres-bytea/index.js +0 -33
- package/dist/server/node_modules/postgres-bytea/license +0 -21
- package/dist/server/node_modules/postgres-bytea/package.json +0 -34
- package/dist/server/node_modules/postgres-bytea/readme.md +0 -34
- package/dist/server/node_modules/postgres-date/index.js +0 -116
- package/dist/server/node_modules/postgres-date/license +0 -21
- package/dist/server/node_modules/postgres-date/package.json +0 -33
- package/dist/server/node_modules/postgres-date/readme.md +0 -49
- package/dist/server/node_modules/split2/LICENSE +0 -13
- package/dist/server/node_modules/split2/README.md +0 -85
- package/dist/server/node_modules/split2/bench.js +0 -27
- package/dist/server/node_modules/split2/index.js +0 -141
- package/dist/server/node_modules/split2/package.json +0 -39
- package/dist/server/node_modules/split2/test.js +0 -409
package/dist/server/server.js
CHANGED
|
@@ -2675,7 +2675,7 @@ Bad (wrong case): {"title": "Fix Login Button On Mobile"}`;function mY1(Z){retur
|
|
|
2675
2675
|
However, a future version may change this behavior to prefer the ENV static credentials.
|
|
2676
2676
|
Please ensure that your environment only sets either the AWS_PROFILE or the
|
|
2677
2677
|
AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY pair.
|
|
2678
|
-
`),Gm6=!0}throw new kH1.CredentialsProviderError("AWS_PROFILE is set, skipping fromEnv provider.",{logger:Z.logger,tryNextLink:!0})}return Z.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromEnv"),Pn1(Z)()},async(G)=>{Z.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromSSO");let{ssoStartUrl:W,ssoAccountId:J,ssoRegion:Y,ssoRoleName:F,ssoSession:K}=Z;if(!W&&!J&&!Y&&!F&&!K)throw new kH1.CredentialsProviderError("Skipping SSO provider in default chain (inputs do not include SSO fields).",{logger:Z.logger});let{fromSSO:H}=await Promise.resolve().then(() => (di1(),li1));return H(Z)(G)},async(G)=>{Z.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromIni");let{fromIni:W}=await Promise.resolve().then(() => (Zm6(),eu6));return W(Z)(G)},async(G)=>{Z.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromProcess");let{fromProcess:W}=await Promise.resolve().then(() => (na1(),pa1));return W(Z)(G)},async(G)=>{Z.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromTokenFile");let{fromTokenFile:W}=await Promise.resolve().then(() => (ta1(),sa1));return W(Z)(G)},async()=>{return Z.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::remoteProvider"),(await Ck6(Z))()},async()=>{throw new kH1.CredentialsProviderError("Could not load credentials from any providers",{tryNextLink:!1,logger:Z.logger})}],sO9);var sO9=(Z)=>Z?.expiration!==void 0&&Z.expiration.getTime()-Date.now()<300000;var tk=c1(Mi(),1),tO9="AWS_S3_USE_ARN_REGION",eO9="s3_use_arn_region",Ym6={environmentVariableSelector:(Z)=>tk.booleanSelector(Z,tO9,tk.SelectorType.ENV),configFileSelector:(Z)=>tk.booleanSelector(Z,eO9,tk.SelectorType.CONFIG),default:void 0};var gH1=c1(_k(),1),LM=c1(vK(),1);var DM=c1(cn(),1);var Fm6=c1(cn(),1);class ek{bytes;constructor(Z){if(this.bytes=Z,Z.byteLength!==8)throw Error("Int64 buffers must be exactly 8 bytes")}static fromNumber(Z){if(Z>9223372036854776000||Z<-9223372036854776000)throw Error(`${Z} is too large (or, if negative, too small) to represent as an Int64`);let G=new Uint8Array(8);for(let W=7,J=Math.abs(Math.round(Z));W>-1&&J>0;W--,J/=256)G[W]=J;if(Z<0)Km6(G);return new ek(G)}valueOf(){let Z=this.bytes.slice(0),G=Z[0]&128;if(G)Km6(Z);return parseInt(Fm6.toHex(Z),16)*(G?-1:1)}toString(){return String(this.valueOf())}}function Km6(Z){for(let G=0;G<8;G++)Z[G]^=255;for(let G=7;G>-1;G--)if(Z[G]++,Z[G]!==0)break}class Zr1{toUtf8;fromUtf8;constructor(Z,G){this.toUtf8=Z,this.fromUtf8=G}format(Z){let G=[];for(let Y of Object.keys(Z)){let F=this.fromUtf8(Y);G.push(Uint8Array.from([F.byteLength]),F,this.formatHeaderValue(Z[Y]))}let W=new Uint8Array(G.reduce((Y,F)=>Y+F.byteLength,0)),J=0;for(let Y of G)W.set(Y,J),J+=Y.byteLength;return W}formatHeaderValue(Z){switch(Z.type){case"boolean":return Uint8Array.from([Z.value?0:1]);case"byte":return Uint8Array.from([2,Z.value]);case"short":let G=new DataView(new ArrayBuffer(3));return G.setUint8(0,3),G.setInt16(1,Z.value,!1),new Uint8Array(G.buffer);case"integer":let W=new DataView(new ArrayBuffer(5));return W.setUint8(0,4),W.setInt32(1,Z.value,!1),new Uint8Array(W.buffer);case"long":let J=new Uint8Array(9);return J[0]=5,J.set(Z.value.bytes,1),J;case"binary":let Y=new DataView(new ArrayBuffer(3+Z.value.byteLength));Y.setUint8(0,6),Y.setUint16(1,Z.value.byteLength,!1);let F=new Uint8Array(Y.buffer);return F.set(Z.value,3),F;case"string":let K=this.fromUtf8(Z.value),H=new DataView(new ArrayBuffer(3+K.byteLength));H.setUint8(0,7),H.setUint16(1,K.byteLength,!1);let V=new Uint8Array(H.buffer);return V.set(K,3),V;case"timestamp":let X=new Uint8Array(9);return X[0]=8,X.set(ek.fromNumber(Z.value.valueOf()).bytes,1),X;case"uuid":if(!Vw9.test(Z.value))throw Error(`Invalid UUID received: ${Z.value}`);let U=new Uint8Array(17);return U[0]=9,U.set(DM.fromHex(Z.value.replace(/\-/g,"")),1),U}}parse(Z){let G={},W=0;while(W<Z.byteLength){let J=Z.getUint8(W++),Y=this.toUtf8(new Uint8Array(Z.buffer,Z.byteOffset+W,J));switch(W+=J,Z.getUint8(W++)){case 0:G[Y]={type:Vm6,value:!0};break;case 1:G[Y]={type:Vm6,value:!1};break;case 2:G[Y]={type:Zw9,value:Z.getInt8(W++)};break;case 3:G[Y]={type:Gw9,value:Z.getInt16(W,!1)},W+=2;break;case 4:G[Y]={type:Ww9,value:Z.getInt32(W,!1)},W+=4;break;case 5:G[Y]={type:Jw9,value:new ek(new Uint8Array(Z.buffer,Z.byteOffset+W,8))},W+=8;break;case 6:let F=Z.getUint16(W,!1);W+=2,G[Y]={type:Yw9,value:new Uint8Array(Z.buffer,Z.byteOffset+W,F)},W+=F;break;case 7:let K=Z.getUint16(W,!1);W+=2,G[Y]={type:Kw9,value:this.toUtf8(new Uint8Array(Z.buffer,Z.byteOffset+W,K))},W+=K;break;case 8:G[Y]={type:Fw9,value:new Date(new ek(new Uint8Array(Z.buffer,Z.byteOffset+W,8)).valueOf())},W+=8;break;case 9:let H=new Uint8Array(Z.buffer,Z.byteOffset+W,16);W+=16,G[Y]={type:Hw9,value:`${DM.toHex(H.subarray(0,4))}-${DM.toHex(H.subarray(4,6))}-${DM.toHex(H.subarray(6,8))}-${DM.toHex(H.subarray(8,10))}-${DM.toHex(H.subarray(10))}`};break;default:throw Error("Unrecognized header type tag")}}return G}}var Hm6;(function(Z){Z[Z.boolTrue=0]="boolTrue",Z[Z.boolFalse=1]="boolFalse",Z[Z.byte=2]="byte",Z[Z.short=3]="short",Z[Z.integer=4]="integer",Z[Z.long=5]="long",Z[Z.byteArray=6]="byteArray",Z[Z.string=7]="string",Z[Z.timestamp=8]="timestamp",Z[Z.uuid=9]="uuid"})(Hm6||(Hm6={}));var Vm6="boolean",Zw9="byte",Gw9="short",Ww9="integer",Jw9="long",Yw9="binary",Kw9="string",Fw9="timestamp",Hw9="uuid",Vw9=/^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/;var Xm6=4,BM=Xm6*2,r2=4,Xw9=BM+r2*2;function Um6({byteLength:Z,byteOffset:G,buffer:W}){if(Z<Xw9)throw Error("Provided message too short to accommodate event stream message overhead");let J=new DataView(W,G,Z),Y=J.getUint32(0,!1);if(Z!==Y)throw Error("Reported message length does not match received message length");let F=J.getUint32(Xm6,!1),K=J.getUint32(BM,!1),H=J.getUint32(Z-r2,!1),V=new R2().update(new Uint8Array(W,G,BM));if(K!==V.digest())throw Error(`The prelude checksum specified in the message (${K}) does not match the calculated CRC32 checksum (${V.digest()})`);if(V.update(new Uint8Array(W,G+BM,Z-(BM+r2))),H!==V.digest())throw Error(`The message checksum (${V.digest()}) did not match the expected value of ${H}`);return{headers:new DataView(W,G+BM+r2,F),body:new Uint8Array(W,G+BM+r2+F,Y-F-(BM+r2+r2))}}class Gr1{headerMarshaller;messageBuffer;isEndOfStream;constructor(Z,G){this.headerMarshaller=new Zr1(Z,G),this.messageBuffer=[],this.isEndOfStream=!1}feed(Z){this.messageBuffer.push(this.decode(Z))}endOfStream(){this.isEndOfStream=!0}getMessage(){let Z=this.messageBuffer.pop(),G=this.isEndOfStream;return{getMessage(){return Z},isEndOfStream(){return G}}}getAvailableMessages(){let Z=this.messageBuffer;this.messageBuffer=[];let G=this.isEndOfStream;return{getMessages(){return Z},isEndOfStream(){return G}}}encode({headers:Z,body:G}){let W=this.headerMarshaller.format(Z),J=W.byteLength+G.byteLength+16,Y=new Uint8Array(J),F=new DataView(Y.buffer,Y.byteOffset,Y.byteLength),K=new R2;return F.setUint32(0,J,!1),F.setUint32(4,W.byteLength,!1),F.setUint32(8,K.update(Y.subarray(0,8)).digest(),!1),Y.set(W,12),Y.set(G,W.byteLength+12),F.setUint32(J-4,K.update(Y.subarray(8,J-4)).digest(),!1),Y}decode(Z){let{headers:G,body:W}=Um6(Z);return{headers:this.headerMarshaller.parse(G),body:W}}formatHeaders(Z){return this.headerMarshaller.format(Z)}}class Wr1{options;constructor(Z){this.options=Z}[Symbol.asyncIterator](){return this.asyncIterator()}async*asyncIterator(){for await(let Z of this.options.inputStream)yield this.options.decoder.decode(Z)}}class Jr1{options;constructor(Z){this.options=Z}[Symbol.asyncIterator](){return this.asyncIterator()}async*asyncIterator(){for await(let Z of this.options.messageStream)yield this.options.encoder.encode(Z);if(this.options.includeEndFrame)yield new Uint8Array(0)}}class Yr1{options;constructor(Z){this.options=Z}[Symbol.asyncIterator](){return this.asyncIterator()}async*asyncIterator(){for await(let Z of this.options.messageStream){let G=await this.options.deserializer(Z);if(G===void 0)continue;yield G}}}class Kr1{options;constructor(Z){this.options=Z}[Symbol.asyncIterator](){return this.asyncIterator()}async*asyncIterator(){for await(let Z of this.options.inputStream)yield this.options.serializer(Z)}}function Nm6(Z){let G=0,W=0,J=null,Y=null,F=(H)=>{if(typeof H!=="number")throw Error("Attempted to allocate an event message where size was not a number: "+H);G=H,W=4,J=new Uint8Array(H),new DataView(J.buffer).setUint32(0,H,!1)},K=async function*(){let H=Z[Symbol.asyncIterator]();while(!0){let{value:V,done:X}=await H.next();if(X){if(!G)return;else if(G===W)yield J;else throw Error("Truncated event message received.");return}let U=V.length,O=0;while(O<U){if(!J){let q=U-O;if(!Y)Y=new Uint8Array(4);let z=Math.min(4-W,q);if(Y.set(V.slice(O,O+z),W),W+=z,O+=z,W<4)break;F(new DataView(Y.buffer).getUint32(0,!1)),Y=null}let w=Math.min(G-W,U-O);if(J.set(V.slice(O,O+w),W),W+=w,O+=w,G&&G===W)yield J,J=null,G=0,W=0}}};return{[Symbol.asyncIterator]:K}}function Om6(Z,G){return async function(W){let{value:J}=W.headers[":message-type"];if(J==="error"){let Y=Error(W.headers[":error-message"].value||"UnknownError");throw Y.name=W.headers[":error-code"].value,Y}else if(J==="exception"){let Y=W.headers[":exception-type"].value,F={[Y]:W},K=await Z(F);if(K.$unknown){let H=Error(G(W.body));throw H.name=Y,H}throw K[Y]}else if(J==="event"){let Y={[W.headers[":event-type"].value]:W},F=await Z(Y);if(F.$unknown)return;return F}else throw Error(`Unrecognizable event type: ${W.headers[":event-type"].value}`)}}class Fr1{eventStreamCodec;utfEncoder;constructor({utf8Encoder:Z,utf8Decoder:G}){this.eventStreamCodec=new Gr1(Z,G),this.utfEncoder=Z}deserialize(Z,G){let W=Nm6(Z);return new Yr1({messageStream:new Wr1({inputStream:W,decoder:this.eventStreamCodec}),deserializer:Om6(G,this.utfEncoder)})}serialize(Z,G){return new Jr1({messageStream:new Kr1({inputStream:Z,serializer:G}),encoder:this.eventStreamCodec,includeEndFrame:!0})}}import{Readable as Uw9}from"stream";async function*wm6(Z){let G=!1,W=!1,J=[];Z.on("error",(Y)=>{if(!G)G=!0;if(Y)throw Y}),Z.on("data",(Y)=>{J.push(Y)}),Z.on("end",()=>{G=!0});while(!W){let Y=await new Promise((F)=>setTimeout(()=>F(J.shift()),0));if(Y)yield Y;W=G&&J.length===0}}class Hr1{universalMarshaller;constructor({utf8Encoder:Z,utf8Decoder:G}){this.universalMarshaller=new Fr1({utf8Decoder:G,utf8Encoder:Z})}deserialize(Z,G){let W=typeof Z[Symbol.asyncIterator]==="function"?Z:wm6(Z);return this.universalMarshaller.deserialize(W,G)}serialize(Z,G){return Uw9.from(this.universalMarshaller.serialize(Z,G))}}var qm6=(Z)=>new Hr1(Z);var xH1=c1(kk(),1);var zm6=c1(j3(),1);import{Writable as Nw9}from"stream";class Vr1 extends Nw9{hash;constructor(Z,G){super(G);this.hash=Z}_write(Z,G,W){try{this.hash.update(zm6.toUint8Array(Z))}catch(J){return W(J)}W()}}var Dm6=(Z,G)=>{if(G.readableFlowing!==null)throw Error("Unable to calculate hash for flowing readable stream");let W=new Z,J=new Vr1(W);return G.pipe(J),new Promise((Y,F)=>{G.on("error",(K)=>{J.end(),F(K)}),J.on("error",F),J.on("finish",()=>{W.digest().then(Y).catch(F)})})};var uH1=c1(PU(),1),rF=c1($U(),1),mH1=c1(iA(),1),lH1=c1(G9(),1),Em6=c1(vk(),1),$m6=c1(yk(),1),Pm6=c1(WM(),1);var vH1=c1(MG(),1),Bm6=c1(xk(),1);var Lm6=c1(G9(),1),Am6=c1(gO(),1),yH1=c1(TY(),1),hH1=c1(q2(),1),bH1=c1(j3(),1);var Mm6=(Z)=>{return{apiVersion:"2006-03-01",base64Decoder:Z?.base64Decoder??yH1.fromBase64,base64Encoder:Z?.base64Encoder??yH1.toBase64,disableHostPrefix:Z?.disableHostPrefix??!1,endpointProvider:Z?.endpointProvider??LF1,extensions:Z?.extensions??[],getAwsChunkedEncodingStream:Z?.getAwsChunkedEncodingStream??hH1.getAwsChunkedEncodingStream,httpAuthSchemeProvider:Z?.httpAuthSchemeProvider??T_6,httpAuthSchemes:Z?.httpAuthSchemes??[{schemeId:"aws.auth#sigv4",identityProvider:(G)=>G.getIdentityProvider("aws.auth#sigv4"),signer:new vH1.AwsSdkSigV4Signer},{schemeId:"aws.auth#sigv4a",identityProvider:(G)=>G.getIdentityProvider("aws.auth#sigv4a"),signer:new vH1.AwsSdkSigV4ASigner}],logger:Z?.logger??new Lm6.NoOpLogger,protocol:Z?.protocol??Bm6.AwsRestXmlProtocol,protocolSettings:Z?.protocolSettings??{defaultNamespace:"com.amazonaws.s3",errorTypeRegistries:j_6,xmlNamespace:"http://s3.amazonaws.com/doc/2006-03-01/",version:"2006-03-01",serviceTarget:"AmazonS3"},sdkStreamMixin:Z?.sdkStreamMixin??hH1.sdkStreamMixin,serviceId:Z?.serviceId??"S3",signerConstructor:Z?.signerConstructor??j2,signingEscapePath:Z?.signingEscapePath??!1,urlParser:Z?.urlParser??Am6.parseUrl,useArnRegion:Z?.useArnRegion??void 0,utf8Decoder:Z?.utf8Decoder??bH1.fromUtf8,utf8Encoder:Z?.utf8Encoder??bH1.toUtf8}};var Tm6=(Z)=>{lH1.emitWarningIfUnsupportedVersion(process.version);let G=$m6.resolveDefaultsModeConfig(Z),W=()=>G().then(lH1.loadConfigsForDefaultMode),J=Mm6(Z);Zv.emitWarningIfUnsupportedVersion(process.version);let Y={profile:Z?.profile,logger:J.logger};return{...J,...Z,runtime:"node",defaultsMode:G,authSchemePreference:Z?.authSchemePreference??rF.loadConfig(Zv.NODE_AUTH_SCHEME_PREFERENCE_OPTIONS,Y),bodyLengthChecker:Z?.bodyLengthChecker??Em6.calculateBodyLength,credentialDefaultProvider:Z?.credentialDefaultProvider??Jm6,defaultUserAgentProvider:Z?.defaultUserAgentProvider??gH1.createDefaultUserAgentProvider({serviceId:J.serviceId,clientVersion:u_6.version}),disableS3ExpressSessionAuth:Z?.disableS3ExpressSessionAuth??rF.loadConfig(Bp1,Y),eventStreamSerdeProvider:Z?.eventStreamSerdeProvider??qm6,maxAttempts:Z?.maxAttempts??rF.loadConfig(uH1.NODE_MAX_ATTEMPT_CONFIG_OPTIONS,Z),md5:Z?.md5??xH1.Hash.bind(null,"md5"),region:Z?.region??rF.loadConfig(LM.NODE_REGION_CONFIG_OPTIONS,{...LM.NODE_REGION_CONFIG_FILE_OPTIONS,...Y}),requestChecksumCalculation:Z?.requestChecksumCalculation??rF.loadConfig(iT6,Y),requestHandler:mH1.NodeHttpHandler.create(Z?.requestHandler??W),responseChecksumValidation:Z?.responseChecksumValidation??rF.loadConfig(aT6,Y),retryMode:Z?.retryMode??rF.loadConfig({...uH1.NODE_RETRY_MODE_CONFIG_OPTIONS,default:async()=>(await W()).retryMode||Pm6.DEFAULT_RETRY_MODE},Z),sha1:Z?.sha1??xH1.Hash.bind(null,"sha1"),sha256:Z?.sha256??xH1.Hash.bind(null,"sha256"),sigv4aSigningRegionSet:Z?.sigv4aSigningRegionSet??rF.loadConfig(Zv.NODE_SIGV4A_CONFIG_OPTIONS,Y),streamCollector:Z?.streamCollector??mH1.streamCollector,streamHasher:Z?.streamHasher??Dm6,useArnRegion:Z?.useArnRegion??rF.loadConfig(Ym6,Y),useDualstackEndpoint:Z?.useDualstackEndpoint??rF.loadConfig(LM.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS,Y),useFipsEndpoint:Z?.useFipsEndpoint??rF.loadConfig(LM.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS,Y),userAgentAppId:Z?.userAgentAppId??rF.loadConfig(gH1.NODE_APP_ID_CONFIG_OPTIONS,Y)}};var dH1=c1(k2(),1),cH1=c1(V5(),1),pH1=c1(G9(),1);var Rm6=(Z)=>{let{httpAuthSchemes:G,httpAuthSchemeProvider:W,credentials:J}=Z;return{setHttpAuthScheme(Y){let F=G.findIndex((K)=>K.schemeId===Y.schemeId);if(F===-1)G.push(Y);else G.splice(F,1,Y)},httpAuthSchemes(){return G},setHttpAuthSchemeProvider(Y){W=Y},httpAuthSchemeProvider(){return W},setCredentials(Y){J=Y},credentials(){return J}}},Cm6=(Z)=>{return{httpAuthSchemes:Z.httpAuthSchemes(),httpAuthSchemeProvider:Z.httpAuthSchemeProvider(),credentials:Z.credentials()}};var Qm6=(Z,G)=>{let W=Object.assign(dH1.getAwsRegionExtensionConfiguration(Z),pH1.getDefaultExtensionConfiguration(Z),cH1.getHttpHandlerExtensionConfiguration(Z),Rm6(Z));return G.forEach((J)=>J.configure(W)),Object.assign(Z,dH1.resolveAwsRegionExtensionConfiguration(W),pH1.resolveDefaultRuntimeConfig(W),cH1.resolveHttpHandlerRuntimeConfig(W),Cm6(W))};class Xr1 extends vm6.Client{config;constructor(...[Z]){let G=Tm6(Z||{});super(G);this.initConfig=G;let W=C_6(G),J=iH1.resolveUserAgentConfig(W),Y=hI6(J),F=aH1.resolveRetryConfig(Y),K=jm6.resolveRegionConfig(F),H=nH1.resolveHostHeaderConfig(K),V=km6.resolveEndpointConfig(H),X=Xj6(V),U=R_6(X),O=zS6(U,{session:[()=>this,$n1]}),w=Qm6(O,Z?.extensions||[]);this.config=w,this.middlewareStack.use(fm6.getSchemaSerdePlugin(this.config)),this.middlewareStack.use(iH1.getUserAgentPlugin(this.config)),this.middlewareStack.use(aH1.getRetryPlugin(this.config)),this.middlewareStack.use(_m6.getContentLengthPlugin(this.config)),this.middlewareStack.use(nH1.getHostHeaderPlugin(this.config)),this.middlewareStack.use(Im6.getLoggerPlugin(this.config)),this.middlewareStack.use(Sm6.getRecursionDetectionPlugin(this.config)),this.middlewareStack.use(Gv.getHttpAuthSchemeEndpointRuleSetPlugin(this.config,{httpAuthSchemeParametersProvider:E_6,identityProviderConfigProvider:async(q)=>new Gv.DefaultIdentityProviderConfig({"aws.auth#sigv4":q.credentials,"aws.auth#sigv4a":q.credentials})})),this.middlewareStack.use(Gv.getHttpSigningPlugin(this.config)),this.middlewareStack.use(MS6(this.config)),this.middlewareStack.use(pT6(this.config)),this.middlewareStack.use(sI6(this.config)),this.middlewareStack.use(Lp1(this.config)),this.middlewareStack.use(Ap1(this.config))}destroy(){super.destroy()}}function Ow9(Z){return(G)=>async(W)=>{let J={...W.input},Y=[{target:"SSECustomerKey",hash:"SSECustomerKeyMD5"},{target:"CopySourceSSECustomerKey",hash:"CopySourceSSECustomerKeyMD5"}];for(let F of Y){let K=J[F.target];if(K){let H;if(typeof K==="string")if(qw9(K,Z))H=Z.base64Decoder(K);else H=Z.utf8Decoder(K),J[F.target]=Z.base64Encoder(H);else H=ArrayBuffer.isView(K)?new Uint8Array(K.buffer,K.byteOffset,K.byteLength):new Uint8Array(K),J[F.target]=Z.base64Encoder(H);let V=new Z.md5;V.update(H),J[F.hash]=Z.base64Encoder(await V.digest())}}return G({...W,input:J})}}var ww9={name:"ssecMiddleware",step:"initialize",tags:["SSE"],override:!0},Wv=(Z)=>({applyToStack:(G)=>{G.add(Ow9(Z),ww9)}});function qw9(Z,G){if(!/^(?:[A-Za-z0-9+/]{4})*([A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(Z))return!1;try{return G.base64Decoder(Z).length===32}catch{return!1}}var ym6=c1(jY(),1),hm6=c1(G9(),1);class Ur1 extends hm6.Command.classBuilder().ep({...EV,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function(Z,G,W,J){return[ym6.getEndpointPlugin(W,Z.getEndpointParameterInstructions()),mO(W)]}).s("AmazonS3","DeleteObject",{}).n("S3Client","DeleteObjectCommand").sc(k_6).build(){}var bm6=c1(jY(),1),xm6=c1(G9(),1);class rH1 extends xm6.Command.classBuilder().ep({...EV,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function(Z,G,W,J){return[bm6.getEndpointPlugin(W,Z.getEndpointParameterInstructions()),sK1(W,{requestChecksumRequired:!1,requestValidationModeMember:"ChecksumMode",responseAlgorithms:["CRC64NVME","CRC32","CRC32C","SHA256","SHA1"]}),Wv(W),eK1(W)]}).s("AmazonS3","GetObject",{}).n("S3Client","GetObjectCommand").sc(v_6).build(){}var gm6=c1(jY(),1),um6=c1(G9(),1);class oH1 extends um6.Command.classBuilder().ep({...EV,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function(Z,G,W,J){return[gm6.getEndpointPlugin(W,Z.getEndpointParameterInstructions()),mO(W),Wv(W),eK1(W)]}).s("AmazonS3","HeadObject",{}).n("S3Client","HeadObjectCommand").sc(y_6).build(){}var mm6=c1(jY(),1),lm6=c1(G9(),1);class Nr1 extends lm6.Command.classBuilder().ep({...EV,Bucket:{type:"contextParams",name:"Bucket"},Prefix:{type:"contextParams",name:"Prefix"}}).m(function(Z,G,W,J){return[mm6.getEndpointPlugin(W,Z.getEndpointParameterInstructions()),mO(W)]}).s("AmazonS3","ListObjectsV2",{}).n("S3Client","ListObjectsV2Command").sc(h_6).build(){}var dm6=c1(jY(),1),cm6=c1(G9(),1);class Or1 extends cm6.Command.classBuilder().ep({...EV,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function(Z,G,W,J){return[dm6.getEndpointPlugin(W,Z.getEndpointParameterInstructions()),sK1(W,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!1}),aI6(W),mO(W),Wv(W)]}).s("AmazonS3","PutObject",{}).n("S3Client","PutObjectCommand").sc(b_6).build(){}var pm6=c1(rY1(),1);function nm6(Z){let{port:G,query:W}=Z,{protocol:J,path:Y,hostname:F}=Z;if(J&&J.slice(-1)!==":")J+=":";if(G)F+=`:${G}`;if(Y&&Y.charAt(0)!=="/")Y=`/${Y}`;let K=W?pm6.buildQueryString(W):"";if(K&&K[0]!=="?")K=`?${K}`;let H="";if(Z.username!=null||Z.password!=null){let X=Z.username??"",U=Z.password??"";H=`${X}:${U}@`}let V="";if(Z.fragment)V=`#${Z.fragment}`;return`${J}//${H}${F}${Y}${K}${V}`}var rm6=c1(jY(),1),om6=c1(V5(),1);var im6="UNSIGNED-PAYLOAD",am6="X-Amz-Content-Sha256";class sH1{signer;constructor(Z){let G={service:Z.signingName||Z.service||"s3",uriEscapePath:Z.uriEscapePath||!1,applyChecksum:Z.applyChecksum||!1,...Z};this.signer=new j2(G)}presign(Z,{unsignableHeaders:G=new Set,hoistableHeaders:W=new Set,unhoistableHeaders:J=new Set,...Y}={}){return this.prepareRequest(Z,{unsignableHeaders:G,unhoistableHeaders:J,hoistableHeaders:W}),this.signer.presign(Z,{expiresIn:900,unsignableHeaders:G,unhoistableHeaders:J,...Y})}presignWithCredentials(Z,G,{unsignableHeaders:W=new Set,hoistableHeaders:J=new Set,unhoistableHeaders:Y=new Set,...F}={}){return this.prepareRequest(Z,{unsignableHeaders:W,unhoistableHeaders:Y,hoistableHeaders:J}),this.signer.presignWithCredentials(Z,G,{expiresIn:900,unsignableHeaders:W,unhoistableHeaders:Y,...F})}prepareRequest(Z,{unsignableHeaders:G=new Set,unhoistableHeaders:W=new Set,hoistableHeaders:J=new Set}={}){G.add("content-type"),Object.keys(Z.headers).map((H)=>H.toLowerCase()).filter((H)=>H.startsWith("x-amz-server-side-encryption")).forEach((H)=>{if(!J.has(H))W.add(H)}),Z.headers[am6]=im6;let Y=Z.headers.host,F=Z.port,K=`${Z.hostname}${Z.port!=null?":"+F:""}`;if(!Y||Y===Z.hostname&&Z.port!=null)Z.headers.host=K}}var sm6=async(Z,G,W={})=>{let J,Y;if(typeof Z.config.endpointProvider==="function"){let w=(await rm6.getEndpointFromInstructions(G.input,G.constructor,Z.config)).properties?.authSchemes?.[0];if(w?.name==="sigv4a")Y=w?.signingRegionSet?.join(",");else Y=w?.signingRegion;J=new sH1({...Z.config,signingName:w?.signingName,region:async()=>Y})}else J=new sH1(Z.config);let F=(O,w)=>async(q)=>{let{request:z}=q;if(!om6.HttpRequest.isInstance(z))throw Error("Request to be presigned is not an valid HTTP request.");delete z.headers["amz-sdk-invocation-id"],delete z.headers["amz-sdk-request"],delete z.headers["x-amz-user-agent"];let D,L={...W,signingRegion:W.signingRegion??w.signing_region??Y,signingService:W.signingService??w.signing_service};if(w.s3ExpressIdentity)D=await J.presignWithCredentials(z,w.s3ExpressIdentity,L);else D=await J.presign(z,L);return{response:{},output:{$metadata:{httpStatusCode:200},presigned:D}}},K="presignInterceptMiddleware",H=Z.middlewareStack.clone();H.addRelativeTo(F,{name:K,relation:"before",toMiddleware:"awsAuthMiddleware",override:!0});let V=G.resolveMiddleware(H,Z.config,{}),{output:X}=await V({input:G.input}),{presigned:U}=X;return nm6(U)};import{extname as zw9}from"path";function tm6(Z){let G;try{G=decodeURIComponent(Z)}catch{G=Z}let J=G.replace(/\0/g,"").replace(/[\x00-\x1f\x7f]/g,"").replace(/\\/g,"/").split("/"),Y=[];for(let F of J)if(F==="..")Y.pop();else if(F!=="."&&F!=="")Y.push(F);return Y.join("/")}function ri(Z,G){let W=tm6(G);if(!W)throw Error("Key is empty after sanitization");return`${Z}/${W}`}function em6(Z,G){if(!G)return`${Z}/`;let W=tm6(G);return`${Z}/${W}${W.endsWith("/")?"":"/"}`}function Zl6(Z,G){let W=`${Z}/`;if(G.startsWith(W))return G.slice(W.length);return G}var Dw9={".json":"application/json",".html":"text/html",".htm":"text/html",".css":"text/css",".js":"application/javascript",".mjs":"application/javascript",".ts":"text/typescript",".txt":"text/plain",".md":"text/markdown",".csv":"text/csv",".xml":"application/xml",".svg":"image/svg+xml",".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".gif":"image/gif",".webp":"image/webp",".pdf":"application/pdf",".zip":"application/zip",".gz":"application/gzip",".tar":"application/x-tar",".wasm":"application/wasm",".yaml":"application/yaml",".yml":"application/yaml",".toml":"application/toml"};function tH1(Z){let G=zw9(Z).toLowerCase();return Dw9[G]??"application/octet-stream"}var Bw9=new Set(["application/json","text/html","text/css","application/javascript","text/typescript","text/plain","text/markdown","text/csv","application/xml","image/svg+xml","application/yaml","application/toml"]);function Gl6(Z){let G=Z.split(";")[0].trim();if(Bw9.has(G))return!0;if(G.startsWith("text/"))return!0;return!1}var Wl6=1048576;class wr1{client;bucket;constructor(Z){this.bucket=Z.bucket,this.client=new Xr1({endpoint:Z.endpoint,region:Z.region,credentials:{accessKeyId:Z.accessKeyId,secretAccessKey:Z.secretAccessKey},forcePathStyle:Z.forcePathStyle})}async get(Z,G){let W=ri(Z,G),J=await this.client.send(new oH1({Bucket:this.bucket,Key:W})),Y=J.ContentLength??0,F=J.ContentType??tH1(G);if(Y>Wl6){let X=await sm6(this.client,new rH1({Bucket:this.bucket,Key:W}),{expiresIn:3600});return{error:"FILE_TOO_LARGE",size:Y,maxInlineSize:Wl6,presignedUrl:X,contentType:F}}let H=await(await this.client.send(new rH1({Bucket:this.bucket,Key:W}))).Body.transformToByteArray(),V=Gl6(F);return{content:V?new TextDecoder().decode(H):Buffer.from(H).toString("base64"),contentType:F,encoding:V?"utf-8":"base64",size:Y,lastModified:J.LastModified,etag:J.ETag}}async put(Z,G,W,J){let Y=ri(Z,G),F=J?.contentType??tH1(G);return{etag:(await this.client.send(new Or1({Bucket:this.bucket,Key:Y,Body:typeof W==="string"?Buffer.from(W,"utf-8"):W,ContentType:F}))).ETag,key:G}}async list(Z,G){let W=em6(Z,G?.prefix),J=await this.client.send(new Nr1({Bucket:this.bucket,Prefix:W,MaxKeys:G?.maxKeys??1000,ContinuationToken:G?.continuationToken}));return{objects:(J.Contents??[]).map((Y)=>({key:Zl6(Z,Y.Key??""),size:Y.Size??0,lastModified:Y.LastModified,etag:Y.ETag})),isTruncated:J.IsTruncated??!1,nextContinuationToken:J.NextContinuationToken}}async delete(Z,G){let W=ri(Z,G);await this.client.send(new Ur1({Bucket:this.bucket,Key:W}))}async head(Z,G){let W=ri(Z,G),J=await this.client.send(new oH1({Bucket:this.bucket,Key:W}));return{contentType:J.ContentType??tH1(G),size:J.ContentLength??0,lastModified:J.LastModified,etag:J.ETag}}}var oi;function Lw9(){return!!(o0.S3_ENDPOINT&&o0.S3_BUCKET&&o0.S3_ACCESS_KEY_ID&&o0.S3_SECRET_ACCESS_KEY)}function Jl6(){if(oi!==void 0)return oi;if(!Lw9())return oi=null,null;return oi=new wr1({endpoint:o0.S3_ENDPOINT,bucket:o0.S3_BUCKET,region:o0.S3_REGION,accessKeyId:o0.S3_ACCESS_KEY_ID,secretAccessKey:o0.S3_SECRET_ACCESS_KEY,forcePathStyle:o0.S3_FORCE_PATH_STYLE}),oi}function Yl6(Z,G){return{get:(W)=>Z.get(G,W),put:(W,J,Y)=>Z.put(G,W,J,Y),list:(W)=>Z.list(G,W),delete:(W)=>Z.delete(G,W),head:(W)=>Z.head(G,W)}}function Aw9(Z){if(!Z)return;try{let G=JSON.parse(Z);if(typeof G!=="object"||G===null||Array.isArray(G))return;let W={};for(let[J,Y]of Object.entries(G))if(typeof Y==="string")W[J]=Y;return Object.keys(W).length>0?W:void 0}catch{return}}function Mw9(Z,G){for(let[W,J]of Object.entries(G)){let Y=Z[W];if(!Y||Y.length===0){let F=Z["*"];if(!F||F.length===0)return!1;if(F.includes("*"))continue;for(let K of J)if(!F.includes(K))return!1;continue}if(Y.includes("*"))continue;for(let F of J)if(!Y.includes(F))return!1}return!0}function qr1(Z){let{auth:G,headers:W,role:J,permissions:Y,userId:F}=Z,K=G.api.hasPermission;return{hasPermission:async(H)=>{if(J&&Zm1.includes(J))return!0;if(Y)return Mw9(Y,H);if(!K)return console.error("[Auth] hasPermission API not available"),!1;try{if((await K({headers:W,body:{permission:H}}))?.success===!0)return!0;let X={};for(let O of Object.keys(H))X[O]=["*"];return(await K({headers:W,body:{permission:X}}))?.success===!0}catch(V){return console.error("[Auth] Permission check failed:",V),!1}},organization:{create:async(H)=>{return G.api.createOrganization({headers:W,body:H})},update:async(H)=>{return G.api.updateOrganization({headers:W,body:H})},delete:async(H)=>{await G.api.deleteOrganization({headers:W,body:{organizationId:H}})},get:async(H)=>{return G.api.getFullOrganization({headers:W,query:H?{organizationId:H}:void 0})},list:async(H)=>{return G.api.listOrganizations({headers:W,query:H?{userId:H}:void 0})},addMember:async(H)=>{return G.api.addMember({headers:W,body:H})},removeMember:async(H)=>{await G.api.removeMember({headers:W,body:H})},listMembers:async(H)=>{return G.api.listMembers({headers:W,query:H?{organizationId:H.organizationId,limit:H.limit,offset:H.offset}:void 0})},updateMemberRole:async(H)=>{return G.api.updateMemberRole({headers:W,body:H})}},apiKey:{create:async(H)=>{return G.api.createApiKey({body:{...H,userId:F}})},list:async()=>{return G.api.listApiKeys({headers:W})},update:async(H)=>{return G.api.updateApiKey({body:{...H,userId:F}})},delete:async(H)=>{await G.api.deleteApiKey({headers:W,body:{keyId:H}})}}}}async function Ew9(Z,G,W){if(Zm1.includes(W))return;let J=await Z.selectFrom("organizationRole").select(["permission"]).where("organizationId","=",G).where("role","=",W).executeTakeFirst();if(!J?.permission)return;try{return JSON.parse(J.permission)}catch{console.error(`[Auth] Failed to parse permissions for role: ${W}`);return}}async function $w9(Z,G,W,J=Fl6){let Y=Z.headers.get("Authorization");try{let F=new Headers(Z.headers);F.set("X-MCP-Session-Auth","true");let K=await J.measure("auth_get_mcp_session",()=>G.api.getMcpSession({headers:F}));if(K){let H=K.userId,V=await J.measure("auth_query_membership",()=>W.selectFrom("member").innerJoin("organization","organization.id","member.organizationId").select(["member.role","member.organizationId","organization.id as orgId","organization.slug as orgSlug","organization.name as orgName"]).where("member.userId","=",H).executeTakeFirst()),X=V?.role,U=V?{id:V.orgId,slug:V.orgSlug,name:V.orgName}:void 0,O;if(V&&X)O=await J.measure("auth_fetch_role_permissions",()=>Ew9(W,V.organizationId,X));return{user:{id:H,role:X},role:X,permissions:O,organization:U}}}catch(F){console.error("[Auth] OAuth session check failed:",F)}if(Y?.startsWith("Bearer ")){let F=Y.replace("Bearer ","").trim();try{let K=await J.measure("auth_verify_mesh_jwt",()=>wU6(F));if(K){let H,V=K.metadata?.organizationId;if(K.sub&&V)H=(await J.measure("auth_query_membership",()=>W.selectFrom("member").select(["member.role"]).where("member.userId","=",K.sub).where("member.organizationId","=",V).executeTakeFirst()))?.role;let X,U=K.metadata?.organizationId;if(U){let O=K.metadata?.organizationName,w=K.metadata?.organizationSlug;if(O||w)X={id:U,name:O,slug:w};else{let q=await J.measure("auth_query_org_for_mesh_jwt",()=>W.selectFrom("organization").select(["id","slug","name"]).where("id","=",U).executeTakeFirst());X=q?{id:q.id,slug:q.slug,name:q.name}:{id:U}}}return{user:{id:K.sub,connectionId:K.metadata?.connectionId,role:H},role:H,permissions:K.permissions,organization:X}}}catch{}try{let K=await J.measure("auth_verify_api_key",()=>G.api.verifyApiKey({body:{key:F}}));if(K?.valid&&K.key){let H=K.key.metadata?.organization,V=K.key.permissions,X,U=K.key.userId;if(U&&H?.id)X=(await J.measure("auth_query_membership",()=>W.selectFrom("member").select(["member.role"]).where("member.userId","=",U).where("member.organizationId","=",H.id).executeTakeFirst()))?.role;return{apiKeyId:K.key.id,user:{id:K.key.userId,role:X},role:X,permissions:V,organization:H?{id:H.id,slug:H.slug,name:H.name}:void 0}}}catch(K){console.error("[Auth] API key check failed:",K)}}try{let F=new Headers(Z.headers);F.delete("Authorization");let K=await J.measure("auth_get_session",()=>G.api.getSession({headers:F}));if(K){let H,V;if(K.session.activeOrganizationId){let X=await J.measure("auth_get_full_organization",()=>G.api.getFullOrganization({headers:F}).catch(()=>null));if(X)H={id:X.id,slug:X.slug,name:X.name},V=X.members?.find((O)=>O.userId===K.user.id)?.role;else H={id:K.session.activeOrganizationId,slug:"",name:""}}return{user:{id:K.user.id,email:K.user.email,role:V},role:V,organization:H}}}catch(F){let K=F;console.error("[Auth] Session check failed:",JSON.stringify({message:K.message,body:K.body,stack:K.stack},null,2))}return{user:void 0}}var Kl6,xO={set:(Z)=>{Kl6=Z},create:async(Z,G)=>{return await Kl6(Z,G)}},Fl6={measure:async(Z,G)=>{return await G()}},Pw9=["x-hub-signature-256"];async function Hl6(Z){let G=new SP(Z.encryption.key),W=!!o0.CLICKHOUSE_URL,J=W?"clickhouse":"duckdb",Y,F;if(W)Y=new bn(o0.CLICKHOUSE_URL),F=new bn(o0.CLICKHOUSE_URL);else{let{engine:q}=await Zd1({basePath:Vw}),{engine:z}=await Zd1({basePath:kE});Y=q,F=z}let{resolve:K}=await import("path"),H=K(Vw),V=K(kE),X=W?(q)=>"monitoring_logs":(q)=>`read_ndjson('${H}/${q}/**/*.ndjson', auto_detect=true)`,U=W?(q)=>"monitoring_metrics":(q)=>`read_ndjson('${V}/${q}/**/*.ndjson', auto_detect=true)`,O=new mn(Z.db),w={connections:new tm(Z.db,G),organizationSettings:new Wd1(Z.db),monitoring:new Am1(Y,X,F,U,J),monitoringDashboards:new Gd1(Z.db),virtualMcps:new qm1(Z.db),users:new Fd1(Z.db),tags:new Kd1(Z.db),projects:new em(Z.db),projectConnections:new Jd1(Z.db),projectPluginConfigs:new Yd1(Z.db),aiProviderKeys:new Nd1(Z.db,G),oauthPkceStates:new Od1(Z.db),automations:vY1(Z.db)};return async(q,z)=>{let D=z?.timings??Fl6,L=rj(),A=q?.headers.get("x-caller-id")??void 0,C=q?await $w9(q,Z.auth,Z.db,D):{user:void 0},R=qr1({auth:Z.auth,headers:q?.headers??new Headers,role:C.role,permissions:C.permissions,userId:C.user?.id}),T={user:C.user};if(C.apiKeyId)T.apiKey={id:C.apiKeyId,name:"",userId:""};let $=C.organization,Q=q?o0.BASE_URL??`${new URL(q.url).origin}`:AF(),j=new KU(Z.auth,T.user?.id,void 0,R,C.role,"self"),f={...w,threads:new un(O,$?.id)},y=new wd1(f.aiProviderKeys,Z.modelListCache),v=Jl6(),h=v&&$?Yl6(v,$.id):null,n={timings:D,auth:T,connectionId:A,organization:$,storage:f,vault:G,authInstance:Z.auth,boundAuth:R,access:j,db:Z.db,tracer:Z.observability.tracer,meter:Z.observability.meter,baseUrl:Q,objectStorage:h,metadata:{requestId:crypto.randomUUID(),timestamp:new Date,wellKnownForwardableHeaders:Object.fromEntries(Pw9.map((d)=>[d,q?.headers.get(d)??null]).filter(([d,b])=>b!==null)),userAgent:q?.headers.get("x-mesh-client")||q?.headers.get("User-Agent")||void 0,ipAddress:(q?.headers.get("CF-Connecting-IP")||q?.headers.get("X-Forwarded-For"))??void 0,properties:Aw9(q?.headers.get("x-mesh-properties"))},eventBus:Z.eventBus,aiProviders:y,createMCPProxy:async(d)=>{return await IT6(d,n)},getOrCreateClient:L};return n}}oj();yS();class Vl6{db;constructor(Z){this.db=Z}mapRowToSubscription(Z){return{id:Z.id,organizationId:Z.organization_id,connectionId:Z.connection_id,publisher:Z.publisher,eventType:Z.event_type,filter:Z.filter,enabled:Boolean(Z.enabled),createdAt:Z.created_at,updatedAt:Z.updated_at}}async publishEvent(Z){let G=new Date().toISOString();return await this.db.insertInto("events").values({id:Z.id,organization_id:Z.organizationId,type:Z.type,source:Z.source,specversion:"1.0",subject:Z.subject??null,time:Z.time,datacontenttype:Z.datacontenttype??"application/json",dataschema:Z.dataschema??null,data:Z.data?JSON.stringify(Z.data):null,cron:Z.cron??null,status:"pending",attempts:0,last_error:null,next_retry_at:null,created_at:G,updated_at:G}).execute(),{id:Z.id,organizationId:Z.organizationId,type:Z.type,source:Z.source,specversion:"1.0",subject:Z.subject??null,time:Z.time,datacontenttype:Z.datacontenttype??"application/json",dataschema:Z.dataschema??null,data:Z.data??null,cron:Z.cron??null,status:"pending",attempts:0,lastError:null,nextRetryAt:null,createdAt:G,updatedAt:G}}async subscribe(Z){let G=this.db.selectFrom("event_subscriptions").selectAll().where("organization_id","=",Z.organizationId).where("connection_id","=",Z.connectionId).where("event_type","=",Z.eventType);if(Z.publisher)G=G.where("publisher","=",Z.publisher);else G=G.where("publisher","is",null);if(Z.filter)G=G.where("filter","=",Z.filter);else G=G.where("filter","is",null);let W=await G.executeTakeFirst();if(W)return this.mapRowToSubscription(W);let J=new Date().toISOString();return await this.db.insertInto("event_subscriptions").values({id:Z.id,organization_id:Z.organizationId,connection_id:Z.connectionId,publisher:Z.publisher??null,event_type:Z.eventType,filter:Z.filter??null,enabled:1,created_at:J,updated_at:J}).execute(),{id:Z.id,organizationId:Z.organizationId,connectionId:Z.connectionId,publisher:Z.publisher??null,eventType:Z.eventType,filter:Z.filter??null,enabled:1,createdAt:J,updatedAt:J}}async unsubscribe(Z,G){return{success:((await this.db.deleteFrom("event_subscriptions").where("id","=",Z).where("organization_id","=",G).executeTakeFirst()).numDeletedRows??0n)>0n}}async listSubscriptions(Z,G){let W=this.db.selectFrom("event_subscriptions").selectAll().where("organization_id","=",Z);if(G)W=W.where("connection_id","=",G);return(await W.execute()).map((Y)=>this.mapRowToSubscription(Y))}async getSubscription(Z,G){let W=await this.db.selectFrom("event_subscriptions").selectAll().where("id","=",Z).where("organization_id","=",G).executeTakeFirst();if(!W)return null;return this.mapRowToSubscription(W)}async getMatchingSubscriptions(Z){return(await this.db.selectFrom("event_subscriptions").selectAll().where("organization_id","=",Z.organizationId).where("enabled","=",1).where("event_type","=",Z.type).where((W)=>W.or([W("publisher","is",null),W("publisher","=",Z.source)])).execute()).map((W)=>this.mapRowToSubscription(W))}async createDeliveries(Z,G,W){if(G.length===0)return;let J=new Date().toISOString(),Y=W??null,F=G.map((K)=>({id:crypto.randomUUID(),event_id:Z,subscription_id:K,status:"pending",attempts:0,last_error:null,delivered_at:null,next_retry_at:Y,created_at:J}));await this.db.insertInto("event_deliveries").values(F).execute()}async claimPendingDeliveries(Z){let G=new Date().toISOString(),J=(await this.db.updateTable("event_deliveries").set({status:"processing"}).where("id","in",(F)=>F.selectFrom("event_deliveries as d").innerJoin("event_subscriptions as s","s.id","d.subscription_id").select("d.id").where("d.status","=","pending").where("s.enabled","=",1).where((K)=>K.or([K("d.next_retry_at","is",null),K("d.next_retry_at","<=",G)])).orderBy("d.created_at","asc").limit(Z)).where("status","=","pending").returning(["id"]).execute()).map((F)=>F.id);if(J.length===0)return[];return(await this.db.selectFrom("event_deliveries as d").innerJoin("events as e","e.id","d.event_id").innerJoin("event_subscriptions as s","s.id","d.subscription_id").select(["d.id as delivery_id","d.event_id","d.subscription_id","d.status as delivery_status","d.attempts as delivery_attempts","d.last_error as delivery_last_error","d.delivered_at","d.next_retry_at as delivery_next_retry_at","d.created_at as delivery_created_at","e.organization_id","e.type","e.source","e.specversion","e.subject","e.time","e.datacontenttype","e.dataschema","e.data","e.cron","e.status as event_status","e.attempts as event_attempts","e.last_error as event_last_error","e.next_retry_at","e.created_at as event_created_at","e.updated_at as event_updated_at","s.connection_id","s.publisher","s.event_type","s.filter","s.enabled","s.created_at as subscription_created_at","s.updated_at as subscription_updated_at"]).where("d.id","in",J).where("d.status","=","processing").execute()).map((F)=>({delivery:{id:F.delivery_id,eventId:F.event_id,subscriptionId:F.subscription_id,status:F.delivery_status,attempts:F.delivery_attempts,lastError:F.delivery_last_error,deliveredAt:F.delivered_at,nextRetryAt:F.delivery_next_retry_at,createdAt:F.delivery_created_at},event:{id:F.event_id,organizationId:F.organization_id,type:F.type,source:F.source,specversion:F.specversion,subject:F.subject,time:F.time,datacontenttype:F.datacontenttype,dataschema:F.dataschema,data:F.data?JSON.parse(F.data):null,cron:F.cron,status:F.event_status,attempts:F.event_attempts,lastError:F.event_last_error,nextRetryAt:F.next_retry_at,createdAt:F.event_created_at,updatedAt:F.event_updated_at},subscription:{id:F.subscription_id,organizationId:F.organization_id,connectionId:F.connection_id,publisher:F.publisher,eventType:F.event_type,filter:F.filter,enabled:Boolean(F.enabled),createdAt:F.subscription_created_at,updatedAt:F.subscription_updated_at}}))}async markDeliveriesDelivered(Z){if(Z.length===0)return;let G=new Date().toISOString();await this.db.updateTable("event_deliveries").set({status:"delivered",delivered_at:G}).where("id","in",Z).execute()}async markDeliveriesPermanentlyFailed(Z,G){if(Z.length===0)return;await this.db.updateTable("event_deliveries").set({status:"failed",last_error:G,next_retry_at:null}).where("id","in",Z).execute()}async markDeliveriesFailed(Z,G,W=20,J=1000,Y=3600000){if(Z.length===0)return;for(let F of Z){let K=await this.db.selectFrom("event_deliveries").select(["attempts"]).where("id","=",F).executeTakeFirst();if(!K)continue;let H=K.attempts+1;if(H>=W)await this.db.updateTable("event_deliveries").set({attempts:H,last_error:G,status:"failed",next_retry_at:null}).where("id","=",F).execute();else{let V=Math.min(J*Math.pow(2,H-1),Y),X=new Date(Date.now()+V).toISOString();await this.db.updateTable("event_deliveries").set({attempts:H,last_error:G,status:"pending",next_retry_at:X}).where("id","=",F).execute()}}}async updateEventStatus(Z){let G=await this.db.selectFrom("event_deliveries").select(["status"]).where("event_id","=",Z).execute();if(G.length===0)return;let W=G.every((F)=>F.status==="delivered"),J=G.some((F)=>F.status==="failed"),Y=G.some((F)=>F.status==="pending"||F.status==="processing");if(W)await this.db.updateTable("events").set({status:"delivered",updated_at:new Date().toISOString()}).where("id","=",Z).execute();else if(J&&!Y)await this.db.updateTable("events").set({status:"failed",updated_at:new Date().toISOString()}).where("id","=",Z).execute()}async resetStuckDeliveries(){let Z=await this.db.updateTable("event_deliveries").set({status:"pending"}).where("status","=","processing").executeTakeFirst();return Number(Z.numUpdatedRows??0)}async getEvent(Z,G){let W=await this.db.selectFrom("events").selectAll().where("id","=",Z).where("organization_id","=",G).executeTakeFirst();if(!W)return null;return{id:W.id,organizationId:W.organization_id,type:W.type,source:W.source,specversion:W.specversion,subject:W.subject,time:W.time,datacontenttype:W.datacontenttype,dataschema:W.dataschema,data:W.data?JSON.parse(W.data):null,cron:W.cron,status:W.status,attempts:W.attempts,lastError:W.last_error,nextRetryAt:W.next_retry_at,createdAt:W.created_at,updatedAt:W.updated_at}}async findActiveCronEvent(Z,G,W,J){let Y=await this.db.selectFrom("events").selectAll().where("organization_id","=",Z).where("type","=",G).where("source","=",W).where("cron","=",J).where("status","in",["pending","processing","delivered"]).orderBy("created_at","desc").executeTakeFirst();if(!Y)return null;return{id:Y.id,organizationId:Y.organization_id,type:Y.type,source:Y.source,specversion:Y.specversion,subject:Y.subject,time:Y.time,datacontenttype:Y.datacontenttype,dataschema:Y.dataschema,data:Y.data?JSON.parse(Y.data):null,cron:Y.cron,status:Y.status,attempts:Y.attempts,lastError:Y.last_error,nextRetryAt:Y.next_retry_at,createdAt:Y.created_at,updatedAt:Y.updated_at}}async findOrphanedCronEvents(){return(await this.db.selectFrom("events").selectAll().where("cron","is not",null).where("status","=","delivered").where((G)=>G.not(G.exists(G.selectFrom("event_deliveries").select("id").whereRef("event_deliveries.event_id","=","events.id").where("event_deliveries.status","in",["pending","processing"])))).execute()).map((G)=>({id:G.id,organizationId:G.organization_id,type:G.type,source:G.source,specversion:G.specversion,subject:G.subject,time:G.time,datacontenttype:G.datacontenttype,dataschema:G.dataschema,data:G.data?JSON.parse(G.data):null,cron:G.cron,status:G.status,attempts:G.attempts,lastError:G.last_error,nextRetryAt:G.next_retry_at,createdAt:G.created_at,updatedAt:G.updated_at}))}async cancelEvent(Z,G,W){let J=await this.db.updateTable("events").set({status:"failed",last_error:"Cancelled by publisher",updated_at:new Date().toISOString()}).where("id","=",Z).where("organization_id","=",G).where("source","=",W).where("status","in",["pending","processing"]).executeTakeFirst();if((J.numUpdatedRows??0n)>0n)await this.db.updateTable("event_deliveries").set({status:"failed",last_error:"Event cancelled by publisher"}).where("event_id","=",Z).where("status","in",["pending","processing"]).execute();return{success:(J.numUpdatedRows??0n)>0n}}async scheduleRetryWithoutAttemptIncrement(Z,G){if(Z.length===0)return;let W=new Date(Date.now()+G).toISOString();await this.db.updateTable("event_deliveries").set({status:"pending",next_retry_at:W}).where("id","in",Z).execute()}async ackDelivery(Z,G,W){if(!await this.db.selectFrom("events").select(["id"]).where("id","=",Z).where("organization_id","=",G).executeTakeFirst())return{success:!1};let F=((await this.db.updateTable("event_deliveries").set({status:"delivered",delivered_at:new Date().toISOString()}).where("event_id","=",Z).where("status","in",["pending","processing"]).where((K)=>K.exists(K.selectFrom("event_subscriptions").select("id").whereRef("event_subscriptions.id","=","event_deliveries.subscription_id").where("event_subscriptions.connection_id","=",W).where("event_subscriptions.organization_id","=",G))).executeTakeFirst()).numUpdatedRows??0n)>0n;if(F)await this.updateEventStatus(Z);return{success:F}}async syncSubscriptions(Z){let{organizationId:G,connectionId:W,subscriptions:J}=Z,Y=(A,C)=>{return`${A}::${C??""}`},F=await this.listSubscriptions(G,W),K=new Map;for(let A of F)K.set(Y(A.eventType,A.publisher),A);let H=new Map;for(let A of J)H.set(Y(A.eventType,A.publisher),A);let V=new Date().toISOString(),X=[],U=[],O=[],w=0;for(let[A,C]of H){let R=K.get(A);if(!R)X.push({id:crypto.randomUUID(),organization_id:G,connection_id:W,event_type:C.eventType,publisher:C.publisher??null,filter:C.filter??null,enabled:1,created_at:V,updated_at:V});else{let T=R.filter??null,$=C.filter??null;if(T!==$)U.push({id:R.id,filter:$});else w++}}for(let[A,C]of K)if(!H.has(A))O.push(C.id);if(X.length>0)await this.db.insertInto("event_subscriptions").values(X).execute();if(U.length>0)await Promise.all(U.map((A)=>this.db.updateTable("event_subscriptions").set({filter:A.filter,updated_at:V}).where("id","=",A.id).execute()));if(O.length>0)await this.db.deleteFrom("event_subscriptions").where("id","in",O).execute();let q=X.length,z=U.length,D=O.length,L=await this.listSubscriptions(G,W);return{created:q,updated:z,deleted:D,unchanged:w,subscriptions:L}}}function Xl6(Z){return new Vl6(Z)}Nc();class Ul6{listeners=new Map;totalCount=0;strategy=null;started=!1;async start(Z){if(this.started){if(!Z)return;await this.stop()}this.strategy=Z,await this.strategy.start((G,W)=>this.localEmit(G,W)),this.started=!0}async stop(){if(!this.started||!this.strategy)return;await this.strategy.stop(),this.started=!1}add(Z){if(this.totalCount>=500)return console.warn("[SSEHub] Total connection limit reached (500)"),null;let G=this.listeners.get(Z.organizationId);if(!G)G=new Map,this.listeners.set(Z.organizationId,G);if(G.size>=50)return console.warn(`[SSEHub] Per-org connection limit reached for ${Z.organizationId} (50)`),null;return G.set(Z.id,Z),this.totalCount++,Z.id}remove(Z,G){let W=this.listeners.get(Z);if(!W)return;if(W.delete(G)){if(this.totalCount--,W.size===0)this.listeners.delete(Z)}}emit(Z,G){if(this.strategy)this.strategy.broadcast(Z,G);else this.localEmit(Z,G)}countForOrg(Z){return this.listeners.get(Z)?.size??0}get count(){return this.totalCount}localEmit(Z,G){let W=this.listeners.get(Z);if(!W||W.size===0)return;for(let J of W.values()){if(J.typePatterns&&!Tw9(G.type,J.typePatterns))continue;try{J.push(G)}catch{this.remove(Z,J.id)}}}}function Tw9(Z,G){for(let W of G){if(W===Z)return!0;if(W.endsWith(".*")){let J=W.slice(0,-1);if(Z.startsWith(J))return!0}}return!1}var SU=new Ul6;function Nl6(Z){return{id:Z.id,type:Z.type,source:Z.source,subject:Z.subject,data:Z.data?Rw9(Z.data):void 0,time:Z.time}}function Rw9(Z){if(typeof Z==="string")try{return JSON.parse(Z)}catch{return Z}return Z}Nc();var Cw9=new Set([401]),Qw9=["unauthorized","invalid_token","invalid api key","api key required","api-key required"];function Ol6(Z){if(typeof Z==="object"&&Z!==null){let J=Z,Y=J.status??J.code;if(typeof Y==="number"&&Cw9.has(Y))return!0}let G=Z instanceof Error?Z.message:typeof Z==="string"?Z:"";if(!G)return!1;let W=G.toLowerCase();if(/\b401\b/.test(W))return!0;return Qw9.some((J)=>W.includes(J))}class si extends Error{constructor(Z){super(Z);this.name="PermanentDeliveryError"}}var eH1={pollIntervalMs:5000,batchSize:100,maxAttempts:20,retryDelayMs:1000,maxDelayMs:3600000};uG1();r31();Ql();function Iw9(Z){return Z.endsWith("_self")}function Sw9(Z){return Z.slice(0,-5)}function wl6(){return async(Z,G)=>{try{if(Iw9(Z)&&Uy1()){let K=Sw9(Z),H=await xO.create();if(await qK6(G,{organizationId:K,connectionId:Z,publish:async(U,O,w,q)=>{await H.eventBus.publish(K,Z,{type:U,subject:O,data:w,deliverAt:q?.deliverAt})},createMCPProxy:async(U)=>{let O={...H,getOrCreateClient:rj()},w=await Ud1(U,O);return{callTool:async(q,z,D)=>{let L=await w.callTool(q,z,D);return{content:L.content,structuredContent:L.structuredContent,isError:L.isError}},close:()=>w.close()}}}))return{success:!0}}let W=await xO.create(),J=await Ud1(Z,W),F=await af1.forClient(gn(J)).ON_EVENTS({events:G});return{success:F.success,error:F.error,retryAfter:F.retryAfter,results:F.results}}catch(W){let J=W instanceof Error?W.message:String(W);if(console.error(`[EventBus] Failed to notify connection ${Z}:`,J),Ol6(W))throw new si(J);return{success:!1,error:J}}}}function ql6(Z){return{specversion:"1.0",id:Z.id,source:Z.source,type:Z.type,time:Z.time,subject:Z.subject??void 0,datacontenttype:Z.datacontenttype,dataschema:Z.dataschema??void 0,data:Z.data??void 0}}function jw9(Z){let G=new Map;for(let J of Z){let Y=J.subscription.connectionId,F=G.get(Y);if(F){if(F.deliveryIds.push(J.delivery.id),!F.seenEventIds.has(J.event.id))F.seenEventIds.add(J.event.id),F.events.push(ql6(J.event))}else G.set(Y,{connectionId:J.subscription.connectionId,deliveryIds:[J.delivery.id],events:[ql6(J.event)],seenEventIds:new Set([J.event.id])})}let W=new Map;for(let[J,Y]of G)W.set(J,{connectionId:Y.connectionId,deliveryIds:Y.deliveryIds,events:Y.events});return W}class zr1{storage;notifySubscriber;running=!1;processing=!1;pendingNotify=!1;config;eventTriggerEngine;constructor(Z,G,W){this.storage=Z;this.notifySubscriber=W??wl6(),this.config={...eH1,...G}}setEventTriggerEngine(Z){this.eventTriggerEngine=Z}async start(){if(this.running)return;let Z=await this.storage.resetStuckDeliveries();if(Z>0)console.log(`[EventBus] Reset ${Z} stuck deliveries from previous shutdown`);let G=await this.storage.findOrphanedCronEvents();for(let W of G)await this.scheduleNextCronDelivery(W),console.log(`[EventBus] Recovered orphaned cron event ${W.id} (${W.type}, cron: ${W.cron})`);if(G.length>0)console.log(`[EventBus] Recovered ${G.length} orphaned cron event(s)`);this.running=!0}stop(){this.running=!1}isRunning(){return this.running}async processNow(){if(!this.running)return;if(this.processing){this.pendingNotify=!0;return}this.processing=!0;try{do this.pendingNotify=!1,await this.processEvents();while(this.pendingNotify)}catch(Z){console.error("[EventBus] Error processing events:",Z)}finally{this.processing=!1}}async processEvents(){let Z=await this.storage.claimPendingDeliveries(this.config.batchSize);if(Z.length===0)return;let G=jw9(Z),W=await Promise.allSettled(Array.from(G.entries()).map(async([F,K])=>{let H=new Set;try{let X=await this.notifySubscriber(K.connectionId,K.events);if(X.results&&Object.keys(X.results).length>0)await this.processPerEventResults(K,X);else if(X.success)await this.storage.markDeliveriesDelivered(K.deliveryIds);else if(X.retryAfter&&X.retryAfter>0)await this.storage.scheduleRetryWithoutAttemptIncrement(K.deliveryIds,X.retryAfter);else await this.storage.markDeliveriesFailed(K.deliveryIds,X.error||"Subscriber returned success=false",this.config.maxAttempts,this.config.retryDelayMs,this.config.maxDelayMs)}catch(X){if(X instanceof si){await this.storage.markDeliveriesPermanentlyFailed(K.deliveryIds,X.message);for(let U of K.events)H.add(U.id)}else{let U=X instanceof Error?X.message:String(X);console.error(`[EventBus] Failed to notify subscription ${F}:`,U),await this.storage.markDeliveriesFailed(K.deliveryIds,U,this.config.maxAttempts,this.config.retryDelayMs,this.config.maxDelayMs)}}let V=new Set;for(let X of Z)if(K.deliveryIds.includes(X.delivery.id))V.add(X.event.id);return{eventIds:V,permanentlyFailed:H}})),J=new Set,Y=new Set;for(let F of W)if(F.status==="fulfilled"){for(let K of F.value.eventIds)J.add(K);for(let K of F.value.permanentlyFailed)Y.add(K)}for(let F of J)try{await this.storage.updateEventStatus(F);let K=Z.find((H)=>H.event.id===F)?.event;if(K?.cron&&!Y.has(F))await this.scheduleNextCronDelivery(K)}catch(K){console.error(`[EventBus] Failed to update event status ${F}:`,K)}if(this.eventTriggerEngine){let F=new Set,K=[];for(let H of Z){if(H.delivery.attempts>0)continue;if(!F.has(H.event.id))F.add(H.event.id),K.push({source:H.event.source,type:H.event.type,data:H.event.data,organizationId:H.event.organizationId})}if(K.length>0)this.eventTriggerEngine.notifyEvents(K)}}async processPerEventResults(Z,G){let W=[],J=new Map,Y=[],F=new Map;for(let K=0;K<Z.events.length;K++){let H=Z.events?.[K];if(!H)continue;let V=Z.deliveryIds?.[K];if(!V)continue;F.set(H.id,V)}for(let K of Z.events){let H=F.get(K.id);if(!H)continue;let V=G.results?.[K.id];if(V)if(V.success)W.push(H);else if(V.retryAfter&&V.retryAfter>0){let X=J.get(V.retryAfter)||[];X.push(H),J.set(V.retryAfter,X)}else Y.push({deliveryId:H,error:V.error||"Event processing failed"});else if(G.success)W.push(H);else if(G.retryAfter&&G.retryAfter>0){let X=J.get(G.retryAfter)||[];X.push(H),J.set(G.retryAfter,X)}else Y.push({deliveryId:H,error:G.error||"Batch processing failed"})}if(W.length>0)await this.storage.markDeliveriesDelivered(W);for(let[K,H]of J)await this.storage.scheduleRetryWithoutAttemptIncrement(H,K);if(Y.length>0){let K=new Map;for(let{deliveryId:H,error:V}of Y){let X=K.get(V)||[];X.push(H),K.set(V,X)}for(let[H,V]of K)await this.storage.markDeliveriesFailed(V,H,this.config.maxAttempts,this.config.retryDelayMs,this.config.maxDelayMs)}}async scheduleNextCronDelivery(Z){if(!Z.cron)return;try{let W=new WA(Z.cron,{timezone:"UTC"}).nextRun();if(!W){console.log(`[EventBus] Cron expression for event ${Z.id} has no more runs`);return}let J=W.toISOString(),Y=await this.storage.getMatchingSubscriptions(Z);if(Y.length===0){console.log(`[EventBus] No subscriptions for cron event ${Z.id}, skipping next delivery`);return}await this.storage.createDeliveries(Z.id,Y.map((F)=>F.id),J),console.log(`[EventBus] Scheduled next cron delivery for event ${Z.id} at ${J}`)}catch(G){console.error(`[EventBus] Failed to schedule next cron delivery for event ${Z.id}:`,G)}}}class Dr1{storage;worker;notifyStrategy;running=!1;constructor(Z){this.storage=Z.storage,this.notifyStrategy=Z.notifyStrategy,this.worker=new zr1(this.storage,Z.config)}setEventTriggerEngine(Z){this.worker.setEventTriggerEngine(Z)}async publish(Z,G,W){if(W.deliverAt&&W.cron)throw Error("Cannot set both deliverAt and cron. Use one or the other.");let J;if(W.cron){try{let U=new WA(W.cron,{timezone:"UTC"}).nextRun();if(!U)throw Error("Cron expression does not produce a next run time");J=U.toISOString()}catch(X){throw Error(`Invalid cron expression: ${X instanceof Error?X.message:String(X)}`)}let V=await this.storage.findActiveCronEvent(Z,W.type,G,W.cron);if(V)return V}let Y=crypto.randomUUID(),F=new Date().toISOString(),K=await this.storage.publishEvent({id:Y,organizationId:Z,type:W.type,source:G,subject:W.subject,time:F,data:W.data,cron:W.cron});SU.emit(Z,Nl6(K));let H=await this.storage.getMatchingSubscriptions(K);if(H.length>0){let V=W.deliverAt??J;if(await this.storage.createDeliveries(Y,H.map((X)=>X.id),V),this.notifyStrategy&&!V)await this.notifyStrategy.notify(Y).catch((X)=>{console.warn("[EventBus] Notify failed (non-critical):",X)})}return K}async subscribe(Z,G){return this.storage.subscribe({id:crypto.randomUUID(),organizationId:Z,connectionId:G.connectionId,publisher:G.publisher,eventType:G.eventType,filter:G.filter})}async unsubscribe(Z,G){return this.storage.unsubscribe(G,Z)}async listSubscriptions(Z,G){return this.storage.listSubscriptions(Z,G)}async getSubscription(Z,G){return this.storage.getSubscription(G,Z)}async getEvent(Z,G){return this.storage.getEvent(G,Z)}async cancelEvent(Z,G,W){return this.storage.cancelEvent(G,Z,W)}async ackEvent(Z,G,W){return this.storage.ackDelivery(G,Z,W)}async syncSubscriptions(Z,G){return this.storage.syncSubscriptions({organizationId:Z,...G})}async start(){if(this.running)return;if(this.running=!0,await this.worker.start(),this.notifyStrategy)await this.notifyStrategy.start(()=>{this.worker.processNow().catch((Z)=>{console.error("[EventBus] Error processing after notify:",Z)})});await this.worker.processNow().catch((Z)=>{console.error("[EventBus] Error processing pending events on startup:",Z)})}async stop(){if(!this.running)return;if(this.running=!1,this.worker.stop(),this.notifyStrategy)try{await this.notifyStrategy.stop()}catch(Z){console.error("[EventBus] Error stopping notify strategy:",Z)}}isRunning(){return this.running}}class Br1{options;sub=null;onNotify=null;encoder=new TextEncoder;constructor(Z){this.options=Z}async start(Z){if(this.sub)return;this.onNotify=Z,this.sub=this.options.getConnection().subscribe("mesh.events.notify"),(async()=>{for await(let G of this.sub)this.onNotify?.()})().catch((G)=>{console.error("[NatsNotify] Subscription error:",G)})}async stop(){this.sub?.unsubscribe(),this.sub=null,this.onNotify=null}async notify(Z){try{this.options.getConnection().publish("mesh.events.notify",this.encoder.encode(Z))}catch(G){console.warn("[NatsNotify] Publish failed (non-critical):",G)}}}class Lr1{options;sub=null;localEmit=null;originId=crypto.randomUUID();encoder=new TextEncoder;constructor(Z){this.options=Z}async start(Z){if(this.localEmit=Z,this.sub)return;this.sub=this.options.getConnection().subscribe("mesh.sse.broadcast");let G=new TextDecoder;(async()=>{for await(let W of this.sub)try{let J=JSON.parse(G.decode(W.data));if(typeof J?.originId!=="string"||typeof J?.organizationId!=="string"||typeof J?.event?.id!=="string"||typeof J?.event?.type!=="string")continue;if(J.originId===this.originId)continue;this.localEmit?.(J.organizationId,J.event)}catch{}})().catch((W)=>{console.error("[NatsSSEBroadcast] Subscription error:",W)})}broadcast(Z,G){this.localEmit?.(Z,G);let W={originId:this.originId,organizationId:Z,event:G};try{this.options.getConnection().publish("mesh.sse.broadcast",this.encoder.encode(JSON.stringify(W)))}catch(J){console.warn("[NatsSSEBroadcast] Publish failed (non-critical):",J)}}async stop(){this.sub?.unsubscribe(),this.sub=null,this.localEmit=null}}function zl6(...Z){return{async start(G){await Promise.all(Z.map((W)=>W.start(G)))},async stop(){await Promise.all(Z.map((G)=>G.stop().catch((W)=>{console.error("[NotifyStrategy] Error stopping strategy:",W)})))},async notify(G){await Promise.all(Z.map((W)=>W.notify(G).catch((J)=>{console.warn("[NotifyStrategy] Notify failed (non-critical):",J)})))}}}class Ar1{intervalMs;timer=null;onNotify=null;constructor(Z){this.intervalMs=Z}async start(Z){if(this.timer)return;this.onNotify=Z,this.scheduleNext()}async stop(){if(this.timer)clearTimeout(this.timer),this.timer=null;this.onNotify=null}async notify(Z){if(this.onNotify)this.onNotify()}scheduleNext(){this.timer=setTimeout(()=>{if(this.onNotify)this.onNotify();if(this.timer)this.scheduleNext()},this.intervalMs)}}function Dl6(Z,G,W){let J=Xl6(Z.db),Y=W?.pollIntervalMs??eH1.pollIntervalMs,F=zl6(new Ar1(Y),new Br1({getConnection:()=>G.getConnection()})),K=new Lr1({getConnection:()=>G.getConnection()});return SU.start(K).catch((H)=>{console.error("[SSEHub] Failed to start broadcast strategy:",H)}),new Dr1({storage:J,config:W,notifyStrategy:F})}qD();sY();AB();var fw9={br:".br",zstd:".zst",gzip:".gz"},cS7=Object.keys(fw9);MB();jT1();var Mr1="x-hono-disable-ssg",Xj7=(()=>{try{return new Response("SSG is disabled",{status:404,headers:{[Mr1]:"true"}})}catch{return null}})();L41();var{write:cj7}=Bun;var vw9=class{#Z;constructor(Z){this.#Z=Z,this.raw=Z.raw,this.url=Z.url?new URL(Z.url):null,this.protocol=Z.protocol??null}send(Z,G){this.#Z.send(Z,G??{})}raw;binaryType="arraybuffer";get readyState(){return this.#Z.readyState}url;protocol;close(Z,G){this.#Z.close(Z,G)}};var Bl6=(Z)=>{return(...G)=>{if(typeof G[0]==="function"){let[W,J]=G;return async function(F,K){let H=await W(F),V=await Z(F,H,J);if(V)return V;await K()}}else{let[W,J,Y]=G;return(async()=>{let F=await Z(W,J,Y);if(!F)throw Error("Failed to upgrade WebSocket");return F})()}}};var ti=(Z)=>("server"in Z.env)?Z.env.server:Z.env;var yw9=Bl6((Z,G)=>{let W=ti(Z);if(!W)throw TypeError("env has to include the 2nd argument of fetch.");if(W.upgrade(Z.req.raw,{data:{events:G,url:new URL(Z.req.url),protocol:Z.req.url}}))return new Response(null);return});var Er1=(Z)=>{let G=ti(Z);if(!G)throw TypeError("env has to include the 2nd argument of fetch.");if(typeof G.requestIP!=="function")throw TypeError("server.requestIP is not a function.");let W=G.requestIP(Z.req.raw);if(!W)return{remote:{}};return{remote:{address:W.address,addressType:W.family==="IPv6"||W.family==="IPv4"?W.family:void 0,port:W.port}}};v7();PT();var Ll6={google:{name:"Google",icon:"https://assets.decocache.com/webdraw/eb7480aa-a68b-4ce4-98ff-36aa121762a7/google.svg"},github:{name:"GitHub",icon:"https://assets.decocache.com/webdraw/5f999dcb-c8a6-4572-948c-9996ef1d502f/github.svg"},microsoft:{name:"Microsoft",icon:"https://assets.decocache.com/mcp/aa6f6e1a-6526-4bca-99cc-82e2ec38b0e4/microsoft.png"}};Jv();var Pr1=new Y7;Pr1.get("/config",async(Z)=>{try{let G=Object.keys(E8.socialProviders??{}),W=G.length>0,J=G.map((K)=>({name:K,icon:Ll6[K].icon})),Y=o0.NODE_ENV!=="production"||o0.UNSAFE_ALLOW_STDIO_TRANSPORT,F={emailAndPassword:{enabled:E8.emailAndPassword?.enabled??!1},magicLink:{enabled:E8.magicLinkConfig?.enabled??!1},emailOtp:{enabled:E8.emailOtpConfig?.enabled??!1},resetPassword:{enabled:vJ1},socialProviders:{enabled:W,providers:J},sso:E8.ssoConfig?{enabled:!0,providerId:E8.ssoConfig.providerId}:{enabled:!1},stdioEnabled:Y,localMode:o2()};return Z.json({success:!0,config:F})}catch(G){let W=G instanceof Error?G.message:"Failed to load auth config";return Z.json({success:!1,error:W},500)}});Pr1.post("/local-session",async(Z)=>{if(!o2())return Z.json({success:!1,error:"Local mode is not active"},403);let G;try{G=Er1(Z).remote.address}catch{}if(!(G==="127.0.0.1"||G==="::1"||G==="::ffff:127.0.0.1"))return Z.json({success:!1,error:"Forbidden"},403);try{let{waitForSeed:J}=await Promise.resolve().then(() => (Jv(),WV1));await J();let{auth:Y}=await Promise.resolve().then(() => (PT(),gA6)),F=await $r1();if(!F)return Z.json({success:!1,error:"Local admin user not found"},500);let K=await GV1();return await Y.api.signInEmail({body:{email:F.email,password:K},asResponse:!0})}catch(J){return console.error("Failed to create local session:",J),Z.json({success:!1,error:J instanceof Error?J.message:"Failed to create local session"},500)}});var El6=Pr1;VW();sY();tC();VW();function $l6(Z){let G=Z.filter((J)=>J.role==="system"),W=Z.find((J)=>J.role!=="system");return{systemMessages:G,requestMessage:W}}function aw9(Z){let G=!1,W=Z.map((J)=>{if(J.role!=="assistant")return J;if(!J.parts.some((F)=>("state"in F)&&F.state==="approval-requested"))return J;return G=!0,{...J,parts:J.parts.map((F)=>{if(!("state"in F)||F.state!=="approval-requested"||!("approval"in F)||!F.approval)return F;return{...F,state:"output-denied",approval:{...F.approval,approved:!1,reason:"User sent a new message without approving this tool call."}}})}});return G?W:Z}function rw9(Z){let[G,W]=Z.reduce((J,Y)=>{if(Y.role==="system")J[0].push(Y);else J[1].push(Y);return J},[[],[]]);return{systemMessages:G,messages:W}}async function ow9(Z,G){return await Z.loadHistory(G)}function sw9(Z,G){let W=Z.filter((F)=>F.parts&&F.parts.length>0),J=W.findIndex((F)=>F.id===G.id);return J>=0?[...W.slice(0,J),G]:[...W,G]}async function Pl6(Z,G,W,J){let Y=await ow9(Z,J),F=sw9(Y,G);return[...W,...F]}async function Tl6(Z,G){let W=await TZ6({messages:Z}),J=aw9(W),Y=await PZ6(J,{tools:G.tools,ignoreIncompleteToolCalls:!0}),{systemMessages:F,messages:K}=rw9(Y),V=CZ6({messages:K,reasoning:"all",emptyMessages:"remove",toolCalls:"none"}).map((X)=>{if(X.role!=="assistant")return X;let U=Array.isArray(X.content)?X.content.filter((O)=>O.type!=="reasoning"&&O.type!=="thinking"&&O.type!=="redacted-reasoning").map((O)=>{let w=O;if("providerOptions"in w||"providerMetadata"in w){let{providerOptions:q,providerMetadata:z,...D}=w;return D}return O}):X.content;return{...X,content:Array.isArray(U)&&U.length===0?[{type:"text",text:""}]:U,providerOptions:void 0,providerMetadata:void 0}});return{systemMessages:F,messages:V,originalMessages:W}}lZ();VW();tC();VW();Z0();function Rl6(Z){let{toolOutputMap:G}=Z;return w7({description:"Filter a tool output that was too large to display inline. Returns all lines matching the given regular expression pattern (grep-like). You may call this tool multiple times with different patterns to extract different pieces of information.",inputExamples:[{input:{tool_call_id:"id_1",pattern:"error|warning"}},{input:{tool_call_id:"id_2",pattern:'"status":\\s*"failed"'}}],inputSchema:$0(N.object({tool_call_id:N.string(),pattern:N.string().min(1).describe("Regular expression pattern to filter tool output lines. Returns all matching lines.")})),execute:async({tool_call_id:W,pattern:J})=>{if(!G.has(W))return{result:`Tool output not found for tool call id: ${W}. Available ids: ${[...G.keys()].join(", ")||"(none)"}`,matchCount:0,totalLines:0};let Y=G.get(W),F;try{F=new RegExp(J)}catch{return{result:`Invalid regex pattern: ${J}`,matchCount:0,totalLines:0}}let K=Y.split(`
|
|
2678
|
+
`),Gm6=!0}throw new kH1.CredentialsProviderError("AWS_PROFILE is set, skipping fromEnv provider.",{logger:Z.logger,tryNextLink:!0})}return Z.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromEnv"),Pn1(Z)()},async(G)=>{Z.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromSSO");let{ssoStartUrl:W,ssoAccountId:J,ssoRegion:Y,ssoRoleName:F,ssoSession:K}=Z;if(!W&&!J&&!Y&&!F&&!K)throw new kH1.CredentialsProviderError("Skipping SSO provider in default chain (inputs do not include SSO fields).",{logger:Z.logger});let{fromSSO:H}=await Promise.resolve().then(() => (di1(),li1));return H(Z)(G)},async(G)=>{Z.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromIni");let{fromIni:W}=await Promise.resolve().then(() => (Zm6(),eu6));return W(Z)(G)},async(G)=>{Z.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromProcess");let{fromProcess:W}=await Promise.resolve().then(() => (na1(),pa1));return W(Z)(G)},async(G)=>{Z.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromTokenFile");let{fromTokenFile:W}=await Promise.resolve().then(() => (ta1(),sa1));return W(Z)(G)},async()=>{return Z.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::remoteProvider"),(await Ck6(Z))()},async()=>{throw new kH1.CredentialsProviderError("Could not load credentials from any providers",{tryNextLink:!1,logger:Z.logger})}],sO9);var sO9=(Z)=>Z?.expiration!==void 0&&Z.expiration.getTime()-Date.now()<300000;var tk=c1(Mi(),1),tO9="AWS_S3_USE_ARN_REGION",eO9="s3_use_arn_region",Ym6={environmentVariableSelector:(Z)=>tk.booleanSelector(Z,tO9,tk.SelectorType.ENV),configFileSelector:(Z)=>tk.booleanSelector(Z,eO9,tk.SelectorType.CONFIG),default:void 0};var gH1=c1(_k(),1),LM=c1(vK(),1);var DM=c1(cn(),1);var Fm6=c1(cn(),1);class ek{bytes;constructor(Z){if(this.bytes=Z,Z.byteLength!==8)throw Error("Int64 buffers must be exactly 8 bytes")}static fromNumber(Z){if(Z>9223372036854776000||Z<-9223372036854776000)throw Error(`${Z} is too large (or, if negative, too small) to represent as an Int64`);let G=new Uint8Array(8);for(let W=7,J=Math.abs(Math.round(Z));W>-1&&J>0;W--,J/=256)G[W]=J;if(Z<0)Km6(G);return new ek(G)}valueOf(){let Z=this.bytes.slice(0),G=Z[0]&128;if(G)Km6(Z);return parseInt(Fm6.toHex(Z),16)*(G?-1:1)}toString(){return String(this.valueOf())}}function Km6(Z){for(let G=0;G<8;G++)Z[G]^=255;for(let G=7;G>-1;G--)if(Z[G]++,Z[G]!==0)break}class Zr1{toUtf8;fromUtf8;constructor(Z,G){this.toUtf8=Z,this.fromUtf8=G}format(Z){let G=[];for(let Y of Object.keys(Z)){let F=this.fromUtf8(Y);G.push(Uint8Array.from([F.byteLength]),F,this.formatHeaderValue(Z[Y]))}let W=new Uint8Array(G.reduce((Y,F)=>Y+F.byteLength,0)),J=0;for(let Y of G)W.set(Y,J),J+=Y.byteLength;return W}formatHeaderValue(Z){switch(Z.type){case"boolean":return Uint8Array.from([Z.value?0:1]);case"byte":return Uint8Array.from([2,Z.value]);case"short":let G=new DataView(new ArrayBuffer(3));return G.setUint8(0,3),G.setInt16(1,Z.value,!1),new Uint8Array(G.buffer);case"integer":let W=new DataView(new ArrayBuffer(5));return W.setUint8(0,4),W.setInt32(1,Z.value,!1),new Uint8Array(W.buffer);case"long":let J=new Uint8Array(9);return J[0]=5,J.set(Z.value.bytes,1),J;case"binary":let Y=new DataView(new ArrayBuffer(3+Z.value.byteLength));Y.setUint8(0,6),Y.setUint16(1,Z.value.byteLength,!1);let F=new Uint8Array(Y.buffer);return F.set(Z.value,3),F;case"string":let K=this.fromUtf8(Z.value),H=new DataView(new ArrayBuffer(3+K.byteLength));H.setUint8(0,7),H.setUint16(1,K.byteLength,!1);let V=new Uint8Array(H.buffer);return V.set(K,3),V;case"timestamp":let X=new Uint8Array(9);return X[0]=8,X.set(ek.fromNumber(Z.value.valueOf()).bytes,1),X;case"uuid":if(!Vw9.test(Z.value))throw Error(`Invalid UUID received: ${Z.value}`);let U=new Uint8Array(17);return U[0]=9,U.set(DM.fromHex(Z.value.replace(/\-/g,"")),1),U}}parse(Z){let G={},W=0;while(W<Z.byteLength){let J=Z.getUint8(W++),Y=this.toUtf8(new Uint8Array(Z.buffer,Z.byteOffset+W,J));switch(W+=J,Z.getUint8(W++)){case 0:G[Y]={type:Vm6,value:!0};break;case 1:G[Y]={type:Vm6,value:!1};break;case 2:G[Y]={type:Zw9,value:Z.getInt8(W++)};break;case 3:G[Y]={type:Gw9,value:Z.getInt16(W,!1)},W+=2;break;case 4:G[Y]={type:Ww9,value:Z.getInt32(W,!1)},W+=4;break;case 5:G[Y]={type:Jw9,value:new ek(new Uint8Array(Z.buffer,Z.byteOffset+W,8))},W+=8;break;case 6:let F=Z.getUint16(W,!1);W+=2,G[Y]={type:Yw9,value:new Uint8Array(Z.buffer,Z.byteOffset+W,F)},W+=F;break;case 7:let K=Z.getUint16(W,!1);W+=2,G[Y]={type:Kw9,value:this.toUtf8(new Uint8Array(Z.buffer,Z.byteOffset+W,K))},W+=K;break;case 8:G[Y]={type:Fw9,value:new Date(new ek(new Uint8Array(Z.buffer,Z.byteOffset+W,8)).valueOf())},W+=8;break;case 9:let H=new Uint8Array(Z.buffer,Z.byteOffset+W,16);W+=16,G[Y]={type:Hw9,value:`${DM.toHex(H.subarray(0,4))}-${DM.toHex(H.subarray(4,6))}-${DM.toHex(H.subarray(6,8))}-${DM.toHex(H.subarray(8,10))}-${DM.toHex(H.subarray(10))}`};break;default:throw Error("Unrecognized header type tag")}}return G}}var Hm6;(function(Z){Z[Z.boolTrue=0]="boolTrue",Z[Z.boolFalse=1]="boolFalse",Z[Z.byte=2]="byte",Z[Z.short=3]="short",Z[Z.integer=4]="integer",Z[Z.long=5]="long",Z[Z.byteArray=6]="byteArray",Z[Z.string=7]="string",Z[Z.timestamp=8]="timestamp",Z[Z.uuid=9]="uuid"})(Hm6||(Hm6={}));var Vm6="boolean",Zw9="byte",Gw9="short",Ww9="integer",Jw9="long",Yw9="binary",Kw9="string",Fw9="timestamp",Hw9="uuid",Vw9=/^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/;var Xm6=4,BM=Xm6*2,r2=4,Xw9=BM+r2*2;function Um6({byteLength:Z,byteOffset:G,buffer:W}){if(Z<Xw9)throw Error("Provided message too short to accommodate event stream message overhead");let J=new DataView(W,G,Z),Y=J.getUint32(0,!1);if(Z!==Y)throw Error("Reported message length does not match received message length");let F=J.getUint32(Xm6,!1),K=J.getUint32(BM,!1),H=J.getUint32(Z-r2,!1),V=new R2().update(new Uint8Array(W,G,BM));if(K!==V.digest())throw Error(`The prelude checksum specified in the message (${K}) does not match the calculated CRC32 checksum (${V.digest()})`);if(V.update(new Uint8Array(W,G+BM,Z-(BM+r2))),H!==V.digest())throw Error(`The message checksum (${V.digest()}) did not match the expected value of ${H}`);return{headers:new DataView(W,G+BM+r2,F),body:new Uint8Array(W,G+BM+r2+F,Y-F-(BM+r2+r2))}}class Gr1{headerMarshaller;messageBuffer;isEndOfStream;constructor(Z,G){this.headerMarshaller=new Zr1(Z,G),this.messageBuffer=[],this.isEndOfStream=!1}feed(Z){this.messageBuffer.push(this.decode(Z))}endOfStream(){this.isEndOfStream=!0}getMessage(){let Z=this.messageBuffer.pop(),G=this.isEndOfStream;return{getMessage(){return Z},isEndOfStream(){return G}}}getAvailableMessages(){let Z=this.messageBuffer;this.messageBuffer=[];let G=this.isEndOfStream;return{getMessages(){return Z},isEndOfStream(){return G}}}encode({headers:Z,body:G}){let W=this.headerMarshaller.format(Z),J=W.byteLength+G.byteLength+16,Y=new Uint8Array(J),F=new DataView(Y.buffer,Y.byteOffset,Y.byteLength),K=new R2;return F.setUint32(0,J,!1),F.setUint32(4,W.byteLength,!1),F.setUint32(8,K.update(Y.subarray(0,8)).digest(),!1),Y.set(W,12),Y.set(G,W.byteLength+12),F.setUint32(J-4,K.update(Y.subarray(8,J-4)).digest(),!1),Y}decode(Z){let{headers:G,body:W}=Um6(Z);return{headers:this.headerMarshaller.parse(G),body:W}}formatHeaders(Z){return this.headerMarshaller.format(Z)}}class Wr1{options;constructor(Z){this.options=Z}[Symbol.asyncIterator](){return this.asyncIterator()}async*asyncIterator(){for await(let Z of this.options.inputStream)yield this.options.decoder.decode(Z)}}class Jr1{options;constructor(Z){this.options=Z}[Symbol.asyncIterator](){return this.asyncIterator()}async*asyncIterator(){for await(let Z of this.options.messageStream)yield this.options.encoder.encode(Z);if(this.options.includeEndFrame)yield new Uint8Array(0)}}class Yr1{options;constructor(Z){this.options=Z}[Symbol.asyncIterator](){return this.asyncIterator()}async*asyncIterator(){for await(let Z of this.options.messageStream){let G=await this.options.deserializer(Z);if(G===void 0)continue;yield G}}}class Kr1{options;constructor(Z){this.options=Z}[Symbol.asyncIterator](){return this.asyncIterator()}async*asyncIterator(){for await(let Z of this.options.inputStream)yield this.options.serializer(Z)}}function Nm6(Z){let G=0,W=0,J=null,Y=null,F=(H)=>{if(typeof H!=="number")throw Error("Attempted to allocate an event message where size was not a number: "+H);G=H,W=4,J=new Uint8Array(H),new DataView(J.buffer).setUint32(0,H,!1)},K=async function*(){let H=Z[Symbol.asyncIterator]();while(!0){let{value:V,done:X}=await H.next();if(X){if(!G)return;else if(G===W)yield J;else throw Error("Truncated event message received.");return}let U=V.length,O=0;while(O<U){if(!J){let q=U-O;if(!Y)Y=new Uint8Array(4);let z=Math.min(4-W,q);if(Y.set(V.slice(O,O+z),W),W+=z,O+=z,W<4)break;F(new DataView(Y.buffer).getUint32(0,!1)),Y=null}let w=Math.min(G-W,U-O);if(J.set(V.slice(O,O+w),W),W+=w,O+=w,G&&G===W)yield J,J=null,G=0,W=0}}};return{[Symbol.asyncIterator]:K}}function Om6(Z,G){return async function(W){let{value:J}=W.headers[":message-type"];if(J==="error"){let Y=Error(W.headers[":error-message"].value||"UnknownError");throw Y.name=W.headers[":error-code"].value,Y}else if(J==="exception"){let Y=W.headers[":exception-type"].value,F={[Y]:W},K=await Z(F);if(K.$unknown){let H=Error(G(W.body));throw H.name=Y,H}throw K[Y]}else if(J==="event"){let Y={[W.headers[":event-type"].value]:W},F=await Z(Y);if(F.$unknown)return;return F}else throw Error(`Unrecognizable event type: ${W.headers[":event-type"].value}`)}}class Fr1{eventStreamCodec;utfEncoder;constructor({utf8Encoder:Z,utf8Decoder:G}){this.eventStreamCodec=new Gr1(Z,G),this.utfEncoder=Z}deserialize(Z,G){let W=Nm6(Z);return new Yr1({messageStream:new Wr1({inputStream:W,decoder:this.eventStreamCodec}),deserializer:Om6(G,this.utfEncoder)})}serialize(Z,G){return new Jr1({messageStream:new Kr1({inputStream:Z,serializer:G}),encoder:this.eventStreamCodec,includeEndFrame:!0})}}import{Readable as Uw9}from"stream";async function*wm6(Z){let G=!1,W=!1,J=[];Z.on("error",(Y)=>{if(!G)G=!0;if(Y)throw Y}),Z.on("data",(Y)=>{J.push(Y)}),Z.on("end",()=>{G=!0});while(!W){let Y=await new Promise((F)=>setTimeout(()=>F(J.shift()),0));if(Y)yield Y;W=G&&J.length===0}}class Hr1{universalMarshaller;constructor({utf8Encoder:Z,utf8Decoder:G}){this.universalMarshaller=new Fr1({utf8Decoder:G,utf8Encoder:Z})}deserialize(Z,G){let W=typeof Z[Symbol.asyncIterator]==="function"?Z:wm6(Z);return this.universalMarshaller.deserialize(W,G)}serialize(Z,G){return Uw9.from(this.universalMarshaller.serialize(Z,G))}}var qm6=(Z)=>new Hr1(Z);var xH1=c1(kk(),1);var zm6=c1(j3(),1);import{Writable as Nw9}from"stream";class Vr1 extends Nw9{hash;constructor(Z,G){super(G);this.hash=Z}_write(Z,G,W){try{this.hash.update(zm6.toUint8Array(Z))}catch(J){return W(J)}W()}}var Dm6=(Z,G)=>{if(G.readableFlowing!==null)throw Error("Unable to calculate hash for flowing readable stream");let W=new Z,J=new Vr1(W);return G.pipe(J),new Promise((Y,F)=>{G.on("error",(K)=>{J.end(),F(K)}),J.on("error",F),J.on("finish",()=>{W.digest().then(Y).catch(F)})})};var uH1=c1(PU(),1),rF=c1($U(),1),mH1=c1(iA(),1),lH1=c1(G9(),1),Em6=c1(vk(),1),$m6=c1(yk(),1),Pm6=c1(WM(),1);var vH1=c1(MG(),1),Bm6=c1(xk(),1);var Lm6=c1(G9(),1),Am6=c1(gO(),1),yH1=c1(TY(),1),hH1=c1(q2(),1),bH1=c1(j3(),1);var Mm6=(Z)=>{return{apiVersion:"2006-03-01",base64Decoder:Z?.base64Decoder??yH1.fromBase64,base64Encoder:Z?.base64Encoder??yH1.toBase64,disableHostPrefix:Z?.disableHostPrefix??!1,endpointProvider:Z?.endpointProvider??LF1,extensions:Z?.extensions??[],getAwsChunkedEncodingStream:Z?.getAwsChunkedEncodingStream??hH1.getAwsChunkedEncodingStream,httpAuthSchemeProvider:Z?.httpAuthSchemeProvider??T_6,httpAuthSchemes:Z?.httpAuthSchemes??[{schemeId:"aws.auth#sigv4",identityProvider:(G)=>G.getIdentityProvider("aws.auth#sigv4"),signer:new vH1.AwsSdkSigV4Signer},{schemeId:"aws.auth#sigv4a",identityProvider:(G)=>G.getIdentityProvider("aws.auth#sigv4a"),signer:new vH1.AwsSdkSigV4ASigner}],logger:Z?.logger??new Lm6.NoOpLogger,protocol:Z?.protocol??Bm6.AwsRestXmlProtocol,protocolSettings:Z?.protocolSettings??{defaultNamespace:"com.amazonaws.s3",errorTypeRegistries:j_6,xmlNamespace:"http://s3.amazonaws.com/doc/2006-03-01/",version:"2006-03-01",serviceTarget:"AmazonS3"},sdkStreamMixin:Z?.sdkStreamMixin??hH1.sdkStreamMixin,serviceId:Z?.serviceId??"S3",signerConstructor:Z?.signerConstructor??j2,signingEscapePath:Z?.signingEscapePath??!1,urlParser:Z?.urlParser??Am6.parseUrl,useArnRegion:Z?.useArnRegion??void 0,utf8Decoder:Z?.utf8Decoder??bH1.fromUtf8,utf8Encoder:Z?.utf8Encoder??bH1.toUtf8}};var Tm6=(Z)=>{lH1.emitWarningIfUnsupportedVersion(process.version);let G=$m6.resolveDefaultsModeConfig(Z),W=()=>G().then(lH1.loadConfigsForDefaultMode),J=Mm6(Z);Zv.emitWarningIfUnsupportedVersion(process.version);let Y={profile:Z?.profile,logger:J.logger};return{...J,...Z,runtime:"node",defaultsMode:G,authSchemePreference:Z?.authSchemePreference??rF.loadConfig(Zv.NODE_AUTH_SCHEME_PREFERENCE_OPTIONS,Y),bodyLengthChecker:Z?.bodyLengthChecker??Em6.calculateBodyLength,credentialDefaultProvider:Z?.credentialDefaultProvider??Jm6,defaultUserAgentProvider:Z?.defaultUserAgentProvider??gH1.createDefaultUserAgentProvider({serviceId:J.serviceId,clientVersion:u_6.version}),disableS3ExpressSessionAuth:Z?.disableS3ExpressSessionAuth??rF.loadConfig(Bp1,Y),eventStreamSerdeProvider:Z?.eventStreamSerdeProvider??qm6,maxAttempts:Z?.maxAttempts??rF.loadConfig(uH1.NODE_MAX_ATTEMPT_CONFIG_OPTIONS,Z),md5:Z?.md5??xH1.Hash.bind(null,"md5"),region:Z?.region??rF.loadConfig(LM.NODE_REGION_CONFIG_OPTIONS,{...LM.NODE_REGION_CONFIG_FILE_OPTIONS,...Y}),requestChecksumCalculation:Z?.requestChecksumCalculation??rF.loadConfig(iT6,Y),requestHandler:mH1.NodeHttpHandler.create(Z?.requestHandler??W),responseChecksumValidation:Z?.responseChecksumValidation??rF.loadConfig(aT6,Y),retryMode:Z?.retryMode??rF.loadConfig({...uH1.NODE_RETRY_MODE_CONFIG_OPTIONS,default:async()=>(await W()).retryMode||Pm6.DEFAULT_RETRY_MODE},Z),sha1:Z?.sha1??xH1.Hash.bind(null,"sha1"),sha256:Z?.sha256??xH1.Hash.bind(null,"sha256"),sigv4aSigningRegionSet:Z?.sigv4aSigningRegionSet??rF.loadConfig(Zv.NODE_SIGV4A_CONFIG_OPTIONS,Y),streamCollector:Z?.streamCollector??mH1.streamCollector,streamHasher:Z?.streamHasher??Dm6,useArnRegion:Z?.useArnRegion??rF.loadConfig(Ym6,Y),useDualstackEndpoint:Z?.useDualstackEndpoint??rF.loadConfig(LM.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS,Y),useFipsEndpoint:Z?.useFipsEndpoint??rF.loadConfig(LM.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS,Y),userAgentAppId:Z?.userAgentAppId??rF.loadConfig(gH1.NODE_APP_ID_CONFIG_OPTIONS,Y)}};var dH1=c1(k2(),1),cH1=c1(V5(),1),pH1=c1(G9(),1);var Rm6=(Z)=>{let{httpAuthSchemes:G,httpAuthSchemeProvider:W,credentials:J}=Z;return{setHttpAuthScheme(Y){let F=G.findIndex((K)=>K.schemeId===Y.schemeId);if(F===-1)G.push(Y);else G.splice(F,1,Y)},httpAuthSchemes(){return G},setHttpAuthSchemeProvider(Y){W=Y},httpAuthSchemeProvider(){return W},setCredentials(Y){J=Y},credentials(){return J}}},Cm6=(Z)=>{return{httpAuthSchemes:Z.httpAuthSchemes(),httpAuthSchemeProvider:Z.httpAuthSchemeProvider(),credentials:Z.credentials()}};var Qm6=(Z,G)=>{let W=Object.assign(dH1.getAwsRegionExtensionConfiguration(Z),pH1.getDefaultExtensionConfiguration(Z),cH1.getHttpHandlerExtensionConfiguration(Z),Rm6(Z));return G.forEach((J)=>J.configure(W)),Object.assign(Z,dH1.resolveAwsRegionExtensionConfiguration(W),pH1.resolveDefaultRuntimeConfig(W),cH1.resolveHttpHandlerRuntimeConfig(W),Cm6(W))};class Xr1 extends vm6.Client{config;constructor(...[Z]){let G=Tm6(Z||{});super(G);this.initConfig=G;let W=C_6(G),J=iH1.resolveUserAgentConfig(W),Y=hI6(J),F=aH1.resolveRetryConfig(Y),K=jm6.resolveRegionConfig(F),H=nH1.resolveHostHeaderConfig(K),V=km6.resolveEndpointConfig(H),X=Xj6(V),U=R_6(X),O=zS6(U,{session:[()=>this,$n1]}),w=Qm6(O,Z?.extensions||[]);this.config=w,this.middlewareStack.use(fm6.getSchemaSerdePlugin(this.config)),this.middlewareStack.use(iH1.getUserAgentPlugin(this.config)),this.middlewareStack.use(aH1.getRetryPlugin(this.config)),this.middlewareStack.use(_m6.getContentLengthPlugin(this.config)),this.middlewareStack.use(nH1.getHostHeaderPlugin(this.config)),this.middlewareStack.use(Im6.getLoggerPlugin(this.config)),this.middlewareStack.use(Sm6.getRecursionDetectionPlugin(this.config)),this.middlewareStack.use(Gv.getHttpAuthSchemeEndpointRuleSetPlugin(this.config,{httpAuthSchemeParametersProvider:E_6,identityProviderConfigProvider:async(q)=>new Gv.DefaultIdentityProviderConfig({"aws.auth#sigv4":q.credentials,"aws.auth#sigv4a":q.credentials})})),this.middlewareStack.use(Gv.getHttpSigningPlugin(this.config)),this.middlewareStack.use(MS6(this.config)),this.middlewareStack.use(pT6(this.config)),this.middlewareStack.use(sI6(this.config)),this.middlewareStack.use(Lp1(this.config)),this.middlewareStack.use(Ap1(this.config))}destroy(){super.destroy()}}function Ow9(Z){return(G)=>async(W)=>{let J={...W.input},Y=[{target:"SSECustomerKey",hash:"SSECustomerKeyMD5"},{target:"CopySourceSSECustomerKey",hash:"CopySourceSSECustomerKeyMD5"}];for(let F of Y){let K=J[F.target];if(K){let H;if(typeof K==="string")if(qw9(K,Z))H=Z.base64Decoder(K);else H=Z.utf8Decoder(K),J[F.target]=Z.base64Encoder(H);else H=ArrayBuffer.isView(K)?new Uint8Array(K.buffer,K.byteOffset,K.byteLength):new Uint8Array(K),J[F.target]=Z.base64Encoder(H);let V=new Z.md5;V.update(H),J[F.hash]=Z.base64Encoder(await V.digest())}}return G({...W,input:J})}}var ww9={name:"ssecMiddleware",step:"initialize",tags:["SSE"],override:!0},Wv=(Z)=>({applyToStack:(G)=>{G.add(Ow9(Z),ww9)}});function qw9(Z,G){if(!/^(?:[A-Za-z0-9+/]{4})*([A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(Z))return!1;try{return G.base64Decoder(Z).length===32}catch{return!1}}var ym6=c1(jY(),1),hm6=c1(G9(),1);class Ur1 extends hm6.Command.classBuilder().ep({...EV,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function(Z,G,W,J){return[ym6.getEndpointPlugin(W,Z.getEndpointParameterInstructions()),mO(W)]}).s("AmazonS3","DeleteObject",{}).n("S3Client","DeleteObjectCommand").sc(k_6).build(){}var bm6=c1(jY(),1),xm6=c1(G9(),1);class rH1 extends xm6.Command.classBuilder().ep({...EV,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function(Z,G,W,J){return[bm6.getEndpointPlugin(W,Z.getEndpointParameterInstructions()),sK1(W,{requestChecksumRequired:!1,requestValidationModeMember:"ChecksumMode",responseAlgorithms:["CRC64NVME","CRC32","CRC32C","SHA256","SHA1"]}),Wv(W),eK1(W)]}).s("AmazonS3","GetObject",{}).n("S3Client","GetObjectCommand").sc(v_6).build(){}var gm6=c1(jY(),1),um6=c1(G9(),1);class oH1 extends um6.Command.classBuilder().ep({...EV,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function(Z,G,W,J){return[gm6.getEndpointPlugin(W,Z.getEndpointParameterInstructions()),mO(W),Wv(W),eK1(W)]}).s("AmazonS3","HeadObject",{}).n("S3Client","HeadObjectCommand").sc(y_6).build(){}var mm6=c1(jY(),1),lm6=c1(G9(),1);class Nr1 extends lm6.Command.classBuilder().ep({...EV,Bucket:{type:"contextParams",name:"Bucket"},Prefix:{type:"contextParams",name:"Prefix"}}).m(function(Z,G,W,J){return[mm6.getEndpointPlugin(W,Z.getEndpointParameterInstructions()),mO(W)]}).s("AmazonS3","ListObjectsV2",{}).n("S3Client","ListObjectsV2Command").sc(h_6).build(){}var dm6=c1(jY(),1),cm6=c1(G9(),1);class Or1 extends cm6.Command.classBuilder().ep({...EV,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function(Z,G,W,J){return[dm6.getEndpointPlugin(W,Z.getEndpointParameterInstructions()),sK1(W,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!1}),aI6(W),mO(W),Wv(W)]}).s("AmazonS3","PutObject",{}).n("S3Client","PutObjectCommand").sc(b_6).build(){}var pm6=c1(rY1(),1);function nm6(Z){let{port:G,query:W}=Z,{protocol:J,path:Y,hostname:F}=Z;if(J&&J.slice(-1)!==":")J+=":";if(G)F+=`:${G}`;if(Y&&Y.charAt(0)!=="/")Y=`/${Y}`;let K=W?pm6.buildQueryString(W):"";if(K&&K[0]!=="?")K=`?${K}`;let H="";if(Z.username!=null||Z.password!=null){let X=Z.username??"",U=Z.password??"";H=`${X}:${U}@`}let V="";if(Z.fragment)V=`#${Z.fragment}`;return`${J}//${H}${F}${Y}${K}${V}`}var rm6=c1(jY(),1),om6=c1(V5(),1);var im6="UNSIGNED-PAYLOAD",am6="X-Amz-Content-Sha256";class sH1{signer;constructor(Z){let G={service:Z.signingName||Z.service||"s3",uriEscapePath:Z.uriEscapePath||!1,applyChecksum:Z.applyChecksum||!1,...Z};this.signer=new j2(G)}presign(Z,{unsignableHeaders:G=new Set,hoistableHeaders:W=new Set,unhoistableHeaders:J=new Set,...Y}={}){return this.prepareRequest(Z,{unsignableHeaders:G,unhoistableHeaders:J,hoistableHeaders:W}),this.signer.presign(Z,{expiresIn:900,unsignableHeaders:G,unhoistableHeaders:J,...Y})}presignWithCredentials(Z,G,{unsignableHeaders:W=new Set,hoistableHeaders:J=new Set,unhoistableHeaders:Y=new Set,...F}={}){return this.prepareRequest(Z,{unsignableHeaders:W,unhoistableHeaders:Y,hoistableHeaders:J}),this.signer.presignWithCredentials(Z,G,{expiresIn:900,unsignableHeaders:W,unhoistableHeaders:Y,...F})}prepareRequest(Z,{unsignableHeaders:G=new Set,unhoistableHeaders:W=new Set,hoistableHeaders:J=new Set}={}){G.add("content-type"),Object.keys(Z.headers).map((H)=>H.toLowerCase()).filter((H)=>H.startsWith("x-amz-server-side-encryption")).forEach((H)=>{if(!J.has(H))W.add(H)}),Z.headers[am6]=im6;let Y=Z.headers.host,F=Z.port,K=`${Z.hostname}${Z.port!=null?":"+F:""}`;if(!Y||Y===Z.hostname&&Z.port!=null)Z.headers.host=K}}var sm6=async(Z,G,W={})=>{let J,Y;if(typeof Z.config.endpointProvider==="function"){let w=(await rm6.getEndpointFromInstructions(G.input,G.constructor,Z.config)).properties?.authSchemes?.[0];if(w?.name==="sigv4a")Y=w?.signingRegionSet?.join(",");else Y=w?.signingRegion;J=new sH1({...Z.config,signingName:w?.signingName,region:async()=>Y})}else J=new sH1(Z.config);let F=(O,w)=>async(q)=>{let{request:z}=q;if(!om6.HttpRequest.isInstance(z))throw Error("Request to be presigned is not an valid HTTP request.");delete z.headers["amz-sdk-invocation-id"],delete z.headers["amz-sdk-request"],delete z.headers["x-amz-user-agent"];let D,L={...W,signingRegion:W.signingRegion??w.signing_region??Y,signingService:W.signingService??w.signing_service};if(w.s3ExpressIdentity)D=await J.presignWithCredentials(z,w.s3ExpressIdentity,L);else D=await J.presign(z,L);return{response:{},output:{$metadata:{httpStatusCode:200},presigned:D}}},K="presignInterceptMiddleware",H=Z.middlewareStack.clone();H.addRelativeTo(F,{name:K,relation:"before",toMiddleware:"awsAuthMiddleware",override:!0});let V=G.resolveMiddleware(H,Z.config,{}),{output:X}=await V({input:G.input}),{presigned:U}=X;return nm6(U)};import{extname as zw9}from"path";function tm6(Z){let G;try{G=decodeURIComponent(Z)}catch{G=Z}let J=G.replace(/\0/g,"").replace(/[\x00-\x1f\x7f]/g,"").replace(/\\/g,"/").split("/"),Y=[];for(let F of J)if(F==="..")Y.pop();else if(F!=="."&&F!=="")Y.push(F);return Y.join("/")}function ri(Z,G){let W=tm6(G);if(!W)throw Error("Key is empty after sanitization");return`${Z}/${W}`}function em6(Z,G){if(!G)return`${Z}/`;let W=tm6(G);return`${Z}/${W}${W.endsWith("/")?"":"/"}`}function Zl6(Z,G){let W=`${Z}/`;if(G.startsWith(W))return G.slice(W.length);return G}var Dw9={".json":"application/json",".html":"text/html",".htm":"text/html",".css":"text/css",".js":"application/javascript",".mjs":"application/javascript",".ts":"text/typescript",".txt":"text/plain",".md":"text/markdown",".csv":"text/csv",".xml":"application/xml",".svg":"image/svg+xml",".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".gif":"image/gif",".webp":"image/webp",".pdf":"application/pdf",".zip":"application/zip",".gz":"application/gzip",".tar":"application/x-tar",".wasm":"application/wasm",".yaml":"application/yaml",".yml":"application/yaml",".toml":"application/toml"};function tH1(Z){let G=zw9(Z).toLowerCase();return Dw9[G]??"application/octet-stream"}var Bw9=new Set(["application/json","text/html","text/css","application/javascript","text/typescript","text/plain","text/markdown","text/csv","application/xml","image/svg+xml","application/yaml","application/toml"]);function Gl6(Z){let G=Z.split(";")[0].trim();if(Bw9.has(G))return!0;if(G.startsWith("text/"))return!0;return!1}var Wl6=1048576;class wr1{client;bucket;constructor(Z){this.bucket=Z.bucket,this.client=new Xr1({endpoint:Z.endpoint,region:Z.region,credentials:{accessKeyId:Z.accessKeyId,secretAccessKey:Z.secretAccessKey},forcePathStyle:Z.forcePathStyle})}async get(Z,G){let W=ri(Z,G),J=await this.client.send(new oH1({Bucket:this.bucket,Key:W})),Y=J.ContentLength??0,F=J.ContentType??tH1(G);if(Y>Wl6){let X=await sm6(this.client,new rH1({Bucket:this.bucket,Key:W}),{expiresIn:3600});return{error:"FILE_TOO_LARGE",size:Y,maxInlineSize:Wl6,presignedUrl:X,contentType:F}}let H=await(await this.client.send(new rH1({Bucket:this.bucket,Key:W}))).Body.transformToByteArray(),V=Gl6(F);return{content:V?new TextDecoder().decode(H):Buffer.from(H).toString("base64"),contentType:F,encoding:V?"utf-8":"base64",size:Y,lastModified:J.LastModified,etag:J.ETag}}async put(Z,G,W,J){let Y=ri(Z,G),F=J?.contentType??tH1(G);return{etag:(await this.client.send(new Or1({Bucket:this.bucket,Key:Y,Body:typeof W==="string"?Buffer.from(W,"utf-8"):W,ContentType:F}))).ETag,key:G}}async list(Z,G){let W=em6(Z,G?.prefix),J=await this.client.send(new Nr1({Bucket:this.bucket,Prefix:W,MaxKeys:G?.maxKeys??1000,ContinuationToken:G?.continuationToken}));return{objects:(J.Contents??[]).map((Y)=>({key:Zl6(Z,Y.Key??""),size:Y.Size??0,lastModified:Y.LastModified,etag:Y.ETag})),isTruncated:J.IsTruncated??!1,nextContinuationToken:J.NextContinuationToken}}async delete(Z,G){let W=ri(Z,G);await this.client.send(new Ur1({Bucket:this.bucket,Key:W}))}async head(Z,G){let W=ri(Z,G),J=await this.client.send(new oH1({Bucket:this.bucket,Key:W}));return{contentType:J.ContentType??tH1(G),size:J.ContentLength??0,lastModified:J.LastModified,etag:J.ETag}}}var oi;function Lw9(){return!!(o0.S3_ENDPOINT&&o0.S3_BUCKET&&o0.S3_ACCESS_KEY_ID&&o0.S3_SECRET_ACCESS_KEY)}function Jl6(){if(oi!==void 0)return oi;if(!Lw9())return oi=null,null;return oi=new wr1({endpoint:o0.S3_ENDPOINT,bucket:o0.S3_BUCKET,region:o0.S3_REGION,accessKeyId:o0.S3_ACCESS_KEY_ID,secretAccessKey:o0.S3_SECRET_ACCESS_KEY,forcePathStyle:o0.S3_FORCE_PATH_STYLE}),oi}function Yl6(Z,G){return{get:(W)=>Z.get(G,W),put:(W,J,Y)=>Z.put(G,W,J,Y),list:(W)=>Z.list(G,W),delete:(W)=>Z.delete(G,W),head:(W)=>Z.head(G,W)}}function Aw9(Z){if(!Z)return;try{let G=JSON.parse(Z);if(typeof G!=="object"||G===null||Array.isArray(G))return;let W={};for(let[J,Y]of Object.entries(G))if(typeof Y==="string")W[J]=Y;return Object.keys(W).length>0?W:void 0}catch{return}}function Mw9(Z,G){for(let[W,J]of Object.entries(G)){let Y=Z[W];if(!Y||Y.length===0){let F=Z["*"];if(!F||F.length===0)return!1;if(F.includes("*"))continue;for(let K of J)if(!F.includes(K))return!1;continue}if(Y.includes("*"))continue;for(let F of J)if(!Y.includes(F))return!1}return!0}function qr1(Z){let{auth:G,headers:W,role:J,permissions:Y,userId:F}=Z,K=G.api.hasPermission;return{hasPermission:async(H)=>{if(J&&Zm1.includes(J))return!0;if(Y)return Mw9(Y,H);if(!K)return console.error("[Auth] hasPermission API not available"),!1;try{if((await K({headers:W,body:{permission:H}}))?.success===!0)return!0;let X={};for(let O of Object.keys(H))X[O]=["*"];return(await K({headers:W,body:{permission:X}}))?.success===!0}catch(V){return console.error("[Auth] Permission check failed:",V),!1}},organization:{create:async(H)=>{return G.api.createOrganization({headers:W,body:H})},update:async(H)=>{return G.api.updateOrganization({headers:W,body:H})},delete:async(H)=>{await G.api.deleteOrganization({headers:W,body:{organizationId:H}})},get:async(H)=>{return G.api.getFullOrganization({headers:W,query:H?{organizationId:H}:void 0})},list:async(H)=>{return G.api.listOrganizations({headers:W,query:H?{userId:H}:void 0})},addMember:async(H)=>{return G.api.addMember({headers:W,body:H})},removeMember:async(H)=>{await G.api.removeMember({headers:W,body:H})},listMembers:async(H)=>{return G.api.listMembers({headers:W,query:H?{organizationId:H.organizationId,limit:H.limit,offset:H.offset}:void 0})},updateMemberRole:async(H)=>{return G.api.updateMemberRole({headers:W,body:H})}},apiKey:{create:async(H)=>{return G.api.createApiKey({body:{...H,userId:F}})},list:async()=>{return G.api.listApiKeys({headers:W})},update:async(H)=>{return G.api.updateApiKey({body:{...H,userId:F}})},delete:async(H)=>{await G.api.deleteApiKey({headers:W,body:{keyId:H}})}}}}async function Ew9(Z,G,W){if(Zm1.includes(W))return;let J=await Z.selectFrom("organizationRole").select(["permission"]).where("organizationId","=",G).where("role","=",W).executeTakeFirst();if(!J?.permission)return;try{return JSON.parse(J.permission)}catch{console.error(`[Auth] Failed to parse permissions for role: ${W}`);return}}async function $w9(Z,G,W,J=Fl6){let Y=Z.headers.get("Authorization");try{let F=new Headers(Z.headers);F.set("X-MCP-Session-Auth","true");let K=await J.measure("auth_get_mcp_session",()=>G.api.getMcpSession({headers:F}));if(K){let H=K.userId,V=await J.measure("auth_query_membership",()=>W.selectFrom("member").innerJoin("organization","organization.id","member.organizationId").select(["member.role","member.organizationId","organization.id as orgId","organization.slug as orgSlug","organization.name as orgName"]).where("member.userId","=",H).executeTakeFirst()),X=V?.role,U=V?{id:V.orgId,slug:V.orgSlug,name:V.orgName}:void 0,O;if(V&&X)O=await J.measure("auth_fetch_role_permissions",()=>Ew9(W,V.organizationId,X));return{user:{id:H,role:X},role:X,permissions:O,organization:U}}}catch(F){console.error("[Auth] OAuth session check failed:",F)}if(Y?.startsWith("Bearer ")){let F=Y.replace("Bearer ","").trim();try{let K=await J.measure("auth_verify_mesh_jwt",()=>wU6(F));if(K){let H,V=K.metadata?.organizationId;if(K.sub&&V)H=(await J.measure("auth_query_membership",()=>W.selectFrom("member").select(["member.role"]).where("member.userId","=",K.sub).where("member.organizationId","=",V).executeTakeFirst()))?.role;let X,U=K.metadata?.organizationId;if(U){let O=K.metadata?.organizationName,w=K.metadata?.organizationSlug;if(O||w)X={id:U,name:O,slug:w};else{let q=await J.measure("auth_query_org_for_mesh_jwt",()=>W.selectFrom("organization").select(["id","slug","name"]).where("id","=",U).executeTakeFirst());X=q?{id:q.id,slug:q.slug,name:q.name}:{id:U}}}return{user:{id:K.sub,connectionId:K.metadata?.connectionId,role:H},role:H,permissions:K.permissions,organization:X}}}catch{}try{let K=await J.measure("auth_verify_api_key",()=>G.api.verifyApiKey({body:{key:F}}));if(K?.valid&&K.key){let H=K.key.metadata?.organization,V=K.key.permissions,X,U=K.key.userId;if(U&&H?.id)X=(await J.measure("auth_query_membership",()=>W.selectFrom("member").select(["member.role"]).where("member.userId","=",U).where("member.organizationId","=",H.id).executeTakeFirst()))?.role;return{apiKeyId:K.key.id,user:{id:K.key.userId,role:X},role:X,permissions:V,organization:H?{id:H.id,slug:H.slug,name:H.name}:void 0}}}catch(K){console.error("[Auth] API key check failed:",K)}}try{let F=new Headers(Z.headers);F.delete("Authorization");let K=await J.measure("auth_get_session",()=>G.api.getSession({headers:F}));if(K){let H,V;if(K.session.activeOrganizationId){let X=await J.measure("auth_get_full_organization",()=>G.api.getFullOrganization({headers:F}).catch(()=>null));if(X)H={id:X.id,slug:X.slug,name:X.name},V=X.members?.find((O)=>O.userId===K.user.id)?.role;else H={id:K.session.activeOrganizationId,slug:"",name:""}}return{user:{id:K.user.id,email:K.user.email,role:V},role:V,organization:H}}}catch(F){let K=F;console.error("[Auth] Session check failed:",JSON.stringify({message:K.message,body:K.body,stack:K.stack},null,2))}return{user:void 0}}var Kl6,xO={set:(Z)=>{Kl6=Z},create:async(Z,G)=>{return await Kl6(Z,G)}},Fl6={measure:async(Z,G)=>{return await G()}},Pw9=["x-hub-signature-256"];async function Hl6(Z){let G=new SP(Z.encryption.key),W=!!o0.CLICKHOUSE_URL,J=W?"clickhouse":"duckdb",Y,F;if(W)Y=new bn(o0.CLICKHOUSE_URL),F=new bn(o0.CLICKHOUSE_URL);else{let{engine:q}=await Zd1({basePath:Vw}),{engine:z}=await Zd1({basePath:kE});Y=q,F=z}let{resolve:K}=await import("path"),H=K(Vw),V=K(kE),X=W?(q)=>"monitoring_logs":(q)=>`read_ndjson('${H}/${q}/**/*.ndjson', auto_detect=true)`,U=W?(q)=>"monitoring_metrics":(q)=>`read_ndjson('${V}/${q}/**/*.ndjson', auto_detect=true)`,O=new mn(Z.db),w={connections:new tm(Z.db,G),organizationSettings:new Wd1(Z.db),monitoring:new Am1(Y,X,F,U,J),monitoringDashboards:new Gd1(Z.db),virtualMcps:new qm1(Z.db),users:new Fd1(Z.db),tags:new Kd1(Z.db),projects:new em(Z.db),projectConnections:new Jd1(Z.db),projectPluginConfigs:new Yd1(Z.db),aiProviderKeys:new Nd1(Z.db,G),oauthPkceStates:new Od1(Z.db),automations:vY1(Z.db)};return async(q,z)=>{let D=z?.timings??Fl6,L=rj(),A=q?.headers.get("x-caller-id")??void 0,C=q?await $w9(q,Z.auth,Z.db,D):{user:void 0},R=qr1({auth:Z.auth,headers:q?.headers??new Headers,role:C.role,permissions:C.permissions,userId:C.user?.id}),T={user:C.user};if(C.apiKeyId)T.apiKey={id:C.apiKeyId,name:"",userId:""};let $=C.organization,Q=q?o0.BASE_URL??`${new URL(q.url).origin}`:AF(),j=new KU(Z.auth,T.user?.id,void 0,R,C.role,"self"),f={...w,threads:new un(O,$?.id)},y=new wd1(f.aiProviderKeys,Z.modelListCache),v=Jl6(),h=v&&$?Yl6(v,$.id):null,n={timings:D,auth:T,connectionId:A,organization:$,storage:f,vault:G,authInstance:Z.auth,boundAuth:R,access:j,db:Z.db,tracer:Z.observability.tracer,meter:Z.observability.meter,baseUrl:Q,objectStorage:h,metadata:{requestId:crypto.randomUUID(),timestamp:new Date,wellKnownForwardableHeaders:Object.fromEntries(Pw9.map((d)=>[d,q?.headers.get(d)??null]).filter(([d,b])=>b!==null)),userAgent:q?.headers.get("x-mesh-client")||q?.headers.get("User-Agent")||void 0,ipAddress:(q?.headers.get("CF-Connecting-IP")||q?.headers.get("X-Forwarded-For"))??void 0,properties:Aw9(q?.headers.get("x-mesh-properties"))},eventBus:Z.eventBus,aiProviders:y,createMCPProxy:async(d)=>{return await IT6(d,n)},getOrCreateClient:L};return n}}oj();yS();class Vl6{db;constructor(Z){this.db=Z}mapRowToSubscription(Z){return{id:Z.id,organizationId:Z.organization_id,connectionId:Z.connection_id,publisher:Z.publisher,eventType:Z.event_type,filter:Z.filter,enabled:Boolean(Z.enabled),createdAt:Z.created_at,updatedAt:Z.updated_at}}async publishEvent(Z){let G=new Date().toISOString();return await this.db.insertInto("events").values({id:Z.id,organization_id:Z.organizationId,type:Z.type,source:Z.source,specversion:"1.0",subject:Z.subject??null,time:Z.time,datacontenttype:Z.datacontenttype??"application/json",dataschema:Z.dataschema??null,data:Z.data?JSON.stringify(Z.data):null,cron:Z.cron??null,status:"pending",attempts:0,last_error:null,next_retry_at:null,created_at:G,updated_at:G}).execute(),{id:Z.id,organizationId:Z.organizationId,type:Z.type,source:Z.source,specversion:"1.0",subject:Z.subject??null,time:Z.time,datacontenttype:Z.datacontenttype??"application/json",dataschema:Z.dataschema??null,data:Z.data??null,cron:Z.cron??null,status:"pending",attempts:0,lastError:null,nextRetryAt:null,createdAt:G,updatedAt:G}}async subscribe(Z){let G=this.db.selectFrom("event_subscriptions").selectAll().where("organization_id","=",Z.organizationId).where("connection_id","=",Z.connectionId).where("event_type","=",Z.eventType);if(Z.publisher)G=G.where("publisher","=",Z.publisher);else G=G.where("publisher","is",null);if(Z.filter)G=G.where("filter","=",Z.filter);else G=G.where("filter","is",null);let W=await G.executeTakeFirst();if(W)return this.mapRowToSubscription(W);let J=new Date().toISOString();return await this.db.insertInto("event_subscriptions").values({id:Z.id,organization_id:Z.organizationId,connection_id:Z.connectionId,publisher:Z.publisher??null,event_type:Z.eventType,filter:Z.filter??null,enabled:1,created_at:J,updated_at:J}).execute(),{id:Z.id,organizationId:Z.organizationId,connectionId:Z.connectionId,publisher:Z.publisher??null,eventType:Z.eventType,filter:Z.filter??null,enabled:1,createdAt:J,updatedAt:J}}async unsubscribe(Z,G){return{success:((await this.db.deleteFrom("event_subscriptions").where("id","=",Z).where("organization_id","=",G).executeTakeFirst()).numDeletedRows??0n)>0n}}async listSubscriptions(Z,G){let W=this.db.selectFrom("event_subscriptions").selectAll().where("organization_id","=",Z);if(G)W=W.where("connection_id","=",G);return(await W.execute()).map((Y)=>this.mapRowToSubscription(Y))}async getSubscription(Z,G){let W=await this.db.selectFrom("event_subscriptions").selectAll().where("id","=",Z).where("organization_id","=",G).executeTakeFirst();if(!W)return null;return this.mapRowToSubscription(W)}async getMatchingSubscriptions(Z){return(await this.db.selectFrom("event_subscriptions").selectAll().where("organization_id","=",Z.organizationId).where("enabled","=",1).where("event_type","=",Z.type).where((W)=>W.or([W("publisher","is",null),W("publisher","=",Z.source)])).execute()).map((W)=>this.mapRowToSubscription(W))}async createDeliveries(Z,G,W){if(G.length===0)return;let J=new Date().toISOString(),Y=W??null,F=G.map((K)=>({id:crypto.randomUUID(),event_id:Z,subscription_id:K,status:"pending",attempts:0,last_error:null,delivered_at:null,next_retry_at:Y,created_at:J}));await this.db.insertInto("event_deliveries").values(F).execute()}async claimPendingDeliveries(Z){let G=new Date().toISOString(),J=(await this.db.updateTable("event_deliveries").set({status:"processing"}).where("id","in",(F)=>F.selectFrom("event_deliveries as d").innerJoin("event_subscriptions as s","s.id","d.subscription_id").select("d.id").where("d.status","=","pending").where("s.enabled","=",1).where((K)=>K.or([K("d.next_retry_at","is",null),K("d.next_retry_at","<=",G)])).orderBy("d.created_at","asc").limit(Z)).where("status","=","pending").returning(["id"]).execute()).map((F)=>F.id);if(J.length===0)return[];return(await this.db.selectFrom("event_deliveries as d").innerJoin("events as e","e.id","d.event_id").innerJoin("event_subscriptions as s","s.id","d.subscription_id").select(["d.id as delivery_id","d.event_id","d.subscription_id","d.status as delivery_status","d.attempts as delivery_attempts","d.last_error as delivery_last_error","d.delivered_at","d.next_retry_at as delivery_next_retry_at","d.created_at as delivery_created_at","e.organization_id","e.type","e.source","e.specversion","e.subject","e.time","e.datacontenttype","e.dataschema","e.data","e.cron","e.status as event_status","e.attempts as event_attempts","e.last_error as event_last_error","e.next_retry_at","e.created_at as event_created_at","e.updated_at as event_updated_at","s.connection_id","s.publisher","s.event_type","s.filter","s.enabled","s.created_at as subscription_created_at","s.updated_at as subscription_updated_at"]).where("d.id","in",J).where("d.status","=","processing").execute()).map((F)=>({delivery:{id:F.delivery_id,eventId:F.event_id,subscriptionId:F.subscription_id,status:F.delivery_status,attempts:F.delivery_attempts,lastError:F.delivery_last_error,deliveredAt:F.delivered_at,nextRetryAt:F.delivery_next_retry_at,createdAt:F.delivery_created_at},event:{id:F.event_id,organizationId:F.organization_id,type:F.type,source:F.source,specversion:F.specversion,subject:F.subject,time:F.time,datacontenttype:F.datacontenttype,dataschema:F.dataschema,data:F.data?JSON.parse(F.data):null,cron:F.cron,status:F.event_status,attempts:F.event_attempts,lastError:F.event_last_error,nextRetryAt:F.next_retry_at,createdAt:F.event_created_at,updatedAt:F.event_updated_at},subscription:{id:F.subscription_id,organizationId:F.organization_id,connectionId:F.connection_id,publisher:F.publisher,eventType:F.event_type,filter:F.filter,enabled:Boolean(F.enabled),createdAt:F.subscription_created_at,updatedAt:F.subscription_updated_at}}))}async markDeliveriesDelivered(Z){if(Z.length===0)return;let G=new Date().toISOString();await this.db.updateTable("event_deliveries").set({status:"delivered",delivered_at:G}).where("id","in",Z).execute()}async markDeliveriesPermanentlyFailed(Z,G){if(Z.length===0)return;await this.db.updateTable("event_deliveries").set({status:"failed",last_error:G,next_retry_at:null}).where("id","in",Z).execute()}async markDeliveriesFailed(Z,G,W=20,J=1000,Y=3600000){if(Z.length===0)return;for(let F of Z){let K=await this.db.selectFrom("event_deliveries").select(["attempts"]).where("id","=",F).executeTakeFirst();if(!K)continue;let H=K.attempts+1;if(H>=W)await this.db.updateTable("event_deliveries").set({attempts:H,last_error:G,status:"failed",next_retry_at:null}).where("id","=",F).execute();else{let V=Math.min(J*Math.pow(2,H-1),Y),X=new Date(Date.now()+V).toISOString();await this.db.updateTable("event_deliveries").set({attempts:H,last_error:G,status:"pending",next_retry_at:X}).where("id","=",F).execute()}}}async updateEventStatus(Z){let G=await this.db.selectFrom("event_deliveries").select(["status"]).where("event_id","=",Z).execute();if(G.length===0)return;let W=G.every((F)=>F.status==="delivered"),J=G.some((F)=>F.status==="failed"),Y=G.some((F)=>F.status==="pending"||F.status==="processing");if(W)await this.db.updateTable("events").set({status:"delivered",updated_at:new Date().toISOString()}).where("id","=",Z).execute();else if(J&&!Y)await this.db.updateTable("events").set({status:"failed",updated_at:new Date().toISOString()}).where("id","=",Z).execute()}async resetStuckDeliveries(){let Z=await this.db.updateTable("event_deliveries").set({status:"pending"}).where("status","=","processing").executeTakeFirst();return Number(Z.numUpdatedRows??0)}async getEvent(Z,G){let W=await this.db.selectFrom("events").selectAll().where("id","=",Z).where("organization_id","=",G).executeTakeFirst();if(!W)return null;return{id:W.id,organizationId:W.organization_id,type:W.type,source:W.source,specversion:W.specversion,subject:W.subject,time:W.time,datacontenttype:W.datacontenttype,dataschema:W.dataschema,data:W.data?JSON.parse(W.data):null,cron:W.cron,status:W.status,attempts:W.attempts,lastError:W.last_error,nextRetryAt:W.next_retry_at,createdAt:W.created_at,updatedAt:W.updated_at}}async findActiveCronEvent(Z,G,W,J){let Y=await this.db.selectFrom("events").selectAll().where("organization_id","=",Z).where("type","=",G).where("source","=",W).where("cron","=",J).where("status","in",["pending","processing","delivered"]).orderBy("created_at","desc").executeTakeFirst();if(!Y)return null;return{id:Y.id,organizationId:Y.organization_id,type:Y.type,source:Y.source,specversion:Y.specversion,subject:Y.subject,time:Y.time,datacontenttype:Y.datacontenttype,dataschema:Y.dataschema,data:Y.data?JSON.parse(Y.data):null,cron:Y.cron,status:Y.status,attempts:Y.attempts,lastError:Y.last_error,nextRetryAt:Y.next_retry_at,createdAt:Y.created_at,updatedAt:Y.updated_at}}async findOrphanedCronEvents(){return(await this.db.selectFrom("events").selectAll().where("cron","is not",null).where("status","=","delivered").where((G)=>G.not(G.exists(G.selectFrom("event_deliveries").select("id").whereRef("event_deliveries.event_id","=","events.id").where("event_deliveries.status","in",["pending","processing"])))).execute()).map((G)=>({id:G.id,organizationId:G.organization_id,type:G.type,source:G.source,specversion:G.specversion,subject:G.subject,time:G.time,datacontenttype:G.datacontenttype,dataschema:G.dataschema,data:G.data?JSON.parse(G.data):null,cron:G.cron,status:G.status,attempts:G.attempts,lastError:G.last_error,nextRetryAt:G.next_retry_at,createdAt:G.created_at,updatedAt:G.updated_at}))}async cancelEvent(Z,G,W){let J=await this.db.updateTable("events").set({status:"failed",last_error:"Cancelled by publisher",updated_at:new Date().toISOString()}).where("id","=",Z).where("organization_id","=",G).where("source","=",W).where("status","in",["pending","processing"]).executeTakeFirst();if((J.numUpdatedRows??0n)>0n)await this.db.updateTable("event_deliveries").set({status:"failed",last_error:"Event cancelled by publisher"}).where("event_id","=",Z).where("status","in",["pending","processing"]).execute();return{success:(J.numUpdatedRows??0n)>0n}}async scheduleRetryWithoutAttemptIncrement(Z,G){if(Z.length===0)return;let W=new Date(Date.now()+G).toISOString();await this.db.updateTable("event_deliveries").set({status:"pending",next_retry_at:W}).where("id","in",Z).execute()}async ackDelivery(Z,G,W){if(!await this.db.selectFrom("events").select(["id"]).where("id","=",Z).where("organization_id","=",G).executeTakeFirst())return{success:!1};let F=((await this.db.updateTable("event_deliveries").set({status:"delivered",delivered_at:new Date().toISOString()}).where("event_id","=",Z).where("status","in",["pending","processing"]).where((K)=>K.exists(K.selectFrom("event_subscriptions").select("id").whereRef("event_subscriptions.id","=","event_deliveries.subscription_id").where("event_subscriptions.connection_id","=",W).where("event_subscriptions.organization_id","=",G))).executeTakeFirst()).numUpdatedRows??0n)>0n;if(F)await this.updateEventStatus(Z);return{success:F}}async syncSubscriptions(Z){let{organizationId:G,connectionId:W,subscriptions:J}=Z,Y=(A,C)=>{return`${A}::${C??""}`},F=await this.listSubscriptions(G,W),K=new Map;for(let A of F)K.set(Y(A.eventType,A.publisher),A);let H=new Map;for(let A of J)H.set(Y(A.eventType,A.publisher),A);let V=new Date().toISOString(),X=[],U=[],O=[],w=0;for(let[A,C]of H){let R=K.get(A);if(!R)X.push({id:crypto.randomUUID(),organization_id:G,connection_id:W,event_type:C.eventType,publisher:C.publisher??null,filter:C.filter??null,enabled:1,created_at:V,updated_at:V});else{let T=R.filter??null,$=C.filter??null;if(T!==$)U.push({id:R.id,filter:$});else w++}}for(let[A,C]of K)if(!H.has(A))O.push(C.id);if(X.length>0)await this.db.insertInto("event_subscriptions").values(X).execute();if(U.length>0)await Promise.all(U.map((A)=>this.db.updateTable("event_subscriptions").set({filter:A.filter,updated_at:V}).where("id","=",A.id).execute()));if(O.length>0)await this.db.deleteFrom("event_subscriptions").where("id","in",O).execute();let q=X.length,z=U.length,D=O.length,L=await this.listSubscriptions(G,W);return{created:q,updated:z,deleted:D,unchanged:w,subscriptions:L}}}function Xl6(Z){return new Vl6(Z)}Nc();class Ul6{listeners=new Map;totalCount=0;strategy=null;started=!1;async start(Z){if(this.started){if(!Z)return;await this.stop()}this.strategy=Z,await this.strategy.start((G,W)=>this.localEmit(G,W)),this.started=!0}async stop(){if(!this.started||!this.strategy)return;await this.strategy.stop(),this.started=!1}add(Z){if(this.totalCount>=500)return console.warn("[SSEHub] Total connection limit reached (500)"),null;let G=this.listeners.get(Z.organizationId);if(!G)G=new Map,this.listeners.set(Z.organizationId,G);if(G.size>=50)return console.warn(`[SSEHub] Per-org connection limit reached for ${Z.organizationId} (50)`),null;return G.set(Z.id,Z),this.totalCount++,Z.id}remove(Z,G){let W=this.listeners.get(Z);if(!W)return;if(W.delete(G)){if(this.totalCount--,W.size===0)this.listeners.delete(Z)}}emit(Z,G){if(this.strategy)this.strategy.broadcast(Z,G);else this.localEmit(Z,G)}countForOrg(Z){return this.listeners.get(Z)?.size??0}get count(){return this.totalCount}localEmit(Z,G){let W=this.listeners.get(Z);if(!W||W.size===0)return;for(let J of W.values()){if(J.typePatterns&&!Tw9(G.type,J.typePatterns))continue;try{J.push(G)}catch{this.remove(Z,J.id)}}}}function Tw9(Z,G){for(let W of G){if(W===Z)return!0;if(W.endsWith(".*")){let J=W.slice(0,-1);if(Z.startsWith(J))return!0}}return!1}var SU=new Ul6;function Nl6(Z){return{id:Z.id,type:Z.type,source:Z.source,subject:Z.subject,data:Z.data?Rw9(Z.data):void 0,time:Z.time}}function Rw9(Z){if(typeof Z==="string")try{return JSON.parse(Z)}catch{return Z}return Z}Nc();var Cw9=new Set([401]),Qw9=["unauthorized","invalid_token","invalid api key","api key required","api-key required"];function Ol6(Z){if(typeof Z==="object"&&Z!==null){let J=Z,Y=J.status??J.code;if(typeof Y==="number"&&Cw9.has(Y))return!0}let G=Z instanceof Error?Z.message:typeof Z==="string"?Z:"";if(!G)return!1;let W=G.toLowerCase();if(/\b401\b/.test(W))return!0;return Qw9.some((J)=>W.includes(J))}class si extends Error{constructor(Z){super(Z);this.name="PermanentDeliveryError"}}var eH1={pollIntervalMs:5000,batchSize:100,maxAttempts:20,retryDelayMs:1000,maxDelayMs:3600000};uG1();r31();Ql();function Iw9(Z){return Z.endsWith("_self")}function Sw9(Z){return Z.slice(0,-5)}function wl6(){return async(Z,G)=>{try{if(Iw9(Z)&&Uy1()){let K=Sw9(Z),H=await xO.create();if(await qK6(G,{organizationId:K,connectionId:Z,publish:async(U,O,w,q)=>{await H.eventBus.publish(K,Z,{type:U,subject:O,data:w,deliverAt:q?.deliverAt})},createMCPProxy:async(U)=>{let O={...H,getOrCreateClient:rj()},w=await Ud1(U,O);return{callTool:async(q,z,D)=>{let L=await w.callTool(q,z,D);return{content:L.content,structuredContent:L.structuredContent,isError:L.isError}},close:()=>w.close()}}}))return{success:!0}}let W=await xO.create(),J=await Ud1(Z,W),F=await af1.forClient(gn(J)).ON_EVENTS({events:G});return{success:F.success,error:F.error,retryAfter:F.retryAfter,results:F.results}}catch(W){let J=W instanceof Error?W.message:String(W);if(console.error(`[EventBus] Failed to notify connection ${Z}:`,J),Ol6(W))throw new si(J);return{success:!1,error:J}}}}function ql6(Z){return{specversion:"1.0",id:Z.id,source:Z.source,type:Z.type,time:Z.time,subject:Z.subject??void 0,datacontenttype:Z.datacontenttype,dataschema:Z.dataschema??void 0,data:Z.data??void 0}}function jw9(Z){let G=new Map;for(let J of Z){let Y=J.subscription.connectionId,F=G.get(Y);if(F){if(F.deliveryIds.push(J.delivery.id),!F.seenEventIds.has(J.event.id))F.seenEventIds.add(J.event.id),F.events.push(ql6(J.event))}else G.set(Y,{connectionId:J.subscription.connectionId,deliveryIds:[J.delivery.id],events:[ql6(J.event)],seenEventIds:new Set([J.event.id])})}let W=new Map;for(let[J,Y]of G)W.set(J,{connectionId:Y.connectionId,deliveryIds:Y.deliveryIds,events:Y.events});return W}class zr1{storage;notifySubscriber;running=!1;processing=!1;pendingNotify=!1;config;eventTriggerEngine;constructor(Z,G,W){this.storage=Z;this.notifySubscriber=W??wl6(),this.config={...eH1,...G}}setEventTriggerEngine(Z){this.eventTriggerEngine=Z}async start(){if(this.running)return;let Z=await this.storage.resetStuckDeliveries();if(Z>0)console.log(`[EventBus] Reset ${Z} stuck deliveries from previous shutdown`);let G=await this.storage.findOrphanedCronEvents();for(let W of G)await this.scheduleNextCronDelivery(W),console.log(`[EventBus] Recovered orphaned cron event ${W.id} (${W.type}, cron: ${W.cron})`);if(G.length>0)console.log(`[EventBus] Recovered ${G.length} orphaned cron event(s)`);this.running=!0}stop(){this.running=!1}isRunning(){return this.running}async processNow(){if(!this.running)return;if(this.processing){this.pendingNotify=!0;return}this.processing=!0;try{do this.pendingNotify=!1,await this.processEvents();while(this.pendingNotify)}catch(Z){console.error("[EventBus] Error processing events:",Z)}finally{this.processing=!1}}async processEvents(){let Z=await this.storage.claimPendingDeliveries(this.config.batchSize);if(Z.length===0)return;let G=jw9(Z),W=await Promise.allSettled(Array.from(G.entries()).map(async([F,K])=>{let H=new Set;try{let X=await this.notifySubscriber(K.connectionId,K.events);if(X.results&&Object.keys(X.results).length>0)await this.processPerEventResults(K,X);else if(X.success)await this.storage.markDeliveriesDelivered(K.deliveryIds);else if(X.retryAfter&&X.retryAfter>0)await this.storage.scheduleRetryWithoutAttemptIncrement(K.deliveryIds,X.retryAfter);else await this.storage.markDeliveriesFailed(K.deliveryIds,X.error||"Subscriber returned success=false",this.config.maxAttempts,this.config.retryDelayMs,this.config.maxDelayMs)}catch(X){if(X instanceof si){await this.storage.markDeliveriesPermanentlyFailed(K.deliveryIds,X.message);for(let U of K.events)H.add(U.id)}else{let U=X instanceof Error?X.message:String(X);console.error(`[EventBus] Failed to notify subscription ${F}:`,U),await this.storage.markDeliveriesFailed(K.deliveryIds,U,this.config.maxAttempts,this.config.retryDelayMs,this.config.maxDelayMs)}}let V=new Set;for(let X of Z)if(K.deliveryIds.includes(X.delivery.id))V.add(X.event.id);return{eventIds:V,permanentlyFailed:H}})),J=new Set,Y=new Set;for(let F of W)if(F.status==="fulfilled"){for(let K of F.value.eventIds)J.add(K);for(let K of F.value.permanentlyFailed)Y.add(K)}for(let F of J)try{await this.storage.updateEventStatus(F);let K=Z.find((H)=>H.event.id===F)?.event;if(K?.cron&&!Y.has(F))await this.scheduleNextCronDelivery(K)}catch(K){console.error(`[EventBus] Failed to update event status ${F}:`,K)}if(this.eventTriggerEngine){let F=new Set,K=[];for(let H of Z){if(H.delivery.attempts>0)continue;if(!F.has(H.event.id))F.add(H.event.id),K.push({source:H.event.source,type:H.event.type,data:H.event.data,organizationId:H.event.organizationId})}if(K.length>0)this.eventTriggerEngine.notifyEvents(K)}}async processPerEventResults(Z,G){let W=[],J=new Map,Y=[],F=new Map;for(let K=0;K<Z.events.length;K++){let H=Z.events?.[K];if(!H)continue;let V=Z.deliveryIds?.[K];if(!V)continue;F.set(H.id,V)}for(let K of Z.events){let H=F.get(K.id);if(!H)continue;let V=G.results?.[K.id];if(V)if(V.success)W.push(H);else if(V.retryAfter&&V.retryAfter>0){let X=J.get(V.retryAfter)||[];X.push(H),J.set(V.retryAfter,X)}else Y.push({deliveryId:H,error:V.error||"Event processing failed"});else if(G.success)W.push(H);else if(G.retryAfter&&G.retryAfter>0){let X=J.get(G.retryAfter)||[];X.push(H),J.set(G.retryAfter,X)}else Y.push({deliveryId:H,error:G.error||"Batch processing failed"})}if(W.length>0)await this.storage.markDeliveriesDelivered(W);for(let[K,H]of J)await this.storage.scheduleRetryWithoutAttemptIncrement(H,K);if(Y.length>0){let K=new Map;for(let{deliveryId:H,error:V}of Y){let X=K.get(V)||[];X.push(H),K.set(V,X)}for(let[H,V]of K)await this.storage.markDeliveriesFailed(V,H,this.config.maxAttempts,this.config.retryDelayMs,this.config.maxDelayMs)}}async scheduleNextCronDelivery(Z){if(!Z.cron)return;try{let W=new WA(Z.cron,{timezone:"UTC"}).nextRun();if(!W){console.log(`[EventBus] Cron expression for event ${Z.id} has no more runs`);return}let J=W.toISOString(),Y=await this.storage.getMatchingSubscriptions(Z);if(Y.length===0){console.log(`[EventBus] No subscriptions for cron event ${Z.id}, skipping next delivery`);return}await this.storage.createDeliveries(Z.id,Y.map((F)=>F.id),J),console.log(`[EventBus] Scheduled next cron delivery for event ${Z.id} at ${J}`)}catch(G){console.error(`[EventBus] Failed to schedule next cron delivery for event ${Z.id}:`,G)}}}class Dr1{storage;worker;notifyStrategy;running=!1;constructor(Z){this.storage=Z.storage,this.notifyStrategy=Z.notifyStrategy,this.worker=new zr1(this.storage,Z.config)}setEventTriggerEngine(Z){this.worker.setEventTriggerEngine(Z)}async publish(Z,G,W){if(W.deliverAt&&W.cron)throw Error("Cannot set both deliverAt and cron. Use one or the other.");let J;if(W.cron){try{let U=new WA(W.cron,{timezone:"UTC"}).nextRun();if(!U)throw Error("Cron expression does not produce a next run time");J=U.toISOString()}catch(X){throw Error(`Invalid cron expression: ${X instanceof Error?X.message:String(X)}`)}let V=await this.storage.findActiveCronEvent(Z,W.type,G,W.cron);if(V)return V}let Y=crypto.randomUUID(),F=new Date().toISOString(),K=await this.storage.publishEvent({id:Y,organizationId:Z,type:W.type,source:G,subject:W.subject,time:F,data:W.data,cron:W.cron});SU.emit(Z,Nl6(K));let H=await this.storage.getMatchingSubscriptions(K);if(H.length>0){let V=W.deliverAt??J;if(await this.storage.createDeliveries(Y,H.map((X)=>X.id),V),this.notifyStrategy&&!V)await this.notifyStrategy.notify(Y).catch((X)=>{console.warn("[EventBus] Notify failed (non-critical):",X)})}return K}async subscribe(Z,G){return this.storage.subscribe({id:crypto.randomUUID(),organizationId:Z,connectionId:G.connectionId,publisher:G.publisher,eventType:G.eventType,filter:G.filter})}async unsubscribe(Z,G){return this.storage.unsubscribe(G,Z)}async listSubscriptions(Z,G){return this.storage.listSubscriptions(Z,G)}async getSubscription(Z,G){return this.storage.getSubscription(G,Z)}async getEvent(Z,G){return this.storage.getEvent(G,Z)}async cancelEvent(Z,G,W){return this.storage.cancelEvent(G,Z,W)}async ackEvent(Z,G,W){return this.storage.ackDelivery(G,Z,W)}async syncSubscriptions(Z,G){return this.storage.syncSubscriptions({organizationId:Z,...G})}async start(){if(this.running)return;if(this.running=!0,await this.worker.start(),this.notifyStrategy)await this.notifyStrategy.start(()=>{this.worker.processNow().catch((Z)=>{console.error("[EventBus] Error processing after notify:",Z)})});await this.worker.processNow().catch((Z)=>{console.error("[EventBus] Error processing pending events on startup:",Z)})}async stop(){if(!this.running)return;if(this.running=!1,this.worker.stop(),this.notifyStrategy)try{await this.notifyStrategy.stop()}catch(Z){console.error("[EventBus] Error stopping notify strategy:",Z)}}isRunning(){return this.running}}class Br1{options;sub=null;onNotify=null;encoder=new TextEncoder;constructor(Z){this.options=Z}async start(Z){if(this.sub)return;this.onNotify=Z,this.sub=this.options.getConnection().subscribe("mesh.events.notify"),(async()=>{for await(let G of this.sub)this.onNotify?.()})().catch((G)=>{console.error("[NatsNotify] Subscription error:",G)})}async stop(){this.sub?.unsubscribe(),this.sub=null,this.onNotify=null}async notify(Z){try{this.options.getConnection().publish("mesh.events.notify",this.encoder.encode(Z))}catch(G){console.warn("[NatsNotify] Publish failed (non-critical):",G)}}}class Lr1{options;sub=null;localEmit=null;originId=crypto.randomUUID();encoder=new TextEncoder;constructor(Z){this.options=Z}async start(Z){if(this.localEmit=Z,this.sub)return;this.sub=this.options.getConnection().subscribe("mesh.sse.broadcast");let G=new TextDecoder;(async()=>{for await(let W of this.sub)try{let J=JSON.parse(G.decode(W.data));if(typeof J?.originId!=="string"||typeof J?.organizationId!=="string"||typeof J?.event?.id!=="string"||typeof J?.event?.type!=="string")continue;if(J.originId===this.originId)continue;this.localEmit?.(J.organizationId,J.event)}catch{}})().catch((W)=>{console.error("[NatsSSEBroadcast] Subscription error:",W)})}broadcast(Z,G){this.localEmit?.(Z,G);let W={originId:this.originId,organizationId:Z,event:G};try{this.options.getConnection().publish("mesh.sse.broadcast",this.encoder.encode(JSON.stringify(W)))}catch(J){console.warn("[NatsSSEBroadcast] Publish failed (non-critical):",J)}}async stop(){this.sub?.unsubscribe(),this.sub=null,this.localEmit=null}}function zl6(...Z){return{async start(G){await Promise.all(Z.map((W)=>W.start(G)))},async stop(){await Promise.all(Z.map((G)=>G.stop().catch((W)=>{console.error("[NotifyStrategy] Error stopping strategy:",W)})))},async notify(G){await Promise.all(Z.map((W)=>W.notify(G).catch((J)=>{console.warn("[NotifyStrategy] Notify failed (non-critical):",J)})))}}}class Ar1{intervalMs;timer=null;onNotify=null;constructor(Z){this.intervalMs=Z}async start(Z){if(this.timer)return;this.onNotify=Z,this.scheduleNext()}async stop(){if(this.timer)clearTimeout(this.timer),this.timer=null;this.onNotify=null}async notify(Z){if(this.onNotify)this.onNotify()}scheduleNext(){this.timer=setTimeout(()=>{if(this.onNotify)this.onNotify();if(this.timer)this.scheduleNext()},this.intervalMs)}}function Dl6(Z,G,W){let J=Xl6(Z.db),Y=W?.pollIntervalMs??eH1.pollIntervalMs,F=zl6(new Ar1(Y),new Br1({getConnection:()=>G.getConnection()})),K=new Lr1({getConnection:()=>G.getConnection()});return SU.start(K).catch((H)=>{console.error("[SSEHub] Failed to start broadcast strategy:",H)}),new Dr1({storage:J,config:W,notifyStrategy:F})}qD();sY();AB();var fw9={br:".br",zstd:".zst",gzip:".gz"},cS7=Object.keys(fw9);MB();jT1();var Mr1="x-hono-disable-ssg",Xj7=(()=>{try{return new Response("SSG is disabled",{status:404,headers:{[Mr1]:"true"}})}catch{return null}})();L41();var{write:cj7}=Bun;var vw9=class{#Z;constructor(Z){this.#Z=Z,this.raw=Z.raw,this.url=Z.url?new URL(Z.url):null,this.protocol=Z.protocol??null}send(Z,G){this.#Z.send(Z,G??{})}raw;binaryType="arraybuffer";get readyState(){return this.#Z.readyState}url;protocol;close(Z,G){this.#Z.close(Z,G)}};var Bl6=(Z)=>{return(...G)=>{if(typeof G[0]==="function"){let[W,J]=G;return async function(F,K){let H=await W(F),V=await Z(F,H,J);if(V)return V;await K()}}else{let[W,J,Y]=G;return(async()=>{let F=await Z(W,J,Y);if(!F)throw Error("Failed to upgrade WebSocket");return F})()}}};var ti=(Z)=>("server"in Z.env)?Z.env.server:Z.env;var yw9=Bl6((Z,G)=>{let W=ti(Z);if(!W)throw TypeError("env has to include the 2nd argument of fetch.");if(W.upgrade(Z.req.raw,{data:{events:G,url:new URL(Z.req.url),protocol:Z.req.url}}))return new Response(null);return});var Er1=(Z)=>{let G=ti(Z);if(!G)throw TypeError("env has to include the 2nd argument of fetch.");if(typeof G.requestIP!=="function")throw TypeError("server.requestIP is not a function.");let W=G.requestIP(Z.req.raw);if(!W)return{remote:{}};return{remote:{address:W.address,addressType:W.family==="IPv6"||W.family==="IPv4"?W.family:void 0,port:W.port}}};v7();PT();var Ll6={google:{name:"Google",icon:"https://assets.decocache.com/webdraw/eb7480aa-a68b-4ce4-98ff-36aa121762a7/google.svg"},github:{name:"GitHub",icon:"https://assets.decocache.com/decocms/e02ce92e-6684-41a6-acfc-432977eb4878/github.png"},microsoft:{name:"Microsoft",icon:"https://assets.decocache.com/mcp/aa6f6e1a-6526-4bca-99cc-82e2ec38b0e4/microsoft.png"}};Jv();var Pr1=new Y7;Pr1.get("/config",async(Z)=>{try{let G=Object.keys(E8.socialProviders??{}),W=G.length>0,J=G.map((K)=>({name:K,icon:Ll6[K].icon})),Y=o0.NODE_ENV!=="production"||o0.UNSAFE_ALLOW_STDIO_TRANSPORT,F={emailAndPassword:{enabled:E8.emailAndPassword?.enabled??!1},magicLink:{enabled:E8.magicLinkConfig?.enabled??!1},emailOtp:{enabled:E8.emailOtpConfig?.enabled??!1},resetPassword:{enabled:vJ1},socialProviders:{enabled:W,providers:J},sso:E8.ssoConfig?{enabled:!0,providerId:E8.ssoConfig.providerId}:{enabled:!1},stdioEnabled:Y,localMode:o2()};return Z.json({success:!0,config:F})}catch(G){let W=G instanceof Error?G.message:"Failed to load auth config";return Z.json({success:!1,error:W},500)}});Pr1.post("/local-session",async(Z)=>{if(!o2())return Z.json({success:!1,error:"Local mode is not active"},403);let G;try{G=Er1(Z).remote.address}catch{}if(!(G==="127.0.0.1"||G==="::1"||G==="::ffff:127.0.0.1"))return Z.json({success:!1,error:"Forbidden"},403);try{let{waitForSeed:J}=await Promise.resolve().then(() => (Jv(),WV1));await J();let{auth:Y}=await Promise.resolve().then(() => (PT(),gA6)),F=await $r1();if(!F)return Z.json({success:!1,error:"Local admin user not found"},500);let K=await GV1();return await Y.api.signInEmail({body:{email:F.email,password:K},asResponse:!0})}catch(J){return console.error("Failed to create local session:",J),Z.json({success:!1,error:J instanceof Error?J.message:"Failed to create local session"},500)}});var El6=Pr1;VW();sY();tC();VW();function $l6(Z){let G=Z.filter((J)=>J.role==="system"),W=Z.find((J)=>J.role!=="system");return{systemMessages:G,requestMessage:W}}function aw9(Z){let G=!1,W=Z.map((J)=>{if(J.role!=="assistant")return J;if(!J.parts.some((F)=>("state"in F)&&F.state==="approval-requested"))return J;return G=!0,{...J,parts:J.parts.map((F)=>{if(!("state"in F)||F.state!=="approval-requested"||!("approval"in F)||!F.approval)return F;return{...F,state:"output-denied",approval:{...F.approval,approved:!1,reason:"User sent a new message without approving this tool call."}}})}});return G?W:Z}function rw9(Z){let[G,W]=Z.reduce((J,Y)=>{if(Y.role==="system")J[0].push(Y);else J[1].push(Y);return J},[[],[]]);return{systemMessages:G,messages:W}}async function ow9(Z,G){return await Z.loadHistory(G)}function sw9(Z,G){let W=Z.filter((F)=>F.parts&&F.parts.length>0),J=W.findIndex((F)=>F.id===G.id);return J>=0?[...W.slice(0,J),G]:[...W,G]}async function Pl6(Z,G,W,J){let Y=await ow9(Z,J),F=sw9(Y,G);return[...W,...F]}async function Tl6(Z,G){let W=await TZ6({messages:Z}),J=aw9(W),Y=await PZ6(J,{tools:G.tools,ignoreIncompleteToolCalls:!0}),{systemMessages:F,messages:K}=rw9(Y),V=CZ6({messages:K,reasoning:"all",emptyMessages:"remove",toolCalls:"none"}).map((X)=>{if(X.role!=="assistant")return X;let U=Array.isArray(X.content)?X.content.filter((O)=>O.type!=="reasoning"&&O.type!=="thinking"&&O.type!=="redacted-reasoning").map((O)=>{let w=O;if("providerOptions"in w||"providerMetadata"in w){let{providerOptions:q,providerMetadata:z,...D}=w;return D}return O}):X.content;return{...X,content:Array.isArray(U)&&U.length===0?[{type:"text",text:""}]:U,providerOptions:void 0,providerMetadata:void 0}});return{systemMessages:F,messages:V,originalMessages:W}}lZ();VW();tC();VW();Z0();function Rl6(Z){let{toolOutputMap:G}=Z;return w7({description:"Filter a tool output that was too large to display inline. Returns all lines matching the given regular expression pattern (grep-like). You may call this tool multiple times with different patterns to extract different pieces of information.",inputExamples:[{input:{tool_call_id:"id_1",pattern:"error|warning"}},{input:{tool_call_id:"id_2",pattern:'"status":\\s*"failed"'}}],inputSchema:$0(N.object({tool_call_id:N.string(),pattern:N.string().min(1).describe("Regular expression pattern to filter tool output lines. Returns all matching lines.")})),execute:async({tool_call_id:W,pattern:J})=>{if(!G.has(W))return{result:`Tool output not found for tool call id: ${W}. Available ids: ${[...G.keys()].join(", ")||"(none)"}`,matchCount:0,totalLines:0};let Y=G.get(W),F;try{F=new RegExp(J)}catch{return{result:`Invalid regex pattern: ${J}`,matchCount:0,totalLines:0}}let K=Y.split(`
|
|
2679
2679
|
`),H=K.filter((U)=>F.test(U)),V=H.join(`
|
|
2680
2680
|
`),X=ez(V);if(X>sz){let U=tz(V);return{result:`Output is still too long (${X} tokens), use a more specific pattern to reduce output.
|
|
2681
2681
|
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{B as o}from"./collections-Md0axhBZ.js";import{aR as t}from"./index-Y_g6-sbQ.js";const m=t(o,{target:"draft-7"});export{m as B};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{d as r,j as i}from"./index-Y_g6-sbQ.js";import{P as m}from"./project-plugins-CIRGXDFY.js";import"./useQuery-DKMHT49Q.js";import"./useMutation-09-2Qwl6.js";import"./constants-Cf6w8uWj.js";import"./switch-BHSO5vl3.js";import"./label-BagqgWUv.js";import"./Container-D8gJR-V9.js";import"./use-connection-CP_xYk4Q.js";import"./use-collections-D0k_QRc1.js";import"./registry-utils-DDsRF62n.js";import"./workflow-BXPIrAUA.js";import"./collections-Md0axhBZ.js";import"./use-install-from-registry-DZlZY82P.js";import"./extract-connection-data-BdJfym5q.js";import"./constants-B4UGdbkn.js";import"./generate-id-Dyweu44Y.js";import"./Loading01-DTPGNGDe.js";import"./Plus-VNSvGQN9.js";import"./select-9VPJVrM5.js";import"./index-BdQq_4o_.js";import"./index-CT7BYuwf.js";import"./Check-DsqqbwRv.js";import"./ChevronDown-DMIUCeXF.js";import"./ChevronUp-BPTkFtVQ.js";function w(){const o=r.c(1);let t;return o[0]===Symbol.for("react.memo_cache_sentinel")?(t=i.jsx(m,{}),o[0]=t):t=o[0],t}export{w as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{d as w,g as ne,j as s,y as V,r as I,w as oe,o as he,q as W,f as ie,c as re,x as ge,v as je,t as be,K as ae,B as Q,O as D,P as fe,S as le,k as ye,aU as ve}from"./index-Y_g6-sbQ.js";import{u as ue}from"./use-project-3rL77wj_.js";import{c as Se,D as Ne,a as _e}from"./dialog-B_ZBKGcK.js";import{i as ke}from"./ArrowLeft-1uQ4hoAA.js";import{i as ce}from"./X-AnvD8fGN.js";import{S as G}from"./skeleton-DPPFiXsR.js";import{u as Ce,a as we,O as Pe}from"./org-ai-providers-Udjn3QRR.js";import{A as pe}from"./avatar-BDzYYIB_.js";import{M as ze,N as $e,t as Ae,O as Ie,P as Oe}from"./integration-icon-7Bz6GmNv.js";import{t as Me}from"./Settings01-BKawEeOc.js";import{i as Fe}from"./Zap-Cbf8Gxw3.js";import{a as Le,b as Ee,c as Te,T as De}from"./tooltip-Cem552VW.js";import{i as Ue}from"./Check-DsqqbwRv.js";import{c as qe}from"./Play-BSN624z4.js";import{S as Y}from"./switch-BHSO5vl3.js";import{S as Re,a as Be,d as H,c as Ge}from"./select-9VPJVrM5.js";import{i as Ke}from"./Type01-D1knZTdC.js";import{a as Ve}from"./RefreshCcw01-Dbe0-ztA.js";import"./index-BclDkWx8.js";import{u as Qe}from"./useMutation-09-2Qwl6.js";import{a as Je,F as X,b as Z,c as ee,d as te,f as se,e as We}from"./form-BAfFoDTS.js";import{I as me}from"./input-BJjZBSH8.js";import{L as Ye}from"./logo-upload-BlhGNrgV.js";import{P as He}from"./project-plugins-CIRGXDFY.js";import Xe from"./members-2b6Jtq6P.js";import"./useQuery-DKMHT49Q.js";import"./constants-Cf6w8uWj.js";import"./index-BlVIyhiN.js";import"./AlertCircle-DoDnREQU.js";import"./XCircle-Of71XlDY.js";import"./Trash01-p_-P7rrZ.js";import"./card-DiqqquYR.js";import"./toggle-group-iephCdnh.js";import"./popover-lD-HtMf4.js";import"./ai-providers-logos-Du8KzWpH.js";import"./formatDistanceToNow-Cb2QZZJn.js";import"./differenceInSeconds-NQ4PDo0z.js";import"./User01-C1Py8RLi.js";import"./Container-D8gJR-V9.js";import"./ArrowUp-CiCCsmLU.js";import"./ChevronDown-DMIUCeXF.js";import"./ChevronRight-BvErZvXV.js";import"./ChevronUp-BPTkFtVQ.js";import"./Dataflow03-D9B0IMv1.js";import"./FolderClosed-DtTyOuV-.js";import"./Loading01-DTPGNGDe.js";import"./Plus-VNSvGQN9.js";import"./SearchMd-BVguqJPF.js";import"./Upload01-D-cgBdXK.js";import"./XClose-CIHCEBuc.js";import"./index-CT7BYuwf.js";import"./index-BdQq_4o_.js";import"./label-BagqgWUv.js";import"./use-connection-CP_xYk4Q.js";import"./use-collections-D0k_QRc1.js";import"./registry-utils-DDsRF62n.js";import"./workflow-BXPIrAUA.js";import"./collections-Md0axhBZ.js";import"./use-install-from-registry-DZlZY82P.js";import"./extract-connection-data-BdJfym5q.js";import"./constants-B4UGdbkn.js";import"./generate-id-Dyweu44Y.js";import"./collection-display-button-6w4fqzbK.js";import"./dropdown-menu-BGBf4SQr.js";import"./badge-CintUB2m.js";import"./collection-search-R3szwhKc.js";import"./breadcrumb-CCT_gYCX.js";import"./collection-table-wrapper-BYkH4l2b.js";import"./table-CvtSPXA4.js";import"./checkbox-B5yMaD1U.js";import"./use-members-dsS5L-Vf.js";import"./alert-dialog-BIZOEctM.js";import"./empty-state-5hCgVmoA.js";import"./textarea-Dtfhz_OA.js";import"./command-oqXofzFf.js";import"./index-DzY5efun.js";function Ze(e){const t=w.c(26),{activeSection:n,onNavigate:o}=e,{data:a}=ne.useSession(),r=a?.user,l=r?.image,c=r?.name??"Profile",m=r?.name??"U";let f;t[0]!==m||t[1]!==l?(f=s.jsx(pe,{url:l,fallback:m,shape:"circle",size:"2xs",className:"size-4 shrink-0"}),t[0]=m,t[1]=l,t[2]=f):f=t[2];let i;t[3]!==c||t[4]!==f?(i={key:"account.profile",label:c,icon:f},t[3]=c,t[4]=f,t[5]=i):i=t[5];let p;t[6]===Symbol.for("react.memo_cache_sentinel")?(p={key:"account.preferences",label:"Preferences",icon:s.jsx(Me,{size:14})},t[6]=p):p=t[6];let x;t[7]!==i?(x=[i,p],t[7]=i,t[8]=x):x=t[8];const g=x;let u;t[9]===Symbol.for("react.memo_cache_sentinel")?(u={key:"org.general",label:"General",icon:s.jsx(ze,{size:14})},t[9]=u):u=t[9];let d;t[10]===Symbol.for("react.memo_cache_sentinel")?(d={key:"org.plugins",label:"Features",icon:s.jsx(Fe,{size:14})},t[10]=d):d=t[10];let j;t[11]===Symbol.for("react.memo_cache_sentinel")?(j={key:"org.ai-providers",label:"AI Providers",icon:s.jsx($e,{size:14})},t[11]=j):j=t[11];let h;t[12]===Symbol.for("react.memo_cache_sentinel")?(h=[u,d,j,{key:"org.members",label:"Members",icon:s.jsx(Ae,{size:14})}],t[12]=h):h=t[12];const _=h;let b;t[13]===Symbol.for("react.memo_cache_sentinel")?(b=s.jsx("p",{className:"px-2 py-1.5 text-xs font-semibold text-muted-foreground/60",children:"Account"}),t[13]=b):b=t[13];let y;t[14]!==g||t[15]!==n||t[16]!==o?(y=s.jsxs("div",{className:"flex flex-col gap-0.5 px-2",children:[b,g.map(v=>s.jsxs("button",{type:"button",onClick:()=>o(v.key),className:V("flex items-center gap-2.5 px-2 py-1.5 rounded-md text-sm text-left w-full transition-colors",n===v.key?"bg-accent text-accent-foreground font-medium":"text-muted-foreground hover:bg-accent/50 hover:text-foreground"),children:[s.jsx("span",{className:"shrink-0",children:v.icon}),s.jsx("span",{className:"truncate",children:v.label})]},v.key))]}),t[14]=g,t[15]=n,t[16]=o,t[17]=y):y=t[17];let N;t[18]===Symbol.for("react.memo_cache_sentinel")?(N=s.jsx("p",{className:"px-2 py-1.5 text-xs font-semibold text-muted-foreground/60",children:"Organization"}),t[18]=N):N=t[18];let S;t[19]!==n||t[20]!==o?(S=s.jsxs("div",{className:"flex flex-col gap-0.5 px-2",children:[N,_.map(v=>s.jsxs("button",{type:"button",onClick:()=>o(v.key),className:V("flex items-center gap-2.5 px-2 py-1.5 rounded-md text-sm text-left w-full transition-colors",n===v.key?"bg-accent text-accent-foreground font-medium":"text-muted-foreground hover:bg-accent/50 hover:text-foreground"),children:[s.jsx("span",{className:"shrink-0",children:v.icon}),s.jsx("span",{className:"truncate",children:v.label})]},v.key))]}),t[19]=n,t[20]=o,t[21]=S):S=t[21];let C;t[22]===Symbol.for("react.memo_cache_sentinel")?(C=s.jsx("div",{className:"mt-auto px-4 pb-1",children:s.jsxs("span",{className:"text-xs text-muted-foreground/50",children:["v","2.186.9"]})}),t[22]=C):C=t[22];let k;return t[23]!==y||t[24]!==S?(k=s.jsxs("div",{className:"w-full sm:w-52 shrink-0 sm:border-r border-border bg-sidebar/50 overflow-y-auto py-3 flex flex-col gap-4 flex-1",children:[y,S,C]}),t[23]=y,t[24]=S,t[25]=k):k=t[25],k}function et(){const e=w.c(32),{data:t}=ne.useSession(),[n,o]=I.useState(!1),a=t?.user,r=a?.image;let l;e[0]!==a?(l=()=>{a?.id&&navigator.clipboard.writeText(a.id).then(()=>{o(!0),setTimeout(()=>o(!1),2e3)})},e[0]=a,e[1]=l):l=e[1];const c=l;let m;e[2]===Symbol.for("react.memo_cache_sentinel")?(m=s.jsx("div",{children:s.jsx("h2",{className:"text-base font-semibold text-foreground",children:"Profile"})}),e[2]=m):m=e[2];const f=a?.name??"U";let i;e[3]!==f||e[4]!==r?(i=s.jsx(pe,{url:r,fallback:f,shape:"circle",size:"xl",className:"size-16 shrink-0"}),e[3]=f,e[4]=r,e[5]=i):i=e[5];const p=a?.name??"User";let x;e[6]!==p?(x=s.jsx("span",{className:"text-sm font-semibold text-foreground truncate",children:p}),e[6]=p,e[7]=x):x=e[7];const g=a?.email;let u;e[8]!==g?(u=s.jsx("span",{className:"text-sm text-muted-foreground truncate",children:g}),e[8]=g,e[9]=u):u=e[9];let d;e[10]!==x||e[11]!==u?(d=s.jsxs("div",{className:"flex flex-col gap-1 min-w-0",children:[x,u]}),e[10]=x,e[11]=u,e[12]=d):d=e[12];let j;e[13]!==i||e[14]!==d?(j=s.jsxs("div",{className:"flex items-center gap-4",children:[i,d]}),e[13]=i,e[14]=d,e[15]=j):j=e[15];let h;e[16]===Symbol.for("react.memo_cache_sentinel")?(h=s.jsx("p",{className:"py-4 text-base font-semibold text-foreground border-b border-border",children:"User ID"}),e[16]=h):h=e[16];let _;e[17]===Symbol.for("react.memo_cache_sentinel")?(_=s.jsx("p",{className:"text-sm text-muted-foreground",children:"User ID"}),e[17]=_):_=e[17];const b=a?.id;let y;e[18]!==b?(y=s.jsx("span",{className:"font-mono text-sm",children:b}),e[18]=b,e[19]=y):y=e[19];let N;e[20]!==n?(N=n?s.jsx(Ue,{size:14,className:"text-green-600 shrink-0"}):s.jsx(qe,{size:14,className:"shrink-0 opacity-70 group-hover:opacity-100 transition-opacity"}),e[20]=n,e[21]=N):N=e[21];let S;e[22]!==c||e[23]!==y||e[24]!==N?(S=s.jsx(Le,{asChild:!0,children:s.jsxs("button",{type:"button",onClick:c,className:"group flex items-center gap-2 text-muted-foreground hover:text-foreground transition-colors",children:[y,N]})}),e[22]=c,e[23]=y,e[24]=N,e[25]=S):S=e[25];let C;e[26]===Symbol.for("react.memo_cache_sentinel")?(C=s.jsx(Ee,{side:"left",children:s.jsx("p",{className:"text-xs",children:"Copy user ID"})}),e[26]=C):C=e[26];let k;e[27]!==S?(k=s.jsxs("div",{className:"flex flex-col",children:[h,s.jsxs("div",{className:"flex items-center justify-between gap-6 py-4",children:[_,s.jsx(Te,{children:s.jsxs(De,{children:[S,C]})})]})]}),e[27]=S,e[28]=k):k=e[28];let v;return e[29]!==k||e[30]!==j?(v=s.jsxs("div",{className:"flex flex-col gap-8",children:[m,j,k]}),e[29]=k,e[30]=j,e[31]=v):v=e[31],v}function K(e){const t=w.c(27),{icon:n,label:o,description:a,control:r,onClick:l,disabled:c}=e,m=c?void 0:l,f=l?"button":void 0,i=l&&!c?0:void 0;let p;t[0]!==c||t[1]!==l?(p=l&&!c?N=>{(N.key==="Enter"||N.key===" ")&&(N.preventDefault(),l())}:void 0,t[0]=c,t[1]=l,t[2]=p):p=t[2];const x=l&&!c?"pointer":void 0;let g;t[3]!==x?(g={cursor:x},t[3]=x,t[4]=g):g=t[4];let u;t[5]!==n?(u=s.jsx("span",{className:"text-muted-foreground mt-0.5 shrink-0",children:n}),t[5]=n,t[6]=u):u=t[6];let d;t[7]!==o?(d=s.jsx("p",{className:"text-sm font-medium text-foreground",children:o}),t[7]=o,t[8]=d):d=t[8];let j;t[9]!==a?(j=s.jsx("p",{className:"text-xs text-muted-foreground mt-0.5 leading-relaxed",children:a}),t[9]=a,t[10]=j):j=t[10];let h;t[11]!==d||t[12]!==j?(h=s.jsxs("div",{className:"min-w-0",children:[d,j]}),t[11]=d,t[12]=j,t[13]=h):h=t[13];let _;t[14]!==h||t[15]!==u?(_=s.jsxs("div",{className:"flex items-start gap-3 min-w-0 flex-1",children:[u,h]}),t[14]=h,t[15]=u,t[16]=_):_=t[16];let b;t[17]!==r?(b=s.jsx("div",{onClick:tt,className:"shrink-0",children:r}),t[17]=r,t[18]=b):b=t[18];let y;return t[19]!==m||t[20]!==_||t[21]!==b||t[22]!==f||t[23]!==i||t[24]!==p||t[25]!==g?(y=s.jsxs("div",{className:"flex items-center justify-between gap-6 py-4 border-b border-border last:border-0",onClick:m,role:f,tabIndex:i,onKeyDown:p,style:g,children:[_,b]}),t[19]=m,t[20]=_,t[21]=b,t[22]=f,t[23]=i,t[24]=p,t[25]=g,t[26]=y):y=t[26],y}function tt(e){return e.stopPropagation()}function de(){const e=w.c(47),[t,n]=Ce();let o;e[0]!==n?(o=async P=>{if(P&&await Notification.requestPermission()!=="granted"){oe.error("Notifications denied. Please enable them in your browser settings."),n(lt);return}n(z=>({...z,enableNotifications:P}))},e[0]=n,e[1]=o):o=e[1];const a=o;let r;e[2]===Symbol.for("react.memo_cache_sentinel")?(r=s.jsx("div",{children:s.jsx("h2",{className:"text-base font-semibold text-foreground",children:"Preferences"})}),e[2]=r):r=e[2];let l;e[3]===Symbol.for("react.memo_cache_sentinel")?(l=s.jsx(Ke,{size:16}),e[3]=l):l=e[3];let c;e[4]!==n?(c=()=>n(ot),e[4]=n,e[5]=c):c=e[5];let m;e[6]!==n?(m=P=>n(z=>({...z,devMode:P})),e[6]=n,e[7]=m):m=e[7];let f;e[8]!==t.devMode||e[9]!==m?(f=s.jsx(Y,{checked:t.devMode,onCheckedChange:m}),e[8]=t.devMode,e[9]=m,e[10]=f):f=e[10];let i;e[11]!==c||e[12]!==f?(i=s.jsx(K,{icon:l,label:"Developer Mode",description:"Show technical details like JSON input/output for tool calls.",onClick:c,control:f}),e[11]=c,e[12]=f,e[13]=i):i=e[13];let p;e[14]===Symbol.for("react.memo_cache_sentinel")?(p=s.jsx(Ie,{size:16}),e[14]=p):p=e[14];let x;e[15]!==a||e[16]!==t.enableNotifications?(x=s.jsx(K,{icon:p,label:"Notifications",description:"Play a sound and show a notification when chat messages complete while the app is unfocused.",disabled:typeof Notification>"u",onClick:()=>a(!t.enableNotifications),control:s.jsx(Y,{disabled:typeof Notification>"u",checked:t.enableNotifications,onCheckedChange:a})}),e[15]=a,e[16]=t.enableNotifications,e[17]=x):x=e[17];let g;e[18]===Symbol.for("react.memo_cache_sentinel")?(g=s.jsx(Ve,{size:16}),e[18]=g):g=e[18];let u;e[19]!==n?(u=()=>n(st),e[19]=n,e[20]=u):u=e[20];let d;e[21]!==n?(d=P=>n(z=>({...z,experimentalAutomations:P})),e[21]=n,e[22]=d):d=e[22];let j;e[23]!==t.experimentalAutomations||e[24]!==d?(j=s.jsx(Y,{checked:t.experimentalAutomations,onCheckedChange:d}),e[23]=t.experimentalAutomations,e[24]=d,e[25]=j):j=e[25];let h;e[26]!==u||e[27]!==j?(h=s.jsx(K,{icon:g,label:"Experimental: Automations",description:"Enable the Automations feature in the sidebar. This is an experimental feature under active development.",onClick:u,control:j}),e[26]=u,e[27]=j,e[28]=h):h=e[28];let _;e[29]===Symbol.for("react.memo_cache_sentinel")?(_=s.jsx(Oe,{size:16}),e[29]=_):_=e[29];let b;e[30]!==n?(b=P=>n(z=>({...z,toolApprovalLevel:P})),e[30]=n,e[31]=b):b=e[31];let y;e[32]===Symbol.for("react.memo_cache_sentinel")?(y={readonly:"Skip read-only",auto:"Auto-approve all",plan:"Plan mode"},e[32]=y):y=e[32];const N=y[t.toolApprovalLevel];let S;e[33]!==N?(S=s.jsx(Be,{className:"w-36",children:s.jsx("span",{children:N})}),e[33]=N,e[34]=S):S=e[34];let C;e[35]===Symbol.for("react.memo_cache_sentinel")?(C=s.jsx(H,{value:"readonly",textValue:"Skip read-only",children:s.jsxs("div",{className:"flex flex-col gap-0.5",children:[s.jsx("span",{className:"font-medium",children:"Skip read-only"}),s.jsx("span",{className:"text-xs text-muted-foreground",children:"Auto-approve read-only tools, ask for others"})]})}),e[35]=C):C=e[35];let k;e[36]===Symbol.for("react.memo_cache_sentinel")?(k=s.jsx(H,{value:"auto",textValue:"Auto-approve all",children:s.jsxs("div",{className:"flex flex-col gap-0.5",children:[s.jsx("span",{className:"font-medium",children:"Auto-approve all"}),s.jsx("span",{className:"text-xs text-muted-foreground",children:"Execute all tools without approval"})]})}),e[36]=k):k=e[36];let v;e[37]===Symbol.for("react.memo_cache_sentinel")?(v=s.jsxs(Ge,{children:[C,k,s.jsx(H,{value:"plan",textValue:"Plan mode",children:s.jsxs("div",{className:"flex flex-col gap-0.5",children:[s.jsx("span",{className:"font-medium",children:"Plan mode"}),s.jsx("span",{className:"text-xs text-muted-foreground",children:"Read-only exploration, then propose a plan"})]})})]}),e[37]=v):v=e[37];let A;e[38]!==t.toolApprovalLevel||e[39]!==b||e[40]!==S?(A=s.jsx(K,{icon:_,label:"Tool Approval",description:"Choose when to require approval before tools execute.",control:s.jsxs(Re,{value:t.toolApprovalLevel,onValueChange:b,children:[S,v]})}),e[38]=t.toolApprovalLevel,e[39]=b,e[40]=S,e[41]=A):A=e[41];let $;return e[42]!==h||e[43]!==A||e[44]!==i||e[45]!==x?($=s.jsxs("div",{className:"flex flex-col gap-6",children:[r,s.jsxs("div",{className:"flex flex-col",children:[i,x,h,A]})]}),e[42]=h,e[43]=A,e[44]=i,e[45]=x,e[46]=$):$=e[46],$}function st(e){return{...e,experimentalAutomations:!e.experimentalAutomations}}function ot(e){return{...e,devMode:!e.devMode}}function lt(e){return{...e,enableNotifications:!1}}const nt=he({name:W().min(1,"Name is required").max(255,"Name is too long"),slug:W().min(1,"Slug is required").max(50,"Slug is too long").regex(/^[a-z0-9-]+$/,"Slug must contain only lowercase letters, numbers, and hyphens"),logo:W().optional()});function it(){const e=ie(),{org:t,project:n}=re(),o=ge(),[a,r]=I.useState(!1),l=je({resolver:be(nt),values:{name:t.name??"",slug:t.slug??"",logo:t.logo??""}}),c=Qe({mutationFn:async i=>{const p={name:i.name,slug:i.slug};i.logo&&(p.logo=i.logo);const x=await ne.organization.update({organizationId:t.id,data:p});if(x?.error)throw new Error(x.error.message||"Failed to update organization");return x},onSuccess:i=>{o.invalidateQueries({queryKey:ae.organizations()}),o.invalidateQueries({queryKey:ae.activeOrganization(t.slug)}),oe.success("Organization settings updated successfully"),i?.data?.slug&&i.data.slug!==t.slug&&e({to:"/$org/$project/settings",params:{org:i.data.slug,project:n.slug}})},onError:i=>{oe.error(i instanceof Error?i.message:"Failed to update organization")},onSettled:()=>{r(!1)}}),m=i=>{r(!0),c.mutate(i)},f=l.formState.isDirty;return s.jsx(Je,{...l,children:s.jsxs("form",{onSubmit:l.handleSubmit(m),className:"space-y-6",children:[s.jsx(X,{control:l.control,name:"name",render:({field:i})=>s.jsxs(Z,{children:[s.jsx(ee,{children:"Organization Name"}),s.jsx(te,{children:s.jsx(me,{placeholder:"My Organization",...i,disabled:a})}),s.jsx(se,{})]})}),s.jsx(X,{control:l.control,name:"slug",render:({field:i})=>s.jsxs(Z,{children:[s.jsx(ee,{children:"Organization Slug"}),s.jsx(te,{children:s.jsx(me,{placeholder:"my-organization",...i,disabled:a,onChange:p=>{const x=p.target.value.toLowerCase().replace(/[^a-z0-9-]/g,"");i.onChange(x)}})}),s.jsx(We,{children:"Used in URLs. Only lowercase letters, numbers, and hyphens are allowed."}),s.jsx(se,{})]})}),s.jsx(X,{control:l.control,name:"logo",render:({field:i})=>s.jsxs(Z,{children:[s.jsx(ee,{children:"Logo"}),s.jsx(te,{children:s.jsx(Ye,{value:i.value,onChange:i.onChange,name:l.watch("name"),disabled:a})}),s.jsx(se,{})]})}),s.jsxs("div",{className:"flex items-center gap-3 pt-4",children:[s.jsx(Q,{type:"submit",disabled:!f||a,className:"min-w-24",children:a?"Saving...":"Save Changes"}),f&&s.jsx(Q,{type:"button",variant:"outline",onClick:()=>l.reset(),disabled:a,children:"Cancel"})]})]})})}function rt(){const e=w.c(1);let t;return e[0]===Symbol.for("react.memo_cache_sentinel")?(t=s.jsxs("div",{className:"flex flex-col gap-6",children:[s.jsx("div",{children:s.jsx("h2",{className:"text-base font-semibold text-foreground",children:"Organization"})}),s.jsx(it,{})]}),e[0]=t):t=e[0],t}function at(){const e=w.c(1);let t;return e[0]===Symbol.for("react.memo_cache_sentinel")?(t=s.jsx(Xe,{}),e[0]=t):t=e[0],t}function xe(){const e=w.c(3);let t,n;e[0]===Symbol.for("react.memo_cache_sentinel")?(t=s.jsx(G,{className:"h-6 w-48"}),n=s.jsx(G,{className:"h-4 w-80"}),e[0]=t,e[1]=n):(t=e[0],n=e[1]);let o;return e[2]===Symbol.for("react.memo_cache_sentinel")?(o=s.jsxs("div",{className:"flex flex-col gap-4 pt-2",children:[t,n,s.jsxs("div",{className:"mt-4 flex flex-col gap-3",children:[s.jsx(G,{className:"h-12 w-full"}),s.jsx(G,{className:"h-12 w-full"})]})]}),e[2]=o):o=e[2],o}function ct(e){const t=w.c(14),{projectSlug:n,children:o}=e,{org:a}=re(),{data:r,isLoading:l}=ue(a.id,n);if(l||!r){let p;return t[0]===Symbol.for("react.memo_cache_sentinel")?(p=s.jsx(xe,{}),t[0]=p):p=t[0],p}const c=n===D;let m;t[1]!==r.description||t[2]!==r.enabledPlugins||t[3]!==r.id||t[4]!==r.name||t[5]!==r.organizationId||t[6]!==r.slug||t[7]!==r.ui||t[8]!==c?(m={id:r.id,organizationId:r.organizationId,slug:r.slug,name:r.name,description:r.description,enabledPlugins:r.enabledPlugins,ui:r.ui,isOrgAdmin:c},t[1]=r.description,t[2]=r.enabledPlugins,t[3]=r.id,t[4]=r.name,t[5]=r.organizationId,t[6]=r.slug,t[7]=r.ui,t[8]=c,t[9]=m):m=t[9];const f=m;let i;return t[10]!==o||t[11]!==f||t[12]!==a?(i=s.jsx(fe,{org:a,project:f,children:o}),t[10]=o,t[11]=f,t[12]=a,t[13]=i):i=t[13],i}function mt(e){const t=w.c(7),{section:n}=e;switch(n){case"account.profile":{let o;return t[0]===Symbol.for("react.memo_cache_sentinel")?(o=s.jsx(et,{}),t[0]=o):o=t[0],o}case"account.preferences":{let o;return t[1]===Symbol.for("react.memo_cache_sentinel")?(o=s.jsx(de,{}),t[1]=o):o=t[1],o}case"org.general":{let o;return t[2]===Symbol.for("react.memo_cache_sentinel")?(o=s.jsx(rt,{}),t[2]=o):o=t[2],o}case"org.plugins":{let o;return t[3]===Symbol.for("react.memo_cache_sentinel")?(o=s.jsx(ct,{projectSlug:D,children:s.jsx(He,{})}),t[3]=o):o=t[3],o}case"org.ai-providers":{let o;return t[4]===Symbol.for("react.memo_cache_sentinel")?(o=s.jsx(Pe,{}),t[4]=o):o=t[4],o}case"org.members":{let o;return t[5]===Symbol.for("react.memo_cache_sentinel")?(o=s.jsx(at,{}),t[5]=o):o=t[5],o}default:{let o;return t[6]===Symbol.for("react.memo_cache_sentinel")?(o=s.jsx(de,{}),t[6]=o):o=t[6],o}}}const dt={"account.profile":"Profile","account.preferences":"Preferences","org.general":"General","org.plugins":"Features","org.ai-providers":"AI Providers","org.billing":"Billing","org.members":"Members"};function ft(){const e=w.c(49),{isOpen:t,activeSection:n,open:o,close:a}=we(),[r,l]=I.useState(!1),[c,m]=I.useState(t);c!==t&&(m(t),l(t));let f;e[0]!==o?(f=J=>{o(J),l(!0)},e[0]=o,e[1]=f):f=e[1];const i=f;let p;e[2]===Symbol.for("react.memo_cache_sentinel")?(p=()=>{l(!1)},e[2]=p):p=e[2];const x=p;let g;e[3]!==a?(g=J=>{J||(a(),l(!1))},e[3]=a,e[4]=g):g=e[4];const u=g;let d;e[5]===Symbol.for("react.memo_cache_sentinel")?(d=s.jsx(Se,{className:"sr-only",children:"Settings"}),e[5]=d):d=e[5];const j=r?"hidden":"flex";let h;e[6]!==j?(h=V(j,"sm:flex flex-col w-full sm:w-auto"),e[6]=j,e[7]=h):h=e[7];let _;e[8]===Symbol.for("react.memo_cache_sentinel")?(_=s.jsx("span",{className:"text-base font-semibold",children:"Settings"}),e[8]=_):_=e[8];let b;e[9]!==u?(b=()=>u(!1),e[9]=u,e[10]=b):b=e[10];let y,N;e[11]===Symbol.for("react.memo_cache_sentinel")?(y=s.jsx(ce,{size:16}),N=s.jsx("span",{className:"sr-only",children:"Close"}),e[11]=y,e[12]=N):(y=e[11],N=e[12]);let S;e[13]!==b?(S=s.jsxs("div",{className:"flex items-center justify-between px-4 py-3 border-b border-border sm:hidden",children:[_,s.jsxs("button",{type:"button",onClick:b,className:"rounded-md p-1 opacity-70 hover:opacity-100 transition-opacity",children:[y,N]})]}),e[13]=b,e[14]=S):S=e[14];let C;e[15]===Symbol.for("react.memo_cache_sentinel")?(C=s.jsx("div",{className:"w-full sm:w-52 shrink-0 border-r border-border"}),e[15]=C):C=e[15];let k;e[16]!==n||e[17]!==i?(k=s.jsx(I.Suspense,{fallback:C,children:s.jsx(Ze,{activeSection:n,onNavigate:i})}),e[16]=n,e[17]=i,e[18]=k):k=e[18];let v;e[19]!==S||e[20]!==k||e[21]!==h?(v=s.jsxs("div",{className:h,children:[S,k]}),e[19]=S,e[20]=k,e[21]=h,e[22]=v):v=e[22];const A=r?"flex":"hidden";let $;e[23]!==A?($=V(A,"sm:flex flex-1 min-w-0 overflow-y-auto relative flex-col overflow-hidden"),e[23]=A,e[24]=$):$=e[24];let P;e[25]===Symbol.for("react.memo_cache_sentinel")?(P=s.jsxs("button",{type:"button",onClick:x,className:"rounded-md p-1 opacity-70 hover:opacity-100 transition-opacity",children:[s.jsx(ke,{size:16}),s.jsx("span",{className:"sr-only",children:"Back"})]}),e[25]=P):P=e[25];const z=dt[n];let O;e[26]!==z?(O=s.jsxs("div",{className:"flex items-center gap-2 px-4 py-3 border-b border-border sm:hidden",children:[P,s.jsx("span",{className:"text-base font-semibold",children:z})]}),e[26]=z,e[27]=O):O=e[27];let M;e[28]!==u?(M=()=>u(!1),e[28]=u,e[29]=M):M=e[29];let U,q;e[30]===Symbol.for("react.memo_cache_sentinel")?(U=s.jsx(ce,{size:16}),q=s.jsx("span",{className:"sr-only",children:"Close"}),e[30]=U,e[31]=q):(U=e[30],q=e[31]);let F;e[32]!==M?(F=s.jsxs("button",{type:"button",onClick:M,className:"hidden sm:block absolute top-4 right-4 z-10 rounded-md p-1 opacity-70 hover:opacity-100 transition-opacity focus:outline-none focus:ring-2 focus:ring-ring",children:[U,q]}),e[32]=M,e[33]=F):F=e[33];let R;e[34]===Symbol.for("react.memo_cache_sentinel")?(R=s.jsx(xe,{}),e[34]=R):R=e[34];let L;e[35]!==n?(L=s.jsx("div",{className:"p-5 sm:p-8 flex-1 overflow-y-auto",children:s.jsx(I.Suspense,{fallback:R,children:s.jsx(mt,{section:n})})}),e[35]=n,e[36]=L):L=e[36];let E;e[37]!==$||e[38]!==O||e[39]!==F||e[40]!==L?(E=s.jsxs("div",{className:$,children:[O,F,L]}),e[37]=$,e[38]=O,e[39]=F,e[40]=L,e[41]=E):E=e[41];let T;e[42]!==v||e[43]!==E?(T=s.jsxs(Ne,{className:"sm:max-w-[1100px] h-[100dvh] sm:h-[85vh] max-h-[100dvh] sm:max-h-[85vh] w-full max-w-full sm:max-w-[1100px] rounded-none sm:rounded-xl p-0 overflow-hidden flex flex-col gap-0 border-0 sm:border",closeButtonClassName:"hidden",children:[d,s.jsxs("div",{className:"flex flex-1 min-h-0 overflow-hidden",children:[v,E]})]}),e[42]=v,e[43]=E,e[44]=T):T=e[44];let B;return e[45]!==u||e[46]!==t||e[47]!==T?(B=s.jsx(_e,{open:t,onOpenChange:u,children:T}),e[45]=u,e[46]=t,e[47]=T,e[48]=B):B=e[48],B}function ut(e){const t=w.c(12),{projectSlug:n,orgSlug:o,error:a}=e,r=ie();let l;t[0]===Symbol.for("react.memo_cache_sentinel")?(l=s.jsx("h1",{className:"text-xl font-semibold",children:"Failed to load project"}),t[0]=l):l=t[0];let c;t[1]!==n?(c=s.jsxs("p",{className:"text-muted-foreground text-center",children:['There was an error loading the project "',n,'".']}),t[1]=n,t[2]=c):c=t[2];let m;t[3]!==a.message?(m=s.jsx("p",{className:"text-sm text-muted-foreground",children:a.message}),t[3]=a.message,t[4]=m):m=t[4];let f;t[5]!==r||t[6]!==o?(f=s.jsx(Q,{variant:"link",onClick:()=>r({to:"/$org/$project",params:{org:o,project:D}}),children:"Go to organization home"}),t[5]=r,t[6]=o,t[7]=f):f=t[7];let i;return t[8]!==c||t[9]!==m||t[10]!==f?(i=s.jsxs("div",{className:"flex flex-col items-center justify-center h-full gap-4 p-8",children:[l,c,m,f]}),t[8]=c,t[9]=m,t[10]=f,t[11]=i):i=t[11],i}function pt(e){const t=w.c(9),{projectSlug:n,orgSlug:o}=e,a=ie();let r;t[0]===Symbol.for("react.memo_cache_sentinel")?(r=s.jsx("h1",{className:"text-xl font-semibold",children:"Project not found"}),t[0]=r):r=t[0];let l;t[1]!==n?(l=s.jsxs("p",{className:"text-muted-foreground text-center",children:['The project "',n,'" does not exist in this organization.']}),t[1]=n,t[2]=l):l=t[2];let c;t[3]!==a||t[4]!==o?(c=s.jsx(Q,{variant:"link",onClick:()=>a({to:"/$org/$project",params:{org:o,project:D}}),children:"Go to organization home"}),t[3]=a,t[4]=o,t[5]=c):c=t[5];let m;return t[6]!==l||t[7]!==c?(m=s.jsxs("div",{className:"flex flex-col items-center justify-center h-full gap-4 p-8",children:[r,l,c]}),t[6]=l,t[7]=c,t[8]=m):m=t[8],m}function xt(){const e=w.c(23);let t;e[0]===Symbol.for("react.memo_cache_sentinel")?(t={strict:!1},e[0]=t):t=e[0];const n=ye(t),{org:o}=re(),a=n.org,r=n.project,{data:l,isLoading:c,error:m}=ue(o.id,r);if(c){let d;return e[1]===Symbol.for("react.memo_cache_sentinel")?(d=s.jsx(le,{}),e[1]=d):d=e[1],d}if(m){let d;return e[2]!==m||e[3]!==a||e[4]!==r?(d=s.jsx(ut,{projectSlug:r,orgSlug:a,error:m}),e[2]=m,e[3]=a,e[4]=r,e[5]=d):d=e[5],d}if(!l){let d;return e[6]!==a||e[7]!==r?(d=s.jsx(pt,{projectSlug:r,orgSlug:a}),e[6]=a,e[7]=r,e[8]=d):d=e[8],d}const f=l.slug===D;let i;e[9]!==l.description||e[10]!==l.enabledPlugins||e[11]!==l.id||e[12]!==l.name||e[13]!==l.organizationId||e[14]!==l.slug||e[15]!==l.ui||e[16]!==f?(i={id:l.id,organizationId:l.organizationId,slug:l.slug,name:l.name,description:l.description,enabledPlugins:l.enabledPlugins,ui:l.ui,isOrgAdmin:f},e[9]=l.description,e[10]=l.enabledPlugins,e[11]=l.id,e[12]=l.name,e[13]=l.organizationId,e[14]=l.slug,e[15]=l.ui,e[16]=f,e[17]=i):i=e[17];const p=i;let x,g;e[18]===Symbol.for("react.memo_cache_sentinel")?(x=s.jsx(I.Suspense,{fallback:s.jsx(le,{}),children:s.jsx(ve,{})}),g=s.jsx(ft,{}),e[18]=x,e[19]=g):(x=e[18],g=e[19]);let u;return e[20]!==p||e[21]!==o?(u=s.jsxs(fe,{org:o,project:p,children:[x,g]}),e[20]=p,e[21]=o,e[22]=u):u=e[22],u}function Ts(){const e=w.c(1);let t;return e[0]===Symbol.for("react.memo_cache_sentinel")?(t=s.jsx(I.Suspense,{fallback:s.jsx(le,{}),children:s.jsx(xt,{})}),e[0]=t):t=e[0],t}export{Ts as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{d as n,j as r,E as u,r as f,c as x,f as j}from"./index-Y_g6-sbQ.js";import{T as h}from"./tasks-panel-BRc3ZfGK.js";import{P as p}from"./index-BlVIyhiN.js";import{B as g,a as b,b as T,c as k}from"./breadcrumb-CCT_gYCX.js";import{i as B}from"./Loading01-DTPGNGDe.js";import{u as S}from"./context-BNN0sjtQ.js";import"./task-status-DFJ-29wD.js";import"./popover-lD-HtMf4.js";import"./skeleton-DPPFiXsR.js";import"./spinner-DRNxYthF.js";import"./tooltip-Cem552VW.js";import"./index-CT7BYuwf.js";import"./constants-Cf6w8uWj.js";import"./use-mcp-prompts-8NM9rwku.js";import"./useQuery-DKMHT49Q.js";import"./dialog-B_ZBKGcK.js";import"./X-AnvD8fGN.js";import"./form-BAfFoDTS.js";import"./label-BagqgWUv.js";import"./input-BJjZBSH8.js";import"./index-BUla3j6g.js";import"./usage-BW6ztpN6.js";import"./integration-icon-7Bz6GmNv.js";import"./Container-D8gJR-V9.js";import"./AlertCircle-DoDnREQU.js";import"./ArrowUp-CiCCsmLU.js";import"./ArrowLeft-1uQ4hoAA.js";import"./XCircle-Of71XlDY.js";import"./Type01-D1knZTdC.js";import"./Check-DsqqbwRv.js";import"./ChevronDown-DMIUCeXF.js";import"./ChevronRight-BvErZvXV.js";import"./ChevronUp-BPTkFtVQ.js";import"./RefreshCcw01-Dbe0-ztA.js";import"./Play-BSN624z4.js";import"./Dataflow03-D9B0IMv1.js";import"./FolderClosed-DtTyOuV-.js";import"./Plus-VNSvGQN9.js";import"./SearchMd-BVguqJPF.js";import"./Settings01-BKawEeOc.js";import"./Trash01-p_-P7rrZ.js";import"./Upload01-D-cgBdXK.js";import"./User01-C1Py8RLi.js";import"./XClose-CIHCEBuc.js";import"./Zap-Cbf8Gxw3.js";import"./org-ai-providers-Udjn3QRR.js";import"./useMutation-09-2Qwl6.js";import"./card-DiqqquYR.js";import"./toggle-group-iephCdnh.js";import"./avatar-BDzYYIB_.js";import"./ai-providers-logos-Du8KzWpH.js";import"./formatDistanceToNow-Cb2QZZJn.js";import"./differenceInSeconds-NQ4PDo0z.js";import"./select-9VPJVrM5.js";import"./index-BdQq_4o_.js";import"./use-copy-d-3iM6J5.js";import"./marked.esm-BaswSlok.js";import"./tabs-CdWME6KE.js";import"./checkbox-B5yMaD1U.js";import"./drawer-DxTGqDKY.js";import"./select-virtual-mcp-B6M52JVi.js";import"./use-virtual-mcp-tHRSpblC.js";import"./use-collections-D0k_QRc1.js";import"./use-create-virtual-mcp-Dl6pqwaW.js";import"./use-mcp-resources-CHuUMbyT.js";import"./collapsible-CUnNCwaM.js";import"./index-TzbVkru2.js";import"./content-blocks-o63cs2vh.js";import"./mcp-app-renderer-BSLoo8nT.js";import"./types-DmDUXWAD.js";import"./useSuspenseInfiniteQuery-DZTp9qX4.js";import"./infiniteQueryObserver-BvNG1QG_.js";import"./collection-search-R3szwhKc.js";import"./user-BOuwXTIR.js";import"./format-time-CMKyl-GC.js";import"./empty-state-5hCgVmoA.js";import"./dropdown-menu-BGBf4SQr.js";import"./decopilot-events-Brt4gAR6.js";import"./index-BclDkWx8.js";function v(){const t=n.c(8),{org:o,project:s}=x(),a=j(),{switchToTask:c}=S();let i;t[0]!==a||t[1]!==o.slug||t[2]!==s.slug||t[3]!==c?(i=async d=>{await c(d),a({to:"/$org/$project",params:{org:o.slug,project:s.slug}})},t[0]=a,t[1]=o.slug,t[2]=s.slug,t[3]=c,t[4]=i):i=t[4];const l=i;let m;t[5]===Symbol.for("react.memo_cache_sentinel")?(m=r.jsx(p.Header,{children:r.jsx(p.Header.Left,{children:r.jsx(g,{children:r.jsx(b,{children:r.jsx(T,{children:r.jsx(k,{children:"Tasks"})})})})})}),t[5]=m):m=t[5];let e;return t[6]!==l?(e=r.jsxs(p,{children:[m,r.jsx(p.Content,{children:r.jsx("div",{className:"h-full flex flex-col overflow-hidden",children:r.jsx(h,{onTaskSelect:l})})})]}),t[6]=l,t[7]=e):e=t[7],e}function Wt(){const t=n.c(1);let o;return t[0]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsx(u,{children:r.jsx(f.Suspense,{fallback:r.jsx("div",{className:"flex h-full items-center justify-center",children:r.jsx(B,{size:32,className:"animate-spin text-muted-foreground"})}),children:r.jsx(v,{})})}),t[0]=o):o=t[0],o}export{Wt as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{I as u}from"./infiniteQueryObserver-BvNG1QG_.js";import{U as i}from"./index-Y_g6-sbQ.js";function t(e,r){return i(e,u,r)}export{t as u};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{U as u,aC as s}from"./index-Y_g6-sbQ.js";function o(e,r){return u(e,s,r)}export{o as u};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{I as s}from"./infiniteQueryObserver-BvNG1QG_.js";import{U as u,W as n}from"./index-Y_g6-sbQ.js";function a(r,e){return u({...r,enabled:!0,suspense:!0,throwOnError:n},s,e)}export{a as u};
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
MIT License
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2010 - 2021 Brian Carlson
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
# node-postgres
|
|
2
|
-
|
|
3
|
-
[](http://travis-ci.org/brianc/node-postgres)
|
|
4
|
-
<span class="badge-npmversion"><a href="https://npmjs.org/package/pg" title="View this project on NPM"><img src="https://img.shields.io/npm/v/pg.svg" alt="NPM version" /></a></span>
|
|
5
|
-
<span class="badge-npmdownloads"><a href="https://npmjs.org/package/pg" title="View this project on NPM"><img src="https://img.shields.io/npm/dm/pg.svg" alt="NPM downloads" /></a></span>
|
|
6
|
-
|
|
7
|
-
Non-blocking PostgreSQL client for Node.js. Pure JavaScript and optional native libpq bindings.
|
|
8
|
-
|
|
9
|
-
## Install
|
|
10
|
-
|
|
11
|
-
```sh
|
|
12
|
-
$ npm install pg
|
|
13
|
-
```
|
|
14
|
-
|
|
15
|
-
---
|
|
16
|
-
|
|
17
|
-
## :star: [Documentation](https://node-postgres.com) :star:
|
|
18
|
-
|
|
19
|
-
### Features
|
|
20
|
-
|
|
21
|
-
- Pure JavaScript client and native libpq bindings share _the same API_
|
|
22
|
-
- Connection pooling
|
|
23
|
-
- Extensible JS ↔ PostgreSQL data-type coercion
|
|
24
|
-
- Supported PostgreSQL features
|
|
25
|
-
- Parameterized queries
|
|
26
|
-
- Named statements with query plan caching
|
|
27
|
-
- Async notifications with `LISTEN/NOTIFY`
|
|
28
|
-
- Bulk import & export with `COPY TO/COPY FROM`
|
|
29
|
-
|
|
30
|
-
### Extras
|
|
31
|
-
|
|
32
|
-
node-postgres is by design pretty light on abstractions. These are some handy modules we've been using over the years to complete the picture.
|
|
33
|
-
The entire list can be found on our [wiki](https://github.com/brianc/node-postgres/wiki/Extras).
|
|
34
|
-
|
|
35
|
-
## Support
|
|
36
|
-
|
|
37
|
-
node-postgres is free software. If you encounter a bug with the library please open an issue on the [GitHub repo](https://github.com/brianc/node-postgres). If you have questions unanswered by the documentation please open an issue pointing out how the documentation was unclear & I will do my best to make it better!
|
|
38
|
-
|
|
39
|
-
When you open an issue please provide:
|
|
40
|
-
|
|
41
|
-
- version of Node
|
|
42
|
-
- version of Postgres
|
|
43
|
-
- smallest possible snippet of code to reproduce the problem
|
|
44
|
-
|
|
45
|
-
You can also follow me [@briancarlson](https://twitter.com/briancarlson) if that's your thing. I try to always announce noteworthy changes & developments with node-postgres on Twitter.
|
|
46
|
-
|
|
47
|
-
## Sponsorship :two_hearts:
|
|
48
|
-
|
|
49
|
-
node-postgres's continued development has been made possible in part by generous financial support from [the community](https://github.com/brianc/node-postgres/blob/master/SPONSORS.md).
|
|
50
|
-
|
|
51
|
-
If you or your company are benefiting from node-postgres and would like to help keep the project financially sustainable [please consider supporting](https://github.com/sponsors/brianc) its development.
|
|
52
|
-
|
|
53
|
-
### Featured sponsor
|
|
54
|
-
|
|
55
|
-
Special thanks to [medplum](https://medplum.com) for their generous and thoughtful support of node-postgres!
|
|
56
|
-
|
|
57
|
-

|
|
58
|
-
|
|
59
|
-
## Contributing
|
|
60
|
-
|
|
61
|
-
**:heart: contributions!**
|
|
62
|
-
|
|
63
|
-
I will **happily** accept your pull request if it:
|
|
64
|
-
|
|
65
|
-
- **has tests**
|
|
66
|
-
- looks reasonable
|
|
67
|
-
- does not break backwards compatibility
|
|
68
|
-
|
|
69
|
-
If your change involves breaking backwards compatibility please please point that out in the pull request & we can discuss & plan when and how to release it and what type of documentation or communicate it will require.
|
|
70
|
-
|
|
71
|
-
## Troubleshooting and FAQ
|
|
72
|
-
|
|
73
|
-
The causes and solutions to common errors can be found among the [Frequently Asked Questions (FAQ)](https://github.com/brianc/node-postgres/wiki/FAQ)
|
|
74
|
-
|
|
75
|
-
## License
|
|
76
|
-
|
|
77
|
-
Copyright (c) 2010-2020 Brian Carlson (brian.m.carlson@gmail.com)
|
|
78
|
-
|
|
79
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
80
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
81
|
-
in the Software without restriction, including without limitation the rights
|
|
82
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
83
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
84
|
-
furnished to do so, subject to the following conditions:
|
|
85
|
-
|
|
86
|
-
The above copyright notice and this permission notice shall be included in
|
|
87
|
-
all copies or substantial portions of the Software.
|
|
88
|
-
|
|
89
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
90
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
91
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
92
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
93
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
94
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
95
|
-
THE SOFTWARE.
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
// ESM wrapper for pg
|
|
2
|
-
import pg from '../lib/index.js'
|
|
3
|
-
|
|
4
|
-
// Re-export all the properties
|
|
5
|
-
export const Client = pg.Client
|
|
6
|
-
export const Pool = pg.Pool
|
|
7
|
-
export const Connection = pg.Connection
|
|
8
|
-
export const types = pg.types
|
|
9
|
-
export const Query = pg.Query
|
|
10
|
-
export const DatabaseError = pg.DatabaseError
|
|
11
|
-
export const escapeIdentifier = pg.escapeIdentifier
|
|
12
|
-
export const escapeLiteral = pg.escapeLiteral
|
|
13
|
-
export const Result = pg.Result
|
|
14
|
-
export const TypeOverrides = pg.TypeOverrides
|
|
15
|
-
|
|
16
|
-
// Also export the defaults
|
|
17
|
-
export const defaults = pg.defaults
|
|
18
|
-
|
|
19
|
-
// Re-export the default
|
|
20
|
-
export default pg
|