decocms 2.311.1 → 2.311.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (507) hide show
  1. package/dist/client/assets/{AlertCircle-GVxuU95v.js → AlertCircle-DZ5eg3QE.js} +1 -1
  2. package/dist/client/assets/{ArrowNarrowLeft-CZSxj8rY.js → ArrowNarrowLeft-1yI5FVCq.js} +1 -1
  3. package/dist/client/assets/{ArrowUpRight-C9_9n6RS.js → ArrowUpRight-BHidxwxm.js} +1 -1
  4. package/dist/client/assets/{Check-B7RZVj2P.js → Check-Dw0791ut.js} +1 -1
  5. package/dist/client/assets/{CheckCircle-CpSCTcKF.js → CheckCircle-BpVjAVGG.js} +1 -1
  6. package/dist/client/assets/{ChevronDown-PN1FfGGP.js → ChevronDown-C4G6jLVm.js} +1 -1
  7. package/dist/client/assets/{ChevronRight-B87-4gCD.js → ChevronRight-L-rlViOq.js} +1 -1
  8. package/dist/client/assets/{ChevronUp-DXZ6bMcP.js → ChevronUp-4oGwYYrV.js} +1 -1
  9. package/dist/client/assets/{Container-Bn1bP0Yi.js → Container-1OJhud4n.js} +1 -1
  10. package/dist/client/assets/{DotsVertical-0NEZeBK_.js → DotsVertical-CRhKzL3Z.js} +1 -1
  11. package/dist/client/assets/{LinkExternal01-Cl6M9_6y.js → LinkExternal01-CT0C3v5M.js} +1 -1
  12. package/dist/client/assets/{Lock01-BNDVtNp3.js → Lock01-NALqVAd4.js} +1 -1
  13. package/dist/client/assets/{Palette-BgYWS9GS.js → Palette-B49S2k5j.js} +1 -1
  14. package/dist/client/assets/{Play-jAQMD8Zy.js → Play-D2-YC-0X.js} +1 -1
  15. package/dist/client/assets/{Plus-Decn041v.js → Plus-BwRT24yO.js} +1 -1
  16. package/dist/client/assets/{RefreshCcw01-2tEGwXNO.js → RefreshCcw01-BJA8p2-V.js} +1 -1
  17. package/dist/client/assets/{SearchMd-xzJx66s8.js → SearchMd-8EQr6MDa.js} +1 -1
  18. package/dist/client/assets/{Settings02-I39qsUEU.js → Settings02-BR7-LgkT.js} +1 -1
  19. package/dist/client/assets/{Shield01-DJsSZNak.js → Shield01-CmUy76z8.js} +1 -1
  20. package/dist/client/assets/{Star01-VbAdZ1nM.js → Star01-CrZZMK_h.js} +1 -1
  21. package/dist/client/assets/{Sun-qACU13Q-.js → Sun-BrBo82rN.js} +1 -1
  22. package/dist/client/assets/{Tool01-BqlBf1k7.js → Tool01-CnVLW8Ff.js} +1 -1
  23. package/dist/client/assets/{Trash01-BqSCZqrj.js → Trash01-CqcArs7X.js} +1 -1
  24. package/dist/client/assets/{User01-w8zyOHhj.js → User01-CBWDKiqM.js} +1 -1
  25. package/dist/client/assets/{Users03-n9zzJAad.js → Users03-lMWEL75e.js} +1 -1
  26. package/dist/client/assets/{X-Cwv9W6IH.js → X-Bgn4m6iE.js} +1 -1
  27. package/dist/client/assets/{XCircle-VMAL-xhy.js → XCircle-C7dtAhFo.js} +1 -1
  28. package/dist/client/assets/{XClose-GzEq-HU9.js → XClose-DAS6g7IB.js} +1 -1
  29. package/dist/client/assets/{Zap-D93qKeqm.js → Zap-D4YLhHLH.js} +1 -1
  30. package/dist/client/assets/{ZapSquare-CGJC1mww.js → ZapSquare-DW8WgORO.js} +1 -1
  31. package/dist/client/assets/{accordion-ZNyW-Q9t.js → accordion-w2pr29VL.js} +1 -1
  32. package/dist/client/assets/{agent-icon-zc2fqM1k.js → agent-icon-CoSygmB4.js} +1 -1
  33. package/dist/client/assets/{agents-list-UtLvJq-k.js → agents-list-BmcHuxVe.js} +1 -1
  34. package/dist/client/assets/ai-providers-wvV25hLp.js +1 -0
  35. package/dist/client/assets/{alert-dialog-7vNv5N4P.js → alert-dialog-j_H6Duj2.js} +1 -1
  36. package/dist/client/assets/{auth-catchall-DnPh1GEo.js → auth-catchall-g0qxiTpM.js} +1 -1
  37. package/dist/client/assets/{automation-list-row-Cu-q04m4.js → automation-list-row-BwSlxsKi.js} +1 -1
  38. package/dist/client/assets/{automations-CU2EtM_4.js → automations-CZKFrDcG.js} +1 -1
  39. package/dist/client/assets/{avatar-Dda8SxzC.js → avatar-DH5nI_or.js} +1 -1
  40. package/dist/client/assets/{badge-C_Ey5yTa.js → badge-BITu5EVC.js} +1 -1
  41. package/dist/client/assets/{brand-context-pyqxXmJT.js → brand-context-6Yt9jzFn.js} +1 -1
  42. package/dist/client/assets/{card-BqDVz8rB.js → card-En6r2E_A.js} +1 -1
  43. package/dist/client/assets/{chat-context-B6Fg09sU.js → chat-context-CdP_0Ara.js} +1 -1
  44. package/dist/client/assets/{checkbox-CwdZbdGd.js → checkbox-DfdgwpYz.js} +1 -1
  45. package/dist/client/assets/{collection-detail-WOE1iHbK.js → collection-detail-Cq2qud8Y.js} +1 -1
  46. package/dist/client/assets/{collection-display-button-QyBcFXO8.js → collection-display-button-C9fQJGtX.js} +1 -1
  47. package/dist/client/assets/{collection-search-FuJrX0DL.js → collection-search-DFFtMlUb.js} +1 -1
  48. package/dist/client/assets/{collection-search-BPpIzKqG.js → collection-search-LW_e8pOY.js} +1 -1
  49. package/dist/client/assets/{collection-table-wrapper-k2i9yb0q.js → collection-table-wrapper-B2VGx1DA.js} +1 -1
  50. package/dist/client/assets/{collection-tabs-Bbxi3Lhu.js → collection-tabs-ie4BgKCV.js} +1 -1
  51. package/dist/client/assets/{collections-BXMI7Hvf.js → collections-D8nUEds8.js} +1 -1
  52. package/dist/client/assets/{command-CcKs3phr.js → command-BXrAL_Fp.js} +1 -1
  53. package/dist/client/assets/{connection-card-C9ObrVFa.js → connection-card-B3usJZNT.js} +1 -1
  54. package/dist/client/assets/{connection-detail-DXmyznni.js → connection-detail-BLvhyH8Y.js} +1 -1
  55. package/dist/client/assets/{connection-form-helpers-CLWU-iGL.js → connection-form-helpers-DJ9jYCyJ.js} +1 -1
  56. package/dist/client/assets/{connections-EFejJy4T.js → connections-JJSt3920.js} +1 -1
  57. package/dist/client/assets/{constants-DNYERMOq.js → constants-C_0Pvn36.js} +1 -1
  58. package/dist/client/assets/{constants-Bad0DdgK.js → constants-xCxa-gM5.js} +1 -1
  59. package/dist/client/assets/{dialog-BcmogFZk.js → dialog-CQJ1jbHU.js} +1 -1
  60. package/dist/client/assets/{domain-settings-QGlFO294.js → domain-settings-KzIawZDz.js} +1 -1
  61. package/dist/client/assets/{drawer-CFDUaOVL.js → drawer-CRXUsV25.js} +1 -1
  62. package/dist/client/assets/{dropdown-menu-NvUf9a-j.js → dropdown-menu-B0p6J489.js} +1 -1
  63. package/dist/client/assets/{dynamic-plugin-layout-CNm9aSBE.js → dynamic-plugin-layout-hX-cElnB.js} +1 -1
  64. package/dist/client/assets/{empty-state-Dg7DOfxH.js → empty-state-CTTNNvC-.js} +1 -1
  65. package/dist/client/assets/{empty-state-CYPi3AWF.js → empty-state-DiIlkZVx.js} +1 -1
  66. package/dist/client/assets/{extract-connection-data-Crk93y-a.js → extract-connection-data-D5DCgJwZ.js} +1 -1
  67. package/dist/client/assets/{features-c-yBM4_h.js → features-CcS8M1BD.js} +1 -1
  68. package/dist/client/assets/{form-BbDiaTsN.js → form-D0XM9Oz-.js} +1 -1
  69. package/dist/client/assets/{general-BxBx3E8g.js → general-Ci0gKW7e.js} +1 -1
  70. package/dist/client/assets/{index-D-aGIpWM.js → index-08_qSeNu.js} +1 -1
  71. package/dist/client/assets/{index-DDUZQ_xH.js → index-8ASwCWdl.js} +1 -1
  72. package/dist/client/assets/{index-C3btaY0r.js → index-B2YlGv2D.js} +1 -1
  73. package/dist/client/assets/{index-D5c2Coqp.js → index-BbCoi7Kc.js} +3 -3
  74. package/dist/client/assets/{index-D3w8D7D3.js → index-BkAVJvYj.js} +1 -1
  75. package/dist/client/assets/{index-bUNQ5NEg.js → index-BuupSAqF.js} +1 -1
  76. package/dist/client/assets/{index-CvwiLDhg.js → index-Bzm-pgKW.js} +1 -1
  77. package/dist/client/assets/{index-Dl4CZy6K.js → index-Ce3hTrjw.js} +1 -1
  78. package/dist/client/assets/{index-BEwswwod.js → index-CtORjixM.js} +1 -1
  79. package/dist/client/assets/{index-Bom1zwxj.js → index-DN5Efs9x.js} +1 -1
  80. package/dist/client/assets/{index-rnnpRGp3.js → index-DvT00rVT.js} +1 -1
  81. package/dist/client/assets/{index-DmMHdsYF.js → index-Kg1PzPFs.js} +1 -1
  82. package/dist/client/assets/{index--qrsfEvC.js → index-N3u8642D.js} +1 -1
  83. package/dist/client/assets/{index-BVe-IL8_.js → index-TmBzv9_n.js} +1 -1
  84. package/dist/client/assets/{index-B3GjV7OW.js → index-XtKSdEVT.js} +2 -2
  85. package/dist/client/assets/{index-CLSBe_a4.js → index-gf-c6sSg.js} +1 -1
  86. package/dist/client/assets/{infiniteQueryObserver-RMKX6Nq0.js → infiniteQueryObserver-CGPZBNLK.js} +1 -1
  87. package/dist/client/assets/{input-bkK8ZE7l.js → input-CA3wFziO.js} +1 -1
  88. package/dist/client/assets/{integration-icon-dKiJ5-c6.js → integration-icon-DB1BI0re.js} +1 -1
  89. package/dist/client/assets/{label-DTMz5O44.js → label-CsQ7X2nY.js} +1 -1
  90. package/dist/client/assets/{layout-LMk5O_ZK.js → layout-_eILQ4qX.js} +1 -1
  91. package/dist/client/assets/{lean-canvas-recruit-modal-BAnvgszw.js → lean-canvas-recruit-modal-DS3BEBlK.js} +1 -1
  92. package/dist/client/assets/{login-DL4UCCOO.js → login-BlD2FW6R.js} +1 -1
  93. package/dist/client/assets/{members-xgiddo21.js → members-CWZmvp91.js} +1 -1
  94. package/dist/client/assets/{monaco-editor-C2N0lO8-.js → monaco-editor-CoS3uflL.js} +1 -1
  95. package/dist/client/assets/{monitoring-stats-row-B1WEuAdI.js → monitoring-stats-row-CViWaRD_.js} +1 -1
  96. package/dist/client/assets/{oauth-callback-CEDkVwJ-.js → oauth-callback-CU5hLq_2.js} +1 -1
  97. package/dist/client/assets/{oauth-callback-ai-provider-Dg9MI2Au.js → oauth-callback-ai-provider-BeHCFfTz.js} +1 -1
  98. package/dist/client/assets/{onboarding-DkXotH-C.js → onboarding-1sE9lrXr.js} +1 -1
  99. package/dist/client/assets/{org-layout-BZIyzExD.js → org-layout-DjQQV-Zl.js} +1 -1
  100. package/dist/client/assets/{org-plugin-layout-DMO9tynz.js → org-plugin-layout-DAhuto61.js} +1 -1
  101. package/dist/client/assets/{pair-Cbmyley2.js → pair-2_9kst7n.js} +1 -1
  102. package/dist/client/assets/{plugin-empty-state-9QQH63Km.js → plugin-empty-state-HCn3LT7f.js} +1 -1
  103. package/dist/client/assets/{plugin-header-Ca6fhiCD.js → plugin-header-BURSuFWr.js} +1 -1
  104. package/dist/client/assets/{plugin-layout-CL9tTgtN.js → plugin-layout-D26XJiuJ.js} +1 -1
  105. package/dist/client/assets/{popover-a3tMurU4.js → popover-DVrNLUGd.js} +1 -1
  106. package/dist/client/assets/{profile-D7pjioBj.js → profile-u4Q_ge8P.js} +1 -1
  107. package/dist/client/assets/{project-app-view-BhV2wKdY.js → project-app-view-TR-LCEsF.js} +1 -1
  108. package/dist/client/assets/registry-9FuEyggS.js +2 -0
  109. package/dist/client/assets/{registry-layout-BaWcD2qA.js → registry-layout-CBmViIei.js} +1 -1
  110. package/dist/client/assets/{required-auth-layout-CnaH9rpW.js → required-auth-layout-zpm5EQiY.js} +1 -1
  111. package/dist/client/assets/{reset-password-vwj49aZP.js → reset-password-BBgklwFT.js} +1 -1
  112. package/dist/client/assets/{roles-DphWxHYt.js → roles-BFmJtd_3.js} +1 -1
  113. package/dist/client/assets/{scroll-area-DqbokeCV.js → scroll-area-CTB7VMjJ.js} +1 -1
  114. package/dist/client/assets/{search-input-DAsaTE5l.js → search-input-CDZEhQeH.js} +1 -1
  115. package/dist/client/assets/{select-Dli7sWvO.js → select-Ck5CQAzm.js} +1 -1
  116. package/dist/client/assets/{select-model-BaOTlcuq.js → select-model-WqEqjF0n.js} +1 -1
  117. package/dist/client/assets/{settings-layout-CjXYIm0R.js → settings-layout-OR4Oj5Bz.js} +1 -1
  118. package/dist/client/assets/{settings-section-DBJaYBiY.js → settings-section-hGFEsbcg.js} +1 -1
  119. package/dist/client/assets/{shell-layout-BMRtkmni.js → shell-layout-DgbQScgJ.js} +1 -1
  120. package/dist/client/assets/{skeleton-H0I9mnBy.js → skeleton-15S9YHo5.js} +1 -1
  121. package/dist/client/assets/{sso-DYCaqBsm.js → sso-Clf1UBGT.js} +1 -1
  122. package/dist/client/assets/store-registry-D1p6Sky6.js +2 -0
  123. package/dist/client/assets/{store-uDsU3GrB.js → store-s535k-0R.js} +1 -1
  124. package/dist/client/assets/{switch-BdqZBTdM.js → switch-DZpAuoR4.js} +1 -1
  125. package/dist/client/assets/{table-DK414n0F.js → table-Di3ejdIM.js} +1 -1
  126. package/dist/client/assets/{tabs-CeGpUpHP.js → tabs-CZODVyGB.js} +1 -1
  127. package/dist/client/assets/{task-status-CqDAnW9H.js → task-status-B-brbBsk.js} +1 -1
  128. package/dist/client/assets/{textarea-DYbvm35p.js → textarea-BZSNnTf-.js} +1 -1
  129. package/dist/client/assets/{toggle-group-DXYK5Kmg.js → toggle-group-C6O7_FmI.js} +1 -1
  130. package/dist/client/assets/{tools-list-DQqEXfVG.js → tools-list-E1FCeDba.js} +1 -1
  131. package/dist/client/assets/{tooltip-M7OSSLPB.js → tooltip-DzR2OkiC.js} +1 -1
  132. package/dist/client/assets/{types-aUaKAv-0.js → types-DsXhCCX5.js} +1 -1
  133. package/dist/client/assets/{use-ai-providers-CmHinIUs.js → use-ai-providers-CASknL33.js} +1 -1
  134. package/dist/client/assets/{use-collections-Cy_Omosv.js → use-collections-Clg_Ncfr.js} +1 -1
  135. package/dist/client/assets/{use-connection-BTNmhjS_.js → use-connection-CN-YbXIm.js} +1 -1
  136. package/dist/client/assets/{use-copy-CkkAJAvS.js → use-copy-B4Vw-FGS.js} +1 -1
  137. package/dist/client/assets/{use-create-virtual-mcp-BuaKZJs7.js → use-create-virtual-mcp-DDS948Ec.js} +1 -1
  138. package/dist/client/assets/{use-debounced-autosave-CO57B6nX.js → use-debounced-autosave-DY33egle.js} +1 -1
  139. package/dist/client/assets/{use-decopilot-events-CQ1IkvCh.js → use-decopilot-events-CDc7_gFj.js} +1 -1
  140. package/dist/client/assets/{use-delete-connection-6dZbEpz0.js → use-delete-connection-B_kG1S-Z.js} +1 -1
  141. package/dist/client/assets/{use-infinite-scroll-ZPBLdFp5.js → use-infinite-scroll-C65PuA8D.js} +1 -1
  142. package/dist/client/assets/{use-list-state-C6g9hGA4.js → use-list-state-D0QSC4li.js} +1 -1
  143. package/dist/client/assets/{use-mcp-tools-BxVuuTSL.js → use-mcp-tools-P1EYh7Ne.js} +1 -1
  144. package/dist/client/assets/{use-members-Bi_cxyIQ.js → use-members-B8Y7w6A6.js} +1 -1
  145. package/dist/client/assets/{use-navigate-to-agent-CSPyzm0t.js → use-navigate-to-agent-CdjjjAzp.js} +1 -1
  146. package/dist/client/assets/{use-org-auth-client-C0e9yR_n.js → use-org-auth-client-DgZS2gPK.js} +1 -1
  147. package/dist/client/assets/{use-org-sso-BBRAkASE.js → use-org-sso-DUuDwVMq.js} +1 -1
  148. package/dist/client/assets/{use-organization-roles-C1ELHN87.js → use-organization-roles-COI0teJ2.js} +1 -1
  149. package/dist/client/assets/{use-organization-settings-DTcFJGZh.js → use-organization-settings-DFYG1X4S.js} +1 -1
  150. package/dist/client/assets/{use-registry-connections-BTwHNugi.js → use-registry-connections-DtGSBXyx.js} +1 -1
  151. package/dist/client/assets/{use-status-sounds-DtamCVeq.js → use-status-sounds-Bzo-hQFh.js} +1 -1
  152. package/dist/client/assets/{use-tasks-B6YSkeM5.js → use-tasks-BkEjm0jr.js} +1 -1
  153. package/dist/client/assets/{use-view-mode-BT7njn-W.js → use-view-mode-QyxMfzTw.js} +1 -1
  154. package/dist/client/assets/{use-virtual-mcp-CSMhsIFC.js → use-virtual-mcp-CywGzNw_.js} +1 -1
  155. package/dist/client/assets/useInfiniteQuery-BnoAFbMi.js +1 -0
  156. package/dist/client/assets/useSuspenseInfiniteQuery-DALOqmfR.js +1 -0
  157. package/dist/client/assets/{user-D3wZendk.js → user-B1nA5pjb.js} +1 -1
  158. package/dist/client/assets/{view-mode-toggle-DrXoiKTK.js → view-mode-toggle-Cj3KDqTE.js} +1 -1
  159. package/dist/client/assets/{workflow-BfcwUbw-.js → workflow-DHFQknOK.js} +1 -1
  160. package/dist/client/assets/workflow-detail-Dq-mKRWi.js +1 -0
  161. package/dist/client/index.html +1 -1
  162. package/dist/server/cli.js +6 -2
  163. package/dist/server/node_modules/ansi-styles/index.d.ts +236 -0
  164. package/dist/server/node_modules/ansi-styles/index.js +223 -0
  165. package/dist/server/node_modules/{ansi-regex → ansi-styles}/package.json +13 -20
  166. package/dist/server/node_modules/ansi-styles/readme.md +173 -0
  167. package/dist/server/node_modules/convert-to-spaces/dist/index.d.ts +2 -0
  168. package/dist/server/node_modules/convert-to-spaces/dist/index.js +4 -0
  169. package/dist/server/node_modules/convert-to-spaces/license +21 -0
  170. package/dist/server/node_modules/convert-to-spaces/package.json +40 -0
  171. package/dist/server/node_modules/convert-to-spaces/readme.md +39 -0
  172. package/dist/server/node_modules/environment/index.d.ts +74 -0
  173. package/dist/server/node_modules/environment/index.js +47 -0
  174. package/dist/server/node_modules/environment/package.json +74 -0
  175. package/dist/server/node_modules/environment/readme.md +94 -0
  176. package/dist/server/node_modules/escape-string-regexp/index.d.ts +18 -0
  177. package/dist/server/node_modules/escape-string-regexp/index.js +11 -0
  178. package/dist/server/node_modules/escape-string-regexp/license +9 -0
  179. package/dist/server/node_modules/escape-string-regexp/package.json +43 -0
  180. package/dist/server/node_modules/escape-string-regexp/readme.md +29 -0
  181. package/dist/server/node_modules/get-east-asian-width/index.d.ts +60 -0
  182. package/dist/server/node_modules/get-east-asian-width/index.js +30 -0
  183. package/dist/server/node_modules/{ink → get-east-asian-width}/license +0 -1
  184. package/dist/server/node_modules/get-east-asian-width/lookup-data.js +18 -0
  185. package/dist/server/node_modules/get-east-asian-width/lookup.js +135 -0
  186. package/dist/server/node_modules/get-east-asian-width/package.json +71 -0
  187. package/dist/server/node_modules/get-east-asian-width/readme.md +65 -0
  188. package/dist/server/node_modules/get-east-asian-width/utilities.js +24 -0
  189. package/dist/server/node_modules/is-fullwidth-code-point/index.d.ts +17 -0
  190. package/dist/server/node_modules/is-fullwidth-code-point/index.js +12 -0
  191. package/dist/server/node_modules/is-fullwidth-code-point/license +9 -0
  192. package/dist/server/node_modules/is-fullwidth-code-point/package.json +53 -0
  193. package/dist/server/node_modules/is-fullwidth-code-point/readme.md +31 -0
  194. package/dist/server/node_modules/is-unicode-supported/index.d.ts +12 -0
  195. package/dist/server/node_modules/is-unicode-supported/index.js +21 -0
  196. package/dist/server/node_modules/is-unicode-supported/license +9 -0
  197. package/dist/server/node_modules/is-unicode-supported/package.json +47 -0
  198. package/dist/server/node_modules/is-unicode-supported/readme.md +35 -0
  199. package/dist/server/node_modules/pg-cloudflare/LICENSE +21 -0
  200. package/dist/server/node_modules/pg-cloudflare/README.md +112 -0
  201. package/dist/server/node_modules/pg-cloudflare/dist/empty.d.ts +2 -0
  202. package/dist/server/node_modules/pg-cloudflare/dist/empty.js +6 -0
  203. package/dist/server/node_modules/pg-cloudflare/dist/empty.js.map +1 -0
  204. package/dist/server/node_modules/pg-cloudflare/dist/index.d.ts +31 -0
  205. package/dist/server/node_modules/pg-cloudflare/dist/index.js +152 -0
  206. package/dist/server/node_modules/pg-cloudflare/dist/index.js.map +1 -0
  207. package/dist/server/node_modules/pg-cloudflare/esm/index.mjs +3 -0
  208. package/dist/server/node_modules/pg-cloudflare/package.json +39 -0
  209. package/dist/server/node_modules/pg-cloudflare/src/empty.ts +3 -0
  210. package/dist/server/node_modules/pg-cloudflare/src/index.ts +166 -0
  211. package/dist/server/node_modules/pg-cloudflare/src/types.d.ts +25 -0
  212. package/dist/server/node_modules/pg-connection-string/LICENSE +21 -0
  213. package/dist/server/node_modules/pg-connection-string/README.md +105 -0
  214. package/dist/server/node_modules/pg-connection-string/esm/index.mjs +8 -0
  215. package/dist/server/node_modules/pg-connection-string/index.d.ts +36 -0
  216. package/dist/server/node_modules/pg-connection-string/index.js +231 -0
  217. package/dist/server/node_modules/pg-connection-string/package.json +52 -0
  218. package/dist/server/node_modules/pg-pool/LICENSE +21 -0
  219. package/dist/server/node_modules/pg-pool/README.md +357 -0
  220. package/dist/server/node_modules/pg-pool/esm/index.mjs +5 -0
  221. package/dist/server/node_modules/pg-pool/index.js +517 -0
  222. package/dist/server/node_modules/pg-pool/package.json +51 -0
  223. package/dist/server/node_modules/pg-protocol/LICENSE +21 -0
  224. package/dist/server/node_modules/pg-protocol/README.md +3 -0
  225. package/dist/server/node_modules/pg-protocol/dist/b.js +23 -0
  226. package/dist/server/node_modules/pg-protocol/dist/b.js.map +1 -0
  227. package/dist/server/node_modules/pg-protocol/dist/buffer-reader.d.ts +15 -0
  228. package/dist/server/node_modules/pg-protocol/dist/buffer-reader.js +55 -0
  229. package/dist/server/node_modules/pg-protocol/dist/buffer-reader.js.map +1 -0
  230. package/dist/server/node_modules/pg-protocol/dist/buffer-writer.d.ts +16 -0
  231. package/dist/server/node_modules/pg-protocol/dist/buffer-writer.js +81 -0
  232. package/dist/server/node_modules/pg-protocol/dist/buffer-writer.js.map +1 -0
  233. package/dist/server/node_modules/pg-protocol/dist/inbound-parser.test.d.ts +1 -0
  234. package/dist/server/node_modules/pg-protocol/dist/inbound-parser.test.js +530 -0
  235. package/dist/server/node_modules/pg-protocol/dist/inbound-parser.test.js.map +1 -0
  236. package/dist/server/node_modules/pg-protocol/dist/index.d.ts +6 -0
  237. package/dist/server/node_modules/pg-protocol/dist/index.js +15 -0
  238. package/dist/server/node_modules/pg-protocol/dist/index.js.map +1 -0
  239. package/dist/server/node_modules/pg-protocol/dist/messages.d.ts +162 -0
  240. package/dist/server/node_modules/pg-protocol/dist/messages.js +160 -0
  241. package/dist/server/node_modules/pg-protocol/dist/messages.js.map +1 -0
  242. package/dist/server/node_modules/pg-protocol/dist/outbound-serializer.test.d.ts +1 -0
  243. package/dist/server/node_modules/pg-protocol/dist/outbound-serializer.test.js +252 -0
  244. package/dist/server/node_modules/pg-protocol/dist/outbound-serializer.test.js.map +1 -0
  245. package/dist/server/node_modules/pg-protocol/dist/parser.d.ts +24 -0
  246. package/dist/server/node_modules/pg-protocol/dist/parser.js +324 -0
  247. package/dist/server/node_modules/pg-protocol/dist/parser.js.map +1 -0
  248. package/dist/server/node_modules/pg-protocol/dist/serializer.d.ts +42 -0
  249. package/dist/server/node_modules/pg-protocol/dist/serializer.js +189 -0
  250. package/dist/server/node_modules/pg-protocol/dist/serializer.js.map +1 -0
  251. package/dist/server/node_modules/pg-protocol/esm/index.js +11 -0
  252. package/dist/server/node_modules/pg-protocol/package.json +45 -0
  253. package/dist/server/node_modules/pg-protocol/src/b.ts +25 -0
  254. package/dist/server/node_modules/pg-protocol/src/buffer-reader.ts +58 -0
  255. package/dist/server/node_modules/pg-protocol/src/buffer-writer.ts +85 -0
  256. package/dist/server/node_modules/pg-protocol/src/inbound-parser.test.ts +575 -0
  257. package/dist/server/node_modules/pg-protocol/src/index.ts +11 -0
  258. package/dist/server/node_modules/pg-protocol/src/messages.ts +262 -0
  259. package/dist/server/node_modules/pg-protocol/src/outbound-serializer.test.ts +276 -0
  260. package/dist/server/node_modules/pg-protocol/src/parser.ts +413 -0
  261. package/dist/server/node_modules/pg-protocol/src/serializer.ts +274 -0
  262. package/dist/server/node_modules/pg-protocol/src/testing/buffer-list.ts +67 -0
  263. package/dist/server/node_modules/pg-protocol/src/testing/test-buffers.ts +166 -0
  264. package/dist/server/node_modules/pg-protocol/src/types/chunky.d.ts +1 -0
  265. package/dist/server/node_modules/pg-types/.travis.yml +7 -0
  266. package/dist/server/node_modules/pg-types/Makefile +14 -0
  267. package/dist/server/node_modules/pg-types/README.md +75 -0
  268. package/dist/server/node_modules/pg-types/index.d.ts +137 -0
  269. package/dist/server/node_modules/pg-types/index.js +47 -0
  270. package/dist/server/node_modules/pg-types/index.test-d.ts +21 -0
  271. package/dist/server/node_modules/pg-types/lib/arrayParser.js +11 -0
  272. package/dist/server/node_modules/pg-types/lib/binaryParsers.js +257 -0
  273. package/dist/server/node_modules/pg-types/lib/builtins.js +73 -0
  274. package/dist/server/node_modules/pg-types/lib/textParsers.js +215 -0
  275. package/dist/server/node_modules/pg-types/package.json +42 -0
  276. package/dist/server/node_modules/pg-types/test/index.js +24 -0
  277. package/dist/server/node_modules/pg-types/test/types.js +597 -0
  278. package/dist/server/node_modules/pgpass/README.md +74 -0
  279. package/dist/server/node_modules/pgpass/lib/helper.js +233 -0
  280. package/dist/server/node_modules/pgpass/lib/index.js +23 -0
  281. package/dist/server/node_modules/pgpass/package.json +41 -0
  282. package/dist/server/node_modules/restore-cursor/index.d.ts +11 -0
  283. package/dist/server/node_modules/restore-cursor/index.js +11 -0
  284. package/dist/server/node_modules/restore-cursor/license +9 -0
  285. package/dist/server/node_modules/restore-cursor/package.json +55 -0
  286. package/dist/server/node_modules/restore-cursor/readme.md +31 -0
  287. package/dist/server/node_modules/string-width/index.d.ts +39 -0
  288. package/dist/server/node_modules/string-width/index.js +82 -0
  289. package/dist/server/node_modules/string-width/license +9 -0
  290. package/dist/server/node_modules/string-width/package.json +64 -0
  291. package/dist/server/node_modules/string-width/readme.md +66 -0
  292. package/dist/server/server.js +5 -1
  293. package/package.json +1 -1
  294. package/dist/client/assets/ai-providers-CfDd4KX1.js +0 -1
  295. package/dist/client/assets/registry-CWfZJmtj.js +0 -2
  296. package/dist/client/assets/store-registry-CBTBvJpl.js +0 -2
  297. package/dist/client/assets/useInfiniteQuery-96c4mtDU.js +0 -1
  298. package/dist/client/assets/useSuspenseInfiniteQuery-HyWQwfY6.js +0 -1
  299. package/dist/client/assets/workflow-detail-C0BgSrtB.js +0 -1
  300. package/dist/server/node_modules/ansi-regex/index.d.ts +0 -33
  301. package/dist/server/node_modules/ansi-regex/index.js +0 -14
  302. package/dist/server/node_modules/ansi-regex/readme.md +0 -66
  303. package/dist/server/node_modules/emoji-regex/LICENSE-MIT.txt +0 -20
  304. package/dist/server/node_modules/emoji-regex/README.md +0 -107
  305. package/dist/server/node_modules/emoji-regex/index.d.ts +0 -3
  306. package/dist/server/node_modules/emoji-regex/index.js +0 -4
  307. package/dist/server/node_modules/emoji-regex/index.mjs +0 -4
  308. package/dist/server/node_modules/emoji-regex/package.json +0 -45
  309. package/dist/server/node_modules/ink/build/ansi-tokenizer.d.ts +0 -38
  310. package/dist/server/node_modules/ink/build/ansi-tokenizer.js +0 -316
  311. package/dist/server/node_modules/ink/build/ansi-tokenizer.js.map +0 -1
  312. package/dist/server/node_modules/ink/build/apply-styles.js +0 -175
  313. package/dist/server/node_modules/ink/build/build-layout.js +0 -77
  314. package/dist/server/node_modules/ink/build/calculate-wrapped-text.js +0 -53
  315. package/dist/server/node_modules/ink/build/colorize.d.ts +0 -3
  316. package/dist/server/node_modules/ink/build/colorize.js +0 -48
  317. package/dist/server/node_modules/ink/build/colorize.js.map +0 -1
  318. package/dist/server/node_modules/ink/build/components/AccessibilityContext.d.ts +0 -3
  319. package/dist/server/node_modules/ink/build/components/AccessibilityContext.js +0 -5
  320. package/dist/server/node_modules/ink/build/components/AccessibilityContext.js.map +0 -1
  321. package/dist/server/node_modules/ink/build/components/App.d.ts +0 -18
  322. package/dist/server/node_modules/ink/build/components/App.js +0 -351
  323. package/dist/server/node_modules/ink/build/components/App.js.map +0 -1
  324. package/dist/server/node_modules/ink/build/components/AppContext.d.ts +0 -15
  325. package/dist/server/node_modules/ink/build/components/AppContext.js +0 -11
  326. package/dist/server/node_modules/ink/build/components/AppContext.js.map +0 -1
  327. package/dist/server/node_modules/ink/build/components/BackgroundContext.d.ts +0 -4
  328. package/dist/server/node_modules/ink/build/components/BackgroundContext.js +0 -3
  329. package/dist/server/node_modules/ink/build/components/BackgroundContext.js.map +0 -1
  330. package/dist/server/node_modules/ink/build/components/Box.d.ts +0 -117
  331. package/dist/server/node_modules/ink/build/components/Box.js +0 -34
  332. package/dist/server/node_modules/ink/build/components/Box.js.map +0 -1
  333. package/dist/server/node_modules/ink/build/components/Color.js +0 -62
  334. package/dist/server/node_modules/ink/build/components/Cursor.d.ts +0 -83
  335. package/dist/server/node_modules/ink/build/components/Cursor.js +0 -53
  336. package/dist/server/node_modules/ink/build/components/Cursor.js.map +0 -1
  337. package/dist/server/node_modules/ink/build/components/CursorContext.d.ts +0 -11
  338. package/dist/server/node_modules/ink/build/components/CursorContext.js +0 -8
  339. package/dist/server/node_modules/ink/build/components/CursorContext.js.map +0 -1
  340. package/dist/server/node_modules/ink/build/components/ErrorBoundary.d.ts +0 -18
  341. package/dist/server/node_modules/ink/build/components/ErrorBoundary.js +0 -23
  342. package/dist/server/node_modules/ink/build/components/ErrorBoundary.js.map +0 -1
  343. package/dist/server/node_modules/ink/build/components/ErrorOverview.d.ts +0 -6
  344. package/dist/server/node_modules/ink/build/components/ErrorOverview.js +0 -84
  345. package/dist/server/node_modules/ink/build/components/ErrorOverview.js.map +0 -1
  346. package/dist/server/node_modules/ink/build/components/FocusContext.d.ts +0 -16
  347. package/dist/server/node_modules/ink/build/components/FocusContext.js +0 -17
  348. package/dist/server/node_modules/ink/build/components/FocusContext.js.map +0 -1
  349. package/dist/server/node_modules/ink/build/components/Newline.d.ts +0 -13
  350. package/dist/server/node_modules/ink/build/components/Newline.js +0 -8
  351. package/dist/server/node_modules/ink/build/components/Newline.js.map +0 -1
  352. package/dist/server/node_modules/ink/build/components/Spacer.d.ts +0 -7
  353. package/dist/server/node_modules/ink/build/components/Spacer.js +0 -11
  354. package/dist/server/node_modules/ink/build/components/Spacer.js.map +0 -1
  355. package/dist/server/node_modules/ink/build/components/Static.d.ts +0 -24
  356. package/dist/server/node_modules/ink/build/components/Static.js +0 -28
  357. package/dist/server/node_modules/ink/build/components/Static.js.map +0 -1
  358. package/dist/server/node_modules/ink/build/components/StderrContext.d.ts +0 -15
  359. package/dist/server/node_modules/ink/build/components/StderrContext.js +0 -13
  360. package/dist/server/node_modules/ink/build/components/StderrContext.js.map +0 -1
  361. package/dist/server/node_modules/ink/build/components/StdinContext.d.ts +0 -22
  362. package/dist/server/node_modules/ink/build/components/StdinContext.js +0 -19
  363. package/dist/server/node_modules/ink/build/components/StdinContext.js.map +0 -1
  364. package/dist/server/node_modules/ink/build/components/StdoutContext.d.ts +0 -15
  365. package/dist/server/node_modules/ink/build/components/StdoutContext.js +0 -13
  366. package/dist/server/node_modules/ink/build/components/StdoutContext.js.map +0 -1
  367. package/dist/server/node_modules/ink/build/components/Text.d.ts +0 -55
  368. package/dist/server/node_modules/ink/build/components/Text.js +0 -50
  369. package/dist/server/node_modules/ink/build/components/Text.js.map +0 -1
  370. package/dist/server/node_modules/ink/build/components/Transform.d.ts +0 -16
  371. package/dist/server/node_modules/ink/build/components/Transform.js +0 -15
  372. package/dist/server/node_modules/ink/build/components/Transform.js.map +0 -1
  373. package/dist/server/node_modules/ink/build/cursor-helpers.d.ts +0 -38
  374. package/dist/server/node_modules/ink/build/cursor-helpers.js +0 -56
  375. package/dist/server/node_modules/ink/build/cursor-helpers.js.map +0 -1
  376. package/dist/server/node_modules/ink/build/devtools-window-polyfill.js +0 -65
  377. package/dist/server/node_modules/ink/build/devtools-window-polyfill.js.map +0 -1
  378. package/dist/server/node_modules/ink/build/devtools.d.ts +0 -1
  379. package/dist/server/node_modules/ink/build/devtools.js +0 -11
  380. package/dist/server/node_modules/ink/build/devtools.js.map +0 -1
  381. package/dist/server/node_modules/ink/build/dom.d.ts +0 -56
  382. package/dist/server/node_modules/ink/build/dom.js +0 -124
  383. package/dist/server/node_modules/ink/build/dom.js.map +0 -1
  384. package/dist/server/node_modules/ink/build/experimental/apply-style.js +0 -140
  385. package/dist/server/node_modules/ink/build/experimental/dom.js +0 -123
  386. package/dist/server/node_modules/ink/build/experimental/output.js +0 -91
  387. package/dist/server/node_modules/ink/build/experimental/reconciler.js +0 -141
  388. package/dist/server/node_modules/ink/build/experimental/renderer.js +0 -81
  389. package/dist/server/node_modules/ink/build/get-max-width.d.ts +0 -3
  390. package/dist/server/node_modules/ink/build/get-max-width.js +0 -10
  391. package/dist/server/node_modules/ink/build/get-max-width.js.map +0 -1
  392. package/dist/server/node_modules/ink/build/hooks/use-app.d.ts +0 -5
  393. package/dist/server/node_modules/ink/build/hooks/use-app.js +0 -8
  394. package/dist/server/node_modules/ink/build/hooks/use-app.js.map +0 -1
  395. package/dist/server/node_modules/ink/build/hooks/use-cursor.d.ts +0 -12
  396. package/dist/server/node_modules/ink/build/hooks/use-cursor.js +0 -29
  397. package/dist/server/node_modules/ink/build/hooks/use-cursor.js.map +0 -1
  398. package/dist/server/node_modules/ink/build/hooks/use-focus-manager.d.ts +0 -28
  399. package/dist/server/node_modules/ink/build/hooks/use-focus-manager.js +0 -17
  400. package/dist/server/node_modules/ink/build/hooks/use-focus-manager.js.map +0 -1
  401. package/dist/server/node_modules/ink/build/hooks/use-focus.d.ts +0 -29
  402. package/dist/server/node_modules/ink/build/hooks/use-focus.js +0 -42
  403. package/dist/server/node_modules/ink/build/hooks/use-focus.js.map +0 -1
  404. package/dist/server/node_modules/ink/build/hooks/use-input.d.ts +0 -131
  405. package/dist/server/node_modules/ink/build/hooks/use-input.js +0 -124
  406. package/dist/server/node_modules/ink/build/hooks/use-input.js.map +0 -1
  407. package/dist/server/node_modules/ink/build/hooks/use-is-screen-reader-enabled.d.ts +0 -5
  408. package/dist/server/node_modules/ink/build/hooks/use-is-screen-reader-enabled.js +0 -11
  409. package/dist/server/node_modules/ink/build/hooks/use-is-screen-reader-enabled.js.map +0 -1
  410. package/dist/server/node_modules/ink/build/hooks/use-stderr.d.ts +0 -5
  411. package/dist/server/node_modules/ink/build/hooks/use-stderr.js +0 -8
  412. package/dist/server/node_modules/ink/build/hooks/use-stderr.js.map +0 -1
  413. package/dist/server/node_modules/ink/build/hooks/use-stdin.d.ts +0 -5
  414. package/dist/server/node_modules/ink/build/hooks/use-stdin.js +0 -8
  415. package/dist/server/node_modules/ink/build/hooks/use-stdin.js.map +0 -1
  416. package/dist/server/node_modules/ink/build/hooks/use-stdout.d.ts +0 -5
  417. package/dist/server/node_modules/ink/build/hooks/use-stdout.js +0 -8
  418. package/dist/server/node_modules/ink/build/hooks/use-stdout.js.map +0 -1
  419. package/dist/server/node_modules/ink/build/hooks/useInput.js +0 -38
  420. package/dist/server/node_modules/ink/build/index.d.ts +0 -34
  421. package/dist/server/node_modules/ink/build/index.js +0 -20
  422. package/dist/server/node_modules/ink/build/index.js.map +0 -1
  423. package/dist/server/node_modules/ink/build/ink.d.ts +0 -90
  424. package/dist/server/node_modules/ink/build/ink.js +0 -637
  425. package/dist/server/node_modules/ink/build/ink.js.map +0 -1
  426. package/dist/server/node_modules/ink/build/input-parser.d.ts +0 -7
  427. package/dist/server/node_modules/ink/build/input-parser.js +0 -154
  428. package/dist/server/node_modules/ink/build/input-parser.js.map +0 -1
  429. package/dist/server/node_modules/ink/build/instance.js +0 -205
  430. package/dist/server/node_modules/ink/build/instances.d.ts +0 -3
  431. package/dist/server/node_modules/ink/build/instances.js +0 -8
  432. package/dist/server/node_modules/ink/build/instances.js.map +0 -1
  433. package/dist/server/node_modules/ink/build/kitty-keyboard.d.ts +0 -23
  434. package/dist/server/node_modules/ink/build/kitty-keyboard.js +0 -32
  435. package/dist/server/node_modules/ink/build/kitty-keyboard.js.map +0 -1
  436. package/dist/server/node_modules/ink/build/layout.d.ts +0 -7
  437. package/dist/server/node_modules/ink/build/layout.js +0 -33
  438. package/dist/server/node_modules/ink/build/layout.js.map +0 -1
  439. package/dist/server/node_modules/ink/build/log-update.d.ts +0 -19
  440. package/dist/server/node_modules/ink/build/log-update.js +0 -242
  441. package/dist/server/node_modules/ink/build/log-update.js.map +0 -1
  442. package/dist/server/node_modules/ink/build/measure-element.d.ts +0 -16
  443. package/dist/server/node_modules/ink/build/measure-element.js +0 -9
  444. package/dist/server/node_modules/ink/build/measure-element.js.map +0 -1
  445. package/dist/server/node_modules/ink/build/measure-text.d.ts +0 -6
  446. package/dist/server/node_modules/ink/build/measure-text.js +0 -21
  447. package/dist/server/node_modules/ink/build/measure-text.js.map +0 -1
  448. package/dist/server/node_modules/ink/build/options.d.ts +0 -52
  449. package/dist/server/node_modules/ink/build/options.js +0 -2
  450. package/dist/server/node_modules/ink/build/options.js.map +0 -1
  451. package/dist/server/node_modules/ink/build/output.d.ts +0 -35
  452. package/dist/server/node_modules/ink/build/output.js +0 -183
  453. package/dist/server/node_modules/ink/build/output.js.map +0 -1
  454. package/dist/server/node_modules/ink/build/parse-keypress.d.ts +0 -22
  455. package/dist/server/node_modules/ink/build/parse-keypress.js +0 -493
  456. package/dist/server/node_modules/ink/build/parse-keypress.js.map +0 -1
  457. package/dist/server/node_modules/ink/build/reconciler.d.ts +0 -4
  458. package/dist/server/node_modules/ink/build/reconciler.js +0 -274
  459. package/dist/server/node_modules/ink/build/reconciler.js.map +0 -1
  460. package/dist/server/node_modules/ink/build/render-background.d.ts +0 -4
  461. package/dist/server/node_modules/ink/build/render-background.js +0 -25
  462. package/dist/server/node_modules/ink/build/render-background.js.map +0 -1
  463. package/dist/server/node_modules/ink/build/render-border.d.ts +0 -4
  464. package/dist/server/node_modules/ink/build/render-border.js +0 -73
  465. package/dist/server/node_modules/ink/build/render-border.js.map +0 -1
  466. package/dist/server/node_modules/ink/build/render-node-to-output.d.ts +0 -14
  467. package/dist/server/node_modules/ink/build/render-node-to-output.js +0 -147
  468. package/dist/server/node_modules/ink/build/render-node-to-output.js.map +0 -1
  469. package/dist/server/node_modules/ink/build/render-to-string.d.ts +0 -38
  470. package/dist/server/node_modules/ink/build/render-to-string.js +0 -115
  471. package/dist/server/node_modules/ink/build/render-to-string.js.map +0 -1
  472. package/dist/server/node_modules/ink/build/render.d.ts +0 -121
  473. package/dist/server/node_modules/ink/build/render.js +0 -55
  474. package/dist/server/node_modules/ink/build/render.js.map +0 -1
  475. package/dist/server/node_modules/ink/build/renderer.d.ts +0 -8
  476. package/dist/server/node_modules/ink/build/renderer.js +0 -55
  477. package/dist/server/node_modules/ink/build/renderer.js.map +0 -1
  478. package/dist/server/node_modules/ink/build/sanitize-ansi.d.ts +0 -2
  479. package/dist/server/node_modules/ink/build/sanitize-ansi.js +0 -27
  480. package/dist/server/node_modules/ink/build/sanitize-ansi.js.map +0 -1
  481. package/dist/server/node_modules/ink/build/screen-reader-update.d.ts +0 -13
  482. package/dist/server/node_modules/ink/build/screen-reader-update.js +0 -38
  483. package/dist/server/node_modules/ink/build/screen-reader-update.js.map +0 -1
  484. package/dist/server/node_modules/ink/build/squash-text-nodes.d.ts +0 -3
  485. package/dist/server/node_modules/ink/build/squash-text-nodes.js +0 -36
  486. package/dist/server/node_modules/ink/build/squash-text-nodes.js.map +0 -1
  487. package/dist/server/node_modules/ink/build/styles.d.ts +0 -240
  488. package/dist/server/node_modules/ink/build/styles.js +0 -232
  489. package/dist/server/node_modules/ink/build/styles.js.map +0 -1
  490. package/dist/server/node_modules/ink/build/utils.d.ts +0 -2
  491. package/dist/server/node_modules/ink/build/utils.js +0 -4
  492. package/dist/server/node_modules/ink/build/utils.js.map +0 -1
  493. package/dist/server/node_modules/ink/build/wrap-text.d.ts +0 -3
  494. package/dist/server/node_modules/ink/build/wrap-text.js +0 -31
  495. package/dist/server/node_modules/ink/build/wrap-text.js.map +0 -1
  496. package/dist/server/node_modules/ink/build/write-synchronized.d.ts +0 -4
  497. package/dist/server/node_modules/ink/build/write-synchronized.js +0 -7
  498. package/dist/server/node_modules/ink/build/write-synchronized.js.map +0 -1
  499. package/dist/server/node_modules/ink/package.json +0 -201
  500. package/dist/server/node_modules/ink/readme.md +0 -2636
  501. package/dist/server/node_modules/onetime/index.d.ts +0 -64
  502. package/dist/server/node_modules/onetime/index.js +0 -44
  503. package/dist/server/node_modules/onetime/package.json +0 -43
  504. package/dist/server/node_modules/onetime/readme.md +0 -94
  505. /package/dist/server/node_modules/{ansi-regex → ansi-styles}/license +0 -0
  506. /package/dist/server/node_modules/{onetime → environment}/license +0 -0
  507. /package/dist/server/node_modules/{ink/build/devtools-window-polyfill.d.ts → pg-protocol/dist/b.d.ts} +0 -0
