decocms 4.150.21 → 4.150.22

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.
Files changed (221) hide show
  1. package/dist/client/assets/{AlertCircle-BaA3X0Vc.js → AlertCircle-BHNP9rUU.js} +1 -1
  2. package/dist/client/assets/{AreaChart-B4pcuH23.js → AreaChart-Dix8LhoJ.js} +1 -1
  3. package/dist/client/assets/{ArrowUp-Df4rbgne.js → ArrowUp-CYmWic6A.js} +1 -1
  4. package/dist/client/assets/{ArrowUpRight-fq20wgvL.js → ArrowUpRight-BQZOilTG.js} +1 -1
  5. package/dist/client/assets/{Check-DdyKCl8O.js → Check-D3kjZMFv.js} +1 -1
  6. package/dist/client/assets/{CheckCircle-IiUO6eKZ.js → CheckCircle-myRIyunA.js} +1 -1
  7. package/dist/client/assets/{ChevronDown-BSVV4L9A.js → ChevronDown-Dn2piZ2G.js} +1 -1
  8. package/dist/client/assets/{ChevronRight-CSgj0z6i.js → ChevronRight-CwImj32A.js} +1 -1
  9. package/dist/client/assets/{ChevronUp-GR0-Yt4d.js → ChevronUp-N9Uneycs.js} +1 -1
  10. package/dist/client/assets/{Copy01-Cv0Vuqbe.js → Copy01-CFdaASyO.js} +1 -1
  11. package/dist/client/assets/{CpuChip01-UMJdnf1a.js → CpuChip01-W_PpJOQC.js} +1 -1
  12. package/dist/client/assets/{DotsVertical-OBlENp_a.js → DotsVertical-CrKPB-rb.js} +1 -1
  13. package/dist/client/assets/{Eye-CkjEvMwH.js → Eye-DJcOc9Zw.js} +1 -1
  14. package/dist/client/assets/{FilterLines-Ca7W3tHb.js → FilterLines-BFYjIaR9.js} +1 -1
  15. package/dist/client/assets/{HardDrive-B91rzidb.js → HardDrive-B2_Ula85.js} +1 -1
  16. package/dist/client/assets/{Key01-DVGzNfoY.js → Key01-BU6DEShZ.js} +1 -1
  17. package/dist/client/assets/{LayoutLeft-Ciug-ep8.js → LayoutLeft-YSlG5Bjd.js} +1 -1
  18. package/dist/client/assets/{LinkExternal01-CbfqV87q.js → LinkExternal01-C6Bmw0m6.js} +1 -1
  19. package/dist/client/assets/{LogOut01-B0JVxGo4.js → LogOut01-Cc5p345m.js} +1 -1
  20. package/dist/client/assets/{Monitor01-CEdUOtdj.js → Monitor01-Car-ubqN.js} +1 -1
  21. package/dist/client/assets/{Palette-DgmLnO_l.js → Palette-iwM8hSr_.js} +1 -1
  22. package/dist/client/assets/{Play-DcSuTxiG.js → Play-BOQvMkTV.js} +1 -1
  23. package/dist/client/assets/{Plus-DUvbS-Yy.js → Plus-CPMXdWiF.js} +1 -1
  24. package/dist/client/assets/{SearchLg-CSWY8viA.js → SearchLg-Ccga3kHp.js} +1 -1
  25. package/dist/client/assets/{SearchMd-D0poZQV_.js → SearchMd-kaVQ2swy.js} +1 -1
  26. package/dist/client/assets/{Settings02-Sy5kNpSu.js → Settings02-D2WBE2j5.js} +1 -1
  27. package/dist/client/assets/{Shield01-Bcql6hT4.js → Shield01-BrHF2Qbg.js} +1 -1
  28. package/dist/client/assets/{Star01-2mO5G0Xw.js → Star01-CduFPScO.js} +1 -1
  29. package/dist/client/assets/{Stars01-DqIThrOc.js → Stars01-BpwKVOpQ.js} +1 -1
  30. package/dist/client/assets/{Stars02-cKtwD-F2.js → Stars02-C-JOVi71.js} +1 -1
  31. package/dist/client/assets/{Sun-DsnsEGXF.js → Sun-C2hxlxHa.js} +1 -1
  32. package/dist/client/assets/{SwitchHorizontal01-BwAs_KcG.js → SwitchHorizontal01-Cm3MVkwA.js} +1 -1
  33. package/dist/client/assets/{Tool01-D2fd-Mg5.js → Tool01-pHGWkh_u.js} +1 -1
  34. package/dist/client/assets/{Tool02-C17Y4pBP.js → Tool02-C5toOJ2s.js} +1 -1
  35. package/dist/client/assets/{Trash01-BiVOd2DS.js → Trash01-BT5A-gEY.js} +1 -1
  36. package/dist/client/assets/{TrendUp01-D1GkdBOV.js → TrendUp01-ByibXYAc.js} +1 -1
  37. package/dist/client/assets/{Upload01-k2Sn0RXQ.js → Upload01-wyU_c8og.js} +1 -1
  38. package/dist/client/assets/{User01-cC3unvvx.js → User01-BgOg9cVa.js} +1 -1
  39. package/dist/client/assets/{Users01-BdNSg6CC.js → Users01-CXIce8sr.js} +1 -1
  40. package/dist/client/assets/{Users03-CqyDxwt6.js → Users03-TIXCT7Lp.js} +1 -1
  41. package/dist/client/assets/{X-Baqkpp1k.js → X-CbfkAYzJ.js} +1 -1
  42. package/dist/client/assets/{XCircle-8Wd2-AR5.js → XCircle-DsHpzoj1.js} +1 -1
  43. package/dist/client/assets/{XClose-CBFLmbVP.js → XClose-Dg24hRTQ.js} +1 -1
  44. package/dist/client/assets/{Zap-C4qF8Cn-.js → Zap-CRace4eX.js} +1 -1
  45. package/dist/client/assets/{ZapSquare-BH7ie7zg.js → ZapSquare-Bz1NVv_t.js} +1 -1
  46. package/dist/client/assets/{access-gate-CxXZPkIw.js → access-gate-B8ke5V9B.js} +1 -1
  47. package/dist/client/assets/{add-section-modal-C7ktQCug.js → add-section-modal-R6NgXhJA.js} +1 -1
  48. package/dist/client/assets/{agent-icon-q4cV7U67.js → agent-icon-OqQTNFsC.js} +1 -1
  49. package/dist/client/assets/{agents-list-UZwnNOjT.js → agents-list-_5s5JeHd.js} +1 -1
  50. package/dist/client/assets/{ai-providers-Cput0kVL.js → ai-providers-D5nYmfZB.js} +1 -1
  51. package/dist/client/assets/{alert-DjeIAXMV.js → alert-BsZRUEM2.js} +1 -1
  52. package/dist/client/assets/{alert-dialog-DIwINRgW.js → alert-dialog-iPj1kFsb.js} +1 -1
  53. package/dist/client/assets/{app-editor-DdSH3pAD.js → app-editor-Cqg3A1oU.js} +1 -1
  54. package/dist/client/assets/{auth-FouChJbb.js → auth-CU9nh5v5.js} +1 -1
  55. package/dist/client/assets/{auth-catchall-6cph4qce.js → auth-catchall-BkoM7GHE.js} +1 -1
  56. package/dist/client/assets/{auth-entry-i0rNcujn.js → auth-entry-Cnd5Yyo4.js} +1 -1
  57. package/dist/client/assets/{auth-split-layout-3qPwGE8Z.js → auth-split-layout-DEObuTt5.js} +1 -1
  58. package/dist/client/assets/{authenticate-and-persist-oauth-Dx2DT3YD.js → authenticate-and-persist-oauth-Y0eAm4-d.js} +1 -1
  59. package/dist/client/assets/{automation-list-row-Brn7k31U.js → automation-list-row-Bs0wFLr_.js} +1 -1
  60. package/dist/client/assets/{automation-runs-CP1cxXFo.js → automation-runs-D7N1vsav.js} +1 -1
  61. package/dist/client/assets/{automations-BlJndOBe.js → automations-CfIG5b76.js} +1 -1
  62. package/dist/client/assets/{avatar-Du8HEobV.js → avatar-npAOJTNv.js} +1 -1
  63. package/dist/client/assets/{badge-swCoKQnC.js → badge-B7QGFlT2.js} +1 -1
  64. package/dist/client/assets/{block-document-DiB0SOp5.js → block-document-Sh0V11uT.js} +1 -1
  65. package/dist/client/assets/{brand-context-C8l7XNKr.js → brand-context-OfFgyNNa.js} +1 -1
  66. package/dist/client/assets/{buckets-Bs0sTGAu.js → buckets-sL5kUY2t.js} +1 -1
  67. package/dist/client/assets/{bulk-category-panel-DE5pUVzi.js → bulk-category-panel-DejEHEKu.js} +1 -1
  68. package/dist/client/assets/{calendar-BZcldUNV.js → calendar-BKP3pISc.js} +1 -1
  69. package/dist/client/assets/{capability-load-error-CqwI-nav.js → capability-load-error-sN01EV-h.js} +1 -1
  70. package/dist/client/assets/{card-9OUE6Bzl.js → card-C6G1ZbAT.js} +1 -1
  71. package/dist/client/assets/{category-editor-JK7DojfI.js → category-editor-Co38yZEY.js} +1 -1
  72. package/dist/client/assets/{chat-context-DYO1ODPB.js → chat-context-Bkf3Y_YW.js} +1 -1
  73. package/dist/client/assets/{checkbox-Dd_rqLvT.js → checkbox-B9JLC7kz.js} +1 -1
  74. package/dist/client/assets/{cli-auth-success-CFsjKhGa.js → cli-auth-success-CsEIMeSH.js} +1 -1
  75. package/dist/client/assets/{collection-detail-D0rtc2gf.js → collection-detail-zqQkeNgt.js} +1 -1
  76. package/dist/client/assets/{collection-display-button-iD10GGdW.js → collection-display-button-CUXNxY_5.js} +1 -1
  77. package/dist/client/assets/{collection-search-5SFjfCC8.js → collection-search-Oul6UFfq.js} +1 -1
  78. package/dist/client/assets/{collection-table-wrapper-fW-dsmLE.js → collection-table-wrapper-CDNw08E3.js} +1 -1
  79. package/dist/client/assets/{collection-tabs-DnykrgWW.js → collection-tabs-DfUm6FcP.js} +1 -1
  80. package/dist/client/assets/{command-CDVbjOi5.js → command-CFi_nxAL.js} +1 -1
  81. package/dist/client/assets/{commerce-onboarding-CAOuADZ6.js → commerce-onboarding-D4pJOG7X.js} +1 -1
  82. package/dist/client/assets/{companions-core-6m5dy3es.js → companions-core-DBaOS2yz.js} +1 -1
  83. package/dist/client/assets/{connect-B_K53Vaa.js → connect-qY6nUUFn.js} +1 -1
  84. package/dist/client/assets/{connection-DhlrJlFw.js → connection-_j4DuEiI.js} +1 -1
  85. package/dist/client/assets/{connection-card-CzF-xjYn.js → connection-card-CuJ2QFEt.js} +1 -1
  86. package/dist/client/assets/{connection-detail-DmWTCewb.js → connection-detail-C52r4r_5.js} +1 -1
  87. package/dist/client/assets/{connection-form-helpers-DRviH-Au.js → connection-form-helpers-Bmw91fnM.js} +1 -1
  88. package/dist/client/assets/{connections-DGvaZBx3.js → connections-CMPdUO57.js} +1 -1
  89. package/dist/client/assets/{decopilot-sse-pool-BXMXu1gQ.js → decopilot-sse-pool-CmuV2kHg.js} +1 -1
  90. package/dist/client/assets/{dialog-C82H2S70.js → dialog-K6gwa7A3.js} +1 -1
  91. package/dist/client/assets/{domain-settings-DPn_9rd3.js → domain-settings-BPhwVIl_.js} +1 -1
  92. package/dist/client/assets/{drawer-lnIGl-vb.js → drawer-B_XFR2lX.js} +1 -1
  93. package/dist/client/assets/{dropdown-menu-CRGAwBji.js → dropdown-menu-DUU_gv0n.js} +1 -1
  94. package/dist/client/assets/{empty-state-BKzUesA7.js → empty-state-Cp0ZI-r6.js} +1 -1
  95. package/dist/client/assets/{extract-connection-data-B9TIJ0UC.js → extract-connection-data-2A6KAT-f.js} +1 -1
  96. package/dist/client/assets/{file-explorer-tNI79jXo.js → file-explorer-Ua7ytqbC.js} +1 -1
  97. package/dist/client/assets/{form-DAiRK0vx.js → form-CGaw2YpJ.js} +1 -1
  98. package/dist/client/assets/{general-CXtIEOrf.js → general-DUtn268r.js} +1 -1
  99. package/dist/client/assets/{github-repo-picker-DUNQ1oJW.js → github-repo-picker-DtakWI4J.js} +1 -1
  100. package/dist/client/assets/{hooks-Bom1QoTc.js → hooks-D6e52Y4T.js} +1 -1
  101. package/dist/client/assets/{index-Dv8k1EHh.js → index-BMkqNEv8.js} +1 -1
  102. package/dist/client/assets/{index-Df7LGqDK.js → index-BcaeODv9.js} +1 -1
  103. package/dist/client/assets/{index-Z4CG7jJp.js → index-BvRZaTt9.js} +1 -1
  104. package/dist/client/assets/{index-BDQ6Ogmu.js → index-CpUxmDng.js} +5 -5
  105. package/dist/client/assets/{index-oBYlsJ_o.js → index-DBLw6mkp.js} +1 -1
  106. package/dist/client/assets/{index-D7cNsGmf.js → index-DDsGzWAW.js} +3 -3
  107. package/dist/client/assets/{index-DK8HHLRp.js → index-DI6Brofo.js} +1 -1
  108. package/dist/client/assets/{index-2KxPRjw5.js → index-DqXmpRSX.js} +3 -3
  109. package/dist/client/assets/{index-C_5SQGG6.js → index-Dqep-uNC.js} +1 -1
  110. package/dist/client/assets/{index-B_kqSbsO.js → index-Dy8kFJxu.js} +1 -1
  111. package/dist/client/assets/{index-C-JAJ-o5.js → index-rTnRAZMH.js} +1 -1
  112. package/dist/client/assets/{index-redirect-Cj-NIgvU.js → index-redirect-6k6UhjHL.js} +1 -1
  113. package/dist/client/assets/{input-BAuCATqg.js → input-Bp56QPzT.js} +1 -1
  114. package/dist/client/assets/{integration-icon-DKBuU8Fr.js → integration-icon-MouDA4V6.js} +1 -1
  115. package/dist/client/assets/{invite-member-dialog-BiHY2r7m.js → invite-member-dialog-CiJy3P9w.js} +1 -1
  116. package/dist/client/assets/{label-onkw7wrh.js → label-CXwRlswr.js} +1 -1
  117. package/dist/client/assets/{layout-D8O9_Poo.js → layout-B3j_gVFj.js} +1 -1
  118. package/dist/client/assets/{login-B0j1yr6w.js → login-Hjf4Zeii.js} +1 -1
  119. package/dist/client/assets/{mcp-oauth-95IH3VKT.js → mcp-oauth-BHDSTwSV.js} +1 -1
  120. package/dist/client/assets/{members-Y7A-UiF5.js → members-D2Ea76Rg.js} +1 -1
  121. package/dist/client/assets/{monaco-editor-CSUtCvVX.js → monaco-editor-C9o8bufU.js} +1 -1
  122. package/dist/client/assets/{monitoring-stats-row-Dcug_wR7.js → monitoring-stats-row-C9gp4i2P.js} +1 -1
  123. package/dist/client/assets/{multi-select-C68tqs9V.js → multi-select-Ch6zaVsE.js} +1 -1
  124. package/dist/client/assets/{oauth-callback-CqH1tIve.js → oauth-callback-PpJTQQhm.js} +1 -1
  125. package/dist/client/assets/{oauth-callback-ai-provider-C0UAY-58.js → oauth-callback-ai-provider-BCj-mtF9.js} +1 -1
  126. package/dist/client/assets/{onboarding-2ZJYmqTH.js → onboarding-CLYVE1a0.js} +1 -1
  127. package/dist/client/assets/{org-layout-qZcaYBLo.js → org-layout-CYEy29Ts.js} +1 -1
  128. package/dist/client/assets/{organization-choice-CduZOMP9.js → organization-choice-CWdxGykt.js} +1 -1
  129. package/dist/client/assets/{orgs-DU0BEJAc.js → orgs-B_4i8FPt.js} +1 -1
  130. package/dist/client/assets/{page-seo-form-nxKDUI-6.js → page-seo-form-DpY_sul3.js} +1 -1
  131. package/dist/client/assets/{popover-x1qHvmwD.js → popover-CVg35MYX.js} +1 -1
  132. package/dist/client/assets/{post-editor-BhfI7Odx.js → post-editor-Bpp2OmpX.js} +1 -1
  133. package/dist/client/assets/{primitives-DITXbj-2.js → primitives-Br2UT5Vf.js} +1 -1
  134. package/dist/client/assets/{profile-Dl3k4wub.js → profile-6ivG90Z_.js} +1 -1
  135. package/dist/client/assets/project-app-view-B3f5qhaT.js +1 -0
  136. package/dist/client/assets/record-editor-B0thyxFw.js +1 -0
  137. package/dist/client/assets/{redirect-editor-BamLe0Vb.js → redirect-editor-BOSsbfNh.js} +1 -1
  138. package/dist/client/assets/{registry-layout-Cfgh3Q9S.js → registry-layout-48QA7RsV.js} +1 -1
  139. package/dist/client/assets/registry-wAhFzL5P.js +2 -0
  140. package/dist/client/assets/{reports-2omVoMUm.js → reports-gCTgU_9n.js} +1 -1
  141. package/dist/client/assets/{require-capability-B1pg4EtO.js → require-capability-CCuG3VBt.js} +1 -1
  142. package/dist/client/assets/{required-auth-layout-wB2bMMGI.js → required-auth-layout-BU1eh7Wn.js} +1 -1
  143. package/dist/client/assets/{reset-password-BmxFRY37.js → reset-password-b8TsB2X9.js} +1 -1
  144. package/dist/client/assets/{roles-ClU1umGx.js → roles-bUKS9vRr.js} +1 -1
  145. package/dist/client/assets/{search-input-DtCL1YcZ.js → search-input-B0jSz39p.js} +1 -1
  146. package/dist/client/assets/{secrets-B-dmTgLw.js → secrets-DBVJEtoI.js} +1 -1
  147. package/dist/client/assets/{sections-editor-DqY5dzLX.js → sections-editor-WmcIIpkR.js} +1 -1
  148. package/dist/client/assets/{select-DfQiZ-4J.js → select-Cb3tiSDw.js} +1 -1
  149. package/dist/client/assets/{select-model-Clf7Hlwn.js → select-model-Bl2KSVsJ.js} +1 -1
  150. package/dist/client/assets/{self-tool-result-BCgUr0ik.js → self-tool-result-qixGUHHp.js} +1 -1
  151. package/dist/client/assets/{seo-editor-CEUCMyKF.js → seo-editor-CUQXJ1Cd.js} +1 -1
  152. package/dist/client/assets/{settings-layout-DJLSOlbv.js → settings-layout-D-dv9Bvf.js} +1 -1
  153. package/dist/client/assets/{settings-section-BaFcIjo5.js → settings-section-awXbfRFI.js} +1 -1
  154. package/dist/client/assets/{shell-controls-DIMDYHkk.js → shell-controls-wrDqoZ9L.js} +1 -1
  155. package/dist/client/assets/{shell-layout-B56j-p5N.js → shell-layout-BX0EOEmo.js} +1 -1
  156. package/dist/client/assets/{sidebar-DpVJgBAa.js → sidebar-BiPc8cWL.js} +1 -1
  157. package/dist/client/assets/{skeleton-BtiEyhAl.js → skeleton-CT6LmWQk.js} +1 -1
  158. package/dist/client/assets/{spinner-DPfrt4Tp.js → spinner-5nEupkU1.js} +1 -1
  159. package/dist/client/assets/{sso-CICOFYfX.js → sso-BH0Yk1RU.js} +1 -1
  160. package/dist/client/assets/{store-BJgQ6scG.js → store-DwUNbOmZ.js} +1 -1
  161. package/dist/client/assets/store-registry-Ci03spyl.js +2 -0
  162. package/dist/client/assets/{studio-tools-CTJuN7Yy.js → studio-tools-DvotCHSX.js} +1 -1
  163. package/dist/client/assets/{switch-DIwoxI1y.js → switch-C4EXURzI.js} +1 -1
  164. package/dist/client/assets/{tab-id-DJIms9m1.js → tab-id-CCUuJuHg.js} +1 -1
  165. package/dist/client/assets/{table-BbRTH9fF.js → table-BrY2fIko.js} +1 -1
  166. package/dist/client/assets/{tabs-DKyQ4Qe1.js → tabs-o5z4F4nX.js} +1 -1
  167. package/dist/client/assets/{textarea-Y242n44c.js → textarea-KF0bc7ey.js} +1 -1
  168. package/dist/client/assets/{toggle-group-BBsmjOfV.js → toggle-group-ImSBP57j.js} +1 -1
  169. package/dist/client/assets/{toolbar-BaZp82JP.js → toolbar-HbcGIVfO.js} +1 -1
  170. package/dist/client/assets/{tooltip-CEu_we5y.js → tooltip-DJ0CJ4nu.js} +1 -1
  171. package/dist/client/assets/{use-ai-providers-B2nAOoUO.js → use-ai-providers-BlXZ8OS9.js} +1 -1
  172. package/dist/client/assets/{use-automations-irLGHKpI.js → use-automations-D97aWna-.js} +1 -1
  173. package/dist/client/assets/{use-autosave-BAjK3u8R.js → use-autosave-BuWdMqxb.js} +1 -1
  174. package/dist/client/assets/{use-capability-Y4a4cK2y.js → use-capability-DjWP4c_V.js} +1 -1
  175. package/dist/client/assets/{use-clock-tick-kQx_nmDK.js → use-clock-tick-D08rNiex.js} +1 -1
  176. package/dist/client/assets/{use-connection-CvBcj0iA.js → use-connection-CV5pilpz.js} +1 -1
  177. package/dist/client/assets/{use-copy-POYUhIaM.js → use-copy-D8Z2epUY.js} +1 -1
  178. package/dist/client/assets/{use-create-virtual-mcp-Df8fpCi4.js → use-create-virtual-mcp-DYyiqJWf.js} +1 -1
  179. package/dist/client/assets/{use-debounced-autosave-EvVOUA6S.js → use-debounced-autosave-BYO2w-tQ.js} +1 -1
  180. package/dist/client/assets/{use-debounced-value-IOz7dnNR.js → use-debounced-value-Pwi9o0RN.js} +1 -1
  181. package/dist/client/assets/{use-deco-credits-CBOWsaT-.js → use-deco-credits-DwGKxBj1.js} +1 -1
  182. package/dist/client/assets/{use-decopilot-events-Dc8-pFMU.js → use-decopilot-events-cGJArGLt.js} +1 -1
  183. package/dist/client/assets/{use-delete-connection-CxX7cCR_.js → use-delete-connection-Cnp4lOk4.js} +1 -1
  184. package/dist/client/assets/{use-deployment-admin-ucDRDdNR.js → use-deployment-admin-BGRYyg5T.js} +1 -1
  185. package/dist/client/assets/{use-file-configs-BsCj6gUu.js → use-file-configs-mdE9JcAP.js} +1 -1
  186. package/dist/client/assets/{use-infinite-scroll-ccrh4_KW.js → use-infinite-scroll-C92EJ-_j.js} +1 -1
  187. package/dist/client/assets/{use-join-requests-DjYbXyL8.js → use-join-requests-Da6i-it5.js} +1 -1
  188. package/dist/client/assets/{use-mcp-auth-status-vzmxIRHi.js → use-mcp-auth-status-DJKtOtTD.js} +1 -1
  189. package/dist/client/assets/{use-mcp-client-DRwUSZdO.js → use-mcp-client-DwJl6WIN.js} +1 -1
  190. package/dist/client/assets/{use-mcp-tools-PCSBjtNq.js → use-mcp-tools-BDghoqz7.js} +1 -1
  191. package/dist/client/assets/{use-members-DjRi0Onl.js → use-members-Evj2zR-F.js} +1 -1
  192. package/dist/client/assets/{use-mobile-CLE626Yq.js → use-mobile-lAVE_tNN.js} +1 -1
  193. package/dist/client/assets/{use-navigate-to-agent-CXMG3HNZ.js → use-navigate-to-agent-CvMJ7nhQ.js} +1 -1
  194. package/dist/client/assets/{use-org-auth-client-BxtVWNiI.js → use-org-auth-client-DXsqXIB3.js} +1 -1
  195. package/dist/client/assets/{use-org-sso-DBExuOVV.js → use-org-sso-BWke9nQX.js} +1 -1
  196. package/dist/client/assets/{use-organization-roles-DFLLP3Qo.js → use-organization-roles-C3KJEjHx.js} +1 -1
  197. package/dist/client/assets/{use-organization-settings-DKSNQ1_z.js → use-organization-settings-D9dl8fjV.js} +1 -1
  198. package/dist/client/assets/{use-registry-connections-BRZCHKHD.js → use-registry-connections-DyTDBh31.js} +1 -1
  199. package/dist/client/assets/{use-secrets-DfGoccAw.js → use-secrets-DxzABMbU.js} +1 -1
  200. package/dist/client/assets/{use-status-sounds-DcgHuUFX.js → use-status-sounds-Nup_Tqx4.js} +1 -1
  201. package/dist/client/assets/{use-tags-DRM6xsgU.js → use-tags-CghR51-0.js} +1 -1
  202. package/dist/client/assets/{use-view-mode-DvgBYhz6.js → use-view-mode-C9K2zt6M.js} +1 -1
  203. package/dist/client/assets/{use-virtual-mcp-D7SVi-2E.js → use-virtual-mcp-Co2Gxa_g.js} +1 -1
  204. package/dist/client/assets/useInfiniteQuery-W7NcHma4.js +1 -0
  205. package/dist/client/assets/{useQueries-DVb_HjzV.js → useQueries-DQT-5ztu.js} +1 -1
  206. package/dist/client/assets/{useRouterState-CJ97gzOK.js → useRouterState-CfpQuL30.js} +1 -1
  207. package/dist/client/assets/useSuspenseInfiniteQuery-r5q75ddS.js +1 -0
  208. package/dist/client/assets/{users-CX6W_kiO.js → users-B34XbaLL.js} +1 -1
  209. package/dist/client/assets/{variant-calendar-BSUlgs-W.js → variant-calendar-DtyO8s_C.js} +1 -1
  210. package/dist/client/assets/{view-mode-toggle-DULJqLEB.js → view-mode-toggle-Be9Tyce0.js} +1 -1
  211. package/dist/client/index.html +1 -1
  212. package/dist/server/cli.js +178 -177
  213. package/dist/server/migrate.js +7 -7
  214. package/dist/server/server.js +145 -145
  215. package/package.json +1 -1
  216. package/dist/client/assets/project-app-view-CrBgtatz.js +0 -1
  217. package/dist/client/assets/record-editor-DUGdKTe8.js +0 -1
  218. package/dist/client/assets/registry-B4ci0gM-.js +0 -2
  219. package/dist/client/assets/store-registry-Di0pCo7I.js +0 -2
  220. package/dist/client/assets/useInfiniteQuery-BWd6o-wh.js +0 -1
  221. package/dist/client/assets/useSuspenseInfiniteQuery-DPyRMURT.js +0 -1
