decocms 4.119.1 → 4.121.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-nRXR10Nf.js → AlertCircle-OzZiRcN4.js} +1 -1
- package/dist/client/assets/{AreaChart-DBhluMiP.js → AreaChart-CjpEkyIS.js} +1 -1
- package/dist/client/assets/{ArrowRight-CW-i1pkf.js → ArrowRight-BTqt321d.js} +1 -1
- package/dist/client/assets/{ArrowUp-D9e43_XS.js → ArrowUp-DKOgR0xL.js} +1 -1
- package/dist/client/assets/{ArrowUpRight-9JkZ4ieN.js → ArrowUpRight-CvwJB6OK.js} +1 -1
- package/dist/client/assets/{Check-BpW-TQ7D.js → Check-C9Hy68pG.js} +1 -1
- package/dist/client/assets/{CheckCircle-COiLF-oc.js → CheckCircle-6cj-Xwhi.js} +1 -1
- package/dist/client/assets/{ChevronDown-TKx9ZODP.js → ChevronDown-CZIAcwGV.js} +1 -1
- package/dist/client/assets/{ChevronRight-C2GB53Iv.js → ChevronRight--wVf7uGf.js} +1 -1
- package/dist/client/assets/{ChevronUp-CwQf05FO.js → ChevronUp-CsSKaqS5.js} +1 -1
- package/dist/client/assets/{Copy01-Md2vLhPK.js → Copy01-2Oyl2xhw.js} +1 -1
- package/dist/client/assets/{DotsVertical-IOVrCXy5.js → DotsVertical-c-_wCTgn.js} +1 -1
- package/dist/client/assets/{Eye-CPcV49Sl.js → Eye-D81BWda-.js} +1 -1
- package/dist/client/assets/{FilterLines-CGBCHWIR.js → FilterLines-D73LV27Z.js} +1 -1
- package/dist/client/assets/{Globe01-BkMDlVXe.js → Globe01-CDWygr27.js} +1 -1
- package/dist/client/assets/{Globe04-ClZwbZmu.js → Globe04-D4m747kU.js} +1 -1
- package/dist/client/assets/{HardDrive-BP91E3_h.js → HardDrive-zpDb2j2L.js} +1 -1
- package/dist/client/assets/{Image01-D_Luds9g.js → Image01--bBQuOXb.js} +1 -1
- package/dist/client/assets/{Key01-CCc-DKKO.js → Key01-COjK9kAq.js} +1 -1
- package/dist/client/assets/{LayoutLeft-B4CHjHmF.js → LayoutLeft-YhbkIV5-.js} +1 -1
- package/dist/client/assets/{LinkExternal01-BmhRI0oK.js → LinkExternal01-D_Zvma4v.js} +1 -1
- package/dist/client/assets/{LogOut01-BRAZiewp.js → LogOut01-DWjWz0Vk.js} +1 -1
- package/dist/client/assets/{Monitor01-CLVBNy5E.js → Monitor01-RMk_Hy33.js} +1 -1
- package/dist/client/assets/{Package-q7caY53X.js → Package-KX2QCXEp.js} +1 -1
- package/dist/client/assets/{Palette-nMEEaIji.js → Palette-BUK1fohV.js} +1 -1
- package/dist/client/assets/{Play-Duz2kBcD.js → Play-BQfux-g7.js} +1 -1
- package/dist/client/assets/{Plus-B-Qja51x.js → Plus-0lhw9kgX.js} +1 -1
- package/dist/client/assets/{SearchLg-Bc7j0j6U.js → SearchLg-D5zWzyl-.js} +1 -1
- package/dist/client/assets/{SearchMd-tmOrct3l.js → SearchMd-DU09j0yH.js} +1 -1
- package/dist/client/assets/{Settings02-BpVm-Hj5.js → Settings02-DQ4GSu-t.js} +1 -1
- package/dist/client/assets/{Shield01-0lVQpDUk.js → Shield01-CfcJULbp.js} +1 -1
- package/dist/client/assets/{Star01-DxI2bqU6.js → Star01-KC9BvNup.js} +1 -1
- package/dist/client/assets/{Stars01-C08Z4JAy.js → Stars01-BS-Qws6o.js} +1 -1
- package/dist/client/assets/{Stars02-BEMkwoHa.js → Stars02-DfuXiu3-.js} +1 -1
- package/dist/client/assets/{Sun-HMT92IkA.js → Sun-C8Rt6Ua0.js} +1 -1
- package/dist/client/assets/{SwitchHorizontal01-Bhgef4kA.js → SwitchHorizontal01-vm3X2ReA.js} +1 -1
- package/dist/client/assets/{Tool01-DbZ7eilD.js → Tool01-B1EOI3tm.js} +1 -1
- package/dist/client/assets/{Tool02-BDu8se19.js → Tool02-DNB1gZ9p.js} +1 -1
- package/dist/client/assets/{Trash01-BvBN858U.js → Trash01-DWauVxmg.js} +1 -1
- package/dist/client/assets/{TrendUp01-0Vw4fl1M.js → TrendUp01-CKe9YInp.js} +1 -1
- package/dist/client/assets/{Upload01-BTXLZMDf.js → Upload01-Jx7sveIV.js} +1 -1
- package/dist/client/assets/{User01-BW-nAqNy.js → User01-DOzH65Yj.js} +1 -1
- package/dist/client/assets/{Users01-C3ki1XfT.js → Users01-Bl3Cipzb.js} +1 -1
- package/dist/client/assets/{Users03-DkWEDxvf.js → Users03-B_epF-ec.js} +1 -1
- package/dist/client/assets/{X-5ZVDn78K.js → X-CkADyhqE.js} +1 -1
- package/dist/client/assets/{XCircle-D_7-Csw6.js → XCircle-C1PO7Xjh.js} +1 -1
- package/dist/client/assets/{XClose-D5NNYdPj.js → XClose-C6Z74Mtu.js} +1 -1
- package/dist/client/assets/{Zap-Ce0h7G0i.js → Zap-crfeCyH5.js} +1 -1
- package/dist/client/assets/{ZapSquare-C9i5YIc_.js → ZapSquare-ixKz1MO4.js} +1 -1
- package/dist/client/assets/{ZoomOut-B3WXMRDF.js → ZoomOut-C1FPWq-p.js} +1 -1
- package/dist/client/assets/{access-gate-CexPchUb.js → access-gate-CcngdG7g.js} +1 -1
- package/dist/client/assets/{add-section-modal-gcUhgBso.js → add-section-modal-DHx-fMXc.js} +1 -1
- package/dist/client/assets/{agent-icon-NPFX5Ji5.js → agent-icon-BZhgfhdU.js} +1 -1
- package/dist/client/assets/{agents-list-C5xnSN2K.js → agents-list-BGb151p2.js} +1 -1
- package/dist/client/assets/{ai-providers-qQ86Ea4B.js → ai-providers-BxclPNUd.js} +1 -1
- package/dist/client/assets/{alert-DEH1Y71V.js → alert-DooiWR2A.js} +1 -1
- package/dist/client/assets/{alert-dialog-DmVUDS6f.js → alert-dialog-eVH4lDuw.js} +1 -1
- package/dist/client/assets/{app-editor-_Vbe3OLc.js → app-editor-BKf1KIok.js} +1 -1
- package/dist/client/assets/{auth-DstbbNeC.js → auth-BgXJQGvH.js} +1 -1
- package/dist/client/assets/{auth-catchall-BnuUZNMO.js → auth-catchall-DCT6HGy2.js} +1 -1
- package/dist/client/assets/{auth-entry-Afz0VDxl.js → auth-entry-Dc3L3Akt.js} +1 -1
- package/dist/client/assets/{auth-split-layout-DvlfU3i9.js → auth-split-layout-CG3_FykH.js} +1 -1
- package/dist/client/assets/{authenticate-and-persist-oauth-CjGHBMTV.js → authenticate-and-persist-oauth-EDYGCrss.js} +1 -1
- package/dist/client/assets/{automation-list-row-BTXjik2W.js → automation-list-row-COyQ04hP.js} +1 -1
- package/dist/client/assets/{automation-runs-Cy7euIfu.js → automation-runs-3Nf8PuON.js} +1 -1
- package/dist/client/assets/{automations-BF3RbH21.js → automations-wnjz-FC-.js} +1 -1
- package/dist/client/assets/{autosend-Bgi3Ty4H.js → autosend-DMw4eplP.js} +1 -1
- package/dist/client/assets/{avatar-CPwyurDv.js → avatar-DOKisfmu.js} +1 -1
- package/dist/client/assets/{badge-BPSq-IV_.js → badge-BP3RfcAV.js} +1 -1
- package/dist/client/assets/{block-document-CVtLmC7H.js → block-document-DoFgnzXM.js} +1 -1
- package/dist/client/assets/{brand-context-CAkoW1Le.js → brand-context-vAm7cU55.js} +1 -1
- package/dist/client/assets/{buckets-G50CAu7m.js → buckets-Don5jA6A.js} +1 -1
- package/dist/client/assets/{bulk-category-panel-Bhm49OLX.js → bulk-category-panel-bPJqoX9I.js} +1 -1
- package/dist/client/assets/{calendar-ChqFMgfm.js → calendar-DXzTKJPo.js} +1 -1
- package/dist/client/assets/{capability-load-error-BTN8HyoE.js → capability-load-error-CCKA37Gn.js} +1 -1
- package/dist/client/assets/{card-Dvy5AFoX.js → card-BkL1g2ae.js} +1 -1
- package/dist/client/assets/{category-editor-YO0SQV_I.js → category-editor-3xHYN9wy.js} +1 -1
- package/dist/client/assets/{chat-context-BkEJSWRu.js → chat-context-BjgR1MKj.js} +1 -1
- package/dist/client/assets/{checkbox-enFl2hrG.js → checkbox-Dvf0sR7c.js} +1 -1
- package/dist/client/assets/{cli-auth-success-XdYKzFim.js → cli-auth-success-X1wp_kVa.js} +1 -1
- package/dist/client/assets/{collection-detail-Cm6IqGAL.js → collection-detail-DMCqElTG.js} +1 -1
- package/dist/client/assets/{collection-display-button-BV0C7Dd3.js → collection-display-button-CWcabOLq.js} +1 -1
- package/dist/client/assets/{collection-search-BHM8qIhL.js → collection-search-BUwXi5On.js} +1 -1
- package/dist/client/assets/{collection-table-wrapper-D4dvCDPy.js → collection-table-wrapper-CUL6yX5d.js} +1 -1
- package/dist/client/assets/{collection-tabs-OUJoQ0K6.js → collection-tabs-Bg8diJEX.js} +1 -1
- package/dist/client/assets/{command-C5rtNHqt.js → command-DolM9tQW.js} +1 -1
- package/dist/client/assets/{commerce-onboarding-BjMBi8Jk.js → commerce-onboarding-Bog614JY.js} +1 -1
- package/dist/client/assets/{companions-core-DxS7wXdO.js → companions-core-E1684c44.js} +1 -1
- package/dist/client/assets/{connect-CcNJMOCC.js → connect-BvsNiyZD.js} +1 -1
- package/dist/client/assets/{connect-desktop-dialog-DDQlWIPM.js → connect-desktop-dialog-2ytDMSQS.js} +1 -1
- package/dist/client/assets/{connection-card-CJ63CU1M.js → connection-card-tEoMF1sK.js} +1 -1
- package/dist/client/assets/{connection-detail-DufrJeKy.js → connection-detail-BNOBuBwO.js} +1 -1
- package/dist/client/assets/{connection-form-helpers-BwAgCwKV.js → connection-form-helpers-y0k0toUD.js} +1 -1
- package/dist/client/assets/{connections-BlB_Smcj.js → connections-BSYKvu_o.js} +1 -1
- package/dist/client/assets/{decopilot-sse-pool-x2kJy21e.js → decopilot-sse-pool-B7H8BAsy.js} +1 -1
- package/dist/client/assets/{dialog-BzWKqz4Z.js → dialog-B-PFEu8t.js} +1 -1
- package/dist/client/assets/{domain-settings-CYWd6tkO.js → domain-settings-B0iRfT0V.js} +1 -1
- package/dist/client/assets/{drawer-alylot1w.js → drawer-ioB-jayl.js} +1 -1
- package/dist/client/assets/{dropdown-menu-gg4xbR0X.js → dropdown-menu-Bv8U-u2N.js} +1 -1
- package/dist/client/assets/{empty-state-DzxYVtDX.js → empty-state-f3NNQ1ui.js} +1 -1
- package/dist/client/assets/{extract-connection-data-CP3WWGBV.js → extract-connection-data-ekCc1hnU.js} +1 -1
- package/dist/client/assets/{file-explorer-C0IwlzYE.js → file-explorer-D8JT7oxH.js} +1 -1
- package/dist/client/assets/{file-type-icon-BDx8-a4O.js → file-type-icon-Czs5uFNK.js} +1 -1
- package/dist/client/assets/{files-jwZ_Y4Lb.js → files-COonOV2h.js} +1 -1
- package/dist/client/assets/{form-BAr9qclM.js → form-DvszbWzu.js} +1 -1
- package/dist/client/assets/{general-BvHd__fs.js → general-BN7VABAU.js} +1 -1
- package/dist/client/assets/{github-repo-picker-BAEDwh6Q.js → github-repo-picker-LzKpKLTc.js} +1 -1
- package/dist/client/assets/{hooks-C8vrq7Wt.js → hooks-DZ2G0HBV.js} +1 -1
- package/dist/client/assets/{index-Bh0fbeWC.js → index-BD2JkIiG.js} +1 -1
- package/dist/client/assets/{index-Dj2De1sA.js → index-B__oKxRn.js} +1 -1
- package/dist/client/assets/{index-DXXL3zEr.js → index-BoUF-4pL.js} +1 -1
- package/dist/client/assets/index-CiqBVt-V.js +8 -0
- package/dist/client/assets/{index-BauJtU2u.js → index-Cq9MTcyy.js} +1 -1
- package/dist/client/assets/{index-A9fqNU4z.js → index-DDvdm6MO.js} +5 -5
- package/dist/client/assets/{index-xSLBsStZ.js → index-DLFjA-pm.js} +9 -9
- package/dist/client/assets/{index-CX1i8D4V.js → index-DinR3XP8.js} +1 -1
- package/dist/client/assets/{index-BfYtm9sd.js → index-DwaHcKY7.js} +1 -1
- package/dist/client/assets/index-Dz31_xLh.css +1 -0
- package/dist/client/assets/{index-D7Sip3Ed.js → index-W5v34j4g.js} +1 -1
- package/dist/client/assets/{index-P_iw2QG1.js → index-qFEnr-Eg.js} +1 -1
- package/dist/client/assets/{index-redirect-DEKLh8fM.js → index-redirect-DfRcvhOs.js} +1 -1
- package/dist/client/assets/{index-D9K-y1Sw.js → index-x2umO0Ia.js} +1 -1
- package/dist/client/assets/{index-DZYLeS0N.js → index-zRP9V9Rq.js} +1 -1
- package/dist/client/assets/{input-DGCf_V4O.js → input-CYZckS5J.js} +1 -1
- package/dist/client/assets/{integration-icon-7rmZBqcL.js → integration-icon-EcNPoJWr.js} +1 -1
- package/dist/client/assets/{invite-member-dialog-dh3OOopB.js → invite-member-dialog-BEMH_SBX.js} +1 -1
- package/dist/client/assets/{label-DH-W0nf0.js → label-EdLaI-5R.js} +1 -1
- package/dist/client/assets/{layout-C8DX3ZsZ.js → layout-DyY6lyuX.js} +1 -1
- package/dist/client/assets/{login-B3XRE3Fc.js → login-Bp3tqVdE.js} +1 -1
- package/dist/client/assets/{mcp-oauth-BhvUVG1i.js → mcp-oauth-DhsKmk5n.js} +1 -1
- package/dist/client/assets/{members-F2i9Qhbb.js → members-Bdzm1rec.js} +1 -1
- package/dist/client/assets/{monaco-editor-D-LV1Mrh.js → monaco-editor-Cj3yPb4I.js} +1 -1
- package/dist/client/assets/{monitoring-stats-row-Cj9nYaFY.js → monitoring-stats-row-Bl8HG5pb.js} +1 -1
- package/dist/client/assets/{multi-select-BDvhsz-o.js → multi-select-BRDHWm9A.js} +1 -1
- package/dist/client/assets/{oauth-callback-CvCK4NkV.js → oauth-callback-D1AVcBaG.js} +1 -1
- package/dist/client/assets/{oauth-callback-ai-provider-BM9_omBf.js → oauth-callback-ai-provider-CW1aQFsP.js} +1 -1
- package/dist/client/assets/{onboarding-BsDKdRn1.js → onboarding-DrkJmm1F.js} +1 -1
- package/dist/client/assets/{org-install-BxBYE9oX.js → org-install-BSVaCgjf.js} +1 -1
- package/dist/client/assets/{org-layout-DenTla7s.js → org-layout-BfaW1rXR.js} +1 -1
- package/dist/client/assets/{organization-choice-BHD44CpY.js → organization-choice-DYVNPPeL.js} +1 -1
- package/dist/client/assets/{orgs-CIRndsaD.js → orgs-DAYIrPhP.js} +1 -1
- package/dist/client/assets/{page-seo-form-BwKtXym-.js → page-seo-form-DHYMF0Fj.js} +1 -1
- package/dist/client/assets/page-seo-sheet-Brecxjya.js +1 -0
- package/dist/client/assets/{popover-DAgO1IJk.js → popover-CJG9G1eo.js} +1 -1
- package/dist/client/assets/{post-editor-CIzZPSik.js → post-editor-9ma5K1Pq.js} +1 -1
- package/dist/client/assets/{primitives-C7Oo2af3.js → primitives-BLW0qP6x.js} +1 -1
- package/dist/client/assets/{profile-DEcDe_jB.js → profile-Bc9GqDSr.js} +1 -1
- package/dist/client/assets/project-app-view-DFAUYzW3.js +1 -0
- package/dist/client/assets/record-editor-C36tDSMI.js +1 -0
- package/dist/client/assets/redirect-editor-CS1RBoS8.js +1 -0
- package/dist/client/assets/{registry-layout-FhRexSPm.js → registry-layout-BDZm3T04.js} +1 -1
- package/dist/client/assets/registry-w9h-TBe5.js +2 -0
- package/dist/client/assets/{reports-dNbe2rsn.js → reports-BDMo0lnJ.js} +1 -1
- package/dist/client/assets/{require-capability-DY-Pj-eQ.js → require-capability-iOnNompG.js} +1 -1
- package/dist/client/assets/{required-auth-layout-3AJw5EmQ.js → required-auth-layout-IpGhD1Lv.js} +1 -1
- package/dist/client/assets/{reset-password-BxSIpNJw.js → reset-password-BcW-LEPq.js} +1 -1
- package/dist/client/assets/roles-00HK2v8s.js +1 -0
- package/dist/client/assets/{search-input-wer_b5lo.js → search-input-DkP3MvKd.js} +1 -1
- package/dist/client/assets/{secrets-CJzSsveG.js → secrets-Cq-nEDPL.js} +1 -1
- package/dist/client/assets/{sections-editor-pMgFufzU.js → sections-editor-DSt5QDYQ.js} +1 -1
- package/dist/client/assets/{select-BqEibk47.js → select-C4Yh3I_I.js} +1 -1
- package/dist/client/assets/{select-model-DzF-dR3C.js → select-model-JORQ2Gh2.js} +1 -1
- package/dist/client/assets/{self-tool-result-BZZYtgrA.js → self-tool-result-DdH0OoA4.js} +1 -1
- package/dist/client/assets/{seo-editor-BxBh2QSP.js → seo-editor-vabzwoBd.js} +1 -1
- package/dist/client/assets/{settings-layout-Dgri0JEk.js → settings-layout-Dwc65CCS.js} +1 -1
- package/dist/client/assets/{settings-section-tV1D7nxu.js → settings-section-Dyof3VvN.js} +1 -1
- package/dist/client/assets/{shell-controls-fst9NVEF.js → shell-controls-Dr_GzrSU.js} +1 -1
- package/dist/client/assets/{shell-layout-Btvmqxx_.js → shell-layout-Bwrf-bDx.js} +1 -1
- package/dist/client/assets/{sidebar-BZ_nPMCs.js → sidebar-BXTMhX7B.js} +1 -1
- package/dist/client/assets/{skeleton-0aDsEq2p.js → skeleton-mpFjzoUE.js} +1 -1
- package/dist/client/assets/{sso-C4VyaBfJ.js → sso-CiwMJA3A.js} +1 -1
- package/dist/client/assets/{store-voiBDpPX.js → store-CF2IPdeY.js} +1 -1
- package/dist/client/assets/store-registry-D6SNagM5.js +2 -0
- package/dist/client/assets/{studio-tools-B66_B34P.js → studio-tools-z2MoKuxB.js} +1 -1
- package/dist/client/assets/{switch-BpG1-STw.js → switch-DhX1LgoM.js} +1 -1
- package/dist/client/assets/{table-kGMDXlqe.js → table-V7ZlHmgG.js} +1 -1
- package/dist/client/assets/{tabs-CGVQlrOx.js → tabs-BEzq_HDC.js} +1 -1
- package/dist/client/assets/{textarea-B0EjtE0a.js → textarea-Dr__cCCA.js} +1 -1
- package/dist/client/assets/{toggle-group-DPz95FqZ.js → toggle-group-DOz_2Aus.js} +1 -1
- package/dist/client/assets/{toolbar-CM8po26T.js → toolbar-CKNfiQcT.js} +1 -1
- package/dist/client/assets/{toolbar-icon-button-C_KLi4dQ.js → toolbar-icon-button-28RF0SOr.js} +1 -1
- package/dist/client/assets/{tooltip-BpJxlJSJ.js → tooltip-DMRr_d0y.js} +1 -1
- package/dist/client/assets/{use-ai-providers-B_Oi2tEz.js → use-ai-providers-BIphh0fq.js} +1 -1
- package/dist/client/assets/{use-api-keys-BbONFTUz.js → use-api-keys-B7Hoa5XH.js} +1 -1
- package/dist/client/assets/{use-automations-9_Ja7c48.js → use-automations-DXFeY9Yi.js} +1 -1
- package/dist/client/assets/{use-autosave-pd1xyQ8m.js → use-autosave-COG8LwFd.js} +1 -1
- package/dist/client/assets/{use-capability-DtC3iQ2k.js → use-capability-ClE5Y8Td.js} +1 -1
- package/dist/client/assets/{use-clock-tick-DLHRxBa3.js → use-clock-tick-DO60_p2y.js} +1 -1
- package/dist/client/assets/{use-connection-Clx3IyCk.js → use-connection-iKR4DAK5.js} +1 -1
- package/dist/client/assets/{use-copy-a-UJrTMM.js → use-copy-BwNmwZN4.js} +1 -1
- package/dist/client/assets/{use-create-virtual-mcp-CuCamAii.js → use-create-virtual-mcp-CGf9WQKr.js} +1 -1
- package/dist/client/assets/{use-debounced-autosave-aSynFo2O.js → use-debounced-autosave-BL9BhLLo.js} +1 -1
- package/dist/client/assets/{use-debounced-value-C_kq-Cn_.js → use-debounced-value-vm2YywVs.js} +1 -1
- package/dist/client/assets/{use-deco-credits-C1vABOjo.js → use-deco-credits-cqQ5Grgp.js} +1 -1
- package/dist/client/assets/{use-decopilot-events-CVZGzKpH.js → use-decopilot-events-C1fzpsy-.js} +1 -1
- package/dist/client/assets/{use-delete-connection-DGM-qLgU.js → use-delete-connection-B6CGcXIN.js} +1 -1
- package/dist/client/assets/{use-deployment-admin-Bebefhxd.js → use-deployment-admin-82P0H-e_.js} +1 -1
- package/dist/client/assets/{use-file-configs-DLgC2ptM.js → use-file-configs-DbZyRh6z.js} +1 -1
- package/dist/client/assets/{use-infinite-scroll-BLi2GgVN.js → use-infinite-scroll-D6AmDQig.js} +1 -1
- package/dist/client/assets/{use-join-requests-I0mnByxN.js → use-join-requests-umSBD2aw.js} +1 -1
- package/dist/client/assets/{use-mcp-auth-status-mFdbW_-M.js → use-mcp-auth-status-DjzGZ1ej.js} +1 -1
- package/dist/client/assets/{use-mcp-client-faiPBiTk.js → use-mcp-client-Cu-eLUiE.js} +1 -1
- package/dist/client/assets/{use-mcp-tools-bMdsG00Y.js → use-mcp-tools-DS3ivkR4.js} +1 -1
- package/dist/client/assets/{use-members-Bi3hTwx_.js → use-members-DiTBYVZi.js} +1 -1
- package/dist/client/assets/{use-mobile-1W6zlG_j.js → use-mobile-F9kT_Idr.js} +1 -1
- package/dist/client/assets/{use-navigate-to-agent-CkPe58f9.js → use-navigate-to-agent-BW0Lbp2M.js} +1 -1
- package/dist/client/assets/{use-org-auth-client-D1tELp9N.js → use-org-auth-client-BoIjqJkP.js} +1 -1
- package/dist/client/assets/{use-org-sso-k013uoyA.js → use-org-sso-Dt3zVq13.js} +1 -1
- package/dist/client/assets/{use-organization-roles-CiNTCC-K.js → use-organization-roles-BdxExLEu.js} +1 -1
- package/dist/client/assets/{use-organization-settings-9Qn_amDl.js → use-organization-settings-DzM8_ele.js} +1 -1
- package/dist/client/assets/{use-registry-app-Bzr0JYGp.js → use-registry-app-BZbyzB0r.js} +1 -1
- package/dist/client/assets/{use-registry-connections-Dc8Fqm7Q.js → use-registry-connections-DZLuPfih.js} +1 -1
- package/dist/client/assets/{use-secrets-BcWSsWs8.js → use-secrets-0AO756Ta.js} +1 -1
- package/dist/client/assets/{use-status-sounds-DaEvA2iT.js → use-status-sounds-xCrGZ6sG.js} +1 -1
- package/dist/client/assets/{use-view-mode-C-qkmcdZ.js → use-view-mode-Cfy2LoWQ.js} +1 -1
- package/dist/client/assets/{use-virtual-mcp-DcysUR-c.js → use-virtual-mcp-DiaCfMBV.js} +1 -1
- package/dist/client/assets/useInfiniteQuery-CpL2Fv2W.js +1 -0
- package/dist/client/assets/{useQueries-gAKy4UqV.js → useQueries-LX6i8RGj.js} +1 -1
- package/dist/client/assets/{useRouterState-Dc7BauIf.js → useRouterState-BfMjSCt3.js} +1 -1
- package/dist/client/assets/useSuspenseInfiniteQuery-8mEOR8yL.js +1 -0
- package/dist/client/assets/{users-C54awAYQ.js → users-B7SH1VvM.js} +1 -1
- package/dist/client/assets/{variant-calendar-DJmdMKqr.js → variant-calendar-RPLmjD1q.js} +1 -1
- package/dist/client/assets/{view-mode-toggle-CPpikqAa.js → view-mode-toggle-BPTnCybV.js} +1 -1
- package/dist/client/index.html +2 -2
- package/dist/server/cli.js +501 -501
- package/dist/server/migrate.js +1 -1
- package/dist/server/server.js +350 -350
- package/package.json +1 -1
- package/dist/client/assets/index-CgKjvsv-.js +0 -8
- package/dist/client/assets/index-vsJ-HZsf.css +0 -1
- package/dist/client/assets/page-seo-sheet-DpjLlsM1.js +0 -1
- package/dist/client/assets/project-app-view-BNE4u0-G.js +0 -1
- package/dist/client/assets/record-editor-DyPlNJdt.js +0 -1
- package/dist/client/assets/redirect-editor-CsEzEInT.js +0 -1
- package/dist/client/assets/registry-Cl6hHgLz.js +0 -2
- package/dist/client/assets/roles-ro80EJwH.js +0 -1
- package/dist/client/assets/store-registry-C8-7VJaP.js +0 -2
- package/dist/client/assets/useInfiniteQuery-Bx3nFSnU.js +0 -1
- package/dist/client/assets/useSuspenseInfiniteQuery-DEiMF7GB.js +0 -1
package/dist/server/migrate.js
CHANGED
|
@@ -1034,7 +1034,7 @@ var mu=Object.defineProperty;var xu=(t)=>t;function yu(t,n){this[t]=xu.bind(null
|
|
|
1034
1034
|
create unique index organization_billing_stripe_subscription_id_uq
|
|
1035
1035
|
on organization_billing (stripe_subscription_id)
|
|
1036
1036
|
where stripe_subscription_id is not null
|
|
1037
|
-
`.execute(t)}async function uy(t){await Bi`drop index organization_billing_stripe_subscription_id_uq`.execute(t),await t.schema.alterTable("organization_billing").dropColumn("last_stripe_event_at").execute()}var ay={"001-initial-schema":Ct,"002-organization-settings":Nt,"003-connection-schema-align":wt,"004-remove-models-binding":ft,"005-connection-configuration":pt,"006-add-views-to-settings":Et,"007-monitoring-logs":Kt,"008-event-bus":st,"009-drop-audit-logs":ht,"010-gateways":Pt,"011-gateway-icon":zt,"012-gateway-tool-selection-mode":kt,"013-monitoring-user-agent-gateway":Ut,"014-gateway-resources-prompts":Dt,"015-monitoring-properties":jt,"016-downstream-token-client-info":Lt,"017-downstream-token-remove-userid":Jt,"018-drop-gateway-tool-selection-strategy":Rt,"019-remove-gateway-is-default":Wt,"020-enabled-plugins":$t,"021-threads":Xt,"022-rename-gateway-to-virtual-mcp":At,"023-optimize-thread-indexes":Qt,"024-consolidate-virtual-mcp":Zt,"025-add-monitoring-virtual-mcp-id":Ft,"026-restrict-child-connection-delete":Mt,"027-update-management-mcp-url":Yt,"028-update-management-mcp-to-self":Ot,"029-add-updated-by-to-connections":St,"030-member-tags":It,"031-add-dependency-mode":Gt,"032-projects":gt,"033-thread-status":vt,"034-monitoring-dashboards":Vt,"035-project-connections":qt,"036-update-registry-url":lt,"037-ai-provider-keys":dt,"038-oauth-pkce-states":bt,"039-automations":tn,"040-replace-next-run-at-with-last-run-at":nn,"041-ai-provider-keys-unique-constraint":en,"042-rename-mesh-mcp-to-cms-mcp":un,"043-rename-cms-mcp-to-deco-cms":an,"044-drop-connections-tools-column":_n,"045-thread-context-start-message":on,"046-remove-object-storage-plugin":xn,"047-add-next-run-at":yn,"048-merge-projects-agents":cn,"049-remove-org-admin-projects":Tn,"050-durable-agent-runs":Cn,"051-org-sso":wn,"052-thread-agent-ids":fn,"053-registry-config":pn,"054-connection-slug":Kn,"055-spaces":sn,"056-automation-project-scope":hn,"057-thread-virtual-mcp-id":Pn,"058-trigger-callback-tokens":zn,"059-kv":kn,"060-member-index":Un,"061-downstream-token-connection-index":Dn,"062-private-registry":jn,"063-event-subscriptions-enabled-boolean":Ln,"064-brand-context":Jn,"065-organization-domains":Rn,"066-brand-context-structured":Wn,"067-threads-metadata":$n,"068-threads-branch":Xn,"069-sandbox-runner-state":An,"070-model-categories":Qn,"071-default-home-agents":Zn,"072-ai-provider-key-preset-id":Fn,"073-backfill-basic-usage-roles":Mn,"074-sandbox-runner-state-handle-nonunique":Hn,"075-thread-inflight-async-jobs":Yn,"076-automations-drop-agent-json":Bn,"077-tier-only-model-selection":Sn,"078-automation-tool-call-kind":In,"079-strip-legacy-freestyle-vm-map-entries":Gn,"080-async-research-jobs":gn,"081-async-research-jobs-result-content":vn,"082-secrets":Vn,"083-thread-run-locally":qn,"084-drop-host-sandbox-rows":ln,"085-rename-runner-kind":dn,"086-thread-pins-and-vm-map-rekey":bn,"087-fix-vm-map-rekey":te,"088-purge-cli-activate-keys":ne,"089-rename-remote-user-to-desktop":ee,"090-automation-webhook-triggers":ie,"091-organization-domains-allow-multi":ue,"092-sandbox-naming-uniformization":ae,"093-backfill-global-search-basic-usage":_e,"094-org-file-configs":me,"095-remove-automation-tool-call-kind":xe,"096-org-file-configs-public-url-base":ye,"097-drop-local-docker-sandbox-state":ce,"098-thread-message-parts":Te,"099-run-fence":Ce,"100-link-transport":Ne,"101-cancel-requested-at":we,"102-observational-agent":fe,"103-revert-observational-agent":pe,"104-agent-sandbox-provider-kind":Ke,"105-org-fs":se,"106-automation-tools":he,"107-org-fs-public-org":Pe,"108-automation-max-agent-steps":ze,"109-thread-message-parts-per-message-seq":ke,"110-backfill-ghs-token-expiry":Ue,"111-org-fs-thread-id":De,"112-org-file-configs-credential-type":je,"113-thread-failure-reason":Le,"114-run-acked-seq":Je,"115-thread-projected-seq":Re,"116-org-sites":We,"117-org-file-configs-site-slug":$e,"118-organization-domains-multi-verify":Xe,"119-organization-join-requests":Ae,"120-org-fs-read-public":Qe,"121-org-fs-share-password":Ze,"122-split-web-research-tier":He,"123-connection-credential-vault":Ye,"124-drop-thread-projected-seq":Be,"125-github-child-single-parent":Oe,"126-task-board":Ie,"127-task-board-due-date":Ge,"128-reports-only":ge,"129-task-board-assigned-by":ve,"130-task-board-thread-id":Ve,"131-task-board-thread-link-cascade":qe,"132-task-board-item-prs":le,"133-dedupe-duplicate-members":de,"134-drop-task-board-enabled":be,"135-task-board-item-fk-cascade":ti,"136-task-board-import-idempotency":ni,"137-agent-sandbox-runner-state":ei,"138-agent-sandbox-sessions":ii,"139-organization-billing":ui,"140-seat-change-log":ai,"141-benefits-sync-pending":_i,"142-stripe-event-watermark":oi},mi=ay;import{getMigrations as Zy}from"better-auth/db";import{sso as Fy}from"@better-auth/sso";import{organization as My}from"@decocms/better-auth/plugins";import{admin as Hy,apiKey as Yy,jwt as By,magicLink as Oy,mcp as Sy,openAPI as Iy}from"better-auth/plugins";import{emailOTP as Gy}from"better-auth/plugins/email-otp";import{Kysely as Jy,PostgresDialect as bi}from"kysely";import{Pool as tu}from"pg";import{homedir as _y}from"os";var oy=new Set(["all","worker","api"]);function my(t){let n=(t??"").trim();return oy.has(n)?n:"all"}function L(t){return t==="true"||t==="1"}function xy(t){if(t===void 0||t==="")return;return L(t)}function mt(t,n,e){if(n===void 0||n==="")return e;let a=Number(n);if(!Number.isSafeInteger(a)||a<=0)throw Error(`${t} must be a positive integer`);return a}function yy(t,n){if(n===void 0||n==="")return;let e=Number(n);if(!Number.isSafeInteger(e)||e<=0)throw Error(`${t} must be a positive integer`);return e}function ry(t,n){if(t===void 0||t==="")return n;return t==="true"||t==="1"}function Oi(t){if(!t)return null;try{let e=new URL(t).hostname;if(e==="localhost"||e==="127.0.0.1"||e==="::1")return null;return t}catch{return null}}var cy=new Set(["agent-sandbox","user-desktop"]);function Ty(t){let n=t&&t.length>0?t:"user-desktop";if(n==="cluster")return"agent-sandbox";if(!cy.has(n))throw Error(`Unknown STUDIO_SANDBOX_PROVIDER="${t}" \u2014 expected "agent-sandbox", legacy "cluster", or "user-desktop".`);return n}function Si(t,n){let e=t.home||n.DATA_DIR||n.DECOCMS_HOME||`${_y()}/deco`,a=t.localMode,u=t.nodeEnv||n.NODE_ENV||"development",_=n.NATS_URL||"nats://localhost:4222",m=xy(n.NATS_TUNNEL_PUBLIC_ENABLED)??!!n.NATS_PUBLIC_URL;return{settings:{nodeEnv:u,port:mt("PORT",t.port||n.PORT,3000),baseUrl:t.baseUrl||n.BASE_URL,dataDir:e,databasePgSsl:L(n.DATABASE_PG_SSL),databasePoolMax:mt("DATABASE_POOL_MAX",n.DATABASE_POOL_MAX,5),betterAuthSecret:n.BETTER_AUTH_SECRET||"",encryptionKey:n.ENCRYPTION_KEY||"",meshJwtSecret:n.MESH_JWT_SECRET,localMode:a,disableRateLimit:L(n.DISABLE_RATE_LIMIT),studioProvisionSecretKey:n.STUDIO_PROVISION_SECRET_KEY,deploymentAdminEmails:(n.DEPLOYMENT_ADMIN_EMAILS??"").split(",").map((x)=>x.trim().toLowerCase()).filter(Boolean),clickhouseUrl:n.CLICKHOUSE_URL,clickhouseMaxMemoryUsage:yy("CLICKHOUSE_MAX_MEMORY_USAGE",n.CLICKHOUSE_MAX_MEMORY_USAGE),monitoringOtlpEndpoint:n.MONITORING_OTLP_ENDPOINT,otelServiceName:n.OTEL_SERVICE_NAME||"studio",natsPublicUrl:n.NATS_PUBLIC_URL,natsTunnelPublicEnabled:m,natsTunnelSessionTtlSeconds:mt("NATS_TUNNEL_SESSION_TTL_SECONDS",n.NATS_TUNNEL_SESSION_TTL_SECONDS,900),natsOperatorJwt:n.NATS_OPERATOR_JWT,natsAccountJwt:n.NATS_ACCOUNT_JWT,natsAccountSigningKey:n.NATS_ACCOUNT_SIGNING_KEY,natsCredsPath:n.NATS_CREDS,configPath:n.CONFIG_PATH||"./config.json",aiGatewayEnabled:L(n.DECO_AI_GATEWAY_ENABLED),aiGatewayUrl:n.DECO_AI_GATEWAY_URL||"https://ai-site.deco.site",aiGatewayAdminToken:n.DECO_AI_GATEWAY_ADMIN_TOKEN,seatAllowanceCents:mt("STUDIO_SEAT_ALLOWANCE_CENTS",n.STUDIO_SEAT_ALLOWANCE_CENTS,500),stripeWebhookSecret:n.STRIPE_WEBHOOK_SECRET,enableDecoImport:L(n.ENABLE_DECO_IMPORT),billingEnforced:L(n.STUDIO_BILLING_ENFORCED),mcpCacheEnabled:ry(n.MCP_CACHE_ENABLED,u!=="development"),orgFsPublicSetsJson:n.ORGFS_PUBLIC_SETS,orgFsMountsDisabled:L(n.DISABLE_ORGFS_MOUNTS),s3Endpoint:n.S3_ENDPOINT,s3Bucket:n.S3_BUCKET,s3Region:n.S3_REGION||"auto",s3AccessKeyId:n.S3_ACCESS_KEY_ID,s3SecretAccessKey:n.S3_SECRET_ACCESS_KEY,s3ForcePathStyle:n.S3_FORCE_PATH_STYLE===void 0||n.S3_FORCE_PATH_STYLE===""||n.S3_FORCE_PATH_STYLE==="true"||n.S3_FORCE_PATH_STYLE==="1",monitoringS3Bucket:n.MONITORING_S3_BUCKET,monitoringS3Endpoint:n.MONITORING_S3_ENDPOINT,monitoringS3Region:n.MONITORING_S3_REGION,monitoringS3AccessKeyId:n.MONITORING_S3_ACCESS_KEY_ID,monitoringS3SecretAccessKey:n.MONITORING_S3_SECRET_ACCESS_KEY,monitoringS3Prefix:n.MONITORING_S3_PREFIX,duckdbExtensionDirectory:n.DUCKDB_EXTENSION_DIRECTORY||"/opt/duckdb/extensions",duckdbMemoryLimit:n.DUCKDB_MEMORY_LIMIT||void 0,duckdbThreads:n.DUCKDB_THREADS?Number(n.DUCKDB_THREADS):void 0,isCli:!0,noTui:t.noTui===!0,podName:n.POD_NAME??crypto.randomUUID(),dispatchRole:my(n.MESH_DISPATCH_ROLE),sandboxProviderKind:Ty(n.STUDIO_SANDBOX_PROVIDER),decoSupabaseUrl:n.DECO_SUPABASE_URL,decoSupabaseServiceKey:n.DECO_SUPABASE_SERVICE_KEY,firecrawlApiKey:n.FIRECRAWL_API_KEY,commerceDiscoveryInternalApiUrl:n.COMMERCE_DISCOVERY_INTERNAL_API_URL,commerceDiscoveryInternalApiKey:n.COMMERCE_DISCOVERY_INTERNAL_API_KEY,s3TenantBucket:n.S3_TENANT_BUCKET||"new-deco-sites-assets",s3TenantRegion:n.S3_TENANT_REGION||"us-west-2",s3TenantEndpoint:n.S3_TENANT_ENDPOINT,s3TenantPublicUrlBase:n.S3_TENANT_PUBLIC_URL_BASE||"https://decoims.com",awsS3TenantRoleArn:n.AWS_S3_TENANT_ROLE_ARN,awsS3TenantProvisionerAccessKeyId:n.AWS_S3_TENANT_PROVISIONER_ACCESS_KEY_ID,awsS3TenantProvisionerSecretAccessKey:n.AWS_S3_TENANT_PROVISIONER_SECRET_ACCESS_KEY},externalDatabaseUrl:Oi(n.DATABASE_URL),externalNatsUrl:Oi(_),skipMigrations:t.skipMigrations}}var xt=null;function A(){if(!xt)Cy();return xt}function Cy(){if(xt)return;let t={...process.env},n=Si({port:t.PORT||"3000",home:t.DATA_DIR||t.DECOCMS_HOME||"",localMode:t.DECOCMS_LOCAL_MODE==="true",skipMigrations:!0,noTui:t.DECO_NO_TUI==="true",vitePort:t.VITE_PORT,baseUrl:t.BASE_URL},t);xt=Object.freeze({...n.settings,databaseUrl:t.DATABASE_URL??"postgresql://postgres:postgres@localhost:5432/postgres",natsUrls:(t.NATS_URL||"nats://localhost:4222").split(",").map((e)=>e.trim()).filter(Boolean)})}import{createContextKey as Ky,metrics as sy,propagation as tC,ROOT_CONTEXT as nC,SpanStatusCode as eC,trace as hy}from"@opentelemetry/api";import{logs as Py,SeverityNumber as xi}from"@opentelemetry/api-logs";import{OTLPLogExporter as aC}from"@opentelemetry/exporter-logs-otlp-proto";import{PrometheusExporter as zy}from"@opentelemetry/exporter-prometheus";import{OTLPTraceExporter as mC}from"@opentelemetry/exporter-trace-otlp-proto";import{RuntimeNodeInstrumentation as yC}from"@opentelemetry/instrumentation-runtime-node";import{context as vc,propagation as Vc,SpanKind as qc,SpanStatusCode as lc}from"@opentelemetry/api";var bc=globalThis.fetch;import{ExportResultCode as rT}from"@opentelemetry/core";import{ExportResultCode as yt}from"@opentelemetry/core";import{mkdir as Ny,rename as wy,writeFile as fy}from"fs/promises";import{join as rt}from"path";class ct{bufferItems=[];bufferBytes=0;flushTimer=null;flushQueue=Promise.resolve();basePath;flushThreshold;maxBufferBytes;isShutdown=!1;knownDirs=new Set;partitionKey;constructor(t){this.basePath=t.basePath,this.flushThreshold=t.flushThreshold??1000,this.maxBufferBytes=t.maxBufferBytes??10485760,this.partitionKey=t.partitionKey;let n=t.flushIntervalMs??60000;if(n>0&&n<3600000){if(this.flushTimer=setInterval(()=>{this.flush().catch((e)=>{console.error("[NDJSONExporter] Timer flush failed:",e)})},n),this.flushTimer&&typeof this.flushTimer==="object"&&"unref"in this.flushTimer)this.flushTimer.unref()}}exportRows(t){if(this.isShutdown)return Promise.resolve({code:yt.FAILED});for(let n of t){let e=JSON.stringify(n),a=this.partitionKey?this.partitionKey(n):"";this.bufferItems.push({partition:a,json:e}),this.bufferBytes+=Buffer.byteLength(e,"utf8")+1}if(this.bufferItems.length>=this.flushThreshold||this.bufferBytes>=this.maxBufferBytes)return this.flush().then(()=>({code:yt.SUCCESS})).catch((n)=>{return console.error("[NDJSONExporter] Flush failed:",n),{code:yt.FAILED}});return Promise.resolve({code:yt.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 n=this.flushQueue.catch(()=>{}).then(()=>this.doFlush());return this.flushQueue=n,n}async doFlush(){if(this.bufferItems.length===0)return;let t=this.bufferItems;this.bufferItems=[],this.bufferBytes=0;let n=new Map;for(let u of t){let _=n.get(u.partition);if(!_)_=[],n.set(u.partition,_);_.push(u.json)}let e=await Promise.allSettled(Array.from(n.entries()).map(([u,_])=>this.writeNDJSON(_,u).then(()=>u))),a=e.find((u)=>u.status==="rejected");if(a){let u=new Set;for(let m of e)if(m.status==="fulfilled")u.add(m.value);let _=t.filter((m)=>!u.has(m.partition));this.bufferItems=_.concat(this.bufferItems),this.bufferBytes=0;for(let m of this.bufferItems)this.bufferBytes+=Buffer.byteLength(m.json,"utf8")+1;throw a.reason}}async writeNDJSON(t,n){let e=new Date,a=[String(e.getUTCFullYear()),String(e.getUTCMonth()+1).padStart(2,"0"),String(e.getUTCDate()).padStart(2,"0"),String(e.getUTCHours()).padStart(2,"0")],u=n?rt(this.basePath,n,...a):rt(this.basePath,...a);if(!this.knownDirs.has(u))await Ny(u,{recursive:!0,mode:448}),this.knownDirs.add(u);let _=`${crypto.randomUUID()}.ndjson`,m=rt(u,`.${_}.tmp`),o=rt(u,_),x=t.join(`
|
|
1037
|
+
`.execute(t)}async function uy(t){await Bi`drop index organization_billing_stripe_subscription_id_uq`.execute(t),await t.schema.alterTable("organization_billing").dropColumn("last_stripe_event_at").execute()}var ay={"001-initial-schema":Ct,"002-organization-settings":Nt,"003-connection-schema-align":wt,"004-remove-models-binding":ft,"005-connection-configuration":pt,"006-add-views-to-settings":Et,"007-monitoring-logs":Kt,"008-event-bus":st,"009-drop-audit-logs":ht,"010-gateways":Pt,"011-gateway-icon":zt,"012-gateway-tool-selection-mode":kt,"013-monitoring-user-agent-gateway":Ut,"014-gateway-resources-prompts":Dt,"015-monitoring-properties":jt,"016-downstream-token-client-info":Lt,"017-downstream-token-remove-userid":Jt,"018-drop-gateway-tool-selection-strategy":Rt,"019-remove-gateway-is-default":Wt,"020-enabled-plugins":$t,"021-threads":Xt,"022-rename-gateway-to-virtual-mcp":At,"023-optimize-thread-indexes":Qt,"024-consolidate-virtual-mcp":Zt,"025-add-monitoring-virtual-mcp-id":Ft,"026-restrict-child-connection-delete":Mt,"027-update-management-mcp-url":Yt,"028-update-management-mcp-to-self":Ot,"029-add-updated-by-to-connections":St,"030-member-tags":It,"031-add-dependency-mode":Gt,"032-projects":gt,"033-thread-status":vt,"034-monitoring-dashboards":Vt,"035-project-connections":qt,"036-update-registry-url":lt,"037-ai-provider-keys":dt,"038-oauth-pkce-states":bt,"039-automations":tn,"040-replace-next-run-at-with-last-run-at":nn,"041-ai-provider-keys-unique-constraint":en,"042-rename-mesh-mcp-to-cms-mcp":un,"043-rename-cms-mcp-to-deco-cms":an,"044-drop-connections-tools-column":_n,"045-thread-context-start-message":on,"046-remove-object-storage-plugin":xn,"047-add-next-run-at":yn,"048-merge-projects-agents":cn,"049-remove-org-admin-projects":Tn,"050-durable-agent-runs":Cn,"051-org-sso":wn,"052-thread-agent-ids":fn,"053-registry-config":pn,"054-connection-slug":Kn,"055-spaces":sn,"056-automation-project-scope":hn,"057-thread-virtual-mcp-id":Pn,"058-trigger-callback-tokens":zn,"059-kv":kn,"060-member-index":Un,"061-downstream-token-connection-index":Dn,"062-private-registry":jn,"063-event-subscriptions-enabled-boolean":Ln,"064-brand-context":Jn,"065-organization-domains":Rn,"066-brand-context-structured":Wn,"067-threads-metadata":$n,"068-threads-branch":Xn,"069-sandbox-runner-state":An,"070-model-categories":Qn,"071-default-home-agents":Zn,"072-ai-provider-key-preset-id":Fn,"073-backfill-basic-usage-roles":Mn,"074-sandbox-runner-state-handle-nonunique":Hn,"075-thread-inflight-async-jobs":Yn,"076-automations-drop-agent-json":Bn,"077-tier-only-model-selection":Sn,"078-automation-tool-call-kind":In,"079-strip-legacy-freestyle-vm-map-entries":Gn,"080-async-research-jobs":gn,"081-async-research-jobs-result-content":vn,"082-secrets":Vn,"083-thread-run-locally":qn,"084-drop-host-sandbox-rows":ln,"085-rename-runner-kind":dn,"086-thread-pins-and-vm-map-rekey":bn,"087-fix-vm-map-rekey":te,"088-purge-cli-activate-keys":ne,"089-rename-remote-user-to-desktop":ee,"090-automation-webhook-triggers":ie,"091-organization-domains-allow-multi":ue,"092-sandbox-naming-uniformization":ae,"093-backfill-global-search-basic-usage":_e,"094-org-file-configs":me,"095-remove-automation-tool-call-kind":xe,"096-org-file-configs-public-url-base":ye,"097-drop-local-docker-sandbox-state":ce,"098-thread-message-parts":Te,"099-run-fence":Ce,"100-link-transport":Ne,"101-cancel-requested-at":we,"102-observational-agent":fe,"103-revert-observational-agent":pe,"104-agent-sandbox-provider-kind":Ke,"105-org-fs":se,"106-automation-tools":he,"107-org-fs-public-org":Pe,"108-automation-max-agent-steps":ze,"109-thread-message-parts-per-message-seq":ke,"110-backfill-ghs-token-expiry":Ue,"111-org-fs-thread-id":De,"112-org-file-configs-credential-type":je,"113-thread-failure-reason":Le,"114-run-acked-seq":Je,"115-thread-projected-seq":Re,"116-org-sites":We,"117-org-file-configs-site-slug":$e,"118-organization-domains-multi-verify":Xe,"119-organization-join-requests":Ae,"120-org-fs-read-public":Qe,"121-org-fs-share-password":Ze,"122-split-web-research-tier":He,"123-connection-credential-vault":Ye,"124-drop-thread-projected-seq":Be,"125-github-child-single-parent":Oe,"126-task-board":Ie,"127-task-board-due-date":Ge,"128-reports-only":ge,"129-task-board-assigned-by":ve,"130-task-board-thread-id":Ve,"131-task-board-thread-link-cascade":qe,"132-task-board-item-prs":le,"133-dedupe-duplicate-members":de,"134-drop-task-board-enabled":be,"135-task-board-item-fk-cascade":ti,"136-task-board-import-idempotency":ni,"137-agent-sandbox-runner-state":ei,"138-agent-sandbox-sessions":ii,"139-organization-billing":ui,"140-seat-change-log":ai,"141-benefits-sync-pending":_i,"142-stripe-event-watermark":oi},mi=ay;import{getMigrations as Zy}from"better-auth/db";import{sso as Fy}from"@better-auth/sso";import{organization as My}from"@decocms/better-auth/plugins";import{admin as Hy,apiKey as Yy,jwt as By,magicLink as Oy,mcp as Sy,openAPI as Iy}from"better-auth/plugins";import{emailOTP as Gy}from"better-auth/plugins/email-otp";import{Kysely as Jy,PostgresDialect as bi}from"kysely";import{Pool as tu}from"pg";import{homedir as _y}from"os";var oy=new Set(["all","worker","api"]);function my(t){let n=(t??"").trim();return oy.has(n)?n:"all"}function L(t){return t==="true"||t==="1"}function xy(t){if(t===void 0||t==="")return;return L(t)}function mt(t,n,e){if(n===void 0||n==="")return e;let a=Number(n);if(!Number.isSafeInteger(a)||a<=0)throw Error(`${t} must be a positive integer`);return a}function yy(t,n){if(n===void 0||n==="")return;let e=Number(n);if(!Number.isSafeInteger(e)||e<=0)throw Error(`${t} must be a positive integer`);return e}function ry(t,n){if(t===void 0||t==="")return n;return t==="true"||t==="1"}function Oi(t){if(!t)return null;try{let e=new URL(t).hostname;if(e==="localhost"||e==="127.0.0.1"||e==="::1")return null;return t}catch{return null}}var cy=new Set(["agent-sandbox","user-desktop"]);function Ty(t){let n=t&&t.length>0?t:"user-desktop";if(n==="cluster")return"agent-sandbox";if(!cy.has(n))throw Error(`Unknown STUDIO_SANDBOX_PROVIDER="${t}" \u2014 expected "agent-sandbox", legacy "cluster", or "user-desktop".`);return n}function Si(t,n){let e=t.home||n.DATA_DIR||n.DECOCMS_HOME||`${_y()}/deco`,a=t.localMode,u=t.nodeEnv||n.NODE_ENV||"development",_=n.NATS_URL||"nats://localhost:4222",m=xy(n.NATS_TUNNEL_PUBLIC_ENABLED)??!!n.NATS_PUBLIC_URL;return{settings:{nodeEnv:u,port:mt("PORT",t.port||n.PORT,3000),baseUrl:t.baseUrl||n.BASE_URL,dataDir:e,databasePgSsl:L(n.DATABASE_PG_SSL),databasePoolMax:mt("DATABASE_POOL_MAX",n.DATABASE_POOL_MAX,5),betterAuthSecret:n.BETTER_AUTH_SECRET||"",encryptionKey:n.ENCRYPTION_KEY||"",meshJwtSecret:n.MESH_JWT_SECRET,localMode:a,disableRateLimit:L(n.DISABLE_RATE_LIMIT),studioProvisionSecretKey:n.STUDIO_PROVISION_SECRET_KEY,deploymentAdminEmails:(n.DEPLOYMENT_ADMIN_EMAILS??"").split(",").map((x)=>x.trim().toLowerCase()).filter(Boolean),clickhouseUrl:n.CLICKHOUSE_URL,clickhouseMaxMemoryUsage:yy("CLICKHOUSE_MAX_MEMORY_USAGE",n.CLICKHOUSE_MAX_MEMORY_USAGE),monitoringOtlpEndpoint:n.MONITORING_OTLP_ENDPOINT,otelServiceName:n.OTEL_SERVICE_NAME||"studio",natsPublicUrl:n.NATS_PUBLIC_URL,natsTunnelPublicEnabled:m,natsTunnelSessionTtlSeconds:mt("NATS_TUNNEL_SESSION_TTL_SECONDS",n.NATS_TUNNEL_SESSION_TTL_SECONDS,900),natsOperatorJwt:n.NATS_OPERATOR_JWT,natsAccountJwt:n.NATS_ACCOUNT_JWT,natsAccountSigningKey:n.NATS_ACCOUNT_SIGNING_KEY,natsCredsPath:n.NATS_CREDS,configPath:n.CONFIG_PATH||"./config.json",aiGatewayEnabled:L(n.DECO_AI_GATEWAY_ENABLED),aiGatewayUrl:n.DECO_AI_GATEWAY_URL||"https://ai-site.deco.site",aiGatewayAdminToken:n.DECO_AI_GATEWAY_ADMIN_TOKEN,seatAllowanceCents:mt("STUDIO_SEAT_ALLOWANCE_CENTS",n.STUDIO_SEAT_ALLOWANCE_CENTS,500),stripeWebhookSecret:n.STRIPE_WEBHOOK_SECRET,stripeSecretKey:n.STRIPE_SECRET_KEY,stripeSeatPriceId:n.STRIPE_SEAT_PRICE_ID,enableDecoImport:L(n.ENABLE_DECO_IMPORT),billingEnforced:L(n.STUDIO_BILLING_ENFORCED),mcpCacheEnabled:ry(n.MCP_CACHE_ENABLED,u!=="development"),orgFsPublicSetsJson:n.ORGFS_PUBLIC_SETS,orgFsMountsDisabled:L(n.DISABLE_ORGFS_MOUNTS),s3Endpoint:n.S3_ENDPOINT,s3Bucket:n.S3_BUCKET,s3Region:n.S3_REGION||"auto",s3AccessKeyId:n.S3_ACCESS_KEY_ID,s3SecretAccessKey:n.S3_SECRET_ACCESS_KEY,s3ForcePathStyle:n.S3_FORCE_PATH_STYLE===void 0||n.S3_FORCE_PATH_STYLE===""||n.S3_FORCE_PATH_STYLE==="true"||n.S3_FORCE_PATH_STYLE==="1",monitoringS3Bucket:n.MONITORING_S3_BUCKET,monitoringS3Endpoint:n.MONITORING_S3_ENDPOINT,monitoringS3Region:n.MONITORING_S3_REGION,monitoringS3AccessKeyId:n.MONITORING_S3_ACCESS_KEY_ID,monitoringS3SecretAccessKey:n.MONITORING_S3_SECRET_ACCESS_KEY,monitoringS3Prefix:n.MONITORING_S3_PREFIX,duckdbExtensionDirectory:n.DUCKDB_EXTENSION_DIRECTORY||"/opt/duckdb/extensions",duckdbMemoryLimit:n.DUCKDB_MEMORY_LIMIT||void 0,duckdbThreads:n.DUCKDB_THREADS?Number(n.DUCKDB_THREADS):void 0,isCli:!0,noTui:t.noTui===!0,podName:n.POD_NAME??crypto.randomUUID(),dispatchRole:my(n.MESH_DISPATCH_ROLE),sandboxProviderKind:Ty(n.STUDIO_SANDBOX_PROVIDER),decoSupabaseUrl:n.DECO_SUPABASE_URL,decoSupabaseServiceKey:n.DECO_SUPABASE_SERVICE_KEY,firecrawlApiKey:n.FIRECRAWL_API_KEY,commerceDiscoveryInternalApiUrl:n.COMMERCE_DISCOVERY_INTERNAL_API_URL,commerceDiscoveryInternalApiKey:n.COMMERCE_DISCOVERY_INTERNAL_API_KEY,s3TenantBucket:n.S3_TENANT_BUCKET||"new-deco-sites-assets",s3TenantRegion:n.S3_TENANT_REGION||"us-west-2",s3TenantEndpoint:n.S3_TENANT_ENDPOINT,s3TenantPublicUrlBase:n.S3_TENANT_PUBLIC_URL_BASE||"https://decoims.com",awsS3TenantRoleArn:n.AWS_S3_TENANT_ROLE_ARN,awsS3TenantProvisionerAccessKeyId:n.AWS_S3_TENANT_PROVISIONER_ACCESS_KEY_ID,awsS3TenantProvisionerSecretAccessKey:n.AWS_S3_TENANT_PROVISIONER_SECRET_ACCESS_KEY},externalDatabaseUrl:Oi(n.DATABASE_URL),externalNatsUrl:Oi(_),skipMigrations:t.skipMigrations}}var xt=null;function A(){if(!xt)Cy();return xt}function Cy(){if(xt)return;let t={...process.env},n=Si({port:t.PORT||"3000",home:t.DATA_DIR||t.DECOCMS_HOME||"",localMode:t.DECOCMS_LOCAL_MODE==="true",skipMigrations:!0,noTui:t.DECO_NO_TUI==="true",vitePort:t.VITE_PORT,baseUrl:t.BASE_URL},t);xt=Object.freeze({...n.settings,databaseUrl:t.DATABASE_URL??"postgresql://postgres:postgres@localhost:5432/postgres",natsUrls:(t.NATS_URL||"nats://localhost:4222").split(",").map((e)=>e.trim()).filter(Boolean)})}import{createContextKey as Ky,metrics as sy,propagation as tC,ROOT_CONTEXT as nC,SpanStatusCode as eC,trace as hy}from"@opentelemetry/api";import{logs as Py,SeverityNumber as xi}from"@opentelemetry/api-logs";import{OTLPLogExporter as aC}from"@opentelemetry/exporter-logs-otlp-proto";import{PrometheusExporter as zy}from"@opentelemetry/exporter-prometheus";import{OTLPTraceExporter as mC}from"@opentelemetry/exporter-trace-otlp-proto";import{RuntimeNodeInstrumentation as yC}from"@opentelemetry/instrumentation-runtime-node";import{context as vc,propagation as Vc,SpanKind as qc,SpanStatusCode as lc}from"@opentelemetry/api";var bc=globalThis.fetch;import{ExportResultCode as rT}from"@opentelemetry/core";import{ExportResultCode as yt}from"@opentelemetry/core";import{mkdir as Ny,rename as wy,writeFile as fy}from"fs/promises";import{join as rt}from"path";class ct{bufferItems=[];bufferBytes=0;flushTimer=null;flushQueue=Promise.resolve();basePath;flushThreshold;maxBufferBytes;isShutdown=!1;knownDirs=new Set;partitionKey;constructor(t){this.basePath=t.basePath,this.flushThreshold=t.flushThreshold??1000,this.maxBufferBytes=t.maxBufferBytes??10485760,this.partitionKey=t.partitionKey;let n=t.flushIntervalMs??60000;if(n>0&&n<3600000){if(this.flushTimer=setInterval(()=>{this.flush().catch((e)=>{console.error("[NDJSONExporter] Timer flush failed:",e)})},n),this.flushTimer&&typeof this.flushTimer==="object"&&"unref"in this.flushTimer)this.flushTimer.unref()}}exportRows(t){if(this.isShutdown)return Promise.resolve({code:yt.FAILED});for(let n of t){let e=JSON.stringify(n),a=this.partitionKey?this.partitionKey(n):"";this.bufferItems.push({partition:a,json:e}),this.bufferBytes+=Buffer.byteLength(e,"utf8")+1}if(this.bufferItems.length>=this.flushThreshold||this.bufferBytes>=this.maxBufferBytes)return this.flush().then(()=>({code:yt.SUCCESS})).catch((n)=>{return console.error("[NDJSONExporter] Flush failed:",n),{code:yt.FAILED}});return Promise.resolve({code:yt.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 n=this.flushQueue.catch(()=>{}).then(()=>this.doFlush());return this.flushQueue=n,n}async doFlush(){if(this.bufferItems.length===0)return;let t=this.bufferItems;this.bufferItems=[],this.bufferBytes=0;let n=new Map;for(let u of t){let _=n.get(u.partition);if(!_)_=[],n.set(u.partition,_);_.push(u.json)}let e=await Promise.allSettled(Array.from(n.entries()).map(([u,_])=>this.writeNDJSON(_,u).then(()=>u))),a=e.find((u)=>u.status==="rejected");if(a){let u=new Set;for(let m of e)if(m.status==="fulfilled")u.add(m.value);let _=t.filter((m)=>!u.has(m.partition));this.bufferItems=_.concat(this.bufferItems),this.bufferBytes=0;for(let m of this.bufferItems)this.bufferBytes+=Buffer.byteLength(m.json,"utf8")+1;throw a.reason}}async writeNDJSON(t,n){let e=new Date,a=[String(e.getUTCFullYear()),String(e.getUTCMonth()+1).padStart(2,"0"),String(e.getUTCDate()).padStart(2,"0"),String(e.getUTCHours()).padStart(2,"0")],u=n?rt(this.basePath,n,...a):rt(this.basePath,...a);if(!this.knownDirs.has(u))await Ny(u,{recursive:!0,mode:448}),this.knownDirs.add(u);let _=`${crypto.randomUUID()}.ndjson`,m=rt(u,`.${_}.tmp`),o=rt(u,_),x=t.join(`
|
|
1038
1038
|
`)+`
|
|
1039
1039
|
`;await fy(m,x,{mode:384}),await wy(m,o)}}import{ExportResultCode as wT}from"@opentelemetry/core";import{AggregationTemporality as pT,DataPointType as ET}from"@opentelemetry/sdk-metrics";import{ExportResultCode as kT}from"@opentelemetry/core";var LT=Buffer.byteLength("... [TRUNCATED]","utf8");import{BatchLogRecordProcessor as EC,LoggerProvider as KC}from"@opentelemetry/sdk-logs";import{detectResources as hC,envDetector as PC,hostDetector as zC,osDetector as kC,processDetector as UC,resourceFromAttributes as DC}from"@opentelemetry/resources";import{PeriodicExportingMetricReader as LC}from"@opentelemetry/sdk-metrics";import{NOOP_LOGGER as WT}from"@opentelemetry/api-logs";import{NodeSDK as WC}from"@opentelemetry/sdk-node";import{BatchSpanProcessor as XC,SamplingDecision as Q}from"@opentelemetry/sdk-trace-base";import{SpanStatusCode as ZT}from"@opentelemetry/api";var ky="__d",Uy=Ky("Current request"),Dy=1;var Gi=(t)=>{let e=new URL(t.url).searchParams.get(ky);if(e==="")return crypto.randomUUID();if(!e)e=t.headers.get("x-trace-debug-id");return e};class gi{inner;constructor(t){this.inner=t}shouldSample(t,n,e,a,u,_){let m=t.getValue(Uy);if(!m){if(this.inner)return this.inner.shouldSample(t,n,e,a,u,_);return{decision:Q.RECORD_AND_SAMPLED}}let o=Gi(m);if(o)return{decision:Q.RECORD_AND_SAMPLED,attributes:{"trace.debug.id":o}};if(this.inner){let x=this.inner.shouldSample(t,n,e,a,u,_);if(x.decision===Q.RECORD_AND_SAMPLED){let y=crypto.randomUUID();x.attributes={...x.attributes??{},"trace.debug.id":y}}return x}return{decision:Q.NOT_RECORD}}toString(){return"DebugSampler"}}class vi{ratio;constructor(t){this.ratio=t}shouldSample(){if(Math.random()<this.ratio)return{decision:Q.RECORD_AND_SAMPLED};return{decision:Q.NOT_RECORD}}toString(){return`RatioSampler(${this.ratio})`}}var QC=new zy({preventServerStart:!0}),ZC=new gi(new vi(Dy));var Ii=hy.getTracer("studio","1.0.0"),I=sy.getMeter("studio","1.0.0"),jy=Py.getLogger("studio","1.0.0"),yi=(t,n,e)=>{let a={},u=e,_=e[e.length-1];if(_!==null&&typeof _==="object"&&!Array.isArray(_)&&!(_ instanceof Error)&&Object.getPrototypeOf(_)===Object.prototype)a=_,u=e.slice(0,-1);let m=u.map((o)=>{if(o instanceof Error)return`${o.name}: ${o.message}`;if(typeof o==="object")try{return JSON.stringify(o)}catch{return"[Object]"}return String(o)}).join(" ");jy.emit({severityNumber:t,severityText:n,body:m,attributes:{"log.source":"console",...a}})},ri={error:console.error.bind(console),warn:console.warn.bind(console),debug:console.debug.bind(console)};console.error=(...t)=>{yi(xi.ERROR,"ERROR",t),ri.error(...t)};console.warn=(...t)=>{yi(xi.WARN,"WARN",t),ri.warn(...t)};console.debug=(...t)=>{yi(xi.DEBUG,"DEBUG",t),ri.debug(...t)};var ci,Vi=0,Ti=500;function Ly(){if(ci)return;let t=performance.now()+Ti;ci=setInterval(()=>{let n=performance.now();Vi=Math.max(0,n-t),t=n+Ti},Ti),ci.unref?.()}function qi(){return Ly(),Vi}var Ry=()=>I.createHistogram("db.query.duration",{description:"Database query execution duration in milliseconds",unit:"ms"}),li=()=>I.createHistogram("db.pool.acquire.duration",{description:"Time spent waiting to acquire a connection from the pool",unit:"ms"}),di=400,Wy=100,$y=(t)=>(n)=>{let e={"db.statement":n.query.sql,"db.status":n.level==="error"?"error":"success"};if(n.queryDurationMillis>di){let a=qi(),u=a>di/2;console.error(u?"Slow query measurement \u2014 likely event-loop lag, not slow SQL:":"Slow query detected:",{durationMs:n.queryDurationMillis,eventLoopLagMs:Math.round(a),sql:n.query.sql,pool:{total:t.totalCount,idle:t.idleCount,waiting:t.waitingCount,max:Tt()}})}if(Ry().record(n.queryDurationMillis,e),n.level==="error")console.error("Query failed:",{durationMs:n.queryDurationMillis,error:n.error,sql:n.query.sql})};function Xy(t){let n=t.connect.bind(t);return t.connect=(e)=>{if(typeof e==="function")return n(e);let a=performance.now(),u=Tt(),_=t.idleCount===0&&t.totalCount>=u,m=t.idleCount;return n().then((o)=>{let x=performance.now()-a;if(li().record(x,{"db.pool.outcome":_?"contended":"available"}),x>Wy)if(_)console.error("Slow db pool acquire \u2014 pool saturated:",{waitMs:x,total:t.totalCount,idle:t.idleCount,waiting:t.waitingCount,max:u});else console.warn("Slow db pool acquire \u2014 event-loop lag (not pool):",{waitMs:x,idleAtStart:m,total:t.totalCount,max:u});return o},(o)=>{throw li().record(performance.now()-a,{"db.pool.outcome":"error"}),o})},t}var nu={keepAlive:!0,keepAliveInitialDelayMillis:1e4,idleTimeoutMillis:300000,connectionTimeoutMillis:30000,allowExitOnIdle:!0};function eu(){try{return A().databasePgSsl}catch{return!1}}function Tt(){try{return A().databasePoolMax}catch{return 10}}function Ay(t){let n=Xy(new tu({connectionString:t,max:Tt(),ssl:eu(),...nu})),e=new bi({pool:n});return{type:"postgres",db:new Jy({dialect:e,log:$y(n)}),pool:n}}function g(){return A().databaseUrl}function iu(t){let n=t||g();return new bi({pool:new tu({connectionString:n,max:Tt(),ssl:eu(),...nu})})}function Qy(t){let n=t||g();return Ay(n)}async function uu(t){if(await t.db.destroy(),!t.pool.ended)await t.pool.end();if(t===G)G=null}var G=null;function Ci(){if(!G)G=Qy(g());return G}async function au(t){let e={database:iu(t||g()),plugins:[My({dynamicAccessControl:{enabled:!0,enableCustomResources:!0}}),Hy(),Yy(),By(),Iy(),Sy({loginPage:"/login"}),Fy(),Oy({sendMagicLink:async()=>{}}),Gy({sendVerificationOTP:async()=>{}})]},{toBeAdded:a,toBeCreated:u,runMigrations:_}=await Zy(e);if(!a.length&&!u.length)return"up to date";return await _(),`${u.length+a.length} table(s) migrated`}async function ou(t,n){return(await Z`
|
|
1040
1040
|
SELECT table_name FROM information_schema.tables
|