@@ -1643,7 +1643,7 @@ AS SELECT
1643
1643
  FROM monitoring_metrics
1644
1644
  GROUP BY organization_id, name, bucket, connection_id, tool_name, status
1645
1645
  `}),console.log("[clickhouse-schema] monitoring_metrics_rollup_1m_mv view ready")}finally{await G.close()}}catch(Y){console.error("[clickhouse-schema] Failed to create rollup DDL (queries will fall back to raw table):",Y)}}async function iA1(X){let Y={...process.env},G=e$1(X,Y),Q=G.settings.encryptionKey;console.log(`[settings] ENCRYPTION_KEY = ${JSON.stringify(Q)} (${Q.length} chars)`);let{ensureServices:J}=await Promise.resolve().then(() => (l$1(),u$1)),{outputs:W,services:Z}=await J({home:G.settings.dataDir,externalDatabaseUrl:G.externalDatabaseUrl,externalNatsUrl:G.externalNatsUrl});if(!G.skipMigrations){let{migrateBetterAuth:K}=await Promise.resolve().then(() => (YW0(),Jg4));await K(W.databaseUrl);let{createDatabase:H}=await Promise.resolve().then(() => (ZU(),Qg4)),{migrateToLatest:U}=await Promise.resolve().then(() => (Us4(),Fs4)),B=H(W.databaseUrl);await U({keepOpen:!0,database:B,skipBetterAuth:!0})}if(G.settings.clickhouseUrl){let{ensureClickHouseRollup:K}=await Promise.resolve().then(() => B16);await K(G.settings.clickhouseUrl)}let $={...G.settings,databaseUrl:W.databaseUrl,natsUrls:W.natsUrls};return xt1($),{settings:$,services:Z.map((K)=>({name:K.name==="PostgreSQL"?"Postgres":K.name,port:K.port})),managedServiceNames:Z.filter((K)=>K.owner==="managed").map((K)=>K.name)}}var kN0=w(()=>{yt1();l9()});var tA1={};T0(tA1,{updateService:()=>Ya,toggleViewMode:()=>vN0,toggleVibeState:()=>fN0,toggleLogFlow:()=>_N0,subscribeCliState:()=>CX1,setVibe:()=>Ya5,setTuiConsoleIntercepted:()=>pA1,setServerUrl:()=>_X1,setMigrationsDone:()=>vX1,setEnv:()=>fX1,setDevMode:()=>et5,setDataDir:()=>Xa5,isTuiConsoleIntercepted:()=>nA1,getCliState:()=>kX1,addLogEntry:()=>Wz});function TU(){for(let X of CN0)X()}function kX1(){return e9}function CX1(X){return CN0.add(X),()=>CN0.delete(X)}function Ya(X){e9={...e9,services:e9.services.map((Y)=>Y.name===X.name?X:Y)},TU()}function vX1(){e9={...e9,migrationsStatus:"done"},TU()}function _X1(X){e9={...e9,serverUrl:X},TU()}function fX1(X){e9={...e9,env:X},TU()}function Wz(X){let Y=[...e9.logs,X];e9={...e9,logs:Y.length>500?Y.slice(-500):Y},TU()}function et5(){e9={...e9,services:[...e9.services,{name:"Vite",status:"pending",port:0}]},TU()}function vN0(){e9={...e9,viewMode:e9.viewMode==="requests"?"config":"requests"},TU()}function _N0(){e9={...e9,logFlow:!e9.logFlow},TU()}function Xa5(X){e9={...e9,dataDir:X},TU()}function Ya5(X){e9={...e9,vibe:X},TU()}function fN0(){e9={...e9,vibe:!e9.vibe},TU()}function pA1(X){N16=X}function nA1(){return N16}var e9,CN0,N16=!1;var $z=w(()=>{e9={services:[{name:"Postgres",status:"pending",port:0},{name:"NATS",status:"pending",port:0}],migrationsStatus:"pending",serverUrl:null,env:null,logs:[],viewMode:"requests",logFlow:!1,vibe:!1,dataDir:null},CN0=new Set});import{createServer as z16}from"net";function Ga5(X){return new Promise((Y)=>{let G=z16();G.once("error",()=>Y(!1)),G.listen(X,"0.0.0.0",()=>{G.close(()=>Y(!0))})})}async function aA1(X){if(await Ga5(X))return X;let Y=await new Promise((G,Q)=>{let J=z16();J.once("error",Q),J.listen(0,"0.0.0.0",()=>{let W=J.address(),Z=typeof W==="object"&&W?W.port:0;J.close(()=>G(Z))})});return console.warn(`Port ${X} is in use, using port ${Y} instead.`),Y}var bN0=()=>{};var yN0={};T0(yN0,{startDevServer:()=>Ja5});import{join as Qa5}from"path";function O16(X){return X.replace(/\x1b\[[0-9;]*m/g,"")}function D16(X){let Y=X.getReader(),G=new TextDecoder,Q="";function J(){let W=Q.split(`