@@ -148,7 +148,7 @@ var ke=Object.defineProperty;var $e=(t)=>t;function Xe(t,n){this[t]=$e.bind(null
148
148
  id, parent_connection_id, child_connection_id,
149
149
  selected_tools, selected_resources, selected_prompts, created_at
150
150
  FROM connection_aggregations
151
- `.execute(t),await t.schema.dropTable("connection_aggregations").execute(),await t.schema.alterTable("connection_aggregations_new").renameTo("connection_aggregations").execute(),await t.schema.createIndex("idx_conn_agg_parent").on("connection_aggregations").columns(["parent_connection_id"]).execute(),await t.schema.createIndex("idx_conn_agg_child").on("connection_aggregations").columns(["child_connection_id"]).execute(),await t.schema.createIndex("idx_conn_agg_unique").on("connection_aggregations").columns(["parent_connection_id","child_connection_id"]).unique().execute()}var vt={};i(vt,{up:()=>V_,down:()=>v_});import{webcrypto as Zi}from"crypto";var Qi="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var G_=128,L,$;function I_(t){if(!L||L.length<t)L=Buffer.allocUnsafe(t*G_),Zi.getRandomValues(L),$=0;else if($+t>L.length)Zi.getRandomValues(L),$=0;$+=t}function X(t=21){I_(t|=0);let n="";for(let u=$-t;u<$;u++)n+=Qi[L[u]&63];return n}var g_="org-admin",s_="Organization Admin";async function V_(t){await t.schema.createTable("projects").addColumn("id","text",(u)=>u.primaryKey()).addColumn("organization_id","text",(u)=>u.notNull().references("organization.id").onDelete("cascade")).addColumn("slug","text",(u)=>u.notNull()).addColumn("name","text",(u)=>u.notNull()).addColumn("description","text").addColumn("enabled_plugins","text").addColumn("ui","text").addColumn("created_at","text",(u)=>u.notNull()).addColumn("updated_at","text",(u)=>u.notNull()).execute(),await t.schema.createIndex("projects_org_slug_unique").on("projects").columns(["organization_id","slug"]).unique().execute(),await t.schema.createIndex("projects_organization_id_idx").on("projects").column("organization_id").execute(),await t.schema.createTable("project_plugin_configs").addColumn("id","text",(u)=>u.primaryKey()).addColumn("project_id","text",(u)=>u.notNull().references("projects.id").onDelete("cascade")).addColumn("plugin_id","text",(u)=>u.notNull()).addColumn("connection_id","text",(u)=>u.references("connections.id").onDelete("set null")).addColumn("settings","text").addColumn("created_at","text",(u)=>u.notNull()).addColumn("updated_at","text",(u)=>u.notNull()).execute(),await t.schema.createIndex("project_plugin_configs_project_plugin_unique").on("project_plugin_configs").columns(["project_id","plugin_id"]).unique().execute();let n=await t.selectFrom("organization").select(["id"]).execute();for(let u of n){let _=new Date().toISOString(),e=`proj_${X()}`,a=await t.selectFrom("organization_settings").select(["enabled_plugins"]).where("organizationId","=",u.id).executeTakeFirst();await t.insertInto("projects").values({id:e,organization_id:u.id,slug:g_,name:s_,description:null,enabled_plugins:a?.enabled_plugins??null,ui:null,created_at:_,updated_at:_}).execute()}}async function v_(t){await t.schema.dropTable("project_plugin_configs").execute(),await t.schema.dropTable("projects").execute()}var qt={};i(qt,{up:()=>q_,down:()=>l_});async function q_(t){await t.schema.alterTable("threads").addColumn("status","text",(n)=>n.notNull().defaultTo("completed")).execute()}async function l_(t){await t.schema.alterTable("threads").dropColumn("status").execute()}var lt={};i(lt,{up:()=>d_,down:()=>b_});async function d_(t){}async function b_(t){}var dt={};i(dt,{up:()=>ta,down:()=>na});async function ta(t){await t.schema.createTable("project_connections").addColumn("id","text",(n)=>n.primaryKey()).addColumn("project_id","text",(n)=>n.notNull().references("projects.id").onDelete("cascade")).addColumn("connection_id","text",(n)=>n.notNull().references("connections.id").onDelete("cascade")).addColumn("created_at","text",(n)=>n.notNull()).execute(),await t.schema.createIndex("project_connections_project_conn_unique").on("project_connections").columns(["project_id","connection_id"]).unique().execute(),await t.schema.createIndex("project_connections_project_id_idx").on("project_connections").columns(["project_id"]).execute()}async function na(t){await t.schema.dropIndex("project_connections_project_id_idx").execute(),await t.schema.dropIndex("project_connections_project_conn_unique").execute(),await t.schema.dropTable("project_connections").execute()}var bt={};i(bt,{up:()=>ua,down:()=>ia});import{sql as Fi}from"kysely";async function ua(t){await Fi`
151
+ `.execute(t),await t.schema.dropTable("connection_aggregations").execute(),await t.schema.alterTable("connection_aggregations_new").renameTo("connection_aggregations").execute(),await t.schema.createIndex("idx_conn_agg_parent").on("connection_aggregations").columns(["parent_connection_id"]).execute(),await t.schema.createIndex("idx_conn_agg_child").on("connection_aggregations").columns(["child_connection_id"]).execute(),await t.schema.createIndex("idx_conn_agg_unique").on("connection_aggregations").columns(["parent_connection_id","child_connection_id"]).unique().execute()}var vt={};i(vt,{up:()=>V_,down:()=>v_});import{webcrypto as Zi}from"crypto";var Qi="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var G_=128,R,$;function I_(t){if(!R||R.length<t)R=Buffer.allocUnsafe(t*G_),Zi.getRandomValues(R),$=0;else if($+t>R.length)Zi.getRandomValues(R),$=0;$+=t}function X(t=21){I_(t|=0);let n="";for(let u=$-t;u<$;u++)n+=Qi[R[u]&63];return n}var g_="org-admin",s_="Organization Admin";async function V_(t){await t.schema.createTable("projects").addColumn("id","text",(u)=>u.primaryKey()).addColumn("organization_id","text",(u)=>u.notNull().references("organization.id").onDelete("cascade")).addColumn("slug","text",(u)=>u.notNull()).addColumn("name","text",(u)=>u.notNull()).addColumn("description","text").addColumn("enabled_plugins","text").addColumn("ui","text").addColumn("created_at","text",(u)=>u.notNull()).addColumn("updated_at","text",(u)=>u.notNull()).execute(),await t.schema.createIndex("projects_org_slug_unique").on("projects").columns(["organization_id","slug"]).unique().execute(),await t.schema.createIndex("projects_organization_id_idx").on("projects").column("organization_id").execute(),await t.schema.createTable("project_plugin_configs").addColumn("id","text",(u)=>u.primaryKey()).addColumn("project_id","text",(u)=>u.notNull().references("projects.id").onDelete("cascade")).addColumn("plugin_id","text",(u)=>u.notNull()).addColumn("connection_id","text",(u)=>u.references("connections.id").onDelete("set null")).addColumn("settings","text").addColumn("created_at","text",(u)=>u.notNull()).addColumn("updated_at","text",(u)=>u.notNull()).execute(),await t.schema.createIndex("project_plugin_configs_project_plugin_unique").on("project_plugin_configs").columns(["project_id","plugin_id"]).unique().execute();let n=await t.selectFrom("organization").select(["id"]).execute();for(let u of n){let _=new Date().toISOString(),e=`proj_${X()}`,a=await t.selectFrom("organization_settings").select(["enabled_plugins"]).where("organizationId","=",u.id).executeTakeFirst();await t.insertInto("projects").values({id:e,organization_id:u.id,slug:g_,name:s_,description:null,enabled_plugins:a?.enabled_plugins??null,ui:null,created_at:_,updated_at:_}).execute()}}async function v_(t){await t.schema.dropTable("project_plugin_configs").execute(),await t.schema.dropTable("projects").execute()}var qt={};i(qt,{up:()=>q_,down:()=>l_});async function q_(t){await t.schema.alterTable("threads").addColumn("status","text",(n)=>n.notNull().defaultTo("completed")).execute()}async function l_(t){await t.schema.alterTable("threads").dropColumn("status").execute()}var lt={};i(lt,{up:()=>d_,down:()=>b_});async function d_(t){}async function b_(t){}var dt={};i(dt,{up:()=>ta,down:()=>na});async function ta(t){await t.schema.createTable("project_connections").addColumn("id","text",(n)=>n.primaryKey()).addColumn("project_id","text",(n)=>n.notNull().references("projects.id").onDelete("cascade")).addColumn("connection_id","text",(n)=>n.notNull().references("connections.id").onDelete("cascade")).addColumn("created_at","text",(n)=>n.notNull()).execute(),await t.schema.createIndex("project_connections_project_conn_unique").on("project_connections").columns(["project_id","connection_id"]).unique().execute(),await t.schema.createIndex("project_connections_project_id_idx").on("project_connections").columns(["project_id"]).execute()}async function na(t){await t.schema.dropIndex("project_connections_project_id_idx").execute(),await t.schema.dropIndex("project_connections_project_conn_unique").execute(),await t.schema.dropTable("project_connections").execute()}var bt={};i(bt,{up:()=>ua,down:()=>ia});import{sql as Fi}from"kysely";async function ua(t){await Fi`
152
152
  UPDATE connections
153
153
  SET connection_url = 'https://studio.decocms.com/org/deco/registry/mcp',
154
154
  tools = NULL,
@@ -948,7 +948,7 @@ var ke=Object.defineProperty;var $e=(t)=>t;function Xe(t,n){this[t]=$e.bind(null
948
948
  CREATE UNIQUE INDEX idx_connection_workload_tokens_active_unique
949
949
  ON connection_workload_tokens (organization_id, subject_connection_id, name)
950
950
  WHERE revoked_at IS NULL
951
- `.execute(t),await t.schema.createTable("connection_credential_grants").addColumn("id","text",(n)=>n.primaryKey()).addColumn("organization_id","text",(n)=>n.notNull().references("organization.id").onDelete("cascade")).addColumn("subject_connection_id","text",(n)=>n.notNull().references("connections.id").onDelete("cascade")).addColumn("target_connection_id","text",(n)=>n.notNull().references("connections.id").onDelete("cascade")).addColumn("scope","text",(n)=>n.notNull()).addColumn("created_by","text",(n)=>n.notNull()).addColumn("created_at","timestamptz",(n)=>n.notNull().defaultTo(I`CURRENT_TIMESTAMP`)).addColumn("updated_at","timestamptz",(n)=>n.notNull().defaultTo(I`CURRENT_TIMESTAMP`)).execute(),await t.schema.createIndex("idx_connection_credential_grants_subject").on("connection_credential_grants").columns(["organization_id","subject_connection_id"]).execute(),await t.schema.createIndex("idx_connection_credential_grants_target").on("connection_credential_grants").columns(["organization_id","target_connection_id"]).execute(),await t.schema.createIndex("idx_connection_credential_grants_unique").on("connection_credential_grants").columns(["organization_id","subject_connection_id","target_connection_id","scope"]).unique().execute()}async function Ho(t){await t.schema.dropTable("connection_credential_grants").ifExists().execute(),await t.schema.dropTable("connection_workload_tokens").ifExists().execute()}var Gu={};i(Gu,{up:()=>Mo,down:()=>Yo});async function Mo(t){await t.schema.alterTable("threads").dropColumn("projected_seq").execute()}async function Yo(t){await t.schema.alterTable("threads").addColumn("projected_seq","integer",(n)=>n.notNull().defaultTo(0)).execute()}var Iu={};i(Iu,{up:()=>ho,down:()=>Ao});import{sql as R}from"kysely";async function ho(t){await R`
951
+ `.execute(t),await t.schema.createTable("connection_credential_grants").addColumn("id","text",(n)=>n.primaryKey()).addColumn("organization_id","text",(n)=>n.notNull().references("organization.id").onDelete("cascade")).addColumn("subject_connection_id","text",(n)=>n.notNull().references("connections.id").onDelete("cascade")).addColumn("target_connection_id","text",(n)=>n.notNull().references("connections.id").onDelete("cascade")).addColumn("scope","text",(n)=>n.notNull()).addColumn("created_by","text",(n)=>n.notNull()).addColumn("created_at","timestamptz",(n)=>n.notNull().defaultTo(I`CURRENT_TIMESTAMP`)).addColumn("updated_at","timestamptz",(n)=>n.notNull().defaultTo(I`CURRENT_TIMESTAMP`)).execute(),await t.schema.createIndex("idx_connection_credential_grants_subject").on("connection_credential_grants").columns(["organization_id","subject_connection_id"]).execute(),await t.schema.createIndex("idx_connection_credential_grants_target").on("connection_credential_grants").columns(["organization_id","target_connection_id"]).execute(),await t.schema.createIndex("idx_connection_credential_grants_unique").on("connection_credential_grants").columns(["organization_id","subject_connection_id","target_connection_id","scope"]).unique().execute()}async function Ho(t){await t.schema.dropTable("connection_credential_grants").ifExists().execute(),await t.schema.dropTable("connection_workload_tokens").ifExists().execute()}var Gu={};i(Gu,{up:()=>Mo,down:()=>Yo});async function Mo(t){await t.schema.alterTable("threads").dropColumn("projected_seq").execute()}async function Yo(t){await t.schema.alterTable("threads").addColumn("projected_seq","integer",(n)=>n.notNull().defaultTo(0)).execute()}var Iu={};i(Iu,{up:()=>ho,down:()=>Ao});import{sql as W}from"kysely";async function ho(t){await W`
952
952
  CREATE OR REPLACE FUNCTION try_parse_jsonb(t text)
953
953
  RETURNS jsonb AS $fn$
954
954
  BEGIN
@@ -957,7 +957,7 @@ var ke=Object.defineProperty;var $e=(t)=>t;function Xe(t,n){this[t]=$e.bind(null
957
957
  RETURN NULL;
958
958
  END;
959
959
  $fn$ LANGUAGE plpgsql IMMUTABLE;
960
- `.execute(t),await R`
960
+ `.execute(t),await W`
961
961
  DELETE FROM connection_aggregations a
962
962
  USING (
963
963
  SELECT
@@ -981,7 +981,7 @@ var ke=Object.defineProperty;var $e=(t)=>t;function Xe(t,n){this[t]=$e.bind(null
981
981
  WHERE jsonb_typeof(try_parse_jsonb(child.metadata) -> 'repoScope') = 'object'
982
982
  ) ranked
983
983
  WHERE a.id = ranked.id AND ranked.rn > 1;
984
- `.execute(t),await R`
984
+ `.execute(t),await W`
985
985
  CREATE OR REPLACE FUNCTION enforce_repo_github_child_single_parent()
986
986
  RETURNS trigger AS $fn$
987
987
  BEGIN
@@ -1002,12 +1002,12 @@ var ke=Object.defineProperty;var $e=(t)=>t;function Xe(t,n){this[t]=$e.bind(null
1002
1002
  RETURN NEW;
1003
1003
  END;
1004
1004
  $fn$ LANGUAGE plpgsql;
1005
- `.execute(t),await R`
1005
+ `.execute(t),await W`
1006
1006
  CREATE TRIGGER trg_repo_github_child_single_parent
1007
1007
  BEFORE INSERT ON connection_aggregations
1008
1008
  FOR EACH ROW
1009
1009
  EXECUTE FUNCTION enforce_repo_github_child_single_parent();
1010
- `.execute(t)}async function Ao(t){await R`DROP TRIGGER IF EXISTS trg_repo_github_child_single_parent ON connection_aggregations;`.execute(t),await R`DROP FUNCTION IF EXISTS enforce_repo_github_child_single_parent();`.execute(t),await R`DROP FUNCTION IF EXISTS try_parse_jsonb(text);`.execute(t)}var su={};i(su,{up:()=>Bo,down:()=>So});import{sql as gu}from"kysely";async function Bo(t){await t.schema.createTable("task_board_items").addColumn("id","text",(n)=>n.primaryKey().notNull()).addColumn("organization_id","text",(n)=>n.notNull().references("organization.id").onDelete("cascade")).addColumn("title","text",(n)=>n.notNull()).addColumn("description","text").addColumn("status","text",(n)=>n.notNull().defaultTo("triage")).addColumn("priority","text",(n)=>n.notNull().defaultTo("medium")).addColumn("assignee_id","text").addColumn("created_by","text",(n)=>n.notNull()).addColumn("created_at","timestamptz",(n)=>n.notNull().defaultTo(gu`now()`)).addColumn("updated_by","text",(n)=>n.notNull()).addColumn("updated_at","timestamptz",(n)=>n.notNull().defaultTo(gu`now()`)).execute(),await t.schema.createIndex("idx_task_board_items_org").on("task_board_items").column("organization_id").execute(),await t.schema.alterTable("organization_settings").addColumn("task_board_enabled","boolean",(n)=>n.notNull().defaultTo(gu`false`)).execute()}async function So(t){await t.schema.alterTable("organization_settings").dropColumn("task_board_enabled").execute(),await t.schema.dropTable("task_board_items").execute()}var Vu={};i(Vu,{up:()=>Oo,down:()=>Go});async function Oo(t){await t.schema.alterTable("task_board_items").addColumn("due_date","timestamptz").execute()}async function Go(t){await t.schema.alterTable("task_board_items").dropColumn("due_date").execute()}var vu={};i(vu,{up:()=>Io,down:()=>go});async function Io(t){await t.schema.alterTable("organization_settings").addColumn("reports_only","boolean").execute()}async function go(t){await t.schema.alterTable("organization_settings").dropColumn("reports_only").execute()}var qu={};i(qu,{up:()=>so,down:()=>Vo});async function so(t){await t.schema.alterTable("task_board_items").addColumn("assigned_by","text").execute()}async function Vo(t){await t.schema.alterTable("task_board_items").dropColumn("assigned_by").execute()}var lu={};i(lu,{up:()=>qo,down:()=>lo});import{sql as vo}from"kysely";async function qo(t){await t.schema.createTable("task_board_item_threads").addColumn("task_board_item_id","text",(n)=>n.notNull()).addColumn("thread_id","text",(n)=>n.notNull()).addColumn("organization_id","text",(n)=>n.notNull()).addColumn("created_at","timestamptz",(n)=>n.notNull().defaultTo(vo`now()`)).addPrimaryKeyConstraint("task_board_item_threads_pkey",["task_board_item_id","thread_id"]).execute(),await t.schema.createIndex("task_board_item_threads_item_idx").on("task_board_item_threads").columns(["organization_id","task_board_item_id"]).execute(),await t.schema.createIndex("task_board_item_threads_thread_idx").on("task_board_item_threads").column("thread_id").execute()}async function lo(t){await t.schema.dropTable("task_board_item_threads").execute()}var du={};i(du,{up:()=>bo,down:()=>ty});async function bo(t){await t.schema.alterTable("task_board_item_threads").addForeignKeyConstraint("task_board_item_threads_thread_id_fkey",["thread_id"],"threads",["id"],(n)=>n.onDelete("cascade")).execute()}async function ty(t){await t.schema.alterTable("task_board_item_threads").dropConstraint("task_board_item_threads_thread_id_fkey").execute()}var bu={};i(bu,{up:()=>uy,down:()=>iy});import{sql as ny}from"kysely";async function uy(t){await t.schema.createTable("task_board_item_prs").addColumn("task_board_item_id","text",(n)=>n.notNull()).addColumn("organization_id","text",(n)=>n.notNull()).addColumn("url","text",(n)=>n.notNull()).addColumn("pr_number","integer",(n)=>n.notNull()).addColumn("repo_owner","text",(n)=>n.notNull()).addColumn("repo_name","text",(n)=>n.notNull()).addColumn("connection_id","text").addColumn("created_at","timestamptz",(n)=>n.notNull().defaultTo(ny`now()`)).addPrimaryKeyConstraint("task_board_item_prs_pkey",["task_board_item_id","url"]).execute(),await t.schema.createIndex("task_board_item_prs_item_idx").on("task_board_item_prs").columns(["organization_id","task_board_item_id"]).execute()}async function iy(t){await t.schema.dropTable("task_board_item_prs").execute()}var ti={};i(ti,{up:()=>_y,down:()=>ay});import{sql as ey}from"kysely";async function _y(t){await ey`
1010
+ `.execute(t)}async function Ao(t){await W`DROP TRIGGER IF EXISTS trg_repo_github_child_single_parent ON connection_aggregations;`.execute(t),await W`DROP FUNCTION IF EXISTS enforce_repo_github_child_single_parent();`.execute(t),await W`DROP FUNCTION IF EXISTS try_parse_jsonb(text);`.execute(t)}var su={};i(su,{up:()=>Bo,down:()=>So});import{sql as gu}from"kysely";async function Bo(t){await t.schema.createTable("task_board_items").addColumn("id","text",(n)=>n.primaryKey().notNull()).addColumn("organization_id","text",(n)=>n.notNull().references("organization.id").onDelete("cascade")).addColumn("title","text",(n)=>n.notNull()).addColumn("description","text").addColumn("status","text",(n)=>n.notNull().defaultTo("triage")).addColumn("priority","text",(n)=>n.notNull().defaultTo("medium")).addColumn("assignee_id","text").addColumn("created_by","text",(n)=>n.notNull()).addColumn("created_at","timestamptz",(n)=>n.notNull().defaultTo(gu`now()`)).addColumn("updated_by","text",(n)=>n.notNull()).addColumn("updated_at","timestamptz",(n)=>n.notNull().defaultTo(gu`now()`)).execute(),await t.schema.createIndex("idx_task_board_items_org").on("task_board_items").column("organization_id").execute(),await t.schema.alterTable("organization_settings").addColumn("task_board_enabled","boolean",(n)=>n.notNull().defaultTo(gu`false`)).execute()}async function So(t){await t.schema.alterTable("organization_settings").dropColumn("task_board_enabled").execute(),await t.schema.dropTable("task_board_items").execute()}var Vu={};i(Vu,{up:()=>Oo,down:()=>Go});async function Oo(t){await t.schema.alterTable("task_board_items").addColumn("due_date","timestamptz").execute()}async function Go(t){await t.schema.alterTable("task_board_items").dropColumn("due_date").execute()}var vu={};i(vu,{up:()=>Io,down:()=>go});async function Io(t){await t.schema.alterTable("organization_settings").addColumn("reports_only","boolean").execute()}async function go(t){await t.schema.alterTable("organization_settings").dropColumn("reports_only").execute()}var qu={};i(qu,{up:()=>so,down:()=>Vo});async function so(t){await t.schema.alterTable("task_board_items").addColumn("assigned_by","text").execute()}async function Vo(t){await t.schema.alterTable("task_board_items").dropColumn("assigned_by").execute()}var lu={};i(lu,{up:()=>qo,down:()=>lo});import{sql as vo}from"kysely";async function qo(t){await t.schema.createTable("task_board_item_threads").addColumn("task_board_item_id","text",(n)=>n.notNull()).addColumn("thread_id","text",(n)=>n.notNull()).addColumn("organization_id","text",(n)=>n.notNull()).addColumn("created_at","timestamptz",(n)=>n.notNull().defaultTo(vo`now()`)).addPrimaryKeyConstraint("task_board_item_threads_pkey",["task_board_item_id","thread_id"]).execute(),await t.schema.createIndex("task_board_item_threads_item_idx").on("task_board_item_threads").columns(["organization_id","task_board_item_id"]).execute(),await t.schema.createIndex("task_board_item_threads_thread_idx").on("task_board_item_threads").column("thread_id").execute()}async function lo(t){await t.schema.dropTable("task_board_item_threads").execute()}var du={};i(du,{up:()=>bo,down:()=>ty});async function bo(t){await t.schema.alterTable("task_board_item_threads").addForeignKeyConstraint("task_board_item_threads_thread_id_fkey",["thread_id"],"threads",["id"],(n)=>n.onDelete("cascade")).execute()}async function ty(t){await t.schema.alterTable("task_board_item_threads").dropConstraint("task_board_item_threads_thread_id_fkey").execute()}var bu={};i(bu,{up:()=>uy,down:()=>iy});import{sql as ny}from"kysely";async function uy(t){await t.schema.createTable("task_board_item_prs").addColumn("task_board_item_id","text",(n)=>n.notNull()).addColumn("organization_id","text",(n)=>n.notNull()).addColumn("url","text",(n)=>n.notNull()).addColumn("pr_number","integer",(n)=>n.notNull()).addColumn("repo_owner","text",(n)=>n.notNull()).addColumn("repo_name","text",(n)=>n.notNull()).addColumn("connection_id","text").addColumn("created_at","timestamptz",(n)=>n.notNull().defaultTo(ny`now()`)).addPrimaryKeyConstraint("task_board_item_prs_pkey",["task_board_item_id","url"]).execute(),await t.schema.createIndex("task_board_item_prs_item_idx").on("task_board_item_prs").columns(["organization_id","task_board_item_id"]).execute()}async function iy(t){await t.schema.dropTable("task_board_item_prs").execute()}var ti={};i(ti,{up:()=>_y,down:()=>ay});import{sql as ey}from"kysely";async function _y(t){await ey`
1011
1011
  DELETE FROM member
1012
1012
  WHERE id IN (
1013
1013
  SELECT id FROM (
@@ -1053,7 +1053,7 @@ var ke=Object.defineProperty;var $e=(t)=>t;function Xe(t,n){this[t]=$e.bind(null
1053
1053
  SELECT id, app_name, connection_url, title, slug
1054
1054
  FROM connections
1055
1055
  WHERE connection_type != 'VIRTUAL'
1056
- `.execute(t),u=0;for(let _ of n.rows){let e=gy(_);if(e===_.slug)continue;await oe`UPDATE connections SET slug = ${e} WHERE id = ${_.id}`.execute(t),u++}if(u>0)console.log(`[152] repaired ${u} drifted connection slug(s)`)}async function Vy(){}var ri={};i(ri,{up:()=>qy,down:()=>ly});import{sql as vy}from"kysely";async function qy(t){await vy`CREATE INDEX idx_tmp_latest_assistant_text ON thread_message_parts (thread_id, created_at DESC, id DESC) WHERE role = 'assistant' AND kind = 'text'`.execute(t)}async function ly(t){await t.schema.dropIndex("idx_tmp_latest_assistant_text").execute()}var dy={"001-initial-schema":wt,"002-organization-settings":Kt,"003-connection-schema-align":ct,"004-remove-models-binding":pt,"005-connection-configuration":zt,"006-add-views-to-settings":Pt,"007-monitoring-logs":rt,"008-event-bus":Ut,"009-drop-audit-logs":jt,"010-gateways":Dt,"011-gateway-icon":Jt,"012-gateway-tool-selection-mode":Lt,"013-monitoring-user-agent-gateway":Rt,"014-gateway-resources-prompts":Wt,"015-monitoring-properties":kt,"016-downstream-token-client-info":$t,"017-downstream-token-remove-userid":Xt,"018-drop-gateway-tool-selection-strategy":Qt,"019-remove-gateway-is-default":Zt,"020-enabled-plugins":Ft,"021-threads":Ht,"022-rename-gateway-to-virtual-mcp":Mt,"023-optimize-thread-indexes":Yt,"024-consolidate-virtual-mcp":ht,"025-add-monitoring-virtual-mcp-id":At,"026-restrict-child-connection-delete":Bt,"027-update-management-mcp-url":Ot,"028-update-management-mcp-to-self":It,"029-add-updated-by-to-connections":gt,"030-member-tags":st,"031-add-dependency-mode":Vt,"032-projects":vt,"033-thread-status":qt,"034-monitoring-dashboards":lt,"035-project-connections":dt,"036-update-registry-url":bt,"037-ai-provider-keys":tn,"038-oauth-pkce-states":nn,"039-automations":un,"040-replace-next-run-at-with-last-run-at":en,"041-ai-provider-keys-unique-constraint":_n,"042-rename-mesh-mcp-to-cms-mcp":an,"043-rename-cms-mcp-to-deco-cms":xn,"044-drop-connections-tools-column":mn,"045-thread-context-start-message":on,"046-remove-object-storage-plugin":Tn,"047-add-next-run-at":Cn,"048-merge-projects-agents":En,"049-remove-org-admin-projects":fn,"050-durable-agent-runs":wn,"051-org-sso":cn,"052-thread-agent-ids":pn,"053-registry-config":zn,"054-connection-slug":rn,"055-spaces":Un,"056-automation-project-scope":jn,"057-thread-virtual-mcp-id":Dn,"058-trigger-callback-tokens":Jn,"059-kv":Ln,"060-member-index":Rn,"061-downstream-token-connection-index":Wn,"062-private-registry":kn,"063-event-subscriptions-enabled-boolean":$n,"064-brand-context":Xn,"065-organization-domains":Qn,"066-brand-context-structured":Zn,"067-threads-metadata":Fn,"068-threads-branch":Hn,"069-sandbox-runner-state":Mn,"070-model-categories":Yn,"071-default-home-agents":hn,"072-ai-provider-key-preset-id":An,"073-backfill-basic-usage-roles":Bn,"074-sandbox-runner-state-handle-nonunique":Sn,"075-thread-inflight-async-jobs":On,"076-automations-drop-agent-json":Gn,"077-tier-only-model-selection":gn,"078-automation-tool-call-kind":sn,"079-strip-legacy-freestyle-vm-map-entries":Vn,"080-async-research-jobs":vn,"081-async-research-jobs-result-content":qn,"082-secrets":ln,"083-thread-run-locally":dn,"084-drop-host-sandbox-rows":bn,"085-rename-runner-kind":tu,"086-thread-pins-and-vm-map-rekey":nu,"087-fix-vm-map-rekey":uu,"088-purge-cli-activate-keys":iu,"089-rename-remote-user-to-desktop":eu,"090-automation-webhook-triggers":_u,"091-organization-domains-allow-multi":au,"092-sandbox-naming-uniformization":xu,"093-backfill-global-search-basic-usage":mu,"094-org-file-configs":yu,"095-remove-automation-tool-call-kind":Tu,"096-org-file-configs-public-url-base":Cu,"097-drop-local-docker-sandbox-state":Eu,"098-thread-message-parts":fu,"099-run-fence":wu,"100-link-transport":Ku,"101-cancel-requested-at":cu,"102-observational-agent":pu,"103-revert-observational-agent":zu,"104-agent-sandbox-provider-kind":ru,"105-org-fs":Uu,"106-automation-tools":ju,"107-org-fs-public-org":Du,"108-automation-max-agent-steps":Ju,"109-thread-message-parts-per-message-seq":Lu,"110-backfill-ghs-token-expiry":Ru,"111-org-fs-thread-id":Wu,"112-org-file-configs-credential-type":ku,"113-thread-failure-reason":$u,"114-run-acked-seq":Xu,"115-thread-projected-seq":Qu,"116-org-sites":Zu,"117-org-file-configs-site-slug":Fu,"118-organization-domains-multi-verify":Hu,"119-organization-join-requests":Mu,"120-org-fs-read-public":Yu,"121-org-fs-share-password":hu,"122-split-web-research-tier":Su,"123-connection-credential-vault":Ou,"124-drop-thread-projected-seq":Gu,"125-github-child-single-parent":Iu,"126-task-board":su,"127-task-board-due-date":Vu,"128-reports-only":vu,"129-task-board-assigned-by":qu,"130-task-board-thread-id":lu,"131-task-board-thread-link-cascade":du,"132-task-board-item-prs":bu,"133-dedupe-duplicate-members":ti,"134-drop-task-board-enabled":ni,"135-task-board-item-fk-cascade":ui,"136-task-board-import-idempotency":ii,"137-agent-sandbox-runner-state":ei,"138-agent-sandbox-sessions":_i,"139-organization-billing":ai,"140-seat-change-log":xi,"141-benefits-sync-pending":mi,"142-stripe-event-watermark":oi,"143-armed-report-url":yi,"144-benefits-pending-index":Ti,"145-user-model-preferences":Ci,"146-organization-main-agent":Ni,"147-drop-agent-sandbox-tables":Ei,"148-org-flags":fi,"149-task-board-item-sort-order":wi,"150-task-board-activity":Ki,"151-task-board-tags":pi,"152-repair-connection-slug":Pi,"153-task-board-latest-assistant-part-index":ri},Ui=dy;import{getMigrations as XT}from"better-auth/db";import{sso as QT}from"@better-auth/sso";import{organization as ZT}from"@decocms/better-auth/plugins";import{admin as FT,apiKey as HT,jwt as MT,magicLink as YT,mcp as hT,openAPI as AT}from"better-auth/plugins";import{emailOTP as BT}from"better-auth/plugins/email-otp";import{Kysely as DT,PostgresDialect as Pe}from"kysely";import{Pool as re}from"pg";import{homedir as by}from"os";var tT=new Set(["all","worker","api"]);function nT(t){let n=(t??"").trim();return tT.has(n)?n:"all"}var uT=new Set(["production","development","test"]);function iT(t){let n=(t??"").trim();return uT.has(n)?n:"development"}function k(t){return t==="true"||t==="1"}function eT(t){if(t===void 0||t==="")return;return k(t)}function Te(t,n){if(n===void 0||n==="")return;let u=Number(n);if(!Number.isSafeInteger(u)||u<=0)throw Error(`${t} must be a positive integer`);return u}function W(t,n,u){return Te(t,n)??u}function _T(t,n){if(t===void 0||t==="")return n;return t==="true"||t==="1"}function ye(t){if(!t)return null;try{let u=new URL(t).hostname.replace(/^\[|\]$/g,"");if(u==="localhost"||u==="127.0.0.1"||u==="::1")return null;return t}catch{return null}}function aT(t){return t===void 0||t===""||t==="true"||t==="1"}var xT=new Set(["agent-sandbox","user-desktop"]);function mT(t){let n=(t??"").trim(),u=n.length>0?n:"user-desktop";if(u==="cluster")return"agent-sandbox";if(!xT.has(u))throw Error(`Unknown STUDIO_SANDBOX_PROVIDER="${t}" \u2014 expected "agent-sandbox", legacy "cluster", or "user-desktop".`);return u}function Ce(t,n){let u=t.home||n.DATA_DIR||n.DECOCMS_HOME||`${by()}/deco`,_=t.localMode,e=t.nodeEnv||iT(n.NODE_ENV),a=n.NATS_URL||"nats://localhost:4222",m=eT(n.NATS_TUNNEL_PUBLIC_ENABLED)??!!n.NATS_PUBLIC_URL;return{settings:{nodeEnv:e,port:W("PORT",t.port||n.PORT,3000),baseUrl:t.baseUrl||n.BASE_URL,publicUrl:n.STUDIO_PUBLIC_URL??n.MESH_PUBLIC_URL,dataDir:u,databasePgSsl:k(n.DATABASE_PG_SSL),databasePoolMax:W("DATABASE_POOL_MAX",n.DATABASE_POOL_MAX,5),betterAuthSecret:n.BETTER_AUTH_SECRET||"",encryptionKey:n.ENCRYPTION_KEY||"",studioJwtSecret:n.STUDIO_JWT_SECRET??n.MESH_JWT_SECRET,localMode:_,disableRateLimit:k(n.DISABLE_RATE_LIMIT),studioProvisionSecretKey:n.STUDIO_PROVISION_SECRET_KEY,deploymentAdminEmails:(n.DEPLOYMENT_ADMIN_EMAILS??"").split(",").map((o)=>o.trim().toLowerCase()).filter(Boolean),clickhouseUrl:n.CLICKHOUSE_URL,clickhouseMaxMemoryUsage:Te("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:W("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:k(n.DECO_AI_GATEWAY_ENABLED),aiGatewayUrl:n.DECO_AI_GATEWAY_URL||"https://ai-site.deco.site",aiGatewayAdminToken:n.DECO_AI_GATEWAY_ADMIN_TOKEN,seatAllowanceCents:W("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,topupFeePercent:W("STUDIO_TOPUP_FEE_PERCENT",n.STUDIO_TOPUP_FEE_PERCENT,15),enableDecoImport:k(n.ENABLE_DECO_IMPORT),billingEnforced:k(n.STUDIO_BILLING_ENFORCED),mcpCacheEnabled:_T(n.MCP_CACHE_ENABLED,e!=="development"),orgFsPublicSetsJson:n.ORGFS_PUBLIC_SETS,orgFsMountsDisabled:k(n.DISABLE_ORGFS_MOUNTS),decopilotMaxConcurrentSubagents:W("DECOPILOT_MAX_CONCURRENT_SUBAGENTS",n.DECOPILOT_MAX_CONCURRENT_SUBAGENTS,4),decopilotMaxConcurrentHostedRuns:W("DECOPILOT_MAX_CONCURRENT_HOSTED_RUNS",n.DECOPILOT_MAX_CONCURRENT_HOSTED_RUNS,3),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:aT(n.S3_FORCE_PATH_STYLE),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:nT(n.STUDIO_DISPATCH_ROLE??n.MESH_DISPATCH_ROLE),sandboxProviderKind:mT(n.STUDIO_SANDBOX_PROVIDER),decoSupabaseUrl:n.DECO_SUPABASE_URL,decoSupabaseServiceKey:n.DECO_SUPABASE_SERVICE_KEY,firecrawlApiKey:n.FIRECRAWL_API_KEY,reportsInternalApiUrl:n.REPORTS_INTERNAL_API_URL??n.COMMERCE_DISCOVERY_INTERNAL_API_URL,reportsInternalApiKey:n.REPORTS_INTERNAL_API_KEY??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:ye(n.DATABASE_URL),externalNatsUrl:ye(a),skipMigrations:t.skipMigrations}}var Tt=null;function H(){if(!Tt)oT();return Tt}function oT(){if(Tt)return;let t={...process.env},n=Ce({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);Tt=Object.freeze({...n.settings,databaseUrl:t.DATABASE_URL||"postgresql://postgres:postgres@localhost:5432/postgres",natsUrls:(t.NATS_URL||"nats://localhost:4222").split(",").map((u)=>u.trim()).filter(Boolean)})}import{createContextKey as fT,metrics as wT,propagation as ef,ROOT_CONTEXT as _f,SpanStatusCode as af,trace as KT}from"@opentelemetry/api";import{logs as cT,SeverityNumber as ji}from"@opentelemetry/api-logs";import{OTLPLogExporter as of}from"@opentelemetry/exporter-logs-otlp-proto";import{PrometheusExporter as pT}from"@opentelemetry/exporter-prometheus";import{OTLPTraceExporter as Cf}from"@opentelemetry/exporter-trace-otlp-proto";import{RuntimeNodeInstrumentation as Ef}from"@opentelemetry/instrumentation-runtime-node";import{context as lN,propagation as dN,SpanKind as bN,SpanStatusCode as tE}from"@opentelemetry/api";var uE=globalThis.fetch;import{ExportResultCode as EE}from"@opentelemetry/core";import{ExportResultCode as Ct}from"@opentelemetry/core";import{mkdir as yT,rename as TT,writeFile as CT}from"fs/promises";import{join as Nt}from"path";class Et{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((u)=>{console.error("[NDJSONExporter] Timer flush failed:",u)})},n),this.flushTimer&&typeof this.flushTimer==="object"&&"unref"in this.flushTimer)this.flushTimer.unref()}}exportRows(t){if(this.isShutdown)return Promise.resolve({code:Ct.FAILED});for(let n of t){let u=JSON.stringify(n),_=this.partitionKey?this.partitionKey(n):"";this.bufferItems.push({partition:_,json:u}),this.bufferBytes+=Buffer.byteLength(u,"utf8")+1}if(this.bufferItems.length>=this.flushThreshold||this.bufferBytes>=this.maxBufferBytes)return this.flush().then(()=>({code:Ct.SUCCESS})).catch((n)=>{return console.error("[NDJSONExporter] Flush failed:",n),{code:Ct.FAILED}});return Promise.resolve({code:Ct.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 e of t){let a=n.get(e.partition);if(!a)a=[],n.set(e.partition,a);a.push(e.json)}let u=await Promise.allSettled(Array.from(n.entries()).map(([e,a])=>this.writeNDJSON(a,e).then(()=>e))),_=u.find((e)=>e.status==="rejected");if(_){let e=new Set;for(let m of u)if(m.status==="fulfilled")e.add(m.value);let a=t.filter((m)=>!e.has(m.partition));this.bufferItems=a.concat(this.bufferItems),this.bufferBytes=0;for(let m of this.bufferItems)this.bufferBytes+=Buffer.byteLength(m.json,"utf8")+1;throw _.reason}}async writeNDJSON(t,n){let u=new Date,_=[String(u.getUTCFullYear()),String(u.getUTCMonth()+1).padStart(2,"0"),String(u.getUTCDate()).padStart(2,"0"),String(u.getUTCHours()).padStart(2,"0")],e=n?Nt(this.basePath,n,..._):Nt(this.basePath,..._);if(!this.knownDirs.has(e))await yT(e,{recursive:!0,mode:448}),this.knownDirs.add(e);let a=`${crypto.randomUUID()}.ndjson`,m=Nt(e,`.${a}.tmp`),x=Nt(e,a),o=t.join(`
1056
+ `.execute(t),u=0;for(let _ of n.rows){let e=gy(_);if(e===_.slug)continue;await oe`UPDATE connections SET slug = ${e} WHERE id = ${_.id}`.execute(t),u++}if(u>0)console.log(`[152] repaired ${u} drifted connection slug(s)`)}async function Vy(){}var ri={};i(ri,{up:()=>qy,down:()=>ly});import{sql as vy}from"kysely";async function qy(t){await vy`CREATE INDEX idx_tmp_latest_assistant_text ON thread_message_parts (thread_id, created_at DESC, id DESC) WHERE role = 'assistant' AND kind = 'text'`.execute(t)}async function ly(t){await t.schema.dropIndex("idx_tmp_latest_assistant_text").execute()}var dy={"001-initial-schema":wt,"002-organization-settings":Kt,"003-connection-schema-align":ct,"004-remove-models-binding":pt,"005-connection-configuration":zt,"006-add-views-to-settings":Pt,"007-monitoring-logs":rt,"008-event-bus":Ut,"009-drop-audit-logs":jt,"010-gateways":Dt,"011-gateway-icon":Jt,"012-gateway-tool-selection-mode":Lt,"013-monitoring-user-agent-gateway":Rt,"014-gateway-resources-prompts":Wt,"015-monitoring-properties":kt,"016-downstream-token-client-info":$t,"017-downstream-token-remove-userid":Xt,"018-drop-gateway-tool-selection-strategy":Qt,"019-remove-gateway-is-default":Zt,"020-enabled-plugins":Ft,"021-threads":Ht,"022-rename-gateway-to-virtual-mcp":Mt,"023-optimize-thread-indexes":Yt,"024-consolidate-virtual-mcp":ht,"025-add-monitoring-virtual-mcp-id":At,"026-restrict-child-connection-delete":Bt,"027-update-management-mcp-url":Ot,"028-update-management-mcp-to-self":It,"029-add-updated-by-to-connections":gt,"030-member-tags":st,"031-add-dependency-mode":Vt,"032-projects":vt,"033-thread-status":qt,"034-monitoring-dashboards":lt,"035-project-connections":dt,"036-update-registry-url":bt,"037-ai-provider-keys":tn,"038-oauth-pkce-states":nn,"039-automations":un,"040-replace-next-run-at-with-last-run-at":en,"041-ai-provider-keys-unique-constraint":_n,"042-rename-mesh-mcp-to-cms-mcp":an,"043-rename-cms-mcp-to-deco-cms":xn,"044-drop-connections-tools-column":mn,"045-thread-context-start-message":on,"046-remove-object-storage-plugin":Tn,"047-add-next-run-at":Cn,"048-merge-projects-agents":En,"049-remove-org-admin-projects":fn,"050-durable-agent-runs":wn,"051-org-sso":cn,"052-thread-agent-ids":pn,"053-registry-config":zn,"054-connection-slug":rn,"055-spaces":Un,"056-automation-project-scope":jn,"057-thread-virtual-mcp-id":Dn,"058-trigger-callback-tokens":Jn,"059-kv":Ln,"060-member-index":Rn,"061-downstream-token-connection-index":Wn,"062-private-registry":kn,"063-event-subscriptions-enabled-boolean":$n,"064-brand-context":Xn,"065-organization-domains":Qn,"066-brand-context-structured":Zn,"067-threads-metadata":Fn,"068-threads-branch":Hn,"069-sandbox-runner-state":Mn,"070-model-categories":Yn,"071-default-home-agents":hn,"072-ai-provider-key-preset-id":An,"073-backfill-basic-usage-roles":Bn,"074-sandbox-runner-state-handle-nonunique":Sn,"075-thread-inflight-async-jobs":On,"076-automations-drop-agent-json":Gn,"077-tier-only-model-selection":gn,"078-automation-tool-call-kind":sn,"079-strip-legacy-freestyle-vm-map-entries":Vn,"080-async-research-jobs":vn,"081-async-research-jobs-result-content":qn,"082-secrets":ln,"083-thread-run-locally":dn,"084-drop-host-sandbox-rows":bn,"085-rename-runner-kind":tu,"086-thread-pins-and-vm-map-rekey":nu,"087-fix-vm-map-rekey":uu,"088-purge-cli-activate-keys":iu,"089-rename-remote-user-to-desktop":eu,"090-automation-webhook-triggers":_u,"091-organization-domains-allow-multi":au,"092-sandbox-naming-uniformization":xu,"093-backfill-global-search-basic-usage":mu,"094-org-file-configs":yu,"095-remove-automation-tool-call-kind":Tu,"096-org-file-configs-public-url-base":Cu,"097-drop-local-docker-sandbox-state":Eu,"098-thread-message-parts":fu,"099-run-fence":wu,"100-link-transport":Ku,"101-cancel-requested-at":cu,"102-observational-agent":pu,"103-revert-observational-agent":zu,"104-agent-sandbox-provider-kind":ru,"105-org-fs":Uu,"106-automation-tools":ju,"107-org-fs-public-org":Du,"108-automation-max-agent-steps":Ju,"109-thread-message-parts-per-message-seq":Lu,"110-backfill-ghs-token-expiry":Ru,"111-org-fs-thread-id":Wu,"112-org-file-configs-credential-type":ku,"113-thread-failure-reason":$u,"114-run-acked-seq":Xu,"115-thread-projected-seq":Qu,"116-org-sites":Zu,"117-org-file-configs-site-slug":Fu,"118-organization-domains-multi-verify":Hu,"119-organization-join-requests":Mu,"120-org-fs-read-public":Yu,"121-org-fs-share-password":hu,"122-split-web-research-tier":Su,"123-connection-credential-vault":Ou,"124-drop-thread-projected-seq":Gu,"125-github-child-single-parent":Iu,"126-task-board":su,"127-task-board-due-date":Vu,"128-reports-only":vu,"129-task-board-assigned-by":qu,"130-task-board-thread-id":lu,"131-task-board-thread-link-cascade":du,"132-task-board-item-prs":bu,"133-dedupe-duplicate-members":ti,"134-drop-task-board-enabled":ni,"135-task-board-item-fk-cascade":ui,"136-task-board-import-idempotency":ii,"137-agent-sandbox-runner-state":ei,"138-agent-sandbox-sessions":_i,"139-organization-billing":ai,"140-seat-change-log":xi,"141-benefits-sync-pending":mi,"142-stripe-event-watermark":oi,"143-armed-report-url":yi,"144-benefits-pending-index":Ti,"145-user-model-preferences":Ci,"146-organization-main-agent":Ni,"147-drop-agent-sandbox-tables":Ei,"148-org-flags":fi,"149-task-board-item-sort-order":wi,"150-task-board-activity":Ki,"151-task-board-tags":pi,"152-repair-connection-slug":Pi,"153-task-board-latest-assistant-part-index":ri},Ui=dy;import{getMigrations as XT}from"better-auth/db";import{sso as QT}from"@better-auth/sso";import{organization as ZT}from"@decocms/better-auth/plugins";import{admin as FT,apiKey as HT,jwt as MT,magicLink as YT,mcp as hT,openAPI as AT}from"better-auth/plugins";import{emailOTP as BT}from"better-auth/plugins/email-otp";import{Kysely as DT,PostgresDialect as Pe}from"kysely";import{Pool as re}from"pg";import{homedir as by}from"os";var tT=new Set(["all","worker","api"]);function nT(t){let n=(t??"").trim();return tT.has(n)?n:"all"}var uT=new Set(["production","development","test"]);function iT(t){let n=(t??"").trim();return uT.has(n)?n:"development"}function k(t){return t==="true"||t==="1"}function eT(t){if(t===void 0||t==="")return;return k(t)}function Te(t,n){if(n===void 0||n==="")return;let u=Number(n);if(!Number.isSafeInteger(u)||u<=0)throw Error(`${t} must be a positive integer`);return u}function L(t,n,u){return Te(t,n)??u}function _T(t,n){if(t===void 0||t==="")return n;return t==="true"||t==="1"}function ye(t){if(!t)return null;try{let u=new URL(t).hostname.replace(/^\[|\]$/g,"");if(u==="localhost"||u==="127.0.0.1"||u==="::1")return null;return t}catch{return null}}function aT(t){return t===void 0||t===""||t==="true"||t==="1"}var xT=new Set(["agent-sandbox","user-desktop"]);function mT(t){let n=(t??"").trim(),u=n.length>0?n:"user-desktop";if(u==="cluster")return"agent-sandbox";if(!xT.has(u))throw Error(`Unknown STUDIO_SANDBOX_PROVIDER="${t}" \u2014 expected "agent-sandbox", legacy "cluster", or "user-desktop".`);return u}function Ce(t,n){let u=t.home||n.DATA_DIR||n.DECOCMS_HOME||`${by()}/deco`,_=t.localMode,e=t.nodeEnv||iT(n.NODE_ENV),a=n.NATS_URL||"nats://localhost:4222",m=eT(n.NATS_TUNNEL_PUBLIC_ENABLED)??!!n.NATS_PUBLIC_URL;return{settings:{nodeEnv:e,port:L("PORT",t.port||n.PORT,3000),baseUrl:t.baseUrl||n.BASE_URL,publicUrl:n.STUDIO_PUBLIC_URL??n.MESH_PUBLIC_URL,dataDir:u,databasePgSsl:k(n.DATABASE_PG_SSL),databasePoolMax:L("DATABASE_POOL_MAX",n.DATABASE_POOL_MAX,5),dbosPoolSize:L("DBOS_POOL_SIZE",n.DBOS_POOL_SIZE,5),betterAuthSecret:n.BETTER_AUTH_SECRET||"",encryptionKey:n.ENCRYPTION_KEY||"",studioJwtSecret:n.STUDIO_JWT_SECRET??n.MESH_JWT_SECRET,localMode:_,disableRateLimit:k(n.DISABLE_RATE_LIMIT),studioProvisionSecretKey:n.STUDIO_PROVISION_SECRET_KEY,deploymentAdminEmails:(n.DEPLOYMENT_ADMIN_EMAILS??"").split(",").map((o)=>o.trim().toLowerCase()).filter(Boolean),clickhouseUrl:n.CLICKHOUSE_URL,clickhouseMaxMemoryUsage:Te("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:L("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:k(n.DECO_AI_GATEWAY_ENABLED),aiGatewayUrl:n.DECO_AI_GATEWAY_URL||"https://ai-site.deco.site",aiGatewayAdminToken:n.DECO_AI_GATEWAY_ADMIN_TOKEN,seatAllowanceCents:L("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,topupFeePercent:L("STUDIO_TOPUP_FEE_PERCENT",n.STUDIO_TOPUP_FEE_PERCENT,15),enableDecoImport:k(n.ENABLE_DECO_IMPORT),billingEnforced:k(n.STUDIO_BILLING_ENFORCED),mcpCacheEnabled:_T(n.MCP_CACHE_ENABLED,e!=="development"),orgFsPublicSetsJson:n.ORGFS_PUBLIC_SETS,orgFsMountsDisabled:k(n.DISABLE_ORGFS_MOUNTS),decopilotMaxConcurrentSubagents:L("DECOPILOT_MAX_CONCURRENT_SUBAGENTS",n.DECOPILOT_MAX_CONCURRENT_SUBAGENTS,4),decopilotMaxConcurrentHostedRuns:L("DECOPILOT_MAX_CONCURRENT_HOSTED_RUNS",n.DECOPILOT_MAX_CONCURRENT_HOSTED_RUNS,3),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:aT(n.S3_FORCE_PATH_STYLE),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:nT(n.STUDIO_DISPATCH_ROLE??n.MESH_DISPATCH_ROLE),sandboxProviderKind:mT(n.STUDIO_SANDBOX_PROVIDER),decoSupabaseUrl:n.DECO_SUPABASE_URL,decoSupabaseServiceKey:n.DECO_SUPABASE_SERVICE_KEY,firecrawlApiKey:n.FIRECRAWL_API_KEY,reportsInternalApiUrl:n.REPORTS_INTERNAL_API_URL??n.COMMERCE_DISCOVERY_INTERNAL_API_URL,reportsInternalApiKey:n.REPORTS_INTERNAL_API_KEY??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:ye(n.DATABASE_URL),externalNatsUrl:ye(a),skipMigrations:t.skipMigrations}}var Tt=null;function H(){if(!Tt)oT();return Tt}function oT(){if(Tt)return;let t={...process.env},n=Ce({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);Tt=Object.freeze({...n.settings,databaseUrl:t.DATABASE_URL||"postgresql://postgres:postgres@localhost:5432/postgres",natsUrls:(t.NATS_URL||"nats://localhost:4222").split(",").map((u)=>u.trim()).filter(Boolean)})}import{createContextKey as fT,metrics as wT,propagation as ef,ROOT_CONTEXT as _f,SpanStatusCode as af,trace as KT}from"@opentelemetry/api";import{logs as cT,SeverityNumber as ji}from"@opentelemetry/api-logs";import{OTLPLogExporter as of}from"@opentelemetry/exporter-logs-otlp-proto";import{PrometheusExporter as pT}from"@opentelemetry/exporter-prometheus";import{OTLPTraceExporter as Cf}from"@opentelemetry/exporter-trace-otlp-proto";import{RuntimeNodeInstrumentation as Ef}from"@opentelemetry/instrumentation-runtime-node";import{context as lN,propagation as dN,SpanKind as bN,SpanStatusCode as tE}from"@opentelemetry/api";var uE=globalThis.fetch;import{ExportResultCode as EE}from"@opentelemetry/core";import{ExportResultCode as Ct}from"@opentelemetry/core";import{mkdir as yT,rename as TT,writeFile as CT}from"fs/promises";import{join as Nt}from"path";class Et{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((u)=>{console.error("[NDJSONExporter] Timer flush failed:",u)})},n),this.flushTimer&&typeof this.flushTimer==="object"&&"unref"in this.flushTimer)this.flushTimer.unref()}}exportRows(t){if(this.isShutdown)return Promise.resolve({code:Ct.FAILED});for(let n of t){let u=JSON.stringify(n),_=this.partitionKey?this.partitionKey(n):"";this.bufferItems.push({partition:_,json:u}),this.bufferBytes+=Buffer.byteLength(u,"utf8")+1}if(this.bufferItems.length>=this.flushThreshold||this.bufferBytes>=this.maxBufferBytes)return this.flush().then(()=>({code:Ct.SUCCESS})).catch((n)=>{return console.error("[NDJSONExporter] Flush failed:",n),{code:Ct.FAILED}});return Promise.resolve({code:Ct.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 e of t){let a=n.get(e.partition);if(!a)a=[],n.set(e.partition,a);a.push(e.json)}let u=await Promise.allSettled(Array.from(n.entries()).map(([e,a])=>this.writeNDJSON(a,e).then(()=>e))),_=u.find((e)=>e.status==="rejected");if(_){let e=new Set;for(let m of u)if(m.status==="fulfilled")e.add(m.value);let a=t.filter((m)=>!e.has(m.partition));this.bufferItems=a.concat(this.bufferItems),this.bufferBytes=0;for(let m of this.bufferItems)this.bufferBytes+=Buffer.byteLength(m.json,"utf8")+1;throw _.reason}}async writeNDJSON(t,n){let u=new Date,_=[String(u.getUTCFullYear()),String(u.getUTCMonth()+1).padStart(2,"0"),String(u.getUTCDate()).padStart(2,"0"),String(u.getUTCHours()).padStart(2,"0")],e=n?Nt(this.basePath,n,..._):Nt(this.basePath,..._);if(!this.knownDirs.has(e))await yT(e,{recursive:!0,mode:448}),this.knownDirs.add(e);let a=`${crypto.randomUUID()}.ndjson`,m=Nt(e,`.${a}.tmp`),x=Nt(e,a),o=t.join(`
1057
1057
  `)+`
1058
1058
  `;await CT(m,o,{mode:384}),await TT(m,x)}}import{ExportResultCode as pE}from"@opentelemetry/core";import{AggregationTemporality as PE,DataPointType as rE}from"@opentelemetry/sdk-metrics";import{ExportResultCode as RE}from"@opentelemetry/core";var XE=Buffer.byteLength("... [TRUNCATED]","utf8");import{BatchLogRecordProcessor as Uf,LoggerProvider as jf}from"@opentelemetry/sdk-logs";import{detectResources as Jf,envDetector as Lf,hostDetector as Rf,osDetector as Wf,processDetector as kf,resourceFromAttributes as $f}from"@opentelemetry/resources";import{PeriodicExportingMetricReader as Qf}from"@opentelemetry/sdk-metrics";import{NOOP_LOGGER as FE}from"@opentelemetry/api-logs";import{NodeSDK as Hf}from"@opentelemetry/sdk-node";import{BatchSpanProcessor as Yf,SamplingDecision as M}from"@opentelemetry/sdk-trace-base";import{SpanStatusCode as AE}from"@opentelemetry/api";var zT="__d",PT=fT("Current request"),rT=1;var Ee=(t)=>{let u=new URL(t.url).searchParams.get(zT);if(u==="")return crypto.randomUUID();if(!u)u=t.headers.get("x-trace-debug-id");return u};class fe{inner;constructor(t){this.inner=t}shouldSample(t,n,u,_,e,a){let m=t.getValue(PT);if(!m){if(this.inner)return this.inner.shouldSample(t,n,u,_,e,a);return{decision:M.RECORD_AND_SAMPLED}}let x=Ee(m);if(x)return{decision:M.RECORD_AND_SAMPLED,attributes:{"trace.debug.id":x}};if(this.inner){let o=this.inner.shouldSample(t,n,u,_,e,a);if(o.decision===M.RECORD_AND_SAMPLED){let y=crypto.randomUUID();o.attributes={...o.attributes??{},"trace.debug.id":y}}return o}return{decision:M.NOT_RECORD}}toString(){return"DebugSampler"}}class we{ratio;constructor(t){this.ratio=t}shouldSample(){if(Math.random()<this.ratio)return{decision:M.RECORD_AND_SAMPLED};return{decision:M.NOT_RECORD}}toString(){return`RatioSampler(${this.ratio})`}}var Af=new pT({preventServerStart:!0}),Bf=new fe(new we(rT));var Ne=KT.getTracer("studio","1.0.0"),s=wT.getMeter("studio","1.0.0"),UT=cT.getLogger("studio","1.0.0"),Di=(t,n,u)=>{let _={},e=u,a=u[u.length-1];if(a!==null&&typeof a==="object"&&!Array.isArray(a)&&!(a instanceof Error)&&Object.getPrototypeOf(a)===Object.prototype)_=a,e=u.slice(0,-1);let m=e.map((x)=>{if(x instanceof Error)return`${x.name}: ${x.message}`;if(typeof x==="object")try{return JSON.stringify(x)}catch{return"[Object]"}return String(x)}).join(" ");UT.emit({severityNumber:t,severityText:n,body:m,attributes:{"log.source":"console",..._}})},Ji={error:console.error.bind(console),warn:console.warn.bind(console),debug:console.debug.bind(console)};console.error=(...t)=>{Di(ji.ERROR,"ERROR",t),Ji.error(...t)};console.warn=(...t)=>{Di(ji.WARN,"WARN",t),Ji.warn(...t)};console.debug=(...t)=>{Di(ji.DEBUG,"DEBUG",t),Ji.debug(...t)};var Li,Ke=0,Ri=500;function jT(){if(Li)return;let t=performance.now()+Ri;Li=setInterval(()=>{let n=performance.now();Ke=Math.max(0,n-t),t=n+Ri},Ri),Li.unref?.()}function ce(){return jT(),Ke}var JT=()=>s.createHistogram("db.query.duration",{description:"Database query execution duration in milliseconds",unit:"ms"}),pe=()=>s.createHistogram("db.pool.acquire.duration",{description:"Time spent waiting to acquire a connection from the pool",unit:"ms"}),ze=400,LT=100,RT=(t)=>(n)=>{let u={"db.statement":n.query.sql,"db.status":n.level==="error"?"error":"success"};if(n.queryDurationMillis>ze){let _=ce(),e=_>ze/2;console.error(e?"Slow query measurement \u2014 likely event-loop lag, not slow SQL:":"Slow query detected:",{durationMs:n.queryDurationMillis,eventLoopLagMs:Math.round(_),sql:n.query.sql,pool:{total:t.totalCount,idle:t.idleCount,waiting:t.waitingCount,max:ft()}})}if(JT().record(n.queryDurationMillis,u),n.level==="error")console.error("Query failed:",{durationMs:n.queryDurationMillis,error:n.error,sql:n.query.sql})};function WT(t){let n=t.connect.bind(t);return t.connect=(u)=>{if(typeof u==="function")return n(u);let _=performance.now(),e=ft(),a=t.idleCount===0&&t.totalCount>=e,m=t.idleCount;return n().then((x)=>{let o=performance.now()-_;if(pe().record(o,{"db.pool.outcome":a?"contended":"available"}),o>LT)if(a)console.error("Slow db pool acquire \u2014 pool saturated:",{waitMs:o,total:t.totalCount,idle:t.idleCount,waiting:t.waitingCount,max:e});else console.warn("Slow db pool acquire \u2014 event-loop lag (not pool):",{waitMs:o,idleAtStart:m,total:t.totalCount,max:e});return x},(x)=>{throw pe().record(performance.now()-_,{"db.pool.outcome":"error"}),x})},t}var Ue={keepAlive:!0,keepAliveInitialDelayMillis:1e4,idleTimeoutMillis:300000,connectionTimeoutMillis:30000,allowExitOnIdle:!0};function je(){try{return H().databasePgSsl}catch{return!1}}function ft(){try{return H().databasePoolMax}catch{return 10}}function kT(t){let n=WT(new re({connectionString:t,max:ft(),ssl:je(),...Ue})),u=new Pe({pool:n});return{type:"postgres",db:new DT({dialect:u,log:RT(n)}),pool:n}}function v(){return H().databaseUrl}function De(t){let n=t||v();return new Pe({pool:new re({connectionString:n,max:ft(),ssl:je(),...Ue})})}function $T(t){let n=t||v();return kT(n)}async function Je(t){if(await t.db.destroy(),!t.pool.ended)await t.pool.end();if(t===V)V=null}var V=null;function Wi(){if(!V)V=$T(v());return V}async function Le(t){let u={database:De(t||v()),plugins:[ZT({dynamicAccessControl:{enabled:!0,enableCustomResources:!0}}),FT(),HT(),MT(),AT(),hT({loginPage:"/login"}),QT(),YT({sendMagicLink:async()=>{}}),BT({sendVerificationOTP:async()=>{}})]},{toBeAdded:_,toBeCreated:e,runMigrations:a}=await XT(u);if(!_.length&&!e.length)return"up to date";return await a(),`${e.length+_.length} table(s) migrated`}async function We(t,n){return(await Y`
1059
1059
  SELECT table_name FROM information_schema.tables