decocms 4.322.2 → 4.323.0
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-BdM4T3q4.js → AlertCircle-CbIethWO.js} +1 -1
- package/dist/client/assets/{AreaChart-CBKDIRkx.js → AreaChart-BQf75cYf.js} +1 -1
- package/dist/client/assets/{ArrowLeft-BB2YSrj7.js → ArrowLeft-y7fvMHg1.js} +1 -1
- package/dist/client/assets/{ArrowUp-DXR_g3Oy.js → ArrowUp-ClH9KzFx.js} +1 -1
- package/dist/client/assets/{Check-BJGjAkvt.js → Check-CViV2AKw.js} +1 -1
- package/dist/client/assets/{CheckCircle-DgTrlZto.js → CheckCircle-BceWKyuF.js} +1 -1
- package/dist/client/assets/{ChevronRight-CHp6MjLR.js → ChevronRight-Ub3Wi__5.js} +1 -1
- package/dist/client/assets/{ChevronSelectorVertical-Da9x7uGK.js → ChevronSelectorVertical-DYY47Opi.js} +1 -1
- package/dist/client/assets/{ChevronUp-DFgGozEE.js → ChevronUp-BZvKWnmE.js} +1 -1
- package/dist/client/assets/{Copy01-DDcupHo2.js → Copy01-CVNVXHfJ.js} +1 -1
- package/dist/client/assets/{CreditCard01-CsLC5KKl.js → CreditCard01-CMcaGH-G.js} +1 -1
- package/dist/client/assets/{DotsVertical-Dk2gGlzc.js → DotsVertical-CUO5Z4B7.js} +1 -1
- package/dist/client/assets/{Download01-DvOKymrY.js → Download01-C-8_yc1P.js} +1 -1
- package/dist/client/assets/{ErrorBarContext-BI6nGi9H.js → ErrorBarContext-D5mNZU-_.js} +1 -1
- package/dist/client/assets/{Eye-R1eRKyhu.js → Eye-CRgiNYAI.js} +1 -1
- package/dist/client/assets/{GitBranch01-BBspe_Vp.js → GitBranch01-Cw03iCHW.js} +1 -1
- package/dist/client/assets/{Globe01-V5XnEtkA.js → Globe01-BzEZgPZH.js} +1 -1
- package/dist/client/assets/{HardDrive-DAYJSGLm.js → HardDrive-BShCW8xo.js} +1 -1
- package/dist/client/assets/{Image01-IiqdNeem.js → Image01-BDqKYCHs.js} +1 -1
- package/dist/client/assets/{Key01-DR_fsQ3N.js → Key01-BihM9W_4.js} +1 -1
- package/dist/client/assets/{Link01-Bf0vi3uA.js → Link01-Bj9F9FFy.js} +1 -1
- package/dist/client/assets/{LinkExternal01-5D43FTN7.js → LinkExternal01-B-j6voaz.js} +1 -1
- package/dist/client/assets/{Monitor01-DDLQMt97.js → Monitor01-DJok5Oby.js} +1 -1
- package/dist/client/assets/{Package-CgY7o2Oy.js → Package-DyPeIzqD.js} +1 -1
- package/dist/client/assets/{Palette-C4zLuwLo.js → Palette-Di_3G4BB.js} +1 -1
- package/dist/client/assets/{Play-CzdOVHC_.js → Play-C-Ctr0Bg.js} +1 -1
- package/dist/client/assets/{Plus-D9-o85Y8.js → Plus-Dy3OwbdP.js} +1 -1
- package/dist/client/assets/{SearchMd-CCAvAiQ4.js → SearchMd-GhWQt9H_.js} +1 -1
- package/dist/client/assets/{Sector-BzLBp_iA.js → Sector-B06pf8NJ.js} +1 -1
- package/dist/client/assets/{Settings02-DQ6FNBsz.js → Settings02-Xf5MNOeS.js} +1 -1
- package/dist/client/assets/{Share07-zz-abOvJ.js → Share07-CkZjV7Y4.js} +1 -1
- package/dist/client/assets/{Shield01-BJRCG3ZI.js → Shield01-AHWHm-DS.js} +1 -1
- package/dist/client/assets/{Stars01-CT8rep-q.js → Stars01-D65oRIoj.js} +1 -1
- package/dist/client/assets/{Sun-CZqZcuoO.js → Sun-vk_cPGMJ.js} +1 -1
- package/dist/client/assets/{Tool01-DM2pGQ6v.js → Tool01-C9Fh4pyK.js} +1 -1
- package/dist/client/assets/{Tool02-Dam9-7yl.js → Tool02-CZJjuIxA.js} +1 -1
- package/dist/client/assets/{Trash01-By4vj34E.js → Trash01-B-u_-iqS.js} +1 -1
- package/dist/client/assets/{TrendUp01-BbsZIxmR.js → TrendUp01-D_qxLEW7.js} +1 -1
- package/dist/client/assets/{Upload01-B7yw_2WY.js → Upload01-CVk2PCsw.js} +1 -1
- package/dist/client/assets/{User01-ZmS0OLZp.js → User01-CAS_KrTr.js} +1 -1
- package/dist/client/assets/{UserSquare-FX00ULoq.js → UserSquare-BeyEkA5D.js} +1 -1
- package/dist/client/assets/{Users01-OgAilsyn.js → Users01-ub3QFuz_.js} +1 -1
- package/dist/client/assets/{Users03-B2Ia9ZKz.js → Users03-9eRhfMnl.js} +1 -1
- package/dist/client/assets/{XCircle-CoovHOYi.js → XCircle-Bd6dXhOj.js} +1 -1
- package/dist/client/assets/{XClose-D3uTH-Mn.js → XClose-auuJ_GRB.js} +1 -1
- package/dist/client/assets/{Zap-BOxAISnm.js → Zap-b3NblJtQ.js} +1 -1
- package/dist/client/assets/{ZoomOut-2E5tImca.js → ZoomOut-BQIO6WB6.js} +1 -1
- package/dist/client/assets/{access-gate-BcA-iWkW.js → access-gate-YwNE0EiY.js} +1 -1
- package/dist/client/assets/{agent-icon-RU6MjYuo.js → agent-icon-_mOvC4lh.js} +1 -1
- package/dist/client/assets/{agents-list-9j0k7jbf.js → agents-list-BuzhpqLT.js} +1 -1
- package/dist/client/assets/{ai-providers-DsiwGC8l.js → ai-providers-tOnDEcsq.js} +1 -1
- package/dist/client/assets/{alert-DclC12S_.js → alert-Be1JSz0u.js} +1 -1
- package/dist/client/assets/{alert-dialog-BeZT9KXA.js → alert-dialog-FC7tFvol.js} +1 -1
- package/dist/client/assets/{analytics-tab-DE9dPGhZ.js → analytics-tab-rcgtUzan.js} +1 -1
- package/dist/client/assets/{api-keys-BWefs2Th.js → api-keys-CTBEYMnC.js} +1 -1
- package/dist/client/assets/api-keys-JtWtYNuu.js +1 -0
- package/dist/client/assets/{app-editor-DDJ-GQvN.js → app-editor-DQYPxUQA.js} +1 -1
- package/dist/client/assets/{auth-CDhx2a9v.js → auth-D6hknNuL.js} +1 -1
- package/dist/client/assets/{auth-catchall-DtDEvIAp.js → auth-catchall-B4fYfbHP.js} +1 -1
- package/dist/client/assets/{auth-entry-FzT7ADF9.js → auth-entry-C8j1nXjw.js} +1 -1
- package/dist/client/assets/{auth-split-layout-BMIKx1vW.js → auth-split-layout-CBxH-91G.js} +1 -1
- package/dist/client/assets/{authenticate-and-persist-oauth-dNQSv230.js → authenticate-and-persist-oauth-Ca9jI9n9.js} +1 -1
- package/dist/client/assets/{automation-list-row-D0_h1jsr.js → automation-list-row-S_f1Oum9.js} +1 -1
- package/dist/client/assets/{automation-runs-DK9gGf1S.js → automation-runs-DTbShgpv.js} +1 -1
- package/dist/client/assets/{automations-_yk8g7V1.js → automations-B754zppB.js} +1 -1
- package/dist/client/assets/{avatar-C_trePYC.js → avatar-BAJ_UwLY.js} +1 -1
- package/dist/client/assets/{badge-xmxCuDz6.js → badge-3ZvX9jce.js} +1 -1
- package/dist/client/assets/{block-document-CxBXrToo.js → block-document-DLV7xODC.js} +1 -1
- package/dist/client/assets/{breadcrumb-DoFt2ti7.js → breadcrumb-DHpQRSkO.js} +1 -1
- package/dist/client/assets/{buckets-DEMafnW1.js → buckets-kBZLIk_3.js} +1 -1
- package/dist/client/assets/{bulk-category-panel-D7lS97vx.js → bulk-category-panel-CcZ-TeGm.js} +1 -1
- package/dist/client/assets/{capability-load-error-CdbT_OS3.js → capability-load-error-o4hp9_9S.js} +1 -1
- package/dist/client/assets/{cards-DXWWOf4y.js → cards-YJY6OImM.js} +1 -1
- package/dist/client/assets/{category-editor-CiG41A_G.js → category-editor-BkGCdnTz.js} +1 -1
- package/dist/client/assets/{cdn-tab-Cej9_faF.js → cdn-tab-CD1vNcFc.js} +1 -1
- package/dist/client/assets/{chart-BFXjHsv2.js → chart-DuPWPZVO.js} +1 -1
- package/dist/client/assets/{chat-context-X9yDx1g4.js → chat-context-DoE_-ERG.js} +1 -1
- package/dist/client/assets/{checkbox-DHpVnXQF.js → checkbox-DM__T45b.js} +1 -1
- package/dist/client/assets/{choose-editor-Bv5NIfCE.js → choose-editor-Ceh05UP8.js} +1 -1
- package/dist/client/assets/{cli-auth-success-BHurDJuQ.js → cli-auth-success-DRCsiyHM.js} +1 -1
- package/dist/client/assets/{client-icons-CuJcR9_t.js → client-icons-CP-8jMQ6.js} +1 -1
- package/dist/client/assets/{collection-detail-BT0nSZMR.js → collection-detail-CBcNSBGR.js} +1 -1
- package/dist/client/assets/{collection-display-button-Cn5CPEeQ.js → collection-display-button-D7w8XJnR.js} +1 -1
- package/dist/client/assets/{collection-search-A173OqC9.js → collection-search-jeWHAmV1.js} +1 -1
- package/dist/client/assets/{collection-table-wrapper-DQH4XpNH.js → collection-table-wrapper-BEZHi3FT.js} +1 -1
- package/dist/client/assets/{collection-tabs-BM5JVl4y.js → collection-tabs-BUx5Y6ne.js} +1 -1
- package/dist/client/assets/{command-BxTndh_x.js → command-DYMcXrYb.js} +1 -1
- package/dist/client/assets/{commerce-onboarding-FVw2X5Uy.js → commerce-onboarding-CKV1VIHd.js} +1 -1
- package/dist/client/assets/{connect-Bq_JbM88.js → connect-DtGLP_di.js} +1 -1
- package/dist/client/assets/{connect-layout-uq8SiI3I.js → connect-layout-CpZLZAi6.js} +1 -1
- package/dist/client/assets/{connection-CdZ-bOjV.js → connection-Bpxwt4sD.js} +1 -1
- package/dist/client/assets/{connection-card-C7OwHWDn.js → connection-card-D0u9_kRo.js} +1 -1
- package/dist/client/assets/{connection-detail-Dxm-wtFw.js → connection-detail-DKyvL8ps.js} +1 -1
- package/dist/client/assets/{connection-form-helpers-CYdb5KmR.js → connection-form-helpers-Blb0GPpJ.js} +1 -1
- package/dist/client/assets/{connections-DvDKq4gC.js → connections-CBNZEeRd.js} +1 -1
- package/dist/client/assets/{create-organization-dialog-C8PgPbxE.js → create-organization-dialog-HAvzqd5d.js} +1 -1
- package/dist/client/assets/{decopilot-sse-pool-cy7vRre7.js → decopilot-sse-pool-BT-eLzU1.js} +1 -1
- package/dist/client/assets/{dialog-ZVeNES6Y.js → dialog-_eOGpV_R.js} +1 -1
- package/dist/client/assets/{domain-settings-anAeQVrN.js → domain-settings-DeuY7PiW.js} +1 -1
- package/dist/client/assets/{drawer-DKqEBSsG.js → drawer-BH5TUdft.js} +1 -1
- package/dist/client/assets/{dropdown-menu-CNysK88m.js → dropdown-menu-DAkDKRcv.js} +1 -1
- package/dist/client/assets/{e2e-tab--LXJgLL9.js → e2e-tab-B47B8D6p.js} +1 -1
- package/dist/client/assets/{editor-qm9nQJWW.js → editor-Kqw7F1U3.js} +1 -1
- package/dist/client/assets/{empty-state-Bnpmn7z7.js → empty-state-B5IW3FY0.js} +1 -1
- package/dist/client/assets/{empty-state-HWkqG6y-.js → empty-state-DTiYxZyX.js} +1 -1
- package/dist/client/assets/{extract-connection-data-PPlXuj4-.js → extract-connection-data-B0tz2bg7.js} +1 -1
- package/dist/client/assets/{file-explorer-DWd-Q3K0.js → file-explorer-D6bSC078.js} +1 -1
- package/dist/client/assets/{file-type-icon-x2A4TA0T.js → file-type-icon-CqqlGtY8.js} +1 -1
- package/dist/client/assets/{folder-icon-C2P2rJRH.js → folder-icon-WWKk1P4a.js} +1 -1
- package/dist/client/assets/{form-CZTZut6T.js → form-DVlwcFzf.js} +1 -1
- package/dist/client/assets/{general-DxB_pvng.js → general-BLb79GyS.js} +1 -1
- package/dist/client/assets/{github-repo-picker-DzkavMQV.js → github-repo-picker-BvXosldt.js} +1 -1
- package/dist/client/assets/{hooks-B1ozPSur.js → hooks-C1zHirdm.js} +1 -1
- package/dist/client/assets/{hosting-tab-NISwa-jm.js → hosting-tab-WXFSVJlX.js} +1 -1
- package/dist/client/assets/{index-B5qs3kIA.js → index-B1NfLh28.js} +7 -7
- package/dist/client/assets/index-BF5Hkav7.js +5 -0
- package/dist/client/assets/{index-UxKUNJc7.js → index-BaLSCAcE.js} +1 -1
- package/dist/client/assets/{index-c0FWNVub.js → index-ByNRxI-W.js} +1 -1
- package/dist/client/assets/{index-O2zi1Oqi.js → index-C-AVMdC1.js} +1 -1
- package/dist/client/assets/{index-Dd3k4kvJ.js → index-DbYn9c50.js} +1 -1
- package/dist/client/assets/{index-DQGh1B2U.js → index-DqFuEMY3.js} +1 -1
- package/dist/client/assets/{index-B6sByWv7.js → index-Ds3rGGA1.js} +6 -6
- package/dist/client/assets/{index-redirect-BDZq9Bm0.js → index-redirect-CL2ti6mP.js} +1 -1
- package/dist/client/assets/{index-QYpWN0fW.js → index-tE-Tf4Hw.js} +1 -1
- package/dist/client/assets/{index-Dg4k0KJy.js → index-vvsCvtEs.js} +1 -1
- package/dist/client/assets/{infra-billing-Bxd1BRHX.js → infra-billing-Bqv_tVB5.js} +1 -1
- package/dist/client/assets/{input-CBrhJBCe.js → input-6kxANu4D.js} +1 -1
- package/dist/client/assets/{integration-icon-Toawfu3g.js → integration-icon-Dw9EWqM9.js} +1 -1
- package/dist/client/assets/{invite-member-dialog-Cbo3EoYk.js → invite-member-dialog-CtpRiSXv.js} +1 -1
- package/dist/client/assets/{label-BruZmOj-.js → label-W4OZ7SIR.js} +1 -1
- package/dist/client/assets/{layout-DUe8o_1s.js → layout-BLJ2rW8z.js} +1 -1
- package/dist/client/assets/{login-1H4TDrv3.js → login-xMe8uq97.js} +1 -1
- package/dist/client/assets/{markdown-CtesyoMy.js → markdown-nQrYOrJu.js} +1 -1
- package/dist/client/assets/{mcp-oauth-ChFHNRUT.js → mcp-oauth-CH8aXrUS.js} +1 -1
- package/dist/client/assets/{members-B5wuE5jp.js → members-os2LlbCD.js} +1 -1
- package/dist/client/assets/{monaco-editor-KRO47ntI.js → monaco-editor-D-OtVr_n.js} +1 -1
- package/dist/client/assets/{monitoring-stats-row-BuWssBjZ.js → monitoring-stats-row-CisDt-Oh.js} +1 -1
- package/dist/client/assets/{multi-select-Bmn2K279.js → multi-select-CCFiS0YC.js} +1 -1
- package/dist/client/assets/{oauth-callback-D-FswPqB.js → oauth-callback-BwNVh8Ay.js} +1 -1
- package/dist/client/assets/{oauth-callback-ai-provider-DoFRxmuI.js → oauth-callback-ai-provider-SsrtddQ7.js} +1 -1
- package/dist/client/assets/{onboarding-AuXLu4SZ.js → onboarding-1pFeUwfe.js} +1 -1
- package/dist/client/assets/org-layout-ByaNaRAg.js +1 -0
- package/dist/client/assets/{organization-choice-DmSP3wHN.js → organization-choice-CKdaBKmF.js} +1 -1
- package/dist/client/assets/{orgs-CzG7nmGC.js → orgs-Cm-yPANa.js} +1 -1
- package/dist/client/assets/{page-seo-form-DB0vGLb8.js → page-seo-form-CVhe-B9N.js} +1 -1
- package/dist/client/assets/{popover-Dtmo4a9i.js → popover-CiSRUL8W.js} +1 -1
- package/dist/client/assets/{post-calendar-HP69Onnc.js → post-calendar-BlOmmMBz.js} +1 -1
- package/dist/client/assets/{post-editor-zK6bMM7V.js → post-editor-DDFHZpuO.js} +1 -1
- package/dist/client/assets/{primitives-BUTbHvg9.js → primitives-BnQfJsjI.js} +1 -1
- package/dist/client/assets/{profile-MlTKkAB2.js → profile-BuGbWdFA.js} +1 -1
- package/dist/client/assets/{project-app-view-Bs9Xs-vH.js → project-app-view-Cw_plhk8.js} +1 -1
- package/dist/client/assets/{prompts-o2vocrsg.js → prompts-C3gNSt_0.js} +1 -1
- package/dist/client/assets/record-editor-DtUJGWvr.js +1 -0
- package/dist/client/assets/redirect-editor-D0vXfu9N.js +1 -0
- package/dist/client/assets/registry-QzkuDmLd.js +2 -0
- package/dist/client/assets/{registry-layout-CFgbh5Bs.js → registry-layout-ChN51H5w.js} +1 -1
- package/dist/client/assets/{reports-xA2seRNN.js → reports-CYciSEvO.js} +1 -1
- package/dist/client/assets/{require-capability-4qAlBGtY.js → require-capability-Bzaxi0tw.js} +1 -1
- package/dist/client/assets/{required-auth-layout-BDVHvS6l.js → required-auth-layout-B5RfO5xE.js} +1 -1
- package/dist/client/assets/{reset-password-DNNtdZ2j.js → reset-password-c2RD-cMF.js} +1 -1
- package/dist/client/assets/{review-settings-BijkQ1jm.js → review-settings-CVRC6VQz.js} +1 -1
- package/dist/client/assets/roles-CKg_erdA.js +1 -0
- package/dist/client/assets/{schema-BBadp0i1.js → schema-BMBwySNw.js} +1 -1
- package/dist/client/assets/{scroll-area-BZ5Qyrr3.js → scroll-area-D1O9Z5bn.js} +1 -1
- package/dist/client/assets/{search-input-CQmUWmgl.js → search-input-HJiyo5_T.js} +1 -1
- package/dist/client/assets/{secrets-DjI1BiGF.js → secrets-yGNqTUjE.js} +1 -1
- package/dist/client/assets/{sections-editor-C5_pzWj6.js → sections-editor-nXz1E_RK.js} +1 -1
- package/dist/client/assets/{select-DRlA17pU.js → select-KntX1BWy.js} +1 -1
- package/dist/client/assets/{select-model-LklToqN0.js → select-model-D4UnKm_D.js} +1 -1
- package/dist/client/assets/{self-tool-result-CG7SIkHG.js → self-tool-result-Bw-jg1H9.js} +1 -1
- package/dist/client/assets/{seo-editor-eKy-K1LH.js → seo-editor-BMV5Py3q.js} +1 -1
- package/dist/client/assets/settings-layout-BxW8PXZR.js +1 -0
- package/dist/client/assets/{settings-sidebar-DKOy0LGW.js → settings-sidebar-C_XqwVow.js} +1 -1
- package/dist/client/assets/{shell-controls-CnLmt5Cj.js → shell-controls-y2P0ze9V.js} +1 -1
- package/dist/client/assets/{shell-layout-Cvf8Eoe7.js → shell-layout-CYnXtCwc.js} +1 -1
- package/dist/client/assets/{skill-preview-C9i4y1Q7.js → skill-preview-DDtUylxS.js} +1 -1
- package/dist/client/assets/{skills-BkepWnYL.js → skills-C02q4DQE.js} +1 -1
- package/dist/client/assets/{sso-DnEwQUmd.js → sso-E35RJK0S.js} +1 -1
- package/dist/client/assets/{store-BdufbVvU.js → store-DtCD5trg.js} +1 -1
- package/dist/client/assets/store-registry-CMA16J1j.js +2 -0
- package/dist/client/assets/{switch-BtlVCVTj.js → switch-RffCohYW.js} +1 -1
- package/dist/client/assets/{synced-repos-BOIxXDwi.js → synced-repos-D746RY0r.js} +1 -1
- package/dist/client/assets/{table-C-bH2e50.js → table-DHae8Nm6.js} +1 -1
- package/dist/client/assets/{tabs-DZGF5am8.js → tabs-Bw-iT1Tk.js} +1 -1
- package/dist/client/assets/{task-board-DjY-MoL5.js → task-board-Cpu4KbdQ.js} +1 -1
- package/dist/client/assets/{task-route-Hg0072mG.js → task-route-BF9yN3PC.js} +1 -1
- package/dist/client/assets/tasks-O7NdYknu.js +1 -0
- package/dist/client/assets/{textarea-BuV0Q4Wn.js → textarea-D69PAPp0.js} +1 -1
- package/dist/client/assets/{thread-intent-BmK3id7c.js → thread-intent-B9RGGbT7.js} +1 -1
- package/dist/client/assets/{thread-route-DTEQuzTB.js → thread-route-DghMzEvi.js} +1 -1
- package/dist/client/assets/{toggle-group-BSU6drSx.js → toggle-group-D2J6TMAE.js} +1 -1
- package/dist/client/assets/{toolbar-l37D9w2L.js → toolbar-CQKJCOWO.js} +1 -1
- package/dist/client/assets/{toolbar-icon-button-vCbnU1BH.js → toolbar-icon-button-D5UWifRH.js} +1 -1
- package/dist/client/assets/{track-CFiNnqLI.js → track-CPuXhWGG.js} +1 -1
- package/dist/client/assets/{types-uTLk2Oif.js → types-D9TUiUC5.js} +1 -1
- package/dist/client/assets/{use-ai-providers-D2gdHqRM.js → use-ai-providers-BDymGfsX.js} +1 -1
- package/dist/client/assets/{use-automations-DwriaZ_Y.js → use-automations-D-er4402.js} +1 -1
- package/dist/client/assets/{use-autosave-ChGoJB1H.js → use-autosave-BYuOuBAD.js} +1 -1
- package/dist/client/assets/{use-connection-Bcqmd-0E.js → use-connection-DjqJprQ0.js} +1 -1
- package/dist/client/assets/{use-copy-DfWIv5Q0.js → use-copy-Cc5MlhjA.js} +1 -1
- package/dist/client/assets/{use-create-virtual-mcp-Bu8ybBAx.js → use-create-virtual-mcp-BpDoBwW0.js} +1 -1
- package/dist/client/assets/{use-debounced-autosave-BLFyOoIV.js → use-debounced-autosave-ZIgtFc1M.js} +1 -1
- package/dist/client/assets/{use-debounced-value-BL0b9aeb.js → use-debounced-value-BSLeeOpX.js} +1 -1
- package/dist/client/assets/{use-decopilot-events-CmPJ_T7T.js → use-decopilot-events-DJzsWHaW.js} +1 -1
- package/dist/client/assets/{use-delete-connection-Bv6qQJUF.js → use-delete-connection-ChV1b6nT.js} +1 -1
- package/dist/client/assets/{use-deployment-admin-DqUW-FiZ.js → use-deployment-admin-De_oldAV.js} +1 -1
- package/dist/client/assets/{use-destination-route-F2w4a22p.js → use-destination-route-CG9NdNN9.js} +1 -1
- package/dist/client/assets/{use-file-configs-JKMDnd3t.js → use-file-configs-DXL12ksv.js} +1 -1
- package/dist/client/assets/{use-infinite-scroll-BJi77uUl.js → use-infinite-scroll-D5DcjHPJ.js} +1 -1
- package/dist/client/assets/{use-join-requests-B_gkX1wR.js → use-join-requests-BwgxmP4k.js} +1 -1
- package/dist/client/assets/{use-mcp-auth-status-BpMUYkUL.js → use-mcp-auth-status-BmzTeush.js} +1 -1
- package/dist/client/assets/{use-mcp-client-DBWSfFW4.js → use-mcp-client-BsCYwuYG.js} +1 -1
- package/dist/client/assets/{use-mcp-prompts-CQk2PJOu.js → use-mcp-prompts-r_b-m13M.js} +1 -1
- package/dist/client/assets/{use-mcp-tools-C9BbSSY5.js → use-mcp-tools-DFUdHDOx.js} +1 -1
- package/dist/client/assets/{use-members-DMiuR5EJ.js → use-members-uyLHU2hg.js} +1 -1
- package/dist/client/assets/{use-navigate-to-agent-OVEm8SGC.js → use-navigate-to-agent-IY8mCF-a.js} +1 -1
- package/dist/client/assets/{use-org-auth-client-pdf6su9B.js → use-org-auth-client-CRXTM1Db.js} +1 -1
- package/dist/client/assets/{use-org-sso-DeQYTHJu.js → use-org-sso-D2ngO8eF.js} +1 -1
- package/dist/client/assets/{use-organization-roles-BX-WHfZP.js → use-organization-roles-E5m8U-S7.js} +1 -1
- package/dist/client/assets/{use-organization-settings-BbuUyMwK.js → use-organization-settings-CVRBbGpW.js} +1 -1
- package/dist/client/assets/{use-panel-navigate-BeN2FB5r.js → use-panel-navigate-Cbxz5kt0.js} +1 -1
- package/dist/client/assets/{use-project-scope-C9SLEVZG.js → use-project-scope-BPel4oYu.js} +1 -1
- package/dist/client/assets/{use-registry-connections-w1qpzPqp.js → use-registry-connections-DDAHT7mn.js} +1 -1
- package/dist/client/assets/{use-secrets-CfStaXMf.js → use-secrets-CxYf3QgY.js} +1 -1
- package/dist/client/assets/{use-section-preview-base-w9jGzZf3.js → use-section-preview-base-nwXYuQik.js} +1 -1
- package/dist/client/assets/{use-status-sounds-B4fgiFff.js → use-status-sounds-BsArCG5q.js} +1 -1
- package/dist/client/assets/{use-tags-DMg6alLK.js → use-tags-7szl89Un.js} +1 -1
- package/dist/client/assets/{use-view-mode-BYghl9YG.js → use-view-mode-BCpG25HS.js} +1 -1
- package/dist/client/assets/{use-virtual-mcp-afg1XeYZ.js → use-virtual-mcp-GrNV8gSX.js} +1 -1
- package/dist/client/assets/useInfiniteQuery-Ba_5G2Dq.js +1 -0
- package/dist/client/assets/useSuspenseInfiniteQuery-Day-b8LH.js +1 -0
- package/dist/client/assets/{users-BuXRKaMd.js → users-t7wRTjGx.js} +1 -1
- package/dist/client/assets/{variant-calendar-1GL7Yn2Y.js → variant-calendar-De-JgJ0u.js} +1 -1
- package/dist/client/assets/{view-mode-toggle-B4tbXNCc.js → view-mode-toggle-BUL9QJav.js} +1 -1
- package/dist/client/index.html +1 -1
- package/dist/server/cli.js +680 -623
- package/dist/server/migrate-dbos.js +2 -2
- package/dist/server/migrate.js +193 -172
- package/dist/server/server.js +437 -401
- package/package.json +1 -1
- package/dist/client/assets/api-keys--fpnrdj1.js +0 -1
- package/dist/client/assets/index-b3hcIvy1.js +0 -5
- package/dist/client/assets/org-layout-Crz5uS5X.js +0 -1
- package/dist/client/assets/record-editor-Co1jLxU2.js +0 -1
- package/dist/client/assets/redirect-editor-BHyQuv7O.js +0 -1
- package/dist/client/assets/registry-CPar81QY.js +0 -2
- package/dist/client/assets/roles-DV_Xk-ZG.js +0 -1
- package/dist/client/assets/settings-layout-Cp_WaX5t.js +0 -1
- package/dist/client/assets/store-registry-D27Ew_-v.js +0 -2
- package/dist/client/assets/tasks-BMYVA5sP.js +0 -1
- package/dist/client/assets/useInfiniteQuery-BlUSgUeu.js +0 -1
- package/dist/client/assets/useSuspenseInfiniteQuery-BRHzp2YA.js +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
var M=import.meta.require;var q="11";function E(c){return{name:"decocms",systemDatabaseUrl:c.systemDatabaseUrl,systemDatabaseSchemaName:"dbos",systemDatabasePoolSize:c.poolSize,runAdminServer:!1,executorID:c.executorID,applicationVersion:q,...c.listenQueues!==void 0?{listenQueues:c.listenQueues}:{}}}function k(c,h={}){let{signal:w}=h;if(w?.aborted)return Promise.reject(w.reason);return new Promise((f,y)=>{let J=()=>{clearTimeout(+m),y(w?.reason)},m=P(()=>{w?.removeEventListener("abort",J),f()},c);w?.addEventListener("abort",J,{once:!0})})}var Y=2147483647;function P(c,h){if(h=Math.trunc(Math.max(h,0)||0),h<=Y){let J=Number(setTimeout(c,h));return{valueOf:()=>J}}let w=Date.now(),f,y=()=>{let J=h-(Date.now()-w);f=J>Y?Number(setTimeout(y,Y)):Number(setTimeout(c,J))};return y(),{valueOf:()=>f}}import p from"pg";var R=8314027461559302n,A=600000,g=500;async function G(c,h){let{databaseUrl:w,lockTimeoutMs:f=A}=c,y=c.log??((z)=>console.log(z)),J=new p.Client({connectionString:w});await J.connect();let d=Date.now(),m=!1;try{while(!m){if(m=(await J.query("SELECT pg_try_advisory_lock($1) AS locked",[R.toString()])).rows[0]?.locked===!0,m)break;if(Date.now()-d>=f)throw Error(`Timed out after ${f}ms waiting for the DBOS migration lock. Another process is still migrating the dbos schema; this pod will restart and retry.`);await k(g)}let z=Date.now()-d;if(z>1000)y(`[dbos] waited ${z}ms for the migration lock; another process migrated first`);return await h()}finally{if(m)try{await J.query("SELECT pg_advisory_unlock($1)",[R.toString()])}catch{}await J.end().catch(()=>{})}}import{homedir as u}from"os";var I=new Set(["all","worker","api"]);function t(c){let h=(c??"").trim();return I.has(h)?h:"all"}var V=new Set(["production","development","test"]);function n(c){let h=(c??"").trim();return V.has(h)?h:"development"}function D(c){return c==="true"||c==="1"}function K(c,h,w){if(h===void 0||h==="")return;let f=Number(h);if(!Number.isSafeInteger(f)||f<=0)throw Error(`${c} must be a positive integer`);if(w!==void 0&&f>w)throw Error(`${c} must be at most ${w}`);return f}function W(c,h,w,f){return K(c,h,f)??w}function l(c,h,w,f){if(h===void 0||h==="")return w;let y=Number(h);if(!Number.isSafeInteger(y)||y<0)throw Error(`${c} must be a non-negative integer`);if(f!==void 0&&y>f)throw Error(`${c} must be at most ${f}`);return y}function B(c,h){if(c===void 0||c==="")return h;return c==="true"||c==="1"}function O(c){if(!c)return null;try{let w=new URL(c).hostname.replace(/^\[|\]$/g,"");if(w==="localhost"||w==="127.0.0.1"||w==="::1")return null;return c}catch{return null}}function v(c){return c===void 0||c===""||c==="true"||c==="1"}function $(c,h){return c||h}function L(c,h){let w=c.home||h.DATA_DIR||h.DECOCMS_HOME||`${u()}/deco`,f=c.localMode,y=c.nodeEnv||n(h.NODE_ENV),J=h.NATS_URL||"nats://localhost:4222";return{settings:{nodeEnv:y,port:W("PORT",c.port||h.PORT,3000,65535),baseUrl:c.baseUrl||h.BASE_URL,publicUrl:$(h.STUDIO_PUBLIC_URL,h.MESH_PUBLIC_URL),dataDir:w,databasePgSsl:D(h.DATABASE_PG_SSL),databasePoolMax:W("DATABASE_POOL_MAX",h.DATABASE_POOL_MAX,5),dbosPoolSize:W("DBOS_POOL_SIZE",h.DBOS_POOL_SIZE,5),betterAuthSecret:h.BETTER_AUTH_SECRET||"",encryptionKey:h.ENCRYPTION_KEY||"",studioJwtSecret:$(h.STUDIO_JWT_SECRET,h.MESH_JWT_SECRET),localMode:f,disableRateLimit:D(h.DISABLE_RATE_LIMIT),studioProvisionSecretKey:h.STUDIO_PROVISION_SECRET_KEY,deploymentAdminEmails:(h.DEPLOYMENT_ADMIN_EMAILS??"").split(",").map((m)=>m.trim().toLowerCase()).filter(Boolean),clickhouseUrl:h.CLICKHOUSE_URL,clickhouseMaxMemoryUsage:K("CLICKHOUSE_MAX_MEMORY_USAGE",h.CLICKHOUSE_MAX_MEMORY_USAGE),monitoringOtlpEndpoint:h.MONITORING_OTLP_ENDPOINT,otelServiceName:h.OTEL_SERVICE_NAME||"studio",natsCredsPath:h.NATS_CREDS,configPath:h.CONFIG_PATH||"./config.json",aiGatewayEnabled:D(h.DECO_AI_GATEWAY_ENABLED),aiGatewayUrl:h.DECO_AI_GATEWAY_URL||"https://ai-site.deco.site",aiGatewayAdminToken:h.DECO_AI_GATEWAY_ADMIN_TOKEN,stripeWebhookSecret:h.STRIPE_WEBHOOK_SECRET,stripeSecretKey:h.STRIPE_SECRET_KEY,stripeOrgPriceId:h.STRIPE_ORG_PRICE_ID,stripeTopupProductId:h.STRIPE_TOPUP_PRODUCT_ID,topupFeePercent:l("STUDIO_TOPUP_FEE_PERCENT",h.STUDIO_TOPUP_FEE_PERCENT,15,100),taskQuotaEnforced:D(h.STUDIO_TASK_QUOTA_ENFORCED),freeTaskExecutions:W("STUDIO_FREE_TASKS",h.STUDIO_FREE_TASKS,3),monthlyTaskExecutions:W("STUDIO_MONTHLY_TASKS",h.STUDIO_MONTHLY_TASKS,10),maxRunsPerTask:W("STUDIO_MAX_RUNS_PER_TASK",h.STUDIO_MAX_RUNS_PER_TASK,5),enableDecoImport:D(h.ENABLE_DECO_IMPORT),hostingControlPlaneGa:D(h.HOSTING_CONTROL_PLANE_GA),monitorGa:D(h.MONITOR_GA),mcpCacheEnabled:B(h.MCP_CACHE_ENABLED,y!=="development"),orgFsPublicSetsJson:h.ORGFS_PUBLIC_SETS,orgFsMountsDisabled:D(h.DISABLE_ORGFS_MOUNTS),decopilotMaxConcurrentSubagents:W("DECOPILOT_MAX_CONCURRENT_SUBAGENTS",h.DECOPILOT_MAX_CONCURRENT_SUBAGENTS,4),decopilotMaxConcurrentHostedRuns:W("DECOPILOT_MAX_CONCURRENT_HOSTED_RUNS",h.DECOPILOT_MAX_CONCURRENT_HOSTED_RUNS,3),taskBoardReviewSweeperEnabled:B(h.TASK_BOARD_REVIEW_SWEEPER_ENABLED,!0),sandboxMaxConcurrentHostedRuns:W("SANDBOX_MAX_CONCURRENT_HOSTED_RUNS",h.SANDBOX_MAX_CONCURRENT_HOSTED_RUNS,12),s3Endpoint:h.S3_ENDPOINT,s3Bucket:h.S3_BUCKET,s3Region:h.S3_REGION||"auto",s3AccessKeyId:h.S3_ACCESS_KEY_ID,s3SecretAccessKey:h.S3_SECRET_ACCESS_KEY,s3ForcePathStyle:v(h.S3_FORCE_PATH_STYLE),monitoringS3Bucket:h.MONITORING_S3_BUCKET,monitoringS3Endpoint:h.MONITORING_S3_ENDPOINT,monitoringS3Region:h.MONITORING_S3_REGION,monitoringS3AccessKeyId:h.MONITORING_S3_ACCESS_KEY_ID,monitoringS3SecretAccessKey:h.MONITORING_S3_SECRET_ACCESS_KEY,monitoringS3Prefix:h.MONITORING_S3_PREFIX,duckdbExtensionDirectory:h.DUCKDB_EXTENSION_DIRECTORY||"/opt/duckdb/extensions",duckdbMemoryLimit:h.DUCKDB_MEMORY_LIMIT||void 0,duckdbThreads:K("DUCKDB_THREADS",h.DUCKDB_THREADS),isCli:!0,noTui:c.noTui===!0,podName:h.POD_NAME||crypto.randomUUID(),dispatchRole:t($(h.STUDIO_DISPATCH_ROLE,h.MESH_DISPATCH_ROLE)),agentSandboxEnabled:D(h.STUDIO_AGENT_SANDBOX_ENABLED),sandboxStickyHeadRefEnabled:D(h.SANDBOX_STICKY_HEAD_REF),taskBoardRerunReusesPrBranch:B(h.TASK_BOARD_RERUN_REUSES_PR_BRANCH,!0),sandboxReleaseOnRunEndEnabled:D(h.SANDBOX_RELEASE_ON_RUN_END),sandboxReleaseGraceMs:W("SANDBOX_RELEASE_GRACE_MS",h.SANDBOX_RELEASE_GRACE_MS,120000),decoSupabaseUrl:h.DECO_SUPABASE_URL,decoSupabaseServiceKey:h.DECO_SUPABASE_SERVICE_KEY,firecrawlApiKey:h.FIRECRAWL_API_KEY,controlplaneRestUrl:h.CONTROLPLANE_REST_URL,controlplaneServiceToken:h.CONTROLPLANE_SERVICE_TOKEN,analyticsDataUrl:h.ANALYTICS_URL,analyticsMasterToken:h.ANALYTICS_MASTER_TOKEN,clickhouseAnalyticsUrl:h.CLICKHOUSE_ANALYTICS_ADDRESS,clickhouseAnalyticsUsername:h.CLICKHOUSE_ANALYTICS_USERNAME||"admin_monitor",clickhouseAnalyticsPassword:h.CLICKHOUSE_ANALYTICS_PASSWORD,oneDollarStatsApiKey:h.ONEDOLLAR_BACKEND_API_KEY,reportsInternalApiUrl:$(h.REPORTS_INTERNAL_API_URL,h.COMMERCE_DISCOVERY_INTERNAL_API_URL),reportsInternalApiKey:$(h.REPORTS_INTERNAL_API_KEY,h.COMMERCE_DISCOVERY_INTERNAL_API_KEY),s3TenantBucket:h.S3_TENANT_BUCKET||"new-deco-sites-assets",s3TenantRegion:h.S3_TENANT_REGION||"us-west-2",s3TenantEndpoint:h.S3_TENANT_ENDPOINT,s3TenantPublicUrlBase:h.S3_TENANT_PUBLIC_URL_BASE||"https://decoims.com",awsS3TenantRoleArn:h.AWS_S3_TENANT_ROLE_ARN,awsS3TenantProvisionerAccessKeyId:h.AWS_S3_TENANT_PROVISIONER_ACCESS_KEY_ID,awsS3TenantProvisionerSecretAccessKey:h.AWS_S3_TENANT_PROVISIONER_SECRET_ACCESS_KEY},externalDatabaseUrl:O(h.DATABASE_URL),externalNatsUrl:O(J),skipMigrations:c.skipMigrations}}var Q=null;function F(){if(!Q)s();return Q}function s(){if(Q)return;let c={...process.env},h=L({port:c.PORT||"3000",home:c.DATA_DIR||c.DECOCMS_HOME||"",localMode:c.DECOCMS_LOCAL_MODE==="true",skipMigrations:!0,noTui:c.DECO_NO_TUI==="true",vitePort:c.VITE_PORT,baseUrl:c.BASE_URL},c);Q=Object.freeze({...h.settings,databaseUrl:c.DATABASE_URL||"postgresql://postgres:postgres@localhost:5432/postgres",natsUrls:(c.NATS_URL||"nats://localhost:4222").split(",").map((w)=>w.trim()).filter(Boolean)})}import{Kysely as Mw,PostgresDialect as Pw}from"kysely";import{Pool as Aw}from"pg";import{createContextKey as wh,metrics as yh,propagation as pc,ROOT_CONTEXT as Ac,SpanStatusCode as gc,trace as Jh}from"@opentelemetry/api";import{logs as fh,SeverityNumber as i}from"@opentelemetry/api-logs";import{OTLPLogExporter as tc}from"@opentelemetry/exporter-logs-otlp-proto";import{PrometheusExporter as mh}from"@opentelemetry/exporter-prometheus";import{OTLPTraceExporter as lc}from"@opentelemetry/exporter-trace-otlp-proto";import{RuntimeNodeInstrumentation as sc}from"@opentelemetry/instrumentation-runtime-node";import{context as Sh,propagation as bh,SpanKind as Th,SpanStatusCode as _h}from"@opentelemetry/api";var Ph=globalThis.fetch;import{ExportResultCode as rh}from"@opentelemetry/core";import{ExportResultCode as N}from"@opentelemetry/core";import{mkdir as r,rename as e,writeFile as a}from"fs/promises";import{join as j}from"path";class X{bufferItems=[];bufferBytes=0;flushTimer=null;flushQueue=Promise.resolve();basePath;flushThreshold;maxBufferBytes;isShutdown=!1;knownDirs=new Set;partitionKey;constructor(c){this.basePath=c.basePath,this.flushThreshold=c.flushThreshold??1000,this.maxBufferBytes=c.maxBufferBytes??10485760,this.partitionKey=c.partitionKey;let h=c.flushIntervalMs??60000;if(h>0&&h<3600000){if(this.flushTimer=setInterval(()=>{this.flush().catch((w)=>{console.error("[NDJSONExporter] Timer flush failed:",w)})},h),this.flushTimer&&typeof this.flushTimer==="object"&&"unref"in this.flushTimer)this.flushTimer.unref()}}exportRows(c){if(this.isShutdown)return Promise.resolve({code:N.FAILED});for(let h of c){let w=JSON.stringify(h),f=this.partitionKey?this.partitionKey(h):"";this.bufferItems.push({partition:f,json:w}),this.bufferBytes+=Buffer.byteLength(w,"utf8")+1}if(this.bufferItems.length>=this.flushThreshold||this.bufferBytes>=this.maxBufferBytes)return this.flush().then(()=>({code:N.SUCCESS})).catch((h)=>{return console.error("[NDJSONExporter] Flush failed:",h),{code:N.FAILED}});return Promise.resolve({code:N.SUCCESS})}async shutdown(){if(this.isShutdown=!0,this.flushTimer)clearInterval(this.flushTimer),this.flushTimer=null;try{await this.flushQueue}catch{}if(this.bufferItems.length>0)await this.flush()}async forceFlush(){try{await this.flushQueue}catch{}if(this.bufferItems.length>0)await this.flush()}flush(){let h=this.flushQueue.catch(()=>{}).then(()=>this.doFlush());return this.flushQueue=h,h}async doFlush(){if(this.bufferItems.length===0)return;let c=this.bufferItems;this.bufferItems=[],this.bufferBytes=0;let h=new Map;for(let y of c){let J=h.get(y.partition);if(!J)J=[],h.set(y.partition,J);J.push(y.json)}let w=await Promise.allSettled(Array.from(h.entries()).map(([y,J])=>this.writeNDJSON(J,y).then(()=>y))),f=w.find((y)=>y.status==="rejected");if(f){let y=new Set;for(let d of w)if(d.status==="fulfilled")y.add(d.value);let J=c.filter((d)=>!y.has(d.partition));this.bufferItems=J.concat(this.bufferItems),this.bufferBytes=0;for(let d of this.bufferItems)this.bufferBytes+=Buffer.byteLength(d.json,"utf8")+1;throw f.reason}}async writeNDJSON(c,h){let w=new Date,f=[String(w.getUTCFullYear()),String(w.getUTCMonth()+1).padStart(2,"0"),String(w.getUTCDate()).padStart(2,"0"),String(w.getUTCHours()).padStart(2,"0")],y=h?j(this.basePath,h,...f):j(this.basePath,...f);if(!this.knownDirs.has(y))await r(y,{recursive:!0,mode:448}),this.knownDirs.add(y);let J=`${crypto.randomUUID()}.ndjson`,d=j(y,`.${J}.tmp`),m=j(y,J),z=c.join(`
|
|
2
|
+
var M=import.meta.require;var q="11";function E(c){return{name:"decocms",systemDatabaseUrl:c.systemDatabaseUrl,systemDatabaseSchemaName:"dbos",systemDatabasePoolSize:c.poolSize,runAdminServer:!1,executorID:c.executorID,applicationVersion:q,...c.listenQueues!==void 0?{listenQueues:c.listenQueues}:{}}}function k(c,h={}){let{signal:w}=h;if(w?.aborted)return Promise.reject(w.reason);return new Promise((f,y)=>{let J=()=>{clearTimeout(+m),y(w?.reason)},m=P(()=>{w?.removeEventListener("abort",J),f()},c);w?.addEventListener("abort",J,{once:!0})})}var Y=2147483647;function P(c,h){if(h=Math.trunc(Math.max(h,0)||0),h<=Y){let J=Number(setTimeout(c,h));return{valueOf:()=>J}}let w=Date.now(),f,y=()=>{let J=h-(Date.now()-w);f=J>Y?Number(setTimeout(y,Y)):Number(setTimeout(c,J))};return y(),{valueOf:()=>f}}import p from"pg";var R=8314027461559302n,A=600000,g=500;async function G(c,h){let{databaseUrl:w,lockTimeoutMs:f=A}=c,y=c.log??((D)=>console.log(D)),J=new p.Client({connectionString:w});await J.connect();let d=Date.now(),m=!1;try{while(!m){if(m=(await J.query("SELECT pg_try_advisory_lock($1) AS locked",[R.toString()])).rows[0]?.locked===!0,m)break;if(Date.now()-d>=f)throw Error(`Timed out after ${f}ms waiting for the DBOS migration lock. Another process is still migrating the dbos schema; this pod will restart and retry.`);await k(g)}let D=Date.now()-d;if(D>1000)y(`[dbos] waited ${D}ms for the migration lock; another process migrated first`);return await h()}finally{if(m)try{await J.query("SELECT pg_advisory_unlock($1)",[R.toString()])}catch{}await J.end().catch(()=>{})}}import{homedir as u}from"os";var I=new Set(["all","worker","api"]);function t(c){let h=(c??"").trim();return I.has(h)?h:"all"}var V=new Set(["production","development","test"]);function n(c){let h=(c??"").trim();return V.has(h)?h:"development"}function z(c){return c==="true"||c==="1"}function K(c,h,w){if(h===void 0||h==="")return;let f=Number(h);if(!Number.isSafeInteger(f)||f<=0)throw Error(`${c} must be a positive integer`);if(w!==void 0&&f>w)throw Error(`${c} must be at most ${w}`);return f}function W(c,h,w,f){return K(c,h,f)??w}function l(c,h,w,f){if(h===void 0||h==="")return w;let y=Number(h);if(!Number.isSafeInteger(y)||y<0)throw Error(`${c} must be a non-negative integer`);if(f!==void 0&&y>f)throw Error(`${c} must be at most ${f}`);return y}function B(c,h){if(c===void 0||c==="")return h;return c==="true"||c==="1"}function O(c){if(!c)return null;try{let w=new URL(c).hostname.replace(/^\[|\]$/g,"");if(w==="localhost"||w==="127.0.0.1"||w==="::1")return null;return c}catch{return null}}function v(c){return c===void 0||c===""||c==="true"||c==="1"}function $(c,h){return c||h}function L(c,h){let w=c.home||h.DATA_DIR||h.DECOCMS_HOME||`${u()}/deco`,f=c.localMode,y=c.nodeEnv||n(h.NODE_ENV),J=h.NATS_URL||"nats://localhost:4222";return{settings:{nodeEnv:y,port:W("PORT",c.port||h.PORT,3000,65535),baseUrl:c.baseUrl||h.BASE_URL,publicUrl:$(h.STUDIO_PUBLIC_URL,h.MESH_PUBLIC_URL),dataDir:w,databasePgSsl:z(h.DATABASE_PG_SSL),databasePoolMax:W("DATABASE_POOL_MAX",h.DATABASE_POOL_MAX,5),dbosPoolSize:W("DBOS_POOL_SIZE",h.DBOS_POOL_SIZE,5),betterAuthSecret:h.BETTER_AUTH_SECRET||"",encryptionKey:h.ENCRYPTION_KEY||"",studioJwtSecret:$(h.STUDIO_JWT_SECRET,h.MESH_JWT_SECRET),localMode:f,disableRateLimit:z(h.DISABLE_RATE_LIMIT),jiraAllowLocalSiteUrl:z(h.JIRA_ALLOW_LOCAL_SITE_URL),studioProvisionSecretKey:h.STUDIO_PROVISION_SECRET_KEY,deploymentAdminEmails:(h.DEPLOYMENT_ADMIN_EMAILS??"").split(",").map((m)=>m.trim().toLowerCase()).filter(Boolean),clickhouseUrl:h.CLICKHOUSE_URL,clickhouseMaxMemoryUsage:K("CLICKHOUSE_MAX_MEMORY_USAGE",h.CLICKHOUSE_MAX_MEMORY_USAGE),monitoringOtlpEndpoint:h.MONITORING_OTLP_ENDPOINT,otelServiceName:h.OTEL_SERVICE_NAME||"studio",natsCredsPath:h.NATS_CREDS,configPath:h.CONFIG_PATH||"./config.json",aiGatewayEnabled:z(h.DECO_AI_GATEWAY_ENABLED),aiGatewayUrl:h.DECO_AI_GATEWAY_URL||"https://ai-site.deco.site",aiGatewayAdminToken:h.DECO_AI_GATEWAY_ADMIN_TOKEN,stripeWebhookSecret:h.STRIPE_WEBHOOK_SECRET,stripeSecretKey:h.STRIPE_SECRET_KEY,stripeOrgPriceId:h.STRIPE_ORG_PRICE_ID,stripeTopupProductId:h.STRIPE_TOPUP_PRODUCT_ID,topupFeePercent:l("STUDIO_TOPUP_FEE_PERCENT",h.STUDIO_TOPUP_FEE_PERCENT,15,100),taskQuotaEnforced:z(h.STUDIO_TASK_QUOTA_ENFORCED),freeTaskExecutions:W("STUDIO_FREE_TASKS",h.STUDIO_FREE_TASKS,3),monthlyTaskExecutions:W("STUDIO_MONTHLY_TASKS",h.STUDIO_MONTHLY_TASKS,10),maxRunsPerTask:W("STUDIO_MAX_RUNS_PER_TASK",h.STUDIO_MAX_RUNS_PER_TASK,5),enableDecoImport:z(h.ENABLE_DECO_IMPORT),hostingControlPlaneGa:z(h.HOSTING_CONTROL_PLANE_GA),monitorGa:z(h.MONITOR_GA),mcpCacheEnabled:B(h.MCP_CACHE_ENABLED,y!=="development"),orgFsPublicSetsJson:h.ORGFS_PUBLIC_SETS,orgFsMountsDisabled:z(h.DISABLE_ORGFS_MOUNTS),decopilotMaxConcurrentSubagents:W("DECOPILOT_MAX_CONCURRENT_SUBAGENTS",h.DECOPILOT_MAX_CONCURRENT_SUBAGENTS,4),decopilotMaxConcurrentHostedRuns:W("DECOPILOT_MAX_CONCURRENT_HOSTED_RUNS",h.DECOPILOT_MAX_CONCURRENT_HOSTED_RUNS,3),taskBoardReviewSweeperEnabled:B(h.TASK_BOARD_REVIEW_SWEEPER_ENABLED,!0),sandboxMaxConcurrentHostedRuns:W("SANDBOX_MAX_CONCURRENT_HOSTED_RUNS",h.SANDBOX_MAX_CONCURRENT_HOSTED_RUNS,12),s3Endpoint:h.S3_ENDPOINT,s3Bucket:h.S3_BUCKET,s3Region:h.S3_REGION||"auto",s3AccessKeyId:h.S3_ACCESS_KEY_ID,s3SecretAccessKey:h.S3_SECRET_ACCESS_KEY,s3ForcePathStyle:v(h.S3_FORCE_PATH_STYLE),monitoringS3Bucket:h.MONITORING_S3_BUCKET,monitoringS3Endpoint:h.MONITORING_S3_ENDPOINT,monitoringS3Region:h.MONITORING_S3_REGION,monitoringS3AccessKeyId:h.MONITORING_S3_ACCESS_KEY_ID,monitoringS3SecretAccessKey:h.MONITORING_S3_SECRET_ACCESS_KEY,monitoringS3Prefix:h.MONITORING_S3_PREFIX,duckdbExtensionDirectory:h.DUCKDB_EXTENSION_DIRECTORY||"/opt/duckdb/extensions",duckdbMemoryLimit:h.DUCKDB_MEMORY_LIMIT||void 0,duckdbThreads:K("DUCKDB_THREADS",h.DUCKDB_THREADS),isCli:!0,noTui:c.noTui===!0,podName:h.POD_NAME||crypto.randomUUID(),dispatchRole:t($(h.STUDIO_DISPATCH_ROLE,h.MESH_DISPATCH_ROLE)),agentSandboxEnabled:z(h.STUDIO_AGENT_SANDBOX_ENABLED),sandboxStickyHeadRefEnabled:z(h.SANDBOX_STICKY_HEAD_REF),taskBoardRerunReusesPrBranch:B(h.TASK_BOARD_RERUN_REUSES_PR_BRANCH,!0),sandboxReleaseOnRunEndEnabled:z(h.SANDBOX_RELEASE_ON_RUN_END),sandboxReleaseGraceMs:W("SANDBOX_RELEASE_GRACE_MS",h.SANDBOX_RELEASE_GRACE_MS,120000),decoSupabaseUrl:h.DECO_SUPABASE_URL,decoSupabaseServiceKey:h.DECO_SUPABASE_SERVICE_KEY,firecrawlApiKey:h.FIRECRAWL_API_KEY,controlplaneRestUrl:h.CONTROLPLANE_REST_URL,controlplaneServiceToken:h.CONTROLPLANE_SERVICE_TOKEN,analyticsDataUrl:h.ANALYTICS_URL,analyticsMasterToken:h.ANALYTICS_MASTER_TOKEN,clickhouseAnalyticsUrl:h.CLICKHOUSE_ANALYTICS_ADDRESS,clickhouseAnalyticsUsername:h.CLICKHOUSE_ANALYTICS_USERNAME||"admin_monitor",clickhouseAnalyticsPassword:h.CLICKHOUSE_ANALYTICS_PASSWORD,oneDollarStatsApiKey:h.ONEDOLLAR_BACKEND_API_KEY,reportsInternalApiUrl:$(h.REPORTS_INTERNAL_API_URL,h.COMMERCE_DISCOVERY_INTERNAL_API_URL),reportsInternalApiKey:$(h.REPORTS_INTERNAL_API_KEY,h.COMMERCE_DISCOVERY_INTERNAL_API_KEY),s3TenantBucket:h.S3_TENANT_BUCKET||"new-deco-sites-assets",s3TenantRegion:h.S3_TENANT_REGION||"us-west-2",s3TenantEndpoint:h.S3_TENANT_ENDPOINT,s3TenantPublicUrlBase:h.S3_TENANT_PUBLIC_URL_BASE||"https://decoims.com",awsS3TenantRoleArn:h.AWS_S3_TENANT_ROLE_ARN,awsS3TenantProvisionerAccessKeyId:h.AWS_S3_TENANT_PROVISIONER_ACCESS_KEY_ID,awsS3TenantProvisionerSecretAccessKey:h.AWS_S3_TENANT_PROVISIONER_SECRET_ACCESS_KEY},externalDatabaseUrl:O(h.DATABASE_URL),externalNatsUrl:O(J),skipMigrations:c.skipMigrations}}var Q=null;function F(){if(!Q)s();return Q}function s(){if(Q)return;let c={...process.env},h=L({port:c.PORT||"3000",home:c.DATA_DIR||c.DECOCMS_HOME||"",localMode:c.DECOCMS_LOCAL_MODE==="true",skipMigrations:!0,noTui:c.DECO_NO_TUI==="true",vitePort:c.VITE_PORT,baseUrl:c.BASE_URL},c);Q=Object.freeze({...h.settings,databaseUrl:c.DATABASE_URL||"postgresql://postgres:postgres@localhost:5432/postgres",natsUrls:(c.NATS_URL||"nats://localhost:4222").split(",").map((w)=>w.trim()).filter(Boolean)})}import{Kysely as Mw,PostgresDialect as Pw}from"kysely";import{Pool as Aw}from"pg";import{createContextKey as wh,metrics as yh,propagation as pc,ROOT_CONTEXT as Ac,SpanStatusCode as gc,trace as Jh}from"@opentelemetry/api";import{logs as fh,SeverityNumber as i}from"@opentelemetry/api-logs";import{OTLPLogExporter as tc}from"@opentelemetry/exporter-logs-otlp-proto";import{PrometheusExporter as mh}from"@opentelemetry/exporter-prometheus";import{OTLPTraceExporter as lc}from"@opentelemetry/exporter-trace-otlp-proto";import{RuntimeNodeInstrumentation as sc}from"@opentelemetry/instrumentation-runtime-node";import{context as Sh,propagation as bh,SpanKind as Th,SpanStatusCode as _h}from"@opentelemetry/api";var Ph=globalThis.fetch;import{ExportResultCode as rh}from"@opentelemetry/core";import{ExportResultCode as N}from"@opentelemetry/core";import{mkdir as r,rename as e,writeFile as a}from"fs/promises";import{join as j}from"path";class X{bufferItems=[];bufferBytes=0;flushTimer=null;flushQueue=Promise.resolve();basePath;flushThreshold;maxBufferBytes;isShutdown=!1;knownDirs=new Set;partitionKey;constructor(c){this.basePath=c.basePath,this.flushThreshold=c.flushThreshold??1000,this.maxBufferBytes=c.maxBufferBytes??10485760,this.partitionKey=c.partitionKey;let h=c.flushIntervalMs??60000;if(h>0&&h<3600000){if(this.flushTimer=setInterval(()=>{this.flush().catch((w)=>{console.error("[NDJSONExporter] Timer flush failed:",w)})},h),this.flushTimer&&typeof this.flushTimer==="object"&&"unref"in this.flushTimer)this.flushTimer.unref()}}exportRows(c){if(this.isShutdown)return Promise.resolve({code:N.FAILED});for(let h of c){let w=JSON.stringify(h),f=this.partitionKey?this.partitionKey(h):"";this.bufferItems.push({partition:f,json:w}),this.bufferBytes+=Buffer.byteLength(w,"utf8")+1}if(this.bufferItems.length>=this.flushThreshold||this.bufferBytes>=this.maxBufferBytes)return this.flush().then(()=>({code:N.SUCCESS})).catch((h)=>{return console.error("[NDJSONExporter] Flush failed:",h),{code:N.FAILED}});return Promise.resolve({code:N.SUCCESS})}async shutdown(){if(this.isShutdown=!0,this.flushTimer)clearInterval(this.flushTimer),this.flushTimer=null;try{await this.flushQueue}catch{}if(this.bufferItems.length>0)await this.flush()}async forceFlush(){try{await this.flushQueue}catch{}if(this.bufferItems.length>0)await this.flush()}flush(){let h=this.flushQueue.catch(()=>{}).then(()=>this.doFlush());return this.flushQueue=h,h}async doFlush(){if(this.bufferItems.length===0)return;let c=this.bufferItems;this.bufferItems=[],this.bufferBytes=0;let h=new Map;for(let y of c){let J=h.get(y.partition);if(!J)J=[],h.set(y.partition,J);J.push(y.json)}let w=await Promise.allSettled(Array.from(h.entries()).map(([y,J])=>this.writeNDJSON(J,y).then(()=>y))),f=w.find((y)=>y.status==="rejected");if(f){let y=new Set;for(let d of w)if(d.status==="fulfilled")y.add(d.value);let J=c.filter((d)=>!y.has(d.partition));this.bufferItems=J.concat(this.bufferItems),this.bufferBytes=0;for(let d of this.bufferItems)this.bufferBytes+=Buffer.byteLength(d.json,"utf8")+1;throw f.reason}}async writeNDJSON(c,h){let w=new Date,f=[String(w.getUTCFullYear()),String(w.getUTCMonth()+1).padStart(2,"0"),String(w.getUTCDate()).padStart(2,"0"),String(w.getUTCHours()).padStart(2,"0")],y=h?j(this.basePath,h,...f):j(this.basePath,...f);if(!this.knownDirs.has(y))await r(y,{recursive:!0,mode:448}),this.knownDirs.add(y);let J=`${crypto.randomUUID()}.ndjson`,d=j(y,`.${J}.tmp`),m=j(y,J),D=c.join(`
|
|
3
3
|
`)+`
|
|
4
|
-
`;await a(d,
|
|
4
|
+
`;await a(d,D,{mode:384}),await e(d,m)}}import{ExportResultCode as wc}from"@opentelemetry/core";import{AggregationTemporality as Jc,DataPointType as fc}from"@opentelemetry/sdk-metrics";import{ExportResultCode as Zc}from"@opentelemetry/core";var Nc=Buffer.byteLength("... [TRUNCATED]","utf8");import{BatchLogRecordProcessor as fw,LoggerProvider as mw}from"@opentelemetry/sdk-logs";import{detectResources as zw,envDetector as Dw,hostDetector as Ww,osDetector as Zw,processDetector as $w,resourceFromAttributes as Fw}from"@opentelemetry/resources";import{PeriodicExportingMetricReader as Nw}from"@opentelemetry/sdk-metrics";import{NOOP_LOGGER as Yc}from"@opentelemetry/api-logs";import{NodeSDK as Yw}from"@opentelemetry/sdk-node";import{BatchSpanProcessor as Bw,SamplingDecision as Z}from"@opentelemetry/sdk-trace-base";import{SpanStatusCode as ic}from"@opentelemetry/api";var dh="__d",zh=wh("Current request"),Dh=1;var b=(c)=>{let w=new URL(c.url).searchParams.get(dh);if(w==="")return crypto.randomUUID();if(!w)w=c.headers.get("x-trace-debug-id");return w};class T{inner;constructor(c){this.inner=c}shouldSample(c,h,w,f,y,J){let d=c.getValue(zh);if(!d){if(this.inner)return this.inner.shouldSample(c,h,w,f,y,J);return{decision:Z.RECORD_AND_SAMPLED}}let m=b(d);if(m)return{decision:Z.RECORD_AND_SAMPLED,attributes:{"trace.debug.id":m}};if(this.inner){let D=this.inner.shouldSample(c,h,w,f,y,J);if(D.decision===Z.RECORD_AND_SAMPLED){let o=crypto.randomUUID();D.attributes={...D.attributes??{},"trace.debug.id":o}}return D}return{decision:Z.NOT_RECORD}}toString(){return"DebugSampler"}}class _{ratio;constructor(c){this.ratio=c}shouldSample(){if(Math.random()<this.ratio)return{decision:Z.RECORD_AND_SAMPLED};return{decision:Z.NOT_RECORD}}toString(){return`RatioSampler(${this.ratio})`}}var Uw=new mh({preventServerStart:!0}),iw=new T(new _(Dh));var S=Jh.getTracer("studio","1.0.0"),U=yh.getMeter("studio","1.0.0"),Wh=fh.getLogger("studio","1.0.0"),x=(c,h,w)=>{let f={},y=w,J=w[w.length-1];if(J!==null&&typeof J==="object"&&!Array.isArray(J)&&!(J instanceof Error)&&Object.getPrototypeOf(J)===Object.prototype)f=J,y=w.slice(0,-1);let d=y.map((m)=>{if(m instanceof Error)return`${m.name}: ${m.message}`;if(typeof m==="object")try{return JSON.stringify(m)}catch{return"[Object]"}return String(m)}).join(" ");Wh.emit({severityNumber:c,severityText:h,body:d,attributes:{"log.source":"console",...f}})},H={error:console.error.bind(console),warn:console.warn.bind(console),debug:console.debug.bind(console)};console.error=(...c)=>{x(i.ERROR,"ERROR",c),H.error(...c)};console.warn=(...c)=>{x(i.WARN,"WARN",c),H.warn(...c)};console.debug=(...c)=>{x(i.DEBUG,"DEBUG",c),H.debug(...c)};function C(c,h){if(!h)return c;let w=new URL(c);if(!w.searchParams.has("sslmode"))w.searchParams.set("sslmode","verify-full");return w.toString()}async function Zh(){let c=F(),{DBOS:h}=await import("@dbos-inc/dbos-sdk");h.setConfig(E({systemDatabaseUrl:C(c.databaseUrl,c.databasePgSsl),poolSize:c.dbosPoolSize,executorID:c.podName,listenQueues:[]})),await G({databaseUrl:C(c.databaseUrl,c.databasePgSsl)},async()=>{await h.launch(),await h.shutdown()})}if(import.meta.main)(async()=>{try{await Zh(),console.log("DBOS system-schema migrations completed."),process.exit(0)}catch(c){console.error("DBOS system-schema migration failed:",c),process.exit(1)}})();export{Zh as migrateDbos};
|