1646
- `);Q=W.pop()??"";for(let Z of W){let $=O16(Z).replace(/^\[\d+\]\s*/,"").trim();if(!$)continue;Wz({method:"",path:"",status:0,duration:0,timestamp:new Date,rawLine:$})}}(async()=>{for(;;){let{done:W,value:Z}=await Y.read();if(W)break;Q+=G.decode(Z,{stream:!0}),J()}if(Q.trim()){let W=O16(Q).replace(/^\[\d+\]\s*/,"").trim();if(W)Wz({method:"",path:"",status:0,duration:0,timestamp:new Date,rawLine:W})}})()}async function Ja5(X){let{vitePort:Y,baseUrl:G,noTui:Q}=X,J=await aA1(Number(X.port)),{settings:W,services:Z,managedServiceNames:$}=await iA1({port:String(J),home:X.home,baseUrl:X.baseUrl,localMode:X.localMode,skipMigrations:X.skipMigrations,noTui:X.noTui,vitePort:X.vitePort});for(let z of Z)Ya({name:z.name,status:"ready",port:z.port});fX1(W),vX1();let K=Qa5(import.meta.dir,"..","..","..","..",".."),H=Q===!0,U=Bun.spawn(["bun","run","--cwd=apps/mesh","dev:servers"],{cwd:K,env:{...process.env,PORT:String(W.port),VITE_PORT:String(Y),DATABASE_URL:W.databaseUrl,NATS_URL:W.natsUrls.join(","),NODE_ENV:W.nodeEnv,DECOCMS_LOCAL_MODE:String(W.localMode),DECOCMS_HOME:W.dataDir,DATA_DIR:W.dataDir,DECO_CLI:"1",...W.baseUrl?{BASE_URL:W.baseUrl}:{}},stdio:["inherit",H?"inherit":"pipe",H?"inherit":"pipe"]});if(!H)D16(U.stdout),D16(U.stderr);let B=G||`http://localhost:${W.port}`;_X1(B),Ya({name:"Vite",status:"ready",port:Number(Y)});let N=async(z)=>{if(U.kill(z),$.length>0){let{stopServices:O}=await Promise.resolve().then(() => (l$1(),u$1));await O(W.dataDir)}};return process.on("SIGINT",()=>N("SIGINT")),process.on("SIGTERM",()=>N("SIGTERM")),{port:Number(W.port),process:U}}var xN0=w(()=>{kN0();$z();bN0()});import{Box as hN0,Text as gN0}from"ink";import{jsx as L16,jsxs as rA1}from"react/jsx-runtime";function w16(X){if(!X)return"not set";try{let Y=new URL(X);if(Y.password)Y.password="***";if(Y.username&&Y.username.length>3)Y.username=Y.username.slice(0,3)+"***";return Y.pathname="/",Y.search="",Y.hash="",Y.toString()}catch{if(X.length<=10)return X;return X.slice(0,6)+"***"+X.slice(-4)}}function $a5(X,Y){if(Za5.has(X))return Y?{text:"\u25CF\u25CF\u25CF\u25CF\u25CF\u25CF",dimColor:!0}:{text:"not set",dimColor:!0};if(Wa5.has(X)){if(Array.isArray(Y)){if(Y.length===0)return{text:"not set",dimColor:!0};return{text:Y.map((W)=>w16(W)).join(", "),color:"cyan"}}let Q=w16(Y);return Q==="not set"?{text:Q,dimColor:!0}:{text:Q,color:"cyan"}}if(Y===void 0||Y===null||Y==="")return{text:"not set",dimColor:!0};let G=String(Y);if(G==="true")return{text:G,color:"green"};if(G==="false")return{text:G,color:"yellow"};try{return new URL(G),{text:G,color:"cyan"}}catch{return{text:G}}}function Ka5(X){return[{title:"Core",entries:[{key:"NODE_ENV",value:X.nodeEnv},{key:"PORT",value:X.port},{key:"BASE_URL",value:X.baseUrl??`http://localhost:${X.port}`},{key:"DATA_DIR",value:X.dataDir}]},{title:"Database",entries:[{key:"DATABASE_URL",value:X.databaseUrl},{key:"DATABASE_PG_SSL",value:X.databasePgSsl}]},{title:"Auth & Secrets",entries:[{key:"BETTER_AUTH_SECRET",value:X.betterAuthSecret},{key:"ENCRYPTION_KEY",value:X.encryptionKey},{key:"MESH_JWT_SECRET",value:X.meshJwtSecret},{key:"STUDIO_PROVISION_SECRET_KEY",value:X.studioProvisionSecretKey},{key:"DISABLE_RATE_LIMIT",value:X.disableRateLimit}]},{title:"Auth Providers",entries:[{key:"AUTH_EMAIL_PASSWORD_ENABLED",value:process.env.AUTH_EMAIL_PASSWORD_ENABLED??"true"},{key:"AUTH_GOOGLE_CLIENT_ID",value:!!process.env.AUTH_GOOGLE_CLIENT_ID},{key:"AUTH_GITHUB_CLIENT_ID",value:!!process.env.AUTH_GITHUB_CLIENT_ID},{key:"AUTH_RESEND_API_KEY",value:!!process.env.AUTH_RESEND_API_KEY},{key:"AUTH_SENDGRID_API_KEY",value:!!process.env.AUTH_SENDGRID_API_KEY},{key:"AUTH_SSO_MS_CLIENT_ID",value:!!process.env.AUTH_SSO_MS_CLIENT_ID},{key:"AUTH_SSO_GOOGLE_CLIENT_ID",value:!!process.env.AUTH_SSO_GOOGLE_CLIENT_ID},{key:"AUTH_MAGIC_LINK_ENABLED",value:process.env.AUTH_MAGIC_LINK_ENABLED==="true"},{key:"AUTH_EMAIL_OTP_ENABLED",value:process.env.AUTH_EMAIL_OTP_ENABLED==="true"}]},{title:"Observability",entries:[{key:"CLICKHOUSE_URL",value:X.clickhouseUrl},{key:"OTEL_SERVICE_NAME",value:X.otelServiceName}]},{title:"Event Bus & Networking",entries:[{key:"NATS_URL",value:X.natsUrls}]},{title:"Config Files",entries:[{key:"CONFIG_PATH",value:X.configPath}]},{title:"AI Gateway",entries:[{key:"DECO_AI_GATEWAY_ENABLED",value:X.aiGatewayEnabled},{key:"DECO_AI_GATEWAY_URL",value:X.aiGatewayUrl}]}]}function E16({env:X}){let Y=Ka5(X);return L16(hN0,{flexDirection:"column",children:Y.map((G)=>rA1(hN0,{flexDirection:"column",marginTop:1,children:[rA1(gN0,{dimColor:!0,children:[" ","\u2500\u2500 ",G.title," ","\u2500".repeat(Math.max(0,38-G.title.length))]}),G.entries.map(({key:Q,value:J})=>{let W=$a5(Q,J);return rA1(hN0,{children:[rA1(gN0,{dimColor:!0,children:[" ",Q.padEnd(36)]}),L16(gN0,{color:W.color,dimColor:W.dimColor,children:W.text})]},Q)})]},G.title))})}var Za5,Wa5;var P16=w(()=>{Za5=new Set(["BETTER_AUTH_SECRET","ENCRYPTION_KEY","MESH_JWT_SECRET","STUDIO_PROVISION_SECRET_KEY"]),Wa5=new Set(["DATABASE_URL","CLICKHOUSE_URL","NATS_URL"])});var uN0;var q16=w(()=>{uN0={name:"decocms",version:"2.311.1",description:"Deco CMS \u2014 Self-hostable MCP Gateway for managing AI connections and tools",author:"Deco team",repository:{type:"git",url:"git+https://github.com/decocms/studio.git",directory:"apps/mesh"},bugs:{url:"https://github.com/decocms/studio/issues"},type:"module",bin:{deco:"./dist/server/cli.js"},files:["dist/**/*"],scripts:{dev:'bun run migrate && concurrently "bun run dev:client" "bun run dev:server"',"dev:servers":'concurrently "bun run dev:client" "bun run dev:server"',"dev:client":"bun --bun vite dev","dev:server":"bun run --cwd=../../packages/sandbox build && NODE_ENV=development bun --env-file=.env --hot run src/index.ts","build:client":"bun --bun vite build","build:server":"bun run scripts/bundle-server-script.ts --dist ./dist/server","db:migrate":"bun run ./dist/server/migrate.js",check:"tsc --noEmit",start:"bun run ./dist/server/server.js",migrate:"bun run src/database/migrate.ts",test:"bun test","test:e2e":"playwright test","test:e2e:ui":"playwright test --ui","better-auth:migrate":"bunx --bun @better-auth/cli migrate -y --config src/auth/index.ts",prepublishOnly:"bun run build:client && bun run build:server"},optionalDependencies:{"@duckdb/node-api":"^1.5.0-r.1","@freestyle-sh/with-bun":"^0.2.12","@freestyle-sh/with-deno":"^0.0.4","@freestyle-sh/with-nodejs":"^0.2.9","freestyle-sandboxes":"^0.1.46"},dependencies:{"@ai-sdk/anthropic":"^3.0.58","@ai-sdk/google":"^3.0.60","@ai-sdk/openai":"^3.0.50","@anthropic-ai/sdk":"^0.79.0","@aws-sdk/client-s3":"^3.1013.0","@aws-sdk/s3-request-presigner":"^3.1013.0","@clickhouse/client":"^1.8.1","@deco-cx/warp-node":"^0.3.20","@dnd-kit/core":"^6.3.1","@dnd-kit/sortable":"^10.0.0","@dnd-kit/utilities":"^3.2.2","@inkjs/ui":"^2.0.0","@modelcontextprotocol/ext-apps":"^1.2.2","@openrouter/ai-sdk-provider":"^2.2.5","@opentelemetry/core":"^2.6.0","@tanstack/react-virtual":"^3.13.21","@xterm/addon-fit":"^0.11.0","@xterm/xterm":"^6.0.0","ai-sdk-provider-claude-code":"^3.4.4","ai-sdk-provider-codex-cli":"^1.1.0","embedded-postgres":"^18.3.0-beta.16",ink:"^6.8.0",kysely:"^0.28.12",nats:"^2.29.3","node-pty":"^1.0.0","posthog-js":"^1.371.1","posthog-node":"^5.0.0",react:"^19.2.0","react-dom":"^19.2.0"},devDependencies:{"@ai-sdk/provider":"^3.0.8","@ai-sdk/react":"^3.0.118","@anthropic-ai/claude-agent-sdk":"^0.2.80","@better-auth/sso":"1.4.1","@daveyplate/better-auth-ui":"^3.2.7","@deco/ui":"workspace:*","@decocms/better-auth":"1.5.17","@decocms/bindings":"workspace:*","@decocms/mcp-utils":"workspace:*","@decocms/mesh-sdk":"workspace:*","@decocms/runtime":"workspace:*","@decocms/vite-plugin":"workspace:*","@electric-sql/pglite":"^0.3.15","@floating-ui/react":"^0.27.16","@hookform/resolvers":"^5.2.2","@jitl/quickjs-wasmfile-release-sync":"0.31.0","@modelcontextprotocol/sdk":"1.27.1","@monaco-editor/react":"^4.7.0","@opentelemetry/api":"^1.9.0","@opentelemetry/api-logs":"^0.211.0","@opentelemetry/exporter-logs-otlp-proto":"^0.211.0","@opentelemetry/exporter-prometheus":"^0.208.0","@opentelemetry/exporter-trace-otlp-proto":"^0.207.0","@opentelemetry/instrumentation-runtime-node":"^0.24.0","@opentelemetry/sdk-logs":"^0.211.0","@opentelemetry/sdk-metrics":"^2.2.0","@opentelemetry/sdk-node":"^0.207.0","@opentelemetry/sdk-trace-base":"^2.5.0","@playwright/test":"^1.58.2","@radix-ui/react-avatar":"^1.1.10","@radix-ui/react-checkbox":"^1.3.3","@radix-ui/react-dialog":"^1.1.15","@radix-ui/react-dropdown-menu":"^2.1.16","@radix-ui/react-label":"^2.1.7","@radix-ui/react-select":"^2.2.6","@radix-ui/react-separator":"^1.1.7","@radix-ui/react-slot":"^1.2.3","@radix-ui/react-tabs":"^1.1.13","@rjsf/core":"^6.1.2","@rjsf/shadcn":"^6.1.2","@rjsf/utils":"^6.1.2","@rjsf/validator-ajv8":"^6.1.2","@tailwindcss/vite":"^4.1.17","@tanstack/react-query":"5.90.11","@tanstack/react-router":"^1.139.7","@tiptap/core":"3.20.2","@tiptap/extension-mention":"3.20.2","@tiptap/extension-placeholder":"3.20.2","@tiptap/pm":"3.20.2","@tiptap/react":"3.20.2","@tiptap/starter-kit":"3.20.2","@tiptap/suggestion":"3.20.2","@types/bun":"^1.3.1","@types/pg":"^8.15.6","@types/react-syntax-highlighter":"^15.5.13","@untitledui/icons":"^0.0.19","@vercel/nft":"^1.1.1","@vitejs/plugin-react":"^5.1.0",ai:"^6.0.116","babel-plugin-react-compiler":"^1.0.0","better-auth":"1.4.5","class-variance-authority":"^0.7.1",clsx:"^2.1.1",concurrently:"^9.2.1",croner:"^9.1.0","date-fns":"^4.1.0",degit:"^2.8.4",hono:"^4.10.7","input-otp":"^1.4.2",jose:"^6.0.11","kysely-pglite":"^0.6.1","lucide-react":"^0.468.0",marked:"^15.0.6","@decocms/sandbox":"workspace:*","mesh-plugin-workflows":"workspace:*",nanoid:"^5.1.6",pg:"^8.16.3",prettier:"^3.4.2","react-hook-form":"^7.66.0","react-markdown":"^10.1.0","react-resizable-panels":"^2.1.7","react-syntax-highlighter":"^15.6.1",recharts:"^3.6.0","rehype-raw":"^7.0.0","remark-gfm":"^4.0.0","sass-embedded":"^1.97.2",sonner:"^2.0.7","tailwind-merge":"^3.3.1",tailwindcss:"^4.1.17",typescript:"^5.9.3",vite:"^7.2.1","vite-tsconfig-paths":"^5.1.4",zod:"^4.0.0",zustand:"^5.0.9"},homepage:"https://github.com/decocms/studio",keywords:["mcp","model-context-protocol","ai","gateway","self-hosted","mesh","tools"],license:"MIT",publishConfig:{access:"public"}}});import{Box as IU,Text as RX}from"ink";import{Spinner as Fa5}from"@inkjs/ui";import{useSyncExternalStore as A16}from"react";import{jsx as TY,jsxs as sQ}from"react/jsx-runtime";function Oa5(X,Y){if(!X||!za5.has(X))return X;let G=lN0[Y]??lN0[lN0.length-1];return X==="#875f00"?G[0]:G[1]}function T16({status:X}){if(X==="pending")return TY(Fa5,{label:""});return TY(RX,{color:"green",children:"\u2713"})}function I16({services:X,migrationsStatus:Y,home:G,serverUrl:Q,vibe:J}){let W=A16(mm0,lm0),Z=A16(tm0,nm0);return sQ(IU,{flexDirection:"column",paddingBottom:1,children:[J?sQ(IU,{flexDirection:"column",children:[W.map(($,K)=>{let H=Z[K],U=$.reduce((N,z)=>N+z.text.length,0),B=Math.max(0,Na5-U);return sQ(IU,{flexDirection:"row",children:[$.map((N,z)=>{let O=Oa5(N.color,K);return O?TY(RX,{color:O,children:N.text},z):TY(RX,{children:N.text},z)}),TY(RX,{children:" ".repeat(B+2)}),H?.map((N,z)=>N.color?TY(RX,{color:N.color,children:N.char},z):TY(RX,{children:N.char},z))]},K)}),sQ(RX,{dimColor:!0,children:[" v",uN0.version]})]}):sQ(IU,{flexDirection:"column",marginTop:1,children:[Ua5.map(($,K)=>TY(RX,{color:Ba5[K],children:$},K)),sQ(RX,{dimColor:!0,children:[" v",uN0.version]})]}),TY(IU,{marginBottom:1,children:TY(RX,{dimColor:!0,children:"\u2500".repeat(80)})}),TY(IU,{children:sQ(RX,{dimColor:!0,children:["Home: ",G]})}),sQ(IU,{gap:2,children:[X.map(($)=>sQ(IU,{gap:1,children:[sQ(RX,{children:[$.name," :",$.port||"...."]}),TY(T16,{status:$.status})]},$.name)),sQ(IU,{gap:1,children:[TY(RX,{children:"Migrations"}),TY(T16,{status:Y})]})]}),TY(IU,{children:Q?sQ(RX,{children:["Open in browser: ",TY(RX,{color:"cyan",children:Q})]}):TY(RX,{dimColor:!0,children:"Starting..."})}),sQ(IU,{gap:2,children:[sQ(RX,{dimColor:!0,children:[TY(RX,{bold:!0,dimColor:!0,children:"K"})," ","toggle config"]}),sQ(RX,{dimColor:!0,children:[TY(RX,{bold:!0,dimColor:!0,children:"L"})," ","toggle log flow"]}),sQ(RX,{dimColor:!0,children:[TY(RX,{bold:!0,dimColor:!0,children:"V"})," ","toggle vibe ",J?"\u266A Nihilore \xB7 CC BY 4.0":""]}),J&&sQ(RX,{dimColor:!0,children:[TY(RX,{bold:!0,dimColor:!0,children:"N"})," ","skip song"]})]})]})}var Ua5,Ba5,lN0,Na5=30,za5;var V16=w(()=>{q16();Vt1();Ct1();Ua5=[" \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588\u2588 ","\u2591\u2591\u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2588 \u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588 \u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588 "," \u2591\u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2588 \u2591 \u2588\u2588\u2588 \u2591\u2591\u2591 \u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588"," \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588"," \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588\u2591\u2591\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588"," \u2591\u2588\u2588\u2588 \u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591 \u2588\u2591\u2591\u2588\u2588\u2588 \u2588\u2588\u2588\u2591\u2591\u2588\u2588\u2588 \u2588\u2588\u2588 "," \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2591\u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2591 ","\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 \u2591\u2591\u2591\u2591\u2591\u2591\u2591 "],Ba5=["#00ff64","#00ee5e","#00dc56","#00c84e","#00b444","#00a03c","#008832","#006e28"],lN0=[["#00ff64","#00cc50"],["#00f060","#00c04c"],["#00e05c","#00b448"],["#00d058","#00a844"],["#00c054","#009c40"],["#00b050","#00903c"],["#00a04c","#008438"],["#009048","#007834"],["#008044","#006c30"],["#007040","#00602c"],["#00603c","#005428"]],za5=new Set(["#875f00","#5f3800"])});import{useSyncExternalStore as Da5}from"react";function wa5(){let X=process.stdout.rows||24,Y=process.stdout.columns||80;if(X!==oA1.rows||Y!==oA1.columns)oA1={rows:X,columns:Y};return oA1}function La5(X){return process.stdout.on("resize",X),()=>{process.stdout.off("resize",X)}}function j16(){return Da5(La5,wa5)}var oA1;var M16=w(()=>{oA1={rows:process.stdout.rows||24,columns:process.stdout.columns||80}});import{Box as Ea5,Text as bX1}from"ink";import{useSyncExternalStore as Pa5}from"react";import{jsx as mN0,jsxs as dN0}from"react/jsx-runtime";function qa5(X){if(X>=500)return"red";if(X>=400)return"yellow";if(X>=300)return"cyan";return"green"}function R16({logs:X,headerHeight:Y}){let{rows:G}=j16(),{logFlow:Q}=Pa5(CX1,kX1),J=Math.max(1,G-Y-1),W=Q?X:X.slice(-J);return mN0(Ea5,{flexDirection:"column",children:W.map((Z,$)=>{if(Z.rawLine)return mN0(bX1,{dimColor:!0,children:Z.rawLine},$);let K=Z.duration<1000?`${Z.duration}ms`:`${(Z.duration/1000).toFixed(1)}s`;return dN0(bX1,{children:[dN0(bX1,{dimColor:!0,children:[Z.method.padEnd(6)," ",Z.path.padEnd(30)," "]}),mN0(bX1,{color:qa5(Z.status),children:Z.status}),dN0(bX1,{dimColor:!0,children:[" ",K.padStart(8)]})]},$)})})}var S16=w(()=>{$z();M16()});var cN0={};T0(cN0,{App:()=>Ra5});import{Box as Aa5,Text as Ta5,useInput as Ia5}from"ink";import{useSyncExternalStore as Va5}from"react";import{jsx as sA1,jsxs as Sa5}from"react/jsx-runtime";function Ra5({home:X}){let Y=Va5(CX1,kX1);return Ia5((G)=>{if(G==="k"||G==="K")vN0();if(G==="l"||G==="L")_N0();if((G==="v"||G==="V")&&Y.dataDir)bt1(Y.dataDir),fN0();if((G==="n"||G==="N")&&Y.vibe)ft1()}),Sa5(Aa5,{flexDirection:"column",children:[sA1(I16,{services:Y.services,migrationsStatus:Y.migrationsStatus,home:X,serverUrl:Y.serverUrl,vibe:Y.vibe}),Y.viewMode==="config"?Y.env?sA1(E16,{env:Y.env}):sA1(Ta5,{dimColor:!0,children:"Loading configuration..."}):sA1(R16,{logs:Y.logs,headerHeight:Y.vibe?Ma5:ja5})]})}var ja5=15,Ma5=19;var iN0=w(()=>{P16();V16();S16();$z();fd()});function k16(X,Y={}){return{PORT:String(X.port),NODE_ENV:X.nodeEnv,BASE_URL:X.baseUrl,DATA_DIR:X.dataDir,DECOCMS_HOME:X.dataDir,DATABASE_URL:X.databaseUrl,DATABASE_PG_SSL:String(X.databasePgSsl),DATABASE_POOL_MAX:String(X.databasePoolMax),NATS_URL:X.natsUrls.join(","),BETTER_AUTH_SECRET:X.betterAuthSecret,ENCRYPTION_KEY:X.encryptionKey,MESH_JWT_SECRET:X.meshJwtSecret,DECOCMS_LOCAL_MODE:String(X.localMode),DISABLE_RATE_LIMIT:String(X.disableRateLimit),STUDIO_PROVISION_SECRET_KEY:X.studioProvisionSecretKey,CONFIG_PATH:X.configPath,...Object.fromEntries(Object.entries(process.env).filter(([G])=>G.startsWith("AUTH_"))),DECO_AI_GATEWAY_ENABLED:String(X.aiGatewayEnabled),DECO_AI_GATEWAY_URL:X.aiGatewayUrl,ENABLE_DECO_IMPORT:String(X.enableDecoImport),S3_ENDPOINT:X.s3Endpoint,S3_BUCKET:X.s3Bucket,S3_REGION:X.s3Region,S3_ACCESS_KEY_ID:X.s3AccessKeyId,S3_SECRET_ACCESS_KEY:X.s3SecretAccessKey,S3_FORCE_PATH_STYLE:String(X.s3ForcePathStyle),OTEL_SERVICE_NAME:X.otelServiceName,CLICKHOUSE_URL:X.clickhouseUrl,OTEL_EXPORTER_OTLP_ENDPOINT:process.env.OTEL_EXPORTER_OTLP_ENDPOINT,OTEL_EXPORTER_OTLP_PROTOCOL:process.env.OTEL_EXPORTER_OTLP_PROTOCOL,OTEL_RESOURCE_ATTRIBUTES:process.env.OTEL_RESOURCE_ATTRIBUTES,DECO_SUPABASE_URL:X.decoSupabaseUrl,DECO_SUPABASE_SERVICE_KEY:X.decoSupabaseServiceKey,FIRECRAWL_API_KEY:X.firecrawlApiKey,STUDIO_SANDBOX_RUNNER:process.env.STUDIO_SANDBOX_RUNNER,STUDIO_SANDBOX_TEMPLATE_NAME:process.env.STUDIO_SANDBOX_TEMPLATE_NAME,STUDIO_ENV:process.env.STUDIO_ENV,STUDIO_SANDBOX_PREVIEW_URL_PATTERN:process.env.STUDIO_SANDBOX_PREVIEW_URL_PATTERN,STUDIO_SANDBOX_PREVIEW_GATEWAY_NAME:process.env.STUDIO_SANDBOX_PREVIEW_GATEWAY_NAME,STUDIO_SANDBOX_PREVIEW_GATEWAY_NAMESPACE:process.env.STUDIO_SANDBOX_PREVIEW_GATEWAY_NAMESPACE,STUDIO_SANDBOX_SENTINEL_TOKEN:process.env.STUDIO_SANDBOX_SENTINEL_TOKEN,KUBERNETES_SERVICE_HOST:process.env.KUBERNETES_SERVICE_HOST,KUBERNETES_SERVICE_PORT:process.env.KUBERNETES_SERVICE_PORT,FREESTYLE_API_KEY:process.env.FREESTYLE_API_KEY,BROWSERLESS_TOKEN:process.env.BROWSERLESS_TOKEN,NODE_EXTRA_CA_CERTS:process.env.NODE_EXTRA_CA_CERTS,DECO_CLI:"1",DECO_NO_TUI:"true",...Y}}var yj=k((ba5)=>{ba5.HttpAuthLocation=void 0;(function(X){X.HEADER="header",X.QUERY="query"})(ba5.HttpAuthLocation||(ba5.HttpAuthLocation={}));ba5.HttpApiKeyAuthLocation=void 0;(function(X){X.HEADER="header",X.QUERY="query"})(ba5.HttpApiKeyAuthLocation||(ba5.HttpApiKeyAuthLocation={}));ba5.EndpointURLScheme=void 0;(function(X){X.HTTP="http",X.HTTPS="https"})(ba5.EndpointURLScheme||(ba5.EndpointURLScheme={}));ba5.AlgorithmId=void 0;(function(X){X.MD5="md5",X.CRC32="crc32",X.CRC32C="crc32c",X.SHA1="sha1",X.SHA256="sha256"})(ba5.AlgorithmId||(ba5.AlgorithmId={}));var ka5=(X)=>{let Y=[];if(X.sha256!==void 0)Y.push({algorithmId:()=>ba5.AlgorithmId.SHA256,checksumConstructor:()=>X.sha256});if(X.md5!=null)Y.push({algorithmId:()=>ba5.AlgorithmId.MD5,checksumConstructor:()=>X.md5});return{addChecksumAlgorithm(G){Y.push(G)},checksumAlgorithms(){return Y}}},Ca5=(X)=>{let Y={};return X.checksumAlgorithms().forEach((G)=>{Y[G.algorithmId()]=G.checksumConstructor()}),Y},va5=(X)=>{return ka5(X)},_a5=(X)=>{return Ca5(X)};ba5.FieldPosition=void 0;(function(X){X[X.HEADER=0]="HEADER",X[X.TRAILER=1]="TRAILER"})(ba5.FieldPosition||(ba5.FieldPosition={}));var fa5="__smithy_context";ba5.IniSectionType=void 0;(function(X){X.PROFILE="profile",X.SSO_SESSION="sso-session",X.SERVICES="services"})(ba5.IniSectionType||(ba5.IniSectionType={}));ba5.RequestHandlerProtocol=void 0;(function(X){X.HTTP_0_9="http/0.9",X.HTTP_1_0="http/1.0",X.TDS_8_0="tds/8.0"})(ba5.RequestHandlerProtocol||(ba5.RequestHandlerProtocol={}));ba5.SMITHY_CONTEXT_KEY=fa5;ba5.getDefaultClientConfiguration=va5;ba5.resolveDefaultRuntimeConfig=_a5});var u7=k((ca5)=>{var ga5=yj(),ua5=(X)=>{return{setHttpHandler(Y){X.httpHandler=Y},httpHandler(){return X.httpHandler},updateHttpClientConfig(Y,G){X.httpHandler?.updateHttpClientConfig(Y,G)},httpHandlerConfigs(){return X.httpHandler.httpHandlerConfigs()}}},la5=(X)=>{return{httpHandler:X.httpHandler()}};class C16{name;kind;values;constructor({name:X,kind:Y=ga5.FieldPosition.HEADER,values:G=[]}){this.name=X,this.kind=Y,this.values=G}add(X){this.values.push(X)}set(X){this.values=X}remove(X){this.values=this.values.filter((Y)=>Y!==X)}toString(){return this.values.map((X)=>X.includes(",")||X.includes(" ")?`"${X}"`:X).join(", ")}get(){return this.values}}class v16{entries={};encoding;constructor({fields:X=[],encoding:Y="utf-8"}){X.forEach(this.setField.bind(this)),this.encoding=Y}setField(X){this.entries[X.name.toLowerCase()]=X}getField(X){return this.entries[X.toLowerCase()]}removeField(X){delete this.entries[X.toLowerCase()]}getByType(X){return Object.values(this.entries).filter((Y)=>Y.kind===X)}}class eA1{method;protocol;hostname;port;path;query;headers;username;password;fragment;body;constructor(X){this.method=X.method||"GET",this.hostname=X.hostname||"localhost",this.port=X.port,this.query=X.query||{},this.headers=X.headers||{},this.body=X.body,this.protocol=X.protocol?X.protocol.slice(-1)!==":"?`${X.protocol}:`:X.protocol:"https:",this.path=X.path?X.path.charAt(0)!=="/"?`/${X.path}`:X.path:"/",this.username=X.username,this.password=X.password,this.fragment=X.fragment}static clone(X){let Y=new eA1({...X,headers:{...X.headers}});if(Y.query)Y.query=ma5(Y.query);return Y}static isInstance(X){if(!X)return!1;let Y=X;return"method"in Y&&"protocol"in Y&&"hostname"in Y&&"path"in Y&&typeof Y.query==="object"&&typeof Y.headers==="object"}clone(){return eA1.clone(this)}}function ma5(X){return Object.keys(X).reduce((Y,G)=>{let Q=X[G];return{...Y,[G]:Array.isArray(Q)?[...Q]:Q}},{})}class _16{statusCode;reason;headers;body;constructor(X){this.statusCode=X.statusCode,this.reason=X.reason,this.headers=X.headers||{},this.body=X.body}static isInstance(X){if(!X)return!1;let Y=X;return typeof Y.statusCode==="number"&&typeof Y.headers==="object"}}function da5(X){return/^[a-z0-9][a-z0-9\.\-]*[a-z0-9]$/.test(X)}ca5.Field=C16;ca5.Fields=v16;ca5.HttpRequest=eA1;ca5.HttpResponse=_16;ca5.getHttpHandlerExtensionConfiguration=ua5;ca5.isValidHostname=da5;ca5.resolveHttpHandlerRuntimeConfig=la5});function sa5(X){return(Y)=>async(G)=>{let{request:Q}=G;if(X.expectContinueHeader!==!1&&f16.HttpRequest.isInstance(Q)&&Q.body&&X.runtime==="node"&&X.requestHandler?.constructor?.name!=="FetchHttpHandler"){let J=!0;if(typeof X.expectContinueHeader==="number")try{J=(Number(Q.headers?.["content-length"])??X.bodyLengthChecker?.(Q.body)??1/0)>=X.expectContinueHeader}catch(W){}else J=!!X.expectContinueHeader;if(J)Q.headers.Expect="100-continue"}return Y({...G,request:Q})}}var f16,ea5,b16=(X)=>({applyToStack:(Y)=>{Y.add(sa5(X),ea5)}});var y16=w(()=>{f16=X1(u7(),1);ea5={step:"build",tags:["SET_EXPECT_HEADER","EXPECT_HEADER"],name:"addExpectContinueMiddleware",override:!0}});var wH,XT1,xj,YT1,E9,x16,xX1;var LH=w(()=>{wH={WHEN_SUPPORTED:"WHEN_SUPPORTED",WHEN_REQUIRED:"WHEN_REQUIRED"},XT1=wH.WHEN_SUPPORTED,xj={WHEN_SUPPORTED:"WHEN_SUPPORTED",WHEN_REQUIRED:"WHEN_REQUIRED"},YT1=wH.WHEN_SUPPORTED;(function(X){X.MD5="MD5",X.CRC32="CRC32",X.CRC32C="CRC32C",X.CRC64NVME="CRC64NVME",X.SHA1="SHA1",X.SHA256="SHA256"})(E9||(E9={}));(function(X){X.HEADER="header",X.TRAILER="trailer"})(x16||(x16={}));xX1=E9.CRC32});var kq,Ga=(X,Y,G,Q)=>{if(!(Y in X))return;let J=X[Y].toUpperCase();if(!Object.values(G).includes(J))throw TypeError(`Cannot load ${Q} '${Y}'. Expected one of ${Object.values(G)}, got '${X[Y]}'.`);return J};var sN0=w(()=>{(function(X){X.ENV="env",X.CONFIG="shared config entry"})(kq||(kq={}))});var Xr5="AWS_REQUEST_CHECKSUM_CALCULATION",Yr5="request_checksum_calculation",h16;var g16=w(()=>{LH();sN0();h16={environmentVariableSelector:(X)=>Ga(X,Xr5,wH,kq.ENV),configFileSelector:(X)=>Ga(X,Yr5,wH,kq.CONFIG),default:XT1}});var Gr5="AWS_RESPONSE_CHECKSUM_VALIDATION",Qr5="response_checksum_validation",u16;var l16=w(()=>{LH();sN0();u16={environmentVariableSelector:(X)=>Ga(X,Gr5,xj,kq.ENV),configFileSelector:(X)=>Ga(X,Qr5,xj,kq.CONFIG),default:YT1}});var Xz0=k((Nr5)=>{var Jr5=["AuthFailure","InvalidSignatureException","RequestExpired","RequestInTheFuture","RequestTimeTooSkewed","SignatureDoesNotMatch"],Zr5=["BandwidthLimitExceeded","EC2ThrottledException","LimitExceededException","PriorRequestNotComplete","ProvisionedThroughputExceededException","RequestLimitExceeded","RequestThrottled","RequestThrottledException","SlowDown","ThrottledException","Throttling","ThrottlingException","TooManyRequestsException","TransactionInProgressException"],Wr5=["TimeoutError","RequestTimeout","RequestTimeoutException"],$r5=[500,502,503,504],Kr5=["ECONNRESET","ECONNREFUSED","EPIPE","ETIMEDOUT"],Hr5=["EHOSTUNREACH","ENETUNREACH","ENOTFOUND"],m16=(X)=>X?.$retryable!==void 0,Fr5=(X)=>Jr5.includes(X.name),d16=(X)=>X.$metadata?.clockSkewCorrected,c16=(X)=>{let Y=new Set(["Failed to fetch","NetworkError when attempting to fetch resource","The Internet connection appears to be offline","Load failed","Network request failed"]);if(!(X&&X instanceof TypeError))return!1;return Y.has(X.message)},Ur5=(X)=>X.$metadata?.httpStatusCode===429||Zr5.includes(X.name)||X.$retryable?.throttling==!0,eN0=(X,Y=0)=>m16(X)||d16(X)||X.name==="InvalidSignatureException"&&X.message?.includes("Signature expired")||Wr5.includes(X.name)||Kr5.includes(X?.code||"")||Hr5.includes(X?.code||"")||$r5.includes(X.$metadata?.httpStatusCode||0)||c16(X)||i16(X)||X.cause!==void 0&&Y<=10&&eN0(X.cause,Y+1),Br5=(X)=>{if(X.$metadata?.httpStatusCode!==void 0){let Y=X.$metadata.httpStatusCode;if(500<=Y&&Y<=599&&!eN0(X))return!0;return!1}return!1};function i16(X){return X.code==="ERR_HTTP2_STREAM_ERROR"&&X.message.includes("NGHTTP2_REFUSED_STREAM")}Nr5.isBrowserNetworkError=c16;Nr5.isClockSkewCorrectedError=d16;Nr5.isClockSkewError=Fr5;Nr5.isNodeJsHttp2TransientError=i16;Nr5.isRetryableByTrait=m16;Nr5.isServerError=Br5;Nr5.isThrottlingError=Ur5;Nr5.isTransientError=eN0});var Dw=k((kr5)=>{var Ar5=Xz0();kr5.RETRY_MODES=void 0;(function(X){X.STANDARD="standard",X.ADAPTIVE="adaptive"})(kr5.RETRY_MODES||(kr5.RETRY_MODES={}));var QT1=3,Tr5=kr5.RETRY_MODES.STANDARD;class JT1{static setTimeoutFn=setTimeout;beta;minCapacity;minFillRate;scaleConstant;smooth;enabled=!1;availableTokens=0;lastMaxRate=0;measuredTxRate=0;requestCount=0;fillRate;lastThrottleTime;lastTimestamp=0;lastTxRateBucket;maxCapacity;timeWindow=0;constructor(X){this.beta=X?.beta??0.7,this.minCapacity=X?.minCapacity??1,this.minFillRate=X?.minFillRate??0.5,this.scaleConstant=X?.scaleConstant??0.4,this.smooth=X?.smooth??0.8,this.lastThrottleTime=this.getCurrentTimeInSeconds(),this.lastTxRateBucket=Math.floor(this.getCurrentTimeInSeconds()),this.fillRate=this.minFillRate,this.maxCapacity=this.minCapacity}async getSendToken(){return this.acquireTokenBucket(1)}updateClientSendingRate(X){let Y;this.updateMeasuredRate();let G=X;if(G?.errorType==="THROTTLING"||Ar5.isThrottlingError(G?.error??X)){let W=!this.enabled?this.measuredTxRate:Math.min(this.measuredTxRate,this.fillRate);this.lastMaxRate=W,this.calculateTimeWindow(),this.lastThrottleTime=this.getCurrentTimeInSeconds(),Y=this.cubicThrottle(W),this.enableTokenBucket()}else this.calculateTimeWindow(),Y=this.cubicSuccess(this.getCurrentTimeInSeconds());let J=Math.min(Y,2*this.measuredTxRate);this.updateTokenBucketRate(J)}getCurrentTimeInSeconds(){return Date.now()/1000}async acquireTokenBucket(X){if(!this.enabled)return;if(this.refillTokenBucket(),X>this.availableTokens){let Y=(X-this.availableTokens)/this.fillRate*1000;await new Promise((G)=>JT1.setTimeoutFn(G,Y))}this.availableTokens=this.availableTokens-X}refillTokenBucket(){let X=this.getCurrentTimeInSeconds();if(!this.lastTimestamp){this.lastTimestamp=X;return}let Y=(X-this.lastTimestamp)*this.fillRate;this.availableTokens=Math.min(this.maxCapacity,this.availableTokens+Y),this.lastTimestamp=X}calculateTimeWindow(){this.timeWindow=this.getPrecise(Math.pow(this.lastMaxRate*(1-this.beta)/this.scaleConstant,0.3333333333333333))}cubicThrottle(X){return this.getPrecise(X*this.beta)}cubicSuccess(X){return this.getPrecise(this.scaleConstant*Math.pow(X-this.lastThrottleTime-this.timeWindow,3)+this.lastMaxRate)}enableTokenBucket(){this.enabled=!0}updateTokenBucketRate(X){this.refillTokenBucket(),this.fillRate=Math.max(X,this.minFillRate),this.maxCapacity=Math.max(X,this.minCapacity),this.availableTokens=Math.min(this.availableTokens,this.maxCapacity)}updateMeasuredRate(){let X=this.getCurrentTimeInSeconds(),Y=Math.floor(X*2)/2;if(this.requestCount++,Y>this.lastTxRateBucket){let G=this.requestCount/(Y-this.lastTxRateBucket);this.measuredTxRate=this.getPrecise(G*this.smooth+this.measuredTxRate*(1-this.smooth)),this.requestCount=0,this.lastTxRateBucket=Y}}getPrecise(X){return parseFloat(X.toFixed(8))}}var Ir5=100,Qz0=20000,Vr5=500,Yz0=500,jr5=5,Mr5=10,p16=1,Rr5="amz-sdk-invocation-id",Sr5="amz-sdk-request";class eQ{static v2026=typeof process<"u"&&process.env?.SMITHY_NEW_RETRIES_2026==="true";static delay(){return eQ.v2026?50:100}static throttlingDelay(){return eQ.v2026?1000:500}static cost(){return eQ.v2026?14:5}static throttlingCost(){return eQ.v2026?5:10}static modifiedCostType(){return eQ.v2026?"THROTTLING":"TRANSIENT"}}class n16{x=eQ.delay();computeNextBackoffDelay(X){let Y=Math.random(),G=2,Q=Y*Math.min(this.x*2**X,Qz0);return Math.floor(Q)}setDelayBase(X){this.x=X}}class Gz0{delay;count;cost;longPoll;constructor(X,Y,G,Q){this.delay=X,this.count=Y,this.cost=G,this.longPoll=Q}getRetryCount(){return this.count}getRetryDelay(){return Math.min(Qz0,this.delay)}getRetryCost(){return this.cost}isLongPoll(){return this.longPoll}}var GT1={incompatible:1,attempts:2,capacity:3};class hX1{mode=kr5.RETRY_MODES.STANDARD;capacity=Yz0;retryBackoffStrategy;maxAttemptsProvider;baseDelay;constructor(X){if(typeof X==="number")this.maxAttemptsProvider=async()=>X;else if(typeof X==="function")this.maxAttemptsProvider=X;else if(X&&typeof X==="object")this.maxAttemptsProvider=async()=>X.maxAttempts,this.baseDelay=X.baseDelay,this.retryBackoffStrategy=X.backoff;this.maxAttemptsProvider??=async()=>QT1,this.baseDelay??=eQ.delay(),this.retryBackoffStrategy??=new n16}async acquireInitialRetryToken(X){return new Gz0(eQ.delay(),0,void 0,eQ.v2026&&X.includes(":longpoll"))}async refreshRetryTokenForRetry(X,Y){let G=await this.getMaxAttempts(),Q=this.retryCode(X,Y,G),J=Q===0,W=X.isLongPoll?.();if(J||W){let Z=Y.errorType;this.retryBackoffStrategy.setDelayBase(Z==="THROTTLING"?eQ.throttlingDelay():this.baseDelay);let $=this.retryBackoffStrategy.computeNextBackoffDelay(X.getRetryCount()),K=$;if(Y.retryAfterHint instanceof Date)K=Math.max($,Math.min(Y.retryAfterHint.getTime()-Date.now(),$+5000));if(!J)throw Object.assign(Error("No retry token available"),{$backoff:eQ.v2026&&Q===GT1.capacity&&W?K:0});else{let H=this.getCapacityCost(Z);return this.capacity-=H,new Gz0(K,X.getRetryCount()+1,H,X.isLongPoll?.()??!1)}}throw Error("No retry token available")}recordSuccess(X){this.capacity=Math.min(Yz0,this.capacity+(X.getRetryCost()??p16))}getCapacity(){return this.capacity}async maxAttempts(){return this.maxAttemptsProvider()}async getMaxAttempts(){try{return await this.maxAttemptsProvider()}catch(X){return console.warn(`Max attempts provider could not resolve. Using default of ${QT1}`),QT1}}retryCode(X,Y,G){let Q=X.getRetryCount()+1,J=this.isRetryableError(Y.errorType)?0:GT1.incompatible,W=Q<G?0:GT1.attempts,Z=this.capacity>=this.getCapacityCost(Y.errorType)?0:GT1.capacity;return J||W||Z}getCapacityCost(X){return X===eQ.modifiedCostType()?eQ.throttlingCost():eQ.cost()}isRetryableError(X){return X==="THROTTLING"||X==="TRANSIENT"}}class t16{mode=kr5.RETRY_MODES.ADAPTIVE;rateLimiter;standardRetryStrategy;constructor(X,Y){let{rateLimiter:G}=Y??{};this.rateLimiter=G??new JT1,this.standardRetryStrategy=Y?new hX1({maxAttempts:typeof X==="number"?X:3,...Y}):new hX1(X)}async acquireInitialRetryToken(X){return await this.rateLimiter.getSendToken(),this.standardRetryStrategy.acquireInitialRetryToken(X)}async refreshRetryTokenForRetry(X,Y){return this.rateLimiter.updateClientSendingRate(Y),this.standardRetryStrategy.refreshRetryTokenForRetry(X,Y)}recordSuccess(X){this.rateLimiter.updateClientSendingRate({}),this.standardRetryStrategy.recordSuccess(X)}async maxAttemptsProvider(){return this.standardRetryStrategy.maxAttempts()}}class a16 extends hX1{computeNextBackoffDelay;constructor(X,Y=eQ.delay()){super(typeof X==="function"?X:async()=>X);if(typeof Y==="number")this.computeNextBackoffDelay=()=>Y;else this.computeNextBackoffDelay=Y}async refreshRetryTokenForRetry(X,Y){let G=await super.refreshRetryTokenForRetry(X,Y);return G.getRetryDelay=()=>this.computeNextBackoffDelay(G.getRetryCount()),G}}kr5.AdaptiveRetryStrategy=t16;kr5.ConfiguredRetryStrategy=a16;kr5.DEFAULT_MAX_ATTEMPTS=QT1;kr5.DEFAULT_RETRY_DELAY_BASE=Ir5;kr5.DEFAULT_RETRY_MODE=Tr5;kr5.DefaultRateLimiter=JT1;kr5.INITIAL_RETRY_TOKENS=Yz0;kr5.INVOCATION_ID_HEADER=Rr5;kr5.MAXIMUM_RETRY_DELAY=Qz0;kr5.NO_RETRY_INCREMENT=p16;kr5.REQUEST_HEADER=Sr5;kr5.RETRY_COST=jr5;kr5.Retry=eQ;kr5.StandardRetryStrategy=hX1;kr5.THROTTLING_RETRY_DELAY_BASE=Vr5;kr5.TIMEOUT_RETRY_COST=Mr5});var WX=k((Yo5)=>{var nr5=Dw(),Jz0={warningEmitted:!1},tr5=(X)=>{if(X&&!Jz0.warningEmitted&&parseInt(X.substring(1,X.indexOf(".")))<20)Jz0.warningEmitted=!0,process.emitWarning(`NodeDeprecationWarning: The AWS SDK for JavaScript (v3) will
1646
+ `);Q=W.pop()??"";for(let Z of W){let $=O16(Z).replace(/^\[\d+\]\s*/,"").trim();if(!$)continue;Wz({method:"",path:"",status:0,duration:0,timestamp:new Date,rawLine:$})}}(async()=>{for(;;){let{done:W,value:Z}=await Y.read();if(W)break;Q+=G.decode(Z,{stream:!0}),J()}if(Q.trim()){let W=O16(Q).replace(/^\[\d+\]\s*/,"").trim();if(W)Wz({method:"",path:"",status:0,duration:0,timestamp:new Date,rawLine:W})}})()}async function Ja5(X){let{vitePort:Y,baseUrl:G,noTui:Q}=X,J=await aA1(Number(X.port)),{settings:W,services:Z,managedServiceNames:$}=await iA1({port:String(J),home:X.home,baseUrl:X.baseUrl,localMode:X.localMode,skipMigrations:X.skipMigrations,noTui:X.noTui,vitePort:X.vitePort});for(let z of Z)Ya({name:z.name,status:"ready",port:z.port});fX1(W),vX1();let K=Qa5(import.meta.dir,"..","..","..","..",".."),H=Q===!0,U=Bun.spawn(["bun","run","--cwd=apps/mesh","dev:servers"],{cwd:K,env:{...process.env,PORT:String(W.port),VITE_PORT:String(Y),DATABASE_URL:W.databaseUrl,NATS_URL:W.natsUrls.join(","),NODE_ENV:W.nodeEnv,DECOCMS_LOCAL_MODE:String(W.localMode),DECOCMS_HOME:W.dataDir,DATA_DIR:W.dataDir,DECO_CLI:"1",...W.baseUrl?{BASE_URL:W.baseUrl}:{}},stdio:["inherit",H?"inherit":"pipe",H?"inherit":"pipe"]});if(!H)D16(U.stdout),D16(U.stderr);let B=G||`http://localhost:${W.port}`;_X1(B),Ya({name:"Vite",status:"ready",port:Number(Y)});let N=async(z)=>{if(U.kill(z),$.length>0){let{stopServices:O}=await Promise.resolve().then(() => (l$1(),u$1));await O(W.dataDir)}};return process.on("SIGINT",()=>N("SIGINT")),process.on("SIGTERM",()=>N("SIGTERM")),{port:Number(W.port),process:U}}var xN0=w(()=>{kN0();$z();bN0()});import{Box as hN0,Text as gN0}from"ink";import{jsx as L16,jsxs as rA1}from"react/jsx-runtime";function w16(X){if(!X)return"not set";try{let Y=new URL(X);if(Y.password)Y.password="***";if(Y.username&&Y.username.length>3)Y.username=Y.username.slice(0,3)+"***";return Y.pathname="/",Y.search="",Y.hash="",Y.toString()}catch{if(X.length<=10)return X;return X.slice(0,6)+"***"+X.slice(-4)}}function $a5(X,Y){if(Za5.has(X))return Y?{text:"\u25CF\u25CF\u25CF\u25CF\u25CF\u25CF",dimColor:!0}:{text:"not set",dimColor:!0};if(Wa5.has(X)){if(Array.isArray(Y)){if(Y.length===0)return{text:"not set",dimColor:!0};return{text:Y.map((W)=>w16(W)).join(", "),color:"cyan"}}let Q=w16(Y);return Q==="not set"?{text:Q,dimColor:!0}:{text:Q,color:"cyan"}}if(Y===void 0||Y===null||Y==="")return{text:"not set",dimColor:!0};let G=String(Y);if(G==="true")return{text:G,color:"green"};if(G==="false")return{text:G,color:"yellow"};try{return new URL(G),{text:G,color:"cyan"}}catch{return{text:G}}}function Ka5(X){return[{title:"Core",entries:[{key:"NODE_ENV",value:X.nodeEnv},{key:"PORT",value:X.port},{key:"BASE_URL",value:X.baseUrl??`http://localhost:${X.port}`},{key:"DATA_DIR",value:X.dataDir}]},{title:"Database",entries:[{key:"DATABASE_URL",value:X.databaseUrl},{key:"DATABASE_PG_SSL",value:X.databasePgSsl}]},{title:"Auth & Secrets",entries:[{key:"BETTER_AUTH_SECRET",value:X.betterAuthSecret},{key:"ENCRYPTION_KEY",value:X.encryptionKey},{key:"MESH_JWT_SECRET",value:X.meshJwtSecret},{key:"STUDIO_PROVISION_SECRET_KEY",value:X.studioProvisionSecretKey},{key:"DISABLE_RATE_LIMIT",value:X.disableRateLimit}]},{title:"Auth Providers",entries:[{key:"AUTH_EMAIL_PASSWORD_ENABLED",value:process.env.AUTH_EMAIL_PASSWORD_ENABLED??"true"},{key:"AUTH_GOOGLE_CLIENT_ID",value:!!process.env.AUTH_GOOGLE_CLIENT_ID},{key:"AUTH_GITHUB_CLIENT_ID",value:!!process.env.AUTH_GITHUB_CLIENT_ID},{key:"AUTH_RESEND_API_KEY",value:!!process.env.AUTH_RESEND_API_KEY},{key:"AUTH_SENDGRID_API_KEY",value:!!process.env.AUTH_SENDGRID_API_KEY},{key:"AUTH_SSO_MS_CLIENT_ID",value:!!process.env.AUTH_SSO_MS_CLIENT_ID},{key:"AUTH_SSO_GOOGLE_CLIENT_ID",value:!!process.env.AUTH_SSO_GOOGLE_CLIENT_ID},{key:"AUTH_MAGIC_LINK_ENABLED",value:process.env.AUTH_MAGIC_LINK_ENABLED==="true"},{key:"AUTH_EMAIL_OTP_ENABLED",value:process.env.AUTH_EMAIL_OTP_ENABLED==="true"}]},{title:"Observability",entries:[{key:"CLICKHOUSE_URL",value:X.clickhouseUrl},{key:"OTEL_SERVICE_NAME",value:X.otelServiceName}]},{title:"Event Bus & Networking",entries:[{key:"NATS_URL",value:X.natsUrls}]},{title:"Config Files",entries:[{key:"CONFIG_PATH",value:X.configPath}]},{title:"AI Gateway",entries:[{key:"DECO_AI_GATEWAY_ENABLED",value:X.aiGatewayEnabled},{key:"DECO_AI_GATEWAY_URL",value:X.aiGatewayUrl}]}]}function E16({env:X}){let Y=Ka5(X);return L16(hN0,{flexDirection:"column",children:Y.map((G)=>rA1(hN0,{flexDirection:"column",marginTop:1,children:[rA1(gN0,{dimColor:!0,children:[" ","\u2500\u2500 ",G.title," ","\u2500".repeat(Math.max(0,38-G.title.length))]}),G.entries.map(({key:Q,value:J})=>{let W=$a5(Q,J);return rA1(hN0,{children:[rA1(gN0,{dimColor:!0,children:[" ",Q.padEnd(36)]}),L16(gN0,{color:W.color,dimColor:W.dimColor,children:W.text})]},Q)})]},G.title))})}var Za5,Wa5;var P16=w(()=>{Za5=new Set(["BETTER_AUTH_SECRET","ENCRYPTION_KEY","MESH_JWT_SECRET","STUDIO_PROVISION_SECRET_KEY"]),Wa5=new Set(["DATABASE_URL","CLICKHOUSE_URL","NATS_URL"])});var uN0;var q16=w(()=>{uN0={name:"decocms",version:"2.311.2",description:"Deco CMS \u2014 Self-hostable MCP Gateway for managing AI connections and tools",author:"Deco team",repository:{type:"git",url:"git+https://github.com/decocms/studio.git",directory:"apps/mesh"},bugs:{url:"https://github.com/decocms/studio/issues"},type:"module",bin:{deco:"./dist/server/cli.js"},files:["dist/**/*"],scripts:{dev:'bun run migrate && concurrently "bun run dev:client" "bun run dev:server"',"dev:servers":'concurrently "bun run dev:client" "bun run dev:server"',"dev:client":"bun --bun vite dev","dev:server":"bun run --cwd=../../packages/sandbox build && NODE_ENV=development bun --env-file=.env --hot run src/index.ts","build:client":"bun --bun vite build","build:server":"bun run scripts/bundle-server-script.ts --dist ./dist/server","db:migrate":"bun run ./dist/server/migrate.js",check:"tsc --noEmit",start:"bun run ./dist/server/server.js",migrate:"bun run src/database/migrate.ts",test:"bun test","test:e2e":"playwright test","test:e2e:ui":"playwright test --ui","better-auth:migrate":"bunx --bun @better-auth/cli migrate -y --config src/auth/index.ts",prepublishOnly:"bun run build:client && bun run build:server"},optionalDependencies:{"@duckdb/node-api":"^1.5.0-r.1","@freestyle-sh/with-bun":"^0.2.12","@freestyle-sh/with-deno":"^0.0.4","@freestyle-sh/with-nodejs":"^0.2.9","freestyle-sandboxes":"^0.1.46"},dependencies:{"@ai-sdk/anthropic":"^3.0.58","@ai-sdk/google":"^3.0.60","@ai-sdk/openai":"^3.0.50","@anthropic-ai/sdk":"^0.79.0","@aws-sdk/client-s3":"^3.1013.0","@aws-sdk/s3-request-presigner":"^3.1013.0","@clickhouse/client":"^1.8.1","@deco-cx/warp-node":"^0.3.20","@dnd-kit/core":"^6.3.1","@dnd-kit/sortable":"^10.0.0","@dnd-kit/utilities":"^3.2.2","@inkjs/ui":"^2.0.0","@modelcontextprotocol/ext-apps":"^1.2.2","@openrouter/ai-sdk-provider":"^2.2.5","@opentelemetry/core":"^2.6.0","@tanstack/react-virtual":"^3.13.21","@xterm/addon-fit":"^0.11.0","@xterm/xterm":"^6.0.0","ai-sdk-provider-claude-code":"^3.4.4","ai-sdk-provider-codex-cli":"^1.1.0","embedded-postgres":"^18.3.0-beta.16",ink:"^6.8.0",kysely:"^0.28.12",nats:"^2.29.3","node-pty":"^1.0.0","posthog-js":"^1.371.1","posthog-node":"^5.0.0",react:"^19.2.0","react-dom":"^19.2.0"},devDependencies:{"@ai-sdk/provider":"^3.0.8","@ai-sdk/react":"^3.0.118","@anthropic-ai/claude-agent-sdk":"^0.2.80","@better-auth/sso":"1.4.1","@daveyplate/better-auth-ui":"^3.2.7","@deco/ui":"workspace:*","@decocms/better-auth":"1.5.17","@decocms/bindings":"workspace:*","@decocms/mcp-utils":"workspace:*","@decocms/mesh-sdk":"workspace:*","@decocms/runtime":"workspace:*","@decocms/vite-plugin":"workspace:*","@electric-sql/pglite":"^0.3.15","@floating-ui/react":"^0.27.16","@hookform/resolvers":"^5.2.2","@jitl/quickjs-wasmfile-release-sync":"0.31.0","@modelcontextprotocol/sdk":"1.27.1","@monaco-editor/react":"^4.7.0","@opentelemetry/api":"^1.9.0","@opentelemetry/api-logs":"^0.211.0","@opentelemetry/exporter-logs-otlp-proto":"^0.211.0","@opentelemetry/exporter-prometheus":"^0.208.0","@opentelemetry/exporter-trace-otlp-proto":"^0.207.0","@opentelemetry/instrumentation-runtime-node":"^0.24.0","@opentelemetry/sdk-logs":"^0.211.0","@opentelemetry/sdk-metrics":"^2.2.0","@opentelemetry/sdk-node":"^0.207.0","@opentelemetry/sdk-trace-base":"^2.5.0","@playwright/test":"^1.58.2","@radix-ui/react-avatar":"^1.1.10","@radix-ui/react-checkbox":"^1.3.3","@radix-ui/react-dialog":"^1.1.15","@radix-ui/react-dropdown-menu":"^2.1.16","@radix-ui/react-label":"^2.1.7","@radix-ui/react-select":"^2.2.6","@radix-ui/react-separator":"^1.1.7","@radix-ui/react-slot":"^1.2.3","@radix-ui/react-tabs":"^1.1.13","@rjsf/core":"^6.1.2","@rjsf/shadcn":"^6.1.2","@rjsf/utils":"^6.1.2","@rjsf/validator-ajv8":"^6.1.2","@tailwindcss/vite":"^4.1.17","@tanstack/react-query":"5.90.11","@tanstack/react-router":"^1.139.7","@tiptap/core":"3.20.2","@tiptap/extension-mention":"3.20.2","@tiptap/extension-placeholder":"3.20.2","@tiptap/pm":"3.20.2","@tiptap/react":"3.20.2","@tiptap/starter-kit":"3.20.2","@tiptap/suggestion":"3.20.2","@types/bun":"^1.3.1","@types/pg":"^8.15.6","@types/react-syntax-highlighter":"^15.5.13","@untitledui/icons":"^0.0.19","@vercel/nft":"^1.1.1","@vitejs/plugin-react":"^5.1.0",ai:"^6.0.116","babel-plugin-react-compiler":"^1.0.0","better-auth":"1.4.5","class-variance-authority":"^0.7.1",clsx:"^2.1.1",concurrently:"^9.2.1",croner:"^9.1.0","date-fns":"^4.1.0",degit:"^2.8.4",hono:"^4.10.7","input-otp":"^1.4.2",jose:"^6.0.11","kysely-pglite":"^0.6.1","lucide-react":"^0.468.0",marked:"^15.0.6","@decocms/sandbox":"workspace:*","mesh-plugin-workflows":"workspace:*",nanoid:"^5.1.6",pg:"^8.16.3",prettier:"^3.4.2","react-hook-form":"^7.66.0","react-markdown":"^10.1.0","react-resizable-panels":"^2.1.7","react-syntax-highlighter":"^15.6.1",recharts:"^3.6.0","rehype-raw":"^7.0.0","remark-gfm":"^4.0.0","sass-embedded":"^1.97.2",sonner:"^2.0.7","tailwind-merge":"^3.3.1",tailwindcss:"^4.1.17",typescript:"^5.9.3",vite:"^7.2.1","vite-tsconfig-paths":"^5.1.4",zod:"^4.0.0",zustand:"^5.0.9"},homepage:"https://github.com/decocms/studio",keywords:["mcp","model-context-protocol","ai","gateway","self-hosted","mesh","tools"],license:"MIT",publishConfig:{access:"public"}}});import{Box as IU,Text as RX}from"ink";import{Spinner as Fa5}from"@inkjs/ui";import{useSyncExternalStore as A16}from"react";import{jsx as TY,jsxs as sQ}from"react/jsx-runtime";function Oa5(X,Y){if(!X||!za5.has(X))return X;let G=lN0[Y]??lN0[lN0.length-1];return X==="#875f00"?G[0]:G[1]}function T16({status:X}){if(X==="pending")return TY(Fa5,{label:""});return TY(RX,{color:"green",children:"\u2713"})}function I16({services:X,migrationsStatus:Y,home:G,serverUrl:Q,vibe:J}){let W=A16(mm0,lm0),Z=A16(tm0,nm0);return sQ(IU,{flexDirection:"column",paddingBottom:1,children:[J?sQ(IU,{flexDirection:"column",children:[W.map(($,K)=>{let H=Z[K],U=$.reduce((N,z)=>N+z.text.length,0),B=Math.max(0,Na5-U);return sQ(IU,{flexDirection:"row",children:[$.map((N,z)=>{let O=Oa5(N.color,K);return O?TY(RX,{color:O,children:N.text},z):TY(RX,{children:N.text},z)}),TY(RX,{children:" ".repeat(B+2)}),H?.map((N,z)=>N.color?TY(RX,{color:N.color,children:N.char},z):TY(RX,{children:N.char},z))]},K)}),sQ(RX,{dimColor:!0,children:[" v",uN0.version]})]}):sQ(IU,{flexDirection:"column",marginTop:1,children:[Ua5.map(($,K)=>TY(RX,{color:Ba5[K],children:$},K)),sQ(RX,{dimColor:!0,children:[" v",uN0.version]})]}),TY(IU,{marginBottom:1,children:TY(RX,{dimColor:!0,children:"\u2500".repeat(80)})}),TY(IU,{children:sQ(RX,{dimColor:!0,children:["Home: ",G]})}),sQ(IU,{gap:2,children:[X.map(($)=>sQ(IU,{gap:1,children:[sQ(RX,{children:[$.name," :",$.port||"...."]}),TY(T16,{status:$.status})]},$.name)),sQ(IU,{gap:1,children:[TY(RX,{children:"Migrations"}),TY(T16,{status:Y})]})]}),TY(IU,{children:Q?sQ(RX,{children:["Open in browser: ",TY(RX,{color:"cyan",children:Q})]}):TY(RX,{dimColor:!0,children:"Starting..."})}),sQ(IU,{gap:2,children:[sQ(RX,{dimColor:!0,children:[TY(RX,{bold:!0,dimColor:!0,children:"K"})," ","toggle config"]}),sQ(RX,{dimColor:!0,children:[TY(RX,{bold:!0,dimColor:!0,children:"L"})," ","toggle log flow"]}),sQ(RX,{dimColor:!0,children:[TY(RX,{bold:!0,dimColor:!0,children:"V"})," ","toggle vibe ",J?"\u266A Nihilore \xB7 CC BY 4.0":""]}),J&&sQ(RX,{dimColor:!0,children:[TY(RX,{bold:!0,dimColor:!0,children:"N"})," ","skip song"]})]})]})}var Ua5,Ba5,lN0,Na5=30,za5;var V16=w(()=>{q16();Vt1();Ct1();Ua5=[" \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588\u2588 ","\u2591\u2591\u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2588 \u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588 \u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588 "," \u2591\u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2588 \u2591 \u2588\u2588\u2588 \u2591\u2591\u2591 \u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588"," \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588"," \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588\u2591\u2591\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588"," \u2591\u2588\u2588\u2588 \u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591 \u2588\u2591\u2591\u2588\u2588\u2588 \u2588\u2588\u2588\u2591\u2591\u2588\u2588\u2588 \u2588\u2588\u2588 "," \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2591\u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2591 ","\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 \u2591\u2591\u2591\u2591\u2591\u2591\u2591 "],Ba5=["#00ff64","#00ee5e","#00dc56","#00c84e","#00b444","#00a03c","#008832","#006e28"],lN0=[["#00ff64","#00cc50"],["#00f060","#00c04c"],["#00e05c","#00b448"],["#00d058","#00a844"],["#00c054","#009c40"],["#00b050","#00903c"],["#00a04c","#008438"],["#009048","#007834"],["#008044","#006c30"],["#007040","#00602c"],["#00603c","#005428"]],za5=new Set(["#875f00","#5f3800"])});import{useSyncExternalStore as Da5}from"react";function wa5(){let X=process.stdout.rows||24,Y=process.stdout.columns||80;if(X!==oA1.rows||Y!==oA1.columns)oA1={rows:X,columns:Y};return oA1}function La5(X){return process.stdout.on("resize",X),()=>{process.stdout.off("resize",X)}}function j16(){return Da5(La5,wa5)}var oA1;var M16=w(()=>{oA1={rows:process.stdout.rows||24,columns:process.stdout.columns||80}});import{Box as Ea5,Text as bX1}from"ink";import{useSyncExternalStore as Pa5}from"react";import{jsx as mN0,jsxs as dN0}from"react/jsx-runtime";function qa5(X){if(X>=500)return"red";if(X>=400)return"yellow";if(X>=300)return"cyan";return"green"}function R16({logs:X,headerHeight:Y}){let{rows:G}=j16(),{logFlow:Q}=Pa5(CX1,kX1),J=Math.max(1,G-Y-1),W=Q?X:X.slice(-J);return mN0(Ea5,{flexDirection:"column",children:W.map((Z,$)=>{if(Z.rawLine)return mN0(bX1,{dimColor:!0,children:Z.rawLine},$);let K=Z.duration<1000?`${Z.duration}ms`:`${(Z.duration/1000).toFixed(1)}s`;return dN0(bX1,{children:[dN0(bX1,{dimColor:!0,children:[Z.method.padEnd(6)," ",Z.path.padEnd(30)," "]}),mN0(bX1,{color:qa5(Z.status),children:Z.status}),dN0(bX1,{dimColor:!0,children:[" ",K.padStart(8)]})]},$)})})}var S16=w(()=>{$z();M16()});var cN0={};T0(cN0,{App:()=>Ra5});import{Box as Aa5,Text as Ta5,useInput as Ia5}from"ink";import{useSyncExternalStore as Va5}from"react";import{jsx as sA1,jsxs as Sa5}from"react/jsx-runtime";function Ra5({home:X}){let Y=Va5(CX1,kX1);return Ia5((G)=>{if(G==="k"||G==="K")vN0();if(G==="l"||G==="L")_N0();if((G==="v"||G==="V")&&Y.dataDir)bt1(Y.dataDir),fN0();if((G==="n"||G==="N")&&Y.vibe)ft1()}),Sa5(Aa5,{flexDirection:"column",children:[sA1(I16,{services:Y.services,migrationsStatus:Y.migrationsStatus,home:X,serverUrl:Y.serverUrl,vibe:Y.vibe}),Y.viewMode==="config"?Y.env?sA1(E16,{env:Y.env}):sA1(Ta5,{dimColor:!0,children:"Loading configuration..."}):sA1(R16,{logs:Y.logs,headerHeight:Y.vibe?Ma5:ja5})]})}var ja5=15,Ma5=19;var iN0=w(()=>{P16();V16();S16();$z();fd()});function k16(X,Y={}){return{PORT:String(X.port),NODE_ENV:X.nodeEnv,BASE_URL:X.baseUrl,DATA_DIR:X.dataDir,DECOCMS_HOME:X.dataDir,DATABASE_URL:X.databaseUrl,DATABASE_PG_SSL:String(X.databasePgSsl),DATABASE_POOL_MAX:String(X.databasePoolMax),NATS_URL:X.natsUrls.join(","),BETTER_AUTH_SECRET:X.betterAuthSecret,ENCRYPTION_KEY:X.encryptionKey,MESH_JWT_SECRET:X.meshJwtSecret,DECOCMS_LOCAL_MODE:String(X.localMode),DISABLE_RATE_LIMIT:String(X.disableRateLimit),STUDIO_PROVISION_SECRET_KEY:X.studioProvisionSecretKey,CONFIG_PATH:X.configPath,...Object.fromEntries(Object.entries(process.env).filter(([G])=>G.startsWith("AUTH_"))),DECO_AI_GATEWAY_ENABLED:String(X.aiGatewayEnabled),DECO_AI_GATEWAY_URL:X.aiGatewayUrl,ENABLE_DECO_IMPORT:String(X.enableDecoImport),S3_ENDPOINT:X.s3Endpoint,S3_BUCKET:X.s3Bucket,S3_REGION:X.s3Region,S3_ACCESS_KEY_ID:X.s3AccessKeyId,S3_SECRET_ACCESS_KEY:X.s3SecretAccessKey,S3_FORCE_PATH_STYLE:String(X.s3ForcePathStyle),OTEL_SERVICE_NAME:X.otelServiceName,CLICKHOUSE_URL:X.clickhouseUrl,OTEL_EXPORTER_OTLP_ENDPOINT:process.env.OTEL_EXPORTER_OTLP_ENDPOINT,OTEL_EXPORTER_OTLP_PROTOCOL:process.env.OTEL_EXPORTER_OTLP_PROTOCOL,OTEL_RESOURCE_ATTRIBUTES:process.env.OTEL_RESOURCE_ATTRIBUTES,DECO_SUPABASE_URL:X.decoSupabaseUrl,DECO_SUPABASE_SERVICE_KEY:X.decoSupabaseServiceKey,FIRECRAWL_API_KEY:X.firecrawlApiKey,STUDIO_SANDBOX_RUNNER:process.env.STUDIO_SANDBOX_RUNNER,STUDIO_SANDBOX_TEMPLATE_NAME:process.env.STUDIO_SANDBOX_TEMPLATE_NAME,STUDIO_ENV:process.env.STUDIO_ENV,STUDIO_SANDBOX_PREVIEW_URL_PATTERN:process.env.STUDIO_SANDBOX_PREVIEW_URL_PATTERN,STUDIO_SANDBOX_PREVIEW_GATEWAY_NAME:process.env.STUDIO_SANDBOX_PREVIEW_GATEWAY_NAME,STUDIO_SANDBOX_PREVIEW_GATEWAY_NAMESPACE:process.env.STUDIO_SANDBOX_PREVIEW_GATEWAY_NAMESPACE,STUDIO_SANDBOX_SENTINEL_TOKEN:process.env.STUDIO_SANDBOX_SENTINEL_TOKEN,KUBERNETES_SERVICE_HOST:process.env.KUBERNETES_SERVICE_HOST,KUBERNETES_SERVICE_PORT:process.env.KUBERNETES_SERVICE_PORT,FREESTYLE_API_KEY:process.env.FREESTYLE_API_KEY,BROWSERLESS_TOKEN:process.env.BROWSERLESS_TOKEN,NODE_EXTRA_CA_CERTS:process.env.NODE_EXTRA_CA_CERTS,DECO_CLI:"1",DECO_NO_TUI:"true",...Y}}var yj=k((ba5)=>{ba5.HttpAuthLocation=void 0;(function(X){X.HEADER="header",X.QUERY="query"})(ba5.HttpAuthLocation||(ba5.HttpAuthLocation={}));ba5.HttpApiKeyAuthLocation=void 0;(function(X){X.HEADER="header",X.QUERY="query"})(ba5.HttpApiKeyAuthLocation||(ba5.HttpApiKeyAuthLocation={}));ba5.EndpointURLScheme=void 0;(function(X){X.HTTP="http",X.HTTPS="https"})(ba5.EndpointURLScheme||(ba5.EndpointURLScheme={}));ba5.AlgorithmId=void 0;(function(X){X.MD5="md5",X.CRC32="crc32",X.CRC32C="crc32c",X.SHA1="sha1",X.SHA256="sha256"})(ba5.AlgorithmId||(ba5.AlgorithmId={}));var ka5=(X)=>{let Y=[];if(X.sha256!==void 0)Y.push({algorithmId:()=>ba5.AlgorithmId.SHA256,checksumConstructor:()=>X.sha256});if(X.md5!=null)Y.push({algorithmId:()=>ba5.AlgorithmId.MD5,checksumConstructor:()=>X.md5});return{addChecksumAlgorithm(G){Y.push(G)},checksumAlgorithms(){return Y}}},Ca5=(X)=>{let Y={};return X.checksumAlgorithms().forEach((G)=>{Y[G.algorithmId()]=G.checksumConstructor()}),Y},va5=(X)=>{return ka5(X)},_a5=(X)=>{return Ca5(X)};ba5.FieldPosition=void 0;(function(X){X[X.HEADER=0]="HEADER",X[X.TRAILER=1]="TRAILER"})(ba5.FieldPosition||(ba5.FieldPosition={}));var fa5="__smithy_context";ba5.IniSectionType=void 0;(function(X){X.PROFILE="profile",X.SSO_SESSION="sso-session",X.SERVICES="services"})(ba5.IniSectionType||(ba5.IniSectionType={}));ba5.RequestHandlerProtocol=void 0;(function(X){X.HTTP_0_9="http/0.9",X.HTTP_1_0="http/1.0",X.TDS_8_0="tds/8.0"})(ba5.RequestHandlerProtocol||(ba5.RequestHandlerProtocol={}));ba5.SMITHY_CONTEXT_KEY=fa5;ba5.getDefaultClientConfiguration=va5;ba5.resolveDefaultRuntimeConfig=_a5});var u7=k((ca5)=>{var ga5=yj(),ua5=(X)=>{return{setHttpHandler(Y){X.httpHandler=Y},httpHandler(){return X.httpHandler},updateHttpClientConfig(Y,G){X.httpHandler?.updateHttpClientConfig(Y,G)},httpHandlerConfigs(){return X.httpHandler.httpHandlerConfigs()}}},la5=(X)=>{return{httpHandler:X.httpHandler()}};class C16{name;kind;values;constructor({name:X,kind:Y=ga5.FieldPosition.HEADER,values:G=[]}){this.name=X,this.kind=Y,this.values=G}add(X){this.values.push(X)}set(X){this.values=X}remove(X){this.values=this.values.filter((Y)=>Y!==X)}toString(){return this.values.map((X)=>X.includes(",")||X.includes(" ")?`"${X}"`:X).join(", ")}get(){return this.values}}class v16{entries={};encoding;constructor({fields:X=[],encoding:Y="utf-8"}){X.forEach(this.setField.bind(this)),this.encoding=Y}setField(X){this.entries[X.name.toLowerCase()]=X}getField(X){return this.entries[X.toLowerCase()]}removeField(X){delete this.entries[X.toLowerCase()]}getByType(X){return Object.values(this.entries).filter((Y)=>Y.kind===X)}}class eA1{method;protocol;hostname;port;path;query;headers;username;password;fragment;body;constructor(X){this.method=X.method||"GET",this.hostname=X.hostname||"localhost",this.port=X.port,this.query=X.query||{},this.headers=X.headers||{},this.body=X.body,this.protocol=X.protocol?X.protocol.slice(-1)!==":"?`${X.protocol}:`:X.protocol:"https:",this.path=X.path?X.path.charAt(0)!=="/"?`/${X.path}`:X.path:"/",this.username=X.username,this.password=X.password,this.fragment=X.fragment}static clone(X){let Y=new eA1({...X,headers:{...X.headers}});if(Y.query)Y.query=ma5(Y.query);return Y}static isInstance(X){if(!X)return!1;let Y=X;return"method"in Y&&"protocol"in Y&&"hostname"in Y&&"path"in Y&&typeof Y.query==="object"&&typeof Y.headers==="object"}clone(){return eA1.clone(this)}}function ma5(X){return Object.keys(X).reduce((Y,G)=>{let Q=X[G];return{...Y,[G]:Array.isArray(Q)?[...Q]:Q}},{})}class _16{statusCode;reason;headers;body;constructor(X){this.statusCode=X.statusCode,this.reason=X.reason,this.headers=X.headers||{},this.body=X.body}static isInstance(X){if(!X)return!1;let Y=X;return typeof Y.statusCode==="number"&&typeof Y.headers==="object"}}function da5(X){return/^[a-z0-9][a-z0-9\.\-]*[a-z0-9]$/.test(X)}ca5.Field=C16;ca5.Fields=v16;ca5.HttpRequest=eA1;ca5.HttpResponse=_16;ca5.getHttpHandlerExtensionConfiguration=ua5;ca5.isValidHostname=da5;ca5.resolveHttpHandlerRuntimeConfig=la5});function sa5(X){return(Y)=>async(G)=>{let{request:Q}=G;if(X.expectContinueHeader!==!1&&f16.HttpRequest.isInstance(Q)&&Q.body&&X.runtime==="node"&&X.requestHandler?.constructor?.name!=="FetchHttpHandler"){let J=!0;if(typeof X.expectContinueHeader==="number")try{J=(Number(Q.headers?.["content-length"])??X.bodyLengthChecker?.(Q.body)??1/0)>=X.expectContinueHeader}catch(W){}else J=!!X.expectContinueHeader;if(J)Q.headers.Expect="100-continue"}return Y({...G,request:Q})}}var f16,ea5,b16=(X)=>({applyToStack:(Y)=>{Y.add(sa5(X),ea5)}});var y16=w(()=>{f16=X1(u7(),1);ea5={step:"build",tags:["SET_EXPECT_HEADER","EXPECT_HEADER"],name:"addExpectContinueMiddleware",override:!0}});var wH,XT1,xj,YT1,E9,x16,xX1;var LH=w(()=>{wH={WHEN_SUPPORTED:"WHEN_SUPPORTED",WHEN_REQUIRED:"WHEN_REQUIRED"},XT1=wH.WHEN_SUPPORTED,xj={WHEN_SUPPORTED:"WHEN_SUPPORTED",WHEN_REQUIRED:"WHEN_REQUIRED"},YT1=wH.WHEN_SUPPORTED;(function(X){X.MD5="MD5",X.CRC32="CRC32",X.CRC32C="CRC32C",X.CRC64NVME="CRC64NVME",X.SHA1="SHA1",X.SHA256="SHA256"})(E9||(E9={}));(function(X){X.HEADER="header",X.TRAILER="trailer"})(x16||(x16={}));xX1=E9.CRC32});var kq,Ga=(X,Y,G,Q)=>{if(!(Y in X))return;let J=X[Y].toUpperCase();if(!Object.values(G).includes(J))throw TypeError(`Cannot load ${Q} '${Y}'. Expected one of ${Object.values(G)}, got '${X[Y]}'.`);return J};var sN0=w(()=>{(function(X){X.ENV="env",X.CONFIG="shared config entry"})(kq||(kq={}))});var Xr5="AWS_REQUEST_CHECKSUM_CALCULATION",Yr5="request_checksum_calculation",h16;var g16=w(()=>{LH();sN0();h16={environmentVariableSelector:(X)=>Ga(X,Xr5,wH,kq.ENV),configFileSelector:(X)=>Ga(X,Yr5,wH,kq.CONFIG),default:XT1}});var Gr5="AWS_RESPONSE_CHECKSUM_VALIDATION",Qr5="response_checksum_validation",u16;var l16=w(()=>{LH();sN0();u16={environmentVariableSelector:(X)=>Ga(X,Gr5,xj,kq.ENV),configFileSelector:(X)=>Ga(X,Qr5,xj,kq.CONFIG),default:YT1}});var Xz0=k((Nr5)=>{var Jr5=["AuthFailure","InvalidSignatureException","RequestExpired","RequestInTheFuture","RequestTimeTooSkewed","SignatureDoesNotMatch"],Zr5=["BandwidthLimitExceeded","EC2ThrottledException","LimitExceededException","PriorRequestNotComplete","ProvisionedThroughputExceededException","RequestLimitExceeded","RequestThrottled","RequestThrottledException","SlowDown","ThrottledException","Throttling","ThrottlingException","TooManyRequestsException","TransactionInProgressException"],Wr5=["TimeoutError","RequestTimeout","RequestTimeoutException"],$r5=[500,502,503,504],Kr5=["ECONNRESET","ECONNREFUSED","EPIPE","ETIMEDOUT"],Hr5=["EHOSTUNREACH","ENETUNREACH","ENOTFOUND"],m16=(X)=>X?.$retryable!==void 0,Fr5=(X)=>Jr5.includes(X.name),d16=(X)=>X.$metadata?.clockSkewCorrected,c16=(X)=>{let Y=new Set(["Failed to fetch","NetworkError when attempting to fetch resource","The Internet connection appears to be offline","Load failed","Network request failed"]);if(!(X&&X instanceof TypeError))return!1;return Y.has(X.message)},Ur5=(X)=>X.$metadata?.httpStatusCode===429||Zr5.includes(X.name)||X.$retryable?.throttling==!0,eN0=(X,Y=0)=>m16(X)||d16(X)||X.name==="InvalidSignatureException"&&X.message?.includes("Signature expired")||Wr5.includes(X.name)||Kr5.includes(X?.code||"")||Hr5.includes(X?.code||"")||$r5.includes(X.$metadata?.httpStatusCode||0)||c16(X)||i16(X)||X.cause!==void 0&&Y<=10&&eN0(X.cause,Y+1),Br5=(X)=>{if(X.$metadata?.httpStatusCode!==void 0){let Y=X.$metadata.httpStatusCode;if(500<=Y&&Y<=599&&!eN0(X))return!0;return!1}return!1};function i16(X){return X.code==="ERR_HTTP2_STREAM_ERROR"&&X.message.includes("NGHTTP2_REFUSED_STREAM")}Nr5.isBrowserNetworkError=c16;Nr5.isClockSkewCorrectedError=d16;Nr5.isClockSkewError=Fr5;Nr5.isNodeJsHttp2TransientError=i16;Nr5.isRetryableByTrait=m16;Nr5.isServerError=Br5;Nr5.isThrottlingError=Ur5;Nr5.isTransientError=eN0});var Dw=k((kr5)=>{var Ar5=Xz0();kr5.RETRY_MODES=void 0;(function(X){X.STANDARD="standard",X.ADAPTIVE="adaptive"})(kr5.RETRY_MODES||(kr5.RETRY_MODES={}));var QT1=3,Tr5=kr5.RETRY_MODES.STANDARD;class JT1{static setTimeoutFn=setTimeout;beta;minCapacity;minFillRate;scaleConstant;smooth;enabled=!1;availableTokens=0;lastMaxRate=0;measuredTxRate=0;requestCount=0;fillRate;lastThrottleTime;lastTimestamp=0;lastTxRateBucket;maxCapacity;timeWindow=0;constructor(X){this.beta=X?.beta??0.7,this.minCapacity=X?.minCapacity??1,this.minFillRate=X?.minFillRate??0.5,this.scaleConstant=X?.scaleConstant??0.4,this.smooth=X?.smooth??0.8,this.lastThrottleTime=this.getCurrentTimeInSeconds(),this.lastTxRateBucket=Math.floor(this.getCurrentTimeInSeconds()),this.fillRate=this.minFillRate,this.maxCapacity=this.minCapacity}async getSendToken(){return this.acquireTokenBucket(1)}updateClientSendingRate(X){let Y;this.updateMeasuredRate();let G=X;if(G?.errorType==="THROTTLING"||Ar5.isThrottlingError(G?.error??X)){let W=!this.enabled?this.measuredTxRate:Math.min(this.measuredTxRate,this.fillRate);this.lastMaxRate=W,this.calculateTimeWindow(),this.lastThrottleTime=this.getCurrentTimeInSeconds(),Y=this.cubicThrottle(W),this.enableTokenBucket()}else this.calculateTimeWindow(),Y=this.cubicSuccess(this.getCurrentTimeInSeconds());let J=Math.min(Y,2*this.measuredTxRate);this.updateTokenBucketRate(J)}getCurrentTimeInSeconds(){return Date.now()/1000}async acquireTokenBucket(X){if(!this.enabled)return;if(this.refillTokenBucket(),X>this.availableTokens){let Y=(X-this.availableTokens)/this.fillRate*1000;await new Promise((G)=>JT1.setTimeoutFn(G,Y))}this.availableTokens=this.availableTokens-X}refillTokenBucket(){let X=this.getCurrentTimeInSeconds();if(!this.lastTimestamp){this.lastTimestamp=X;return}let Y=(X-this.lastTimestamp)*this.fillRate;this.availableTokens=Math.min(this.maxCapacity,this.availableTokens+Y),this.lastTimestamp=X}calculateTimeWindow(){this.timeWindow=this.getPrecise(Math.pow(this.lastMaxRate*(1-this.beta)/this.scaleConstant,0.3333333333333333))}cubicThrottle(X){return this.getPrecise(X*this.beta)}cubicSuccess(X){return this.getPrecise(this.scaleConstant*Math.pow(X-this.lastThrottleTime-this.timeWindow,3)+this.lastMaxRate)}enableTokenBucket(){this.enabled=!0}updateTokenBucketRate(X){this.refillTokenBucket(),this.fillRate=Math.max(X,this.minFillRate),this.maxCapacity=Math.max(X,this.minCapacity),this.availableTokens=Math.min(this.availableTokens,this.maxCapacity)}updateMeasuredRate(){let X=this.getCurrentTimeInSeconds(),Y=Math.floor(X*2)/2;if(this.requestCount++,Y>this.lastTxRateBucket){let G=this.requestCount/(Y-this.lastTxRateBucket);this.measuredTxRate=this.getPrecise(G*this.smooth+this.measuredTxRate*(1-this.smooth)),this.requestCount=0,this.lastTxRateBucket=Y}}getPrecise(X){return parseFloat(X.toFixed(8))}}var Ir5=100,Qz0=20000,Vr5=500,Yz0=500,jr5=5,Mr5=10,p16=1,Rr5="amz-sdk-invocation-id",Sr5="amz-sdk-request";class eQ{static v2026=typeof process<"u"&&process.env?.SMITHY_NEW_RETRIES_2026==="true";static delay(){return eQ.v2026?50:100}static throttlingDelay(){return eQ.v2026?1000:500}static cost(){return eQ.v2026?14:5}static throttlingCost(){return eQ.v2026?5:10}static modifiedCostType(){return eQ.v2026?"THROTTLING":"TRANSIENT"}}class n16{x=eQ.delay();computeNextBackoffDelay(X){let Y=Math.random(),G=2,Q=Y*Math.min(this.x*2**X,Qz0);return Math.floor(Q)}setDelayBase(X){this.x=X}}class Gz0{delay;count;cost;longPoll;constructor(X,Y,G,Q){this.delay=X,this.count=Y,this.cost=G,this.longPoll=Q}getRetryCount(){return this.count}getRetryDelay(){return Math.min(Qz0,this.delay)}getRetryCost(){return this.cost}isLongPoll(){return this.longPoll}}var GT1={incompatible:1,attempts:2,capacity:3};class hX1{mode=kr5.RETRY_MODES.STANDARD;capacity=Yz0;retryBackoffStrategy;maxAttemptsProvider;baseDelay;constructor(X){if(typeof X==="number")this.maxAttemptsProvider=async()=>X;else if(typeof X==="function")this.maxAttemptsProvider=X;else if(X&&typeof X==="object")this.maxAttemptsProvider=async()=>X.maxAttempts,this.baseDelay=X.baseDelay,this.retryBackoffStrategy=X.backoff;this.maxAttemptsProvider??=async()=>QT1,this.baseDelay??=eQ.delay(),this.retryBackoffStrategy??=new n16}async acquireInitialRetryToken(X){return new Gz0(eQ.delay(),0,void 0,eQ.v2026&&X.includes(":longpoll"))}async refreshRetryTokenForRetry(X,Y){let G=await this.getMaxAttempts(),Q=this.retryCode(X,Y,G),J=Q===0,W=X.isLongPoll?.();if(J||W){let Z=Y.errorType;this.retryBackoffStrategy.setDelayBase(Z==="THROTTLING"?eQ.throttlingDelay():this.baseDelay);let $=this.retryBackoffStrategy.computeNextBackoffDelay(X.getRetryCount()),K=$;if(Y.retryAfterHint instanceof Date)K=Math.max($,Math.min(Y.retryAfterHint.getTime()-Date.now(),$+5000));if(!J)throw Object.assign(Error("No retry token available"),{$backoff:eQ.v2026&&Q===GT1.capacity&&W?K:0});else{let H=this.getCapacityCost(Z);return this.capacity-=H,new Gz0(K,X.getRetryCount()+1,H,X.isLongPoll?.()??!1)}}throw Error("No retry token available")}recordSuccess(X){this.capacity=Math.min(Yz0,this.capacity+(X.getRetryCost()??p16))}getCapacity(){return this.capacity}async maxAttempts(){return this.maxAttemptsProvider()}async getMaxAttempts(){try{return await this.maxAttemptsProvider()}catch(X){return console.warn(`Max attempts provider could not resolve. Using default of ${QT1}`),QT1}}retryCode(X,Y,G){let Q=X.getRetryCount()+1,J=this.isRetryableError(Y.errorType)?0:GT1.incompatible,W=Q<G?0:GT1.attempts,Z=this.capacity>=this.getCapacityCost(Y.errorType)?0:GT1.capacity;return J||W||Z}getCapacityCost(X){return X===eQ.modifiedCostType()?eQ.throttlingCost():eQ.cost()}isRetryableError(X){return X==="THROTTLING"||X==="TRANSIENT"}}class t16{mode=kr5.RETRY_MODES.ADAPTIVE;rateLimiter;standardRetryStrategy;constructor(X,Y){let{rateLimiter:G}=Y??{};this.rateLimiter=G??new JT1,this.standardRetryStrategy=Y?new hX1({maxAttempts:typeof X==="number"?X:3,...Y}):new hX1(X)}async acquireInitialRetryToken(X){return await this.rateLimiter.getSendToken(),this.standardRetryStrategy.acquireInitialRetryToken(X)}async refreshRetryTokenForRetry(X,Y){return this.rateLimiter.updateClientSendingRate(Y),this.standardRetryStrategy.refreshRetryTokenForRetry(X,Y)}recordSuccess(X){this.rateLimiter.updateClientSendingRate({}),this.standardRetryStrategy.recordSuccess(X)}async maxAttemptsProvider(){return this.standardRetryStrategy.maxAttempts()}}class a16 extends hX1{computeNextBackoffDelay;constructor(X,Y=eQ.delay()){super(typeof X==="function"?X:async()=>X);if(typeof Y==="number")this.computeNextBackoffDelay=()=>Y;else this.computeNextBackoffDelay=Y}async refreshRetryTokenForRetry(X,Y){let G=await super.refreshRetryTokenForRetry(X,Y);return G.getRetryDelay=()=>this.computeNextBackoffDelay(G.getRetryCount()),G}}kr5.AdaptiveRetryStrategy=t16;kr5.ConfiguredRetryStrategy=a16;kr5.DEFAULT_MAX_ATTEMPTS=QT1;kr5.DEFAULT_RETRY_DELAY_BASE=Ir5;kr5.DEFAULT_RETRY_MODE=Tr5;kr5.DefaultRateLimiter=JT1;kr5.INITIAL_RETRY_TOKENS=Yz0;kr5.INVOCATION_ID_HEADER=Rr5;kr5.MAXIMUM_RETRY_DELAY=Qz0;kr5.NO_RETRY_INCREMENT=p16;kr5.REQUEST_HEADER=Sr5;kr5.RETRY_COST=jr5;kr5.Retry=eQ;kr5.StandardRetryStrategy=hX1;kr5.THROTTLING_RETRY_DELAY_BASE=Vr5;kr5.TIMEOUT_RETRY_COST=Mr5});var WX=k((Yo5)=>{var nr5=Dw(),Jz0={warningEmitted:!1},tr5=(X)=>{if(X&&!Jz0.warningEmitted&&parseInt(X.substring(1,X.indexOf(".")))<20)Jz0.warningEmitted=!0,process.emitWarning(`NodeDeprecationWarning: The AWS SDK for JavaScript (v3) will
1647
1647
  no longer support Node.js ${X} in January 2026.
