decocms 2.292.0 → 2.292.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/client/assets/{AlertCircle-BJZjcLR8.js → AlertCircle-De2C9wZC.js} +1 -1
- package/dist/client/assets/{ArrowNarrowLeft-Yoaq7-cz.js → ArrowNarrowLeft-bSu4Kz2F.js} +1 -1
- package/dist/client/assets/{ArrowUpRight-DoZ1aCQb.js → ArrowUpRight-DT3QLsvt.js} +1 -1
- package/dist/client/assets/{CheckCircle-BbLUS0ek.js → CheckCircle-BIi7toDZ.js} +1 -1
- package/dist/client/assets/{ChevronDown-CGHjchOw.js → ChevronDown-DmIUGcFl.js} +1 -1
- package/dist/client/assets/{ChevronRight-Do3Je1ER.js → ChevronRight-CIh2nJ4L.js} +1 -1
- package/dist/client/assets/{ChevronUp-dSBPqUJ1.js → ChevronUp-BYOoc7wr.js} +1 -1
- package/dist/client/assets/{Container-CDgY_XYz.js → Container-BerLGLgK.js} +1 -1
- package/dist/client/assets/{DotsVertical-BxL7Owtq.js → DotsVertical-CDho1dav.js} +1 -1
- package/dist/client/assets/{LinkExternal01-DxLyrYeW.js → LinkExternal01-CcTNZj2P.js} +1 -1
- package/dist/client/assets/{Lock01-BI0K2L_g.js → Lock01-B-vCOiSg.js} +1 -1
- package/dist/client/assets/{Palette-CWiKw0AC.js → Palette-CqW3vcqn.js} +1 -1
- package/dist/client/assets/{Play-C7K9es-c.js → Play-CrdOw1Iv.js} +1 -1
- package/dist/client/assets/{Plus-BpCTKUfi.js → Plus-Zv0hv0Vg.js} +1 -1
- package/dist/client/assets/{RefreshCcw01-BEGaV3W5.js → RefreshCcw01-COL3SGLi.js} +1 -1
- package/dist/client/assets/{SearchMd-fRD_HHud.js → SearchMd-BjteSZXQ.js} +1 -1
- package/dist/client/assets/{Settings02-DtQ4_bLf.js → Settings02-w5kxVqcK.js} +1 -1
- package/dist/client/assets/{Shield01-Di_q_zxl.js → Shield01-DodcxEya.js} +1 -1
- package/dist/client/assets/{Star01-CIsSx9uE.js → Star01-BhFELsp4.js} +1 -1
- package/dist/client/assets/{Sun-CgyDUxcQ.js → Sun-DY_ADcda.js} +1 -1
- package/dist/client/assets/{Tool01-By8ElVEn.js → Tool01-B5mm7tYF.js} +1 -1
- package/dist/client/assets/{Trash01-BzOKZIoE.js → Trash01-DuRnWn1E.js} +1 -1
- package/dist/client/assets/{User01-B6EEMzxh.js → User01-CQoJwY3u.js} +1 -1
- package/dist/client/assets/{Users03-CKRT_0yR.js → Users03-DfcHW1oz.js} +1 -1
- package/dist/client/assets/{X-DXjTCsIF.js → X-Bgfd1eh0.js} +1 -1
- package/dist/client/assets/{XCircle-Ce7DOyui.js → XCircle-DUufUsoh.js} +1 -1
- package/dist/client/assets/{XClose-Bnw2tzQy.js → XClose-BQJEwJET.js} +1 -1
- package/dist/client/assets/{Zap-BEX7Xuxl.js → Zap-CDLB-lxK.js} +1 -1
- package/dist/client/assets/{ZapSquare-CsTKlylz.js → ZapSquare-BFGlmWLE.js} +1 -1
- package/dist/client/assets/{accordion-rxim1ZAp.js → accordion-zVtel299.js} +1 -1
- package/dist/client/assets/{agent-icon-DtvDglSH.js → agent-icon-DSfidSus.js} +1 -1
- package/dist/client/assets/{agents-list-Dn30Me50.js → agents-list-vffTTABq.js} +1 -1
- package/dist/client/assets/ai-providers-t0YXr9kj.js +1 -0
- package/dist/client/assets/{alert-dialog-DkRKYqdD.js → alert-dialog-rItivTOb.js} +1 -1
- package/dist/client/assets/{auth-catchall-BgWDU-In.js → auth-catchall-BGNYNNAk.js} +1 -1
- package/dist/client/assets/{automation-list-row-Dk3EbUOn.js → automation-list-row-lCQuQb2Q.js} +1 -1
- package/dist/client/assets/{automations-CbjDzR7F.js → automations-C7xJbJSO.js} +1 -1
- package/dist/client/assets/{avatar-CAgGCSe2.js → avatar-UVBUP_wG.js} +1 -1
- package/dist/client/assets/{badge-DBxFBhAO.js → badge-nX1O9Qf1.js} +1 -1
- package/dist/client/assets/{brand-context-C1u8HhCR.js → brand-context-7PuYXROc.js} +1 -1
- package/dist/client/assets/{card-DWuJsQ-l.js → card-B6kxnNb0.js} +1 -1
- package/dist/client/assets/{chat-context-w7qWGRrL.js → chat-context-KGI8H-cg.js} +1 -1
- package/dist/client/assets/{checkbox-CgUCf0vo.js → checkbox-CTi7T5x-.js} +1 -1
- package/dist/client/assets/{collection-detail-miARxdMD.js → collection-detail-D_GfRl2U.js} +1 -1
- package/dist/client/assets/{collection-display-button-IHUVDN00.js → collection-display-button-DtLA-_Qf.js} +1 -1
- package/dist/client/assets/{collection-search-9iq4cHBD.js → collection-search-BVB_BOr-.js} +1 -1
- package/dist/client/assets/{collection-search-Dz-DfctK.js → collection-search-DHiaU-oT.js} +1 -1
- package/dist/client/assets/{collection-table-wrapper-zolZkVPt.js → collection-table-wrapper-Cqd6KCzo.js} +1 -1
- package/dist/client/assets/{collection-tabs-DQLxqY5f.js → collection-tabs-CczYJtOJ.js} +1 -1
- package/dist/client/assets/{collections-U39XM2D0.js → collections-Czgjy6V_.js} +1 -1
- package/dist/client/assets/{command-YWTBTzZ-.js → command-C1riJax0.js} +1 -1
- package/dist/client/assets/{connection-card-CzIrL4EL.js → connection-card-MQF8JSkw.js} +1 -1
- package/dist/client/assets/{connection-detail-BAaKFeAe.js → connection-detail-Kmft9f88.js} +1 -1
- package/dist/client/assets/{connection-form-helpers-CkuYmS0Y.js → connection-form-helpers-DMZ5iUjm.js} +1 -1
- package/dist/client/assets/{connections-BhrD0IQp.js → connections-Qfmncrnr.js} +1 -1
- package/dist/client/assets/{constants-3nmHZB7k.js → constants-CMKJaZow.js} +1 -1
- package/dist/client/assets/{constants-C9aLxYHE.js → constants-puxzW8Tt.js} +1 -1
- package/dist/client/assets/{dialog-Dh1iMW0s.js → dialog-CAwNCLeY.js} +1 -1
- package/dist/client/assets/{domain-settings-AVM0VKvz.js → domain-settings-ZwlKCgS9.js} +1 -1
- package/dist/client/assets/{drawer-BVsQgzeD.js → drawer-Co7qhpAL.js} +1 -1
- package/dist/client/assets/{dropdown-menu-BFB_BhxE.js → dropdown-menu-CiJ99ly5.js} +1 -1
- package/dist/client/assets/{dynamic-plugin-layout-89eFL9j5.js → dynamic-plugin-layout-SGNBzqAT.js} +1 -1
- package/dist/client/assets/{empty-state-DaBJGn03.js → empty-state-Bio4MAFs.js} +1 -1
- package/dist/client/assets/{empty-state-Ccngpo14.js → empty-state-DIogXxVN.js} +1 -1
- package/dist/client/assets/{extract-connection-data-DTYSYxBG.js → extract-connection-data-BFIbyEiI.js} +1 -1
- package/dist/client/assets/{features-DyBQ3hAD.js → features-QRbg1n3B.js} +1 -1
- package/dist/client/assets/{form-D1t1amOF.js → form-FdRX5pG1.js} +1 -1
- package/dist/client/assets/{general-BSxOk1qz.js → general-Cc1ql58y.js} +1 -1
- package/dist/client/assets/{github-repo-picker-DSEipb9O.js → github-repo-picker-QAmOQiwy.js} +1 -1
- package/dist/client/assets/{index-aI7M0qEI.js → index-BhZeUpb1.js} +1 -1
- package/dist/client/assets/{index-CiGNH6-A.js → index-BiFex3ig.js} +1 -1
- package/dist/client/assets/{index-DKd6U8ZD.js → index-C4KOdiuW.js} +2 -2
- package/dist/client/assets/{index-DDmmZL9v.js → index-DFoLVe7P.js} +1 -1
- package/dist/client/assets/{index-D0Y3Q7N3.js → index-DcnXzgrr.js} +1 -1
- package/dist/client/assets/{index-BXJluhPl.js → index-DdEYcoGw.js} +1 -1
- package/dist/client/assets/{index-CfcY28zS.js → index-L8A_STvx.js} +1 -1
- package/dist/client/assets/{index-CxNPMl3z.js → index-SoZ9vkB3.js} +4 -4
- package/dist/client/assets/{index-DskwxDSD.js → index-mWgQ602E.js} +1 -1
- package/dist/client/assets/{index-Bgh3Fg-W.js → index-mcaIOSGF.js} +1 -1
- package/dist/client/assets/{infiniteQueryObserver-RFzqIOTQ.js → infiniteQueryObserver-DS8PEXT3.js} +1 -1
- package/dist/client/assets/{input-rXpcOW54.js → input-DrxCctpM.js} +1 -1
- package/dist/client/assets/{integration-icon-wh5nd5gB.js → integration-icon-B-ypwxt-.js} +1 -1
- package/dist/client/assets/{label-KG6f6ypV.js → label-qumw5kFa.js} +1 -1
- package/dist/client/assets/{layout-C1dBBrJO.js → layout-BHQW603q.js} +1 -1
- package/dist/client/assets/{login-aCzD1yj3.js → login-zoPe2LeA.js} +1 -1
- package/dist/client/assets/{members-CcYrdU9b.js → members-BrCn_crL.js} +1 -1
- package/dist/client/assets/{monaco-editor-CetiEdE3.js → monaco-editor-C80vYwBa.js} +1 -1
- package/dist/client/assets/{monitoring-stats-row-Bpsycv3a.js → monitoring-stats-row-DoiRCC4f.js} +1 -1
- package/dist/client/assets/{oauth-callback-Bgqii5KN.js → oauth-callback-CNmuoGWl.js} +1 -1
- package/dist/client/assets/{oauth-callback-ai-provider-BM8V8XSD.js → oauth-callback-ai-provider-CsQrJZmR.js} +1 -1
- package/dist/client/assets/{onboarding-BstJNU1_.js → onboarding-C7clLSW8.js} +1 -1
- package/dist/client/assets/{org-layout-Cbl-bpnq.js → org-layout-BmM2YD3_.js} +1 -1
- package/dist/client/assets/{org-plugin-layout-D5W8iJ__.js → org-plugin-layout-Csh0KNUp.js} +1 -1
- package/dist/client/assets/{plugin-empty-state-ClLmoORa.js → plugin-empty-state-DxSYI7WM.js} +1 -1
- package/dist/client/assets/{plugin-header-BfIRczN-.js → plugin-header-D0WCyAas.js} +1 -1
- package/dist/client/assets/{plugin-layout-CSlooCiQ.js → plugin-layout-BZBMQxU7.js} +1 -1
- package/dist/client/assets/{popover-oHy7A2NB.js → popover-BdnMz9At.js} +1 -1
- package/dist/client/assets/{profile--BcrwHZB.js → profile-BZlcE9Y0.js} +1 -1
- package/dist/client/assets/{project-app-view-7T_TcCNb.js → project-app-view-B8g2l52t.js} +1 -1
- package/dist/client/assets/{registry-layout-DSvJ6NrU.js → registry-layout-DF08kMn2.js} +1 -1
- package/dist/client/assets/registry-oDwGjrMT.js +2 -0
- package/dist/client/assets/{required-auth-layout-C9I2Cbbq.js → required-auth-layout-DAzAQKek.js} +1 -1
- package/dist/client/assets/{reset-password-CIaSK0Sp.js → reset-password-KFV68Ks-.js} +1 -1
- package/dist/client/assets/{roles-BquZRSxB.js → roles-CMvkTrhY.js} +1 -1
- package/dist/client/assets/{scroll-area-UNfVJI8t.js → scroll-area-BlUv7zcB.js} +1 -1
- package/dist/client/assets/{search-input-DfM3hp54.js → search-input-CbSuDoZL.js} +1 -1
- package/dist/client/assets/{select-CIfh_MBY.js → select-W23RccQR.js} +1 -1
- package/dist/client/assets/{select-model-BuijBTi2.js → select-model-BLp2y3cG.js} +1 -1
- package/dist/client/assets/{settings-layout-7GZHLZ6d.js → settings-layout-b1Br3189.js} +1 -1
- package/dist/client/assets/{settings-section-DU0g5n0Q.js → settings-section-CKsKmGWh.js} +1 -1
- package/dist/client/assets/{shell-layout-CcnEVz8S.js → shell-layout-BUuy9S_L.js} +1 -1
- package/dist/client/assets/{skeleton-DWxGcluE.js → skeleton-BKGbLlxs.js} +1 -1
- package/dist/client/assets/{sso-BwOkQ_ww.js → sso-aoLg93_m.js} +1 -1
- package/dist/client/assets/{store-R02TTTNN.js → store-DGgyYg8C.js} +1 -1
- package/dist/client/assets/store-registry-Dbm0_etm.js +2 -0
- package/dist/client/assets/{switch-CWaKO_3R.js → switch-DNv5M4ZB.js} +1 -1
- package/dist/client/assets/{table-UpR-J_t9.js → table-CaLu-Lo8.js} +1 -1
- package/dist/client/assets/{tabs-CgpYNCZH.js → tabs-Ds3m3VsK.js} +1 -1
- package/dist/client/assets/{task-status-CPd-pzw_.js → task-status-DhB__zcV.js} +1 -1
- package/dist/client/assets/{textarea-CVs7u-e-.js → textarea-D8dnqUDV.js} +1 -1
- package/dist/client/assets/{toggle-group-DIrVgcK0.js → toggle-group-DiaVR0jE.js} +1 -1
- package/dist/client/assets/{tools-list-C1Tdz1hL.js → tools-list-CVgYt-8F.js} +1 -1
- package/dist/client/assets/{types-DqiNUavs.js → types-Cj_XQKsH.js} +1 -1
- package/dist/client/assets/{use-ai-providers-D5Tufg2O.js → use-ai-providers-CiKg1J6I.js} +1 -1
- package/dist/client/assets/{use-collections-DpIHOTql.js → use-collections-BgcKlAB6.js} +1 -1
- package/dist/client/assets/{use-connection-1SSSHaHs.js → use-connection-D0OofLda.js} +1 -1
- package/dist/client/assets/{use-copy-CDfDyhwS.js → use-copy-DU9Tefqq.js} +1 -1
- package/dist/client/assets/{use-create-virtual-mcp-Bkn7rT3M.js → use-create-virtual-mcp-DAB2T3vN.js} +1 -1
- package/dist/client/assets/{use-decopilot-events-CN5jq2Ax.js → use-decopilot-events-ClmBUkq4.js} +1 -1
- package/dist/client/assets/{use-delete-connection-3pf7Gnxc.js → use-delete-connection-D8siAEqJ.js} +1 -1
- package/dist/client/assets/{use-infinite-scroll-DknIuIQ2.js → use-infinite-scroll-8BgvLQv0.js} +1 -1
- package/dist/client/assets/{use-list-state-8iqNUJS2.js → use-list-state-BEoAeszV.js} +1 -1
- package/dist/client/assets/{use-mcp-tools-qxi4PxSc.js → use-mcp-tools-D1ScXFUK.js} +1 -1
- package/dist/client/assets/{use-members-Ck6hn7xk.js → use-members-BzwLO50s.js} +1 -1
- package/dist/client/assets/{use-mobile-DrlR5BbG.js → use-mobile-DvmdhkH5.js} +1 -1
- package/dist/client/assets/{use-navigate-to-agent-DlV84y97.js → use-navigate-to-agent-Dg24R1Fh.js} +1 -1
- package/dist/client/assets/{use-org-sso-CWrx0G98.js → use-org-sso-D0nq7yh3.js} +1 -1
- package/dist/client/assets/{use-organization-roles-DsSbdLcn.js → use-organization-roles-Dl9VoSUw.js} +1 -1
- package/dist/client/assets/{use-organization-settings-DoI0c_Gi.js → use-organization-settings-C1HGFbFZ.js} +1 -1
- package/dist/client/assets/{use-registry-connections-BZXVzsNL.js → use-registry-connections-DzXuLNdG.js} +1 -1
- package/dist/client/assets/{use-status-sounds-UAO5zXMo.js → use-status-sounds-BC_OJyRi.js} +1 -1
- package/dist/client/assets/{use-tasks-BGCdXCFh.js → use-tasks-BtGSWUvO.js} +1 -1
- package/dist/client/assets/{use-view-mode-Cobet5rP.js → use-view-mode-BnyE0_EO.js} +1 -1
- package/dist/client/assets/{use-virtual-mcp-G7jm3TGl.js → use-virtual-mcp-D1fXVRo5.js} +1 -1
- package/dist/client/assets/useInfiniteQuery-H3t_tPfZ.js +1 -0
- package/dist/client/assets/useSuspenseInfiniteQuery-BAnABuH7.js +1 -0
- package/dist/client/assets/{user-BXlY7NuV.js → user-DAufXs4h.js} +1 -1
- package/dist/client/assets/{view-mode-toggle-PXHnKZlc.js → view-mode-toggle-LshbVzEB.js} +1 -1
- package/dist/client/assets/{workflow-q8JEUlLD.js → workflow-Dt2CIq6i.js} +1 -1
- package/dist/client/assets/workflow-detail-BZ0JnpLY.js +1 -0
- package/dist/client/index.html +1 -1
- package/dist/server/cli.js +2 -2
- package/dist/server/node_modules/ansi-regex/index.d.ts +33 -0
- package/dist/server/node_modules/ansi-regex/index.js +14 -0
- package/dist/server/node_modules/ansi-regex/license +9 -0
- package/dist/server/node_modules/ansi-regex/package.json +61 -0
- package/dist/server/node_modules/ansi-regex/readme.md +66 -0
- package/dist/server/node_modules/ansi-styles/index.d.ts +236 -0
- package/dist/server/node_modules/ansi-styles/index.js +223 -0
- package/dist/server/node_modules/ansi-styles/license +9 -0
- package/dist/server/node_modules/ansi-styles/package.json +54 -0
- package/dist/server/node_modules/ansi-styles/readme.md +173 -0
- package/dist/server/node_modules/emoji-regex/LICENSE-MIT.txt +20 -0
- package/dist/server/node_modules/emoji-regex/README.md +107 -0
- package/dist/server/node_modules/emoji-regex/index.d.ts +3 -0
- package/dist/server/node_modules/emoji-regex/index.js +4 -0
- package/dist/server/node_modules/emoji-regex/index.mjs +4 -0
- package/dist/server/node_modules/emoji-regex/package.json +45 -0
- package/dist/server/node_modules/environment/index.d.ts +74 -0
- package/dist/server/node_modules/environment/index.js +47 -0
- package/dist/server/node_modules/environment/license +9 -0
- package/dist/server/node_modules/environment/package.json +74 -0
- package/dist/server/node_modules/environment/readme.md +94 -0
- package/dist/server/node_modules/is-fullwidth-code-point/index.d.ts +17 -0
- package/dist/server/node_modules/is-fullwidth-code-point/index.js +12 -0
- package/dist/server/node_modules/is-fullwidth-code-point/license +9 -0
- package/dist/server/node_modules/is-fullwidth-code-point/package.json +53 -0
- package/dist/server/node_modules/is-fullwidth-code-point/readme.md +31 -0
- package/dist/server/node_modules/is-unicode-supported/index.d.ts +12 -0
- package/dist/server/node_modules/is-unicode-supported/index.js +21 -0
- package/dist/server/node_modules/is-unicode-supported/license +9 -0
- package/dist/server/node_modules/is-unicode-supported/package.json +47 -0
- package/dist/server/node_modules/is-unicode-supported/readme.md +35 -0
- package/dist/server/node_modules/pg-int8/LICENSE +13 -0
- package/dist/server/node_modules/pg-int8/README.md +16 -0
- package/dist/server/node_modules/pg-int8/index.js +100 -0
- package/dist/server/node_modules/pg-int8/package.json +24 -0
- package/dist/server/node_modules/postgres-array/index.d.ts +4 -0
- package/dist/server/node_modules/postgres-array/index.js +97 -0
- package/dist/server/node_modules/postgres-array/license +21 -0
- package/dist/server/node_modules/postgres-array/package.json +35 -0
- package/dist/server/node_modules/postgres-array/readme.md +43 -0
- package/dist/server/node_modules/postgres-bytea/index.js +33 -0
- package/dist/server/node_modules/postgres-bytea/license +21 -0
- package/dist/server/node_modules/postgres-bytea/package.json +34 -0
- package/dist/server/node_modules/postgres-bytea/readme.md +34 -0
- package/dist/server/node_modules/postgres-date/index.js +116 -0
- package/dist/server/node_modules/postgres-date/license +21 -0
- package/dist/server/node_modules/postgres-date/package.json +33 -0
- package/dist/server/node_modules/postgres-date/readme.md +49 -0
- package/dist/server/node_modules/restore-cursor/index.d.ts +11 -0
- package/dist/server/node_modules/restore-cursor/index.js +11 -0
- package/dist/server/node_modules/restore-cursor/license +9 -0
- package/dist/server/node_modules/restore-cursor/package.json +55 -0
- package/dist/server/node_modules/restore-cursor/readme.md +31 -0
- package/dist/server/node_modules/split2/LICENSE +13 -0
- package/dist/server/node_modules/split2/README.md +85 -0
- package/dist/server/node_modules/split2/bench.js +27 -0
- package/dist/server/node_modules/split2/index.js +141 -0
- package/dist/server/node_modules/split2/package.json +39 -0
- package/dist/server/node_modules/split2/test.js +409 -0
- package/dist/server/node_modules/string-width/index.d.ts +39 -0
- package/dist/server/node_modules/string-width/index.js +82 -0
- package/dist/server/node_modules/string-width/license +9 -0
- package/dist/server/node_modules/string-width/package.json +64 -0
- package/dist/server/node_modules/string-width/readme.md +66 -0
- package/dist/server/node_modules/xtend/.jshintrc +30 -0
- package/dist/server/node_modules/{pg → xtend}/LICENSE +6 -7
- package/dist/server/node_modules/xtend/README.md +32 -0
- package/dist/server/node_modules/xtend/immutable.js +19 -0
- package/dist/server/node_modules/xtend/mutable.js +17 -0
- package/dist/server/node_modules/xtend/package.json +55 -0
- package/dist/server/node_modules/xtend/test.js +103 -0
- package/dist/server/server.js +1 -1
- package/package.json +1 -1
- package/dist/client/assets/ai-providers-CC7AZG4I.js +0 -1
- package/dist/client/assets/registry-CDfXAwnP.js +0 -2
- package/dist/client/assets/store-registry-DdbRGyFG.js +0 -2
- package/dist/client/assets/useInfiniteQuery-J4O9iX8k.js +0 -1
- package/dist/client/assets/useSuspenseInfiniteQuery-BBJXEpEL.js +0 -1
- package/dist/client/assets/workflow-detail-FemzGjdG.js +0 -1
- 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/server.js
CHANGED
|
@@ -4598,7 +4598,7 @@ mkdir -p /app && chown deco:deco /app
|
|
|
4598
4598
|
`);if(X.linkname)G+=zM0(" linkpath="+X.linkname+`
|
|
4599
4599
|
`);let Q=X.pax;if(Q)for(let J in Q)G+=zM0(" "+J+"="+Q[J]+`
|
|
4600
4600
|
`);return m9.from(G)};Rl5.decodePax=function(X){let G={};while(X.length){let Q=0;while(Q<X.length&&X[Q]!==32)Q++;let J=parseInt(m9.toString(X.subarray(0,Q)),10);if(!J)return G;let $=m9.toString(X.subarray(Q+1,J-1)),Z=$.indexOf("=");if(Z===-1)return G;G[$.slice(0,Z)]=$.slice(Z+1),X=X.subarray(J)}return G};Rl5.encode=function(X){let G=m9.alloc(512),Q=X.name,J="";if(X.typeflag===5&&Q[Q.length-1]!=="/")Q+="/";if(m9.byteLength(Q)!==Q.length)return null;while(m9.byteLength(Q)>100){let $=Q.indexOf("/");if($===-1)return null;J+=J?"/"+Q.slice(0,$):Q.slice(0,$),Q=Q.slice($+1)}if(m9.byteLength(Q)>100||m9.byteLength(J)>155)return null;if(X.linkname&&m9.byteLength(X.linkname)>100)return null;if(m9.write(G,Q),m9.write(G,YA(X.mode&4095,6),100),m9.write(G,YA(X.uid,6),108),m9.write(G,YA(X.gid,6),116),Vl5(X.size,G,124),m9.write(G,YA(X.mtime.getTime()/1000|0,11),136),G[156]=48+jl5(X.type),X.linkname)m9.write(G,X.linkname,157);if(m9.copy(Ms6,G,257),m9.copy(wl5,G,263),X.uname)m9.write(G,X.uname,265);if(X.gname)m9.write(G,X.gname,297);if(m9.write(G,YA(X.devmajor||0,6),329),m9.write(G,YA(X.devminor||0,6),337),J)m9.write(G,J,345);return m9.write(G,YA(Ss6(G),6),148),G};Rl5.decode=function(X,G,Q){let J=X[156]===0?0:X[156]-48,$=Nt(X,0,100,G),Z=eq(X,100,8),W=eq(X,108,8),K=eq(X,116,8),H=eq(X,124,12),U=eq(X,136,12),N=Il5(J),B=X[157]===0?null:Nt(X,157,100,G),O=Nt(X,265,32),z=Nt(X,297,32),w=eq(X,329,8),E=eq(X,337,8),P=Ss6(X);if(P===256)return null;if(P!==eq(X,148,8))throw Error("Invalid tar header. Maybe the tar is corrupted or it needs to be gunzipped?");if(Pl5(X)){if(X[345])$=Nt(X,345,155,G)+"/"+$}else if(ql5(X));else if(!Q)throw Error("Invalid tar header: unknown format.");if(J===0&&$&&$[$.length-1]==="/")J=5;return{name:$,mode:Z,uid:W,gid:K,size:H,mtime:new Date(1000*U),type:N,linkname:B,uname:O,gname:z,devmajor:w,devminor:E,pax:null}};function Pl5(Y){return m9.equals(Ms6,Y.subarray(257,263))}function ql5(Y){return m9.equals(Ll5,Y.subarray(257,263))&&m9.equals(El5,Y.subarray(263,265))}function Al5(Y,X,G){if(typeof Y!=="number")return G;if(Y=~~Y,Y>=X)return X;if(Y>=0)return Y;if(Y+=X,Y>=0)return Y;return 0}function Il5(Y){switch(Y){case 0:return"file";case 1:return"link";case 2:return"symlink";case 3:return"character-device";case 4:return"block-device";case 5:return"directory";case 6:return"fifo";case 7:return"contiguous-file";case 72:return"pax-header";case 55:return"pax-global-header";case 27:return"gnu-long-link-path";case 28:case 30:return"gnu-long-path"}return null}function jl5(Y){switch(Y){case"file":return 0;case"link":return 1;case"symlink":return 2;case"character-device":return 3;case"block-device":return 4;case"directory":return 5;case"fifo":return 6;case"contiguous-file":return 7;case"pax-header":return 72}return 0}function Rs6(Y,X,G,Q){for(;G<Q;G++)if(Y[G]===X)return G;return Q}function Ss6(Y){let X=256;for(let G=0;G<148;G++)X+=Y[G];for(let G=156;G<512;G++)X+=Y[G];return X}function YA(Y,X){if(Y=Y.toString(8),Y.length>X)return"7777777777777777777".slice(0,X)+" ";return"0000000000000000000".slice(0,X-Y.length)+Y+" "}function Tl5(Y,X,G){X[G]=128;for(let Q=11;Q>0;Q--)X[G+Q]=Y&255,Y=Math.floor(Y/256)}function Vl5(Y,X,G){if(Y.toString(8).length>11)Tl5(Y,X,G);else m9.write(X,YA(Y,11),G)}function Ml5(Y){let X;if(Y[0]===128)X=!0;else if(Y[0]===255)X=!1;else return null;let G=[],Q;for(Q=Y.length-1;Q>0;Q--){let Z=Y[Q];if(X)G.push(Z);else G.push(255-Z)}let J=0,$=G.length;for(Q=0;Q<$;Q++)J+=G[Q]*Math.pow(256,Q);return X?J:-1*J}function eq(Y,X,G){if(Y=Y.subarray(X,X+G),X=0,Y[X]&128)return Ml5(Y);else{while(X<Y.length&&Y[X]===32)X++;let Q=Al5(Rs6(Y,32,X,Y.length),Y.length,Y.length);while(X<Q&&Y[X]===0)X++;if(Q===X)return 0;return parseInt(m9.toString(Y.subarray(X,Q)),8)}}function Nt(Y,X,G,Q){return m9.toString(Y.subarray(X,Rs6(Y,0,X,X+G)),Q)}function zM0(Y){let X=m9.byteLength(Y),G=Math.floor(Math.log(X)/Math.log(10))+1;if(X+G>=Math.pow(10,G))G++;return X+G+Y}});var hs6=k((KVG,ys6)=>{var{Writable:fl5,Readable:bl5,getStreamError:ks6}=OM0(),yl5=KM0(),Cs6=Ut(),Bt=DM0(),hl5=Cs6.alloc(0);class vs6{constructor(){this.buffered=0,this.shifted=0,this.queue=new yl5,this._offset=0}push(Y){this.buffered+=Y.byteLength,this.queue.push(Y)}shiftFirst(Y){return this._buffered===0?null:this._next(Y)}shift(Y){if(Y>this.buffered)return null;if(Y===0)return hl5;let X=this._next(Y);if(Y===X.byteLength)return X;let G=[X];while((Y-=X.byteLength)>0)X=this._next(Y),G.push(X);return Cs6.concat(G)}_next(Y){let X=this.queue.peek(),G=X.byteLength-this._offset;if(Y>=G){let Q=this._offset?X.subarray(this._offset,X.byteLength):X;return this.queue.shift(),this._offset=0,this.buffered-=G,this.shifted+=G,Q}return this.buffered-=Y,this.shifted+=Y,X.subarray(this._offset,this._offset+=Y)}}class _s6 extends bl5{constructor(Y,X,G){super();this.header=X,this.offset=G,this._parent=Y}_read(Y){if(this.header.size===0)this.push(null);if(this._parent._stream===this)this._parent._update();Y(null)}_predestroy(){this._parent.destroy(ks6(this))}_detach(){if(this._parent._stream===this)this._parent._stream=null,this._parent._missing=bs6(this.header.size),this._parent._update()}_destroy(Y){this._detach(),Y(null)}}class fs6 extends fl5{constructor(Y){super(Y);if(!Y)Y={};this._buffer=new vs6,this._offset=0,this._header=null,this._stream=null,this._missing=0,this._longHeader=!1,this._callback=wM0,this._locked=!1,this._finished=!1,this._pax=null,this._paxGlobal=null,this._gnuLongPath=null,this._gnuLongLinkPath=null,this._filenameEncoding=Y.filenameEncoding||"utf-8",this._allowUnknownFormat=!!Y.allowUnknownFormat,this._unlockBound=this._unlock.bind(this)}_unlock(Y){if(this._locked=!1,Y){this.destroy(Y),this._continueWrite(Y);return}this._update()}_consumeHeader(){if(this._locked)return!1;this._offset=this._buffer.shifted;try{this._header=Bt.decode(this._buffer.shift(512),this._filenameEncoding,this._allowUnknownFormat)}catch(Y){return this._continueWrite(Y),!1}if(!this._header)return!0;switch(this._header.type){case"gnu-long-path":case"gnu-long-link-path":case"pax-global-header":case"pax-header":return this._longHeader=!0,this._missing=this._header.size,!0}if(this._locked=!0,this._applyLongHeaders(),this._header.size===0||this._header.type==="directory")return this.emit("entry",this._header,this._createStream(),this._unlockBound),!0;return this._stream=this._createStream(),this._missing=this._header.size,this.emit("entry",this._header,this._stream,this._unlockBound),!0}_applyLongHeaders(){if(this._gnuLongPath)this._header.name=this._gnuLongPath,this._gnuLongPath=null;if(this._gnuLongLinkPath)this._header.linkname=this._gnuLongLinkPath,this._gnuLongLinkPath=null;if(this._pax){if(this._pax.path)this._header.name=this._pax.path;if(this._pax.linkpath)this._header.linkname=this._pax.linkpath;if(this._pax.size)this._header.size=parseInt(this._pax.size,10);this._header.pax=this._pax,this._pax=null}}_decodeLongHeader(Y){switch(this._header.type){case"gnu-long-path":this._gnuLongPath=Bt.decodeLongPath(Y,this._filenameEncoding);break;case"gnu-long-link-path":this._gnuLongLinkPath=Bt.decodeLongPath(Y,this._filenameEncoding);break;case"pax-global-header":this._paxGlobal=Bt.decodePax(Y);break;case"pax-header":this._pax=this._paxGlobal===null?Bt.decodePax(Y):Object.assign({},this._paxGlobal,Bt.decodePax(Y));break}}_consumeLongHeader(){this._longHeader=!1,this._missing=bs6(this._header.size);let Y=this._buffer.shift(this._header.size);try{this._decodeLongHeader(Y)}catch(X){return this._continueWrite(X),!1}return!0}_consumeStream(){let Y=this._buffer.shiftFirst(this._missing);if(Y===null)return!1;this._missing-=Y.byteLength;let X=this._stream.push(Y);if(this._missing===0){if(this._stream.push(null),X)this._stream._detach();return X&&this._locked===!1}return X}_createStream(){return new _s6(this,this._header,this._offset)}_update(){while(this._buffer.buffered>0&&!this.destroying){if(this._missing>0){if(this._stream!==null){if(this._consumeStream()===!1)return;continue}if(this._longHeader===!0){if(this._missing>this._buffer.buffered)break;if(this._consumeLongHeader()===!1)return!1;continue}let Y=this._buffer.shiftFirst(this._missing);if(Y!==null)this._missing-=Y.byteLength;continue}if(this._buffer.buffered<512)break;if(this._stream!==null||this._consumeHeader()===!1)return}this._continueWrite(null)}_continueWrite(Y){let X=this._callback;this._callback=wM0,X(Y)}_write(Y,X){this._callback=X,this._buffer.push(Y),this._update()}_final(Y){this._finished=this._missing===0&&this._buffer.buffered===0,Y(this._finished?null:Error("Unexpected end of data"))}_predestroy(){this._continueWrite(null)}_destroy(Y){if(this._stream)this._stream.destroy(ks6(this));Y(null)}[Symbol.asyncIterator](){let Y=null,X=null,G=null,Q=null,J=null,$=this;return this.on("entry",K),this.on("error",(N)=>{Y=N}),this.on("close",H),{[Symbol.asyncIterator](){return this},next(){return new Promise(W)},return(){return U(null)},throw(N){return U(N)}};function Z(N){if(!J)return;let B=J;J=null,B(N)}function W(N,B){if(Y)return B(Y);if(Q){N({value:Q,done:!1}),Q=null;return}if(X=N,G=B,Z(null),$._finished&&X)X({value:void 0,done:!0}),X=G=null}function K(N,B,O){if(J=O,B.on("error",wM0),X)X({value:B,done:!1}),X=G=null;else Q=B}function H(){if(Z(Y),!X)return;if(Y)G(Y);else X({value:void 0,done:!0});X=G=null}function U(N){return $.destroy(N),Z(N),new Promise((B,O)=>{if($.destroyed)return B({value:void 0,done:!0});$.once("close",function(){if(N)O(N);else B({value:void 0,done:!0})})})}}}ys6.exports=function(X){return new fs6(X)};function wM0(){}function bs6(Y){return Y&=511,Y&&512-Y}});var gs6=k((HVG,LM0)=>{var xs6={S_IFMT:61440,S_IFDIR:16384,S_IFCHR:8192,S_IFBLK:24576,S_IFIFO:4096,S_IFLNK:40960};try{LM0.exports=_1("fs").constants||xs6}catch{LM0.exports=xs6}});var ps6=k((FVG,is6)=>{var{Readable:xl5,Writable:gl5,getStreamError:us6}=OM0(),lu=Ut(),Ot=gs6(),Zu1=DM0(),ls6=lu.alloc(1024);class ms6 extends gl5{constructor(Y,X,G){super({mapWritable:ll5,eagerOpen:!0});if(this.written=0,this.header=X,this._callback=G,this._linkname=null,this._isLinkname=X.type==="symlink"&&!X.linkname,this._isVoid=X.type!=="file"&&X.type!=="contiguous-file",this._finished=!1,this._pack=Y,this._openCallback=null,this._pack._stream===null)this._pack._stream=this;else this._pack._pending.push(this)}_open(Y){if(this._openCallback=Y,this._pack._stream===this)this._continueOpen()}_continuePack(Y){if(this._callback===null)return;let X=this._callback;this._callback=null,X(Y)}_continueOpen(){if(this._pack._stream===null)this._pack._stream=this;let Y=this._openCallback;if(this._openCallback=null,Y===null)return;if(this._pack.destroying)return Y(Error("pack stream destroyed"));if(this._pack._finalized)return Y(Error("pack stream is already finalized"));if(this._pack._stream=this,!this._isLinkname)this._pack._encode(this.header);if(this._isVoid)this._finish(),this._continuePack(null);Y(null)}_write(Y,X){if(this._isLinkname)return this._linkname=this._linkname?lu.concat([this._linkname,Y]):Y,X(null);if(this._isVoid){if(Y.byteLength>0)return X(Error("No body allowed for this entry"));return X()}if(this.written+=Y.byteLength,this._pack.push(Y))return X();this._pack._drain=X}_finish(){if(this._finished)return;if(this._finished=!0,this._isLinkname)this.header.linkname=this._linkname?lu.toString(this._linkname,"utf-8"):"",this._pack._encode(this.header);cs6(this._pack,this.header.size),this._pack._done(this)}_final(Y){if(this.written!==this.header.size)return Y(Error("Size mismatch"));this._finish(),Y(null)}_getError(){return us6(this)||Error("tar entry destroyed")}_predestroy(){this._pack.destroy(this._getError())}_destroy(Y){this._pack._done(this),this._continuePack(this._finished?null:this._getError()),Y()}}class ds6 extends xl5{constructor(Y){super(Y);this._drain=EM0,this._finalized=!1,this._finalizing=!1,this._pending=[],this._stream=null}entry(Y,X,G){if(this._finalized||this.destroying)throw Error("already finalized or destroyed");if(typeof X==="function")G=X,X=null;if(!G)G=EM0;if(!Y.size||Y.type==="symlink")Y.size=0;if(!Y.type)Y.type=ul5(Y.mode);if(!Y.mode)Y.mode=Y.type==="directory"?493:420;if(!Y.uid)Y.uid=0;if(!Y.gid)Y.gid=0;if(!Y.mtime)Y.mtime=new Date;if(typeof X==="string")X=lu.from(X);let Q=new ms6(this,Y,G);if(lu.isBuffer(X))return Y.size=X.byteLength,Q.write(X),Q.end(),Q;if(Q._isVoid)return Q;return Q}finalize(){if(this._stream||this._pending.length>0){this._finalizing=!0;return}if(this._finalized)return;this._finalized=!0,this.push(ls6),this.push(null)}_done(Y){if(Y!==this._stream)return;if(this._stream=null,this._finalizing)this.finalize();if(this._pending.length)this._pending.shift()._continueOpen()}_encode(Y){if(!Y.pax){let X=Zu1.encode(Y);if(X){this.push(X);return}}this._encodePax(Y)}_encodePax(Y){let X=Zu1.encodePax({name:Y.name,linkname:Y.linkname,pax:Y.pax}),G={name:"PaxHeader",mode:Y.mode,uid:Y.uid,gid:Y.gid,size:X.byteLength,mtime:Y.mtime,type:"pax-header",linkname:Y.linkname&&"PaxHeader",uname:Y.uname,gname:Y.gname,devmajor:Y.devmajor,devminor:Y.devminor};this.push(Zu1.encode(G)),this.push(X),cs6(this,X.byteLength),G.size=Y.size,G.type=Y.type,this.push(Zu1.encode(G))}_doDrain(){let Y=this._drain;this._drain=EM0,Y()}_predestroy(){let Y=us6(this);if(this._stream)this._stream.destroy(Y);while(this._pending.length){let X=this._pending.shift();X.destroy(Y),X._continueOpen()}this._doDrain()}_read(Y){this._doDrain(),Y()}}is6.exports=function(X){return new ds6(X)};function ul5(Y){switch(Y&Ot.S_IFMT){case Ot.S_IFBLK:return"block-device";case Ot.S_IFCHR:return"character-device";case Ot.S_IFDIR:return"directory";case Ot.S_IFIFO:return"fifo";case Ot.S_IFLNK:return"symlink"}return"file"}function EM0(){}function cs6(Y,X){if(X&=511,X)Y.push(ls6.subarray(0,512-X))}function ll5(Y){return lu.isBuffer(Y)?Y:lu.from(Y)}});var ns6=k((ml5)=>{ml5.extract=hs6();ml5.pack=ps6()});var ts6=k((NVG,rs6)=>{rs6.exports=as6;function as6(Y,X){if(Y&&X)return as6(Y)(X);if(typeof Y!=="function")throw TypeError("need wrapper function");return Object.keys(Y).forEach(function(Q){G[Q]=Y[Q]}),G;function G(){var Q=Array(arguments.length);for(var J=0;J<Q.length;J++)Q[J]=arguments[J];var $=Y.apply(this,Q),Z=Q[Q.length-1];if(typeof $==="function"&&$!==Z)Object.keys(Z).forEach(function(W){$[W]=Z[W]});return $}}});var qM0=k((BVG,PM0)=>{var os6=ts6();PM0.exports=os6($u1);PM0.exports.strict=os6(ss6);$u1.proto=$u1(function(){Object.defineProperty(Function.prototype,"once",{value:function(){return $u1(this)},configurable:!0}),Object.defineProperty(Function.prototype,"onceStrict",{value:function(){return ss6(this)},configurable:!0})});function $u1(Y){var X=function(){if(X.called)return X.value;return X.called=!0,X.value=Y.apply(this,arguments)};return X.called=!1,X}function ss6(Y){var X=function(){if(X.called)throw Error(X.onceError);return X.called=!0,X.value=Y.apply(this,arguments)},G=Y.name||"Function wrapped with `once`";return X.onceError=G+" shouldn't be called more than once",X.called=!1,X}});var Xe6=k((OVG,Ye6)=>{var il5=qM0(),pl5=function(){},nl5=global.Bare?queueMicrotask:process.nextTick.bind(process),al5=function(Y){return Y.setHeader&&typeof Y.abort==="function"},rl5=function(Y){return Y.stdio&&Array.isArray(Y.stdio)&&Y.stdio.length===3},es6=function(Y,X,G){if(typeof X==="function")return es6(Y,null,X);if(!X)X={};G=il5(G||pl5);var{_writableState:Q,_readableState:J}=Y,$=X.readable||X.readable!==!1&&Y.readable,Z=X.writable||X.writable!==!1&&Y.writable,W=!1,K=function(){if(!Y.writable)H()},H=function(){if(Z=!1,!$)G.call(Y)},U=function(){if($=!1,!Z)G.call(Y)},N=function(E){G.call(Y,E?Error("exited with error code: "+E):null)},B=function(E){G.call(Y,E)},O=function(){nl5(z)},z=function(){if(W)return;if($&&!(J&&(J.ended&&!J.destroyed)))return G.call(Y,Error("premature close"));if(Z&&!(Q&&(Q.ended&&!Q.destroyed)))return G.call(Y,Error("premature close"))},w=function(){Y.req.on("finish",H)};if(al5(Y))if(Y.on("complete",H),Y.on("abort",O),Y.req)w();else Y.on("request",w);else if(Z&&!Q)Y.on("end",K),Y.on("close",K);if(rl5(Y))Y.on("exit",N);if(Y.on("end",U),Y.on("finish",H),X.error!==!1)Y.on("error",B);return Y.on("close",O),function(){if(W=!0,Y.removeListener("complete",H),Y.removeListener("abort",O),Y.removeListener("request",w),Y.req)Y.req.removeListener("finish",H);Y.removeListener("end",K),Y.removeListener("close",K),Y.removeListener("finish",H),Y.removeListener("exit",N),Y.removeListener("end",U),Y.removeListener("error",B),Y.removeListener("close",O)}};Ye6.exports=es6});var Je6=k((zVG,Qe6)=>{var tl5=qM0(),ol5=Xe6(),Wu1;try{Wu1=_1("fs")}catch(Y){}var IQ1=function(){},sl5=typeof process>"u"?!1:/^v?\.0/.test(process.version),Ku1=function(Y){return typeof Y==="function"},el5=function(Y){if(!sl5)return!1;if(!Wu1)return!1;return(Y instanceof(Wu1.ReadStream||IQ1)||Y instanceof(Wu1.WriteStream||IQ1))&&Ku1(Y.close)},Ym5=function(Y){return Y.setHeader&&Ku1(Y.abort)},Xm5=function(Y,X,G,Q){Q=tl5(Q);var J=!1;Y.on("close",function(){J=!0}),ol5(Y,{readable:X,writable:G},function(Z){if(Z)return Q(Z);J=!0,Q()});var $=!1;return function(Z){if(J)return;if($)return;if($=!0,el5(Y))return Y.close(IQ1);if(Ym5(Y))return Y.abort();if(Ku1(Y.destroy))return Y.destroy();Q(Z||Error("stream was destroyed"))}},Ge6=function(Y){Y()},Gm5=function(Y,X){return Y.pipe(X)},Qm5=function(){var Y=Array.prototype.slice.call(arguments),X=Ku1(Y[Y.length-1]||IQ1)&&Y.pop()||IQ1;if(Array.isArray(Y[0]))Y=Y[0];if(Y.length<2)throw Error("pump requires two streams per minimum");var G,Q=Y.map(function(J,$){var Z=$<Y.length-1,W=$>0;return Xm5(J,Z,W,function(K){if(!G)G=K;if(K)Q.forEach(Ge6);if(Z)return;Q.forEach(Ge6),X(G)})});return Y.reduce(Gm5)};Qe6.exports=Qm5});var Be6=k((Wm5)=>{var Ze6=ns6(),$e6=Je6(),We6=_1("fs"),aX=_1("path"),jQ1=(global.Bare?global.Bare.platform:process.platform)==="win32";Wm5.pack=function(X,G){if(!X)X=".";if(!G)G={};let Q=G.fs||We6,J=G.ignore||G.filter||TQ1,$=G.mapStream||Ue6,Z=$m5(Q,G.dereference?Q.stat:Q.lstat,X,J,G.entries,G.sort),W=G.strict!==!1,K=typeof G.umask==="number"?~G.umask:~Ke6(),H=G.pack||Ze6.pack(),U=G.finish||TQ1,N=G.map||TQ1,B=typeof G.dmode==="number"?G.dmode:0,O=typeof G.fmode==="number"?G.fmode:0;if(G.strip)N=Ne6(N,G.strip);if(G.readable)B|=parseInt(555,8),O|=parseInt(444,8);if(G.writable)B|=parseInt(333,8),O|=parseInt(222,8);E();function z(P,I){Q.readlink(aX.join(X,P),function(V,M){if(V)return H.destroy(V);I.linkname=AM0(M),H.entry(I,E)})}function w(P,I,V){if(H.destroyed)return;if(P)return H.destroy(P);if(!I){if(G.finalize!==!1)H.finalize();return U(H)}if(V.isSocket())return E();let M={name:AM0(I),mode:(V.mode|(V.isDirectory()?B:O))&K,mtime:V.mtime,size:V.size,type:"file",uid:V.uid,gid:V.gid};if(V.isDirectory())return M.size=0,M.type="directory",M=N(M)||M,H.entry(M,E);if(V.isSymbolicLink())return M.size=0,M.type="symlink",M=N(M)||M,z(I,M);if(M=N(M)||M,!V.isFile()){if(W)return H.destroy(Error("unsupported type for "+I));return E()}let T=H.entry(M,E),S=$(Q.createReadStream(aX.join(X,I),{start:0,end:M.size>0?M.size-1:M.size}),M);S.on("error",function(C){T.destroy(C)}),$e6(S,T)}function E(P){if(P)return H.destroy(P);Z(w)}return H};function Jm5(Y){return Y.length?Y[Y.length-1]:null}function Zm5(){return!global.Bare&&process.getuid?process.getuid():-1}function Ke6(){return!global.Bare&&process.umask?process.umask():0}Wm5.extract=function(X,G){if(!X)X=".";if(!G)G={};X=aX.resolve(X);let Q=G.fs||We6,J=G.ignore||G.filter||TQ1,$=G.mapStream||Ue6,Z=G.chown!==!1&&!jQ1&&Zm5()===0,W=G.extract||Ze6.extract(),K=[],H=new Date,U=typeof G.umask==="number"?~G.umask:~Ke6(),N=G.strict!==!1,B=G.validateSymlinks!==!1,O=G.map||TQ1,z=typeof G.dmode==="number"?G.dmode:0,w=typeof G.fmode==="number"?G.fmode:0;if(G.strip)O=Ne6(O,G.strip);if(G.readable)z|=parseInt(555,8),w|=parseInt(444,8);if(G.writable)z|=parseInt(333,8),w|=parseInt(222,8);if(W.on("entry",E),G.finish)W.on("finish",G.finish);return W;function E(T,S,C){T=O(T)||T,T.name=AM0(T.name);let _=aX.join(X,aX.join("/",T.name));if(J(_,T))return S.resume(),C();let v=aX.join(_,".")===aX.join(X,".")?X:aX.dirname(_);Fe6(Q,v,aX.join(X,"."),function(m,e){if(m)return C(m);if(!e)return C(Error(v+" is not a valid path"));if(T.type==="directory")return K.push([_,T.mtime]),M(_,{fs:Q,own:Z,uid:T.uid,gid:T.gid,mode:T.mode},y);M(v,{fs:Q,own:Z,uid:T.uid,gid:T.gid,mode:493},function(s){if(s)return C(s);switch(T.type){case"file":return b();case"link":return i();case"symlink":return g()}if(N)return C(Error("unsupported type for "+_+" ("+T.type+")"));S.resume(),C()})});function y(m){if(m)return C(m);I(_,T,function(e){if(e)return C(e);if(jQ1)return C();V(_,T,C)})}function g(){if(jQ1)return C();Q.unlink(_,function(){let m=aX.resolve(aX.dirname(_),T.linkname);if(!n(m)&&B)return C(Error(_+" is not a valid symlink"));He6(Q,m,aX.join(X,"."),function(e,s){if(e)return C(e);if(!s&&B)return C(Error(_+" is not a valid symlink"));Q.symlink(T.linkname,_,y)})})}function i(){if(jQ1)return C();Q.unlink(_,function(){let m=aX.join(X,aX.join("/",T.linkname));Q.realpath(m,function(e,s){if(e||!n(s))return C(Error(_+" is not a valid hardlink"));Q.link(s,_,function(O1){if(O1&&O1.code==="EPERM"&&G.hardlinkAsFilesFallback)return S=Q.createReadStream(s),b();y(O1)})})})}function n(m){return m===X||m.startsWith(X+aX.sep)}function b(){let m=Q.createWriteStream(_),e=$(S,T);m.on("error",function(s){e.destroy(s)}),$e6(e,m,function(s){if(s)return C(s);m.on("close",y)})}}function P(T,S){let C;while((C=Jm5(K))&&T.slice(0,C[0].length)!==C[0])K.pop();if(!C)return S();Q.utimes(C[0],H,C[1],S)}function I(T,S,C){if(G.utimes===!1)return C();if(S.type==="directory")return Q.utimes(T,H,S.mtime,C);if(S.type==="symlink")return P(T,C);Q.utimes(T,H,S.mtime,function(_){if(_)return C(_);P(T,C)})}function V(T,S,C){let _=S.type==="symlink",v=_?Q.lchmod:Q.chmod,y=_?Q.lchown:Q.chown;if(!v)return C();let g=(S.mode|(S.type==="directory"?z:w))&U;if(y&&Z)y.call(Q,T,S.uid,S.gid,i);else i(null);function i(n){if(n)return C(n);if(!v)return C();v.call(Q,T,g,C)}}function M(T,S,C){Q.stat(T,function(_){if(!_)return C(null);if(_.code!=="ENOENT")return C(_);Q.mkdir(T,{mode:S.mode,recursive:!0},function(v,y){if(v)return C(v);V(T,S,C)})})}};function He6(Y,X,G,Q){if(X===G)return Q(null,!0);if(!X.startsWith(G+aX.sep))return Q(null,!1);Y.lstat(X,function(J,$){if(J&&J.code!=="ENOENT"&&J.code!=="EPERM")return Q(J);if(J||!$.isSymbolicLink())return He6(Y,aX.join(X,".."),G,Q);Q(null,!1)})}function Fe6(Y,X,G,Q){if(X===G)return Q(null,!0);Y.lstat(X,function(J,$){if(J&&J.code!=="ENOENT"&&J.code!=="EPERM")return Q(J);if(J||$.isDirectory())return Fe6(Y,aX.join(X,".."),G,Q);Q(null,!1)})}function TQ1(){}function Ue6(Y){return Y}function AM0(Y){return jQ1?Y.replace(/\\/g,"/").replace(/[:?<>|]/g,"_"):Y}function $m5(Y,X,G,Q,J,$){if(!J)J=["."];let Z=J.slice(0);return function(K){if(!Z.length)return K(null);let H=Z.shift(),U=aX.join(G,H);X.call(Y,U,function(N,B){if(N)return K(J.indexOf(H)===-1&&N.code==="ENOENT"?null:N);if(!B.isDirectory())return K(null,H,B);Y.readdir(U,function(O,z){if(O)return K(O);if($)z.sort();for(let w=0;w<z.length;w++)if(!Q(aX.join(G,H,z[w])))Z.push(aX.join(H,z[w]));K(null,H,B)})})}}function Ne6(Y,X){return function(G){G.name=G.name.split("/").slice(X).join("/");let Q=G.linkname;if(Q&&(G.type==="link"||aX.isAbsolute(Q)))G.linkname=Q.split("/").slice(X).join("/");return Y(G)}}});var Fm5,Um5;var Oe6=D(()=>{$M0();Fm5=X1(Xs6(),1),Um5=X1(Be6(),1)});var Hu1=()=>{};var ze6=D(()=>{Ig1()});var De6=D(()=>{tg1();rg1();Hu1()});var we6=()=>{};var Le6=()=>{};var IM0=D(()=>{yo6();JM0();tg1();lo6();GM0();$M0();mo6();do6();co6();io6();QM0();po6();Oe6();Hu1();ze6();De6();we6();Le6();Hu1()});var W$,g7,zt,VQ1;var Fu1=D(()=>{W$={CLAIM_API_GROUP:"extensions.agents.x-k8s.io",CLAIM_API_VERSION:"v1alpha1",CLAIM_PLURAL:"sandboxclaims",SANDBOX_API_GROUP:"agents.x-k8s.io",SANDBOX_API_VERSION:"v1alpha1",SANDBOX_PLURAL:"sandboxes",POD_NAME_ANNOTATION:"agents.x-k8s.io/pod-name"};g7=class g7 extends Error{cause;constructor(Y,X){super(Y);if(this.name="SandboxError",this.cause=X,X instanceof Error&&X.stack)this.stack=`${this.stack}
|
|
4601
|
-
Caused by: ${X.stack}`}};zt=class zt extends g7{constructor(Y,X){super(Y,X);this.name="SandboxTimeoutError"}};VQ1=class VQ1 extends g7{constructor(Y,X){super(Y,X);this.name="SandboxAlreadyExistsError"}}});async function Nm5(Y){let X=Y.getCurrentCluster();if(!X)throw new g7("No active cluster in kubeconfig");let G={};await Y.applyToHTTPSOptions(G);let Q={},J=G.headers??{};for(let[$,Z]of Object.entries(J))if(Array.isArray(Z))Q[$]=Z.join(", ");else if(Z!==void 0)Q[$]=String(Z);if(typeof G.auth==="string"&&!Q.Authorization)Q.Authorization=`Basic ${Buffer.from(G.auth).toString("base64")}`;return{server:X.server.replace(/\/+$/,""),headers:Q,tls:{cert:jM0(G.cert),key:jM0(G.key),ca:jM0(G.ca),rejectUnauthorized:X.skipTLSVerify?!1:void 0}}}function jM0(Y){if(Y==null)return;if(typeof Y==="string")return Y;if(Buffer.isBuffer(Y))return Y.toString("utf8");return String(Y)}async function MQ1(Y,X){let G=await Nm5(Y),Q={...G.headers,...X.headers};if(X.method==="PATCH")Q["content-type"]=X.patchType==="apply"?"application/apply-patch+yaml":X.patchType==="strategic-merge"?"application/strategic-merge-patch+json":"application/merge-patch+json";else if(X.body!==void 0&&!("content-type"in Q))Q["content-type"]="application/json";let J={method:X.method,headers:Q,body:X.body===void 0?void 0:JSON.stringify(X.body),signal:X.signal,tls:G.tls};return fetch(`${G.server}${X.path}`,J)}async function VM0(Y){try{return await Y.json()}catch{return null}}async function MM0(Y,X){if(Y.ok)return;let G=await VM0(Y),Q=G?.message??`${X} failed: ${Y.status} ${Y.statusText}`;throw new TM0(Y.status,G,Q)}async function RQ1(Y,X,G,Q,J="none"){try{let $=await MQ1(Y,X);if($.status===404)return null;if(await MM0($,G),J==="json")return await $.json();return null}catch($){throw new g7(Q,$)}}async function SQ1(Y,X,G){let Q=`${Ee6}/${encodeURIComponent(X)}/${W$.CLAIM_PLURAL}`,J;try{J=await MQ1(Y,{method:"POST",path:Q,body:G})}catch(H){throw new g7(`Failed to create SandboxClaim: ${G.metadata.name}`,H)}if(J.ok)return;let $=await VM0(J),Z=$?.reason?` ${$.reason}`:"",W=$?.message??J.statusText,K=`Failed to create SandboxClaim: ${G.metadata.name} (${J.status}${Z}: ${W})`;if(console.warn(`[agent-sandbox/client] createSandboxClaim ${G.metadata.name} rejected: status=${J.status} reason=${$?.reason??"<none>"} message=${W}`),J.status===409)throw new VQ1(K);throw new g7(K)}async function Uu1(Y,X,G,Q=60000){let J=Date.now()+Q,$=500,Z;while(!0){let W=await du(Y,X,G).catch(()=>{return});if(!W)return;if(Z=W,Date.now()>=J){let K=Z.metadata?.finalizers??[],H=Z.metadata?.deletionTimestamp??"<unknown>";throw new zt(`SandboxClaim ${G} still terminating after ${Q}ms (deletionTimestamp=${H}, finalizers=[${K.join(", ")}])`)}await new Promise((K)=>setTimeout(K,500))}}function RM0(Y,X){return`${Ee6}/${encodeURIComponent(Y)}/${W$.CLAIM_PLURAL}/${encodeURIComponent(X)}`}async function Pe6(Y,X,G,Q){await RQ1(Y,{method:"PATCH",path:RM0(X,G),patchType:"merge",body:{spec:{lifecycle:{shutdownPolicy:"Delete",shutdownTime:Q}}}},"patchSandboxClaimShutdown",`Failed to patch SandboxClaim shutdownTime: ${G}`)}async function mu(Y,X,G){await RQ1(Y,{method:"DELETE",path:RM0(X,G)},"deleteSandboxClaim",`Failed to delete SandboxClaim: ${G}`)}async function du(Y,X,G){return await RQ1(Y,{method:"GET",path:RM0(X,G)},"getSandboxClaim",`Failed to get SandboxClaim: ${G}`,"json")??void 0}function je6(Y,X){return`${Ie6}/${encodeURIComponent(Y)}/${SM0}/${encodeURIComponent(X)}`}function Bm5(Y){return`${Ie6}/${encodeURIComponent(Y)}/${SM0}`}async function Nu1(Y,X,G){try{let Q=await MQ1(Y,{method:"POST",path:Bm5(X),body:G});if(Q.status===409)return;await MM0(Q,"createHttpRoute")}catch(Q){if(Q instanceof TM0&&Q.status===409)return;throw new g7(`Failed to create HTTPRoute: ${G.metadata.name}`,Q)}}async function Bu1(Y,X,G){await RQ1(Y,{method:"DELETE",path:je6(X,G)},"deleteHttpRoute",`Failed to delete HTTPRoute: ${G}`)}async function Te6(Y,X,G){return await RQ1(Y,{method:"GET",path:je6(X,G)},"getHttpRoute",`Failed to get HTTPRoute: ${G}`,"json")??void 0}async function Ve6(Y,X,G,Q){let J={apiVersion:"v1",kind:"Service",metadata:{name:G},spec:{ports:[{name:Q.name,port:Q.port,targetPort:Q.targetPort,protocol:Q.protocol??"TCP"}]}},$=new URLSearchParams({fieldManager:Om5,force:"true"}),Z=`/api/v1/namespaces/${encodeURIComponent(X)}/services/${encodeURIComponent(G)}?${$}`;try{let W=await MQ1(Y,{method:"PATCH",path:Z,patchType:"apply",body:J});await MM0(W,"ensureServicePort")}catch(W){throw new g7(`Failed to apply Service ports: ${G}`,W)}}function Ou1(Y,X,G,Q=180){let J=`/apis/${W$.SANDBOX_API_GROUP}/${W$.SANDBOX_API_VERSION}/namespaces/${encodeURIComponent(X)}/${W$.SANDBOX_PLURAL}?watch=true&fieldSelector=${encodeURIComponent(`metadata.name=${G}`)}`,{resolve:$,reject:Z,promise:W}=Promise.withResolvers(),K=new AbortController,H=!1,U=setTimeout(()=>{if(H)return;H=!0,K.abort(),Z(new zt(`Sandbox did not become ready within ${Q} seconds`))},Q*1000),N=(B)=>{if(H)return;H=!0,clearTimeout(U),K.abort(),B()};return(async()=>{let B;try{B=await MQ1(Y,{method:"GET",path:J,signal:K.signal,headers:{accept:"application/json"}})}catch(O){N(()=>Z(new g7("Failed to start watch for sandbox readiness",O)));return}if(!B.ok||!B.body){let O=await VM0(B).catch(()=>null);N(()=>Z(new g7(`Watch handshake failed (${B.status}): ${O?.message??B.statusText}`)));return}try{for await(let O of zm5(B.body)){if(H)return;if(O.type==="ERROR"){let I=O.object;N(()=>Z(new g7(`Watch stream error while waiting for sandbox: ${I.message??"unknown"}`)));return}if(O.type!=="ADDED"&&O.type!=="MODIFIED")continue;let z=O.object;if(!z.status?.conditions?.find((I)=>I.type==="Ready"&&I.status==="True"))continue;let E=z.metadata?.name;if(!E){N(()=>Z(new g7("Sandbox metadata or name is missing")));return}let P=z.metadata?.annotations?.[W$.POD_NAME_ANNOTATION]??E;N(()=>$({sandboxName:E,podName:P}));return}N(()=>Z(new g7("Watch stream closed before sandbox became ready")))}catch(O){if(H)return;if(O instanceof Error&&(O.name==="AbortError"||K.signal.aborted))return;N(()=>Z(new g7("Watch stream error while waiting for sandbox",O)))}})(),W}async function*zm5(Y){let X=Y.getReader(),G=new TextDecoder,Q="";try{while(!0){let{value:$,done:Z}=await X.read();if(Z)break;Q+=G.decode($,{stream:!0});let W;while((W=Q.indexOf(`
|
|
4601
|
+
Caused by: ${X.stack}`}};zt=class zt extends g7{constructor(Y,X){super(Y,X);this.name="SandboxTimeoutError"}};VQ1=class VQ1 extends g7{constructor(Y,X){super(Y,X);this.name="SandboxAlreadyExistsError"}}});async function Nm5(Y){let X=Y.getCurrentCluster();if(!X)throw new g7("No active cluster in kubeconfig");let G={};await Y.applyToHTTPSOptions(G);let Q={},J=G.headers??{};for(let[$,Z]of Object.entries(J))if(Array.isArray(Z))Q[$]=Z.join(", ");else if(Z!==void 0)Q[$]=String(Z);if(typeof G.auth==="string"&&!Q.Authorization)Q.Authorization=`Basic ${Buffer.from(G.auth).toString("base64")}`;return{server:X.server.replace(/\/+$/,""),headers:Q,tls:{cert:jM0(G.cert),key:jM0(G.key),ca:jM0(G.ca),rejectUnauthorized:X.skipTLSVerify?!1:void 0}}}function jM0(Y){if(Y==null)return;if(typeof Y==="string")return Y;if(Buffer.isBuffer(Y))return Y.toString("utf8");return String(Y)}async function MQ1(Y,X){let G=await Nm5(Y),Q={...G.headers,...X.headers};if(X.method==="PATCH")Q["content-type"]=X.patchType==="apply"?"application/apply-patch+yaml":X.patchType==="strategic-merge"?"application/strategic-merge-patch+json":"application/merge-patch+json";else if(X.body!==void 0&&!("content-type"in Q))Q["content-type"]="application/json";let J={method:X.method,headers:Q,body:X.body===void 0?void 0:JSON.stringify(X.body),signal:X.signal,tls:G.tls};return fetch(`${G.server}${X.path}`,J)}async function VM0(Y){try{return await Y.json()}catch{return null}}async function MM0(Y,X){if(Y.ok)return;let G=await VM0(Y),Q=G?.message??`${X} failed: ${Y.status} ${Y.statusText}`;throw new TM0(Y.status,G,Q)}async function RQ1(Y,X,G,Q,J="none"){try{let $=await MQ1(Y,X);if($.status===404)return null;if(await MM0($,G),J==="json")return await $.json();return null}catch($){throw new g7(Q,$)}}async function SQ1(Y,X,G){let Q=`${Ee6}/${encodeURIComponent(X)}/${W$.CLAIM_PLURAL}`,J;try{J=await MQ1(Y,{method:"POST",path:Q,body:G})}catch(H){let U=H instanceof Error?H.message:String(H);throw console.warn(`[agent-sandbox/client] createSandboxClaim ${G.metadata.name} transport error: ${U}`),new g7(`Failed to create SandboxClaim: ${G.metadata.name} (transport error: ${U})`,H)}if(J.ok)return;let $=await VM0(J),Z=$?.reason?` ${$.reason}`:"",W=$?.message??J.statusText,K=`Failed to create SandboxClaim: ${G.metadata.name} (${J.status}${Z}: ${W})`;if(console.warn(`[agent-sandbox/client] createSandboxClaim ${G.metadata.name} rejected: status=${J.status} reason=${$?.reason??"<none>"} message=${W}`),J.status===409)throw new VQ1(K);throw new g7(K)}async function Uu1(Y,X,G,Q=60000){let J=Date.now()+Q,$=500,Z;while(!0){let W=await du(Y,X,G).catch(()=>{return});if(!W)return;if(Z=W,Date.now()>=J){let K=Z.metadata?.finalizers??[],H=Z.metadata?.deletionTimestamp??"<unknown>";throw new zt(`SandboxClaim ${G} still terminating after ${Q}ms (deletionTimestamp=${H}, finalizers=[${K.join(", ")}])`)}await new Promise((K)=>setTimeout(K,500))}}function RM0(Y,X){return`${Ee6}/${encodeURIComponent(Y)}/${W$.CLAIM_PLURAL}/${encodeURIComponent(X)}`}async function Pe6(Y,X,G,Q){await RQ1(Y,{method:"PATCH",path:RM0(X,G),patchType:"merge",body:{spec:{lifecycle:{shutdownPolicy:"Delete",shutdownTime:Q}}}},"patchSandboxClaimShutdown",`Failed to patch SandboxClaim shutdownTime: ${G}`)}async function mu(Y,X,G){await RQ1(Y,{method:"DELETE",path:RM0(X,G)},"deleteSandboxClaim",`Failed to delete SandboxClaim: ${G}`)}async function du(Y,X,G){return await RQ1(Y,{method:"GET",path:RM0(X,G)},"getSandboxClaim",`Failed to get SandboxClaim: ${G}`,"json")??void 0}function je6(Y,X){return`${Ie6}/${encodeURIComponent(Y)}/${SM0}/${encodeURIComponent(X)}`}function Bm5(Y){return`${Ie6}/${encodeURIComponent(Y)}/${SM0}`}async function Nu1(Y,X,G){try{let Q=await MQ1(Y,{method:"POST",path:Bm5(X),body:G});if(Q.status===409)return;await MM0(Q,"createHttpRoute")}catch(Q){if(Q instanceof TM0&&Q.status===409)return;throw new g7(`Failed to create HTTPRoute: ${G.metadata.name}`,Q)}}async function Bu1(Y,X,G){await RQ1(Y,{method:"DELETE",path:je6(X,G)},"deleteHttpRoute",`Failed to delete HTTPRoute: ${G}`)}async function Te6(Y,X,G){return await RQ1(Y,{method:"GET",path:je6(X,G)},"getHttpRoute",`Failed to get HTTPRoute: ${G}`,"json")??void 0}async function Ve6(Y,X,G,Q){let J={apiVersion:"v1",kind:"Service",metadata:{name:G},spec:{ports:[{name:Q.name,port:Q.port,targetPort:Q.targetPort,protocol:Q.protocol??"TCP"}]}},$=new URLSearchParams({fieldManager:Om5,force:"true"}),Z=`/api/v1/namespaces/${encodeURIComponent(X)}/services/${encodeURIComponent(G)}?${$}`;try{let W=await MQ1(Y,{method:"PATCH",path:Z,patchType:"apply",body:J});await MM0(W,"ensureServicePort")}catch(W){throw new g7(`Failed to apply Service ports: ${G}`,W)}}function Ou1(Y,X,G,Q=180){let J=`/apis/${W$.SANDBOX_API_GROUP}/${W$.SANDBOX_API_VERSION}/namespaces/${encodeURIComponent(X)}/${W$.SANDBOX_PLURAL}?watch=true&fieldSelector=${encodeURIComponent(`metadata.name=${G}`)}`,{resolve:$,reject:Z,promise:W}=Promise.withResolvers(),K=new AbortController,H=!1,U=setTimeout(()=>{if(H)return;H=!0,K.abort(),Z(new zt(`Sandbox did not become ready within ${Q} seconds`))},Q*1000),N=(B)=>{if(H)return;H=!0,clearTimeout(U),K.abort(),B()};return(async()=>{let B;try{B=await MQ1(Y,{method:"GET",path:J,signal:K.signal,headers:{accept:"application/json"}})}catch(O){N(()=>Z(new g7("Failed to start watch for sandbox readiness",O)));return}if(!B.ok||!B.body){let O=await VM0(B).catch(()=>null);N(()=>Z(new g7(`Watch handshake failed (${B.status}): ${O?.message??B.statusText}`)));return}try{for await(let O of zm5(B.body)){if(H)return;if(O.type==="ERROR"){let I=O.object;N(()=>Z(new g7(`Watch stream error while waiting for sandbox: ${I.message??"unknown"}`)));return}if(O.type!=="ADDED"&&O.type!=="MODIFIED")continue;let z=O.object;if(!z.status?.conditions?.find((I)=>I.type==="Ready"&&I.status==="True"))continue;let E=z.metadata?.name;if(!E){N(()=>Z(new g7("Sandbox metadata or name is missing")));return}let P=z.metadata?.annotations?.[W$.POD_NAME_ANNOTATION]??E;N(()=>$({sandboxName:E,podName:P}));return}N(()=>Z(new g7("Watch stream closed before sandbox became ready")))}catch(O){if(H)return;if(O instanceof Error&&(O.name==="AbortError"||K.signal.aborted))return;N(()=>Z(new g7("Watch stream error while waiting for sandbox",O)))}})(),W}async function*zm5(Y){let X=Y.getReader(),G=new TextDecoder,Q="";try{while(!0){let{value:$,done:Z}=await X.read();if(Z)break;Q+=G.decode($,{stream:!0});let W;while((W=Q.indexOf(`
|
|
4602
4602
|
`))>=0){let K=Q.slice(0,W).trim();if(Q=Q.slice(W+1),!K)continue;yield JSON.parse(K)}}let J=Q.trim();if(J)yield JSON.parse(J)}finally{X.releaseLock()}}var TM0,Ee6,qe6="gateway.networking.k8s.io",Ae6="v1",SM0="httproutes",Ie6,kQ1,Om5="mesh-sandbox-runner";var kM0=D(()=>{Fu1();TM0=class TM0 extends Error{status;body;constructor(Y,X,G){super(G);this.status=Y;this.body=X;this.name="KubeHttpError"}};Ee6=`/apis/${W$.CLAIM_API_GROUP}/${W$.CLAIM_API_VERSION}/namespaces`;Ie6=`/apis/${qe6}/${Ae6}/namespaces`;kQ1={API_GROUP:qe6,API_VERSION:Ae6,PLURAL:SM0}});import{createHash as Dm5,randomBytes as wm5,randomUUID as Lm5}from"crypto";import*as ke6 from"net";import{PassThrough as Em5}from"stream";class hM0{kind=tB;records=new Map;inflight=new lq;stateStore;previewUrlPattern;kubeConfig;portForward;namespace;sandboxTemplateName;tokenGenerator;idleTtlMs;metrics;previewGateway;constructor(Y={}){this.stateStore=Y.stateStore??null,this.previewUrlPattern=Y.previewUrlPattern??null,this.kubeConfig=Y.kubeConfig??km5(),this.portForward=new WM0(this.kubeConfig),this.namespace=Y.namespace??Pm5,this.sandboxTemplateName=Y.sandboxTemplateName??qm5,this.tokenGenerator=Y.tokenGenerator??(()=>wm5(Im5).toString("hex")),this.idleTtlMs=Y.idleTtlMs??Tm5,this.metrics=Y.meter?Sm5(Y.meter):null,this.previewGateway=Y.previewGateway&&Y.previewUrlPattern?{...Y.previewGateway}:null}async ensure(Y,X={}){let G=this.computeHandle(Y,X.repo?.branch??null);return this.inflight.run(G,()=>FM(this.stateStore,Y,tB,(Q)=>this.ensureLocked(Y,G,X,Q)))}async exec(Y,X){let G=await this.requireRecord(Y);return MV1(G.daemonUrl,G.token,X)}async delete(Y){let X=await this.getRecord(Y);if(this.records.delete(Y),X)this.closeForwarder(X.daemonForward),this.metrics?.active.add(-1,bM0(X.tenant));if(await this.deleteHttpRouteIfManaged(Y).catch((G)=>{console.warn(`[${PW}] HTTPRoute delete failed for ${Y}: ${G instanceof Error?G.message:String(G)}`)}),await mu(this.kubeConfig,this.namespace,Y),this.stateStore)if(X)await this.stateStore.delete(X.id,tB);else await this.stateStore.deleteByHandle(tB,Y)}async alive(Y){let X=await du(this.kubeConfig,this.namespace,Y).catch(()=>{return});return X?vM0(X):!1}async getPreviewUrl(Y){let X=await this.getRecord(Y);if(!X)return null;return this.composePreviewUrl(X)}async proxyDaemonRequest(Y,X,G){let Q=await this.getRecord(Y);if(!Q)return new Response(JSON.stringify({error:"sandbox not found"}),{status:404,headers:{"content-type":"application/json"}});let J=performance.now(),$=0;try{let Z=await RV1(Q.daemonUrl,Q.token,X,G);return $=Z.status,Z}finally{this.recordProxyDuration("daemon",$,Q,performance.now()-J)}}async resolvePreviewUpstreamUrl(Y){if(this.previewUrlPattern)return`http://${Y}.${this.namespace}.svc.cluster.local:${cu}`;let X=await this.getRecord(Y);if(X)return X.daemonUrl;let G=await this.resurrectByHandle(Y);return G?G.daemonUrl:null}async proxyPreviewRequest(Y,X){let G=performance.now(),Q=this.records.get(Y)??null,J=0;try{let $=await this.resolvePreviewUpstreamUrl(Y);if(!$)return J=404,_M0(404,{error:"sandbox not found"});let Z=new URL(X.url);if((Z.pathname==="/_decopilot_vm"||Z.pathname.startsWith("/_decopilot_vm/"))&&X.method!=="GET")return J=404,_M0(404,{error:"not found"});let K=(z)=>`${z}${Z.pathname}${Z.search}`,H=new Headers(X.headers);for(let z of Mm5)H.delete(z);let U=X.method!=="GET"&&X.method!=="HEAD",N={method:X.method,headers:H,body:U?X.body:void 0,redirect:"manual",signal:X.signal,duplex:U?"half":void 0},B;try{B=await fetch(K($),N)}catch(z){let w=`${$}${Z.pathname}`;if(console.warn(`[${PW}] preview fetch to ${w} failed: ${z instanceof Error?z.message:String(z)}`),X.method==="GET"||X.method==="HEAD"){if(this.invalidateRecord(Y),await this.resurrectByHandle(Y).catch(()=>null)){let P=await this.resolvePreviewUpstreamUrl(Y);if(P)try{B=await fetch(K(P),N);let I=new Headers;for(let[V,M]of B.headers.entries())if(!Me6.includes(V.toLowerCase()))I.set(V,M);return J=B.status,new Response(B.body,{status:B.status,statusText:B.statusText,headers:I})}catch(I){console.warn(`[${PW}] preview fetch retry to ${w} failed: ${I instanceof Error?I.message:String(I)}`)}}}else this.invalidateRecord(Y);return J=502,_M0(502,{error:"sandbox daemon unreachable"})}let O=new Headers;for(let[z,w]of B.headers.entries())if(!Me6.includes(z.toLowerCase()))O.set(z,w);return J=B.status,new Response(B.body,{status:B.status,statusText:B.statusText,headers:O})}finally{this.recordProxyDuration("preview",J,Q,performance.now()-G,Y)}}async ensureLocked(Y,X,G,Q){if(G.image)console.warn(`[${PW}] opts.image ignored (template ${this.sandboxTemplateName} pins image): got ${G.image}`);if(Q){let Z=await Q.get(Y,tB);if(Z){let W=await this.rehydrate(Y,X,Z);if(W)return this.finish(W,Q,!1,!0,"resume");await Q.delete(Y,tB)}}let J=await du(this.kubeConfig,this.namespace,X).catch(()=>{return});if(J)if(J.metadata?.deletionTimestamp)await Uu1(this.kubeConfig,this.namespace,X).catch((Z)=>{console.warn(`[${PW}] wait for terminating claim ${X} failed: ${Z instanceof Error?Z.message:String(Z)}`)});else{let Z=await this.adopt(Y,X,J).catch((W)=>{return console.warn(`[${PW}] adopt ${X} failed, recreating: ${W instanceof Error?W.message:String(W)}`),null});if(Z)return this.finish(Z,Q,!0,!0,"adopt");await mu(this.kubeConfig,this.namespace,X).catch(()=>{}),await Uu1(this.kubeConfig,this.namespace,X).catch((W)=>{console.warn(`[${PW}] wait for deleted claim ${X} failed: ${W instanceof Error?W.message:String(W)}`)})}let $=await this.provision(Y,X,G);return this.finish($,Q,!0,!1,"fresh")}async finish(Y,X,G,Q,J){let $=this.records.has(Y.handle);if(this.records.set(Y.handle,Y),G)await this.persist(X,Y);if(Q)await Pe6(this.kubeConfig,this.namespace,Y.handle,this.computeShutdownTime()).catch((Z)=>console.warn(`[${PW}] TTL refresh failed for ${Y.handle}: ${Z instanceof Error?Z.message:String(Z)}`));if(this.metrics){let Z=bM0(Y.tenant);if(this.metrics.ensureOutcome.add(1,{...Z,outcome:J}),!$)this.metrics.active.add(1,Z)}return this.toSandbox(Y)}buildEnvMap(Y,X){let G={},Q=[];for(let[Z,W]of Object.entries(Y.env??{}))if(jm5.has(Z))Q.push(Z);else G[Z]=W;if(Q.length>0)console.warn(`[${PW}] opts.env keys overlap reserved bootstrap names and were dropped: ${Q.join(",")}`);let J=Y.repo,$=J?J.displayName??xm5(J.cloneUrl):null;return{...G,DAEMON_TOKEN:X.token,DAEMON_BOOT_ID:X.daemonBootId,APP_ROOT:X.workdir,PROXY_PORT:String(cu),DEV_PORT:String(Y.workload?.devPort??Am5),RUNTIME:Y.workload?.runtime??"node",...J?{CLONE_URL:J.cloneUrl,REPO_NAME:$??"",BRANCH:J.branch??"",GIT_USER_NAME:J.userName,GIT_USER_EMAIL:J.userEmail}:{},...Y.workload?.packageManager?{PACKAGE_MANAGER:Y.workload.packageManager}:{}}}buildClaim(Y,X,G){let Q=this.buildEnvMap(X,G);return{apiVersion:`${W$.CLAIM_API_GROUP}/${W$.CLAIM_API_VERSION}`,kind:"SandboxClaim",metadata:{name:Y,namespace:this.namespace,labels:{"app.kubernetes.io/name":"studio-sandbox","app.kubernetes.io/managed-by":"studio",...fM0(X.tenant)}},spec:{sandboxTemplateRef:{name:this.sandboxTemplateName},additionalPodMetadata:{labels:fM0(X.tenant,{[XA.role]:"claimed",[XA.sandboxHandle]:Y})},env:Object.entries(Q).sort(([J],[$])=>J<$?-1:J>$?1:0).map(([J,$])=>({name:J,value:$})),warmpool:"none",lifecycle:{shutdownPolicy:"Delete",shutdownTime:this.computeShutdownTime()}}}}async provision(Y,X,G){let Q=this.tokenGenerator(),J=Lm5(),$=CM0,Z=this.buildClaim(X,G,{token:Q,daemonBootId:J,workdir:$});try{await SQ1(this.kubeConfig,this.namespace,Z)}catch(U){if(U instanceof VQ1)await Uu1(this.kubeConfig,this.namespace,X),await SQ1(this.kubeConfig,this.namespace,Z);else throw U}let{podName:W}=await Ou1(this.kubeConfig,this.namespace,X);try{await this.ensureServicePortForHandle(X),await this.ensureHttpRouteForHandle(X,G.tenant??null)}catch(U){throw await mu(this.kubeConfig,this.namespace,X).catch(()=>{}),U}let K=await this.openForwarder(W,cu,X),H=`http://127.0.0.1:${K.localPort}`;try{await VV1(H)}catch(U){throw this.closeForwarder(K),await this.deleteHttpRouteIfManaged(X).catch(()=>{}),await mu(this.kubeConfig,this.namespace,X).catch(()=>{}),U}return{id:Y,handle:X,podName:W,token:Q,workdir:$,daemonUrl:H,daemonForward:K,workload:G.workload??null,daemonBootId:J,tenant:G.tenant??null,ensureOpts:ym5(G)}}async ensureServicePortForHandle(Y){if(!this.previewGateway||!this.previewUrlPattern)return;await Ve6(this.kubeConfig,this.namespace,Y,{name:"daemon",port:cu,targetPort:cu})}async ensureHttpRouteForHandle(Y,X){if(!this.previewGateway||!this.previewUrlPattern)return;let G=hm5(this.previewUrlPattern,Y);if(!G)throw new g7(`Unable to derive preview hostname for ${Y} from pattern: ${this.previewUrlPattern}`);let Q={apiVersion:`${kQ1.API_GROUP}/${kQ1.API_VERSION}`,kind:"HTTPRoute",metadata:{name:Y,namespace:this.namespace,labels:fM0(X??void 0,{[XA.role]:"claimed",[XA.sandboxHandle]:Y,"app.kubernetes.io/name":"studio-sandbox","app.kubernetes.io/managed-by":"studio"})},spec:{parentRefs:[{kind:"Gateway",group:"gateway.networking.k8s.io",name:this.previewGateway.name,namespace:this.previewGateway.namespace}],hostnames:[G],rules:[{backendRefs:[{group:"",kind:"Service",name:Y,port:cu}]}]}};await Nu1(this.kubeConfig,this.namespace,Q)}async deleteHttpRouteIfManaged(Y){if(!this.previewGateway)return;await Bu1(this.kubeConfig,this.namespace,Y)}async rehydrate(Y,X,G){let Q=G.state;if(!Q.podName||!Q.token)return null;let J=await du(this.kubeConfig,this.namespace,X).catch(()=>{return});if(!J||!vM0(J))return null;let $=Re6(J)??Q.podName,Z=await this.openAndProbeDaemon($,X);if(!Z)return null;if(Q.daemonBootId&&Q.daemonBootId!==Z.bootId)console.warn(`[${PW}] daemon restart detected (handle=${X}): stored bootId=${Q.daemonBootId} live bootId=${Z.bootId}`);return{id:Y,handle:X,podName:$,token:Q.token,workdir:Q.workdir??CM0,daemonUrl:Z.daemonUrl,daemonForward:Z.daemonForward,workload:Q.workload??null,daemonBootId:Z.bootId,tenant:Q.tenant??null,ensureOpts:Q.ensureOpts??null}}async adopt(Y,X,G){if(!vM0(G))return null;let Q=Re6(G);if(!Q)return null;let J=Cm5(G);if(!J)return null;let $=await this.openAndProbeDaemon(Q,X);if(!$)return null;let Z=bm5(G);if(this.previewGateway)await this.ensureServicePortForHandle(X).catch((W)=>{console.warn(`[${PW}] Service port backfill failed for ${X}: ${W instanceof Error?W.message:String(W)}`)}),await this.ensureHttpRouteForHandle(X,Z).catch((W)=>{console.warn(`[${PW}] HTTPRoute backfill failed for ${X}: ${W instanceof Error?W.message:String(W)}`)});return{id:Y,handle:X,podName:Q,token:J,workdir:CM0,daemonUrl:$.daemonUrl,daemonForward:$.daemonForward,workload:null,daemonBootId:$.bootId,tenant:Z,ensureOpts:null}}async openAndProbeDaemon(Y,X){let G=await this.openForwarder(Y,cu,X).catch(()=>null);if(!G)return null;let Q=`http://127.0.0.1:${G.localPort}`,J=await mr(Q);if(!J)return this.closeForwarder(G),null;return{daemonForward:G,daemonUrl:Q,bootId:J.bootId}}async getRecord(Y){let X=this.records.get(Y);if(X)return X;if(!this.stateStore)return null;let G=await this.stateStore.getByHandle(tB,Y);if(!G)return null;let Q=await this.rehydrate(G.id,Y,G);if(Q)this.records.set(Y,Q);return Q}async resurrectByHandle(Y){if(!this.stateStore)return null;let X=await this.stateStore.getByHandle(tB,Y);if(!X)return null;let G=X.state.ensureOpts;if(!G)return null;return await this.ensure(X.id,G),this.records.get(Y)??null}async requireRecord(Y){let X=await this.getRecord(Y);if(X)return X;let G=await this.resurrectByHandle(Y);if(G)return G;throw Error(`unknown sandbox handle ${Y}`)}invalidateRecord(Y){let X=this.records.get(Y);if(!X)return;this.records.delete(Y),this.closeForwarder(X.daemonForward)}recordProxyDuration(Y,X,G,Q,J){if(!this.metrics)return;this.metrics.proxyDurationMs.record(Q,{...bM0(G?.tenant??null),source:Y,sandbox_handle:G?.handle??J??"",status_code:X||0})}computeHandle(Y,X){return`${CQ1}${UM(Y,X,{hashLen:Vm5})}`}composePreviewUrl(Y){if(this.previewUrlPattern)return NM(this.previewUrlPattern,Y.handle);return`http://127.0.0.1:${Y.daemonForward.localPort}/`}toSandbox(Y){return{handle:Y.handle,workdir:Y.workdir,previewUrl:this.composePreviewUrl(Y)}}async persist(Y,X){if(!Y)return;let G={podName:X.podName,token:X.token,workdir:X.workdir,workload:X.workload,daemonBootId:X.daemonBootId,tenant:X.tenant,...X.ensureOpts?{ensureOpts:X.ensureOpts}:{}};await Y.put(X.id,tB,{handle:X.handle,state:G})}computeShutdownTime(){return new Date(Date.now()+this.idleTtlMs).toISOString()}openForwarder(Y,X,G=Y){let Q=vm5(G,X);return new Promise((J,$)=>{let Z=(W,K)=>{let H=ke6.createServer((U)=>this.handleForwardedConnection(U,Y,X));H.once("error",(U)=>{if(U.code==="EADDRINUSE"&&K<Rm5){try{H.close()}catch{}let N=yM0+(W-yM0+1)%Ce6;Z(N,K+1);return}$(U)}),H.listen(W,"127.0.0.1",()=>{let U=H.address();if(!U||typeof U==="string"){H.close(),$(Error("port-forward listener failed to bind"));return}J({server:H,localPort:U.port})})};Z(Q,0)})}handleForwardedConnection(Y,X,G){let Q=new Em5,J=null,$=!1,Z=()=>{if($)return;if($=!0,Q.destroy(),J)try{J.close()}catch{}if(!Y.destroyed)Y.destroy()};Y.pipe(Q),Y.on("error",Z),Y.on("close",Z),this.portForward.portForward(this.namespace,X,[G],Y,null,Q).then((W)=>{let K=typeof W==="function"?W():W;if(!K){Z();return}if(J=K,J.on("close",Z),J.on("error",Z),$)try{J.close()}catch{}}).catch((W)=>{console.warn(`[${PW}] port-forward to ${X}:${G} failed: ${W instanceof Error?W.message:String(W)}`),Z()})}closeForwarder(Y){Y.server.close((X)=>{if(X)console.warn(`[${PW}] port-forward close on :${Y.localPort} errored: ${X instanceof Error?X.message:String(X)}`)})}}function Sm5(Y){return{active:Y.createUpDownCounter("studio.sandbox.active",{description:"Active sandbox count, by runner kind and owning org. Cross-checks the cAdvisor-derived count from the cluster \u2014 divergence between the two indicates orphaned claims (mesh deleted but K8s didn't reap) or unattributed pods.",unit:"{sandbox}"}),ensureOutcome:Y.createCounter("studio.sandbox.ensure.outcome",{description:"Outcome of each ensure() call: fresh provision, resume from state-store after restart, or adopt of a cluster-side claim mesh didn't know about. Cold-start ratio is the primary input for warm-pool sizing.",unit:"{call}"}),proxyDurationMs:Y.createHistogram("studio.sandbox.proxy.duration_ms",{description:"Wall-clock latency of mesh-mediated requests to the sandbox daemon: tool exec proxies (source=daemon) and preview iframe traffic (source=preview).",unit:"ms"})}}function km5(){let Y=new Ft;return Y.loadFromDefault(),Y}function vM0(Y){return Boolean(Y.status?.conditions?.some((X)=>X.type==="Ready"&&X.status==="True"))}function Cm5(Y){let X=Y.spec?.env;if(!X)return null;for(let G of X)if(G.name==="DAEMON_TOKEN"&&G.value)return G.value;return null}function Re6(Y){return Y.metadata?.annotations?.[W$.POD_NAME_ANNOTATION]??Y.metadata?.name??null}function vm5(Y,X){let G=Dm5("sha256").update(`${Y}:${X}`).digest();return yM0+G.readUInt32BE(0)%Ce6}function _M0(Y,X){return new Response(JSON.stringify(X),{status:Y,headers:{"content-type":"application/json","access-control-allow-origin":"*"}})}function Se6(Y){let X=Y.slice(0,fm5);return _m5.test(X)?X:""}function fM0(Y,X={}){let G={...X};if(Y){let Q=Se6(Y.orgId),J=Se6(Y.userId);if(Q)G[XA.orgId]=Q;if(J)G[XA.userId]=J}return G}function bm5(Y){let X=Y.metadata?.labels;if(!X)return null;let G=X[XA.orgId],Q=X[XA.userId];if(!G||!Q)return null;return{orgId:G,userId:Q}}function bM0(Y){return{org_id:Y?.orgId??"",user_id:Y?.userId??"",runner_kind:tB}}function ym5(Y){let X={};if(Y.repo)X.repo=Y.repo;if(Y.workload)X.workload=Y.workload;if(Y.env&&Object.keys(Y.env).length>0)X.env=Y.env;if(Y.tenant)X.tenant=Y.tenant;return Object.keys(X).length>0?X:null}function hm5(Y,X){try{return new URL(NM(Y,X)).hostname||null}catch{return null}}function xm5(Y){try{let X=new URL(Y);return X.pathname.replace(/^\/+/,"").replace(/\.git$/,"")||X.hostname}catch{return Y}}var tB="agent-sandbox",PW="AgentSandboxRunner",Pm5="agent-sandbox-system",qm5="studio-sandbox",cu=9000,Am5=3000,CM0="/app",Im5=32,jm5,Tm5=900000,CQ1="studio-sb-",Vm5=16,Mm5,Me6,yM0=40000,Ce6=1e4,Rm5=256,XA,_m5,fm5=63;var ve6=D(()=>{IM0();uT0();vV1();kM0();Fu1();jm5=new Set(["DAEMON_TOKEN","DAEMON_BOOT_ID","APP_ROOT","PROXY_PORT","DEV_PORT","RUNTIME","CLONE_URL","REPO_NAME","BRANCH","GIT_USER_NAME","GIT_USER_EMAIL","PACKAGE_MANAGER"]),Mm5=["cookie","host","connection","keep-alive","proxy-authenticate","proxy-authorization","te","trailer","transfer-encoding","accept-encoding","content-length","upgrade"],Me6=["connection","keep-alive","transfer-encoding","content-encoding","content-length"];XA={role:"studio.decocms.com/role",sandboxHandle:"studio.decocms.com/sandbox-handle",orgId:"studio.decocms.com/org-id",userId:"studio.decocms.com/user-id"},_m5=/^([A-Za-z0-9]([-A-Za-z0-9_.]*[A-Za-z0-9])?)?$/});var _e6={};l6(_e6,{waitForSandboxReady:()=>Ou1,getSandboxClaim:()=>du,getHttpRoute:()=>Te6,deleteSandboxClaim:()=>mu,deleteHttpRoute:()=>Bu1,createSandboxClaim:()=>SQ1,createHttpRoute:()=>Nu1,SandboxTimeoutError:()=>zt,SandboxError:()=>g7,KubeConfig:()=>Ft,K8S_CONSTANTS:()=>W$,HTTPROUTE_CONSTANTS:()=>kQ1,HANDLE_PREFIX:()=>CQ1,AgentSandboxRunner:()=>hM0});var xM0=D(()=>{IM0();Fu1();kM0();ve6()});var dM0={};l6(dM0,{getSharedRunnerIfInit:()=>lM0,getSharedRunner:()=>vQ1,getRunnerByKind:()=>Dt,getOrInitSharedRunner:()=>mm5,asDockerRunner:()=>mM0});function fe6(Y,X){let G=uM0[Y];if(G)return Promise.resolve(G);let Q=gM0[Y];if(Q)return Q;let J=X().then(($)=>{return uM0[Y]=$,$}).finally(()=>{delete gM0[Y]});return gM0[Y]=J,J}function gm5(){let Y=process.env.STUDIO_SANDBOX_PREVIEW_URL_PATTERN;return Y&&Y.trim()!==""?Y:void 0}function um5(){let Y=process.env.STUDIO_SANDBOX_TEMPLATE_NAME;return Y&&Y.trim()!==""?Y:void 0}function lm5(){let Y=process.env.STUDIO_SANDBOX_PREVIEW_GATEWAY_NAME?.trim(),X=process.env.STUDIO_SANDBOX_PREVIEW_GATEWAY_NAMESPACE?.trim();if(!Y&&!X)return;if(!Y||!X)throw Error("STUDIO_SANDBOX_PREVIEW_GATEWAY_NAME and STUDIO_SANDBOX_PREVIEW_GATEWAY_NAMESPACE must both be set, or both unset. Half-configured per-claim HTTPRoute routing would silently fail to attach.");return{name:Y,namespace:X}}async function be6(Y,X){let G=new oT0(X),Q=gm5();switch(Y){case"docker":return new DU({stateStore:G,previewUrlPattern:Q});case"freestyle":{let{FreestyleSandboxRunner:J}=await Promise.resolve().then(() => (ap6(),np6));return new J({stateStore:G})}case"agent-sandbox":{let{AgentSandboxRunner:J}=await Promise.resolve().then(() => (xM0(),_e6));return new J({stateStore:G,previewUrlPattern:Q,sandboxTemplateName:um5(),previewGateway:lm5(),meter:gH})}default:throw Error(`Unknown runner kind: ${String(Y)}`)}}function vQ1(Y){return Dt(Y,ir())}function Dt(Y,X){return fe6(X,()=>be6(X,Y.db))}async function mm5(){let Y=eG1();if(!Y)return null;return fe6(Y,()=>be6(Y,uX().db))}function lM0(){let Y=eG1();if(!Y)return null;return uM0[Y]??null}function mM0(Y){return Y instanceof DU?Y:null}var uM0,gM0;var iu=D(()=>{pr();dE();AW();Kf6();uM0={},gM0={}});async function ye6(Y,X){U0(X);let G=s1(X),Q=L6(X);if(!Q)throw Error("User ID required");let J=await X.storage.virtualMcps.findById(Y.virtualMcpId);if(!J||J.organization_id!==G.id)throw Error("Virtual MCP not found");let $=J.metadata??{},Z=yV1(nr($),Q,Y.branch),W=ir();if(Z&&(Z.runnerKind??"freestyle")===W)return Z;await he6(X,Z,W);let K=$.githubRepo??null,{entry:H}=await xe6({ctx:X,userId:Q,orgId:G.id,virtualMcpId:Y.virtualMcpId,branch:Y.branch,metadata:$,githubRepo:K,existing:Z});return H}async function he6(Y,X,G){if(!X)return;let Q=X.runnerKind??"freestyle";if(Q===G)return;if(Q==="freestyle")return;try{await(await Dt(Y,Q)).delete(X.vmId)}catch(J){console.error(`[VM_START] stale ${Q} ${X.vmId}: ${J instanceof Error?J.message:String(J)}`)}}async function xe6(Y){let{ctx:X,userId:G,orgId:Q,virtualMcpId:J,branch:$,metadata:Z,githubRepo:W,existing:K}=Y;if(W&&!W.connectionId)throw Error("GitHub connection id missing on virtual MCP metadata");let{runtime:H,packageManager:U,port:N}=r_6(Z),B;if(W){let{cloneUrl:T,gitUserName:S,gitUserEmail:C}=await t_6(W.connectionId,W.owner,W.name,X.db,X.vault);if(!U){let _=await Yf6(W.connectionId,W.owner,W.name,X.db,X.vault);if(_)U=_.packageManager,H=YQ1[_.packageManager].runtime,N=_.devPort??N,await dm5(X,J,G,_.packageManager,_.devPort)}B={cloneUrl:T,userName:S,userEmail:C,branch:$,displayName:`${W.owner}/${W.name}`}}let O=H&&U?{runtime:H,packageManager:U,devPort:Number(N)}:void 0,z=fV1({orgId:Q,virtualMcpId:J,branch:$}),w=await vQ1(X),E=await w.ensure({userId:G,projectRef:z},{repo:B,workload:O,tenant:{orgId:Q,userId:G}}),I=!!K&&K.vmId===E.handle&&K?.createdAt?K.createdAt:Date.now(),V={vmId:E.handle,previewUrl:E.previewUrl,runnerKind:w.kind,createdAt:I};await n_6(X.storage.virtualMcps,J,G,G,$,V);let M=!K||K.vmId!==E.handle;return{entry:V,isNewVm:M}}async function dm5(Y,X,G,Q,J){let $=await Y.storage.virtualMcps.findById(X);if(!$)return;let Z=$.metadata??{};await Y.storage.virtualMcps.update(X,G,{metadata:{...Z,runtime:{selected:Q,port:J}}})}var cM0;var iM0=D(()=>{H0();pr();b0();tT0();o_6();Xf6();dA0();rT0();iu();cM0=l1({name:"VM_START",description:"Start a sandbox with the connected GitHub repo and dev server.",annotations:{title:"Start VM Preview",readOnlyHint:!1,destructiveHint:!1,idempotentHint:!1,openWorldHint:!0},_meta:{ui:{visibility:"app"}},inputSchema:F.object({virtualMcpId:F.string().describe("Virtual MCP ID"),branch:F.string().min(1).optional().describe("Optional git branch to check out. When omitted the handler generates `deco/<adjective>-<noun>` and uses it. The resolved branch is returned in the response so callers can persist it.")}),outputSchema:F.object({previewUrl:F.string().nullable(),vmId:F.string(),branch:F.string(),isNewVm:F.boolean(),runnerKind:F.enum(["docker","freestyle","agent-sandbox"])}),handler:async(Y,X)=>{let G=Y.branch??fT1(),{metadata:Q,userId:J,organization:$,entry:Z}=await hV1({virtualMcpId:Y.virtualMcpId,branch:G},X),W=Q.githubRepo;if(!W)throw Error("No GitHub repo connected");let K=ir();await he6(X,Z,K);let{entry:H,isNewVm:U}=await xe6({ctx:X,userId:J,orgId:$.id,virtualMcpId:Y.virtualMcpId,branch:G,metadata:Q,githubRepo:W,existing:Z});return{...H,branch:G,isNewVm:U,runnerKind:K}}})});var pM0;var ge6=D(()=>{H0();b0();tT0();iu();pM0=l1({name:"VM_DELETE",description:"Delete a sandbox.",annotations:{title:"Delete VM Preview",readOnlyHint:!1,destructiveHint:!0,idempotentHint:!0,openWorldHint:!0},_meta:{ui:{visibility:"app"}},inputSchema:F.object({virtualMcpId:F.string().describe("Virtual MCP ID that owns this VM"),branch:F.string().min(1).describe("Branch whose vm should be deleted (vmMap[userId][branch])")}),outputSchema:F.object({success:F.boolean()}),handler:async(Y,X)=>{let G;try{G=await hV1(Y,X)}catch(W){if(W instanceof Error&&W.message==="Virtual MCP not found")return{success:!0};throw W}let{entry:Q,userId:J}=G;if(!Q)return{success:!0};await a_6(X.storage.virtualMcps,Y.virtualMcpId,J,J,Y.branch);let $=Q.runnerKind??"freestyle";return await(await Dt(X,$)).delete(Q.vmId).catch((W)=>console.error(`[VM_DELETE] ${$} ${Q.vmId}: ${W instanceof Error?W.message:String(W)}`)),{success:!0}}})});var ue6=D(()=>{iM0();ge6()});var im5="https://api.github.com",nM0;var le6=D(()=>{H0();b0();yE1();c2();nM0=l1({name:"GITHUB_LIST_USER_ORGS",description:"List GitHub App installations (orgs/accounts) accessible to the authenticated user.",annotations:{title:"List GitHub User Orgs",readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!0},_meta:{ui:{visibility:"app"}},inputSchema:F.object({connectionId:F.string().describe("ID of the mcp-github connection to use")}),outputSchema:F.object({installations:F.array(F.object({installationId:F.number(),login:F.string(),avatarUrl:F.string(),type:F.string()})),appSlug:F.string().optional()}),handler:async(Y,X)=>{await X.access.check();let G=new Y$(X.db,X.vault),Q=await G.get(Y.connectionId);if(!Q)throw Error("No GitHub token found. Ensure the mcp-github connection is authenticated.");let J=Q.accessToken;if(D51(Q)&&G.isExpired(Q,bE1)){let U=await w51(Q,G);if(!U)throw Error(HV);J=U,Q=await G.get(Y.connectionId)??Q}let $=[],Z,W=1,K=100,H=async(U)=>fetch(`${im5}/user/installations?per_page=${K}&page=${W}`,{headers:{Authorization:`Bearer ${U}`,Accept:"application/vnd.github+json","X-GitHub-Api-Version":"2022-11-28"}});while(!0){let U=await H(J);if(U.status===401){let B=await G.get(Y.connectionId);if(!B||!D51(B))throw Error(HV);let O=await w51(B,G);if(!O)throw Error(HV);if(J=O,U=await H(J),U.status===401)throw Error(HV)}if(!U.ok)throw Error(`GitHub /user/installations failed: ${U.status}`);let N=await U.json();for(let B of N.installations){if(!Z)Z=B.app_slug??B.app?.slug;$.push({installationId:B.id,login:B.account.login,avatarUrl:B.account.avatar_url,type:B.account.type})}if(N.installations.length<K)break;W++}return{installations:$,...Z?{appSlug:Z}:{}}}})});var me6=D(()=>{le6()});var CT1={};l6(CT1,{managementMCP:()=>Ir,listManagementTools:()=>rm5,ALL_TOOLS:()=>de6});async function rm5(Y){let X=await Ir(Y),[G,Q]=C91.createLinkedPair();await X.connect(Q);let J=new A7({name:"tools-hydration",version:"1.0.0"});try{return await J.connect(G),(await J.listTools()).tools}finally{await J.close().catch(()=>{})}}var nm5,am5,de6,Ir=async(Y)=>{let X=null;if(Y.organization){let Z=await Y.storage.organizationSettings.get(Y.organization.id),W=await Y.storage.virtualMcps.list(Y.organization.id),K=new Set(Z?.enabled_plugins??[]);for(let H of W){let U=H.metadata?.enabled_plugins;if(U&&Array.isArray(U))for(let N of U)K.add(N)}X=K.size>0?[...K]:null}let G=yd4(de6,X),Q=new pO({name:"mcp-cms-management",version:"1.0.0"},{capabilities:{tools:{},prompts:{},resources:{}}});for(let Z of G){let W=Z.inputSchema&&typeof Z.inputSchema==="object"&&"shape"in Z.inputSchema?Z.inputSchema:F.object({}),K=Z.outputSchema&&typeof Z.outputSchema==="object"&&"shape"in Z.outputSchema?Z.outputSchema:void 0,H=W.shape,U=K?.shape;Q.registerTool(Z.name,{description:Z.description??"",inputSchema:H,outputSchema:U,annotations:Z.annotations,_meta:Z._meta},async(N)=>{Y.access.setToolName(Z.name);try{let B=await Z.execute(N,Y);return{content:[{type:"text",text:JSON.stringify(B)}],structuredContent:B}}catch(B){return{content:[{type:"text",text:`Error: ${B.message}`}],isError:!0}}})}let J=ET6();for(let Z of J)Q.registerPrompt(Z.name,{title:Z.title,description:Z.description},()=>({messages:[{role:"user",content:{type:"text",text:Z.text}}]}));if(Y.organization?.id){let Z=await Y.storage.brandContext.list(Y.organization.id),W=new Set;for(let K of Z){let H=K.name.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,""),U=H?`brand-${H}`:`brand-${K.id}`;if(W.has(U))U=`${U}-${K.id.slice(0,8)}`;W.add(U);let N=[`# Brand: ${K.name}`,"",`**Domain:** ${K.domain}`,"","## Overview",K.overview];if(K.colors){let O=Object.entries(K.colors).filter(([,z])=>z);if(O.length>0){N.push("","## Colors");for(let[z,w]of O)N.push(`- **${z}:** ${w}`)}}if(K.fonts){let O=Object.entries(K.fonts).filter(([,z])=>z);if(O.length>0){N.push("","## Fonts");for(let[z,w]of O)N.push(`- ${w} (${z})`)}}if(K.logo)N.push("",`**Logo:** ${K.logo}`);if(K.favicon)N.push(`**Favicon:** ${K.favicon}`);if(K.ogImage)N.push(`**OG Image:** ${K.ogImage}`);if(K.images&&K.images.length>0){N.push("","## Images");for(let O of K.images){let z=Object.entries(O).map(([w,E])=>`${w}: ${E}`).join(", ");N.push(`- ${z}`)}}let B=N.join(`
|
|
4603
4603
|
`);Q.prompt(U,`Brand context for ${K.name}`,()=>({messages:[{role:"user",content:{type:"text",text:B}}]}))}}let $=PT6();for(let Z of $)Q.resource(Z.name,Z.uri,{description:Z.description,mimeType:Z.mimeType??"text/markdown"},async(W)=>{return{contents:[{uri:typeof W==="string"?W:W.href,mimeType:Z.mimeType??"text/markdown",text:Z.text}]}});return Q};var Pr=D(()=>{LL1();JN();V01();H0();Xc4();YI6();JI6();OI6();TI6();SI6();tI6();Gj6();wj6();_j6();bj6();sj6();qT6();pT6();k_6();ue6();me6();nm5=[OA0,zA0,DA0,wA0,LA0,EA0,PA0,qA0,AA0,IA0,jA0,TA0,MA0,RA0,SA0,kA0,CA0,vA0,_A0,fA0,bA0,yA0,hA0,D30,cq0,iq0,pq0,nq0,aq0,GA0,JA0,ZA0,$A0,WA0,QI6,UA0,NA0,BA0,M$0,S$0,k$0,R$0,rq0,tq0,oq0,sq0,eq0,YA0,XA0,FI0,cA0,iA0,pA0,nA0,aA0,rA0,xA0,gA0,uA0,lA0,mA0,tA0,oA0,sA0,GI0,QI0,WI0,KI0,HI0,KA0,HA0,FA0,UI0,NI0,BI0,OI0,zI0,DI0,wI0,LI0,EI0,PI0,qI0,AI0,II0,jI0,TI0,VI0,MI0,RI0,...S_6,cM0,pM0,nM0],am5=hd4(),de6=[...nm5,...am5]});function tm5(Y){return[{permissions:{self:["*"]},getTools:async()=>{let{ALL_TOOLS:X}=await Promise.resolve().then(() => (Pr(),CT1));return X.map((G)=>{return{name:G.name,inputSchema:F.toJSONSchema(G.inputSchema,{unrepresentable:"any"}),outputSchema:G.outputSchema?F.toJSONSchema(G.outputSchema,{unrepresentable:"any"}):void 0,description:G.description}})},data:y40(J3(),Y)},{data:b40()},{data:f40(Y)}]}async function ce6(Y,X){try{let G=uX(),Q=S4(),J=new VT(Q.encryptionKey),$=new u81(G.db,J),Z=tm5(Y);await Promise.all(Z.map(async(W)=>{let K=null;if(W.permissions)K=(await D7.api.createApiKey({body:{name:`${W.data.app_name??crypto.randomUUID()}-mcp`,userId:X,permissions:W.permissions,rateLimitEnabled:!1,metadata:{organization:{id:Y},purpose:"default-org-connections"}}}))?.key;let H=await nE({id:"pending",title:W.data.title,connection_type:W.data.connection_type,connection_url:W.data.connection_url,connection_token:W.data.connection_token,connection_headers:W.data.connection_headers}).catch(()=>null),U=await W.getTools?.()??H?.tools??null,N=H?.scopes?.length?H.scopes:null,B=W.data.id?W.data.id.startsWith(`${Y}_`)?W.data.id:`${Y}_${W.data.id}`:void 0;await $.create({...W.data,id:B,tools:U,configuration_scopes:N,organization_id:Y,created_by:X,connection_token:W.data.connection_token??K})}));try{let W=new l81(G.db);await Rx4(Y,X,W)}catch(W){console.error("Failed to install studio pack agents:",W)}if(Q.aiGatewayEnabled&&y81.provisionKey)try{let W=await aE(X),K=await y81.provisionKey(W,Y);await new x81(G.db,J).upsert({providerId:"deco",label:"Auto-provisioned",apiKey:K,organizationId:Y,createdBy:X})}catch(W){console.error("Failed to auto-provision Deco AI Gateway key:",W)}}catch(G){console.error("Error creating default MCP connections:",G)}}var ie6=D(()=>{x5();rQ0();lz();dE();Nw1();tQ0();sQ0();eQ0();a81();Sx4();H0();YY();n2();ST()});function om5(Y,X){let G=Y.email.split("@")[1]?.toLowerCase()??null;return{distinctId:Y.id,properties:{$set:{email:Y.email,name:Y.name,email_verified:Y.emailVerified},$set_once:{first_seen_at:X.toISOString(),signup_email_domain:G}}}}function aM0(Y){q6.identify(om5(Y,new Date))}var pe6=D(()=>{NX()});async function em5(Y){let{user:X,token:G}=Y;if(!G?.idToken)return;let Q;try{Q=m5(G.idToken)}catch{return}let{preferred_username:J,upn:$}=Q,Z=[J,$].filter((H)=>typeof H==="string"&&H.length>0&&H.toLowerCase()!==X.email.toLowerCase()).map((H)=>H.toLowerCase());if(Z.length===0)return;let{db:W}=uX(),K=await W.selectFrom("user").selectAll().where("email","in",Z).where("id","!=",X.id).executeTakeFirst();if(!K)return;try{await W.transaction().execute(async(H)=>{await p1`UPDATE "account" SET "userId" = ${K.id} WHERE "userId" = ${X.id}`.execute(H),await p1`UPDATE "session" SET "userId" = ${K.id} WHERE "userId" = ${X.id}`.execute(H),await p1`
|
|
4604
4604
|
UPDATE "member" SET "userId" = ${K.id}
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{e as t,j as i}from"./index-DKd6U8ZD.js";import{O as m}from"./select-model-BuijBTi2.js";import"./checkbox-CgUCf0vo.js";import"./ChevronDown-CGHjchOw.js";import"./input-rXpcOW54.js";import"./dialog-Dh1iMW0s.js";import"./X-DXjTCsIF.js";import"./drawer-BVsQgzeD.js";import"./use-mobile-DrlR5BbG.js";import"./select-CIfh_MBY.js";import"./ChevronUp-dSBPqUJ1.js";import"./skeleton-DWxGcluE.js";import"./Tool01-By8ElVEn.js";import"./RefreshCcw01-BEGaV3W5.js";import"./SearchMd-fRD_HHud.js";import"./Settings02-DtQ4_bLf.js";import"./use-ai-providers-D5Tufg2O.js";import"./constants-C9aLxYHE.js";import"./chat-context-w7qWGRrL.js";import"./use-virtual-mcp-G7jm3TGl.js";import"./use-collections-DpIHOTql.js";import"./use-decopilot-events-CN5jq2Ax.js";import"./create-sse-subscription-CxkOgzKf.js";import"./use-tasks-BGCdXCFh.js";import"./use-organization-settings-DoI0c_Gi.js";import"./ai-providers-logos-D6a8kmGH.js";import"./Zap-BEX7Xuxl.js";import"./AlertCircle-BJZjcLR8.js";import"./CheckCircle-BbLUS0ek.js";import"./Trash01-BzOKZIoE.js";import"./index-Bgh3Fg-W.js";import"./settings-section-DU0g5n0Q.js";import"./card-DWuJsQ-l.js";import"./ArrowUpRight-DoZ1aCQb.js";import"./switch-CWaKO_3R.js";import"./toggle-group-DIrVgcK0.js";import"./avatar-CAgGCSe2.js";import"./User01-B6EEMzxh.js";import"./alert-dialog-DkRKYqdD.js";import"./formatDistanceToNow-Cb2QZZJn.js";import"./differenceInSeconds-NQ4PDo0z.js";import"./unwrap-tool-result-BYXdCQMg.js";function T(){const o=t.c(1);let r;return o[0]===Symbol.for("react.memo_cache_sentinel")?(r=i.jsx(m,{}),o[0]=r):r=o[0],r}export{T as default};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/registry-layout-DSvJ6NrU.js","assets/index-DKd6U8ZD.js","assets/index-BZi9riJ2.css","assets/ArrowNarrowLeft-Yoaq7-cz.js","assets/CheckCircle-BbLUS0ek.js","assets/Container-CDgY_XYz.js","assets/Settings02-DtQ4_bLf.js","assets/XCircle-Ce7DOyui.js","assets/constants-C9aLxYHE.js","assets/useInfiniteQuery-J4O9iX8k.js","assets/infiniteQueryObserver-RFzqIOTQ.js","assets/badge-DBxFBhAO.js","assets/input-rXpcOW54.js","assets/dropdown-menu-BFB_BhxE.js","assets/ChevronDown-CGHjchOw.js","assets/ChevronRight-Do3Je1ER.js","assets/DotsVertical-BxL7Owtq.js","assets/table-UpR-J_t9.js","assets/toggle-group-DIrVgcK0.js","assets/use-view-mode-Cobet5rP.js","assets/use-mobile-DrlR5BbG.js","assets/SearchMd-fRD_HHud.js","assets/dialog-Dh1iMW0s.js","assets/X-DXjTCsIF.js","assets/AlertCircle-BJZjcLR8.js","assets/alert-dialog-DkRKYqdD.js","assets/card-DWuJsQ-l.js","assets/Trash01-BzOKZIoE.js","assets/label-KG6f6ypV.js","assets/select-CIfh_MBY.js","assets/ChevronUp-dSBPqUJ1.js","assets/switch-CWaKO_3R.js","assets/textarea-CVs7u-e-.js","assets/RefreshCcw01-BEGaV3W5.js","assets/checkbox-CgUCf0vo.js","assets/LinkExternal01-DxLyrYeW.js","assets/use-copy-CDfDyhwS.js","assets/Plus-BpCTKUfi.js","assets/Play-C7K9es-c.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{e as a,j as t,r,l as i,aE as o}from"./index-DKd6U8ZD.js";const n=r.lazy(()=>o(()=>import("./registry-layout-DSvJ6NrU.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38])));function c(){const s=a.c(1);let e;return s[0]===Symbol.for("react.memo_cache_sentinel")?(e=t.jsx(r.Suspense,{fallback:t.jsx("div",{className:"flex-1 flex items-center justify-center",children:t.jsx(i,{size:20,className:"animate-spin text-muted-foreground"})}),children:t.jsx(n,{})}),s[0]=e):e=s[0],e}export{c as default};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/registry-layout-DSvJ6NrU.js","assets/index-DKd6U8ZD.js","assets/index-BZi9riJ2.css","assets/ArrowNarrowLeft-Yoaq7-cz.js","assets/CheckCircle-BbLUS0ek.js","assets/Container-CDgY_XYz.js","assets/Settings02-DtQ4_bLf.js","assets/XCircle-Ce7DOyui.js","assets/constants-C9aLxYHE.js","assets/useInfiniteQuery-J4O9iX8k.js","assets/infiniteQueryObserver-RFzqIOTQ.js","assets/badge-DBxFBhAO.js","assets/input-rXpcOW54.js","assets/dropdown-menu-BFB_BhxE.js","assets/ChevronDown-CGHjchOw.js","assets/ChevronRight-Do3Je1ER.js","assets/DotsVertical-BxL7Owtq.js","assets/table-UpR-J_t9.js","assets/toggle-group-DIrVgcK0.js","assets/use-view-mode-Cobet5rP.js","assets/use-mobile-DrlR5BbG.js","assets/SearchMd-fRD_HHud.js","assets/dialog-Dh1iMW0s.js","assets/X-DXjTCsIF.js","assets/AlertCircle-BJZjcLR8.js","assets/alert-dialog-DkRKYqdD.js","assets/card-DWuJsQ-l.js","assets/Trash01-BzOKZIoE.js","assets/label-KG6f6ypV.js","assets/select-CIfh_MBY.js","assets/ChevronUp-dSBPqUJ1.js","assets/switch-CWaKO_3R.js","assets/textarea-CVs7u-e-.js","assets/RefreshCcw01-BEGaV3W5.js","assets/checkbox-CgUCf0vo.js","assets/LinkExternal01-DxLyrYeW.js","assets/use-copy-CDfDyhwS.js","assets/Plus-BpCTKUfi.js","assets/Play-C7K9es-c.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{e as n,f as c,g as m,j as r,l as f,r as l,aE as u}from"./index-DKd6U8ZD.js";const g=l.lazy(()=>u(()=>import("./registry-layout-DSvJ6NrU.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38])));function _(){const e=n.c(5),o=c();let t;e[0]===Symbol.for("react.memo_cache_sentinel")?(t={from:"/shell/$org"},e[0]=t):t=e[0];const{org:i}=m(t);let s;e[1]===Symbol.for("react.memo_cache_sentinel")?(s=r.jsx("div",{className:"h-full flex items-center justify-center",children:r.jsx(f,{size:20,className:"animate-spin text-muted-foreground"})}),e[1]=s):s=e[1];let a;return e[2]!==o||e[3]!==i?(a=r.jsx(l.Suspense,{fallback:s,children:r.jsx(g,{onBack:()=>o({to:"/$org/settings/store",params:{org:i}})})}),e[2]=o,e[3]=i,e[4]=a):a=e[4],a}export{_ as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{I as u}from"./infiniteQueryObserver-RFzqIOTQ.js";import{c2 as i}from"./index-DKd6U8ZD.js";function t(e,r){return i(e,u,r)}export{t as u};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{I as s}from"./infiniteQueryObserver-RFzqIOTQ.js";import{c2 as u,c3 as n}from"./index-DKd6U8ZD.js";function a(r,e){return u({...r,enabled:!0,suspense:!0,throwOnError:n},s,e)}export{a as u};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{e as s,g as l,j as o,l as a,E as n,r as c}from"./index-DKd6U8ZD.js";import{a as f}from"./index-DDmmZL9v.js";import"./index-BXJluhPl.js";import"./constants-C9aLxYHE.js";import"./collections-U39XM2D0.js";import"./index-CiGNH6-A.js";import"./use-virtual-mcp-G7jm3TGl.js";import"./use-collections-DpIHOTql.js";import"./monaco-editor-CetiEdE3.js";import"./scroll-area-UNfVJI8t.js";import"./select-CIfh_MBY.js";import"./use-mobile-DrlR5BbG.js";import"./ChevronDown-CGHjchOw.js";import"./ChevronUp-dSBPqUJ1.js";import"./accordion-rxim1ZAp.js";import"./agent-icon-DtvDglSH.js";import"./AlertCircle-BJZjcLR8.js";import"./Tool01-By8ElVEn.js";import"./XClose-Bnw2tzQy.js";import"./RefreshCcw01-BEGaV3W5.js";import"./ArrowNarrowLeft-Yoaq7-cz.js";import"./XCircle-Ce7DOyui.js";import"./ArrowUpRight-DoZ1aCQb.js";import"./ZapSquare-CsTKlylz.js";import"./Users03-CKRT_0yR.js";import"./CheckCircle-BbLUS0ek.js";import"./ChevronRight-Do3Je1ER.js";import"./DotsVertical-BxL7Owtq.js";import"./Container-CDgY_XYz.js";import"./Star01-CIsSx9uE.js";import"./Palette-CWiKw0AC.js";import"./SearchMd-fRD_HHud.js";import"./index-Bgh3Fg-W.js";import"./X-DXjTCsIF.js";import"./LinkExternal01-DxLyrYeW.js";import"./Lock01-BI0K2L_g.js";import"./Sun-CgyDUxcQ.js";import"./Play-C7K9es-c.js";import"./Plus-BpCTKUfi.js";import"./Settings02-DtQ4_bLf.js";import"./Shield01-Di_q_zxl.js";import"./Trash01-BzOKZIoE.js";import"./User01-B6EEMzxh.js";import"./Zap-BEX7Xuxl.js";import"./badge-DBxFBhAO.js";import"./view-mode-toggle-PXHnKZlc.js";import"./layout-C1dBBrJO.js";import"./use-connection-1SSSHaHs.js";import"./use-mcp-tools-qxi4PxSc.js";import"./dialog-Dh1iMW0s.js";import"./dropdown-menu-BFB_BhxE.js";import"./integration-icon-wh5nd5gB.js";import"./index-aI7M0qEI.js";import"./empty-state-Ccngpo14.js";import"./create-sse-subscription-CxkOgzKf.js";import"./input-rXpcOW54.js";function xt(){const t=s.c(4);let r;t[0]===Symbol.for("react.memo_cache_sentinel")?(r={from:"/shell/$org/settings/workflows/$itemId"},t[0]=r):r=t[0];const{itemId:e}=l(r);let i;t[1]===Symbol.for("react.memo_cache_sentinel")?(i=o.jsx("div",{className:"flex h-full items-center justify-center",children:o.jsx(a,{size:32,className:"animate-spin text-muted-foreground"})}),t[1]=i):i=t[1];const p=decodeURIComponent(e);let m;return t[2]!==p?(m=o.jsx(n,{children:o.jsx(c.Suspense,{fallback:i,children:o.jsx(f,{itemId:p})})}),t[2]=p,t[3]=m):m=t[3],m}export{xt as default};
|
|
@@ -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
|