1648
1648
 
1649
1649
  To continue receiving updates to AWS services, bug fixes, and security
@@ -6034,7 +6034,11 @@ var TRANSIENT_ERRORS = [
6034
6034
  "early EOF",
6035
6035
  "unexpected disconnect",
6036
6036
  "Connection reset by peer",
6037
- "Connection timed out"
6037
+ "Connection timed out",
6038
+ "Operation too slow",
6039
+ "transfer closed with",
6040
+ "RPC failed",
6041
+ "the remote end hung up"
6038
6042
  ];
6039
6043
  var CLONE_MAX_RETRIES = 3;
6040
6044
  var CLONE_RETRY_DELAY_MS = 3000;
@@ -0,0 +1,236 @@
1
+ export type CSPair = { // eslint-disable-line @typescript-eslint/naming-convention
2
+ /**
3
+ The ANSI terminal control sequence for starting this style.
4
+ */
5
+ readonly open: string;
6
+
7
+ /**
8
+ The ANSI terminal control sequence for ending this style.
9
+ */
10
+ readonly close: string;
11
+ };
12
+
13
+ export type ColorBase = {
14
+ /**
15
+ The ANSI terminal control sequence for ending this color.
16
+ */
17
+ readonly close: string;
18
+
19
+ ansi(code: number): string;
20
+
21
+ ansi256(code: number): string;
22
+
23
+ ansi16m(red: number, green: number, blue: number): string;
24
+ };
25
+
26
+ export type Modifier = {
27
+ /**
28
+ Resets the current color chain.
29
+ */
30
+ readonly reset: CSPair;
31
+
32
+ /**
33
+ Make text bold.
34
+ */
35
+ readonly bold: CSPair;
36
+
37
+ /**
38
+ Emitting only a small amount of light.
39
+ */
40
+ readonly dim: CSPair;
41
+
42
+ /**
43
+ Make text italic. (Not widely supported)
44
+ */
45
+ readonly italic: CSPair;
46
+
47
+ /**
48
+ Make text underline. (Not widely supported)
49
+ */
50
+ readonly underline: CSPair;
51
+
52
+ /**
53
+ Make text overline.
54
+
55
+ Supported on VTE-based terminals, the GNOME terminal, mintty, and Git Bash.
56
+ */
57
+ readonly overline: CSPair;
58
+
59
+ /**
60
+ Inverse background and foreground colors.
61
+ */
62
+ readonly inverse: CSPair;
63
+
64
+ /**
65
+ Prints the text, but makes it invisible.
66
+ */
67
+ readonly hidden: CSPair;
68
+
69
+ /**
70
+ Puts a horizontal line through the center of the text. (Not widely supported)
71
+ */
72
+ readonly strikethrough: CSPair;
73
+ };
74
+
75
+ export type ForegroundColor = {
76
+ readonly black: CSPair;
77
+ readonly red: CSPair;
78
+ readonly green: CSPair;
79
+ readonly yellow: CSPair;
80
+ readonly blue: CSPair;
81
+ readonly cyan: CSPair;
82
+ readonly magenta: CSPair;
83
+ readonly white: CSPair;
84
+
85
+ /**
86
+ Alias for `blackBright`.
87
+ */
88
+ readonly gray: CSPair;
89
+
90
+ /**
91
+ Alias for `blackBright`.
92
+ */
93
+ readonly grey: CSPair;
94
+
95
+ readonly blackBright: CSPair;
96
+ readonly redBright: CSPair;
97
+ readonly greenBright: CSPair;
98
+ readonly yellowBright: CSPair;
99
+ readonly blueBright: CSPair;
100
+ readonly cyanBright: CSPair;
101
+ readonly magentaBright: CSPair;
102
+ readonly whiteBright: CSPair;
103
+ };
104
+
105
+ export type BackgroundColor = {
106
+ readonly bgBlack: CSPair;
107
+ readonly bgRed: CSPair;
108
+ readonly bgGreen: CSPair;
109
+ readonly bgYellow: CSPair;
110
+ readonly bgBlue: CSPair;
111
+ readonly bgCyan: CSPair;
112
+ readonly bgMagenta: CSPair;
113
+ readonly bgWhite: CSPair;
114
+
115
+ /**
116
+ Alias for `bgBlackBright`.
117
+ */
118
+ readonly bgGray: CSPair;
119
+
120
+ /**
121
+ Alias for `bgBlackBright`.
122
+ */
123
+ readonly bgGrey: CSPair;
124
+
125
+ readonly bgBlackBright: CSPair;
126
+ readonly bgRedBright: CSPair;
127
+ readonly bgGreenBright: CSPair;
128
+ readonly bgYellowBright: CSPair;
129
+ readonly bgBlueBright: CSPair;
130
+ readonly bgCyanBright: CSPair;
131
+ readonly bgMagentaBright: CSPair;
132
+ readonly bgWhiteBright: CSPair;
133
+ };
134
+
135
+ export type ConvertColor = {
136
+ /**
137
+ Convert from the RGB color space to the ANSI 256 color space.
138
+
139
+ @param red - (`0...255`)
140
+ @param green - (`0...255`)
141
+ @param blue - (`0...255`)
142
+ */
143
+ rgbToAnsi256(red: number, green: number, blue: number): number;
144
+
145
+ /**
146
+ Convert from the RGB HEX color space to the RGB color space.
147
+
148
+ @param hex - A hexadecimal string containing RGB data.
149
+ */
150
+ hexToRgb(hex: string): [red: number, green: number, blue: number];
151
+
152
+ /**
153
+ Convert from the RGB HEX color space to the ANSI 256 color space.
154
+
155
+ @param hex - A hexadecimal string containing RGB data.
156
+ */
157
+ hexToAnsi256(hex: string): number;
158
+
159
+ /**
160
+ Convert from the ANSI 256 color space to the ANSI 16 color space.
161
+
162
+ @param code - A number representing the ANSI 256 color.
163
+ */
164
+ ansi256ToAnsi(code: number): number;
165
+
166
+ /**
167
+ Convert from the RGB color space to the ANSI 16 color space.
168
+
169
+ @param red - (`0...255`)
170
+ @param green - (`0...255`)
171
+ @param blue - (`0...255`)
172
+ */
173
+ rgbToAnsi(red: number, green: number, blue: number): number;
174
+
175
+ /**
176
+ Convert from the RGB HEX color space to the ANSI 16 color space.
177
+
178
+ @param hex - A hexadecimal string containing RGB data.
179
+ */
180
+ hexToAnsi(hex: string): number;
181
+ };
182
+
183
+ /**
184
+ Basic modifier names.
185
+ */
186
+ export type ModifierName = keyof Modifier;
187
+
188
+ /**
189
+ Basic foreground color names.
190
+
191
+ [More colors here.](https://github.com/chalk/chalk/blob/main/readme.md#256-and-truecolor-color-support)
192
+ */
193
+ export type ForegroundColorName = keyof ForegroundColor;
194
+
195
+ /**
196
+ Basic background color names.
197
+
198
+ [More colors here.](https://github.com/chalk/chalk/blob/main/readme.md#256-and-truecolor-color-support)
199
+ */
200
+ export type BackgroundColorName = keyof BackgroundColor;
201
+
202
+ /**
203
+ Basic color names. The combination of foreground and background color names.
204
+
205
+ [More colors here.](https://github.com/chalk/chalk/blob/main/readme.md#256-and-truecolor-color-support)
206
+ */
207
+ export type ColorName = ForegroundColorName | BackgroundColorName;
208
+
209
+ /**
210
+ Basic modifier names.
211
+ */
212
+ export const modifierNames: readonly ModifierName[];
213
+
214
+ /**
215
+ Basic foreground color names.
216
+ */
217
+ export const foregroundColorNames: readonly ForegroundColorName[];
218
+
219
+ /**
220
+ Basic background color names.
221
+ */
222
+ export const backgroundColorNames: readonly BackgroundColorName[];
223
+
224
+ /*
225
+ Basic color names. The combination of foreground and background color names.
226
+ */
227
+ export const colorNames: readonly ColorName[];
228
+
229
+ declare const ansiStyles: {
230
+ readonly modifier: Modifier;
231
+ readonly color: ColorBase & ForegroundColor;
232
+ readonly bgColor: ColorBase & BackgroundColor;
233
+ readonly codes: ReadonlyMap<number, number>;
234
+ } & ForegroundColor & BackgroundColor & Modifier & ConvertColor;
235
+
236
+ export default ansiStyles;
@@ -0,0 +1,223 @@
1
+ const ANSI_BACKGROUND_OFFSET = 10;
2
+
3
+ const wrapAnsi16 = (offset = 0) => code => `\u001B[${code + offset}m`;
4
+
5
+ const wrapAnsi256 = (offset = 0) => code => `\u001B[${38 + offset};5;${code}m`;
6
+
7
+ const wrapAnsi16m = (offset = 0) => (red, green, blue) => `\u001B[${38 + offset};2;${red};${green};${blue}m`;
8
+
9
+ const styles = {
10
+ modifier: {
11
+ reset: [0, 0],
12
+ // 21 isn't widely supported and 22 does the same thing
13
+ bold: [1, 22],
14
+ dim: [2, 22],
15
+ italic: [3, 23],
16
+ underline: [4, 24],
17
+ overline: [53, 55],
18
+ inverse: [7, 27],
19
+ hidden: [8, 28],
20
+ strikethrough: [9, 29],
21
+ },
22
+ color: {
23
+ black: [30, 39],
24
+ red: [31, 39],
25
+ green: [32, 39],
26
+ yellow: [33, 39],
27
+ blue: [34, 39],
28
+ magenta: [35, 39],
29
+ cyan: [36, 39],
30
+ white: [37, 39],
31
+
32
+ // Bright color
33
+ blackBright: [90, 39],
34
+ gray: [90, 39], // Alias of `blackBright`
35
+ grey: [90, 39], // Alias of `blackBright`
36
+ redBright: [91, 39],
37
+ greenBright: [92, 39],
38
+ yellowBright: [93, 39],
39
+ blueBright: [94, 39],
40
+ magentaBright: [95, 39],
41
+ cyanBright: [96, 39],
42
+ whiteBright: [97, 39],
43
+ },
44
+ bgColor: {
45
+ bgBlack: [40, 49],
46
+ bgRed: [41, 49],
47
+ bgGreen: [42, 49],
48
+ bgYellow: [43, 49],
49
+ bgBlue: [44, 49],
50
+ bgMagenta: [45, 49],
51
+ bgCyan: [46, 49],
52
+ bgWhite: [47, 49],
53
+
54
+ // Bright color
55
+ bgBlackBright: [100, 49],
56
+ bgGray: [100, 49], // Alias of `bgBlackBright`
57
+ bgGrey: [100, 49], // Alias of `bgBlackBright`
58
+ bgRedBright: [101, 49],
59
+ bgGreenBright: [102, 49],
60
+ bgYellowBright: [103, 49],
61
+ bgBlueBright: [104, 49],
62
+ bgMagentaBright: [105, 49],
63
+ bgCyanBright: [106, 49],
64
+ bgWhiteBright: [107, 49],
65
+ },
66
+ };
67
+
68
+ export const modifierNames = Object.keys(styles.modifier);
69
+ export const foregroundColorNames = Object.keys(styles.color);
70
+ export const backgroundColorNames = Object.keys(styles.bgColor);
71
+ export const colorNames = [...foregroundColorNames, ...backgroundColorNames];
72
+
73
+ function assembleStyles() {
74
+ const codes = new Map();
75
+
76
+ for (const [groupName, group] of Object.entries(styles)) {
77
+ for (const [styleName, style] of Object.entries(group)) {
78
+ styles[styleName] = {
79
+ open: `\u001B[${style[0]}m`,
80
+ close: `\u001B[${style[1]}m`,
81
+ };
82
+
83
+ group[styleName] = styles[styleName];
84
+
85
+ codes.set(style[0], style[1]);
86
+ }
87
+
88
+ Object.defineProperty(styles, groupName, {
89
+ value: group,
90
+ enumerable: false,
91
+ });
92
+ }
93
+
94
+ Object.defineProperty(styles, 'codes', {
95
+ value: codes,
96
+ enumerable: false,
97
+ });
98
+
99
+ styles.color.close = '\u001B[39m';
100
+ styles.bgColor.close = '\u001B[49m';
101
+
102
+ styles.color.ansi = wrapAnsi16();
103
+ styles.color.ansi256 = wrapAnsi256();
104
+ styles.color.ansi16m = wrapAnsi16m();
105
+ styles.bgColor.ansi = wrapAnsi16(ANSI_BACKGROUND_OFFSET);
106
+ styles.bgColor.ansi256 = wrapAnsi256(ANSI_BACKGROUND_OFFSET);
107
+ styles.bgColor.ansi16m = wrapAnsi16m(ANSI_BACKGROUND_OFFSET);
108
+
109
+ // From https://github.com/Qix-/color-convert/blob/3f0e0d4e92e235796ccb17f6e85c72094a651f49/conversions.js
110
+ Object.defineProperties(styles, {
111
+ rgbToAnsi256: {
112
+ value(red, green, blue) {
113
+ // We use the extended greyscale palette here, with the exception of
114
+ // black and white. normal palette only has 4 greyscale shades.
115
+ if (red === green && green === blue) {
116
+ if (red < 8) {
117
+ return 16;
118
+ }
119
+
120
+ if (red > 248) {
121
+ return 231;
122
+ }
123
+
124
+ return Math.round(((red - 8) / 247) * 24) + 232;
125
+ }
126
+
127
+ return 16
128
+ + (36 * Math.round(red / 255 * 5))
129
+ + (6 * Math.round(green / 255 * 5))
130
+ + Math.round(blue / 255 * 5);
131
+ },
132
+ enumerable: false,
133
+ },
134
+ hexToRgb: {
135
+ value(hex) {
136
+ const matches = /[a-f\d]{6}|[a-f\d]{3}/i.exec(hex.toString(16));
137
+ if (!matches) {
138
+ return [0, 0, 0];
139
+ }
140
+
141
+ let [colorString] = matches;
142
+
143
+ if (colorString.length === 3) {
144
+ colorString = [...colorString].map(character => character + character).join('');
145
+ }
146
+
147
+ const integer = Number.parseInt(colorString, 16);
148
+
149
+ return [
150
+ /* eslint-disable no-bitwise */
151
+ (integer >> 16) & 0xFF,
152
+ (integer >> 8) & 0xFF,
153
+ integer & 0xFF,
154
+ /* eslint-enable no-bitwise */
155
+ ];
156
+ },
157
+ enumerable: false,
158
+ },
159
+ hexToAnsi256: {
160
+ value: hex => styles.rgbToAnsi256(...styles.hexToRgb(hex)),
161
+ enumerable: false,
162
+ },
163
+ ansi256ToAnsi: {
164
+ value(code) {
165
+ if (code < 8) {
166
+ return 30 + code;
167
+ }
168
+
169
+ if (code < 16) {
170
+ return 90 + (code - 8);
171
+ }
172
+
173
+ let red;
174
+ let green;
175
+ let blue;
176
+
177
+ if (code >= 232) {
178
+ red = (((code - 232) * 10) + 8) / 255;
179
+ green = red;
180
+ blue = red;
181
+ } else {
182
+ code -= 16;
183
+
184
+ const remainder = code % 36;
185
+
186
+ red = Math.floor(code / 36) / 5;
187
+ green = Math.floor(remainder / 6) / 5;
188
+ blue = (remainder % 6) / 5;
189
+ }
190
+
191
+ const value = Math.max(red, green, blue) * 2;
192
+
193
+ if (value === 0) {
194
+ return 30;
195
+ }
196
+
197
+ // eslint-disable-next-line no-bitwise
198
+ let result = 30 + ((Math.round(blue) << 2) | (Math.round(green) << 1) | Math.round(red));
199
+
200
+ if (value === 2) {
201
+ result += 60;
202
+ }
203
+
204
+ return result;
205
+ },
206
+ enumerable: false,
207
+ },
208
+ rgbToAnsi: {
209
+ value: (red, green, blue) => styles.ansi256ToAnsi(styles.rgbToAnsi256(red, green, blue)),
210
+ enumerable: false,
211
+ },
212
+ hexToAnsi: {
213
+ value: hex => styles.ansi256ToAnsi(styles.hexToAnsi256(hex)),
214
+ enumerable: false,
215
+ },
216
+ });
217
+
218
+ return styles;
219
+ }
220
+
221
+ const ansiStyles = assembleStyles();
222
+
223
+ export default ansiStyles;