decocms 2.293.3 → 2.293.4

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 (215) hide show
  1. package/dist/client/assets/{AlertCircle-CIx89Apb.js → AlertCircle-BjOZmb3_.js} +1 -1
  2. package/dist/client/assets/{ArrowNarrowLeft-PgYyeJWl.js → ArrowNarrowLeft-BcLjzBdj.js} +1 -1
  3. package/dist/client/assets/{ArrowUpRight-CqN535dh.js → ArrowUpRight-K-qOhs5U.js} +1 -1
  4. package/dist/client/assets/{CheckCircle-BhiO4WdX.js → CheckCircle-idEJRWqm.js} +1 -1
  5. package/dist/client/assets/{ChevronDown-Db-gmG7O.js → ChevronDown-8gFfkCAT.js} +1 -1
  6. package/dist/client/assets/{ChevronRight-CmGw-A25.js → ChevronRight-jn2TY6bg.js} +1 -1
  7. package/dist/client/assets/{ChevronUp-B41MwFvS.js → ChevronUp-GCRvOXUm.js} +1 -1
  8. package/dist/client/assets/{Container-DAtuVNy6.js → Container-Oz2YNmUh.js} +1 -1
  9. package/dist/client/assets/{DotsVertical-hWFRyHd1.js → DotsVertical-Db4taJ9K.js} +1 -1
  10. package/dist/client/assets/{LinkExternal01-Bu7u-Eob.js → LinkExternal01-BCvnibSo.js} +1 -1
  11. package/dist/client/assets/{Lock01-k4k9TKMB.js → Lock01-Q6LUoAej.js} +1 -1
  12. package/dist/client/assets/{Palette-DrEKbW5c.js → Palette-DeXO2UD-.js} +1 -1
  13. package/dist/client/assets/{Play-DLybXiWm.js → Play-DQtgluIz.js} +1 -1
  14. package/dist/client/assets/{Plus-BfAkipL9.js → Plus--NQ8Lzv-.js} +1 -1
  15. package/dist/client/assets/{RefreshCcw01-D1k-pKwO.js → RefreshCcw01-C_DCJmlp.js} +1 -1
  16. package/dist/client/assets/{SearchMd-COZ39qjs.js → SearchMd-BSaOo_JL.js} +1 -1
  17. package/dist/client/assets/{Settings02-J0FMQBzv.js → Settings02-Dqsstum2.js} +1 -1
  18. package/dist/client/assets/{Shield01-CQHxlRmE.js → Shield01-s7fnlBYV.js} +1 -1
  19. package/dist/client/assets/{Star01-GJ5xWOOH.js → Star01-UkNlRUFe.js} +1 -1
  20. package/dist/client/assets/{Sun-B-vK5-Nm.js → Sun-BbHWHHyR.js} +1 -1
  21. package/dist/client/assets/{Tool01-B7K1aaB2.js → Tool01-DbnLjlM2.js} +1 -1
  22. package/dist/client/assets/{Trash01-DMclmk7S.js → Trash01-zq3BxN1h.js} +1 -1
  23. package/dist/client/assets/{User01-D09p5XL5.js → User01-BMocx1Ia.js} +1 -1
  24. package/dist/client/assets/{Users03-Sy5wLq8j.js → Users03-C4e5uWHr.js} +1 -1
  25. package/dist/client/assets/{X-OfCuqj53.js → X-D3ENSJsC.js} +1 -1
  26. package/dist/client/assets/{XCircle-BAVoYWB9.js → XCircle-CaQruiTo.js} +1 -1
  27. package/dist/client/assets/{XClose-gJmfUeV7.js → XClose-CgOLivFw.js} +1 -1
  28. package/dist/client/assets/{Zap-Bj86P1ET.js → Zap-1gz6p0Ma.js} +1 -1
  29. package/dist/client/assets/{ZapSquare-hgkmHr_y.js → ZapSquare-BfOpflPt.js} +1 -1
  30. package/dist/client/assets/{accordion-DXEvAFYv.js → accordion-W_paWQqo.js} +1 -1
  31. package/dist/client/assets/{agent-icon-DTFpS0xZ.js → agent-icon-Cn5oclCs.js} +1 -1
  32. package/dist/client/assets/{agents-list-DW1dEf7q.js → agents-list-Bq1lupYm.js} +1 -1
  33. package/dist/client/assets/ai-providers-FTRlEUdE.js +1 -0
  34. package/dist/client/assets/{alert-dialog-B7uM1lCU.js → alert-dialog-D3pi5b6N.js} +1 -1
  35. package/dist/client/assets/{auth-catchall-CvBg3t1k.js → auth-catchall-fKkOuHdo.js} +1 -1
  36. package/dist/client/assets/{automation-list-row-BC-I7cVs.js → automation-list-row-DMHIeTUi.js} +1 -1
  37. package/dist/client/assets/{automations-BYCCK82U.js → automations-BXoe1Q0T.js} +1 -1
  38. package/dist/client/assets/{avatar-CuNZafwS.js → avatar-BhPS0sEl.js} +1 -1
  39. package/dist/client/assets/{badge-DfNcEjkd.js → badge-CDfiJQQR.js} +1 -1
  40. package/dist/client/assets/{brand-context-eFKJrZEs.js → brand-context-DoPWwJ4r.js} +1 -1
  41. package/dist/client/assets/{card-oYLOQvvo.js → card-CP805zsI.js} +1 -1
  42. package/dist/client/assets/{chat-context-A-JOluw-.js → chat-context-DI872wNm.js} +1 -1
  43. package/dist/client/assets/{checkbox-saEBp-lK.js → checkbox-CKpV5oyn.js} +1 -1
  44. package/dist/client/assets/{collection-detail-BMIHgG32.js → collection-detail-DbpaXe2t.js} +1 -1
  45. package/dist/client/assets/{collection-display-button-8IHPrrYr.js → collection-display-button-k9crQV9d.js} +1 -1
  46. package/dist/client/assets/{collection-search-Df4hHVFM.js → collection-search-4JBAiA2C.js} +1 -1
  47. package/dist/client/assets/{collection-search-fTLWXm7f.js → collection-search-BpswMTjk.js} +1 -1
  48. package/dist/client/assets/{collection-table-wrapper-fevnDENq.js → collection-table-wrapper-BHZQvL_J.js} +1 -1
  49. package/dist/client/assets/{collection-tabs-CAujq2od.js → collection-tabs-B3lthMg8.js} +1 -1
  50. package/dist/client/assets/{collections-DJ0ntg_M.js → collections-DBXLtq3P.js} +1 -1
  51. package/dist/client/assets/{command-Fkh3FZhz.js → command-CRl-8DjA.js} +1 -1
  52. package/dist/client/assets/{connection-card-BcotJ1Rm.js → connection-card-CdhlAzve.js} +1 -1
  53. package/dist/client/assets/{connection-detail-DWDpHx-3.js → connection-detail-Cf4BNVC3.js} +1 -1
  54. package/dist/client/assets/{connection-form-helpers-CO2E1C67.js → connection-form-helpers-Dj6Xs5eA.js} +1 -1
  55. package/dist/client/assets/{connections-DpVtV2LA.js → connections-C72dpEi8.js} +1 -1
  56. package/dist/client/assets/{constants-CN9N1Puc.js → constants-BXf9ANTR.js} +1 -1
  57. package/dist/client/assets/{constants-CPvpLYAH.js → constants-tJ81fG25.js} +1 -1
  58. package/dist/client/assets/{dialog-p-sir-g3.js → dialog-RLyF4eg5.js} +1 -1
  59. package/dist/client/assets/{domain-settings-D9DP_u_p.js → domain-settings-BfKS_avD.js} +1 -1
  60. package/dist/client/assets/{drawer-BbX5ZB2M.js → drawer-CG78q1nt.js} +1 -1
  61. package/dist/client/assets/{dropdown-menu-VNMrmxHT.js → dropdown-menu-BDa5fLDC.js} +1 -1
  62. package/dist/client/assets/{dynamic-plugin-layout-DpKXbZcD.js → dynamic-plugin-layout-wXXoe_5G.js} +1 -1
  63. package/dist/client/assets/{empty-state-Dg0Xz4N6.js → empty-state-ErnajtAj.js} +1 -1
  64. package/dist/client/assets/{empty-state-BMnPJeQb.js → empty-state-L95wna48.js} +1 -1
  65. package/dist/client/assets/{extract-connection-data-PGaxyxV3.js → extract-connection-data-BPBT-cx0.js} +1 -1
  66. package/dist/client/assets/{features-BPN8lpYa.js → features-DMy2j_1-.js} +1 -1
  67. package/dist/client/assets/{form-DCPNmSOZ.js → form-BhTWNirH.js} +1 -1
  68. package/dist/client/assets/{general-OG8PGpz2.js → general-X1U_18Wj.js} +1 -1
  69. package/dist/client/assets/index-BIAsUusp.js +1 -0
  70. package/dist/client/assets/{index-B9klNKS9.js → index-BKqtR3N2.js} +2 -2
  71. package/dist/client/assets/{index-Dpclwca6.js → index-BSi_7pdx.js} +1 -1
  72. package/dist/client/assets/{index-BnWcqzKT.js → index-C3bqKLs_.js} +1 -1
  73. package/dist/client/assets/{index-Xq4tdZoL.js → index-C4mKQp91.js} +1 -1
  74. package/dist/client/assets/{index-B8gqOkyP.js → index-CBpHmYGS.js} +1 -1
  75. package/dist/client/assets/{index-B6OpPchB.js → index-CycJh0eW.js} +1 -1
  76. package/dist/client/assets/{index-C42Je7bg.js → index-D1bA9zIu.js} +1 -1
  77. package/dist/client/assets/{index-BrsCow3J.js → index-DCHTg4LB.js} +1 -1
  78. package/dist/client/assets/{index-BekCQBSn.js → index-DO0uF7Gp.js} +1 -1
  79. package/dist/client/assets/{index-sPzyhX11.js → index-DfvjXpA6.js} +1 -1
  80. package/dist/client/assets/{index-DwzpcSkR.js → index-DlmBTdhU.js} +1 -1
  81. package/dist/client/assets/{index-CQe8hUpC.js → index-DsGCV5t1.js} +1 -1
  82. package/dist/client/assets/{index--ZCwSHGm.js → index-DyOW0RUm.js} +1 -1
  83. package/dist/client/assets/{index-DVicicqt.js → index-SvQIjOEI.js} +1 -1
  84. package/dist/client/assets/{index-btC0ATOJ.js → index-kw8l6ykm.js} +3 -3
  85. package/dist/client/assets/{infiniteQueryObserver-CJCxlxdb.js → infiniteQueryObserver-BDzPf9xQ.js} +1 -1
  86. package/dist/client/assets/{input-C46Lapnu.js → input-DdZFm5QD.js} +1 -1
  87. package/dist/client/assets/{integration-icon-DYiNCsPc.js → integration-icon-GgmeOaov.js} +1 -1
  88. package/dist/client/assets/{label-DkwMSFhl.js → label-BfGjYD3l.js} +1 -1
  89. package/dist/client/assets/{layout-BuS9HM_n.js → layout-C8Q8lJIU.js} +1 -1
  90. package/dist/client/assets/{lean-canvas-recruit-modal-C7NtzzyV.js → lean-canvas-recruit-modal-DS8lrn_0.js} +1 -1
  91. package/dist/client/assets/{login-D7Jikqkx.js → login-3GauQMNJ.js} +1 -1
  92. package/dist/client/assets/{members-CbrqVZD0.js → members-wC3LaYXM.js} +1 -1
  93. package/dist/client/assets/{monaco-editor-BQ7pW5ff.js → monaco-editor-DEH3BQYV.js} +1 -1
  94. package/dist/client/assets/{monitoring-stats-row-SXq2jHo-.js → monitoring-stats-row-p4rwLqzV.js} +1 -1
  95. package/dist/client/assets/{oauth-callback-ai-provider-B5rmdYO6.js → oauth-callback-ai-provider-fZrOq5Z5.js} +1 -1
  96. package/dist/client/assets/{oauth-callback-D9z1glg_.js → oauth-callback-cXl4wz4V.js} +1 -1
  97. package/dist/client/assets/{onboarding-DJg6jzBo.js → onboarding-pK8C-td_.js} +1 -1
  98. package/dist/client/assets/{org-layout-DNMh9CA8.js → org-layout-BjvDCQaj.js} +1 -1
  99. package/dist/client/assets/{org-plugin-layout-C4mBMD9Y.js → org-plugin-layout-BsxDAG3R.js} +1 -1
  100. package/dist/client/assets/{pair-Djwe0G6A.js → pair-BjuR1Vev.js} +1 -1
  101. package/dist/client/assets/{plugin-empty-state-DXGvnmHS.js → plugin-empty-state-Yj66KVWm.js} +1 -1
  102. package/dist/client/assets/{plugin-header-DMi6NssO.js → plugin-header-Cl0DmTkb.js} +1 -1
  103. package/dist/client/assets/{plugin-layout-DyoLqtto.js → plugin-layout-DyHctLfj.js} +1 -1
  104. package/dist/client/assets/{popover-B3ZJkv1X.js → popover-Ck8t9DNd.js} +1 -1
  105. package/dist/client/assets/{profile-bwpSCXK8.js → profile-ClJRsqlz.js} +1 -1
  106. package/dist/client/assets/{project-app-view-C28Lu6JW.js → project-app-view-PrZuri_l.js} +1 -1
  107. package/dist/client/assets/registry-ChBuKs9l.js +2 -0
  108. package/dist/client/assets/{registry-layout-WdDYCZVo.js → registry-layout-CzSdO28_.js} +1 -1
  109. package/dist/client/assets/{required-auth-layout-BfqeenZD.js → required-auth-layout-CXpY2cQd.js} +1 -1
  110. package/dist/client/assets/{reset-password-DdfHxDeE.js → reset-password-CMm6pkup.js} +1 -1
  111. package/dist/client/assets/{roles-vnRYdV1f.js → roles-O8p4CFWf.js} +1 -1
  112. package/dist/client/assets/{scroll-area-DrFl9U4a.js → scroll-area-DJUXiZ9b.js} +1 -1
  113. package/dist/client/assets/{search-input-CMLJ3Wsm.js → search-input-D9rgJLcT.js} +1 -1
  114. package/dist/client/assets/{select-DzIYCXFe.js → select-BtT3gpc8.js} +1 -1
  115. package/dist/client/assets/{select-model-CiWRE-HR.js → select-model-BYU8vEdG.js} +1 -1
  116. package/dist/client/assets/{settings-layout-CXmawVKq.js → settings-layout-DVDnaToH.js} +1 -1
  117. package/dist/client/assets/{settings-section-lOrDfOLA.js → settings-section-A8NDDpFq.js} +1 -1
  118. package/dist/client/assets/{shell-layout-3sPXMC2q.js → shell-layout-BzqO6QrK.js} +1 -1
  119. package/dist/client/assets/{skeleton-BB6q1Jf0.js → skeleton-BkW87z8Y.js} +1 -1
  120. package/dist/client/assets/{sso-DBghkAxa.js → sso-DtYY3WTz.js} +1 -1
  121. package/dist/client/assets/{store-CMzaWJlh.js → store-CbZ5JO_W.js} +1 -1
  122. package/dist/client/assets/store-registry-gwif4zfV.js +2 -0
  123. package/dist/client/assets/{switch-Dw6ZsUQv.js → switch-CeIz4a0t.js} +1 -1
  124. package/dist/client/assets/{table-nndVTIcn.js → table-BW-rIPEf.js} +1 -1
  125. package/dist/client/assets/{tabs-CkABefLh.js → tabs-C5GRvtY8.js} +1 -1
  126. package/dist/client/assets/{task-status-CsAoWRGS.js → task-status-ChvkxFoN.js} +1 -1
  127. package/dist/client/assets/{textarea-Bqwvzz4k.js → textarea-DLbi42IX.js} +1 -1
  128. package/dist/client/assets/{toggle-group-CxuD5z8Q.js → toggle-group-D9s6Qnlj.js} +1 -1
  129. package/dist/client/assets/{tools-list-fJoQpcpH.js → tools-list-Bl0UtEt-.js} +1 -1
  130. package/dist/client/assets/{tooltip-BqbpHyUI.js → tooltip-Dmy1JK40.js} +1 -1
  131. package/dist/client/assets/{types-BbqjsGJC.js → types-BJMFxBFM.js} +1 -1
  132. package/dist/client/assets/{use-ai-providers-CtlaBybr.js → use-ai-providers-CrOxHqDh.js} +1 -1
  133. package/dist/client/assets/{use-collections-9h_90sOV.js → use-collections-D6UN6Et8.js} +1 -1
  134. package/dist/client/assets/{use-connection-BeUrKc-W.js → use-connection-okJtNg-z.js} +1 -1
  135. package/dist/client/assets/{use-copy-DByDW6i6.js → use-copy-GhMNNjgc.js} +1 -1
  136. package/dist/client/assets/{use-create-virtual-mcp-DugmwWw7.js → use-create-virtual-mcp-BK5MfCsr.js} +1 -1
  137. package/dist/client/assets/{use-decopilot-events-Is-qrULZ.js → use-decopilot-events-CH_hOp3h.js} +1 -1
  138. package/dist/client/assets/{use-delete-connection-CIDS_oeV.js → use-delete-connection-CFVqRzdi.js} +1 -1
  139. package/dist/client/assets/{use-infinite-scroll-D66tpKhl.js → use-infinite-scroll-BJayiynP.js} +1 -1
  140. package/dist/client/assets/{use-list-state-oQu7t2wW.js → use-list-state-jGWeHOcg.js} +1 -1
  141. package/dist/client/assets/{use-mcp-tools-68tSGJbm.js → use-mcp-tools-DrTCTUYm.js} +1 -1
  142. package/dist/client/assets/{use-members-DD578ib8.js → use-members-DdbTjqv-.js} +1 -1
  143. package/dist/client/assets/{use-navigate-to-agent-CT4zY_xl.js → use-navigate-to-agent-BYNqqJQ5.js} +1 -1
  144. package/dist/client/assets/{use-org-sso-CyfjhApb.js → use-org-sso-Bsg_IZFZ.js} +1 -1
  145. package/dist/client/assets/{use-organization-roles-DbZZzk9o.js → use-organization-roles-BmLHoXKs.js} +1 -1
  146. package/dist/client/assets/{use-organization-settings-67oQZCDS.js → use-organization-settings-j6PDzIGz.js} +1 -1
  147. package/dist/client/assets/{use-registry-connections-Bvrsf4lw.js → use-registry-connections-CgQyGHAH.js} +1 -1
  148. package/dist/client/assets/{use-status-sounds-DM-ULvaW.js → use-status-sounds-_L8GZOUh.js} +1 -1
  149. package/dist/client/assets/{use-tasks-CuTHQpto.js → use-tasks-DK2by51E.js} +1 -1
  150. package/dist/client/assets/{use-view-mode-jTFzVxXe.js → use-view-mode-DZXCRWHN.js} +1 -1
  151. package/dist/client/assets/{use-virtual-mcp-V1mPdN3N.js → use-virtual-mcp-D50Foh5R.js} +1 -1
  152. package/dist/client/assets/useInfiniteQuery-DXe6VMYm.js +1 -0
  153. package/dist/client/assets/useSuspenseInfiniteQuery-CO9lgsHl.js +1 -0
  154. package/dist/client/assets/{user-DNrniKSb.js → user-DLXr9rpE.js} +1 -1
  155. package/dist/client/assets/{view-mode-toggle-DaD8j7dr.js → view-mode-toggle-C03hOMgr.js} +1 -1
  156. package/dist/client/assets/{workflow-DsgwzBJD.js → workflow-CX2neNEp.js} +1 -1
  157. package/dist/client/assets/workflow-detail-ichjN1O3.js +1 -0
  158. package/dist/client/index.html +1 -1
  159. package/dist/server/cli.js +2 -2
  160. package/dist/server/node_modules/xtend/.jshintrc +30 -0
  161. package/dist/server/node_modules/{postgres-array/license → xtend/LICENSE} +1 -2
  162. package/dist/server/node_modules/xtend/README.md +32 -0
  163. package/dist/server/node_modules/xtend/immutable.js +19 -0
  164. package/dist/server/node_modules/xtend/mutable.js +17 -0
  165. package/dist/server/node_modules/xtend/package.json +55 -0
  166. package/dist/server/node_modules/xtend/test.js +103 -0
  167. package/dist/server/server.js +1 -1
  168. package/package.json +1 -1
  169. package/dist/client/assets/ai-providers-Dhg51hJN.js +0 -1
  170. package/dist/client/assets/index-DtZpCbYZ.js +0 -1
  171. package/dist/client/assets/registry-BCl-B74Z.js +0 -2
  172. package/dist/client/assets/store-registry-hLm8uJ3u.js +0 -2
  173. package/dist/client/assets/useInfiniteQuery-OuGeiI1N.js +0 -1
  174. package/dist/client/assets/useSuspenseInfiniteQuery-DN5xf-y2.js +0 -1
  175. package/dist/client/assets/workflow-detail-BqCAg3E0.js +0 -1
  176. package/dist/server/node_modules/ansi-styles/index.d.ts +0 -236
  177. package/dist/server/node_modules/ansi-styles/index.js +0 -223
  178. package/dist/server/node_modules/ansi-styles/license +0 -9
  179. package/dist/server/node_modules/ansi-styles/package.json +0 -54
  180. package/dist/server/node_modules/ansi-styles/readme.md +0 -173
  181. package/dist/server/node_modules/mimic-fn/index.d.ts +0 -54
  182. package/dist/server/node_modules/mimic-fn/index.js +0 -13
  183. package/dist/server/node_modules/mimic-fn/license +0 -9
  184. package/dist/server/node_modules/mimic-fn/package.json +0 -42
  185. package/dist/server/node_modules/mimic-fn/readme.md +0 -69
  186. package/dist/server/node_modules/pg/LICENSE +0 -21
  187. package/dist/server/node_modules/pg/README.md +0 -95
  188. package/dist/server/node_modules/pg/esm/index.mjs +0 -20
  189. package/dist/server/node_modules/pg/lib/client.js +0 -743
  190. package/dist/server/node_modules/pg/lib/connection-parameters.js +0 -171
  191. package/dist/server/node_modules/pg/lib/connection.js +0 -221
  192. package/dist/server/node_modules/pg/lib/crypto/cert-signatures.js +0 -122
  193. package/dist/server/node_modules/pg/lib/crypto/sasl.js +0 -212
  194. package/dist/server/node_modules/pg/lib/crypto/utils-legacy.js +0 -43
  195. package/dist/server/node_modules/pg/lib/crypto/utils-webcrypto.js +0 -89
  196. package/dist/server/node_modules/pg/lib/crypto/utils.js +0 -9
  197. package/dist/server/node_modules/pg/lib/defaults.js +0 -91
  198. package/dist/server/node_modules/pg/lib/index.js +0 -73
  199. package/dist/server/node_modules/pg/lib/native/client.js +0 -323
  200. package/dist/server/node_modules/pg/lib/native/index.js +0 -2
  201. package/dist/server/node_modules/pg/lib/native/query.js +0 -165
  202. package/dist/server/node_modules/pg/lib/query.js +0 -252
  203. package/dist/server/node_modules/pg/lib/result.js +0 -109
  204. package/dist/server/node_modules/pg/lib/stream.js +0 -83
  205. package/dist/server/node_modules/pg/lib/type-overrides.js +0 -35
  206. package/dist/server/node_modules/pg/lib/utils.js +0 -217
  207. package/dist/server/node_modules/pg/package.json +0 -76
  208. package/dist/server/node_modules/postgres-array/index.d.ts +0 -4
  209. package/dist/server/node_modules/postgres-array/index.js +0 -97
  210. package/dist/server/node_modules/postgres-array/package.json +0 -35
  211. package/dist/server/node_modules/postgres-array/readme.md +0 -43
  212. package/dist/server/node_modules/postgres-bytea/index.js +0 -33
  213. package/dist/server/node_modules/postgres-bytea/license +0 -21
  214. package/dist/server/node_modules/postgres-bytea/package.json +0 -34
  215. package/dist/server/node_modules/postgres-bytea/readme.md +0 -34
@@ -1636,7 +1636,7 @@ AS SELECT
1636
1636
  FROM monitoring_metrics
1637
1637
  GROUP BY organization_id, name, bucket, connection_id, tool_name, status
1638
1638
  `}),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 jA1(X){let Y={...process.env},G=f$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(() => (E$1(),L$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(() => (U30(),Px6));await K(W.databaseUrl);let{createDatabase:H}=await Promise.resolve().then(() => (JU(),Ex6)),{migrateToLatest:U}=await Promise.resolve().then(() => (Vr6(),Ir6)),B=H(W.databaseUrl);await U({keepOpen:!0,database:B,skipBetterAuth:!0})}if(G.settings.clickhouseUrl){let{ensureClickHouseRollup:K}=await Promise.resolve().then(() => js6);await K(G.settings.clickhouseUrl)}let $={...G.settings,databaseUrl:W.databaseUrl,natsUrls:W.natsUrls};return Pl0($),{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 yB0=D(()=>{an1();m9()});import{createServer as Ms6}from"net";function oi5(X){return new Promise((Y)=>{let G=Ms6();G.once("error",()=>Y(!1)),G.listen(X,"0.0.0.0",()=>{G.close(()=>Y(!0))})})}async function MA1(X){if(await oi5(X))return X;let Y=await new Promise((G,Q)=>{let J=Ms6();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 xB0=()=>{};var hB0={};M0(hB0,{startDevServer:()=>ei5});import{join as si5}from"path";function Rs6(X){return X.replace(/\x1b\[[0-9;]*m/g,"")}function Ss6(X){let Y=X.getReader(),G=new TextDecoder,Q="";function J(){let W=Q.split(`
1639
- `);Q=W.pop()??"";for(let Z of W){let $=Rs6(Z).replace(/^\[\d+\]\s*/,"").trim();if(!$)continue;EK({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=Rs6(Q).replace(/^\[\d+\]\s*/,"").trim();if(W)EK({method:"",path:"",status:0,duration:0,timestamp:new Date,rawLine:W})}})()}async function ei5(X){let{vitePort:Y,baseUrl:G,noTui:Q}=X,J=await MA1(Number(X.port)),{settings:W,services:Z,managedServiceNames:$}=await jA1({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)Ad({name:z.name,status:"ready",port:z.port});Ce(W),Re();let K=si5(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)Ss6(U.stdout),Ss6(U.stderr);let B=G||`http://localhost:${W.port}`;Se(B),Ad({name:"Vite",status:"ready",port:Number(Y)});let N=async(z)=>{if(U.kill(z),$.length>0){let{stopServices:O}=await Promise.resolve().then(() => (E$1(),L$1));await O(W.dataDir)}};return process.on("SIGINT",()=>N("SIGINT")),process.on("SIGTERM",()=>N("SIGTERM")),{port:Number(W.port),process:U}}var gB0=D(()=>{yB0();GF();xB0()});import{Box as uB0,Text as lB0}from"ink";import{jsx as ks6,jsxs as RA1}from"react/jsx-runtime";function Cs6(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 Gp5(X,Y){if(Xp5.has(X))return Y?{text:"\u25CF\u25CF\u25CF\u25CF\u25CF\u25CF",dimColor:!0}:{text:"not set",dimColor:!0};if(Yp5.has(X)){if(Array.isArray(Y)){if(Y.length===0)return{text:"not set",dimColor:!0};return{text:Y.map((W)=>Cs6(W)).join(", "),color:"cyan"}}let Q=Cs6(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 Qp5(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_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:"Transport",entries:[{key:"UNSAFE_ALLOW_STDIO_TRANSPORT",value:X.unsafeAllowStdioTransport}]},{title:"AI Gateway",entries:[{key:"DECO_AI_GATEWAY_ENABLED",value:X.aiGatewayEnabled},{key:"DECO_AI_GATEWAY_URL",value:X.aiGatewayUrl}]}]}function vs6({env:X}){let Y=Qp5(X);return ks6(uB0,{flexDirection:"column",children:Y.map((G)=>RA1(uB0,{flexDirection:"column",marginTop:1,children:[RA1(lB0,{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=Gp5(Q,J);return RA1(uB0,{children:[RA1(lB0,{dimColor:!0,children:[" ",Q.padEnd(36)]}),ks6(lB0,{color:W.color,dimColor:W.dimColor,children:W.text})]},Q)})]},G.title))})}var Xp5,Yp5;var _s6=D(()=>{Xp5=new Set(["BETTER_AUTH_SECRET","ENCRYPTION_KEY","MESH_JWT_SECRET","STUDIO_PROVISION_SECRET_KEY"]),Yp5=new Set(["DATABASE_URL","CLICKHOUSE_URL","NATS_URL"])});var mB0;var fs6=D(()=>{mB0={name:"decocms",version:"2.293.3",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","@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","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 AU,Text as MX}from"ink";import{Spinner as Zp5}from"@inkjs/ui";import{useSyncExternalStore as bs6}from"react";import{jsx as qY,jsxs as oQ}from"react/jsx-runtime";function Fp5(X,Y){if(!X||!Hp5.has(X))return X;let G=dB0[Y]??dB0[dB0.length-1];return X==="#875f00"?G[0]:G[1]}function ys6({status:X}){if(X==="pending")return qY(Zp5,{label:""});return qY(MX,{color:"green",children:"\u2713"})}function xs6({services:X,migrationsStatus:Y,home:G,serverUrl:Q,vibe:J}){let W=bs6(du0,mu0),Z=bs6(tu0,au0);return oQ(AU,{flexDirection:"column",paddingBottom:1,children:[J?oQ(AU,{flexDirection:"column",children:[W.map(($,K)=>{let H=Z[K],U=$.reduce((N,z)=>N+z.text.length,0),B=Math.max(0,Kp5-U);return oQ(AU,{flexDirection:"row",children:[$.map((N,z)=>{let O=Fp5(N.color,K);return O?qY(MX,{color:O,children:N.text},z):qY(MX,{children:N.text},z)}),qY(MX,{children:" ".repeat(B+2)}),H?.map((N,z)=>N.color?qY(MX,{color:N.color,children:N.char},z):qY(MX,{children:N.char},z))]},K)}),oQ(MX,{dimColor:!0,children:[" v",mB0.version]})]}):oQ(AU,{flexDirection:"column",marginTop:1,children:[Wp5.map(($,K)=>qY(MX,{color:$p5[K],children:$},K)),oQ(MX,{dimColor:!0,children:[" v",mB0.version]})]}),qY(AU,{marginBottom:1,children:qY(MX,{dimColor:!0,children:"\u2500".repeat(80)})}),qY(AU,{children:oQ(MX,{dimColor:!0,children:["Home: ",G]})}),oQ(AU,{gap:2,children:[X.map(($)=>oQ(AU,{gap:1,children:[oQ(MX,{children:[$.name," :",$.port||"...."]}),qY(ys6,{status:$.status})]},$.name)),oQ(AU,{gap:1,children:[qY(MX,{children:"Migrations"}),qY(ys6,{status:Y})]})]}),qY(AU,{children:Q?oQ(MX,{children:["Open in browser: ",qY(MX,{color:"cyan",children:Q})]}):qY(MX,{dimColor:!0,children:"Starting..."})}),oQ(AU,{gap:2,children:[oQ(MX,{dimColor:!0,children:[qY(MX,{bold:!0,dimColor:!0,children:"K"})," ","toggle config"]}),oQ(MX,{dimColor:!0,children:[qY(MX,{bold:!0,dimColor:!0,children:"L"})," ","toggle log flow"]}),oQ(MX,{dimColor:!0,children:[qY(MX,{bold:!0,dimColor:!0,children:"V"})," ","toggle vibe ",J?"\u266A Nihilore \xB7 CC BY 4.0":""]}),J&&oQ(MX,{dimColor:!0,children:[qY(MX,{bold:!0,dimColor:!0,children:"N"})," ","skip song"]})]})]})}var Wp5,$p5,dB0,Kp5=30,Hp5;var hs6=D(()=>{fs6();In1();Cn1();Wp5=[" \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 "],$p5=["#00ff64","#00ee5e","#00dc56","#00c84e","#00b444","#00a03c","#008832","#006e28"],dB0=[["#00ff64","#00cc50"],["#00f060","#00c04c"],["#00e05c","#00b448"],["#00d058","#00a844"],["#00c054","#009c40"],["#00b050","#00903c"],["#00a04c","#008438"],["#009048","#007834"],["#008044","#006c30"],["#007040","#00602c"],["#00603c","#005428"]],Hp5=new Set(["#875f00","#5f3800"])});import{useSyncExternalStore as Up5}from"react";function Bp5(){let X=process.stdout.rows||24,Y=process.stdout.columns||80;if(X!==SA1.rows||Y!==SA1.columns)SA1={rows:X,columns:Y};return SA1}function Np5(X){return process.stdout.on("resize",X),()=>{process.stdout.off("resize",X)}}function gs6(){return Up5(Np5,Bp5)}var SA1;var us6=D(()=>{SA1={rows:process.stdout.rows||24,columns:process.stdout.columns||80}});import{Box as zp5,Text as jX1}from"ink";import{useSyncExternalStore as Op5}from"react";import{jsx as cB0,jsxs as iB0}from"react/jsx-runtime";function Dp5(X){if(X>=500)return"red";if(X>=400)return"yellow";if(X>=300)return"cyan";return"green"}function ls6({logs:X,headerHeight:Y}){let{rows:G}=gs6(),{logFlow:Q}=Op5(Me,je),J=Math.max(1,G-Y-1),W=Q?X:X.slice(-J);return cB0(zp5,{flexDirection:"column",children:W.map((Z,$)=>{if(Z.rawLine)return cB0(jX1,{dimColor:!0,children:Z.rawLine},$);let K=Z.duration<1000?`${Z.duration}ms`:`${(Z.duration/1000).toFixed(1)}s`;return iB0(jX1,{children:[iB0(jX1,{dimColor:!0,children:[Z.method.padEnd(6)," ",Z.path.padEnd(30)," "]}),cB0(jX1,{color:Dp5(Z.status),children:Z.status}),iB0(jX1,{dimColor:!0,children:[" ",K.padStart(8)]})]},$)})})}var ms6=D(()=>{GF();us6()});var pB0={};M0(pB0,{App:()=>Tp5});import{Box as wp5,Text as Lp5,useInput as Ep5}from"ink";import{useSyncExternalStore as Pp5}from"react";import{jsx as CA1,jsxs as Ip5}from"react/jsx-runtime";function Tp5({home:X}){let Y=Pp5(Me,je);return Ep5((G)=>{if(G==="k"||G==="K")yn1();if(G==="l"||G==="L")xn1();if((G==="v"||G==="V")&&Y.dataDir)fn1(Y.dataDir),hn1();if((G==="n"||G==="N")&&Y.vibe)_n1()}),Ip5(wp5,{flexDirection:"column",children:[CA1(xs6,{services:Y.services,migrationsStatus:Y.migrationsStatus,home:X,serverUrl:Y.serverUrl,vibe:Y.vibe}),Y.viewMode==="config"?Y.env?CA1(vs6,{env:Y.env}):CA1(Lp5,{dimColor:!0,children:"Loading configuration..."}):CA1(ls6,{logs:Y.logs,headerHeight:Y.vibe?Ap5:qp5})]})}var qp5=15,Ap5=19;var nB0=D(()=>{_s6();hs6();ms6();GF();qd()});function ds6(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),DECOCMS_ALLOW_LOCAL_PROD:String(X.allowLocalProd),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_"))),UNSAFE_ALLOW_STDIO_TRANSPORT:String(X.unsafeAllowStdioTransport),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,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,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}}function is6(X){if(!X)return!1;try{return new URL(X).host==="api.decocms.com"&&X!=="https://studio.decocms.com/org/deco/registry/mcp"}catch{return!1}}var cs6="https://studio.decocms.com/org/deco/registry/mcp";var aB0=(X,Y,G)=>{return(Q,J)=>{let W=-1;return Z(0);async function Z($){if($<=W)throw Error("next() called multiple times");W=$;let K,H=!1,U;if(X[$])U=X[$][0][0],Q.req.routeIndex=$;else U=$===X.length&&J||void 0;if(U)try{K=await U(Q,()=>Z($+1))}catch(B){if(B instanceof Error&&Y)Q.error=B,K=await Y(B,Q),H=!0;else throw B}else if(Q.finalized===!1&&G)K=await G(Q);if(K&&(Q.finalized===!1||H))Q.res=K;return Q}}};var ps6=()=>{};var M9;var Pq=D(()=>{M9=class extends Error{res;status;constructor(X=500,Y){super(Y?.message,{cause:Y?.cause});this.res=Y?.res,this.status=X}getResponse(){if(this.res)return new Response(this.res.body,{status:this.status,headers:this.res.headers});return new Response(this.message,{status:this.status})}}});var ns6;var as6=D(()=>{ns6=Symbol()});async function Vp5(X,Y){let G=await X.formData();if(G)return jp5(G,Y);return{}}function jp5(X,Y){let G=Object.create(null);if(X.forEach((Q,J)=>{if(!(Y.all||J.endsWith("[]")))G[J]=Q;else Mp5(G,J,Q)}),Y.dot)Object.entries(G).forEach(([Q,J])=>{if(Q.includes("."))Rp5(G,Q,J),delete G[Q]});return G}var ts6=async(X,Y=Object.create(null))=>{let{all:G=!1,dot:Q=!1}=Y,W=(X instanceof kA1?X.raw.headers:X.headers).get("Content-Type");if(W?.startsWith("multipart/form-data")||W?.startsWith("application/x-www-form-urlencoded"))return Vp5(X,{all:G,dot:Q});return{}},Mp5=(X,Y,G)=>{if(X[Y]!==void 0)if(Array.isArray(X[Y]))X[Y].push(G);else X[Y]=[X[Y],G];else if(!Y.endsWith("[]"))X[Y]=G;else X[Y]=[G]},Rp5=(X,Y,G)=>{if(/(?:^|\.)__proto__\./.test(Y))return;let Q=X,J=Y.split(".");J.forEach((W,Z)=>{if(Z===J.length-1)Q[W]=G;else{if(!Q[W]||typeof Q[W]!=="object"||Array.isArray(Q[W])||Q[W]instanceof File)Q[W]=Object.create(null);Q=Q[W]}})};var rs6=D(()=>{tB0()});var oB0=(X)=>{let Y=X.split("/");if(Y[0]==="")Y.shift();return Y},os6=(X)=>{let{groups:Y,path:G}=Sp5(X),Q=oB0(G);return Cp5(Q,Y)},Sp5=(X)=>{let Y=[];return X=X.replace(/\{[^}]+\}/g,(G,Q)=>{let J=`@${Q}`;return Y.push([J,G]),J}),{groups:Y,path:X}},Cp5=(X,Y)=>{for(let G=Y.length-1;G>=0;G--){let[Q]=Y[G];for(let J=X.length-1;J>=0;J--)if(X[J].includes(Q)){X[J]=X[J].replace(Q,Y[G][1]);break}}return X},vA1,ss6=(X,Y)=>{if(X==="*")return"*";let G=X.match(/^\:([^\{\}]+)(?:\{(.+)\})?$/);if(G){let Q=`${X}#${Y}`;if(!vA1[Q])if(G[2])vA1[Q]=Y&&Y[0]!==":"&&Y[0]!=="*"?[Q,G[1],new RegExp(`^${G[2]}(?=/${Y})`)]:[X,G[1],new RegExp(`^${G[2]}$`)];else vA1[Q]=[X,G[1],!0];return vA1[Q]}return null},ra=(X,Y)=>{try{return Y(X)}catch{return X.replace(/(?:%[0-9A-Fa-f]{2})+/g,(G)=>{try{return Y(G)}catch{return G}})}},es6=(X)=>ra(X,decodeURI),sB0=(X)=>{let Y=X.url,G=Y.indexOf("/",Y.indexOf(":")+4),Q=G;for(;Q<Y.length;Q++){let J=Y.charCodeAt(Q);if(J===37){let W=Y.indexOf("?",Q),Z=Y.indexOf("#",Q),$=W===-1?Z===-1?void 0:Z:Z===-1?W:Math.min(W,Z),K=Y.slice(G,$);return es6(K.includes("%25")?K.replace(/%25/g,"%2525"):K)}else if(J===63||J===35)break}return Y.slice(G,Q)},Xe6=(X)=>{let Y=sB0(X);return Y.length>1&&Y.at(-1)==="/"?Y.slice(0,-1):Y},Mj=(X,Y,...G)=>{if(G.length)Y=Mj(Y,...G);return`${X?.[0]==="/"?"":"/"}${X}${Y==="/"?"":`${X?.at(-1)==="/"?"":"/"}${Y?.[0]==="/"?Y.slice(1):Y}`}`},_A1=(X)=>{if(X.charCodeAt(X.length-1)!==63||!X.includes(":"))return null;let Y=X.split("/"),G=[],Q="";return Y.forEach((J)=>{if(J!==""&&!/\:/.test(J))Q+="/"+J;else if(/\:/.test(J))if(/\?/.test(J)){if(G.length===0&&Q==="")G.push("/");else G.push(Q);let W=J.replace("?","");Q+="/"+W,G.push(Q)}else Q+="/"+J}),G.filter((J,W,Z)=>Z.indexOf(J)===W)},rB0=(X)=>{if(!/[%+]/.test(X))return X;if(X.indexOf("+")!==-1)X=X.replace(/\+/g," ");return X.indexOf("%")!==-1?ra(X,MX1):X},Ye6=(X,Y,G)=>{let Q;if(!G&&Y&&!/[%+]/.test(Y)){let Z=X.indexOf("?",8);if(Z===-1)return;if(!X.startsWith(Y,Z+1))Z=X.indexOf(`&${Y}`,Z+1);while(Z!==-1){let $=X.charCodeAt(Z+Y.length+1);if($===61){let K=Z+Y.length+2,H=X.indexOf("&",K);return rB0(X.slice(K,H===-1?void 0:H))}else if($==38||isNaN($))return"";Z=X.indexOf(`&${Y}`,Z+1)}if(Q=/[%+]/.test(X),!Q)return}let J={};Q??=/[%+]/.test(X);let W=X.indexOf("?",8);while(W!==-1){let Z=X.indexOf("&",W+1),$=X.indexOf("=",W);if($>Z&&Z!==-1)$=-1;let K=X.slice(W+1,$===-1?Z===-1?void 0:Z:$);if(Q)K=rB0(K);if(W=Z,K==="")continue;let H;if($===-1)H="";else if(H=X.slice($+1,Z===-1?void 0:Z),Q)H=rB0(H);if(G){if(!(J[K]&&Array.isArray(J[K])))J[K]=[];J[K].push(H)}else J[K]??=H}return Y?J[Y]:J},Ge6,Qe6=(X,Y)=>{return Ye6(X,Y,!0)},MX1;var qq=D(()=>{vA1={},Ge6=Ye6,MX1=decodeURIComponent});var Je6=(X)=>ra(X,MX1),kA1;var tB0=D(()=>{Pq();as6();rs6();qq();kA1=class{raw;#X;#Y;routeIndex=0;path;bodyCache={};constructor(X,Y="/",G=[[]]){this.raw=X,this.path=Y,this.#Y=G,this.#X={}}param(X){return X?this.#G(X):this.#Q()}#G(X){let Y=this.#Y[0][this.routeIndex][1][X],G=this.#J(Y);return G&&/\%/.test(G)?Je6(G):G}#Q(){let X={},Y=Object.keys(this.#Y[0][this.routeIndex][1]);for(let G of Y){let Q=this.#J(this.#Y[0][this.routeIndex][1][G]);if(Q!==void 0)X[G]=/\%/.test(Q)?Je6(Q):Q}return X}#J(X){return this.#Y[1]?this.#Y[1][X]:X}query(X){return Ge6(this.url,X)}queries(X){return Qe6(this.url,X)}header(X){if(X)return this.raw.headers.get(X)??void 0;let Y={};return this.raw.headers.forEach((G,Q)=>{Y[Q]=G}),Y}async parseBody(X){return ts6(this,X)}#Z=(X)=>{let{bodyCache:Y,raw:G}=this,Q=Y[X];if(Q)return Q;let J=Object.keys(Y)[0];if(J)return Y[J].then((W)=>{if(J==="json")W=JSON.stringify(W);return new Response(W)[X]()});return Y[X]=G[X]()};json(){return this.#Z("text").then((X)=>JSON.parse(X))}text(){return this.#Z("text")}arrayBuffer(){return this.#Z("arrayBuffer")}blob(){return this.#Z("blob")}formData(){return this.#Z("formData")}addValidatedData(X,Y){this.#X[X]=Y}valid(X){return this.#X[X]}get url(){return this.raw.url}get method(){return this.raw.method}get[ns6](){return this.#Y}get matchedRoutes(){return this.#Y[0].map(([[,X]])=>X)}get routePath(){return this.#Y[0].map(([[,X]])=>X)[this.routeIndex].path}}});var fA1,Ze6=(X,Y)=>{let G=new String(X);return G.isEscaped=!0,G.callbacks=Y,G},RX1=async(X,Y,G,Q,J)=>{if(typeof X==="object"&&!(X instanceof String)){if(!(X instanceof Promise))X=X.toString();if(X instanceof Promise)X=await X}let W=X.callbacks;if(!W?.length)return Promise.resolve(X);if(J)J[0]+=X;else J=[X];let Z=Promise.all(W.map(($)=>$({phase:Y,buffer:J,context:Q}))).then(($)=>Promise.all($.filter(Boolean).map((K)=>RX1(K,Y,!1,Q,J))).then(()=>J[0]));if(G)return Ze6(await Z,W);else return Z};var bA1=D(()=>{fA1={Stringify:1,BeforeStream:2,Stream:3}});var We6="text/plain; charset=UTF-8",eB0=(X,Y)=>{return{"Content-Type":X,...Y}},SX1=(X,Y)=>new Response(X,Y),$e6=class{#X;#Y;env={};#G;finalized=!1;error;#Q;#J;#Z;#$;#W;#K;#H;#U;#B;constructor(X,Y){if(this.#X=X,Y)this.#J=Y.executionCtx,this.env=Y.env,this.#K=Y.notFoundHandler,this.#B=Y.path,this.#U=Y.matchResult}get req(){return this.#Y??=new kA1(this.#X,this.#B,this.#U),this.#Y}get event(){if(this.#J&&"respondWith"in this.#J)return this.#J;else throw Error("This context has no FetchEvent")}get executionCtx(){if(this.#J)return this.#J;else throw Error("This context has no ExecutionContext")}get res(){return this.#Z||=SX1(null,{headers:this.#H??=new Headers})}set res(X){if(this.#Z&&X){X=SX1(X.body,X);for(let[Y,G]of this.#Z.headers.entries()){if(Y==="content-type")continue;if(Y==="set-cookie"){let Q=this.#Z.headers.getSetCookie();X.headers.delete("set-cookie");for(let J of Q)X.headers.append("set-cookie",J)}else X.headers.set(Y,G)}}this.#Z=X,this.finalized=!0}render=(...X)=>{return this.#W??=(Y)=>this.html(Y),this.#W(...X)};setLayout=(X)=>this.#$=X;getLayout=()=>this.#$;setRenderer=(X)=>{this.#W=X};header=(X,Y,G)=>{if(this.finalized)this.#Z=SX1(this.#Z.body,this.#Z);let Q=this.#Z?this.#Z.headers:this.#H??=new Headers;if(Y===void 0)Q.delete(X);else if(G?.append)Q.append(X,Y);else Q.set(X,Y)};status=(X)=>{this.#Q=X};set=(X,Y)=>{this.#G??=new Map,this.#G.set(X,Y)};get=(X)=>{return this.#G?this.#G.get(X):void 0};get var(){if(!this.#G)return{};return Object.fromEntries(this.#G)}#F(X,Y,G){let Q=this.#Z?new Headers(this.#Z.headers):this.#H??new Headers;if(typeof Y==="object"&&"headers"in Y){let W=Y.headers instanceof Headers?Y.headers:new Headers(Y.headers);for(let[Z,$]of W)if(Z.toLowerCase()==="set-cookie")Q.append(Z,$);else Q.set(Z,$)}if(G)for(let[W,Z]of Object.entries(G))if(typeof Z==="string")Q.set(W,Z);else{Q.delete(W);for(let $ of Z)Q.append(W,$)}let J=typeof Y==="number"?Y:Y?.status??this.#Q;return SX1(X,{status:J,headers:Q})}newResponse=(...X)=>this.#F(...X);body=(X,Y,G)=>this.#F(X,Y,G);text=(X,Y,G)=>{return!this.#H&&!this.#Q&&!Y&&!G&&!this.finalized?new Response(X):this.#F(X,Y,eB0(We6,G))};json=(X,Y,G)=>{return this.#F(JSON.stringify(X),Y,eB0("application/json",G))};html=(X,Y,G)=>{let Q=(J)=>this.#F(J,Y,eB0("text/html; charset=UTF-8",G));return typeof X==="object"?RX1(X,fA1.Stringify,!1,{}).then(Q):Q(X)};redirect=(X,Y)=>{let G=String(X);return this.header("Location",!/[^\x00-\xFF]/.test(G)?G:encodeURI(G)),this.newResponse(null,Y??302)};notFound=()=>{return this.#K??=()=>SX1(),this.#K(this)}};var yA1=D(()=>{tB0();bA1()});var T7="ALL",Ke6="all",He6,xA1="Can not add a route since the matcher is already built.",hA1;var Aq=D(()=>{He6=["get","post","put","delete","options","patch"],hA1=class extends Error{}});var XN0="__COMPOSED_HANDLER";var YN0=()=>{};var kp5=(X)=>{return X.text("404 Not Found",404)},Fe6=(X,Y)=>{if("getResponse"in X){let G=X.getResponse();return Y.newResponse(G.body,G)}return console.error(X),Y.text("Internal Server Error",500)},Ue6=class X{get;post;put;delete;options;patch;all;on;use;router;getPath;_basePath="/";#X="/";routes=[];constructor(Y={}){[...He6,Ke6].forEach((W)=>{this[W]=(Z,...$)=>{if(typeof Z==="string")this.#X=Z;else this.#Q(W,this.#X,Z);return $.forEach((K)=>{this.#Q(W,this.#X,K)}),this}}),this.on=(W,Z,...$)=>{for(let K of[Z].flat()){this.#X=K;for(let H of[W].flat())$.map((U)=>{this.#Q(H.toUpperCase(),this.#X,U)})}return this},this.use=(W,...Z)=>{if(typeof W==="string")this.#X=W;else this.#X="*",Z.unshift(W);return Z.forEach(($)=>{this.#Q(T7,this.#X,$)}),this};let{strict:Q,...J}=Y;Object.assign(this,J),this.getPath=Q??!0?Y.getPath??sB0:Xe6}#Y(){let Y=new X({router:this.router,getPath:this.getPath});return Y.errorHandler=this.errorHandler,Y.#G=this.#G,Y.routes=this.routes,Y}#G=kp5;errorHandler=Fe6;route(Y,G){let Q=this.basePath(Y);return G.routes.map((J)=>{let W;if(G.errorHandler===Fe6)W=J.handler;else W=async(Z,$)=>(await aB0([],G.errorHandler)(Z,()=>J.handler(Z,$))).res,W[XN0]=J.handler;Q.#Q(J.method,J.path,W)}),this}basePath(Y){let G=this.#Y();return G._basePath=Mj(this._basePath,Y),G}onError=(Y)=>{return this.errorHandler=Y,this};notFound=(Y)=>{return this.#G=Y,this};mount(Y,G,Q){let J,W;if(Q)if(typeof Q==="function")W=Q;else if(W=Q.optionHandler,Q.replaceRequest===!1)J=(K)=>K;else J=Q.replaceRequest;let Z=W?(K)=>{let H=W(K);return Array.isArray(H)?H:[H]}:(K)=>{let H=void 0;try{H=K.executionCtx}catch{}return[K.env,H]};J||=(()=>{let K=Mj(this._basePath,Y),H=K==="/"?0:K.length;return(U)=>{let B=new URL(U.url);return B.pathname=B.pathname.slice(H)||"/",new Request(B,U)}})();let $=async(K,H)=>{let U=await G(J(K.req.raw),...Z(K));if(U)return U;await H()};return this.#Q(T7,Mj(Y,"*"),$),this}#Q(Y,G,Q){Y=Y.toUpperCase(),G=Mj(this._basePath,G);let J={basePath:this._basePath,path:G,method:Y,handler:Q};this.router.add(Y,G,[Q,J]),this.routes.push(J)}#J(Y,G){if(Y instanceof Error)return this.errorHandler(Y,G);throw Y}#Z(Y,G,Q,J){if(J==="HEAD")return(async()=>new Response(null,await this.#Z(Y,G,Q,"GET")))();let W=this.getPath(Y,{env:Q}),Z=this.router.match(J,W),$=new $e6(Y,{path:W,matchResult:Z,env:Q,executionCtx:G,notFoundHandler:this.#G});if(Z[0].length===1){let H;try{H=Z[0][0][0][0]($,async()=>{$.res=await this.#G($)})}catch(U){return this.#J(U,$)}return H instanceof Promise?H.then((U)=>U||($.finalized?$.res:this.#G($))).catch((U)=>this.#J(U,$)):H??this.#G($)}let K=aB0(Z[0],this.errorHandler,this.#G);return(async()=>{try{let H=await K($);if(!H.finalized)throw Error("Context is not finalized. Did you forget to return a Response object or `await next()`?");return H.res}catch(H){return this.#J(H,$)}})()}fetch=(Y,...G)=>{return this.#Z(Y,G[1],G[0],Y.method)};request=(Y,G,Q,J)=>{if(Y instanceof Request)return this.fetch(G?new Request(Y,G):Y,Q,J);return Y=Y.toString(),this.fetch(new Request(/^https?:\/\//.test(Y)?Y:`http://localhost${Mj("/",Y)}`,G),Q,J)};fire=()=>{addEventListener("fetch",(Y)=>{Y.respondWith(this.#Z(Y.request,Y,void 0,Y.request.method))})}};var Be6=D(()=>{ps6();yA1();Aq();YN0();qq()});function gA1(X,Y){let G=this.buildAllMatchers(),Q=(J,W)=>{let Z=G[J]||G[T7],$=Z[2][W];if($)return $;let K=W.match(Z[0]);if(!K)return[[],CX1];let H=K.indexOf("",1);return[Z[1][H],K]};return this.match=Q,Q(X,Y)}var CX1;var GN0=D(()=>{Aq();CX1=[]});function _p5(X,Y){if(X.length===1)return Y.length===1?X<Y?-1:1:-1;if(Y.length===1)return 1;if(X===kX1||X===vX1)return 1;else if(Y===kX1||Y===vX1)return-1;if(X===uA1)return 1;else if(Y===uA1)return-1;return X.length===Y.length?X<Y?-1:1:Y.length-X.length}var uA1="[^/]+",kX1=".*",vX1="(?:|/.*)",Rj,vp5,Ne6=class X{#X;#Y;#G=Object.create(null);insert(Y,G,Q,J,W){if(Y.length===0){if(this.#X!==void 0)throw Rj;if(W)return;this.#X=G;return}let[Z,...$]=Y,K=Z==="*"?$.length===0?["","",kX1]:["","",uA1]:Z==="/*"?["","",vX1]:Z.match(/^\:([^\{\}]+)(?:\{(.+)\})?$/),H;if(K){let U=K[1],B=K[2]||uA1;if(U&&K[2]){if(B===".*")throw Rj;if(B=B.replace(/^\((?!\?:)(?=[^)]+\)$)/,"(?:"),/\((?!\?:)/.test(B))throw Rj}if(H=this.#G[B],!H){if(Object.keys(this.#G).some((N)=>N!==kX1&&N!==vX1))throw Rj;if(W)return;if(H=this.#G[B]=new X,U!=="")H.#Y=J.varIndex++}if(!W&&U!=="")Q.push([U,H.#Y])}else if(H=this.#G[Z],!H){if(Object.keys(this.#G).some((U)=>U.length>1&&U!==kX1&&U!==vX1))throw Rj;if(W)return;H=this.#G[Z]=new X}H.insert($,G,Q,J,W)}buildRegExpStr(){let G=Object.keys(this.#G).sort(_p5).map((Q)=>{let J=this.#G[Q];return(typeof J.#Y==="number"?`(${Q})@${J.#Y}`:vp5.has(Q)?`\\${Q}`:Q)+J.buildRegExpStr()});if(typeof this.#X==="number")G.unshift(`#${this.#X}`);if(G.length===0)return"";if(G.length===1)return G[0];return"(?:"+G.join("|")+")"}};var QN0=D(()=>{Rj=Symbol(),vp5=new Set(".\\+*[^]$()")});var ze6=class{#X={varIndex:0};#Y=new Ne6;insert(X,Y,G){let Q=[],J=[];for(let Z=0;;){let $=!1;if(X=X.replace(/\{[^}]+\}/g,(K)=>{let H=`@\\${Z}`;return J[Z]=[H,K],Z++,$=!0,H}),!$)break}let W=X.match(/(?::[^\/]+)|(?:\/\*$)|./g)||[];for(let Z=J.length-1;Z>=0;Z--){let[$]=J[Z];for(let K=W.length-1;K>=0;K--)if(W[K].indexOf($)!==-1){W[K]=W[K].replace($,J[Z][1]);break}}return this.#Y.insert(W,Y,Q,this.#X,G),Q}buildRegExp(){let X=this.#Y.buildRegExpStr();if(X==="")return[/^$/,[],[]];let Y=0,G=[],Q=[];return X=X.replace(/#(\d+)|@(\d+)|\.\*\$/g,(J,W,Z)=>{if(W!==void 0)return G[++Y]=Number(W),"$()";if(Z!==void 0)return Q[Number(Z)]=++Y,"";return""}),[new RegExp(`^${X}`),G,Q]}};var Oe6=D(()=>{QN0()});function we6(X){return De6[X]??=new RegExp(X==="*"?"":`^${X.replace(/\/\*$|([.\\+*[^\]$()])/g,(Y,G)=>G?`\\${G}`:"(?:|/.*)")}$`)}function bp5(){De6=Object.create(null)}function yp5(X){let Y=new ze6,G=[];if(X.length===0)return fp5;let Q=X.map((H)=>[!/\*|\/:/.test(H[0]),...H]).sort(([H,U],[B,N])=>H?1:B?-1:U.length-N.length),J=Object.create(null);for(let H=0,U=-1,B=Q.length;H<B;H++){let[N,z,O]=Q[H];if(N)J[z]=[O.map(([E])=>[E,Object.create(null)]),CX1];else U++;let w;try{w=Y.insert(z,U,N)}catch(E){throw E===Rj?new hA1(z):E}if(N)continue;G[U]=O.map(([E,P])=>{let q=Object.create(null);P-=1;for(;P>=0;P--){let[M,j]=w[P];q[M]=j}return[E,q]})}let[W,Z,$]=Y.buildRegExp();for(let H=0,U=G.length;H<U;H++)for(let B=0,N=G[H].length;B<N;B++){let z=G[H][B]?.[1];if(!z)continue;let O=Object.keys(z);for(let w=0,E=O.length;w<E;w++)z[O[w]]=$[z[O[w]]]}let K=[];for(let H in Z)K[H]=G[Z[H]];return[W,K,J]}function oa(X,Y){if(!X)return;for(let G of Object.keys(X).sort((Q,J)=>J.length-Q.length))if(we6(G).test(Y))return[...X[G]];return}var fp5,De6,lA1=class{name="RegExpRouter";#X;#Y;constructor(){this.#X={[T7]:Object.create(null)},this.#Y={[T7]:Object.create(null)}}add(X,Y,G){let Q=this.#X,J=this.#Y;if(!Q||!J)throw Error(xA1);if(!Q[X])[Q,J].forEach(($)=>{$[X]=Object.create(null),Object.keys($[T7]).forEach((K)=>{$[X][K]=[...$[T7][K]]})});if(Y==="/*")Y="*";let W=(Y.match(/\/:/g)||[]).length;if(/\*$/.test(Y)){let $=we6(Y);if(X===T7)Object.keys(Q).forEach((K)=>{Q[K][Y]||=oa(Q[K],Y)||oa(Q[T7],Y)||[]});else Q[X][Y]||=oa(Q[X],Y)||oa(Q[T7],Y)||[];Object.keys(Q).forEach((K)=>{if(X===T7||X===K)Object.keys(Q[K]).forEach((H)=>{$.test(H)&&Q[K][H].push([G,W])})}),Object.keys(J).forEach((K)=>{if(X===T7||X===K)Object.keys(J[K]).forEach((H)=>$.test(H)&&J[K][H].push([G,W]))});return}let Z=_A1(Y)||[Y];for(let $=0,K=Z.length;$<K;$++){let H=Z[$];Object.keys(J).forEach((U)=>{if(X===T7||X===U)J[U][H]||=[...oa(Q[U],H)||oa(Q[T7],H)||[]],J[U][H].push([G,W-K+$+1])})}}match=gA1;buildAllMatchers(){let X=Object.create(null);return Object.keys(this.#Y).concat(Object.keys(this.#X)).forEach((Y)=>{X[Y]||=this.#G(Y)}),this.#X=this.#Y=void 0,bp5(),X}#G(X){let Y=[],G=X===T7;if([this.#X,this.#Y].forEach((Q)=>{let J=Q[X]?Object.keys(Q[X]).map((W)=>[W,Q[X][W]]):[];if(J.length!==0)G||=!0,Y.push(...J);else if(X!==T7)Y.push(...Object.keys(Q[T7]).map((W)=>[W,Q[T7][W]]))}),!G)return null;else return yp5(Y)}};var JN0=D(()=>{Aq();qq();GN0();QN0();Oe6();fp5=[/^$/,[],Object.create(null)],De6=Object.create(null)});var xp5=class{name="PreparedRegExpRouter";#X;#Y;constructor(X,Y){this.#X=X,this.#Y=Y}#G(X,Y){let G=this.#X[X];G[1].forEach((Q)=>Q&&Q.push(Y)),Object.values(G[2]).forEach((Q)=>Q[0].push(Y))}#Q(X,Y,G,Q,J){let W=this.#X[X];if(!J)W[2][Y][0].push([G,{}]);else Q.forEach((Z)=>{if(typeof Z==="number")W[1][Z].push([G,J]);else W[2][Z||Y][0].push([G,J])})}add(X,Y,G){if(!this.#X[X]){let J=this.#X[T7],W={};for(let Z in J[2])W[Z]=[J[2][Z][0].slice(),CX1];this.#X[X]=[J[0],J[1].map((Z)=>Array.isArray(Z)?Z.slice():0),W]}if(Y==="/*"||Y==="*"){let J=[G,{}];if(X===T7)for(let W in this.#X)this.#G(W,J);else this.#G(X,J);return}let Q=this.#Y[Y];if(!Q)throw Error(`Path ${Y} is not registered`);for(let[J,W]of Q)if(X===T7)for(let Z in this.#X)this.#Q(Z,Y,G,J,W);else this.#Q(X,Y,G,J,W)}buildAllMatchers(){return this.#X}match=gA1};var Le6=D(()=>{Aq();GN0();JN0()});var Ee6=D(()=>{JN0();Le6()});var ZN0=class{name="SmartRouter";#X=[];#Y=[];constructor(X){this.#X=X.routers}add(X,Y,G){if(!this.#Y)throw Error(xA1);this.#Y.push([X,Y,G])}match(X,Y){if(!this.#Y)throw Error("Fatal error");let G=this.#X,Q=this.#Y,J=G.length,W=0,Z;for(;W<J;W++){let $=G[W];try{for(let K=0,H=Q.length;K<H;K++)$.add(...Q[K]);Z=$.match(X,Y)}catch(K){if(K instanceof hA1)continue;throw K}this.match=$.match.bind($),this.#X=[$],this.#Y=void 0;break}if(W===J)throw Error("Fatal error");return this.name=`SmartRouter + ${this.activeRouter.name}`,Z}get activeRouter(){if(this.#Y||this.#X.length!==1)throw Error("No active router has been determined yet.");return this.#X[0]}};var Pe6=D(()=>{Aq()});var qe6=D(()=>{Pe6()});var _X1,hp5=(X)=>{for(let Y in X)return!0;return!1},Ae6=class X{#X;#Y;#G;#Q=0;#J=_X1;constructor(Y,G,Q){if(this.#Y=Q||Object.create(null),this.#X=[],Y&&G){let J=Object.create(null);J[Y]={handler:G,possibleKeys:[],score:0},this.#X=[J]}this.#G=[]}insert(Y,G,Q){this.#Q=++this.#Q;let J=this,W=os6(G),Z=[];for(let $=0,K=W.length;$<K;$++){let H=W[$],U=W[$+1],B=ss6(H,U),N=Array.isArray(B)?B[0]:H;if(N in J.#Y){if(J=J.#Y[N],B)Z.push(B[1]);continue}if(J.#Y[N]=new X,B)J.#G.push(B),Z.push(B[1]);J=J.#Y[N]}return J.#X.push({[Y]:{handler:Q,possibleKeys:Z.filter(($,K,H)=>H.indexOf($)===K),score:this.#Q}}),J}#Z(Y,G,Q,J,W){for(let Z=0,$=G.#X.length;Z<$;Z++){let K=G.#X[Z],H=K[Q]||K[T7],U={};if(H!==void 0){if(H.params=Object.create(null),Y.push(H),J!==_X1||W&&W!==_X1)for(let B=0,N=H.possibleKeys.length;B<N;B++){let z=H.possibleKeys[B],O=U[H.score];H.params[z]=W?.[z]&&!O?W[z]:J[z]??W?.[z],U[H.score]=!0}}}}search(Y,G){let Q=[];this.#J=_X1;let W=[this],Z=oB0(G),$=[],K=Z.length,H=null;for(let U=0;U<K;U++){let B=Z[U],N=U===K-1,z=[];for(let w=0,E=W.length;w<E;w++){let P=W[w],q=P.#Y[B];if(q)if(q.#J=P.#J,N){if(q.#Y["*"])this.#Z(Q,q.#Y["*"],Y,P.#J);this.#Z(Q,q,Y,P.#J)}else z.push(q);for(let M=0,j=P.#G.length;M<j;M++){let V=P.#G[M],R=P.#J===_X1?{}:{...P.#J};if(V==="*"){let h=P.#Y["*"];if(h)this.#Z(Q,h,Y,P.#J),h.#J=R,z.push(h);continue}let[k,_,v]=V;if(!B&&!(v instanceof RegExp))continue;let y=P.#Y[k];if(v instanceof RegExp){if(H===null){H=Array(K);let p=G[0]==="/"?1:0;for(let f=0;f<K;f++)H[f]=p,p+=Z[f].length+1}let h=G.substring(H[U]),i=v.exec(h);if(i){if(R[_]=i[0],this.#Z(Q,y,Y,P.#J,R),hp5(y.#Y)){y.#J=R;let p=i[0].match(/\//)?.length??0;($[p]||=[]).push(y)}continue}}if(v===!0||v.test(B))if(R[_]=B,N){if(this.#Z(Q,y,Y,R,P.#J),y.#Y["*"])this.#Z(Q,y.#Y["*"],Y,R,P.#J)}else y.#J=R,z.push(y)}}let O=$.shift();W=O?z.concat(O):z}if(Q.length>1)Q.sort((U,B)=>{return U.score-B.score});return[Q.map(({handler:U,params:B})=>[U,B])]}};var Te6=D(()=>{Aq();qq();_X1=Object.create(null)});var WN0=class{name="TrieRouter";#X;constructor(){this.#X=new Ae6}add(X,Y,G){let Q=_A1(Y);if(Q){for(let J=0,W=Q.length;J<W;J++)this.#X.insert(X,Q[J],G);return}this.#X.insert(X,Y,G)}match(X,Y){return this.#X.search(X,Y)}};var Ie6=D(()=>{qq();Te6()});var Ve6=D(()=>{Ie6()});var U5;var je6=D(()=>{Be6();Ee6();qe6();Ve6();U5=class extends Ue6{constructor(X={}){super(X);this.router=X.router??new ZN0({routers:[new lA1,new WN0]})}}});var NG=D(()=>{je6()});var Re6,gp5,Me6=(X)=>{let Y=0,G=X.length;while(Y<G){let Q=X.charCodeAt(Y);if(Q!==32&&Q!==9)break;Y++}while(G>Y){let Q=X.charCodeAt(G-1);if(Q!==32&&Q!==9)break;G--}return Y===0&&G===X.length?X:X.slice(Y,G)},$N0=(X,Y)=>{if(Y&&X.indexOf(Y)===-1)return{};let G=X.split(";"),Q={};for(let J of G){let W=J.indexOf("=");if(W===-1)continue;let Z=Me6(J.substring(0,W));if(Y&&Y!==Z||!Re6.test(Z))continue;let $=Me6(J.substring(W+1));if($.startsWith('"')&&$.endsWith('"'))$=$.slice(1,-1);if(gp5.test($)){if(Q[Z]=$.indexOf("%")!==-1?ra($,MX1):$,Y)break}}return Q},up5=(X,Y,G={})=>{if(!Re6.test(X))throw Error("Invalid cookie name");let Q=`${X}=${Y}`;if(X.startsWith("__Secure-")&&!G.secure)throw Error("__Secure- Cookie must have Secure attributes");if(X.startsWith("__Host-")){if(!G.secure)throw Error("__Host- Cookie must have Secure attributes");if(G.path!=="/")throw Error('__Host- Cookie must have Path attributes with "/"');if(G.domain)throw Error("__Host- Cookie must not have Domain attributes")}for(let J of["domain","path"])if(G[J]&&/[;\r\n]/.test(G[J]))throw Error(`${J} must not contain ";", "\\r", or "\\n"`);if(G&&typeof G.maxAge==="number"&&G.maxAge>=0){if(G.maxAge>34560000)throw Error("Cookies Max-Age SHOULD NOT be greater than 400 days (34560000 seconds) in duration.");Q+=`; Max-Age=${G.maxAge|0}`}if(G.domain&&G.prefix!=="host")Q+=`; Domain=${G.domain}`;if(G.path)Q+=`; Path=${G.path}`;if(G.expires){if(G.expires.getTime()-Date.now()>34560000000)throw Error("Cookies Expires SHOULD NOT be greater than 400 days (34560000 seconds) in the future.");Q+=`; Expires=${G.expires.toUTCString()}`}if(G.httpOnly)Q+="; HttpOnly";if(G.secure)Q+="; Secure";if(G.sameSite)Q+=`; SameSite=${G.sameSite.charAt(0).toUpperCase()+G.sameSite.slice(1)}`;if(G.priority)Q+=`; Priority=${G.priority.charAt(0).toUpperCase()+G.priority.slice(1)}`;if(G.partitioned){if(!G.secure)throw Error("Partitioned Cookie must have Secure attributes");Q+="; Partitioned"}return Q},mA1=(X,Y,G)=>{return Y=encodeURIComponent(Y),up5(X,Y,G)};var Se6=D(()=>{qq();Re6=/^[\w!#$%&'*.^`|~+-]+$/,gp5=/^[ !#-:<-[\]-~]*$/});var dA1=(X,Y,G)=>{let Q=X.req.raw.headers.get("Cookie");if(typeof Y==="string"){if(!Q)return;let W=Y;if(G==="secure")W="__Secure-"+Y;else if(G==="host")W="__Host-"+Y;return $N0(Q,W)[W]}if(!Q)return{};return $N0(Q)},lp5=(X,Y,G)=>{let Q;if(G?.prefix==="secure")Q=mA1("__Secure-"+X,Y,{path:"/",...G,secure:!0});else if(G?.prefix==="host")Q=mA1("__Host-"+X,Y,{...G,path:"/",secure:!0,domain:void 0});else Q=mA1(X,Y,{path:"/",...G});return Q},KN0=(X,Y,G,Q)=>{let J=lp5(Y,G,Q);X.header("Set-Cookie",J,{append:!0})};var HN0=D(()=>{Se6()});var Ce6=(X)=>{let G={...{origin:"*",allowMethods:["GET","HEAD","PUT","POST","DELETE","PATCH"],allowHeaders:[],exposeHeaders:[]},...X},Q=((W)=>{if(typeof W==="string")if(W==="*"){if(G.credentials)return(Z)=>Z||null;return()=>W}else return(Z)=>W===Z?Z:null;else if(typeof W==="function")return W;else return(Z)=>W.includes(Z)?Z:null})(G.origin),J=((W)=>{if(typeof W==="function")return W;else if(Array.isArray(W))return()=>W;else return()=>[]})(G.allowMethods);return async function(Z,$){function K(U,B){Z.res.headers.set(U,B)}let H=await Q(Z.req.header("origin")||"",Z);if(H)K("Access-Control-Allow-Origin",H);if(G.credentials)K("Access-Control-Allow-Credentials","true");if(G.exposeHeaders?.length)K("Access-Control-Expose-Headers",G.exposeHeaders.join(","));if(Z.req.method==="OPTIONS"){if(G.origin!=="*"||G.credentials)K("Vary","Origin");if(G.maxAge!=null)K("Access-Control-Max-Age",G.maxAge.toString());let U=await J(Z.req.header("origin")||"",Z);if(U.length)K("Access-Control-Allow-Methods",U.join(","));let B=G.allowHeaders;if(!B?.length){let N=Z.req.header("Access-Control-Request-Headers");if(N)B=N.split(/\s*,\s*/)}if(B?.length)K("Access-Control-Allow-Headers",B.join(",")),Z.res.headers.append("Vary","Access-Control-Request-Headers");return Z.res.headers.delete("Content-Length"),Z.res.headers.delete("Content-Type"),new Response(null,{headers:Z.res.headers,status:204,statusText:"No Content"})}if(await $(),G.origin!=="*"||G.credentials)Z.header("Vary","Origin",{append:!0})}};var ke6=()=>{};var ve6=()=>{try{return performance.now()}catch{}return Date.now()},FN0=(X)=>{let Y={total:!0,enabled:!0,totalDescription:"Total Response Time",autoEnd:!0,crossOrigin:!1,...X};return async function(Q,J){let W=[],Z=new Map;if(Q.get("metric"))return await J();if(Q.set("metric",{headers:W,timers:Z}),Y.total)OH(Q,"total",Y.totalDescription);if(await J(),Y.total)g$(Q,"total");if(Y.autoEnd)Z.forEach((K,H)=>g$(Q,H));if(typeof Y.enabled==="function"?Y.enabled(Q):Y.enabled){Q.res.headers.append("Server-Timing",W.join(","));let K=typeof Y.crossOrigin==="function"?Y.crossOrigin(Q):Y.crossOrigin;if(K)Q.res.headers.append("Timing-Allow-Origin",typeof K==="string"?K:"*")}}},_e6=(X,Y,G,Q,J)=>{let W=X.get("metric");if(!W){console.warn("Metrics not initialized! Please add the `timing()` middleware to this route!");return}if(typeof G==="number"){let Z=G.toFixed(J||1),$=Q?`${Y};dur=${Z};desc="${Q}"`:`${Y};dur=${Z}`;W.headers.push($)}else{let Z=G?`${Y};desc="${G}"`:`${Y}`;W.headers.push(Z)}},OH=(X,Y,G)=>{let Q=X.get("metric");if(!Q){console.warn("Metrics not initialized! Please add the `timing()` middleware to this route!");return}Q.timers.set(Y,{description:G,start:ve6()})},g$=(X,Y,G)=>{let Q=X.get("metric");if(!Q){console.warn("Metrics not initialized! Please add the `timing()` middleware to this route!");return}let J=Q.timers.get(Y);if(!J){console.warn(`Timer "${Y}" does not exist!`);return}let{description:W,start:Z}=J,$=ve6()-Z;_e6(X,Y,$,W,G),Q.timers.delete(Y)};var fe6=D(()=>{yA1()});var UN0=D(()=>{fe6()});function fX1(){let X={Organizations:[],Connections:[],"Virtual MCPs":[],Threads:[],Monitoring:[],Users:[],"API Keys":[],"Event Bus":[],Tags:[],"AI Providers":[],Automations:[],"Object Storage":[],Registry:[],GitHub:[],VM:[]};for(let Y of BN0)X[Y.category]?.push(Y);return X}var BN0;var NN0=D(()=>{BN0=[{name:"ORGANIZATION_CREATE",description:"Create a new organization",category:"Organizations"},{name:"ORGANIZATION_LIST",description:"List organizations",category:"Organizations"},{name:"ORGANIZATION_GET",description:"View organization details",category:"Organizations"},{name:"ORGANIZATION_UPDATE",description:"Update organization",category:"Organizations"},{name:"ORGANIZATION_DELETE",description:"Delete organization",category:"Organizations",dangerous:!0},{name:"ORGANIZATION_SETTINGS_GET",description:"View organization settings",category:"Organizations"},{name:"ORGANIZATION_SETTINGS_UPDATE",description:"Update organization settings",category:"Organizations"},{name:"BRAND_CONTEXT_LIST",description:"List brand contexts",category:"Organizations"},{name:"BRAND_CONTEXT_GET",description:"View brand context",category:"Organizations"},{name:"BRAND_CONTEXT_CREATE",description:"Create brand context",category:"Organizations"},{name:"BRAND_CONTEXT_UPDATE",description:"Update brand context",category:"Organizations"},{name:"BRAND_CONTEXT_DELETE",description:"Delete brand context",category:"Organizations",dangerous:!0},{name:"BRAND_CONTEXT_EXTRACT",description:"Extract brand context from website",category:"Organizations"},{name:"BRAND_GET",description:"Get brand (binding)",category:"Organizations"},{name:"BRAND_LIST",description:"List brands (binding)",category:"Organizations"},{name:"ORGANIZATION_DOMAIN_GET",description:"Get organization domain claim",category:"Organizations"},{name:"ORGANIZATION_DOMAIN_SET",description:"Set organization domain claim",category:"Organizations"},{name:"ORGANIZATION_DOMAIN_UPDATE",description:"Update organization domain settings",category:"Organizations"},{name:"ORGANIZATION_DOMAIN_CLEAR",description:"Clear organization domain claim",category:"Organizations"},{name:"ORGANIZATION_MEMBER_ADD",description:"Add members",category:"Organizations"},{name:"ORGANIZATION_MEMBER_REMOVE",description:"Remove members",category:"Organizations",dangerous:!0},{name:"ORGANIZATION_MEMBER_LIST",description:"List members",category:"Organizations"},{name:"ORGANIZATION_MEMBER_UPDATE_ROLE",description:"Update member roles",category:"Organizations"},{name:"COLLECTION_CONNECTIONS_CREATE",description:"Create connections",category:"Connections"},{name:"COLLECTION_CONNECTIONS_LIST",description:"List connections",category:"Connections"},{name:"COLLECTION_CONNECTIONS_GET",description:"View connection details",category:"Connections"},{name:"COLLECTION_CONNECTIONS_UPDATE",description:"Update connections",category:"Connections"},{name:"COLLECTION_CONNECTIONS_DELETE",description:"Delete connections",category:"Connections",dangerous:!0},{name:"CONNECTION_TEST",description:"Test connections",category:"Connections"},{name:"DATABASES_RUN_SQL",description:"Run SQL queries",category:"Connections",dangerous:!0},{name:"COLLECTION_VIRTUAL_MCP_CREATE",description:"Create virtual MCPs",category:"Virtual MCPs"},{name:"COLLECTION_VIRTUAL_MCP_LIST",description:"List virtual MCPs",category:"Virtual MCPs"},{name:"COLLECTION_VIRTUAL_MCP_GET",description:"View virtual MCP details",category:"Virtual MCPs"},{name:"COLLECTION_VIRTUAL_MCP_UPDATE",description:"Update virtual MCPs",category:"Virtual MCPs"},{name:"COLLECTION_VIRTUAL_MCP_DELETE",description:"Delete virtual MCPs",category:"Virtual MCPs",dangerous:!0},{name:"MONITORING_LOG_GET",description:"View monitoring log details",category:"Monitoring"},{name:"MONITORING_LOGS_LIST",description:"List monitoring logs",category:"Monitoring"},{name:"MONITORING_STATS",description:"View monitoring statistics",category:"Monitoring"},{name:"API_KEY_CREATE",description:"Create API key",category:"API Keys"},{name:"API_KEY_LIST",description:"List API keys",category:"API Keys"},{name:"API_KEY_UPDATE",description:"Update API key",category:"API Keys"},{name:"API_KEY_DELETE",description:"Delete API key",category:"API Keys",dangerous:!0},{name:"EVENT_PUBLISH",description:"Publish events",category:"Event Bus"},{name:"EVENT_SUBSCRIBE",description:"Subscribe to events",category:"Event Bus"},{name:"EVENT_UNSUBSCRIBE",description:"Unsubscribe from events",category:"Event Bus"},{name:"EVENT_CANCEL",description:"Cancel recurring events",category:"Event Bus"},{name:"EVENT_ACK",description:"Acknowledge event delivery",category:"Event Bus"},{name:"EVENT_SUBSCRIPTION_LIST",description:"List event subscriptions",category:"Event Bus"},{name:"EVENT_SYNC_SUBSCRIPTIONS",description:"Sync subscriptions to desired state",category:"Event Bus"},{name:"USER_GET",description:"Get a user by id",category:"Users"},{name:"COLLECTION_THREADS_CREATE",description:"Create threads",category:"Threads"},{name:"COLLECTION_THREADS_LIST",description:"List threads",category:"Threads"},{name:"COLLECTION_THREADS_GET",description:"View thread details",category:"Threads"},{name:"COLLECTION_THREADS_UPDATE",description:"Update threads",category:"Threads"},{name:"COLLECTION_THREADS_DELETE",description:"Delete threads",category:"Threads",dangerous:!0},{name:"COLLECTION_THREAD_MESSAGES_LIST",description:"List thread messages",category:"Threads"},{name:"TAGS_LIST",description:"List organization tags",category:"Tags"},{name:"TAGS_CREATE",description:"Create organization tag",category:"Tags"},{name:"TAGS_DELETE",description:"Delete organization tag",category:"Tags",dangerous:!0},{name:"MEMBER_TAGS_GET",description:"Get member tags",category:"Tags"},{name:"MEMBER_TAGS_SET",description:"Set member tags",category:"Tags"},{name:"AUTOMATION_CREATE",description:"Create automation",category:"Automations"},{name:"AUTOMATION_GET",description:"View automation details",category:"Automations"},{name:"AUTOMATION_LIST",description:"List automations",category:"Automations"},{name:"AUTOMATION_UPDATE",description:"Update automation",category:"Automations"},{name:"AUTOMATION_DELETE",description:"Delete automation",category:"Automations",dangerous:!0},{name:"AUTOMATION_TRIGGER_ADD",description:"Add trigger to automation",category:"Automations"},{name:"AUTOMATION_TRIGGER_REMOVE",description:"Remove trigger from automation",category:"Automations"},{name:"AUTOMATION_RUN",description:"Manually trigger an automation run",category:"Automations"},{name:"VIRTUAL_MCP_PLUGIN_CONFIG_GET",description:"View virtual MCP plugin configuration",category:"Virtual MCPs"},{name:"VIRTUAL_MCP_PLUGIN_CONFIG_UPDATE",description:"Update virtual MCP plugin configuration",category:"Virtual MCPs"},{name:"VIRTUAL_MCP_PINNED_VIEWS_UPDATE",description:"Update virtual MCP pinned sidebar views",category:"Virtual MCPs"},{name:"AI_PROVIDERS_LIST",description:"List available AI providers",category:"AI Providers"},{name:"AI_PROVIDERS_LIST_MODELS",description:"List AI provider models",category:"AI Providers"},{name:"AI_PROVIDERS_ACTIVE",description:"List active AI providers",category:"AI Providers"},{name:"AI_PROVIDER_KEY_CREATE",description:"Store AI provider API key",category:"AI Providers"},{name:"AI_PROVIDER_KEY_LIST",description:"List AI provider API keys",category:"AI Providers"},{name:"AI_PROVIDER_KEY_DELETE",description:"Delete AI provider API key",category:"AI Providers",dangerous:!0},{name:"AI_PROVIDER_OAUTH_URL",description:"Get OAuth URL for provider",category:"AI Providers"},{name:"AI_PROVIDER_OAUTH_EXCHANGE",description:"Exchange OAuth code for API key",category:"AI Providers"},{name:"AI_PROVIDER_PROVISION_KEY",description:"Auto-provision API key for a provider",category:"AI Providers"},{name:"AI_PROVIDER_TOPUP_URL",description:"Get checkout URL to top up provider credits",category:"AI Providers"},{name:"AI_PROVIDER_CREDITS",description:"Get current credit balance for a provider",category:"AI Providers"},{name:"AI_PROVIDER_CLI_ACTIVATE",description:"Activate Claude Code via local CLI",category:"AI Providers"},{name:"LIST_OBJECTS",description:"List objects in storage",category:"Object Storage"},{name:"GET_OBJECT_METADATA",description:"Get object metadata",category:"Object Storage"},{name:"GET_PRESIGNED_URL",description:"Generate download URL",category:"Object Storage"},{name:"PUT_PRESIGNED_URL",description:"Generate upload URL",category:"Object Storage"},{name:"DELETE_OBJECT",description:"Delete object",category:"Object Storage",dangerous:!0},{name:"DELETE_OBJECTS",description:"Delete multiple objects",category:"Object Storage",dangerous:!0},{name:"COLLECTION_REGISTRY_APP_LIST",description:"List registry apps",category:"Registry"},{name:"COLLECTION_REGISTRY_APP_GET",description:"Get registry app details",category:"Registry"},{name:"COLLECTION_REGISTRY_APP_VERSIONS",description:"List registry app versions",category:"Registry"},{name:"COLLECTION_REGISTRY_APP_FILTERS",description:"Get registry app filters",category:"Registry"},{name:"REGISTRY_ITEM_LIST",description:"List private registry items",category:"Registry"},{name:"REGISTRY_ITEM_SEARCH",description:"Search registry items",category:"Registry"},{name:"REGISTRY_ITEM_GET",description:"Get registry item details",category:"Registry"},{name:"REGISTRY_ITEM_VERSIONS",description:"List registry item versions",category:"Registry"},{name:"REGISTRY_ITEM_CREATE",description:"Create registry item",category:"Registry"},{name:"REGISTRY_ITEM_BULK_CREATE",description:"Bulk create registry items",category:"Registry"},{name:"REGISTRY_ITEM_UPDATE",description:"Update registry item",category:"Registry"},{name:"REGISTRY_ITEM_DELETE",description:"Delete registry item",category:"Registry",dangerous:!0},{name:"REGISTRY_ITEM_FILTERS",description:"Get registry item filters",category:"Registry"},{name:"REGISTRY_DISCOVER_TOOLS",description:"Discover tools from MCP server",category:"Registry"},{name:"REGISTRY_AI_GENERATE",description:"AI-generate registry content",category:"Registry"},{name:"REGISTRY_PUBLISH_REQUEST_LIST",description:"List publish requests",category:"Registry"},{name:"REGISTRY_PUBLISH_REQUEST_REVIEW",description:"Review publish request",category:"Registry"},{name:"REGISTRY_PUBLISH_REQUEST_COUNT",description:"Count pending publish requests",category:"Registry"},{name:"REGISTRY_PUBLISH_REQUEST_DELETE",description:"Delete publish request",category:"Registry",dangerous:!0},{name:"REGISTRY_PUBLISH_API_KEY_GENERATE",description:"Generate publish API key",category:"Registry"},{name:"REGISTRY_PUBLISH_API_KEY_LIST",description:"List publish API keys",category:"Registry"},{name:"REGISTRY_PUBLISH_API_KEY_REVOKE",description:"Revoke publish API key",category:"Registry",dangerous:!0},{name:"REGISTRY_MONITOR_RUN_START",description:"Start monitor run",category:"Registry"},{name:"REGISTRY_MONITOR_RUN_LIST",description:"List monitor runs",category:"Registry"},{name:"REGISTRY_MONITOR_RUN_GET",description:"Get monitor run details",category:"Registry"},{name:"REGISTRY_MONITOR_RUN_CANCEL",description:"Cancel monitor run",category:"Registry"},{name:"REGISTRY_MONITOR_RESULT_LIST",description:"List monitor results",category:"Registry"},{name:"REGISTRY_MONITOR_CONNECTION_LIST",description:"List monitor connections",category:"Registry"},{name:"REGISTRY_MONITOR_CONNECTION_SYNC",description:"Sync monitor connections",category:"Registry"},{name:"REGISTRY_MONITOR_CONNECTION_UPDATE_AUTH",description:"Update monitor connection auth",category:"Registry"},{name:"REGISTRY_MONITOR_SCHEDULE_SET",description:"Set monitor schedule",category:"Registry"},{name:"REGISTRY_MONITOR_SCHEDULE_CANCEL",description:"Cancel monitor schedule",category:"Registry"},{name:"VM_START",description:"Start a Freestyle VM with dev server preview",category:"VM"},{name:"VM_DELETE",description:"Stop and delete a Freestyle VM",category:"VM"},{name:"GITHUB_LIST_USER_ORGS",description:"List GitHub user's personal account and organizations",category:"GitHub"}]});var be6=D(()=>{Gp();ez1()});function ye6(){return dp5.parse(process.env)}var zN0=(X)=>F.enum(["true","false","1","0"]).optional().transform((Y)=>Y===void 0?X:Y==="true"||Y==="1"),mp5=(X)=>F.string().optional().transform((Y)=>Y?Y.split(",").map((G)=>G.trim()):X),dp5;var xe6=D(()=>{H0();dp5=F.object({AUTH_EMAIL_PASSWORD_ENABLED:zN0(!0),AUTH_GOOGLE_CLIENT_ID:F.string().optional(),AUTH_GOOGLE_CLIENT_SECRET:F.string().optional(),AUTH_GITHUB_CLIENT_ID:F.string().optional(),AUTH_GITHUB_CLIENT_SECRET:F.string().optional(),AUTH_RESEND_API_KEY:F.string().optional(),AUTH_RESEND_FROM_EMAIL:F.string().optional(),AUTH_SENDGRID_API_KEY:F.string().optional(),AUTH_SENDGRID_FROM_EMAIL:F.string().optional(),AUTH_INVITE_EMAIL_PROVIDER:F.enum(["resend","sendgrid"]).optional(),AUTH_RESET_PASSWORD_EMAIL_PROVIDER:F.enum(["resend","sendgrid"]).optional(),AUTH_MAGIC_LINK_ENABLED:zN0(!1),AUTH_MAGIC_LINK_EMAIL_PROVIDER:F.enum(["resend","sendgrid"]).optional(),AUTH_EMAIL_OTP_ENABLED:zN0(!1),AUTH_EMAIL_OTP_EMAIL_PROVIDER:F.enum(["resend","sendgrid"]).optional(),AUTH_EMAIL_OTP_LENGTH:F.coerce.number().optional(),AUTH_EMAIL_OTP_EXPIRES_IN:F.coerce.number().optional(),AUTH_SSO_DOMAIN:F.string().optional(),AUTH_SSO_MS_TENANT_ID:F.string().optional(),AUTH_SSO_MS_CLIENT_ID:F.string().optional(),AUTH_SSO_MS_CLIENT_SECRET:F.string().optional(),AUTH_SSO_SCOPES:mp5(["openid","email","profile"])}).transform((X)=>{let Y={};if(X.AUTH_GOOGLE_CLIENT_ID)Y.google={clientId:X.AUTH_GOOGLE_CLIENT_ID,clientSecret:X.AUTH_GOOGLE_CLIENT_SECRET??""};if(X.AUTH_GITHUB_CLIENT_ID)Y.github={clientId:X.AUTH_GITHUB_CLIENT_ID,clientSecret:X.AUTH_GITHUB_CLIENT_SECRET??""};let G=[];if(X.AUTH_RESEND_API_KEY)G.push({id:"resend",provider:"resend",config:{apiKey:X.AUTH_RESEND_API_KEY,fromEmail:X.AUTH_RESEND_FROM_EMAIL??"noreply@example.com"}});if(X.AUTH_SENDGRID_API_KEY)G.push({id:"sendgrid",provider:"sendgrid",config:{apiKey:X.AUTH_SENDGRID_API_KEY,fromEmail:X.AUTH_SENDGRID_FROM_EMAIL??"noreply@example.com"}});let Q=G[0]?.id,J;if(X.AUTH_SSO_MS_CLIENT_ID&&X.AUTH_SSO_DOMAIN)J={providerId:"microsoft",domain:X.AUTH_SSO_DOMAIN,MS_TENANT_ID:X.AUTH_SSO_MS_TENANT_ID??"",MS_CLIENT_ID:X.AUTH_SSO_MS_CLIENT_ID,MS_CLIENT_SECRET:X.AUTH_SSO_MS_CLIENT_SECRET??"",scopes:X.AUTH_SSO_SCOPES};let W;if(X.AUTH_MAGIC_LINK_ENABLED)W={enabled:!0,emailProviderId:X.AUTH_MAGIC_LINK_EMAIL_PROVIDER??Q??""};let Z;if(X.AUTH_EMAIL_OTP_ENABLED)Z={enabled:!0,emailProviderId:X.AUTH_EMAIL_OTP_EMAIL_PROVIDER??Q??"",...X.AUTH_EMAIL_OTP_LENGTH!==void 0&&{otpLength:X.AUTH_EMAIL_OTP_LENGTH},...X.AUTH_EMAIL_OTP_EXPIRES_IN!==void 0&&{expiresIn:X.AUTH_EMAIL_OTP_EXPIRES_IN}};return{emailAndPassword:{enabled:X.AUTH_EMAIL_PASSWORD_ENABLED},socialProviders:Object.keys(Y).length>0?Y:void 0,emailProviders:G.length>0?G:void 0,inviteEmailProviderId:X.AUTH_INVITE_EMAIL_PROVIDER,resetPasswordEmailProviderId:X.AUTH_RESET_PASSWORD_EMAIL_PROVIDER,ssoConfig:J,magicLinkConfig:W,emailOtpConfig:Z}})});var cA1;var he6=D(()=>{cA1={enabled:!0,batchSize:250,flushIntervalMs:300,maxQueueSize:1e4,redactor:"regex"}});import{existsSync as cp5,readFileSync as ip5}from"fs";function pp5(){let X=ye6(),Y=v6().configPath;if(!cp5(Y))return{auth:X,monitoring:cA1};try{let G=JSON.parse(ip5(Y,"utf-8"));if(G.auth)console.warn("[config] DEPRECATION: 'auth' key found in config.json. Auth is now configured via AUTH_* environment variables. The 'auth' key will be ignored.");return{auth:X,monitoring:G.monitoring??cA1,theme:G.theme,logo:G.logo,autoCreateOrganizationOnSignup:G.autoCreateOrganizationOnSignup}}catch{return{auth:X,monitoring:cA1}}}function Sj(){if(!ON0)ON0=pp5();return ON0}function ge6(){return Sj().theme}var ON0=null;var DN0=D(()=>{xe6();he6();m9()});import{dirname as np5,posix as ap5,sep as tp5}from"path";function le6(){let X=rp5();return async(Y)=>{for(let G of Y)G.module=X(G.filename);return Y}}function rp5(X=process.argv[1]?np5(process.argv[1]):process.cwd(),Y=tp5==="\\"){let G=Y?ue6(X):X;return(Q)=>{if(!Q)return;let J=Y?ue6(Q):Q,{dir:W,base:Z,ext:$}=ap5.parse(J);if($===".js"||$===".mjs"||$===".cjs")Z=Z.slice(0,-1*$.length);let K=decodeURIComponent(Z);if(!W)W=".";let H=W.lastIndexOf("/node_modules");if(H>-1)return`${W.slice(H+14).replace(/\//g,".")}:${K}`;if(W.startsWith(G)){let U=W.slice(G.length+1).replace(/\//g,".");return U?`${U}:${K}`:K}return K}}function ue6(X){return X.replace(/^[A-Z]:/,"").replace(/\\/g,"/")}var me6=()=>{};function op5(X,Y,G){return{key:X,enabled:typeof Y=="string"?!0:Y,variant:typeof Y=="string"?Y:void 0,reason:void 0,metadata:{id:void 0,version:void 0,payload:G?JSON.stringify(G):void 0,description:void 0}}}var wN0=(X)=>{if("flags"in X){let Y=de6(X.flags),G=ce6(X.flags);return{...X,featureFlags:Y,featureFlagPayloads:G}}{let Y=X.featureFlags??{},G=Object.fromEntries(Object.entries(X.featureFlagPayloads||{}).map(([J,W])=>[J,LN0(W)])),Q=Object.fromEntries(Object.entries(Y).map(([J,W])=>[J,op5(J,W,G[J])]));return{...X,featureFlags:Y,featureFlagPayloads:G,flags:Q}}},de6=(X)=>Object.fromEntries(Object.entries(X??{}).map(([Y,G])=>[Y,bX1(G)]).filter(([,Y])=>Y!==void 0)),ce6=(X)=>{let Y=X??{};return Object.fromEntries(Object.keys(Y).filter((G)=>{let Q=Y[G];return Q.enabled&&Q.metadata&&Q.metadata.payload!==void 0}).map((G)=>{let Q=Y[G].metadata?.payload;return[G,Q?LN0(Q):void 0]}))},bX1=(X)=>X===void 0?void 0:X.variant??X.enabled,LN0=(X)=>{if(typeof X!="string")return X;try{return JSON.parse(X)}catch{return X}};var iA1=()=>{};function ie6(){return"CompressionStream"in globalThis&&"TextEncoder"in globalThis&&"Response"in globalThis&&typeof Response.prototype.blob=="function"}async function pA1(X,Y=!0,G){try{let Q=new CompressionStream("gzip"),J=Q.writable.getWriter(),W=J.write(new TextEncoder().encode(X)).then(()=>J.close()).catch(async(K)=>{try{await J.abort(K)}catch{}throw K}),Z=new Response(Q.readable).blob(),[$]=await Promise.all([Z,W]);return $}catch(Q){if(G?.rethrow)throw Q;if(Y)console.error("Failed to gzip compress data",Q);return null}}var EN0=()=>{};var sp5,pe6=function(X,Y=[]){if(!X)return!1;let G=X.toLowerCase();return sp5.concat(Y).some((Q)=>{let J=Q.toLowerCase();return G.indexOf(J)!==-1})};var ne6=D(()=>{sp5=["amazonbot","amazonproductbot","app.hypefactors.com","applebot","archive.org_bot","awariobot","backlinksextendedbot","baiduspider","bingbot","bingpreview","chrome-lighthouse","dataforseobot","deepscan","duckduckbot","facebookexternal","facebookcatalog","http://yandex.com/bots","hubspot","ia_archiver","leikibot","linkedinbot","meta-externalagent","mj12bot","msnbot","nessus","petalbot","pinterest","prerender","rogerbot","screaming frog","sebot-wa","sitebulb","slackbot","slurp","trendictionbot","turnitin","twitterbot","vercel-screenshot","vercelbot","yahoo! slurp","yandexbot","zoombot","bot.htm","bot.php","(bot;","bot/","crawler","ahrefsbot","ahrefssiteaudit","semrushbot","siteauditbot","splitsignalbot","gptbot","oai-searchbot","chatgpt-user","perplexitybot","better uptime bot","sentryuptimebot","uptimerobot","headlesschrome","cypress","google-hoteladsverifier","adsbot-google","apis-google","duplexweb-google","feedfetcher-google","google favicon","google web preview","google-read-aloud","googlebot","googleother","google-cloudvertexbot","googleweblight","mediapartners-google","storebot-google","google-inspectiontool","bytespider"]});var aJ;var Cj=D(()=>{aJ=function(X){return X.AnonymousId="anonymous_id",X.DistinctId="distinct_id",X.Props="props",X.EnablePersonProcessing="enable_person_processing",X.PersonMode="person_mode",X.FeatureFlagDetails="feature_flag_details",X.FeatureFlags="feature_flags",X.FeatureFlagPayloads="feature_flag_payloads",X.BootstrapFeatureFlagDetails="bootstrap_feature_flag_details",X.BootstrapFeatureFlags="bootstrap_feature_flags",X.BootstrapFeatureFlagPayloads="bootstrap_feature_flag_payloads",X.OverrideFeatureFlags="override_feature_flags",X.Queue="queue",X.LogsQueue="logs_queue",X.OptedOut="opted_out",X.SessionId="session_id",X.SessionStartTimestamp="session_start_timestamp",X.SessionLastTimestamp="session_timestamp",X.PersonProperties="person_properties",X.GroupProperties="group_properties",X.InstalledAppBuild="installed_app_build",X.InstalledAppVersion="installed_app_version",X.SessionReplay="session_replay",X.SurveyLastSeenDate="survey_last_seen_date",X.SurveysSeen="surveys_seen",X.Surveys="surveys",X.RemoteConfig="remote_config",X.FlagsEndpointWasHit="flags_endpoint_was_hit",X.DeviceId="device_id",X}({})});var nA1=()=>{};function tA1(X){return X===null||typeof X!="object"}function kj(X,Y){return Object.prototype.toString.call(X)===`[object ${Y}]`}function re6(X){return kj(X,"ErrorEvent")}function ea(X){return typeof Event<"u"&&Yn5(X,Event)}function oe6(X){return kj(X,"Object")}function Yn5(X,Y){try{return X instanceof Y}catch{return!1}}var Xn5,ae6,TmX,PN0,aA1,yX1=(X)=>X===Object(X)&&!aA1(X),sa=(X)=>X===void 0,Tq=(X)=>PN0.call(X)=="[object String]",te6=(X)=>Tq(X)&&X.trim().length===0,xX1=(X)=>PN0.call(X)=="[object Number]"&&X===X,qN0=(X)=>X instanceof Error;var hX1=D(()=>{Cj();nA1();Xn5=Array.isArray,ae6=Object.prototype,TmX=ae6.hasOwnProperty,PN0=ae6.toString,aA1=Xn5||function(X){return PN0.call(X)==="[object Array]"}});function gX1(X,Y,G,Q,J){if(Y>G)Q.warn("min cannot be greater than max."),Y=G;if(xX1(X))if(X>G)return Q.warn(" cannot be greater than max: "+G+". Using max value instead."),G;else{if(!(X<Y))return X;return Q.warn(" cannot be less than min: "+Y+". Using min value instead."),Y}return Q.warn(" must be a number. using max or fallback. max: "+G+", fallback: "+J),gX1(J||G,Y,G,Q)}var AN0=D(()=>{hX1()});class TN0{constructor(X){this._buckets={},this._onBucketRateLimited=X._onBucketRateLimited,this._bucketSize=gX1(X.bucketSize,0,100,X._logger),this._refillRate=gX1(X.refillRate,0,this._bucketSize,X._logger),this._refillInterval=gX1(X.refillInterval,0,Gn5,X._logger)}_applyRefill(X,Y){let G=Y-X.lastAccess,Q=Math.floor(G/this._refillInterval);if(Q>0){let J=Q*this._refillRate;X.tokens=Math.min(X.tokens+J,this._bucketSize),X.lastAccess=X.lastAccess+Q*this._refillInterval}}consumeRateLimit(X){let Y=Date.now(),G=String(X),Q=this._buckets[G];if(Q)this._applyRefill(Q,Y);else Q={tokens:this._bucketSize,lastAccess:Y},this._buckets[G]=Q;if(Q.tokens===0)return!0;if(Q.tokens--,Q.tokens===0)this._onBucketRateLimited?.(X);return Q.tokens===0}stop(){this._buckets={}}}var Gn5=86400000;var se6=D(()=>{AN0()});class vj{constructor(X){this.bytes=X}static ofInner(X){if(X.length===16)return new vj(X);throw TypeError("not 128-bit length")}static fromFieldsV7(X,Y,G,Q){if(!Number.isInteger(X)||!Number.isInteger(Y)||!Number.isInteger(G)||!Number.isInteger(Q)||X<0||Y<0||G<0||Q<0||X>281474976710655||Y>4095||G>1073741823||Q>4294967295)throw RangeError("invalid field value");let J=new Uint8Array(16);return J[0]=X/1099511627776,J[1]=X/4294967296,J[2]=X/16777216,J[3]=X/65536,J[4]=X/256,J[5]=X,J[6]=112|Y>>>8,J[7]=Y,J[8]=128|G>>>24,J[9]=G>>>16,J[10]=G>>>8,J[11]=G,J[12]=Q>>>24,J[13]=Q>>>16,J[14]=Q>>>8,J[15]=Q,new vj(J)}static parse(X){let Y;switch(X.length){case 32:Y=/^[0-9a-f]{32}$/i.exec(X)?.[0];break;case 36:Y=/^([0-9a-f]{8})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{12})$/i.exec(X)?.slice(1,6).join("");break;case 38:Y=/^\{([0-9a-f]{8})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{12})\}$/i.exec(X)?.slice(1,6).join("");break;case 45:Y=/^urn:uuid:([0-9a-f]{8})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{12})$/i.exec(X)?.slice(1,6).join("");break;default:break}if(Y){let G=new Uint8Array(16);for(let Q=0;Q<16;Q+=4){let J=parseInt(Y.substring(2*Q,2*Q+8),16);G[Q+0]=J>>>24,G[Q+1]=J>>>16,G[Q+2]=J>>>8,G[Q+3]=J}return new vj(G)}throw SyntaxError("could not parse UUID string")}toString(){let X="";for(let Y=0;Y<this.bytes.length;Y++)if(X+="0123456789abcdef".charAt(this.bytes[Y]>>>4),X+="0123456789abcdef".charAt(15&this.bytes[Y]),Y===3||Y===5||Y===7||Y===9)X+="-";return X}toHex(){let X="";for(let Y=0;Y<this.bytes.length;Y++)X+="0123456789abcdef".charAt(this.bytes[Y]>>>4),X+="0123456789abcdef".charAt(15&this.bytes[Y]);return X}toJSON(){return this.toString()}getVariant(){let X=this.bytes[8]>>>4;if(X<0)throw Error("unreachable");if(X<=7)return this.bytes.every((Y)=>Y===0)?"NIL":"VAR_0";if(X<=11)return"VAR_10";if(X<=13)return"VAR_110";if(X<=15)return this.bytes.every((Y)=>Y===255)?"MAX":"VAR_RESERVED";else throw Error("unreachable")}getVersion(){return this.getVariant()==="VAR_10"?this.bytes[6]>>>4:void 0}clone(){return new vj(this.bytes.slice(0))}equals(X){return this.compareTo(X)===0}compareTo(X){for(let Y=0;Y<16;Y++){let G=this.bytes[Y]-X.bytes[Y];if(G!==0)return Math.sign(G)}return 0}}class X14{constructor(X){this.timestamp=0,this.counter=0,this.random=X??Qn5()}generate(){return this.generateOrResetCore(Date.now(),1e4)}generateOrAbort(){return this.generateOrAbortCore(Date.now(),1e4)}generateOrResetCore(X,Y){let G=this.generateOrAbortCore(X,Y);if(G===void 0)this.timestamp=0,G=this.generateOrAbortCore(X,Y);return G}generateOrAbortCore(X,Y){if(!Number.isInteger(X)||X<1||X>281474976710655)throw RangeError("`unixTsMs` must be a 48-bit positive integer");if(Y<0||Y>281474976710655)throw RangeError("`rollbackAllowance` out of reasonable range");if(X>this.timestamp)this.timestamp=X,this.resetCounter();else{if(!(X+Y>=this.timestamp))return;if(this.counter++,this.counter>4398046511103)this.timestamp++,this.resetCounter()}return vj.fromFieldsV7(this.timestamp,Math.trunc(this.counter/1073741824),this.counter&1073741823,this.random.nextUint32())}resetCounter(){this.counter=1024*this.random.nextUint32()+(1023&this.random.nextUint32())}generateV4(){let X=new Uint8Array(Uint32Array.of(this.random.nextUint32(),this.random.nextUint32(),this.random.nextUint32(),this.random.nextUint32()).buffer);return X[6]=64|X[6]>>>4,X[8]=128|X[8]>>>2,vj.ofInner(X)}}var Qn5=()=>({nextUint32:()=>65536*Math.trunc(65536*Math.random())+Math.trunc(65536*Math.random())}),ee6,Iq=()=>Jn5().toString(),Jn5=()=>(ee6||(ee6=new X14)).generate();var uX1=D(()=>{/*! For license information please see uuidv7.mjs.LICENSE.txt */});class IN0{add(X){let Y=Iq();return this.promiseByIds[Y]=X,X.catch(()=>{}).finally(()=>{delete this.promiseByIds[Y]}),X}async join(){let X=Object.values(this.promiseByIds),Y=X.length;while(Y>0)await Promise.all(X),X=Object.values(this.promiseByIds),Y=X.length}get length(){return Object.keys(this.promiseByIds).length}constructor(){this.promiseByIds={}}}var Y14=D(()=>{uX1()});function Zn5(X=console){return{log:X.log.bind(X),warn:X.warn.bind(X),error:X.error.bind(X),debug:X.debug.bind(X)}}function Q14(X,Y=Wn5){return G14(X,Y,Zn5())}var G14=(X,Y,G)=>{function Q(W,...Z){Y(()=>{let $=G[W];$(X,...Z)})}return{info:(...W)=>{Q("log",...W)},warn:(...W)=>{Q("warn",...W)},error:(...W)=>{Q("error",...W)},critical:(...W)=>{G.error(X,...W)},createLogger:(W)=>G14(`${X} ${W}`,Y,G)}},Wn5=(X)=>X();var J14=()=>{};var Yt="Mobile",oA1="iOS",Xt="Android",Z14="Tablet",bmX,Kn5="Apple",ymX,W14="Safari",sA1="BlackBerry",$14="Samsung",Hn5,Fn5,eA1="Chrome",Un5,Bn5,K14="Internet Explorer",Nn5,jN0="Opera",xmX,H14="Edge",zn5,MN0="Firefox",On5,RN0="Nintendo",SN0="PlayStation",rA1="Xbox",Dn5,wn5,lX1="Windows",Ln5,F14="Generic",hmX,gmX,En5="Konqueror",F3="(\\d+(\\.\\d+)?)",VN0,umX,lmX,mmX,Pn5,qn5,dmX,cmX;var U14=D(()=>{nA1();hX1();bmX=Xt+" "+Z14,ymX=Kn5+" Watch",Hn5=$14+"Browser",Fn5=$14+" Internet",Un5=eA1+" OS",Bn5=eA1+" "+oA1,Nn5=K14+" "+Yt,xmX=jN0+" Mini",zn5="Microsoft "+H14,On5=MN0+" "+oA1,Dn5=Xt+" "+Yt,wn5=Yt+" "+W14,Ln5=lX1+" Phone",hmX=F14+" "+Yt.toLowerCase(),gmX=F14+" "+Z14.toLowerCase(),VN0=new RegExp("Version/"+F3),umX=new RegExp(rA1,"i"),lmX=new RegExp(SN0+" \\w+","i"),mmX=new RegExp(RN0+" \\w+","i"),Pn5=new RegExp(sA1+"|PlayBook|BB10","i"),qn5={"NT3.51":"NT 3.11","NT4.0":"NT 4.0","5.0":"2000","5.1":"XP","5.2":"XP","6.0":"Vista","6.1":"7","6.2":"8","6.3":"8.1","6.4":"10","10.0":"10"},dmX={[Nn5]:[new RegExp("rv:"+F3)],[zn5]:[new RegExp(H14+"?\\/"+F3)],[eA1]:[new RegExp("("+eA1+"|CrMo)\\/"+F3)],[Bn5]:[new RegExp("CriOS\\/"+F3)],"UC Browser":[new RegExp("(UCBrowser|UCWEB)\\/"+F3)],[W14]:[VN0],[wn5]:[VN0],[jN0]:[new RegExp("("+jN0+"|OPR)\\/"+F3)],[MN0]:[new RegExp(MN0+"\\/"+F3)],[On5]:[new RegExp("FxiOS\\/"+F3)],[En5]:[new RegExp("Konqueror[:/]?"+F3,"i")],[sA1]:[new RegExp(sA1+" "+F3),VN0],[Dn5]:[new RegExp("android\\s"+F3,"i")],[Fn5]:[new RegExp(Hn5+"\\/"+F3)],[K14]:[new RegExp("(rv:|MSIE )"+F3)],Mozilla:[new RegExp("rv:"+F3)]},cmX=[[new RegExp(rA1+"; "+rA1+" (.*?)[);]","i"),(X)=>[rA1,X&&X[1]||""]],[new RegExp(RN0,"i"),[RN0,""]],[new RegExp(SN0,"i"),[SN0,""]],[Pn5,[sA1,""]],[new RegExp(lX1,"i"),(X,Y)=>{if(/Phone/.test(Y)||/WPDesktop/.test(Y))return[Ln5,""];if(new RegExp(Yt).test(Y)&&!/IEMobile\b/.test(Y))return[lX1+" "+Yt,""];let G=/Windows NT ([0-9.]+)/i.exec(Y);if(G&&G[1]){let Q=G[1],J=qn5[Q]||"";if(/arm/i.test(Y))J="RT";return[lX1,J]}return[lX1,""]}],[/((iPhone|iPad|iPod).*?OS (\d+)_(\d+)_?(\d+)?|iPhone)/,(X)=>{if(X&&X[3]){let Y=[X[3],X[4],X[5]||"0"];return[oA1,Y.join(".")]}return[oA1,""]}],[/(watch.*\/(\d+\.\d+\.\d+)|watch os,(\d+\.\d+),)/i,(X)=>{let Y="";if(X&&X.length>=3)Y=sa(X[2])?X[3]:X[2];return["watchOS",Y]}],[new RegExp("("+Xt+" (\\d+)\\.(\\d+)\\.?(\\d+)?|"+Xt+")","i"),(X)=>{if(X&&X[2]){let Y=[X[2],X[3],X[4]||"0"];return[Xt,Y.join(".")]}return[Xt,""]}],[/Mac OS X (\d+)[_.](\d+)[_.]?(\d+)?/i,(X)=>{let Y=["Mac OS X",""];if(X&&X[1]){let G=[X[1],X[2],X[3]||"0"];Y[1]=G.join(".")}return Y}],[/Mac/i,["Mac OS X",""]],[/CrOS/,[Un5,""]],[/Linux|debian/i,["Linux",""]]]});function N14(X){return X?.replace(/\/+$/,"")}async function z14(X,Y){let G=null;for(let Q=0;Q<Y.retryCount+1;Q++){if(Q>0)await new Promise((J)=>setTimeout(J,Y.retryDelay));try{return await X()}catch(J){if(G=J,!Y.retryCheck(J))throw J}}throw G}function XT1(){return new Date().toISOString()}function Fw(X,Y){let G=setTimeout(X,Y);return G?.unref&&G?.unref(),G}function CN0(X){return Promise.all(X.map((Y)=>(Y??Promise.resolve()).then((G)=>({status:"fulfilled",value:G}),(G)=>({status:"rejected",reason:G}))))}var B14="utf8",O14=(X)=>X instanceof Error;var U3=D(()=>{ne6();se6();AN0();nA1();hX1();Y14();J14();U14()});var An5,JdX;var kN0=D(()=>{U3();An5={trace:{text:"TRACE",number:1},debug:{text:"DEBUG",number:5},info:{text:"INFO",number:9},warn:{text:"WARN",number:13},error:{text:"ERROR",number:17},fatal:{text:"FATAL",number:21}},JdX=An5.info});var D14=D(()=>{kN0();Cj()});var w14=D(()=>{Cj()});class vN0{constructor(){this.events={},this.events={}}on(X,Y){if(!this.events[X])this.events[X]=[];return this.events[X].push(Y),()=>{this.events[X]=this.events[X].filter((G)=>G!==Y)}}emit(X,Y){for(let G of this.events[X]||[])G(Y);for(let G of this.events["*"]||[])G(X,Y)}}var L14=()=>{};async function E14(X){if(X instanceof Gt){let Y="";try{Y=await X.text}catch{}console.error(`Error while flushing PostHog: message=${X.message}, response body=${Y}`,X)}else console.error("Error while flushing PostHog",X);return Promise.resolve()}function _N0(X){return typeof X=="object"&&(X instanceof Gt||X instanceof mX1)}function P14(X){return typeof X=="object"&&X instanceof Gt&&X.status===413}class YT1{constructor(X,Y={}){this.flushPromise=null,this.shutdownPromise=null,this.promiseQueue=new IN0,this._events=new vN0,this._isInitialized=!1;let G=typeof X=="string"?X.trim():"",Q=typeof Y.host=="string"?Y.host.trim():"",J=!G;if(this._logger=Q14("[PostHog]",this.logMsgIfDebug.bind(this)),J)this._logger.error("You must pass your PostHog project's api key. The client will be disabled.");if(this.apiKey=G,this.host=N14(Q||"https://us.i.posthog.com"),this.flushAt=Y.flushAt?Math.max(Y.flushAt,1):20,this.maxBatchSize=Math.max(this.flushAt,Y.maxBatchSize??100),this.maxQueueSize=Math.max(this.flushAt,Y.maxQueueSize??1000),this.flushInterval=Y.flushInterval??1e4,this.preloadFeatureFlags=Y.preloadFeatureFlags??!0,this.defaultOptIn=Y.defaultOptIn??!0,this.disableSurveys=Y.disableSurveys??!1,this._retryOptions={retryCount:Y.fetchRetryCount??3,retryDelay:Y.fetchRetryDelay??3000,retryCheck:_N0},this.requestTimeout=Y.requestTimeout??1e4,this.featureFlagsRequestTimeoutMs=Y.featureFlagsRequestTimeoutMs??3000,this.remoteConfigRequestTimeoutMs=Y.remoteConfigRequestTimeoutMs??3000,this.disableGeoip=Y.disableGeoip??!0,this.disabled=(Y.disabled??!1)||J,this.historicalMigration=Y?.historicalMigration??!1,this._initPromise=Promise.resolve(),this._isInitialized=!0,this.evaluationContexts=Y?.evaluationContexts??Y?.evaluationEnvironments,Y?.evaluationEnvironments&&!Y?.evaluationContexts)this._logger.warn("evaluationEnvironments is deprecated. Use evaluationContexts instead. This property will be removed in a future version.");this.disableCompression=!ie6()||(Y?.disableCompression??!1)}logMsgIfDebug(X){if(this.isDebug)X()}wrap(X){if(this.disabled)return void this._logger.warn("The client is disabled");if(this._isInitialized)return X();this._initPromise.then(()=>X())}getCommonEventProperties(){return{$lib:this.getLibraryId(),$lib_version:this.getLibraryVersion()}}get optedOut(){return this.getPersistedProperty(aJ.OptedOut)??!this.defaultOptIn}async optIn(){this.wrap(()=>{this.setPersistedProperty(aJ.OptedOut,!1)})}async optOut(){this.wrap(()=>{this.setPersistedProperty(aJ.OptedOut,!0)})}on(X,Y){return this._events.on(X,Y)}debug(X=!0){if(this.removeDebugCallback?.(),X){let Y=this.on("*",(G,Q)=>this._logger.info(G,Q));this.removeDebugCallback=()=>{Y(),this.removeDebugCallback=void 0}}}get isDebug(){return!!this.removeDebugCallback}get isDisabled(){return this.disabled}buildPayload(X){return{distinct_id:X.distinct_id,event:X.event,properties:{...X.properties||{},...this.getCommonEventProperties()}}}addPendingPromise(X){return this.promiseQueue.add(X)}identifyStateless(X,Y,G){this.wrap(()=>{let Q={...this.buildPayload({distinct_id:X,event:"$identify",properties:Y})};this.enqueue("identify",Q,G)})}async identifyStatelessImmediate(X,Y,G){let Q={...this.buildPayload({distinct_id:X,event:"$identify",properties:Y})};await this.sendImmediate("identify",Q,G)}captureStateless(X,Y,G,Q){this.wrap(()=>{let J=this.buildPayload({distinct_id:X,event:Y,properties:G});this.enqueue("capture",J,Q)})}async captureStatelessImmediate(X,Y,G,Q){let J=this.buildPayload({distinct_id:X,event:Y,properties:G});await this.sendImmediate("capture",J,Q)}aliasStateless(X,Y,G,Q){this.wrap(()=>{let J=this.buildPayload({event:"$create_alias",distinct_id:Y,properties:{...G||{},distinct_id:Y,alias:X}});this.enqueue("alias",J,Q)})}async aliasStatelessImmediate(X,Y,G,Q){let J=this.buildPayload({event:"$create_alias",distinct_id:Y,properties:{...G||{},distinct_id:Y,alias:X}});await this.sendImmediate("alias",J,Q)}groupIdentifyStateless(X,Y,G,Q,J,W){this.wrap(()=>{let Z=this.buildPayload({distinct_id:J||`$${X}_${Y}`,event:"$groupidentify",properties:{$group_type:X,$group_key:Y,$group_set:G||{},...W||{}}});this.enqueue("capture",Z,Q)})}async getRemoteConfig(){await this._initPromise;let X=this.host;if(X==="https://us.i.posthog.com")X="https://us-assets.i.posthog.com";else if(X==="https://eu.i.posthog.com")X="https://eu-assets.i.posthog.com";let Y=`${X}/array/${this.apiKey}/config`,G={method:"GET",headers:{...this.getCustomHeaders(),"Content-Type":"application/json"}};return this.fetchWithRetry(Y,G,{retryCount:0},this.remoteConfigRequestTimeoutMs).then((Q)=>Q.json()).catch((Q)=>{this._logger.error("Remote config could not be loaded",Q),this._events.emit("error",Q)})}async getFlags(X,Y={},G={},Q={},J={},W=!1){await this._initPromise;let Z=W?"&config=true":"",$=`${this.host}/flags/?v=2${Z}`,K={token:this.apiKey,distinct_id:X,groups:Y,person_properties:G,group_properties:Q,...J};if(G.$device_id)K.$device_id=G.$device_id;if(this.evaluationContexts&&this.evaluationContexts.length>0)K.evaluation_contexts=this.evaluationContexts;let H={method:"POST",headers:{...this.getCustomHeaders(),"Content-Type":"application/json"},body:JSON.stringify(K)};return this._logger.info("Flags URL",$),this.fetchWithRetry($,H,{retryCount:0},this.featureFlagsRequestTimeoutMs).then((U)=>U.json()).then((U)=>({success:!0,response:wN0(U)})).catch((U)=>{return this._events.emit("error",U),{success:!1,error:this.categorizeRequestError(U)}})}categorizeRequestError(X){if(X instanceof Gt)return{type:"api_error",statusCode:X.status};if(X instanceof mX1){let Y=X.error;if(Y instanceof Error&&(Y.name==="AbortError"||Y.name==="TimeoutError"))return{type:"timeout"};return{type:"connection_error"}}return{type:"unknown_error"}}async getFeatureFlagStateless(X,Y,G={},Q={},J={},W){await this._initPromise;let Z=await this.getFeatureFlagDetailStateless(X,Y,G,Q,J,W);if(Z===void 0)return{response:void 0,requestId:void 0};let $=bX1(Z.response);if($===void 0)$=!1;return{response:$,requestId:Z.requestId}}async getFeatureFlagDetailStateless(X,Y,G={},Q={},J={},W){await this._initPromise;let Z=await this.getFeatureFlagDetailsStateless(Y,G,Q,J,W,[X]);if(Z===void 0)return;return{response:Z.flags[X],requestId:Z.requestId,evaluatedAt:Z.evaluatedAt}}async getFeatureFlagPayloadStateless(X,Y,G={},Q={},J={},W){await this._initPromise;let Z=await this.getFeatureFlagPayloadsStateless(Y,G,Q,J,W,[X]);if(!Z)return;let $=Z[X];if($===void 0)return null;return $}async getFeatureFlagPayloadsStateless(X,Y={},G={},Q={},J,W){return await this._initPromise,(await this.getFeatureFlagsAndPayloadsStateless(X,Y,G,Q,J,W)).payloads}async getFeatureFlagsStateless(X,Y={},G={},Q={},J,W){return await this._initPromise,await this.getFeatureFlagsAndPayloadsStateless(X,Y,G,Q,J,W)}async getFeatureFlagsAndPayloadsStateless(X,Y={},G={},Q={},J,W){await this._initPromise;let Z=await this.getFeatureFlagDetailsStateless(X,Y,G,Q,J,W);if(!Z)return{flags:void 0,payloads:void 0,requestId:void 0};return{flags:Z.featureFlags,payloads:Z.featureFlagPayloads,requestId:Z.requestId}}async getFeatureFlagDetailsStateless(X,Y={},G={},Q={},J,W){await this._initPromise;let Z={};if(J??this.disableGeoip)Z.geoip_disable=!0;if(W)Z.flag_keys_to_evaluate=W;let $=await this.getFlags(X,Y,G,Q,Z);if(!$.success)return;let K=$.response;if(K.errorsWhileComputingFlags)console.error("[FEATURE FLAGS] Error while computing feature flags, some flags may be missing or incorrect. Learn more at https://posthog.com/docs/feature-flags/best-practices");if(K.quotaLimited?.includes("feature_flags"))return console.warn("[FEATURE FLAGS] Feature flags quota limit exceeded - feature flags unavailable. Learn more about billing limits at https://posthog.com/docs/billing/limits-alerts"),{flags:{},featureFlags:{},featureFlagPayloads:{},requestId:K?.requestId,quotaLimited:K.quotaLimited};return K}async getSurveysStateless(){if(await this._initPromise,this.disableSurveys===!0)return this._logger.info("Loading surveys is disabled."),[];let X=`${this.host}/api/surveys/?token=${this.apiKey}`,Y={method:"GET",headers:{...this.getCustomHeaders(),"Content-Type":"application/json"}},Q=(await this.fetchWithRetry(X,Y).then((J)=>{if(J.status!==200||!J.json){let W=`Surveys API could not be loaded: ${J.status}`,Z=Error(W);this._logger.error(Z),this._events.emit("error",Error(W));return}return J.json()}).catch((J)=>{this._logger.error("Surveys API could not be loaded",J),this._events.emit("error",J)}))?.surveys;if(Q)this._logger.info("Surveys fetched from API: ",JSON.stringify(Q));return Q??[]}get props(){if(!this._props)this._props=this.getPersistedProperty(aJ.Props);return this._props||{}}set props(X){this._props=X}async register(X){this.wrap(()=>{this.props={...this.props,...X},this.setPersistedProperty(aJ.Props,this.props)})}async unregister(X){this.wrap(()=>{delete this.props[X],this.setPersistedProperty(aJ.Props,this.props)})}processBeforeEnqueue(X){return X}async flushStorage(){}enqueue(X,Y,G){this.wrap(()=>{if(this.optedOut)return void this._events.emit(X,"Library is disabled. Not sending event. To re-enable, call posthog.optIn()");let Q=this.prepareMessage(X,Y,G);if(Q=this.processBeforeEnqueue(Q),Q===null)return;let J=this.getPersistedProperty(aJ.Queue)||[];if(J.length>=this.maxQueueSize)J.shift(),this._logger.info("Queue is full, the oldest event is dropped.");if(J.push({message:Q}),this.setPersistedProperty(aJ.Queue,J),this._events.emit(X,Q),J.length>=this.flushAt)this.flushBackground();if(this.flushInterval&&!this._flushTimer)this._flushTimer=Fw(()=>this.flushBackground(),this.flushInterval)})}async sendImmediate(X,Y,G){if(this.disabled)return void this._logger.warn("The client is disabled");if(!this._isInitialized)await this._initPromise;if(this.optedOut)return void this._events.emit(X,"Library is disabled. Not sending event. To re-enable, call posthog.optIn()");let Q=this.prepareMessage(X,Y,G);if(Q=this.processBeforeEnqueue(Q),Q===null)return;let J={api_key:this.apiKey,batch:[Q],sent_at:XT1()};if(this.historicalMigration)J.historical_migration=!0;let W=JSON.stringify(J),Z=`${this.host}/batch/`,$=this.disableCompression?null:await pA1(W,this.isDebug),K={method:"POST",headers:{...this.getCustomHeaders(),"Content-Type":"application/json",...$!==null&&{"Content-Encoding":"gzip"}},body:$||W};try{await this.fetchWithRetry(Z,K)}catch(H){this._events.emit("error",H)}}prepareMessage(X,Y,G){let Q={...Y,type:X,library:this.getLibraryId(),library_version:this.getLibraryVersion(),timestamp:G?.timestamp?G?.timestamp:XT1(),uuid:G?.uuid?G.uuid:Iq()};if(G?.disableGeoip??this.disableGeoip){if(!Q.properties)Q.properties={};Q.properties.$geoip_disable=!0}if(Q.distinctId)Q.distinct_id=Q.distinctId,delete Q.distinctId;return Q}clearFlushTimer(){if(this._flushTimer)clearTimeout(this._flushTimer),this._flushTimer=void 0}flushBackground(){this.flush().catch(async(X)=>{await E14(X)})}async flush(){let X=CN0([this.flushPromise]).then(()=>this._flush());return this.flushPromise=X,this.addPendingPromise(X),CN0([X]).then(()=>{if(this.flushPromise===X)this.flushPromise=null}),X}getCustomHeaders(){let X=this.getCustomUserAgent(),Y={};if(X&&X!=="")Y["User-Agent"]=X;return Y}async _flush(){this.clearFlushTimer(),await this._initPromise;let X=this.getPersistedProperty(aJ.Queue)||[];if(!X.length)return;let Y=[],G=X.length;while(X.length>0&&Y.length<G){let Q=X.slice(0,this.maxBatchSize),J=Q.map((N)=>N.message),W=async()=>{let z=(this.getPersistedProperty(aJ.Queue)||[]).slice(Q.length);this.setPersistedProperty(aJ.Queue,z),X=z,await this.flushStorage()},Z={api_key:this.apiKey,batch:J,sent_at:XT1()};if(this.historicalMigration)Z.historical_migration=!0;let $=JSON.stringify(Z),K=`${this.host}/batch/`,H=this.disableCompression?null:await pA1($,this.isDebug),U={method:"POST",headers:{...this.getCustomHeaders(),"Content-Type":"application/json",...H!==null&&{"Content-Encoding":"gzip"}},body:H||$},B={retryCheck:(N)=>{if(P14(N))return!1;return _N0(N)}};try{await this.fetchWithRetry(K,U,B)}catch(N){if(P14(N)&&J.length>1){this.maxBatchSize=Math.max(1,Math.floor(J.length/2)),this._logger.warn(`Received 413 when sending batch of size ${J.length}, reducing batch size to ${this.maxBatchSize}`);continue}if(!(N instanceof mX1))await W();throw this._events.emit("error",N),N}await W(),Y.push(...J)}this._events.emit("flush",Y)}async fetchWithRetry(X,Y,G,Q){let J=Y.body?Y.body:"",W=-1;try{W=J instanceof Blob?J.size:Buffer.byteLength(J,B14)}catch{if(J instanceof Blob)W=J.size;else W=new TextEncoder().encode(J).length}return await z14(async()=>{let Z=new AbortController,$=Q??this.requestTimeout,K=Fw(()=>Z.abort(),$),H=null;try{H=await this.fetch(X,{signal:Z.signal,...Y})}catch(B){throw new mX1(B)}finally{clearTimeout(K)}if(Y.mode!=="no-cors"&&(H.status<200||H.status>=400))throw new Gt(H,W);return H},{...this._retryOptions,...G})}async _shutdown(X=30000){await this._initPromise;let Y=!1;this.clearFlushTimer();let G=async()=>{try{await this.promiseQueue.join();while(!0){if((this.getPersistedProperty(aJ.Queue)||[]).length===0)break;if(await this.flush(),Y)break}}catch(J){if(!_N0(J))throw J;await E14(J)}},Q;try{return await Promise.race([new Promise((J,W)=>{Q=Fw(()=>{this._logger.error("Timed out while shutting down PostHog"),Y=!0,W("Timeout while shutting down PostHog. Some events may not have been sent.")},X)}),G()])}finally{clearTimeout(Q)}}async shutdown(X=30000){if(this.shutdownPromise)this._logger.warn("shutdown() called while already shutting down. shutdown() is meant to be called once before process exit - use flush() for per-request cleanup");else this.shutdownPromise=this._shutdown(X).finally(()=>{this.shutdownPromise=null});return this.shutdownPromise}}var Gt,mX1;var fN0=D(()=>{L14();iA1();EN0();Cj();U3();uX1();Gt=class Gt extends Error{constructor(X,Y){super("HTTP error while fetching PostHog: status="+X.status+", reqByteLength="+Y),this.response=X,this.reqByteLength=Y,this.name="PostHogFetchHttpError"}get status(){return this.response.status}get text(){return this.response.text()}get json(){return this.response.json()}};mX1=class mX1 extends Error{constructor(X){super("Network error while fetching PostHog",X instanceof Error?{cause:X}:{}),this.error=X,this.name="PostHogFetchNetworkError"}}});var q14=D(()=>{iA1();Cj();fN0();uX1();U3()});var A14=D(()=>{hX1()});function I14(X){let Y=globalThis._posthogChunkIds;if(!Y)return;let G=Object.keys(Y);if(QT1&&G.length===T14)return QT1;return T14=G.length,QT1=G.reduce((Q,J)=>{if(!GT1)GT1={};let W=GT1[J];if(W)Q[W[0]]=W[1];else{let Z=X(J);for(let $=Z.length-1;$>=0;$--){let H=Z[$]?.filename,U=Y[J];if(H&&U){Q[H]=U,GT1[J]=[H,U];break}}}return Q},{}),QT1}var GT1,T14,QT1;var V14=()=>{};class j14{constructor(X,Y,G=[]){this.coercers=X,this.stackParser=Y,this.modifiers=G}buildFromUnknown(X,Y={}){let Q=Y&&Y.mechanism||{handled:!0,type:"generic"},W=this.buildCoercingContext(Q,Y,0).apply(X),Z=this.buildParsingContext(Y),$=this.parseStacktrace(W,Z);return{$exception_list:this.convertToExceptionList($,Q),$exception_level:"error"}}async modifyFrames(X){for(let Y of X)if(Y.stacktrace&&Y.stacktrace.frames&&aA1(Y.stacktrace.frames))Y.stacktrace.frames=await this.applyModifiers(Y.stacktrace.frames);return X}coerceFallback(X){return{type:"Error",value:"Unknown error",stack:X.syntheticException?.stack,synthetic:!0}}parseStacktrace(X,Y){let G;if(X.cause!=null)G=this.parseStacktrace(X.cause,Y);let Q;if(X.stack!=""&&X.stack!=null)Q=this.applyChunkIds(this.stackParser(X.stack,X.synthetic?Y.skipFirstLines:0),Y.chunkIdMap);return{...X,cause:G,stack:Q}}applyChunkIds(X,Y){return X.map((G)=>{if(G.filename&&Y)G.chunk_id=Y[G.filename];return G})}applyCoercers(X,Y){for(let G of this.coercers)if(G.match(X))return G.coerce(X,Y);return this.coerceFallback(Y)}async applyModifiers(X){let Y=X;for(let G of this.modifiers)Y=await G(Y);return Y}convertToExceptionList(X,Y){let G={type:X.type,value:X.value,mechanism:{type:Y.type??"generic",handled:Y.handled??!0,synthetic:X.synthetic??!1}};if(X.stack)G.stacktrace={type:"raw",frames:X.stack};let Q=[G];if(X.cause!=null)Q.push(...this.convertToExceptionList(X.cause,{...Y,handled:!0}));return Q}buildParsingContext(X){return{chunkIdMap:I14(this.stackParser),skipFirstLines:X.skipFirstLines??1}}buildCoercingContext(X,Y,G=0){let Q=(W,Z)=>{if(!(Z<=Vn5))return;{let $=this.buildCoercingContext(X,Y,Z);return this.applyCoercers(W,$)}};return{...Y,syntheticException:G==0?Y.syntheticException:void 0,mechanism:X,apply:(W)=>Q(W,G),next:(W)=>Q(W,G+1)}}}var Vn5=4;var M14=D(()=>{U3();V14()});function Qz(X,Y,G,Q,J){let W={platform:X,filename:Y,function:G==="<anonymous>"?sQ:G,in_app:!0};if(!sa(Q))W.lineno=Q;if(!sa(J))W.colno=J;return W}var sQ="?";var Vq=D(()=>{U3()});var JT1=(X,Y)=>{let G=X.indexOf("safari-extension")!==-1,Q=X.indexOf("safari-web-extension")!==-1;return G||Q?[X.indexOf("@")!==-1?X.split("@")[0]:sQ,G?`safari-extension:${Y}`:`safari-web-extension:${Y}`]:[X,Y]};var bN0=D(()=>{Vq()});var jn5,Mn5,Rn5,yN0=(X,Y)=>{let G=jn5.exec(X);if(G){let[,J,W,Z]=G;return Qz(Y,J,sQ,+W,+Z)}let Q=Mn5.exec(X);if(Q){if(Q[2]&&Q[2].indexOf("eval")===0){let $=Rn5.exec(Q[2]);if($)Q[2]=$[1],Q[3]=$[2],Q[4]=$[3]}let[W,Z]=JT1(Q[1]||sQ,Q[2]);return Qz(Y,Z,W,Q[3]?+Q[3]:void 0,Q[4]?+Q[4]:void 0)}};var R14=D(()=>{Vq();bN0();jn5=/^\s*at (\S+?)(?::(\d+))(?::(\d+))\s*$/i,Mn5=/^\s*at (?:(.+?\)(?: \[.+\])?|.*?) ?\((?:address at )?)?(?:async )?((?:<anonymous>|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,Rn5=/\((\S*)(?::(\d+))(?::(\d+))\)/});var Sn5,Cn5,xN0=(X,Y)=>{let G=Sn5.exec(X);if(G){if(G[3]&&G[3].indexOf(" > eval")>-1){let Z=Cn5.exec(G[3]);if(Z)G[1]=G[1]||"eval",G[3]=Z[1],G[4]=Z[2],G[5]=""}let J=G[3],W=G[1]||sQ;return[W,J]=JT1(W,J),Qz(Y,J,W,G[4]?+G[4]:void 0,G[5]?+G[5]:void 0)}};var S14=D(()=>{Vq();bN0();Sn5=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:[-a-z]+)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. /=]+)(?::(\d+))?(?::(\d+))?\s*$/i,Cn5=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i});var kn5,C14=(X,Y)=>{let G=kn5.exec(X);return G?Qz(Y,G[2],G[1]||sQ,+G[3],G[4]?+G[4]:void 0):void 0};var k14=D(()=>{Vq();kn5=/^\s*at (?:((?:\[object object\])?.+) )?\(?((?:[-a-z]+):.*?):(\d+)(?::(\d+))?\)?\s*$/i});var vn5,v14=(X,Y)=>{let G=vn5.exec(X);return G?Qz(Y,G[2],G[3]||sQ,+G[1]):void 0},_n5,_14=(X,Y)=>{let G=_n5.exec(X);return G?Qz(Y,G[5],G[3]||G[4]||sQ,+G[1],+G[2]):void 0};var f14=D(()=>{Vq();vn5=/ line (\d+).*script (?:in )?(\S+)(?:: in function (\S+))?$/i,_n5=/ line (\d+), column (\d+)\s*(?:in (?:<anonymous function: ([^>]+)>|([^)]+))\(.*\))? in (.*):\s*$/i});function yn5(X,Y=!1){return!(Y||X&&!X.startsWith("/")&&!X.match(/^[A-Z]:/)&&!X.startsWith(".")&&!X.match(/^[a-zA-Z]([a-zA-Z0-9.\-+])*:\/\//))&&X!==void 0&&!X.includes("node_modules/")}function b14(X){return parseInt(X||"",10)||void 0}var fn5,bn5,y14=(X,Y)=>{let G=X.match(bn5);if(G){let Q,J,W,Z,$;if(G[1]){W=G[1];let U=W.lastIndexOf(".");if(W[U-1]===".")U--;if(U>0){Q=W.slice(0,U),J=W.slice(U+1);let B=Q.indexOf(".Module");if(B>0)W=W.slice(B+1),Q=Q.slice(0,B)}Z=void 0}if(J)Z=Q,$=J;if(J==="<anonymous>")$=void 0,W=void 0;if(W===void 0)$=$||sQ,W=Z?`${Z}.${$}`:$;let K=G[2]?.startsWith("file://")?G[2].slice(7):G[2],H=G[5]==="native";if(K?.match(/\/[A-Z]:/))K=K.slice(1);if(!K&&G[5]&&!H)K=G[5];return{filename:K?decodeURI(K):void 0,module:void 0,function:W,lineno:b14(G[3]),colno:b14(G[4]),in_app:yn5(K||"",H),platform:Y}}if(X.match(fn5))return{filename:X,platform:Y}};var x14=D(()=>{Vq();fn5=/^\s*[-]{4,}$/,bn5=/at (?:async )?(?:(.+?)\s+\()?(?:(.+):(\d+):(\d+)?|([^)]+))\)?/});function u14(X){if(!X.length)return[];let Y=Array.from(X);return Y.reverse(),Y.slice(0,g14).map((G)=>({...G,filename:G.filename||xn5(Y).filename,function:G.function||sQ}))}function xn5(X){return X[X.length-1]||{}}function hn5(){return l14("web:javascript",yN0,xN0)}function l14(X,...Y){return(G,Q=0)=>{let J=[],W=G.split(`
1639
+ `);Q=W.pop()??"";for(let Z of W){let $=Rs6(Z).replace(/^\[\d+\]\s*/,"").trim();if(!$)continue;EK({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=Rs6(Q).replace(/^\[\d+\]\s*/,"").trim();if(W)EK({method:"",path:"",status:0,duration:0,timestamp:new Date,rawLine:W})}})()}async function ei5(X){let{vitePort:Y,baseUrl:G,noTui:Q}=X,J=await MA1(Number(X.port)),{settings:W,services:Z,managedServiceNames:$}=await jA1({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)Ad({name:z.name,status:"ready",port:z.port});Ce(W),Re();let K=si5(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)Ss6(U.stdout),Ss6(U.stderr);let B=G||`http://localhost:${W.port}`;Se(B),Ad({name:"Vite",status:"ready",port:Number(Y)});let N=async(z)=>{if(U.kill(z),$.length>0){let{stopServices:O}=await Promise.resolve().then(() => (E$1(),L$1));await O(W.dataDir)}};return process.on("SIGINT",()=>N("SIGINT")),process.on("SIGTERM",()=>N("SIGTERM")),{port:Number(W.port),process:U}}var gB0=D(()=>{yB0();GF();xB0()});import{Box as uB0,Text as lB0}from"ink";import{jsx as ks6,jsxs as RA1}from"react/jsx-runtime";function Cs6(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 Gp5(X,Y){if(Xp5.has(X))return Y?{text:"\u25CF\u25CF\u25CF\u25CF\u25CF\u25CF",dimColor:!0}:{text:"not set",dimColor:!0};if(Yp5.has(X)){if(Array.isArray(Y)){if(Y.length===0)return{text:"not set",dimColor:!0};return{text:Y.map((W)=>Cs6(W)).join(", "),color:"cyan"}}let Q=Cs6(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 Qp5(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_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:"Transport",entries:[{key:"UNSAFE_ALLOW_STDIO_TRANSPORT",value:X.unsafeAllowStdioTransport}]},{title:"AI Gateway",entries:[{key:"DECO_AI_GATEWAY_ENABLED",value:X.aiGatewayEnabled},{key:"DECO_AI_GATEWAY_URL",value:X.aiGatewayUrl}]}]}function vs6({env:X}){let Y=Qp5(X);return ks6(uB0,{flexDirection:"column",children:Y.map((G)=>RA1(uB0,{flexDirection:"column",marginTop:1,children:[RA1(lB0,{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=Gp5(Q,J);return RA1(uB0,{children:[RA1(lB0,{dimColor:!0,children:[" ",Q.padEnd(36)]}),ks6(lB0,{color:W.color,dimColor:W.dimColor,children:W.text})]},Q)})]},G.title))})}var Xp5,Yp5;var _s6=D(()=>{Xp5=new Set(["BETTER_AUTH_SECRET","ENCRYPTION_KEY","MESH_JWT_SECRET","STUDIO_PROVISION_SECRET_KEY"]),Yp5=new Set(["DATABASE_URL","CLICKHOUSE_URL","NATS_URL"])});var mB0;var fs6=D(()=>{mB0={name:"decocms",version:"2.293.4",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","@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","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 AU,Text as MX}from"ink";import{Spinner as Zp5}from"@inkjs/ui";import{useSyncExternalStore as bs6}from"react";import{jsx as qY,jsxs as oQ}from"react/jsx-runtime";function Fp5(X,Y){if(!X||!Hp5.has(X))return X;let G=dB0[Y]??dB0[dB0.length-1];return X==="#875f00"?G[0]:G[1]}function ys6({status:X}){if(X==="pending")return qY(Zp5,{label:""});return qY(MX,{color:"green",children:"\u2713"})}function xs6({services:X,migrationsStatus:Y,home:G,serverUrl:Q,vibe:J}){let W=bs6(du0,mu0),Z=bs6(tu0,au0);return oQ(AU,{flexDirection:"column",paddingBottom:1,children:[J?oQ(AU,{flexDirection:"column",children:[W.map(($,K)=>{let H=Z[K],U=$.reduce((N,z)=>N+z.text.length,0),B=Math.max(0,Kp5-U);return oQ(AU,{flexDirection:"row",children:[$.map((N,z)=>{let O=Fp5(N.color,K);return O?qY(MX,{color:O,children:N.text},z):qY(MX,{children:N.text},z)}),qY(MX,{children:" ".repeat(B+2)}),H?.map((N,z)=>N.color?qY(MX,{color:N.color,children:N.char},z):qY(MX,{children:N.char},z))]},K)}),oQ(MX,{dimColor:!0,children:[" v",mB0.version]})]}):oQ(AU,{flexDirection:"column",marginTop:1,children:[Wp5.map(($,K)=>qY(MX,{color:$p5[K],children:$},K)),oQ(MX,{dimColor:!0,children:[" v",mB0.version]})]}),qY(AU,{marginBottom:1,children:qY(MX,{dimColor:!0,children:"\u2500".repeat(80)})}),qY(AU,{children:oQ(MX,{dimColor:!0,children:["Home: ",G]})}),oQ(AU,{gap:2,children:[X.map(($)=>oQ(AU,{gap:1,children:[oQ(MX,{children:[$.name," :",$.port||"...."]}),qY(ys6,{status:$.status})]},$.name)),oQ(AU,{gap:1,children:[qY(MX,{children:"Migrations"}),qY(ys6,{status:Y})]})]}),qY(AU,{children:Q?oQ(MX,{children:["Open in browser: ",qY(MX,{color:"cyan",children:Q})]}):qY(MX,{dimColor:!0,children:"Starting..."})}),oQ(AU,{gap:2,children:[oQ(MX,{dimColor:!0,children:[qY(MX,{bold:!0,dimColor:!0,children:"K"})," ","toggle config"]}),oQ(MX,{dimColor:!0,children:[qY(MX,{bold:!0,dimColor:!0,children:"L"})," ","toggle log flow"]}),oQ(MX,{dimColor:!0,children:[qY(MX,{bold:!0,dimColor:!0,children:"V"})," ","toggle vibe ",J?"\u266A Nihilore \xB7 CC BY 4.0":""]}),J&&oQ(MX,{dimColor:!0,children:[qY(MX,{bold:!0,dimColor:!0,children:"N"})," ","skip song"]})]})]})}var Wp5,$p5,dB0,Kp5=30,Hp5;var hs6=D(()=>{fs6();In1();Cn1();Wp5=[" \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 "],$p5=["#00ff64","#00ee5e","#00dc56","#00c84e","#00b444","#00a03c","#008832","#006e28"],dB0=[["#00ff64","#00cc50"],["#00f060","#00c04c"],["#00e05c","#00b448"],["#00d058","#00a844"],["#00c054","#009c40"],["#00b050","#00903c"],["#00a04c","#008438"],["#009048","#007834"],["#008044","#006c30"],["#007040","#00602c"],["#00603c","#005428"]],Hp5=new Set(["#875f00","#5f3800"])});import{useSyncExternalStore as Up5}from"react";function Bp5(){let X=process.stdout.rows||24,Y=process.stdout.columns||80;if(X!==SA1.rows||Y!==SA1.columns)SA1={rows:X,columns:Y};return SA1}function Np5(X){return process.stdout.on("resize",X),()=>{process.stdout.off("resize",X)}}function gs6(){return Up5(Np5,Bp5)}var SA1;var us6=D(()=>{SA1={rows:process.stdout.rows||24,columns:process.stdout.columns||80}});import{Box as zp5,Text as jX1}from"ink";import{useSyncExternalStore as Op5}from"react";import{jsx as cB0,jsxs as iB0}from"react/jsx-runtime";function Dp5(X){if(X>=500)return"red";if(X>=400)return"yellow";if(X>=300)return"cyan";return"green"}function ls6({logs:X,headerHeight:Y}){let{rows:G}=gs6(),{logFlow:Q}=Op5(Me,je),J=Math.max(1,G-Y-1),W=Q?X:X.slice(-J);return cB0(zp5,{flexDirection:"column",children:W.map((Z,$)=>{if(Z.rawLine)return cB0(jX1,{dimColor:!0,children:Z.rawLine},$);let K=Z.duration<1000?`${Z.duration}ms`:`${(Z.duration/1000).toFixed(1)}s`;return iB0(jX1,{children:[iB0(jX1,{dimColor:!0,children:[Z.method.padEnd(6)," ",Z.path.padEnd(30)," "]}),cB0(jX1,{color:Dp5(Z.status),children:Z.status}),iB0(jX1,{dimColor:!0,children:[" ",K.padStart(8)]})]},$)})})}var ms6=D(()=>{GF();us6()});var pB0={};M0(pB0,{App:()=>Tp5});import{Box as wp5,Text as Lp5,useInput as Ep5}from"ink";import{useSyncExternalStore as Pp5}from"react";import{jsx as CA1,jsxs as Ip5}from"react/jsx-runtime";function Tp5({home:X}){let Y=Pp5(Me,je);return Ep5((G)=>{if(G==="k"||G==="K")yn1();if(G==="l"||G==="L")xn1();if((G==="v"||G==="V")&&Y.dataDir)fn1(Y.dataDir),hn1();if((G==="n"||G==="N")&&Y.vibe)_n1()}),Ip5(wp5,{flexDirection:"column",children:[CA1(xs6,{services:Y.services,migrationsStatus:Y.migrationsStatus,home:X,serverUrl:Y.serverUrl,vibe:Y.vibe}),Y.viewMode==="config"?Y.env?CA1(vs6,{env:Y.env}):CA1(Lp5,{dimColor:!0,children:"Loading configuration..."}):CA1(ls6,{logs:Y.logs,headerHeight:Y.vibe?Ap5:qp5})]})}var qp5=15,Ap5=19;var nB0=D(()=>{_s6();hs6();ms6();GF();qd()});function ds6(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),DECOCMS_ALLOW_LOCAL_PROD:String(X.allowLocalProd),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_"))),UNSAFE_ALLOW_STDIO_TRANSPORT:String(X.unsafeAllowStdioTransport),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,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,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}}function is6(X){if(!X)return!1;try{return new URL(X).host==="api.decocms.com"&&X!=="https://studio.decocms.com/org/deco/registry/mcp"}catch{return!1}}var cs6="https://studio.decocms.com/org/deco/registry/mcp";var aB0=(X,Y,G)=>{return(Q,J)=>{let W=-1;return Z(0);async function Z($){if($<=W)throw Error("next() called multiple times");W=$;let K,H=!1,U;if(X[$])U=X[$][0][0],Q.req.routeIndex=$;else U=$===X.length&&J||void 0;if(U)try{K=await U(Q,()=>Z($+1))}catch(B){if(B instanceof Error&&Y)Q.error=B,K=await Y(B,Q),H=!0;else throw B}else if(Q.finalized===!1&&G)K=await G(Q);if(K&&(Q.finalized===!1||H))Q.res=K;return Q}}};var ps6=()=>{};var M9;var Pq=D(()=>{M9=class extends Error{res;status;constructor(X=500,Y){super(Y?.message,{cause:Y?.cause});this.res=Y?.res,this.status=X}getResponse(){if(this.res)return new Response(this.res.body,{status:this.status,headers:this.res.headers});return new Response(this.message,{status:this.status})}}});var ns6;var as6=D(()=>{ns6=Symbol()});async function Vp5(X,Y){let G=await X.formData();if(G)return jp5(G,Y);return{}}function jp5(X,Y){let G=Object.create(null);if(X.forEach((Q,J)=>{if(!(Y.all||J.endsWith("[]")))G[J]=Q;else Mp5(G,J,Q)}),Y.dot)Object.entries(G).forEach(([Q,J])=>{if(Q.includes("."))Rp5(G,Q,J),delete G[Q]});return G}var ts6=async(X,Y=Object.create(null))=>{let{all:G=!1,dot:Q=!1}=Y,W=(X instanceof kA1?X.raw.headers:X.headers).get("Content-Type");if(W?.startsWith("multipart/form-data")||W?.startsWith("application/x-www-form-urlencoded"))return Vp5(X,{all:G,dot:Q});return{}},Mp5=(X,Y,G)=>{if(X[Y]!==void 0)if(Array.isArray(X[Y]))X[Y].push(G);else X[Y]=[X[Y],G];else if(!Y.endsWith("[]"))X[Y]=G;else X[Y]=[G]},Rp5=(X,Y,G)=>{if(/(?:^|\.)__proto__\./.test(Y))return;let Q=X,J=Y.split(".");J.forEach((W,Z)=>{if(Z===J.length-1)Q[W]=G;else{if(!Q[W]||typeof Q[W]!=="object"||Array.isArray(Q[W])||Q[W]instanceof File)Q[W]=Object.create(null);Q=Q[W]}})};var rs6=D(()=>{tB0()});var oB0=(X)=>{let Y=X.split("/");if(Y[0]==="")Y.shift();return Y},os6=(X)=>{let{groups:Y,path:G}=Sp5(X),Q=oB0(G);return Cp5(Q,Y)},Sp5=(X)=>{let Y=[];return X=X.replace(/\{[^}]+\}/g,(G,Q)=>{let J=`@${Q}`;return Y.push([J,G]),J}),{groups:Y,path:X}},Cp5=(X,Y)=>{for(let G=Y.length-1;G>=0;G--){let[Q]=Y[G];for(let J=X.length-1;J>=0;J--)if(X[J].includes(Q)){X[J]=X[J].replace(Q,Y[G][1]);break}}return X},vA1,ss6=(X,Y)=>{if(X==="*")return"*";let G=X.match(/^\:([^\{\}]+)(?:\{(.+)\})?$/);if(G){let Q=`${X}#${Y}`;if(!vA1[Q])if(G[2])vA1[Q]=Y&&Y[0]!==":"&&Y[0]!=="*"?[Q,G[1],new RegExp(`^${G[2]}(?=/${Y})`)]:[X,G[1],new RegExp(`^${G[2]}$`)];else vA1[Q]=[X,G[1],!0];return vA1[Q]}return null},ra=(X,Y)=>{try{return Y(X)}catch{return X.replace(/(?:%[0-9A-Fa-f]{2})+/g,(G)=>{try{return Y(G)}catch{return G}})}},es6=(X)=>ra(X,decodeURI),sB0=(X)=>{let Y=X.url,G=Y.indexOf("/",Y.indexOf(":")+4),Q=G;for(;Q<Y.length;Q++){let J=Y.charCodeAt(Q);if(J===37){let W=Y.indexOf("?",Q),Z=Y.indexOf("#",Q),$=W===-1?Z===-1?void 0:Z:Z===-1?W:Math.min(W,Z),K=Y.slice(G,$);return es6(K.includes("%25")?K.replace(/%25/g,"%2525"):K)}else if(J===63||J===35)break}return Y.slice(G,Q)},Xe6=(X)=>{let Y=sB0(X);return Y.length>1&&Y.at(-1)==="/"?Y.slice(0,-1):Y},Mj=(X,Y,...G)=>{if(G.length)Y=Mj(Y,...G);return`${X?.[0]==="/"?"":"/"}${X}${Y==="/"?"":`${X?.at(-1)==="/"?"":"/"}${Y?.[0]==="/"?Y.slice(1):Y}`}`},_A1=(X)=>{if(X.charCodeAt(X.length-1)!==63||!X.includes(":"))return null;let Y=X.split("/"),G=[],Q="";return Y.forEach((J)=>{if(J!==""&&!/\:/.test(J))Q+="/"+J;else if(/\:/.test(J))if(/\?/.test(J)){if(G.length===0&&Q==="")G.push("/");else G.push(Q);let W=J.replace("?","");Q+="/"+W,G.push(Q)}else Q+="/"+J}),G.filter((J,W,Z)=>Z.indexOf(J)===W)},rB0=(X)=>{if(!/[%+]/.test(X))return X;if(X.indexOf("+")!==-1)X=X.replace(/\+/g," ");return X.indexOf("%")!==-1?ra(X,MX1):X},Ye6=(X,Y,G)=>{let Q;if(!G&&Y&&!/[%+]/.test(Y)){let Z=X.indexOf("?",8);if(Z===-1)return;if(!X.startsWith(Y,Z+1))Z=X.indexOf(`&${Y}`,Z+1);while(Z!==-1){let $=X.charCodeAt(Z+Y.length+1);if($===61){let K=Z+Y.length+2,H=X.indexOf("&",K);return rB0(X.slice(K,H===-1?void 0:H))}else if($==38||isNaN($))return"";Z=X.indexOf(`&${Y}`,Z+1)}if(Q=/[%+]/.test(X),!Q)return}let J={};Q??=/[%+]/.test(X);let W=X.indexOf("?",8);while(W!==-1){let Z=X.indexOf("&",W+1),$=X.indexOf("=",W);if($>Z&&Z!==-1)$=-1;let K=X.slice(W+1,$===-1?Z===-1?void 0:Z:$);if(Q)K=rB0(K);if(W=Z,K==="")continue;let H;if($===-1)H="";else if(H=X.slice($+1,Z===-1?void 0:Z),Q)H=rB0(H);if(G){if(!(J[K]&&Array.isArray(J[K])))J[K]=[];J[K].push(H)}else J[K]??=H}return Y?J[Y]:J},Ge6,Qe6=(X,Y)=>{return Ye6(X,Y,!0)},MX1;var qq=D(()=>{vA1={},Ge6=Ye6,MX1=decodeURIComponent});var Je6=(X)=>ra(X,MX1),kA1;var tB0=D(()=>{Pq();as6();rs6();qq();kA1=class{raw;#X;#Y;routeIndex=0;path;bodyCache={};constructor(X,Y="/",G=[[]]){this.raw=X,this.path=Y,this.#Y=G,this.#X={}}param(X){return X?this.#G(X):this.#Q()}#G(X){let Y=this.#Y[0][this.routeIndex][1][X],G=this.#J(Y);return G&&/\%/.test(G)?Je6(G):G}#Q(){let X={},Y=Object.keys(this.#Y[0][this.routeIndex][1]);for(let G of Y){let Q=this.#J(this.#Y[0][this.routeIndex][1][G]);if(Q!==void 0)X[G]=/\%/.test(Q)?Je6(Q):Q}return X}#J(X){return this.#Y[1]?this.#Y[1][X]:X}query(X){return Ge6(this.url,X)}queries(X){return Qe6(this.url,X)}header(X){if(X)return this.raw.headers.get(X)??void 0;let Y={};return this.raw.headers.forEach((G,Q)=>{Y[Q]=G}),Y}async parseBody(X){return ts6(this,X)}#Z=(X)=>{let{bodyCache:Y,raw:G}=this,Q=Y[X];if(Q)return Q;let J=Object.keys(Y)[0];if(J)return Y[J].then((W)=>{if(J==="json")W=JSON.stringify(W);return new Response(W)[X]()});return Y[X]=G[X]()};json(){return this.#Z("text").then((X)=>JSON.parse(X))}text(){return this.#Z("text")}arrayBuffer(){return this.#Z("arrayBuffer")}blob(){return this.#Z("blob")}formData(){return this.#Z("formData")}addValidatedData(X,Y){this.#X[X]=Y}valid(X){return this.#X[X]}get url(){return this.raw.url}get method(){return this.raw.method}get[ns6](){return this.#Y}get matchedRoutes(){return this.#Y[0].map(([[,X]])=>X)}get routePath(){return this.#Y[0].map(([[,X]])=>X)[this.routeIndex].path}}});var fA1,Ze6=(X,Y)=>{let G=new String(X);return G.isEscaped=!0,G.callbacks=Y,G},RX1=async(X,Y,G,Q,J)=>{if(typeof X==="object"&&!(X instanceof String)){if(!(X instanceof Promise))X=X.toString();if(X instanceof Promise)X=await X}let W=X.callbacks;if(!W?.length)return Promise.resolve(X);if(J)J[0]+=X;else J=[X];let Z=Promise.all(W.map(($)=>$({phase:Y,buffer:J,context:Q}))).then(($)=>Promise.all($.filter(Boolean).map((K)=>RX1(K,Y,!1,Q,J))).then(()=>J[0]));if(G)return Ze6(await Z,W);else return Z};var bA1=D(()=>{fA1={Stringify:1,BeforeStream:2,Stream:3}});var We6="text/plain; charset=UTF-8",eB0=(X,Y)=>{return{"Content-Type":X,...Y}},SX1=(X,Y)=>new Response(X,Y),$e6=class{#X;#Y;env={};#G;finalized=!1;error;#Q;#J;#Z;#$;#W;#K;#H;#U;#B;constructor(X,Y){if(this.#X=X,Y)this.#J=Y.executionCtx,this.env=Y.env,this.#K=Y.notFoundHandler,this.#B=Y.path,this.#U=Y.matchResult}get req(){return this.#Y??=new kA1(this.#X,this.#B,this.#U),this.#Y}get event(){if(this.#J&&"respondWith"in this.#J)return this.#J;else throw Error("This context has no FetchEvent")}get executionCtx(){if(this.#J)return this.#J;else throw Error("This context has no ExecutionContext")}get res(){return this.#Z||=SX1(null,{headers:this.#H??=new Headers})}set res(X){if(this.#Z&&X){X=SX1(X.body,X);for(let[Y,G]of this.#Z.headers.entries()){if(Y==="content-type")continue;if(Y==="set-cookie"){let Q=this.#Z.headers.getSetCookie();X.headers.delete("set-cookie");for(let J of Q)X.headers.append("set-cookie",J)}else X.headers.set(Y,G)}}this.#Z=X,this.finalized=!0}render=(...X)=>{return this.#W??=(Y)=>this.html(Y),this.#W(...X)};setLayout=(X)=>this.#$=X;getLayout=()=>this.#$;setRenderer=(X)=>{this.#W=X};header=(X,Y,G)=>{if(this.finalized)this.#Z=SX1(this.#Z.body,this.#Z);let Q=this.#Z?this.#Z.headers:this.#H??=new Headers;if(Y===void 0)Q.delete(X);else if(G?.append)Q.append(X,Y);else Q.set(X,Y)};status=(X)=>{this.#Q=X};set=(X,Y)=>{this.#G??=new Map,this.#G.set(X,Y)};get=(X)=>{return this.#G?this.#G.get(X):void 0};get var(){if(!this.#G)return{};return Object.fromEntries(this.#G)}#F(X,Y,G){let Q=this.#Z?new Headers(this.#Z.headers):this.#H??new Headers;if(typeof Y==="object"&&"headers"in Y){let W=Y.headers instanceof Headers?Y.headers:new Headers(Y.headers);for(let[Z,$]of W)if(Z.toLowerCase()==="set-cookie")Q.append(Z,$);else Q.set(Z,$)}if(G)for(let[W,Z]of Object.entries(G))if(typeof Z==="string")Q.set(W,Z);else{Q.delete(W);for(let $ of Z)Q.append(W,$)}let J=typeof Y==="number"?Y:Y?.status??this.#Q;return SX1(X,{status:J,headers:Q})}newResponse=(...X)=>this.#F(...X);body=(X,Y,G)=>this.#F(X,Y,G);text=(X,Y,G)=>{return!this.#H&&!this.#Q&&!Y&&!G&&!this.finalized?new Response(X):this.#F(X,Y,eB0(We6,G))};json=(X,Y,G)=>{return this.#F(JSON.stringify(X),Y,eB0("application/json",G))};html=(X,Y,G)=>{let Q=(J)=>this.#F(J,Y,eB0("text/html; charset=UTF-8",G));return typeof X==="object"?RX1(X,fA1.Stringify,!1,{}).then(Q):Q(X)};redirect=(X,Y)=>{let G=String(X);return this.header("Location",!/[^\x00-\xFF]/.test(G)?G:encodeURI(G)),this.newResponse(null,Y??302)};notFound=()=>{return this.#K??=()=>SX1(),this.#K(this)}};var yA1=D(()=>{tB0();bA1()});var T7="ALL",Ke6="all",He6,xA1="Can not add a route since the matcher is already built.",hA1;var Aq=D(()=>{He6=["get","post","put","delete","options","patch"],hA1=class extends Error{}});var XN0="__COMPOSED_HANDLER";var YN0=()=>{};var kp5=(X)=>{return X.text("404 Not Found",404)},Fe6=(X,Y)=>{if("getResponse"in X){let G=X.getResponse();return Y.newResponse(G.body,G)}return console.error(X),Y.text("Internal Server Error",500)},Ue6=class X{get;post;put;delete;options;patch;all;on;use;router;getPath;_basePath="/";#X="/";routes=[];constructor(Y={}){[...He6,Ke6].forEach((W)=>{this[W]=(Z,...$)=>{if(typeof Z==="string")this.#X=Z;else this.#Q(W,this.#X,Z);return $.forEach((K)=>{this.#Q(W,this.#X,K)}),this}}),this.on=(W,Z,...$)=>{for(let K of[Z].flat()){this.#X=K;for(let H of[W].flat())$.map((U)=>{this.#Q(H.toUpperCase(),this.#X,U)})}return this},this.use=(W,...Z)=>{if(typeof W==="string")this.#X=W;else this.#X="*",Z.unshift(W);return Z.forEach(($)=>{this.#Q(T7,this.#X,$)}),this};let{strict:Q,...J}=Y;Object.assign(this,J),this.getPath=Q??!0?Y.getPath??sB0:Xe6}#Y(){let Y=new X({router:this.router,getPath:this.getPath});return Y.errorHandler=this.errorHandler,Y.#G=this.#G,Y.routes=this.routes,Y}#G=kp5;errorHandler=Fe6;route(Y,G){let Q=this.basePath(Y);return G.routes.map((J)=>{let W;if(G.errorHandler===Fe6)W=J.handler;else W=async(Z,$)=>(await aB0([],G.errorHandler)(Z,()=>J.handler(Z,$))).res,W[XN0]=J.handler;Q.#Q(J.method,J.path,W)}),this}basePath(Y){let G=this.#Y();return G._basePath=Mj(this._basePath,Y),G}onError=(Y)=>{return this.errorHandler=Y,this};notFound=(Y)=>{return this.#G=Y,this};mount(Y,G,Q){let J,W;if(Q)if(typeof Q==="function")W=Q;else if(W=Q.optionHandler,Q.replaceRequest===!1)J=(K)=>K;else J=Q.replaceRequest;let Z=W?(K)=>{let H=W(K);return Array.isArray(H)?H:[H]}:(K)=>{let H=void 0;try{H=K.executionCtx}catch{}return[K.env,H]};J||=(()=>{let K=Mj(this._basePath,Y),H=K==="/"?0:K.length;return(U)=>{let B=new URL(U.url);return B.pathname=B.pathname.slice(H)||"/",new Request(B,U)}})();let $=async(K,H)=>{let U=await G(J(K.req.raw),...Z(K));if(U)return U;await H()};return this.#Q(T7,Mj(Y,"*"),$),this}#Q(Y,G,Q){Y=Y.toUpperCase(),G=Mj(this._basePath,G);let J={basePath:this._basePath,path:G,method:Y,handler:Q};this.router.add(Y,G,[Q,J]),this.routes.push(J)}#J(Y,G){if(Y instanceof Error)return this.errorHandler(Y,G);throw Y}#Z(Y,G,Q,J){if(J==="HEAD")return(async()=>new Response(null,await this.#Z(Y,G,Q,"GET")))();let W=this.getPath(Y,{env:Q}),Z=this.router.match(J,W),$=new $e6(Y,{path:W,matchResult:Z,env:Q,executionCtx:G,notFoundHandler:this.#G});if(Z[0].length===1){let H;try{H=Z[0][0][0][0]($,async()=>{$.res=await this.#G($)})}catch(U){return this.#J(U,$)}return H instanceof Promise?H.then((U)=>U||($.finalized?$.res:this.#G($))).catch((U)=>this.#J(U,$)):H??this.#G($)}let K=aB0(Z[0],this.errorHandler,this.#G);return(async()=>{try{let H=await K($);if(!H.finalized)throw Error("Context is not finalized. Did you forget to return a Response object or `await next()`?");return H.res}catch(H){return this.#J(H,$)}})()}fetch=(Y,...G)=>{return this.#Z(Y,G[1],G[0],Y.method)};request=(Y,G,Q,J)=>{if(Y instanceof Request)return this.fetch(G?new Request(Y,G):Y,Q,J);return Y=Y.toString(),this.fetch(new Request(/^https?:\/\//.test(Y)?Y:`http://localhost${Mj("/",Y)}`,G),Q,J)};fire=()=>{addEventListener("fetch",(Y)=>{Y.respondWith(this.#Z(Y.request,Y,void 0,Y.request.method))})}};var Be6=D(()=>{ps6();yA1();Aq();YN0();qq()});function gA1(X,Y){let G=this.buildAllMatchers(),Q=(J,W)=>{let Z=G[J]||G[T7],$=Z[2][W];if($)return $;let K=W.match(Z[0]);if(!K)return[[],CX1];let H=K.indexOf("",1);return[Z[1][H],K]};return this.match=Q,Q(X,Y)}var CX1;var GN0=D(()=>{Aq();CX1=[]});function _p5(X,Y){if(X.length===1)return Y.length===1?X<Y?-1:1:-1;if(Y.length===1)return 1;if(X===kX1||X===vX1)return 1;else if(Y===kX1||Y===vX1)return-1;if(X===uA1)return 1;else if(Y===uA1)return-1;return X.length===Y.length?X<Y?-1:1:Y.length-X.length}var uA1="[^/]+",kX1=".*",vX1="(?:|/.*)",Rj,vp5,Ne6=class X{#X;#Y;#G=Object.create(null);insert(Y,G,Q,J,W){if(Y.length===0){if(this.#X!==void 0)throw Rj;if(W)return;this.#X=G;return}let[Z,...$]=Y,K=Z==="*"?$.length===0?["","",kX1]:["","",uA1]:Z==="/*"?["","",vX1]:Z.match(/^\:([^\{\}]+)(?:\{(.+)\})?$/),H;if(K){let U=K[1],B=K[2]||uA1;if(U&&K[2]){if(B===".*")throw Rj;if(B=B.replace(/^\((?!\?:)(?=[^)]+\)$)/,"(?:"),/\((?!\?:)/.test(B))throw Rj}if(H=this.#G[B],!H){if(Object.keys(this.#G).some((N)=>N!==kX1&&N!==vX1))throw Rj;if(W)return;if(H=this.#G[B]=new X,U!=="")H.#Y=J.varIndex++}if(!W&&U!=="")Q.push([U,H.#Y])}else if(H=this.#G[Z],!H){if(Object.keys(this.#G).some((U)=>U.length>1&&U!==kX1&&U!==vX1))throw Rj;if(W)return;H=this.#G[Z]=new X}H.insert($,G,Q,J,W)}buildRegExpStr(){let G=Object.keys(this.#G).sort(_p5).map((Q)=>{let J=this.#G[Q];return(typeof J.#Y==="number"?`(${Q})@${J.#Y}`:vp5.has(Q)?`\\${Q}`:Q)+J.buildRegExpStr()});if(typeof this.#X==="number")G.unshift(`#${this.#X}`);if(G.length===0)return"";if(G.length===1)return G[0];return"(?:"+G.join("|")+")"}};var QN0=D(()=>{Rj=Symbol(),vp5=new Set(".\\+*[^]$()")});var ze6=class{#X={varIndex:0};#Y=new Ne6;insert(X,Y,G){let Q=[],J=[];for(let Z=0;;){let $=!1;if(X=X.replace(/\{[^}]+\}/g,(K)=>{let H=`@\\${Z}`;return J[Z]=[H,K],Z++,$=!0,H}),!$)break}let W=X.match(/(?::[^\/]+)|(?:\/\*$)|./g)||[];for(let Z=J.length-1;Z>=0;Z--){let[$]=J[Z];for(let K=W.length-1;K>=0;K--)if(W[K].indexOf($)!==-1){W[K]=W[K].replace($,J[Z][1]);break}}return this.#Y.insert(W,Y,Q,this.#X,G),Q}buildRegExp(){let X=this.#Y.buildRegExpStr();if(X==="")return[/^$/,[],[]];let Y=0,G=[],Q=[];return X=X.replace(/#(\d+)|@(\d+)|\.\*\$/g,(J,W,Z)=>{if(W!==void 0)return G[++Y]=Number(W),"$()";if(Z!==void 0)return Q[Number(Z)]=++Y,"";return""}),[new RegExp(`^${X}`),G,Q]}};var Oe6=D(()=>{QN0()});function we6(X){return De6[X]??=new RegExp(X==="*"?"":`^${X.replace(/\/\*$|([.\\+*[^\]$()])/g,(Y,G)=>G?`\\${G}`:"(?:|/.*)")}$`)}function bp5(){De6=Object.create(null)}function yp5(X){let Y=new ze6,G=[];if(X.length===0)return fp5;let Q=X.map((H)=>[!/\*|\/:/.test(H[0]),...H]).sort(([H,U],[B,N])=>H?1:B?-1:U.length-N.length),J=Object.create(null);for(let H=0,U=-1,B=Q.length;H<B;H++){let[N,z,O]=Q[H];if(N)J[z]=[O.map(([E])=>[E,Object.create(null)]),CX1];else U++;let w;try{w=Y.insert(z,U,N)}catch(E){throw E===Rj?new hA1(z):E}if(N)continue;G[U]=O.map(([E,P])=>{let q=Object.create(null);P-=1;for(;P>=0;P--){let[M,j]=w[P];q[M]=j}return[E,q]})}let[W,Z,$]=Y.buildRegExp();for(let H=0,U=G.length;H<U;H++)for(let B=0,N=G[H].length;B<N;B++){let z=G[H][B]?.[1];if(!z)continue;let O=Object.keys(z);for(let w=0,E=O.length;w<E;w++)z[O[w]]=$[z[O[w]]]}let K=[];for(let H in Z)K[H]=G[Z[H]];return[W,K,J]}function oa(X,Y){if(!X)return;for(let G of Object.keys(X).sort((Q,J)=>J.length-Q.length))if(we6(G).test(Y))return[...X[G]];return}var fp5,De6,lA1=class{name="RegExpRouter";#X;#Y;constructor(){this.#X={[T7]:Object.create(null)},this.#Y={[T7]:Object.create(null)}}add(X,Y,G){let Q=this.#X,J=this.#Y;if(!Q||!J)throw Error(xA1);if(!Q[X])[Q,J].forEach(($)=>{$[X]=Object.create(null),Object.keys($[T7]).forEach((K)=>{$[X][K]=[...$[T7][K]]})});if(Y==="/*")Y="*";let W=(Y.match(/\/:/g)||[]).length;if(/\*$/.test(Y)){let $=we6(Y);if(X===T7)Object.keys(Q).forEach((K)=>{Q[K][Y]||=oa(Q[K],Y)||oa(Q[T7],Y)||[]});else Q[X][Y]||=oa(Q[X],Y)||oa(Q[T7],Y)||[];Object.keys(Q).forEach((K)=>{if(X===T7||X===K)Object.keys(Q[K]).forEach((H)=>{$.test(H)&&Q[K][H].push([G,W])})}),Object.keys(J).forEach((K)=>{if(X===T7||X===K)Object.keys(J[K]).forEach((H)=>$.test(H)&&J[K][H].push([G,W]))});return}let Z=_A1(Y)||[Y];for(let $=0,K=Z.length;$<K;$++){let H=Z[$];Object.keys(J).forEach((U)=>{if(X===T7||X===U)J[U][H]||=[...oa(Q[U],H)||oa(Q[T7],H)||[]],J[U][H].push([G,W-K+$+1])})}}match=gA1;buildAllMatchers(){let X=Object.create(null);return Object.keys(this.#Y).concat(Object.keys(this.#X)).forEach((Y)=>{X[Y]||=this.#G(Y)}),this.#X=this.#Y=void 0,bp5(),X}#G(X){let Y=[],G=X===T7;if([this.#X,this.#Y].forEach((Q)=>{let J=Q[X]?Object.keys(Q[X]).map((W)=>[W,Q[X][W]]):[];if(J.length!==0)G||=!0,Y.push(...J);else if(X!==T7)Y.push(...Object.keys(Q[T7]).map((W)=>[W,Q[T7][W]]))}),!G)return null;else return yp5(Y)}};var JN0=D(()=>{Aq();qq();GN0();QN0();Oe6();fp5=[/^$/,[],Object.create(null)],De6=Object.create(null)});var xp5=class{name="PreparedRegExpRouter";#X;#Y;constructor(X,Y){this.#X=X,this.#Y=Y}#G(X,Y){let G=this.#X[X];G[1].forEach((Q)=>Q&&Q.push(Y)),Object.values(G[2]).forEach((Q)=>Q[0].push(Y))}#Q(X,Y,G,Q,J){let W=this.#X[X];if(!J)W[2][Y][0].push([G,{}]);else Q.forEach((Z)=>{if(typeof Z==="number")W[1][Z].push([G,J]);else W[2][Z||Y][0].push([G,J])})}add(X,Y,G){if(!this.#X[X]){let J=this.#X[T7],W={};for(let Z in J[2])W[Z]=[J[2][Z][0].slice(),CX1];this.#X[X]=[J[0],J[1].map((Z)=>Array.isArray(Z)?Z.slice():0),W]}if(Y==="/*"||Y==="*"){let J=[G,{}];if(X===T7)for(let W in this.#X)this.#G(W,J);else this.#G(X,J);return}let Q=this.#Y[Y];if(!Q)throw Error(`Path ${Y} is not registered`);for(let[J,W]of Q)if(X===T7)for(let Z in this.#X)this.#Q(Z,Y,G,J,W);else this.#Q(X,Y,G,J,W)}buildAllMatchers(){return this.#X}match=gA1};var Le6=D(()=>{Aq();GN0();JN0()});var Ee6=D(()=>{JN0();Le6()});var ZN0=class{name="SmartRouter";#X=[];#Y=[];constructor(X){this.#X=X.routers}add(X,Y,G){if(!this.#Y)throw Error(xA1);this.#Y.push([X,Y,G])}match(X,Y){if(!this.#Y)throw Error("Fatal error");let G=this.#X,Q=this.#Y,J=G.length,W=0,Z;for(;W<J;W++){let $=G[W];try{for(let K=0,H=Q.length;K<H;K++)$.add(...Q[K]);Z=$.match(X,Y)}catch(K){if(K instanceof hA1)continue;throw K}this.match=$.match.bind($),this.#X=[$],this.#Y=void 0;break}if(W===J)throw Error("Fatal error");return this.name=`SmartRouter + ${this.activeRouter.name}`,Z}get activeRouter(){if(this.#Y||this.#X.length!==1)throw Error("No active router has been determined yet.");return this.#X[0]}};var Pe6=D(()=>{Aq()});var qe6=D(()=>{Pe6()});var _X1,hp5=(X)=>{for(let Y in X)return!0;return!1},Ae6=class X{#X;#Y;#G;#Q=0;#J=_X1;constructor(Y,G,Q){if(this.#Y=Q||Object.create(null),this.#X=[],Y&&G){let J=Object.create(null);J[Y]={handler:G,possibleKeys:[],score:0},this.#X=[J]}this.#G=[]}insert(Y,G,Q){this.#Q=++this.#Q;let J=this,W=os6(G),Z=[];for(let $=0,K=W.length;$<K;$++){let H=W[$],U=W[$+1],B=ss6(H,U),N=Array.isArray(B)?B[0]:H;if(N in J.#Y){if(J=J.#Y[N],B)Z.push(B[1]);continue}if(J.#Y[N]=new X,B)J.#G.push(B),Z.push(B[1]);J=J.#Y[N]}return J.#X.push({[Y]:{handler:Q,possibleKeys:Z.filter(($,K,H)=>H.indexOf($)===K),score:this.#Q}}),J}#Z(Y,G,Q,J,W){for(let Z=0,$=G.#X.length;Z<$;Z++){let K=G.#X[Z],H=K[Q]||K[T7],U={};if(H!==void 0){if(H.params=Object.create(null),Y.push(H),J!==_X1||W&&W!==_X1)for(let B=0,N=H.possibleKeys.length;B<N;B++){let z=H.possibleKeys[B],O=U[H.score];H.params[z]=W?.[z]&&!O?W[z]:J[z]??W?.[z],U[H.score]=!0}}}}search(Y,G){let Q=[];this.#J=_X1;let W=[this],Z=oB0(G),$=[],K=Z.length,H=null;for(let U=0;U<K;U++){let B=Z[U],N=U===K-1,z=[];for(let w=0,E=W.length;w<E;w++){let P=W[w],q=P.#Y[B];if(q)if(q.#J=P.#J,N){if(q.#Y["*"])this.#Z(Q,q.#Y["*"],Y,P.#J);this.#Z(Q,q,Y,P.#J)}else z.push(q);for(let M=0,j=P.#G.length;M<j;M++){let V=P.#G[M],R=P.#J===_X1?{}:{...P.#J};if(V==="*"){let h=P.#Y["*"];if(h)this.#Z(Q,h,Y,P.#J),h.#J=R,z.push(h);continue}let[k,_,v]=V;if(!B&&!(v instanceof RegExp))continue;let y=P.#Y[k];if(v instanceof RegExp){if(H===null){H=Array(K);let p=G[0]==="/"?1:0;for(let f=0;f<K;f++)H[f]=p,p+=Z[f].length+1}let h=G.substring(H[U]),i=v.exec(h);if(i){if(R[_]=i[0],this.#Z(Q,y,Y,P.#J,R),hp5(y.#Y)){y.#J=R;let p=i[0].match(/\//)?.length??0;($[p]||=[]).push(y)}continue}}if(v===!0||v.test(B))if(R[_]=B,N){if(this.#Z(Q,y,Y,R,P.#J),y.#Y["*"])this.#Z(Q,y.#Y["*"],Y,R,P.#J)}else y.#J=R,z.push(y)}}let O=$.shift();W=O?z.concat(O):z}if(Q.length>1)Q.sort((U,B)=>{return U.score-B.score});return[Q.map(({handler:U,params:B})=>[U,B])]}};var Te6=D(()=>{Aq();qq();_X1=Object.create(null)});var WN0=class{name="TrieRouter";#X;constructor(){this.#X=new Ae6}add(X,Y,G){let Q=_A1(Y);if(Q){for(let J=0,W=Q.length;J<W;J++)this.#X.insert(X,Q[J],G);return}this.#X.insert(X,Y,G)}match(X,Y){return this.#X.search(X,Y)}};var Ie6=D(()=>{qq();Te6()});var Ve6=D(()=>{Ie6()});var U5;var je6=D(()=>{Be6();Ee6();qe6();Ve6();U5=class extends Ue6{constructor(X={}){super(X);this.router=X.router??new ZN0({routers:[new lA1,new WN0]})}}});var NG=D(()=>{je6()});var Re6,gp5,Me6=(X)=>{let Y=0,G=X.length;while(Y<G){let Q=X.charCodeAt(Y);if(Q!==32&&Q!==9)break;Y++}while(G>Y){let Q=X.charCodeAt(G-1);if(Q!==32&&Q!==9)break;G--}return Y===0&&G===X.length?X:X.slice(Y,G)},$N0=(X,Y)=>{if(Y&&X.indexOf(Y)===-1)return{};let G=X.split(";"),Q={};for(let J of G){let W=J.indexOf("=");if(W===-1)continue;let Z=Me6(J.substring(0,W));if(Y&&Y!==Z||!Re6.test(Z))continue;let $=Me6(J.substring(W+1));if($.startsWith('"')&&$.endsWith('"'))$=$.slice(1,-1);if(gp5.test($)){if(Q[Z]=$.indexOf("%")!==-1?ra($,MX1):$,Y)break}}return Q},up5=(X,Y,G={})=>{if(!Re6.test(X))throw Error("Invalid cookie name");let Q=`${X}=${Y}`;if(X.startsWith("__Secure-")&&!G.secure)throw Error("__Secure- Cookie must have Secure attributes");if(X.startsWith("__Host-")){if(!G.secure)throw Error("__Host- Cookie must have Secure attributes");if(G.path!=="/")throw Error('__Host- Cookie must have Path attributes with "/"');if(G.domain)throw Error("__Host- Cookie must not have Domain attributes")}for(let J of["domain","path"])if(G[J]&&/[;\r\n]/.test(G[J]))throw Error(`${J} must not contain ";", "\\r", or "\\n"`);if(G&&typeof G.maxAge==="number"&&G.maxAge>=0){if(G.maxAge>34560000)throw Error("Cookies Max-Age SHOULD NOT be greater than 400 days (34560000 seconds) in duration.");Q+=`; Max-Age=${G.maxAge|0}`}if(G.domain&&G.prefix!=="host")Q+=`; Domain=${G.domain}`;if(G.path)Q+=`; Path=${G.path}`;if(G.expires){if(G.expires.getTime()-Date.now()>34560000000)throw Error("Cookies Expires SHOULD NOT be greater than 400 days (34560000 seconds) in the future.");Q+=`; Expires=${G.expires.toUTCString()}`}if(G.httpOnly)Q+="; HttpOnly";if(G.secure)Q+="; Secure";if(G.sameSite)Q+=`; SameSite=${G.sameSite.charAt(0).toUpperCase()+G.sameSite.slice(1)}`;if(G.priority)Q+=`; Priority=${G.priority.charAt(0).toUpperCase()+G.priority.slice(1)}`;if(G.partitioned){if(!G.secure)throw Error("Partitioned Cookie must have Secure attributes");Q+="; Partitioned"}return Q},mA1=(X,Y,G)=>{return Y=encodeURIComponent(Y),up5(X,Y,G)};var Se6=D(()=>{qq();Re6=/^[\w!#$%&'*.^`|~+-]+$/,gp5=/^[ !#-:<-[\]-~]*$/});var dA1=(X,Y,G)=>{let Q=X.req.raw.headers.get("Cookie");if(typeof Y==="string"){if(!Q)return;let W=Y;if(G==="secure")W="__Secure-"+Y;else if(G==="host")W="__Host-"+Y;return $N0(Q,W)[W]}if(!Q)return{};return $N0(Q)},lp5=(X,Y,G)=>{let Q;if(G?.prefix==="secure")Q=mA1("__Secure-"+X,Y,{path:"/",...G,secure:!0});else if(G?.prefix==="host")Q=mA1("__Host-"+X,Y,{...G,path:"/",secure:!0,domain:void 0});else Q=mA1(X,Y,{path:"/",...G});return Q},KN0=(X,Y,G,Q)=>{let J=lp5(Y,G,Q);X.header("Set-Cookie",J,{append:!0})};var HN0=D(()=>{Se6()});var Ce6=(X)=>{let G={...{origin:"*",allowMethods:["GET","HEAD","PUT","POST","DELETE","PATCH"],allowHeaders:[],exposeHeaders:[]},...X},Q=((W)=>{if(typeof W==="string")if(W==="*"){if(G.credentials)return(Z)=>Z||null;return()=>W}else return(Z)=>W===Z?Z:null;else if(typeof W==="function")return W;else return(Z)=>W.includes(Z)?Z:null})(G.origin),J=((W)=>{if(typeof W==="function")return W;else if(Array.isArray(W))return()=>W;else return()=>[]})(G.allowMethods);return async function(Z,$){function K(U,B){Z.res.headers.set(U,B)}let H=await Q(Z.req.header("origin")||"",Z);if(H)K("Access-Control-Allow-Origin",H);if(G.credentials)K("Access-Control-Allow-Credentials","true");if(G.exposeHeaders?.length)K("Access-Control-Expose-Headers",G.exposeHeaders.join(","));if(Z.req.method==="OPTIONS"){if(G.origin!=="*"||G.credentials)K("Vary","Origin");if(G.maxAge!=null)K("Access-Control-Max-Age",G.maxAge.toString());let U=await J(Z.req.header("origin")||"",Z);if(U.length)K("Access-Control-Allow-Methods",U.join(","));let B=G.allowHeaders;if(!B?.length){let N=Z.req.header("Access-Control-Request-Headers");if(N)B=N.split(/\s*,\s*/)}if(B?.length)K("Access-Control-Allow-Headers",B.join(",")),Z.res.headers.append("Vary","Access-Control-Request-Headers");return Z.res.headers.delete("Content-Length"),Z.res.headers.delete("Content-Type"),new Response(null,{headers:Z.res.headers,status:204,statusText:"No Content"})}if(await $(),G.origin!=="*"||G.credentials)Z.header("Vary","Origin",{append:!0})}};var ke6=()=>{};var ve6=()=>{try{return performance.now()}catch{}return Date.now()},FN0=(X)=>{let Y={total:!0,enabled:!0,totalDescription:"Total Response Time",autoEnd:!0,crossOrigin:!1,...X};return async function(Q,J){let W=[],Z=new Map;if(Q.get("metric"))return await J();if(Q.set("metric",{headers:W,timers:Z}),Y.total)OH(Q,"total",Y.totalDescription);if(await J(),Y.total)g$(Q,"total");if(Y.autoEnd)Z.forEach((K,H)=>g$(Q,H));if(typeof Y.enabled==="function"?Y.enabled(Q):Y.enabled){Q.res.headers.append("Server-Timing",W.join(","));let K=typeof Y.crossOrigin==="function"?Y.crossOrigin(Q):Y.crossOrigin;if(K)Q.res.headers.append("Timing-Allow-Origin",typeof K==="string"?K:"*")}}},_e6=(X,Y,G,Q,J)=>{let W=X.get("metric");if(!W){console.warn("Metrics not initialized! Please add the `timing()` middleware to this route!");return}if(typeof G==="number"){let Z=G.toFixed(J||1),$=Q?`${Y};dur=${Z};desc="${Q}"`:`${Y};dur=${Z}`;W.headers.push($)}else{let Z=G?`${Y};desc="${G}"`:`${Y}`;W.headers.push(Z)}},OH=(X,Y,G)=>{let Q=X.get("metric");if(!Q){console.warn("Metrics not initialized! Please add the `timing()` middleware to this route!");return}Q.timers.set(Y,{description:G,start:ve6()})},g$=(X,Y,G)=>{let Q=X.get("metric");if(!Q){console.warn("Metrics not initialized! Please add the `timing()` middleware to this route!");return}let J=Q.timers.get(Y);if(!J){console.warn(`Timer "${Y}" does not exist!`);return}let{description:W,start:Z}=J,$=ve6()-Z;_e6(X,Y,$,W,G),Q.timers.delete(Y)};var fe6=D(()=>{yA1()});var UN0=D(()=>{fe6()});function fX1(){let X={Organizations:[],Connections:[],"Virtual MCPs":[],Threads:[],Monitoring:[],Users:[],"API Keys":[],"Event Bus":[],Tags:[],"AI Providers":[],Automations:[],"Object Storage":[],Registry:[],GitHub:[],VM:[]};for(let Y of BN0)X[Y.category]?.push(Y);return X}var BN0;var NN0=D(()=>{BN0=[{name:"ORGANIZATION_CREATE",description:"Create a new organization",category:"Organizations"},{name:"ORGANIZATION_LIST",description:"List organizations",category:"Organizations"},{name:"ORGANIZATION_GET",description:"View organization details",category:"Organizations"},{name:"ORGANIZATION_UPDATE",description:"Update organization",category:"Organizations"},{name:"ORGANIZATION_DELETE",description:"Delete organization",category:"Organizations",dangerous:!0},{name:"ORGANIZATION_SETTINGS_GET",description:"View organization settings",category:"Organizations"},{name:"ORGANIZATION_SETTINGS_UPDATE",description:"Update organization settings",category:"Organizations"},{name:"BRAND_CONTEXT_LIST",description:"List brand contexts",category:"Organizations"},{name:"BRAND_CONTEXT_GET",description:"View brand context",category:"Organizations"},{name:"BRAND_CONTEXT_CREATE",description:"Create brand context",category:"Organizations"},{name:"BRAND_CONTEXT_UPDATE",description:"Update brand context",category:"Organizations"},{name:"BRAND_CONTEXT_DELETE",description:"Delete brand context",category:"Organizations",dangerous:!0},{name:"BRAND_CONTEXT_EXTRACT",description:"Extract brand context from website",category:"Organizations"},{name:"BRAND_GET",description:"Get brand (binding)",category:"Organizations"},{name:"BRAND_LIST",description:"List brands (binding)",category:"Organizations"},{name:"ORGANIZATION_DOMAIN_GET",description:"Get organization domain claim",category:"Organizations"},{name:"ORGANIZATION_DOMAIN_SET",description:"Set organization domain claim",category:"Organizations"},{name:"ORGANIZATION_DOMAIN_UPDATE",description:"Update organization domain settings",category:"Organizations"},{name:"ORGANIZATION_DOMAIN_CLEAR",description:"Clear organization domain claim",category:"Organizations"},{name:"ORGANIZATION_MEMBER_ADD",description:"Add members",category:"Organizations"},{name:"ORGANIZATION_MEMBER_REMOVE",description:"Remove members",category:"Organizations",dangerous:!0},{name:"ORGANIZATION_MEMBER_LIST",description:"List members",category:"Organizations"},{name:"ORGANIZATION_MEMBER_UPDATE_ROLE",description:"Update member roles",category:"Organizations"},{name:"COLLECTION_CONNECTIONS_CREATE",description:"Create connections",category:"Connections"},{name:"COLLECTION_CONNECTIONS_LIST",description:"List connections",category:"Connections"},{name:"COLLECTION_CONNECTIONS_GET",description:"View connection details",category:"Connections"},{name:"COLLECTION_CONNECTIONS_UPDATE",description:"Update connections",category:"Connections"},{name:"COLLECTION_CONNECTIONS_DELETE",description:"Delete connections",category:"Connections",dangerous:!0},{name:"CONNECTION_TEST",description:"Test connections",category:"Connections"},{name:"DATABASES_RUN_SQL",description:"Run SQL queries",category:"Connections",dangerous:!0},{name:"COLLECTION_VIRTUAL_MCP_CREATE",description:"Create virtual MCPs",category:"Virtual MCPs"},{name:"COLLECTION_VIRTUAL_MCP_LIST",description:"List virtual MCPs",category:"Virtual MCPs"},{name:"COLLECTION_VIRTUAL_MCP_GET",description:"View virtual MCP details",category:"Virtual MCPs"},{name:"COLLECTION_VIRTUAL_MCP_UPDATE",description:"Update virtual MCPs",category:"Virtual MCPs"},{name:"COLLECTION_VIRTUAL_MCP_DELETE",description:"Delete virtual MCPs",category:"Virtual MCPs",dangerous:!0},{name:"MONITORING_LOG_GET",description:"View monitoring log details",category:"Monitoring"},{name:"MONITORING_LOGS_LIST",description:"List monitoring logs",category:"Monitoring"},{name:"MONITORING_STATS",description:"View monitoring statistics",category:"Monitoring"},{name:"API_KEY_CREATE",description:"Create API key",category:"API Keys"},{name:"API_KEY_LIST",description:"List API keys",category:"API Keys"},{name:"API_KEY_UPDATE",description:"Update API key",category:"API Keys"},{name:"API_KEY_DELETE",description:"Delete API key",category:"API Keys",dangerous:!0},{name:"EVENT_PUBLISH",description:"Publish events",category:"Event Bus"},{name:"EVENT_SUBSCRIBE",description:"Subscribe to events",category:"Event Bus"},{name:"EVENT_UNSUBSCRIBE",description:"Unsubscribe from events",category:"Event Bus"},{name:"EVENT_CANCEL",description:"Cancel recurring events",category:"Event Bus"},{name:"EVENT_ACK",description:"Acknowledge event delivery",category:"Event Bus"},{name:"EVENT_SUBSCRIPTION_LIST",description:"List event subscriptions",category:"Event Bus"},{name:"EVENT_SYNC_SUBSCRIPTIONS",description:"Sync subscriptions to desired state",category:"Event Bus"},{name:"USER_GET",description:"Get a user by id",category:"Users"},{name:"COLLECTION_THREADS_CREATE",description:"Create threads",category:"Threads"},{name:"COLLECTION_THREADS_LIST",description:"List threads",category:"Threads"},{name:"COLLECTION_THREADS_GET",description:"View thread details",category:"Threads"},{name:"COLLECTION_THREADS_UPDATE",description:"Update threads",category:"Threads"},{name:"COLLECTION_THREADS_DELETE",description:"Delete threads",category:"Threads",dangerous:!0},{name:"COLLECTION_THREAD_MESSAGES_LIST",description:"List thread messages",category:"Threads"},{name:"TAGS_LIST",description:"List organization tags",category:"Tags"},{name:"TAGS_CREATE",description:"Create organization tag",category:"Tags"},{name:"TAGS_DELETE",description:"Delete organization tag",category:"Tags",dangerous:!0},{name:"MEMBER_TAGS_GET",description:"Get member tags",category:"Tags"},{name:"MEMBER_TAGS_SET",description:"Set member tags",category:"Tags"},{name:"AUTOMATION_CREATE",description:"Create automation",category:"Automations"},{name:"AUTOMATION_GET",description:"View automation details",category:"Automations"},{name:"AUTOMATION_LIST",description:"List automations",category:"Automations"},{name:"AUTOMATION_UPDATE",description:"Update automation",category:"Automations"},{name:"AUTOMATION_DELETE",description:"Delete automation",category:"Automations",dangerous:!0},{name:"AUTOMATION_TRIGGER_ADD",description:"Add trigger to automation",category:"Automations"},{name:"AUTOMATION_TRIGGER_REMOVE",description:"Remove trigger from automation",category:"Automations"},{name:"AUTOMATION_RUN",description:"Manually trigger an automation run",category:"Automations"},{name:"VIRTUAL_MCP_PLUGIN_CONFIG_GET",description:"View virtual MCP plugin configuration",category:"Virtual MCPs"},{name:"VIRTUAL_MCP_PLUGIN_CONFIG_UPDATE",description:"Update virtual MCP plugin configuration",category:"Virtual MCPs"},{name:"VIRTUAL_MCP_PINNED_VIEWS_UPDATE",description:"Update virtual MCP pinned sidebar views",category:"Virtual MCPs"},{name:"AI_PROVIDERS_LIST",description:"List available AI providers",category:"AI Providers"},{name:"AI_PROVIDERS_LIST_MODELS",description:"List AI provider models",category:"AI Providers"},{name:"AI_PROVIDERS_ACTIVE",description:"List active AI providers",category:"AI Providers"},{name:"AI_PROVIDER_KEY_CREATE",description:"Store AI provider API key",category:"AI Providers"},{name:"AI_PROVIDER_KEY_LIST",description:"List AI provider API keys",category:"AI Providers"},{name:"AI_PROVIDER_KEY_DELETE",description:"Delete AI provider API key",category:"AI Providers",dangerous:!0},{name:"AI_PROVIDER_OAUTH_URL",description:"Get OAuth URL for provider",category:"AI Providers"},{name:"AI_PROVIDER_OAUTH_EXCHANGE",description:"Exchange OAuth code for API key",category:"AI Providers"},{name:"AI_PROVIDER_PROVISION_KEY",description:"Auto-provision API key for a provider",category:"AI Providers"},{name:"AI_PROVIDER_TOPUP_URL",description:"Get checkout URL to top up provider credits",category:"AI Providers"},{name:"AI_PROVIDER_CREDITS",description:"Get current credit balance for a provider",category:"AI Providers"},{name:"AI_PROVIDER_CLI_ACTIVATE",description:"Activate Claude Code via local CLI",category:"AI Providers"},{name:"LIST_OBJECTS",description:"List objects in storage",category:"Object Storage"},{name:"GET_OBJECT_METADATA",description:"Get object metadata",category:"Object Storage"},{name:"GET_PRESIGNED_URL",description:"Generate download URL",category:"Object Storage"},{name:"PUT_PRESIGNED_URL",description:"Generate upload URL",category:"Object Storage"},{name:"DELETE_OBJECT",description:"Delete object",category:"Object Storage",dangerous:!0},{name:"DELETE_OBJECTS",description:"Delete multiple objects",category:"Object Storage",dangerous:!0},{name:"COLLECTION_REGISTRY_APP_LIST",description:"List registry apps",category:"Registry"},{name:"COLLECTION_REGISTRY_APP_GET",description:"Get registry app details",category:"Registry"},{name:"COLLECTION_REGISTRY_APP_VERSIONS",description:"List registry app versions",category:"Registry"},{name:"COLLECTION_REGISTRY_APP_FILTERS",description:"Get registry app filters",category:"Registry"},{name:"REGISTRY_ITEM_LIST",description:"List private registry items",category:"Registry"},{name:"REGISTRY_ITEM_SEARCH",description:"Search registry items",category:"Registry"},{name:"REGISTRY_ITEM_GET",description:"Get registry item details",category:"Registry"},{name:"REGISTRY_ITEM_VERSIONS",description:"List registry item versions",category:"Registry"},{name:"REGISTRY_ITEM_CREATE",description:"Create registry item",category:"Registry"},{name:"REGISTRY_ITEM_BULK_CREATE",description:"Bulk create registry items",category:"Registry"},{name:"REGISTRY_ITEM_UPDATE",description:"Update registry item",category:"Registry"},{name:"REGISTRY_ITEM_DELETE",description:"Delete registry item",category:"Registry",dangerous:!0},{name:"REGISTRY_ITEM_FILTERS",description:"Get registry item filters",category:"Registry"},{name:"REGISTRY_DISCOVER_TOOLS",description:"Discover tools from MCP server",category:"Registry"},{name:"REGISTRY_AI_GENERATE",description:"AI-generate registry content",category:"Registry"},{name:"REGISTRY_PUBLISH_REQUEST_LIST",description:"List publish requests",category:"Registry"},{name:"REGISTRY_PUBLISH_REQUEST_REVIEW",description:"Review publish request",category:"Registry"},{name:"REGISTRY_PUBLISH_REQUEST_COUNT",description:"Count pending publish requests",category:"Registry"},{name:"REGISTRY_PUBLISH_REQUEST_DELETE",description:"Delete publish request",category:"Registry",dangerous:!0},{name:"REGISTRY_PUBLISH_API_KEY_GENERATE",description:"Generate publish API key",category:"Registry"},{name:"REGISTRY_PUBLISH_API_KEY_LIST",description:"List publish API keys",category:"Registry"},{name:"REGISTRY_PUBLISH_API_KEY_REVOKE",description:"Revoke publish API key",category:"Registry",dangerous:!0},{name:"REGISTRY_MONITOR_RUN_START",description:"Start monitor run",category:"Registry"},{name:"REGISTRY_MONITOR_RUN_LIST",description:"List monitor runs",category:"Registry"},{name:"REGISTRY_MONITOR_RUN_GET",description:"Get monitor run details",category:"Registry"},{name:"REGISTRY_MONITOR_RUN_CANCEL",description:"Cancel monitor run",category:"Registry"},{name:"REGISTRY_MONITOR_RESULT_LIST",description:"List monitor results",category:"Registry"},{name:"REGISTRY_MONITOR_CONNECTION_LIST",description:"List monitor connections",category:"Registry"},{name:"REGISTRY_MONITOR_CONNECTION_SYNC",description:"Sync monitor connections",category:"Registry"},{name:"REGISTRY_MONITOR_CONNECTION_UPDATE_AUTH",description:"Update monitor connection auth",category:"Registry"},{name:"REGISTRY_MONITOR_SCHEDULE_SET",description:"Set monitor schedule",category:"Registry"},{name:"REGISTRY_MONITOR_SCHEDULE_CANCEL",description:"Cancel monitor schedule",category:"Registry"},{name:"VM_START",description:"Start a Freestyle VM with dev server preview",category:"VM"},{name:"VM_DELETE",description:"Stop and delete a Freestyle VM",category:"VM"},{name:"GITHUB_LIST_USER_ORGS",description:"List GitHub user's personal account and organizations",category:"GitHub"}]});var be6=D(()=>{Gp();ez1()});function ye6(){return dp5.parse(process.env)}var zN0=(X)=>F.enum(["true","false","1","0"]).optional().transform((Y)=>Y===void 0?X:Y==="true"||Y==="1"),mp5=(X)=>F.string().optional().transform((Y)=>Y?Y.split(",").map((G)=>G.trim()):X),dp5;var xe6=D(()=>{H0();dp5=F.object({AUTH_EMAIL_PASSWORD_ENABLED:zN0(!0),AUTH_GOOGLE_CLIENT_ID:F.string().optional(),AUTH_GOOGLE_CLIENT_SECRET:F.string().optional(),AUTH_GITHUB_CLIENT_ID:F.string().optional(),AUTH_GITHUB_CLIENT_SECRET:F.string().optional(),AUTH_RESEND_API_KEY:F.string().optional(),AUTH_RESEND_FROM_EMAIL:F.string().optional(),AUTH_SENDGRID_API_KEY:F.string().optional(),AUTH_SENDGRID_FROM_EMAIL:F.string().optional(),AUTH_INVITE_EMAIL_PROVIDER:F.enum(["resend","sendgrid"]).optional(),AUTH_RESET_PASSWORD_EMAIL_PROVIDER:F.enum(["resend","sendgrid"]).optional(),AUTH_MAGIC_LINK_ENABLED:zN0(!1),AUTH_MAGIC_LINK_EMAIL_PROVIDER:F.enum(["resend","sendgrid"]).optional(),AUTH_EMAIL_OTP_ENABLED:zN0(!1),AUTH_EMAIL_OTP_EMAIL_PROVIDER:F.enum(["resend","sendgrid"]).optional(),AUTH_EMAIL_OTP_LENGTH:F.coerce.number().optional(),AUTH_EMAIL_OTP_EXPIRES_IN:F.coerce.number().optional(),AUTH_SSO_DOMAIN:F.string().optional(),AUTH_SSO_MS_TENANT_ID:F.string().optional(),AUTH_SSO_MS_CLIENT_ID:F.string().optional(),AUTH_SSO_MS_CLIENT_SECRET:F.string().optional(),AUTH_SSO_SCOPES:mp5(["openid","email","profile"])}).transform((X)=>{let Y={};if(X.AUTH_GOOGLE_CLIENT_ID)Y.google={clientId:X.AUTH_GOOGLE_CLIENT_ID,clientSecret:X.AUTH_GOOGLE_CLIENT_SECRET??""};if(X.AUTH_GITHUB_CLIENT_ID)Y.github={clientId:X.AUTH_GITHUB_CLIENT_ID,clientSecret:X.AUTH_GITHUB_CLIENT_SECRET??""};let G=[];if(X.AUTH_RESEND_API_KEY)G.push({id:"resend",provider:"resend",config:{apiKey:X.AUTH_RESEND_API_KEY,fromEmail:X.AUTH_RESEND_FROM_EMAIL??"noreply@example.com"}});if(X.AUTH_SENDGRID_API_KEY)G.push({id:"sendgrid",provider:"sendgrid",config:{apiKey:X.AUTH_SENDGRID_API_KEY,fromEmail:X.AUTH_SENDGRID_FROM_EMAIL??"noreply@example.com"}});let Q=G[0]?.id,J;if(X.AUTH_SSO_MS_CLIENT_ID&&X.AUTH_SSO_DOMAIN)J={providerId:"microsoft",domain:X.AUTH_SSO_DOMAIN,MS_TENANT_ID:X.AUTH_SSO_MS_TENANT_ID??"",MS_CLIENT_ID:X.AUTH_SSO_MS_CLIENT_ID,MS_CLIENT_SECRET:X.AUTH_SSO_MS_CLIENT_SECRET??"",scopes:X.AUTH_SSO_SCOPES};let W;if(X.AUTH_MAGIC_LINK_ENABLED)W={enabled:!0,emailProviderId:X.AUTH_MAGIC_LINK_EMAIL_PROVIDER??Q??""};let Z;if(X.AUTH_EMAIL_OTP_ENABLED)Z={enabled:!0,emailProviderId:X.AUTH_EMAIL_OTP_EMAIL_PROVIDER??Q??"",...X.AUTH_EMAIL_OTP_LENGTH!==void 0&&{otpLength:X.AUTH_EMAIL_OTP_LENGTH},...X.AUTH_EMAIL_OTP_EXPIRES_IN!==void 0&&{expiresIn:X.AUTH_EMAIL_OTP_EXPIRES_IN}};return{emailAndPassword:{enabled:X.AUTH_EMAIL_PASSWORD_ENABLED},socialProviders:Object.keys(Y).length>0?Y:void 0,emailProviders:G.length>0?G:void 0,inviteEmailProviderId:X.AUTH_INVITE_EMAIL_PROVIDER,resetPasswordEmailProviderId:X.AUTH_RESET_PASSWORD_EMAIL_PROVIDER,ssoConfig:J,magicLinkConfig:W,emailOtpConfig:Z}})});var cA1;var he6=D(()=>{cA1={enabled:!0,batchSize:250,flushIntervalMs:300,maxQueueSize:1e4,redactor:"regex"}});import{existsSync as cp5,readFileSync as ip5}from"fs";function pp5(){let X=ye6(),Y=v6().configPath;if(!cp5(Y))return{auth:X,monitoring:cA1};try{let G=JSON.parse(ip5(Y,"utf-8"));if(G.auth)console.warn("[config] DEPRECATION: 'auth' key found in config.json. Auth is now configured via AUTH_* environment variables. The 'auth' key will be ignored.");return{auth:X,monitoring:G.monitoring??cA1,theme:G.theme,logo:G.logo,autoCreateOrganizationOnSignup:G.autoCreateOrganizationOnSignup}}catch{return{auth:X,monitoring:cA1}}}function Sj(){if(!ON0)ON0=pp5();return ON0}function ge6(){return Sj().theme}var ON0=null;var DN0=D(()=>{xe6();he6();m9()});import{dirname as np5,posix as ap5,sep as tp5}from"path";function le6(){let X=rp5();return async(Y)=>{for(let G of Y)G.module=X(G.filename);return Y}}function rp5(X=process.argv[1]?np5(process.argv[1]):process.cwd(),Y=tp5==="\\"){let G=Y?ue6(X):X;return(Q)=>{if(!Q)return;let J=Y?ue6(Q):Q,{dir:W,base:Z,ext:$}=ap5.parse(J);if($===".js"||$===".mjs"||$===".cjs")Z=Z.slice(0,-1*$.length);let K=decodeURIComponent(Z);if(!W)W=".";let H=W.lastIndexOf("/node_modules");if(H>-1)return`${W.slice(H+14).replace(/\//g,".")}:${K}`;if(W.startsWith(G)){let U=W.slice(G.length+1).replace(/\//g,".");return U?`${U}:${K}`:K}return K}}function ue6(X){return X.replace(/^[A-Z]:/,"").replace(/\\/g,"/")}var me6=()=>{};function op5(X,Y,G){return{key:X,enabled:typeof Y=="string"?!0:Y,variant:typeof Y=="string"?Y:void 0,reason:void 0,metadata:{id:void 0,version:void 0,payload:G?JSON.stringify(G):void 0,description:void 0}}}var wN0=(X)=>{if("flags"in X){let Y=de6(X.flags),G=ce6(X.flags);return{...X,featureFlags:Y,featureFlagPayloads:G}}{let Y=X.featureFlags??{},G=Object.fromEntries(Object.entries(X.featureFlagPayloads||{}).map(([J,W])=>[J,LN0(W)])),Q=Object.fromEntries(Object.entries(Y).map(([J,W])=>[J,op5(J,W,G[J])]));return{...X,featureFlags:Y,featureFlagPayloads:G,flags:Q}}},de6=(X)=>Object.fromEntries(Object.entries(X??{}).map(([Y,G])=>[Y,bX1(G)]).filter(([,Y])=>Y!==void 0)),ce6=(X)=>{let Y=X??{};return Object.fromEntries(Object.keys(Y).filter((G)=>{let Q=Y[G];return Q.enabled&&Q.metadata&&Q.metadata.payload!==void 0}).map((G)=>{let Q=Y[G].metadata?.payload;return[G,Q?LN0(Q):void 0]}))},bX1=(X)=>X===void 0?void 0:X.variant??X.enabled,LN0=(X)=>{if(typeof X!="string")return X;try{return JSON.parse(X)}catch{return X}};var iA1=()=>{};function ie6(){return"CompressionStream"in globalThis&&"TextEncoder"in globalThis&&"Response"in globalThis&&typeof Response.prototype.blob=="function"}async function pA1(X,Y=!0,G){try{let Q=new CompressionStream("gzip"),J=Q.writable.getWriter(),W=J.write(new TextEncoder().encode(X)).then(()=>J.close()).catch(async(K)=>{try{await J.abort(K)}catch{}throw K}),Z=new Response(Q.readable).blob(),[$]=await Promise.all([Z,W]);return $}catch(Q){if(G?.rethrow)throw Q;if(Y)console.error("Failed to gzip compress data",Q);return null}}var EN0=()=>{};var sp5,pe6=function(X,Y=[]){if(!X)return!1;let G=X.toLowerCase();return sp5.concat(Y).some((Q)=>{let J=Q.toLowerCase();return G.indexOf(J)!==-1})};var ne6=D(()=>{sp5=["amazonbot","amazonproductbot","app.hypefactors.com","applebot","archive.org_bot","awariobot","backlinksextendedbot","baiduspider","bingbot","bingpreview","chrome-lighthouse","dataforseobot","deepscan","duckduckbot","facebookexternal","facebookcatalog","http://yandex.com/bots","hubspot","ia_archiver","leikibot","linkedinbot","meta-externalagent","mj12bot","msnbot","nessus","petalbot","pinterest","prerender","rogerbot","screaming frog","sebot-wa","sitebulb","slackbot","slurp","trendictionbot","turnitin","twitterbot","vercel-screenshot","vercelbot","yahoo! slurp","yandexbot","zoombot","bot.htm","bot.php","(bot;","bot/","crawler","ahrefsbot","ahrefssiteaudit","semrushbot","siteauditbot","splitsignalbot","gptbot","oai-searchbot","chatgpt-user","perplexitybot","better uptime bot","sentryuptimebot","uptimerobot","headlesschrome","cypress","google-hoteladsverifier","adsbot-google","apis-google","duplexweb-google","feedfetcher-google","google favicon","google web preview","google-read-aloud","googlebot","googleother","google-cloudvertexbot","googleweblight","mediapartners-google","storebot-google","google-inspectiontool","bytespider"]});var aJ;var Cj=D(()=>{aJ=function(X){return X.AnonymousId="anonymous_id",X.DistinctId="distinct_id",X.Props="props",X.EnablePersonProcessing="enable_person_processing",X.PersonMode="person_mode",X.FeatureFlagDetails="feature_flag_details",X.FeatureFlags="feature_flags",X.FeatureFlagPayloads="feature_flag_payloads",X.BootstrapFeatureFlagDetails="bootstrap_feature_flag_details",X.BootstrapFeatureFlags="bootstrap_feature_flags",X.BootstrapFeatureFlagPayloads="bootstrap_feature_flag_payloads",X.OverrideFeatureFlags="override_feature_flags",X.Queue="queue",X.LogsQueue="logs_queue",X.OptedOut="opted_out",X.SessionId="session_id",X.SessionStartTimestamp="session_start_timestamp",X.SessionLastTimestamp="session_timestamp",X.PersonProperties="person_properties",X.GroupProperties="group_properties",X.InstalledAppBuild="installed_app_build",X.InstalledAppVersion="installed_app_version",X.SessionReplay="session_replay",X.SurveyLastSeenDate="survey_last_seen_date",X.SurveysSeen="surveys_seen",X.Surveys="surveys",X.RemoteConfig="remote_config",X.FlagsEndpointWasHit="flags_endpoint_was_hit",X.DeviceId="device_id",X}({})});var nA1=()=>{};function tA1(X){return X===null||typeof X!="object"}function kj(X,Y){return Object.prototype.toString.call(X)===`[object ${Y}]`}function re6(X){return kj(X,"ErrorEvent")}function ea(X){return typeof Event<"u"&&Yn5(X,Event)}function oe6(X){return kj(X,"Object")}function Yn5(X,Y){try{return X instanceof Y}catch{return!1}}var Xn5,ae6,TmX,PN0,aA1,yX1=(X)=>X===Object(X)&&!aA1(X),sa=(X)=>X===void 0,Tq=(X)=>PN0.call(X)=="[object String]",te6=(X)=>Tq(X)&&X.trim().length===0,xX1=(X)=>PN0.call(X)=="[object Number]"&&X===X,qN0=(X)=>X instanceof Error;var hX1=D(()=>{Cj();nA1();Xn5=Array.isArray,ae6=Object.prototype,TmX=ae6.hasOwnProperty,PN0=ae6.toString,aA1=Xn5||function(X){return PN0.call(X)==="[object Array]"}});function gX1(X,Y,G,Q,J){if(Y>G)Q.warn("min cannot be greater than max."),Y=G;if(xX1(X))if(X>G)return Q.warn(" cannot be greater than max: "+G+". Using max value instead."),G;else{if(!(X<Y))return X;return Q.warn(" cannot be less than min: "+Y+". Using min value instead."),Y}return Q.warn(" must be a number. using max or fallback. max: "+G+", fallback: "+J),gX1(J||G,Y,G,Q)}var AN0=D(()=>{hX1()});class TN0{constructor(X){this._buckets={},this._onBucketRateLimited=X._onBucketRateLimited,this._bucketSize=gX1(X.bucketSize,0,100,X._logger),this._refillRate=gX1(X.refillRate,0,this._bucketSize,X._logger),this._refillInterval=gX1(X.refillInterval,0,Gn5,X._logger)}_applyRefill(X,Y){let G=Y-X.lastAccess,Q=Math.floor(G/this._refillInterval);if(Q>0){let J=Q*this._refillRate;X.tokens=Math.min(X.tokens+J,this._bucketSize),X.lastAccess=X.lastAccess+Q*this._refillInterval}}consumeRateLimit(X){let Y=Date.now(),G=String(X),Q=this._buckets[G];if(Q)this._applyRefill(Q,Y);else Q={tokens:this._bucketSize,lastAccess:Y},this._buckets[G]=Q;if(Q.tokens===0)return!0;if(Q.tokens--,Q.tokens===0)this._onBucketRateLimited?.(X);return Q.tokens===0}stop(){this._buckets={}}}var Gn5=86400000;var se6=D(()=>{AN0()});class vj{constructor(X){this.bytes=X}static ofInner(X){if(X.length===16)return new vj(X);throw TypeError("not 128-bit length")}static fromFieldsV7(X,Y,G,Q){if(!Number.isInteger(X)||!Number.isInteger(Y)||!Number.isInteger(G)||!Number.isInteger(Q)||X<0||Y<0||G<0||Q<0||X>281474976710655||Y>4095||G>1073741823||Q>4294967295)throw RangeError("invalid field value");let J=new Uint8Array(16);return J[0]=X/1099511627776,J[1]=X/4294967296,J[2]=X/16777216,J[3]=X/65536,J[4]=X/256,J[5]=X,J[6]=112|Y>>>8,J[7]=Y,J[8]=128|G>>>24,J[9]=G>>>16,J[10]=G>>>8,J[11]=G,J[12]=Q>>>24,J[13]=Q>>>16,J[14]=Q>>>8,J[15]=Q,new vj(J)}static parse(X){let Y;switch(X.length){case 32:Y=/^[0-9a-f]{32}$/i.exec(X)?.[0];break;case 36:Y=/^([0-9a-f]{8})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{12})$/i.exec(X)?.slice(1,6).join("");break;case 38:Y=/^\{([0-9a-f]{8})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{12})\}$/i.exec(X)?.slice(1,6).join("");break;case 45:Y=/^urn:uuid:([0-9a-f]{8})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{12})$/i.exec(X)?.slice(1,6).join("");break;default:break}if(Y){let G=new Uint8Array(16);for(let Q=0;Q<16;Q+=4){let J=parseInt(Y.substring(2*Q,2*Q+8),16);G[Q+0]=J>>>24,G[Q+1]=J>>>16,G[Q+2]=J>>>8,G[Q+3]=J}return new vj(G)}throw SyntaxError("could not parse UUID string")}toString(){let X="";for(let Y=0;Y<this.bytes.length;Y++)if(X+="0123456789abcdef".charAt(this.bytes[Y]>>>4),X+="0123456789abcdef".charAt(15&this.bytes[Y]),Y===3||Y===5||Y===7||Y===9)X+="-";return X}toHex(){let X="";for(let Y=0;Y<this.bytes.length;Y++)X+="0123456789abcdef".charAt(this.bytes[Y]>>>4),X+="0123456789abcdef".charAt(15&this.bytes[Y]);return X}toJSON(){return this.toString()}getVariant(){let X=this.bytes[8]>>>4;if(X<0)throw Error("unreachable");if(X<=7)return this.bytes.every((Y)=>Y===0)?"NIL":"VAR_0";if(X<=11)return"VAR_10";if(X<=13)return"VAR_110";if(X<=15)return this.bytes.every((Y)=>Y===255)?"MAX":"VAR_RESERVED";else throw Error("unreachable")}getVersion(){return this.getVariant()==="VAR_10"?this.bytes[6]>>>4:void 0}clone(){return new vj(this.bytes.slice(0))}equals(X){return this.compareTo(X)===0}compareTo(X){for(let Y=0;Y<16;Y++){let G=this.bytes[Y]-X.bytes[Y];if(G!==0)return Math.sign(G)}return 0}}class X14{constructor(X){this.timestamp=0,this.counter=0,this.random=X??Qn5()}generate(){return this.generateOrResetCore(Date.now(),1e4)}generateOrAbort(){return this.generateOrAbortCore(Date.now(),1e4)}generateOrResetCore(X,Y){let G=this.generateOrAbortCore(X,Y);if(G===void 0)this.timestamp=0,G=this.generateOrAbortCore(X,Y);return G}generateOrAbortCore(X,Y){if(!Number.isInteger(X)||X<1||X>281474976710655)throw RangeError("`unixTsMs` must be a 48-bit positive integer");if(Y<0||Y>281474976710655)throw RangeError("`rollbackAllowance` out of reasonable range");if(X>this.timestamp)this.timestamp=X,this.resetCounter();else{if(!(X+Y>=this.timestamp))return;if(this.counter++,this.counter>4398046511103)this.timestamp++,this.resetCounter()}return vj.fromFieldsV7(this.timestamp,Math.trunc(this.counter/1073741824),this.counter&1073741823,this.random.nextUint32())}resetCounter(){this.counter=1024*this.random.nextUint32()+(1023&this.random.nextUint32())}generateV4(){let X=new Uint8Array(Uint32Array.of(this.random.nextUint32(),this.random.nextUint32(),this.random.nextUint32(),this.random.nextUint32()).buffer);return X[6]=64|X[6]>>>4,X[8]=128|X[8]>>>2,vj.ofInner(X)}}var Qn5=()=>({nextUint32:()=>65536*Math.trunc(65536*Math.random())+Math.trunc(65536*Math.random())}),ee6,Iq=()=>Jn5().toString(),Jn5=()=>(ee6||(ee6=new X14)).generate();var uX1=D(()=>{/*! For license information please see uuidv7.mjs.LICENSE.txt */});class IN0{add(X){let Y=Iq();return this.promiseByIds[Y]=X,X.catch(()=>{}).finally(()=>{delete this.promiseByIds[Y]}),X}async join(){let X=Object.values(this.promiseByIds),Y=X.length;while(Y>0)await Promise.all(X),X=Object.values(this.promiseByIds),Y=X.length}get length(){return Object.keys(this.promiseByIds).length}constructor(){this.promiseByIds={}}}var Y14=D(()=>{uX1()});function Zn5(X=console){return{log:X.log.bind(X),warn:X.warn.bind(X),error:X.error.bind(X),debug:X.debug.bind(X)}}function Q14(X,Y=Wn5){return G14(X,Y,Zn5())}var G14=(X,Y,G)=>{function Q(W,...Z){Y(()=>{let $=G[W];$(X,...Z)})}return{info:(...W)=>{Q("log",...W)},warn:(...W)=>{Q("warn",...W)},error:(...W)=>{Q("error",...W)},critical:(...W)=>{G.error(X,...W)},createLogger:(W)=>G14(`${X} ${W}`,Y,G)}},Wn5=(X)=>X();var J14=()=>{};var Yt="Mobile",oA1="iOS",Xt="Android",Z14="Tablet",bmX,Kn5="Apple",ymX,W14="Safari",sA1="BlackBerry",$14="Samsung",Hn5,Fn5,eA1="Chrome",Un5,Bn5,K14="Internet Explorer",Nn5,jN0="Opera",xmX,H14="Edge",zn5,MN0="Firefox",On5,RN0="Nintendo",SN0="PlayStation",rA1="Xbox",Dn5,wn5,lX1="Windows",Ln5,F14="Generic",hmX,gmX,En5="Konqueror",F3="(\\d+(\\.\\d+)?)",VN0,umX,lmX,mmX,Pn5,qn5,dmX,cmX;var U14=D(()=>{nA1();hX1();bmX=Xt+" "+Z14,ymX=Kn5+" Watch",Hn5=$14+"Browser",Fn5=$14+" Internet",Un5=eA1+" OS",Bn5=eA1+" "+oA1,Nn5=K14+" "+Yt,xmX=jN0+" Mini",zn5="Microsoft "+H14,On5=MN0+" "+oA1,Dn5=Xt+" "+Yt,wn5=Yt+" "+W14,Ln5=lX1+" Phone",hmX=F14+" "+Yt.toLowerCase(),gmX=F14+" "+Z14.toLowerCase(),VN0=new RegExp("Version/"+F3),umX=new RegExp(rA1,"i"),lmX=new RegExp(SN0+" \\w+","i"),mmX=new RegExp(RN0+" \\w+","i"),Pn5=new RegExp(sA1+"|PlayBook|BB10","i"),qn5={"NT3.51":"NT 3.11","NT4.0":"NT 4.0","5.0":"2000","5.1":"XP","5.2":"XP","6.0":"Vista","6.1":"7","6.2":"8","6.3":"8.1","6.4":"10","10.0":"10"},dmX={[Nn5]:[new RegExp("rv:"+F3)],[zn5]:[new RegExp(H14+"?\\/"+F3)],[eA1]:[new RegExp("("+eA1+"|CrMo)\\/"+F3)],[Bn5]:[new RegExp("CriOS\\/"+F3)],"UC Browser":[new RegExp("(UCBrowser|UCWEB)\\/"+F3)],[W14]:[VN0],[wn5]:[VN0],[jN0]:[new RegExp("("+jN0+"|OPR)\\/"+F3)],[MN0]:[new RegExp(MN0+"\\/"+F3)],[On5]:[new RegExp("FxiOS\\/"+F3)],[En5]:[new RegExp("Konqueror[:/]?"+F3,"i")],[sA1]:[new RegExp(sA1+" "+F3),VN0],[Dn5]:[new RegExp("android\\s"+F3,"i")],[Fn5]:[new RegExp(Hn5+"\\/"+F3)],[K14]:[new RegExp("(rv:|MSIE )"+F3)],Mozilla:[new RegExp("rv:"+F3)]},cmX=[[new RegExp(rA1+"; "+rA1+" (.*?)[);]","i"),(X)=>[rA1,X&&X[1]||""]],[new RegExp(RN0,"i"),[RN0,""]],[new RegExp(SN0,"i"),[SN0,""]],[Pn5,[sA1,""]],[new RegExp(lX1,"i"),(X,Y)=>{if(/Phone/.test(Y)||/WPDesktop/.test(Y))return[Ln5,""];if(new RegExp(Yt).test(Y)&&!/IEMobile\b/.test(Y))return[lX1+" "+Yt,""];let G=/Windows NT ([0-9.]+)/i.exec(Y);if(G&&G[1]){let Q=G[1],J=qn5[Q]||"";if(/arm/i.test(Y))J="RT";return[lX1,J]}return[lX1,""]}],[/((iPhone|iPad|iPod).*?OS (\d+)_(\d+)_?(\d+)?|iPhone)/,(X)=>{if(X&&X[3]){let Y=[X[3],X[4],X[5]||"0"];return[oA1,Y.join(".")]}return[oA1,""]}],[/(watch.*\/(\d+\.\d+\.\d+)|watch os,(\d+\.\d+),)/i,(X)=>{let Y="";if(X&&X.length>=3)Y=sa(X[2])?X[3]:X[2];return["watchOS",Y]}],[new RegExp("("+Xt+" (\\d+)\\.(\\d+)\\.?(\\d+)?|"+Xt+")","i"),(X)=>{if(X&&X[2]){let Y=[X[2],X[3],X[4]||"0"];return[Xt,Y.join(".")]}return[Xt,""]}],[/Mac OS X (\d+)[_.](\d+)[_.]?(\d+)?/i,(X)=>{let Y=["Mac OS X",""];if(X&&X[1]){let G=[X[1],X[2],X[3]||"0"];Y[1]=G.join(".")}return Y}],[/Mac/i,["Mac OS X",""]],[/CrOS/,[Un5,""]],[/Linux|debian/i,["Linux",""]]]});function N14(X){return X?.replace(/\/+$/,"")}async function z14(X,Y){let G=null;for(let Q=0;Q<Y.retryCount+1;Q++){if(Q>0)await new Promise((J)=>setTimeout(J,Y.retryDelay));try{return await X()}catch(J){if(G=J,!Y.retryCheck(J))throw J}}throw G}function XT1(){return new Date().toISOString()}function Fw(X,Y){let G=setTimeout(X,Y);return G?.unref&&G?.unref(),G}function CN0(X){return Promise.all(X.map((Y)=>(Y??Promise.resolve()).then((G)=>({status:"fulfilled",value:G}),(G)=>({status:"rejected",reason:G}))))}var B14="utf8",O14=(X)=>X instanceof Error;var U3=D(()=>{ne6();se6();AN0();nA1();hX1();Y14();J14();U14()});var An5,JdX;var kN0=D(()=>{U3();An5={trace:{text:"TRACE",number:1},debug:{text:"DEBUG",number:5},info:{text:"INFO",number:9},warn:{text:"WARN",number:13},error:{text:"ERROR",number:17},fatal:{text:"FATAL",number:21}},JdX=An5.info});var D14=D(()=>{kN0();Cj()});var w14=D(()=>{Cj()});class vN0{constructor(){this.events={},this.events={}}on(X,Y){if(!this.events[X])this.events[X]=[];return this.events[X].push(Y),()=>{this.events[X]=this.events[X].filter((G)=>G!==Y)}}emit(X,Y){for(let G of this.events[X]||[])G(Y);for(let G of this.events["*"]||[])G(X,Y)}}var L14=()=>{};async function E14(X){if(X instanceof Gt){let Y="";try{Y=await X.text}catch{}console.error(`Error while flushing PostHog: message=${X.message}, response body=${Y}`,X)}else console.error("Error while flushing PostHog",X);return Promise.resolve()}function _N0(X){return typeof X=="object"&&(X instanceof Gt||X instanceof mX1)}function P14(X){return typeof X=="object"&&X instanceof Gt&&X.status===413}class YT1{constructor(X,Y={}){this.flushPromise=null,this.shutdownPromise=null,this.promiseQueue=new IN0,this._events=new vN0,this._isInitialized=!1;let G=typeof X=="string"?X.trim():"",Q=typeof Y.host=="string"?Y.host.trim():"",J=!G;if(this._logger=Q14("[PostHog]",this.logMsgIfDebug.bind(this)),J)this._logger.error("You must pass your PostHog project's api key. The client will be disabled.");if(this.apiKey=G,this.host=N14(Q||"https://us.i.posthog.com"),this.flushAt=Y.flushAt?Math.max(Y.flushAt,1):20,this.maxBatchSize=Math.max(this.flushAt,Y.maxBatchSize??100),this.maxQueueSize=Math.max(this.flushAt,Y.maxQueueSize??1000),this.flushInterval=Y.flushInterval??1e4,this.preloadFeatureFlags=Y.preloadFeatureFlags??!0,this.defaultOptIn=Y.defaultOptIn??!0,this.disableSurveys=Y.disableSurveys??!1,this._retryOptions={retryCount:Y.fetchRetryCount??3,retryDelay:Y.fetchRetryDelay??3000,retryCheck:_N0},this.requestTimeout=Y.requestTimeout??1e4,this.featureFlagsRequestTimeoutMs=Y.featureFlagsRequestTimeoutMs??3000,this.remoteConfigRequestTimeoutMs=Y.remoteConfigRequestTimeoutMs??3000,this.disableGeoip=Y.disableGeoip??!0,this.disabled=(Y.disabled??!1)||J,this.historicalMigration=Y?.historicalMigration??!1,this._initPromise=Promise.resolve(),this._isInitialized=!0,this.evaluationContexts=Y?.evaluationContexts??Y?.evaluationEnvironments,Y?.evaluationEnvironments&&!Y?.evaluationContexts)this._logger.warn("evaluationEnvironments is deprecated. Use evaluationContexts instead. This property will be removed in a future version.");this.disableCompression=!ie6()||(Y?.disableCompression??!1)}logMsgIfDebug(X){if(this.isDebug)X()}wrap(X){if(this.disabled)return void this._logger.warn("The client is disabled");if(this._isInitialized)return X();this._initPromise.then(()=>X())}getCommonEventProperties(){return{$lib:this.getLibraryId(),$lib_version:this.getLibraryVersion()}}get optedOut(){return this.getPersistedProperty(aJ.OptedOut)??!this.defaultOptIn}async optIn(){this.wrap(()=>{this.setPersistedProperty(aJ.OptedOut,!1)})}async optOut(){this.wrap(()=>{this.setPersistedProperty(aJ.OptedOut,!0)})}on(X,Y){return this._events.on(X,Y)}debug(X=!0){if(this.removeDebugCallback?.(),X){let Y=this.on("*",(G,Q)=>this._logger.info(G,Q));this.removeDebugCallback=()=>{Y(),this.removeDebugCallback=void 0}}}get isDebug(){return!!this.removeDebugCallback}get isDisabled(){return this.disabled}buildPayload(X){return{distinct_id:X.distinct_id,event:X.event,properties:{...X.properties||{},...this.getCommonEventProperties()}}}addPendingPromise(X){return this.promiseQueue.add(X)}identifyStateless(X,Y,G){this.wrap(()=>{let Q={...this.buildPayload({distinct_id:X,event:"$identify",properties:Y})};this.enqueue("identify",Q,G)})}async identifyStatelessImmediate(X,Y,G){let Q={...this.buildPayload({distinct_id:X,event:"$identify",properties:Y})};await this.sendImmediate("identify",Q,G)}captureStateless(X,Y,G,Q){this.wrap(()=>{let J=this.buildPayload({distinct_id:X,event:Y,properties:G});this.enqueue("capture",J,Q)})}async captureStatelessImmediate(X,Y,G,Q){let J=this.buildPayload({distinct_id:X,event:Y,properties:G});await this.sendImmediate("capture",J,Q)}aliasStateless(X,Y,G,Q){this.wrap(()=>{let J=this.buildPayload({event:"$create_alias",distinct_id:Y,properties:{...G||{},distinct_id:Y,alias:X}});this.enqueue("alias",J,Q)})}async aliasStatelessImmediate(X,Y,G,Q){let J=this.buildPayload({event:"$create_alias",distinct_id:Y,properties:{...G||{},distinct_id:Y,alias:X}});await this.sendImmediate("alias",J,Q)}groupIdentifyStateless(X,Y,G,Q,J,W){this.wrap(()=>{let Z=this.buildPayload({distinct_id:J||`$${X}_${Y}`,event:"$groupidentify",properties:{$group_type:X,$group_key:Y,$group_set:G||{},...W||{}}});this.enqueue("capture",Z,Q)})}async getRemoteConfig(){await this._initPromise;let X=this.host;if(X==="https://us.i.posthog.com")X="https://us-assets.i.posthog.com";else if(X==="https://eu.i.posthog.com")X="https://eu-assets.i.posthog.com";let Y=`${X}/array/${this.apiKey}/config`,G={method:"GET",headers:{...this.getCustomHeaders(),"Content-Type":"application/json"}};return this.fetchWithRetry(Y,G,{retryCount:0},this.remoteConfigRequestTimeoutMs).then((Q)=>Q.json()).catch((Q)=>{this._logger.error("Remote config could not be loaded",Q),this._events.emit("error",Q)})}async getFlags(X,Y={},G={},Q={},J={},W=!1){await this._initPromise;let Z=W?"&config=true":"",$=`${this.host}/flags/?v=2${Z}`,K={token:this.apiKey,distinct_id:X,groups:Y,person_properties:G,group_properties:Q,...J};if(G.$device_id)K.$device_id=G.$device_id;if(this.evaluationContexts&&this.evaluationContexts.length>0)K.evaluation_contexts=this.evaluationContexts;let H={method:"POST",headers:{...this.getCustomHeaders(),"Content-Type":"application/json"},body:JSON.stringify(K)};return this._logger.info("Flags URL",$),this.fetchWithRetry($,H,{retryCount:0},this.featureFlagsRequestTimeoutMs).then((U)=>U.json()).then((U)=>({success:!0,response:wN0(U)})).catch((U)=>{return this._events.emit("error",U),{success:!1,error:this.categorizeRequestError(U)}})}categorizeRequestError(X){if(X instanceof Gt)return{type:"api_error",statusCode:X.status};if(X instanceof mX1){let Y=X.error;if(Y instanceof Error&&(Y.name==="AbortError"||Y.name==="TimeoutError"))return{type:"timeout"};return{type:"connection_error"}}return{type:"unknown_error"}}async getFeatureFlagStateless(X,Y,G={},Q={},J={},W){await this._initPromise;let Z=await this.getFeatureFlagDetailStateless(X,Y,G,Q,J,W);if(Z===void 0)return{response:void 0,requestId:void 0};let $=bX1(Z.response);if($===void 0)$=!1;return{response:$,requestId:Z.requestId}}async getFeatureFlagDetailStateless(X,Y,G={},Q={},J={},W){await this._initPromise;let Z=await this.getFeatureFlagDetailsStateless(Y,G,Q,J,W,[X]);if(Z===void 0)return;return{response:Z.flags[X],requestId:Z.requestId,evaluatedAt:Z.evaluatedAt}}async getFeatureFlagPayloadStateless(X,Y,G={},Q={},J={},W){await this._initPromise;let Z=await this.getFeatureFlagPayloadsStateless(Y,G,Q,J,W,[X]);if(!Z)return;let $=Z[X];if($===void 0)return null;return $}async getFeatureFlagPayloadsStateless(X,Y={},G={},Q={},J,W){return await this._initPromise,(await this.getFeatureFlagsAndPayloadsStateless(X,Y,G,Q,J,W)).payloads}async getFeatureFlagsStateless(X,Y={},G={},Q={},J,W){return await this._initPromise,await this.getFeatureFlagsAndPayloadsStateless(X,Y,G,Q,J,W)}async getFeatureFlagsAndPayloadsStateless(X,Y={},G={},Q={},J,W){await this._initPromise;let Z=await this.getFeatureFlagDetailsStateless(X,Y,G,Q,J,W);if(!Z)return{flags:void 0,payloads:void 0,requestId:void 0};return{flags:Z.featureFlags,payloads:Z.featureFlagPayloads,requestId:Z.requestId}}async getFeatureFlagDetailsStateless(X,Y={},G={},Q={},J,W){await this._initPromise;let Z={};if(J??this.disableGeoip)Z.geoip_disable=!0;if(W)Z.flag_keys_to_evaluate=W;let $=await this.getFlags(X,Y,G,Q,Z);if(!$.success)return;let K=$.response;if(K.errorsWhileComputingFlags)console.error("[FEATURE FLAGS] Error while computing feature flags, some flags may be missing or incorrect. Learn more at https://posthog.com/docs/feature-flags/best-practices");if(K.quotaLimited?.includes("feature_flags"))return console.warn("[FEATURE FLAGS] Feature flags quota limit exceeded - feature flags unavailable. Learn more about billing limits at https://posthog.com/docs/billing/limits-alerts"),{flags:{},featureFlags:{},featureFlagPayloads:{},requestId:K?.requestId,quotaLimited:K.quotaLimited};return K}async getSurveysStateless(){if(await this._initPromise,this.disableSurveys===!0)return this._logger.info("Loading surveys is disabled."),[];let X=`${this.host}/api/surveys/?token=${this.apiKey}`,Y={method:"GET",headers:{...this.getCustomHeaders(),"Content-Type":"application/json"}},Q=(await this.fetchWithRetry(X,Y).then((J)=>{if(J.status!==200||!J.json){let W=`Surveys API could not be loaded: ${J.status}`,Z=Error(W);this._logger.error(Z),this._events.emit("error",Error(W));return}return J.json()}).catch((J)=>{this._logger.error("Surveys API could not be loaded",J),this._events.emit("error",J)}))?.surveys;if(Q)this._logger.info("Surveys fetched from API: ",JSON.stringify(Q));return Q??[]}get props(){if(!this._props)this._props=this.getPersistedProperty(aJ.Props);return this._props||{}}set props(X){this._props=X}async register(X){this.wrap(()=>{this.props={...this.props,...X},this.setPersistedProperty(aJ.Props,this.props)})}async unregister(X){this.wrap(()=>{delete this.props[X],this.setPersistedProperty(aJ.Props,this.props)})}processBeforeEnqueue(X){return X}async flushStorage(){}enqueue(X,Y,G){this.wrap(()=>{if(this.optedOut)return void this._events.emit(X,"Library is disabled. Not sending event. To re-enable, call posthog.optIn()");let Q=this.prepareMessage(X,Y,G);if(Q=this.processBeforeEnqueue(Q),Q===null)return;let J=this.getPersistedProperty(aJ.Queue)||[];if(J.length>=this.maxQueueSize)J.shift(),this._logger.info("Queue is full, the oldest event is dropped.");if(J.push({message:Q}),this.setPersistedProperty(aJ.Queue,J),this._events.emit(X,Q),J.length>=this.flushAt)this.flushBackground();if(this.flushInterval&&!this._flushTimer)this._flushTimer=Fw(()=>this.flushBackground(),this.flushInterval)})}async sendImmediate(X,Y,G){if(this.disabled)return void this._logger.warn("The client is disabled");if(!this._isInitialized)await this._initPromise;if(this.optedOut)return void this._events.emit(X,"Library is disabled. Not sending event. To re-enable, call posthog.optIn()");let Q=this.prepareMessage(X,Y,G);if(Q=this.processBeforeEnqueue(Q),Q===null)return;let J={api_key:this.apiKey,batch:[Q],sent_at:XT1()};if(this.historicalMigration)J.historical_migration=!0;let W=JSON.stringify(J),Z=`${this.host}/batch/`,$=this.disableCompression?null:await pA1(W,this.isDebug),K={method:"POST",headers:{...this.getCustomHeaders(),"Content-Type":"application/json",...$!==null&&{"Content-Encoding":"gzip"}},body:$||W};try{await this.fetchWithRetry(Z,K)}catch(H){this._events.emit("error",H)}}prepareMessage(X,Y,G){let Q={...Y,type:X,library:this.getLibraryId(),library_version:this.getLibraryVersion(),timestamp:G?.timestamp?G?.timestamp:XT1(),uuid:G?.uuid?G.uuid:Iq()};if(G?.disableGeoip??this.disableGeoip){if(!Q.properties)Q.properties={};Q.properties.$geoip_disable=!0}if(Q.distinctId)Q.distinct_id=Q.distinctId,delete Q.distinctId;return Q}clearFlushTimer(){if(this._flushTimer)clearTimeout(this._flushTimer),this._flushTimer=void 0}flushBackground(){this.flush().catch(async(X)=>{await E14(X)})}async flush(){let X=CN0([this.flushPromise]).then(()=>this._flush());return this.flushPromise=X,this.addPendingPromise(X),CN0([X]).then(()=>{if(this.flushPromise===X)this.flushPromise=null}),X}getCustomHeaders(){let X=this.getCustomUserAgent(),Y={};if(X&&X!=="")Y["User-Agent"]=X;return Y}async _flush(){this.clearFlushTimer(),await this._initPromise;let X=this.getPersistedProperty(aJ.Queue)||[];if(!X.length)return;let Y=[],G=X.length;while(X.length>0&&Y.length<G){let Q=X.slice(0,this.maxBatchSize),J=Q.map((N)=>N.message),W=async()=>{let z=(this.getPersistedProperty(aJ.Queue)||[]).slice(Q.length);this.setPersistedProperty(aJ.Queue,z),X=z,await this.flushStorage()},Z={api_key:this.apiKey,batch:J,sent_at:XT1()};if(this.historicalMigration)Z.historical_migration=!0;let $=JSON.stringify(Z),K=`${this.host}/batch/`,H=this.disableCompression?null:await pA1($,this.isDebug),U={method:"POST",headers:{...this.getCustomHeaders(),"Content-Type":"application/json",...H!==null&&{"Content-Encoding":"gzip"}},body:H||$},B={retryCheck:(N)=>{if(P14(N))return!1;return _N0(N)}};try{await this.fetchWithRetry(K,U,B)}catch(N){if(P14(N)&&J.length>1){this.maxBatchSize=Math.max(1,Math.floor(J.length/2)),this._logger.warn(`Received 413 when sending batch of size ${J.length}, reducing batch size to ${this.maxBatchSize}`);continue}if(!(N instanceof mX1))await W();throw this._events.emit("error",N),N}await W(),Y.push(...J)}this._events.emit("flush",Y)}async fetchWithRetry(X,Y,G,Q){let J=Y.body?Y.body:"",W=-1;try{W=J instanceof Blob?J.size:Buffer.byteLength(J,B14)}catch{if(J instanceof Blob)W=J.size;else W=new TextEncoder().encode(J).length}return await z14(async()=>{let Z=new AbortController,$=Q??this.requestTimeout,K=Fw(()=>Z.abort(),$),H=null;try{H=await this.fetch(X,{signal:Z.signal,...Y})}catch(B){throw new mX1(B)}finally{clearTimeout(K)}if(Y.mode!=="no-cors"&&(H.status<200||H.status>=400))throw new Gt(H,W);return H},{...this._retryOptions,...G})}async _shutdown(X=30000){await this._initPromise;let Y=!1;this.clearFlushTimer();let G=async()=>{try{await this.promiseQueue.join();while(!0){if((this.getPersistedProperty(aJ.Queue)||[]).length===0)break;if(await this.flush(),Y)break}}catch(J){if(!_N0(J))throw J;await E14(J)}},Q;try{return await Promise.race([new Promise((J,W)=>{Q=Fw(()=>{this._logger.error("Timed out while shutting down PostHog"),Y=!0,W("Timeout while shutting down PostHog. Some events may not have been sent.")},X)}),G()])}finally{clearTimeout(Q)}}async shutdown(X=30000){if(this.shutdownPromise)this._logger.warn("shutdown() called while already shutting down. shutdown() is meant to be called once before process exit - use flush() for per-request cleanup");else this.shutdownPromise=this._shutdown(X).finally(()=>{this.shutdownPromise=null});return this.shutdownPromise}}var Gt,mX1;var fN0=D(()=>{L14();iA1();EN0();Cj();U3();uX1();Gt=class Gt extends Error{constructor(X,Y){super("HTTP error while fetching PostHog: status="+X.status+", reqByteLength="+Y),this.response=X,this.reqByteLength=Y,this.name="PostHogFetchHttpError"}get status(){return this.response.status}get text(){return this.response.text()}get json(){return this.response.json()}};mX1=class mX1 extends Error{constructor(X){super("Network error while fetching PostHog",X instanceof Error?{cause:X}:{}),this.error=X,this.name="PostHogFetchNetworkError"}}});var q14=D(()=>{iA1();Cj();fN0();uX1();U3()});var A14=D(()=>{hX1()});function I14(X){let Y=globalThis._posthogChunkIds;if(!Y)return;let G=Object.keys(Y);if(QT1&&G.length===T14)return QT1;return T14=G.length,QT1=G.reduce((Q,J)=>{if(!GT1)GT1={};let W=GT1[J];if(W)Q[W[0]]=W[1];else{let Z=X(J);for(let $=Z.length-1;$>=0;$--){let H=Z[$]?.filename,U=Y[J];if(H&&U){Q[H]=U,GT1[J]=[H,U];break}}}return Q},{}),QT1}var GT1,T14,QT1;var V14=()=>{};class j14{constructor(X,Y,G=[]){this.coercers=X,this.stackParser=Y,this.modifiers=G}buildFromUnknown(X,Y={}){let Q=Y&&Y.mechanism||{handled:!0,type:"generic"},W=this.buildCoercingContext(Q,Y,0).apply(X),Z=this.buildParsingContext(Y),$=this.parseStacktrace(W,Z);return{$exception_list:this.convertToExceptionList($,Q),$exception_level:"error"}}async modifyFrames(X){for(let Y of X)if(Y.stacktrace&&Y.stacktrace.frames&&aA1(Y.stacktrace.frames))Y.stacktrace.frames=await this.applyModifiers(Y.stacktrace.frames);return X}coerceFallback(X){return{type:"Error",value:"Unknown error",stack:X.syntheticException?.stack,synthetic:!0}}parseStacktrace(X,Y){let G;if(X.cause!=null)G=this.parseStacktrace(X.cause,Y);let Q;if(X.stack!=""&&X.stack!=null)Q=this.applyChunkIds(this.stackParser(X.stack,X.synthetic?Y.skipFirstLines:0),Y.chunkIdMap);return{...X,cause:G,stack:Q}}applyChunkIds(X,Y){return X.map((G)=>{if(G.filename&&Y)G.chunk_id=Y[G.filename];return G})}applyCoercers(X,Y){for(let G of this.coercers)if(G.match(X))return G.coerce(X,Y);return this.coerceFallback(Y)}async applyModifiers(X){let Y=X;for(let G of this.modifiers)Y=await G(Y);return Y}convertToExceptionList(X,Y){let G={type:X.type,value:X.value,mechanism:{type:Y.type??"generic",handled:Y.handled??!0,synthetic:X.synthetic??!1}};if(X.stack)G.stacktrace={type:"raw",frames:X.stack};let Q=[G];if(X.cause!=null)Q.push(...this.convertToExceptionList(X.cause,{...Y,handled:!0}));return Q}buildParsingContext(X){return{chunkIdMap:I14(this.stackParser),skipFirstLines:X.skipFirstLines??1}}buildCoercingContext(X,Y,G=0){let Q=(W,Z)=>{if(!(Z<=Vn5))return;{let $=this.buildCoercingContext(X,Y,Z);return this.applyCoercers(W,$)}};return{...Y,syntheticException:G==0?Y.syntheticException:void 0,mechanism:X,apply:(W)=>Q(W,G),next:(W)=>Q(W,G+1)}}}var Vn5=4;var M14=D(()=>{U3();V14()});function Qz(X,Y,G,Q,J){let W={platform:X,filename:Y,function:G==="<anonymous>"?sQ:G,in_app:!0};if(!sa(Q))W.lineno=Q;if(!sa(J))W.colno=J;return W}var sQ="?";var Vq=D(()=>{U3()});var JT1=(X,Y)=>{let G=X.indexOf("safari-extension")!==-1,Q=X.indexOf("safari-web-extension")!==-1;return G||Q?[X.indexOf("@")!==-1?X.split("@")[0]:sQ,G?`safari-extension:${Y}`:`safari-web-extension:${Y}`]:[X,Y]};var bN0=D(()=>{Vq()});var jn5,Mn5,Rn5,yN0=(X,Y)=>{let G=jn5.exec(X);if(G){let[,J,W,Z]=G;return Qz(Y,J,sQ,+W,+Z)}let Q=Mn5.exec(X);if(Q){if(Q[2]&&Q[2].indexOf("eval")===0){let $=Rn5.exec(Q[2]);if($)Q[2]=$[1],Q[3]=$[2],Q[4]=$[3]}let[W,Z]=JT1(Q[1]||sQ,Q[2]);return Qz(Y,Z,W,Q[3]?+Q[3]:void 0,Q[4]?+Q[4]:void 0)}};var R14=D(()=>{Vq();bN0();jn5=/^\s*at (\S+?)(?::(\d+))(?::(\d+))\s*$/i,Mn5=/^\s*at (?:(.+?\)(?: \[.+\])?|.*?) ?\((?:address at )?)?(?:async )?((?:<anonymous>|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,Rn5=/\((\S*)(?::(\d+))(?::(\d+))\)/});var Sn5,Cn5,xN0=(X,Y)=>{let G=Sn5.exec(X);if(G){if(G[3]&&G[3].indexOf(" > eval")>-1){let Z=Cn5.exec(G[3]);if(Z)G[1]=G[1]||"eval",G[3]=Z[1],G[4]=Z[2],G[5]=""}let J=G[3],W=G[1]||sQ;return[W,J]=JT1(W,J),Qz(Y,J,W,G[4]?+G[4]:void 0,G[5]?+G[5]:void 0)}};var S14=D(()=>{Vq();bN0();Sn5=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:[-a-z]+)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. /=]+)(?::(\d+))?(?::(\d+))?\s*$/i,Cn5=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i});var kn5,C14=(X,Y)=>{let G=kn5.exec(X);return G?Qz(Y,G[2],G[1]||sQ,+G[3],G[4]?+G[4]:void 0):void 0};var k14=D(()=>{Vq();kn5=/^\s*at (?:((?:\[object object\])?.+) )?\(?((?:[-a-z]+):.*?):(\d+)(?::(\d+))?\)?\s*$/i});var vn5,v14=(X,Y)=>{let G=vn5.exec(X);return G?Qz(Y,G[2],G[3]||sQ,+G[1]):void 0},_n5,_14=(X,Y)=>{let G=_n5.exec(X);return G?Qz(Y,G[5],G[3]||G[4]||sQ,+G[1],+G[2]):void 0};var f14=D(()=>{Vq();vn5=/ line (\d+).*script (?:in )?(\S+)(?:: in function (\S+))?$/i,_n5=/ line (\d+), column (\d+)\s*(?:in (?:<anonymous function: ([^>]+)>|([^)]+))\(.*\))? in (.*):\s*$/i});function yn5(X,Y=!1){return!(Y||X&&!X.startsWith("/")&&!X.match(/^[A-Z]:/)&&!X.startsWith(".")&&!X.match(/^[a-zA-Z]([a-zA-Z0-9.\-+])*:\/\//))&&X!==void 0&&!X.includes("node_modules/")}function b14(X){return parseInt(X||"",10)||void 0}var fn5,bn5,y14=(X,Y)=>{let G=X.match(bn5);if(G){let Q,J,W,Z,$;if(G[1]){W=G[1];let U=W.lastIndexOf(".");if(W[U-1]===".")U--;if(U>0){Q=W.slice(0,U),J=W.slice(U+1);let B=Q.indexOf(".Module");if(B>0)W=W.slice(B+1),Q=Q.slice(0,B)}Z=void 0}if(J)Z=Q,$=J;if(J==="<anonymous>")$=void 0,W=void 0;if(W===void 0)$=$||sQ,W=Z?`${Z}.${$}`:$;let K=G[2]?.startsWith("file://")?G[2].slice(7):G[2],H=G[5]==="native";if(K?.match(/\/[A-Z]:/))K=K.slice(1);if(!K&&G[5]&&!H)K=G[5];return{filename:K?decodeURI(K):void 0,module:void 0,function:W,lineno:b14(G[3]),colno:b14(G[4]),in_app:yn5(K||"",H),platform:Y}}if(X.match(fn5))return{filename:X,platform:Y}};var x14=D(()=>{Vq();fn5=/^\s*[-]{4,}$/,bn5=/at (?:async )?(?:(.+?)\s+\()?(?:(.+):(\d+):(\d+)?|([^)]+))\)?/});function u14(X){if(!X.length)return[];let Y=Array.from(X);return Y.reverse(),Y.slice(0,g14).map((G)=>({...G,filename:G.filename||xn5(Y).filename,function:G.function||sQ}))}function xn5(X){return X[X.length-1]||{}}function hn5(){return l14("web:javascript",yN0,xN0)}function l14(X,...Y){return(G,Q=0)=>{let J=[],W=G.split(`
1640
1640
  `);for(let Z=Q;Z<W.length;Z++){let $=W[Z];if($.length>1024)continue;let K=h14.test($)?$.replace(h14,"$1"):$;if(!K.match(/\S*Error: /)){for(let H of Y){let U=H(K,X);if(U){J.push(U);break}}if(J.length>=g14)break}}return u14(J)}}var h14,g14=50;var m14=D(()=>{Vq();R14();S14();k14();f14();x14();h14=/\(error: (.*)\)/});class d14{match(X){return this.isDOMException(X)||this.isDOMError(X)}coerce(X,Y){let G=Tq(X.stack);return{type:this.getType(X),value:this.getValue(X),stack:G?X.stack:void 0,cause:X.cause?Y.next(X.cause):void 0,synthetic:!1}}getType(X){return this.isDOMError(X)?"DOMError":"DOMException"}getValue(X){let Y=X.name||(this.isDOMError(X)?"DOMError":"DOMException");return X.message?`${Y}: ${X.message}`:Y}isDOMException(X){return kj(X,"DOMException")}isDOMError(X){return kj(X,"DOMError")}}var c14=D(()=>{U3()});class i14{match(X){return qN0(X)}coerce(X,Y){return{type:this.getType(X),value:this.getMessage(X,Y),stack:this.getStack(X),cause:X.cause?Y.next(X.cause):void 0,synthetic:!1}}getType(X){return X.name||X.constructor.name}getMessage(X,Y){let G=X.message;if(G.error&&typeof G.error.message=="string")return String(G.error.message);return String(G)}getStack(X){return X.stacktrace||X.stack||void 0}}var p14=D(()=>{U3()});class n14{constructor(){}match(X){return re6(X)&&X.error!=null}coerce(X,Y){let G=Y.apply(X.error);if(!G)return{type:"ErrorEvent",value:X.message,stack:Y.syntheticException?.stack,synthetic:!0};return G}}var a14=D(()=>{U3()});class t14{match(X){return typeof X=="string"}coerce(X,Y){let[G,Q]=this.getInfos(X);return{type:G??"Error",value:Q??X,stack:Y.syntheticException?.stack,synthetic:!0}}getInfos(X){let Y="Error",G=X,Q=X.match(gn5);if(Q)Y=Q[1],G=Q[2];return[Y,G]}}var gn5;var r14=D(()=>{gn5=/^(?:[Uu]ncaught (?:exception: )?)?(?:((?:Eval|Internal|Range|Reference|Syntax|Type|URI|)Error): )?(.*)$/i});var o14;var s14=D(()=>{o14=["fatal","error","warning","log","info","debug"]});function ZT1(X,Y=40){let G=Object.keys(X);if(G.sort(),!G.length)return"[object has no keys]";for(let Q=G.length;Q>0;Q--){let J=G.slice(0,Q).join(", ");if(!(J.length>Y)){if(Q===G.length)return J;return J.length<=Y?J:`${J.slice(0,Y)}...`}}return""}var hN0=()=>{};class e14{match(X){return typeof X=="object"&&X!==null}coerce(X,Y){let G=this.getErrorPropertyFromObject(X);if(G)return Y.apply(G);return{type:this.getType(X),value:this.getValue(X),stack:Y.syntheticException?.stack,level:this.isSeverityLevel(X.level)?X.level:"error",synthetic:!0}}getType(X){return ea(X)?X.constructor.name:"Error"}getValue(X){if("name"in X&&typeof X.name=="string"){let Q=`'${X.name}' captured as exception`;if("message"in X&&typeof X.message=="string")Q+=` with message: '${X.message}'`;return Q}if("message"in X&&typeof X.message=="string")return X.message;let Y=this.getObjectClassName(X),G=ZT1(X);return`${Y&&Y!=="Object"?`'${Y}'`:"Object"} captured as exception with keys: ${G}`}isSeverityLevel(X){return Tq(X)&&!te6(X)&&o14.indexOf(X)>=0}getErrorPropertyFromObject(X){for(let Y in X)if(Object.prototype.hasOwnProperty.call(X,Y)){let G=X[Y];if(O14(G))return G}}getObjectClassName(X){try{let Y=Object.getPrototypeOf(X);return Y?Y.constructor.name:void 0}catch(Y){return}}}var X04=D(()=>{U3();s14();hN0()});class Y04{match(X){return ea(X)}coerce(X,Y){let G=X.constructor.name;return{type:G,value:`${G} captured as exception with keys: ${ZT1(X)}`,stack:Y.syntheticException?.stack,synthetic:!0}}}var G04=D(()=>{U3();hN0()});class Q04{match(X){return tA1(X)}coerce(X,Y){return{type:"Error",value:`Primitive value captured as exception: ${String(X)}`,stack:Y.syntheticException?.stack,synthetic:!0}}}var J04=D(()=>{U3()});class Z04{match(X){return kj(X,"PromiseRejectionEvent")||this.isCustomEventWrappingRejection(X)}isCustomEventWrappingRejection(X){if(!ea(X))return!1;try{let Y=X.detail;return Y!=null&&typeof Y=="object"&&"reason"in Y}catch{return!1}}coerce(X,Y){let G=this.getUnhandledRejectionReason(X);if(tA1(G))return{type:"UnhandledRejection",value:`Non-Error promise rejection captured with value: ${String(G)}`,stack:Y.syntheticException?.stack,synthetic:!0};return Y.apply(G)}getUnhandledRejectionReason(X){try{if("reason"in X)return X.reason;if("detail"in X&&X.detail!=null&&typeof X.detail=="object"&&"reason"in X.detail)return X.detail.reason}catch{}return X}}var W04=D(()=>{U3()});var $04=D(()=>{c14();p14();a14();r14();X04();G04();J04();W04()});class K04{constructor(X){this._maxSize=X,this._cache=new Map}get(X){let Y=this._cache.get(X);if(Y===void 0)return;return this._cache.delete(X),this._cache.set(X,Y),Y}set(X,Y){this._cache.set(X,Y)}reduce(){while(this._cache.size>=this._maxSize){let X=this._cache.keys().next().value;if(X)this._cache.delete(X)}}}var H04=()=>{};function gN0(X){if(!X)return{...WT1};return{enabled:X.enabled??WT1.enabled,max_bytes:mn5(X.max_bytes,WT1.max_bytes)}}function ln5(X){if(!X)return{sanitizedProperties:{},droppedKeys:[]};let Y=[];return{sanitizedProperties:Object.keys(X).reduce((Q,J)=>{if(un5.has(J))return Y.push(J),Q;return Q[J]=X[J],Q},{}),droppedKeys:Y}}class F04{constructor(X){this._entries=[],this._totalBytes=0,this._config=gN0(X)}setConfig(X){this._config=gN0(X),this._trimToMaxBytes()}add(X){let Y=dn5(X);if(!Y)return;let G=U04(Y.json);if(G>this._config.max_bytes)return;this._entries.push({step:Y.step,bytes:G}),this._totalBytes+=G,this._trimToMaxBytes()}getAttachable(){return this._entries.map((X)=>X.step)}clear(){this._entries=[],this._totalBytes=0}size(){return this._entries.length}_trimToMaxBytes(){while(this._totalBytes>this._config.max_bytes&&this._entries.length>0){let X=this._entries.shift();if(X)this._totalBytes-=X.bytes}}}function mn5(X,Y){if(!xX1(X)||X===1/0||X===-1/0)return Y;let G=Math.floor(X);if(G<0)return Y;return G}function dn5(X){let Y=cn5(X);if(!Y)return;try{let G=JSON.parse(Y);if(!yX1(G))return;let Q=G,J=Q[dX1.MESSAGE],W=Q[dX1.TIMESTAMP];if(!Tq(J)||J.trim().length===0)return;if(!Tq(W)&&!xX1(W))return;return{step:Q,json:Y}}catch{return}}function cn5(X){let Y=new WeakSet;try{return JSON.stringify(X,(G,Q)=>{if(typeof Q=="bigint")return Q.toString();if(typeof Q=="function"||typeof Q=="symbol")return;if(Q instanceof Date)return Q.toISOString();if(Q instanceof Error)return{name:Q.name,message:Q.message,stack:Q.stack};if(Q&&typeof Q=="object"){if(Y.has(Q))return"[Circular]";Y.add(Q)}return Q})}catch{return}}function U04(X){if(typeof TextEncoder<"u")return new TextEncoder().encode(X).length;let Y=encodeURIComponent(X),G=0;for(let Q=0;Q<Y.length;Q++)if(Y[Q]==="%")G+=1,Q+=2;else G+=1;return G}var dX1,un5,WT1;var B04=D(()=>{U3();dX1={MESSAGE:"$message",TIMESTAMP:"$timestamp"},un5=new Set([dX1.MESSAGE,dX1.TIMESTAMP]),WT1={enabled:!0,max_bytes:32768}});var qW={};M0(qW,{winjsStackLineParser:()=>C14,stripReservedExceptionStepFields:()=>ln5,reverseAndStripFrames:()=>u14,resolveExceptionStepsConfig:()=>gN0,opera11StackLineParser:()=>_14,opera10StackLineParser:()=>v14,nodeStackLineParser:()=>y14,getUtf8ByteLength:()=>U04,geckoStackLineParser:()=>xN0,createStackParser:()=>l14,createDefaultStackParser:()=>hn5,chromeStackLineParser:()=>yN0,StringCoercer:()=>t14,ReduceableCache:()=>K04,PromiseRejectionEventCoercer:()=>Z04,PrimitiveCoercer:()=>Q04,ObjectCoercer:()=>e14,ExceptionStepsBuffer:()=>F04,EventCoercer:()=>Y04,ErrorPropertiesBuilder:()=>j14,ErrorEventCoercer:()=>n14,ErrorCoercer:()=>i14,EXCEPTION_STEP_INTERNAL_FIELDS:()=>dX1,DOMExceptionCoercer:()=>d14,DEFAULT_EXCEPTION_STEPS_CONFIG:()=>WT1});var N04=D(()=>{M14();m14();$04();H04();B04()});var _j=D(()=>{iA1();EN0();kN0();D14();uX1();w14();N04();U3();q14();fN0();A14();Cj()});import{createReadStream as in5}from"fs";import{createInterface as pn5}from"readline";async function w04(X){let Y={};for(let J=X.length-1;J>=0;J--){let W=X[J],Z=W?.filename;if(!W||typeof Z!="string"||typeof W.lineno!="number"||sn5(Z)||en5(W))continue;if(!Y[Z])Y[Z]=[];Y[Z].push(W.lineno)}let G=Object.keys(Y);if(G.length==0)return X;let Q=[];for(let J of G){if(D04.get(J))continue;let W=Y[J];if(!W)continue;W.sort((K,H)=>K-H);let Z=Ya5(W);if(Z.every((K)=>Xa5(J,K)))continue;let $=Ga5($T1,J,{});Q.push(tn5(J,Z,$))}if(await Promise.all(Q).catch(()=>{}),X&&X.length>0)rn5(X,$T1);return $T1.reduce(),X}function tn5(X,Y,G){return new Promise((Q)=>{let J=in5(X),W=pn5({input:J});function Z(){J.destroy(),Q()}let $=0,K=0,H=Y[K];if(H===void 0)return void Z();let U=H[0],B=H[1];function N(){D04.set(X,1),W.close(),W.removeAllListeners(),Z()}J.on("error",N),W.on("error",N),W.on("close",Z),W.on("line",(z)=>{if($++,$<U)return;if(G[$]=Qa5(z,0),$>=B){if(K===Y.length-1){W.close(),W.removeAllListeners();return}K++;let O=Y[K];if(O===void 0){W.close(),W.removeAllListeners();return}U=O[0],B=O[1]}})})}function rn5(X,Y){for(let G of X)if(G.filename&&G.context_line===void 0&&typeof G.lineno=="number"){let Q=Y.get(G.filename);if(Q===void 0)continue;on5(G.lineno,G,Q)}}function on5(X,Y,G){if(Y.lineno===void 0||G===void 0)return;Y.pre_context=[];for(let J=L04(X);J<X;J++){let W=G[J];if(W===void 0)return void z04(Y);Y.pre_context.push(W)}if(G[X]===void 0)return void z04(Y);Y.context_line=G[X];let Q=E04(X);Y.post_context=[];for(let J=X+1;J<=Q;J++){let W=G[J];if(W===void 0)break;Y.post_context.push(W)}}function z04(X){delete X.pre_context,delete X.context_line,delete X.post_context}function sn5(X){return X.startsWith("node:")||X.endsWith(".min.js")||X.endsWith(".min.cjs")||X.endsWith(".min.mjs")||X.startsWith("data:")}function en5(X){if(X.lineno!==void 0&&X.lineno>an5)return!0;if(X.colno!==void 0&&X.colno>nn5)return!0;return!1}function Xa5(X,Y){let G=$T1.get(X);if(G===void 0)return!1;for(let Q=Y[0];Q<=Y[1];Q++)if(G[Q]===void 0)return!1;return!0}function Ya5(X){if(!X.length)return[];let Y=0,G=X[0];if(typeof G!="number")return[];let Q=O04(G),J=[];while(!0){if(Y===X.length-1){J.push(Q);break}let W=X[Y+1];if(typeof W!="number")break;if(W<=Q[1])Q[1]=W+uN0;else J.push(Q),Q=O04(W);Y++}return J}function O04(X){return[L04(X),E04(X)]}function L04(X){return Math.max(1,X-uN0)}function E04(X){return X+uN0}function Ga5(X,Y,G){let Q=X.get(Y);if(Q===void 0)return X.set(Y,G),G;return Q}function Qa5(X,Y){let G=X,Q=G.length;if(Q<=150)return G;if(Y>Q)Y=Q;let J=Math.max(Y-60,0);if(J<5)J=0;let W=Math.min(J+140,Q);if(W>Q-5)W=Q;if(W===Q)J=Math.max(W-140,0);if(G=G.slice(J,W),J>0)G=`...${G}`;if(W<Q)G+="...";return G}var $T1,D04,uN0=7,nn5=1000,an5=1e4;var P04=D(()=>{_j();$T1=new qW.ReduceableCache(25),D04=new qW.ReduceableCache(20)});import{isAbsolute as Ja5,relative as Za5,sep as Wa5}from"path";function q04(X=process.cwd()){let Y=Wa5==="\\",G=(J)=>Y?J.replace(/\\/g,"/"):J,Q=G(X);return async(J)=>{for(let W of J)if(!(!W.filename||W.filename.startsWith("node:")||W.filename.startsWith("data:"))){if(Ja5(W.filename))W.filename=G(Za5(Q,G(W.filename)))}return J}}var A04=()=>{};function $a5(X,Y){let G=!1;return Object.assign((Q)=>{let W=global.process.listeners("uncaughtException").filter((Z)=>Z.name!=="domainUncaughtExceptionClear"&&Z._posthogErrorHandler!==!0).length===0;if(X(Q,{mechanism:{type:"onuncaughtexception",handled:!1}}),!G&&W)G=!0,Y(Q)},{_posthogErrorHandler:!0})}function T04(X,Y){globalThis.process?.on("uncaughtException",$a5(X,Y))}function I04(X){globalThis.process?.on("unhandledRejection",(Y)=>X(Y,{mechanism:{type:"onunhandledrejection",handled:!1}}))}var V04=()=>{};class DH{constructor(X,Y,G){this.client=X,this._exceptionAutocaptureEnabled=Y.enableExceptionAutocapture||!1,this._logger=G,this._rateLimiter=new TN0({refillRate:1,bucketSize:10,refillInterval:1e4,_logger:this._logger}),this.startAutocaptureIfEnabled()}static isPreviouslyCapturedError(X){return yX1(X)&&"__posthog_previously_captured_error"in X&&X.__posthog_previously_captured_error===!0}static async buildEventMessage(X,Y,G,Q){let J={...Q},W=this.errorPropertiesBuilder.buildFromUnknown(X,Y);return W.$exception_list=await this.errorPropertiesBuilder.modifyFrames(W.$exception_list),{event:"$exception",distinctId:G,properties:{...W,...J},_originatedFromCaptureException:!0}}startAutocaptureIfEnabled(){if(this.isEnabled())T04(this.onException.bind(this),this.onFatalError.bind(this)),I04(this.onException.bind(this))}onException(X,Y){this.client.addPendingPromise((async()=>{if(!DH.isPreviouslyCapturedError(X)){let G=await DH.buildEventMessage(X,Y),J=G.properties?.$exception_list[0]?.type??"Exception";if(this._rateLimiter.consumeRateLimit(J))return void this._logger.info("Skipping exception capture because of client rate limiting.",{exception:J});return this.client.capture(G)}})())}async onFatalError(X){console.error(X),await this.client.shutdown(Ka5),process.exit(1)}isEnabled(){return!this.client.isDisabled&&this._exceptionAutocaptureEnabled}shutdown(){this._rateLimiter.stop()}}var Ka5=2000;var KT1=D(()=>{V04();_j()});var j04="5.30.6";var M04=()=>{};var cX1;var lN0=D(()=>{cX1={ERRORS_WHILE_COMPUTING:"errors_while_computing_flags",FLAG_MISSING:"flag_missing",QUOTA_LIMITED:"quota_limited",UNKNOWN_ERROR:"unknown_error"}});async function R04(X){let Y=globalThis.crypto?.subtle;if(!Y)throw Error("SubtleCrypto API not available");let G=await Y.digest("SHA-1",new TextEncoder().encode(X));return Array.from(new Uint8Array(G)).map((J)=>J.toString(16).padStart(2,"0")).join("")}var S04=()=>{};class mN0{constructor({pollingInterval:X,personalApiKey:Y,projectApiKey:G,timeout:Q,host:J,customHeaders:W,...Z}){this.debugMode=!1,this.shouldBeginExponentialBackoff=!1,this.backOffCount=0,this.pollingInterval=X,this.personalApiKey=Y,this.featureFlags=[],this.featureFlagsByKey={},this.groupTypeMapping={},this.cohorts={},this.loadedSuccessfullyOnce=!1,this.timeout=Q,this.projectApiKey=G,this.host=J,this.poller=void 0,this.fetch=Z.fetch||fetch,this.onError=Z.onError,this.customHeaders=W,this.onLoad=Z.onLoad,this.cacheProvider=Z.cacheProvider,this.strictLocalEvaluation=Z.strictLocalEvaluation??!1,this.loadFeatureFlags()}debug(X=!0){this.debugMode=X}logMsgIfDebug(X){if(this.debugMode)X()}createEvaluationContext(X,Y={},G={},Q={},J={}){return{distinctId:X,groups:Y,personProperties:G,groupProperties:Q,evaluationCache:J}}async getFeatureFlag(X,Y,G={},Q={},J={}){await this.loadFeatureFlags();let W,Z;if(!this.loadedSuccessfullyOnce)return W;if(Z=this.featureFlagsByKey[X],Z!==void 0){let $=this.createEvaluationContext(Y,G,Q,J);try{W=(await this.computeFlagAndPayloadLocally(Z,$)).value,this.logMsgIfDebug(()=>console.debug(`Successfully computed flag locally: ${X} -> ${W}`))}catch(K){if(K instanceof Jz||K instanceof d5)this.logMsgIfDebug(()=>console.debug(`${K.name} when computing flag locally: ${X}: ${K.message}`));else if(K instanceof Error)this.onError?.(Error(`Error computing flag locally: ${X}: ${K}`))}}return W}async getAllFlagsAndPayloads(X,Y){await this.loadFeatureFlags();let G={},Q={},J=this.featureFlags.length==0,W=Y?Y.map(($)=>this.featureFlagsByKey[$]).filter(Boolean):this.featureFlags,Z={...X,evaluationCache:X.evaluationCache??{}};return await Promise.all(W.map(async($)=>{try{let{value:K,payload:H}=await this.computeFlagAndPayloadLocally($,Z);if(G[$.key]=K,H)Q[$.key]=H}catch(K){if(K instanceof Jz||K instanceof d5)this.logMsgIfDebug(()=>console.debug(`${K.name} when computing flag locally: ${$.key}: ${K.message}`));else if(K instanceof Error)this.onError?.(Error(`Error computing flag locally: ${$.key}: ${K}`));J=!0}})),{response:G,payloads:Q,fallbackToFlags:J}}async computeFlagAndPayloadLocally(X,Y,G={}){let{matchValue:Q,skipLoadCheck:J=!1}=G;if(!J)await this.loadFeatureFlags();if(!this.loadedSuccessfullyOnce)return{value:!1,payload:null};let W;W=Q!==void 0?Q:await this.computeFlagValueLocally(X,Y);let Z=this.getFeatureFlagPayload(X.key,W);return{value:W,payload:Z}}async computeFlagValueLocally(X,Y){let{distinctId:G,groups:Q,personProperties:J,groupProperties:W}=Y;if(X.ensure_experience_continuity)throw new d5("Flag has experience continuity enabled");if(!X.active)return!1;let $=(X.filters||{}).aggregation_group_type_index;if($!=null){let K=this.groupTypeMapping[String($)];if(!K)throw this.logMsgIfDebug(()=>console.warn(`[FEATURE FLAGS] Unknown group type index ${$} for feature flag ${X.key}`)),new d5("Flag has unknown group type index");if(!(K in Q))return this.logMsgIfDebug(()=>console.warn(`[FEATURE FLAGS] Can't compute group feature flag: ${X.key} without group names passed in`)),!1;if(X.bucketing_identifier==="device_id"&&(J?.$device_id===void 0||J?.$device_id===null||J?.$device_id===""))this.logMsgIfDebug(()=>console.warn(`[FEATURE FLAGS] Ignoring bucketing_identifier for group flag: ${X.key}`));let H=W[K];return await this.matchFeatureFlagProperties(X,Q[K],H,Y)}{let K=this.getBucketingValueForFlag(X,G,J);if(K===void 0)throw this.logMsgIfDebug(()=>console.warn(`[FEATURE FLAGS] Can't compute feature flag: ${X.key} without $device_id, falling back to server evaluation`)),new d5(`Can't compute feature flag: ${X.key} without $device_id`);return await this.matchFeatureFlagProperties(X,K,J,Y)}}getBucketingValueForFlag(X,Y,G){if(X.filters?.aggregation_group_type_index!=null)return Y;if(X.bucketing_identifier==="device_id"){let Q=G?.$device_id;if(Q==null||Q==="")return;return Q}return Y}getFeatureFlagPayload(X,Y){let G=null;if(Y!==!1&&Y!=null){if(typeof Y=="boolean")G=this.featureFlagsByKey?.[X]?.filters?.payloads?.[Y.toString()]||null;else if(typeof Y=="string")G=this.featureFlagsByKey?.[X]?.filters?.payloads?.[Y]||null;if(G!=null){if(typeof G=="object")return G;if(typeof G=="string")try{return JSON.parse(G)}catch{}return G}}return null}async evaluateFlagDependency(X,Y,G){let{evaluationCache:Q}=G,J=X.key;if(!this.featureFlagsByKey)throw new d5("Feature flags not available for dependency evaluation");if(!("dependency_chain"in X))throw new d5(`Flag dependency property for '${J}' is missing required 'dependency_chain' field`);let W=X.dependency_chain;if(!Array.isArray(W))throw new d5(`Flag dependency property for '${J}' has an invalid 'dependency_chain' (expected array, got ${typeof W})`);if(W.length===0)throw new d5(`Circular dependency detected for flag '${J}' (empty dependency chain)`);for(let $ of W){if(!($ in Q)){let H=this.featureFlagsByKey[$];if(H)if(H.active)try{let U=await this.computeFlagValueLocally(H,G);Q[$]=U}catch(U){throw new d5(`Error evaluating flag dependency '${$}' for flag '${J}': ${U}`)}else Q[$]=!1;else throw new d5(`Missing flag dependency '${$}' for flag '${J}'`)}if(Q[$]==null)throw new d5(`Dependency '${$}' could not be evaluated`)}let Z=Q[J];return this.flagEvaluatesToExpectedValue(X.value,Z)}flagEvaluatesToExpectedValue(X,Y){if(typeof X=="boolean")return X===Y||typeof Y=="string"&&Y!==""&&X===!0;if(typeof X=="string")return Y===X;return!1}async matchFeatureFlagProperties(X,Y,G,Q){let J=X.filters||{},W=J.groups||[],Z=!1,$;for(let K of W)try{if(await this.isConditionMatch(X,Y,K,G,Q)){let H=K.variant,U=J.multivariate?.variants||[];$=H&&U.some((B)=>B.key===H)?H:await this.getMatchingVariant(X,Y)||!0;break}}catch(H){if(H instanceof Jz)throw H;if(H instanceof d5)Z=!0;else throw H}if($!==void 0)return $;if(Z)throw new d5("Can't determine if feature flag is enabled or not with given properties");return!1}async isConditionMatch(X,Y,G,Q,J){let W=G.rollout_percentage,Z=($)=>{this.logMsgIfDebug(()=>console.warn($))};if((G.properties||[]).length>0){for(let $ of G.properties){let K=$.type,H=!1;if(H=K==="cohort"?f04($,Q,this.cohorts,this.debugMode):K==="flag"?await this.evaluateFlagDependency($,Q,J):_04($,Q,Z),!H)return!1}if(W==null)return!0}if(W!=null&&await C04(X.key,Y)>W/100)return!1;return!0}async getMatchingVariant(X,Y){let G=await C04(X.key,Y,"variant"),Q=this.variantLookupTable(X).find((J)=>G>=J.valueMin&&G<J.valueMax);if(Q)return Q.key}variantLookupTable(X){let Y=[],G=0,Q=0;return((X.filters||{}).multivariate?.variants||[]).forEach((Z)=>{Q=G+Z.rollout_percentage/100,Y.push({valueMin:G,valueMax:Q,key:Z.key}),G=Q}),Y}updateFlagState(X){this.featureFlags=X.flags,this.featureFlagsByKey=X.flags.reduce((Y,G)=>(Y[G.key]=G,Y),{}),this.groupTypeMapping=X.groupTypeMapping,this.cohorts=X.cohorts,this.loadedSuccessfullyOnce=!0}warnAboutExperienceContinuityFlags(X){if(this.strictLocalEvaluation)return;let Y=X.filter((G)=>G.ensure_experience_continuity);if(Y.length>0)console.warn(`[PostHog] You are using local evaluation but ${Y.length} flag(s) have experience continuity enabled: ${Y.map((G)=>G.key).join(", ")}. Experience continuity is incompatible with local evaluation and will cause a server request on every flag evaluation, negating local evaluation cost savings. To avoid server requests and unexpected costs, either disable experience continuity on these flags in PostHog, use strictLocalEvaluation: true in client init, or pass onlyEvaluateLocally: true per flag call (flags that cannot be evaluated locally will return undefined).`)}async loadFromCache(X){if(!this.cacheProvider)return!1;try{let Y=await this.cacheProvider.getFlagDefinitions();if(Y)return this.updateFlagState(Y),this.logMsgIfDebug(()=>console.debug(`[FEATURE FLAGS] ${X} (${Y.flags.length} flags)`)),this.onLoad?.(this.featureFlags.length),this.warnAboutExperienceContinuityFlags(Y.flags),!0;return!1}catch(Y){return this.onError?.(Error(`Failed to load from cache: ${Y}`)),!1}}async loadFeatureFlags(X=!1){if(this.loadedSuccessfullyOnce&&!X)return;if(!X&&this.nextFetchAllowedAt&&Date.now()<this.nextFetchAllowedAt)return void this.logMsgIfDebug(()=>console.debug("[FEATURE FLAGS] Skipping fetch, in backoff period"));if(!this.loadingPromise)this.loadingPromise=this._loadFeatureFlags().catch((Y)=>this.logMsgIfDebug(()=>console.debug(`[FEATURE FLAGS] Failed to load feature flags: ${Y}`))).finally(()=>{this.loadingPromise=void 0});return this.loadingPromise}isLocalEvaluationReady(){return(this.loadedSuccessfullyOnce??!1)&&(this.featureFlags?.length??0)>0}getFlagDefinitionsLoadedAt(){return this.flagDefinitionsLoadedAt}getPollingInterval(){if(!this.shouldBeginExponentialBackoff)return this.pollingInterval;return Math.min(Ha5,this.pollingInterval*2**this.backOffCount)}beginBackoff(){this.shouldBeginExponentialBackoff=!0,this.backOffCount+=1,this.nextFetchAllowedAt=Date.now()+this.getPollingInterval()}clearBackoff(){this.shouldBeginExponentialBackoff=!1,this.backOffCount=0,this.nextFetchAllowedAt=void 0}async _loadFeatureFlags(){if(this.poller)clearTimeout(this.poller),this.poller=void 0;this.poller=setTimeout(()=>this.loadFeatureFlags(!0),this.getPollingInterval());try{let X=!0;if(this.cacheProvider)try{X=await this.cacheProvider.shouldFetchFlagDefinitions()}catch(G){this.onError?.(Error(`Error in shouldFetchFlagDefinitions: ${G}`))}if(!X){if(await this.loadFromCache("Loaded flags from cache (skipped fetch)"))return;if(this.loadedSuccessfullyOnce)return}let Y=await this._requestFeatureFlagDefinitions();if(!Y)return;switch(Y.status){case 304:this.logMsgIfDebug(()=>console.debug("[FEATURE FLAGS] Flags not modified (304), using cached data")),this.flagsEtag=Y.headers?.get("ETag")??this.flagsEtag,this.loadedSuccessfullyOnce=!0,this.clearBackoff();return;case 401:throw this.beginBackoff(),new Qt(`Your project key or personal API key is invalid. Setting next polling interval to ${this.getPollingInterval()}ms. More information: https://posthog.com/docs/api#rate-limiting`);case 402:console.warn("[FEATURE FLAGS] Feature flags quota limit exceeded - unsetting all local flags. Learn more about billing limits at https://posthog.com/docs/billing/limits-alerts"),this.featureFlags=[],this.featureFlagsByKey={},this.groupTypeMapping={},this.cohorts={};return;case 403:throw this.beginBackoff(),new Qt(`Your personal API key does not have permission to fetch feature flag definitions for local evaluation. Setting next polling interval to ${this.getPollingInterval()}ms. Are you sure you're using the correct personal and Project API key pair? More information: https://posthog.com/docs/api/overview`);case 429:throw this.beginBackoff(),new Qt(`You are being rate limited. Setting next polling interval to ${this.getPollingInterval()}ms. More information: https://posthog.com/docs/api#rate-limiting`);case 200:{let G=await Y.json()??{};if(!("flags"in G))return void this.onError?.(Error(`Invalid response when getting feature flags: ${JSON.stringify(G)}`));this.flagsEtag=Y.headers?.get("ETag")??void 0;let Q={flags:G.flags??[],groupTypeMapping:G.group_type_mapping||{},cohorts:G.cohorts||{}};if(this.updateFlagState(Q),this.flagDefinitionsLoadedAt=Date.now(),this.clearBackoff(),this.cacheProvider&&X)try{await this.cacheProvider.onFlagDefinitionsReceived(Q)}catch(J){this.onError?.(Error(`Failed to store in cache: ${J}`))}this.onLoad?.(this.featureFlags.length),this.warnAboutExperienceContinuityFlags(Q.flags);break}default:return}}catch(X){if(X instanceof Qt)this.onError?.(X)}}getPersonalApiKeyRequestOptions(X="GET",Y){let G={...this.customHeaders,"Content-Type":"application/json",Authorization:`Bearer ${this.personalApiKey}`};if(Y)G["If-None-Match"]=Y;return{method:X,headers:G}}_requestFeatureFlagDefinitions(){let X=`${this.host}/flags/definitions?token=${this.projectApiKey}&send_cohorts`,Y=this.getPersonalApiKeyRequestOptions("GET",this.flagsEtag),G=null;if(this.timeout&&typeof this.timeout=="number"){let Q=new AbortController;G=Fw(()=>{Q.abort()},this.timeout),Y.signal=Q.signal}try{let Q=this.fetch;return Q(X,Y)}finally{clearTimeout(G)}}async stopPoller(X=30000){if(clearTimeout(this.poller),this.cacheProvider)try{let Y=this.cacheProvider.shutdown();if(Y instanceof Promise)await Promise.race([Y,new Promise((G,Q)=>setTimeout(()=>Q(Error(`Cache shutdown timeout after ${X}ms`)),X))])}catch(Y){this.onError?.(Error(`Error during cache shutdown: ${Y}`))}}}async function C04(X,Y,G=""){let Q=await R04(`${X}.${Y}${G}`);return parseInt(Q.slice(0,15),16)/Fa5}function _04(X,Y,G){let{key:Q,value:J}=X,W=X.operator||"exact";if(Q in Y){if(W==="is_not_set")throw new d5("Operator is_not_set is not supported")}else throw new d5(`Property ${Q} not found in propertyValues`);let Z=Y[Q];if(Z==null&&!Ua5.includes(W)){if(G)G(`Property ${Q} cannot have a value of null/undefined with the ${W} operator`);return!1}function $(H,U){if(Array.isArray(H))return H.map((B)=>String(B).toLowerCase()).includes(String(U).toLowerCase());return String(H).toLowerCase()===String(U).toLowerCase()}function K(H,U,B){if(B==="gt")return H>U;if(B==="gte")return H>=U;if(B==="lt")return H<U;if(B==="lte")return H<=U;throw Error(`Invalid operator: ${B}`)}switch(W){case"exact":return $(J,Z);case"is_not":return!$(J,Z);case"is_set":return Q in Y;case"icontains":return String(Z).toLowerCase().includes(String(J).toLowerCase());case"not_icontains":return!String(Z).toLowerCase().includes(String(J).toLowerCase());case"regex":return k04(String(J))&&String(Z).match(String(J))!==null;case"not_regex":return k04(String(J))&&String(Z).match(String(J))===null;case"gt":case"gte":case"lt":case"lte":{let H=typeof J=="number"?J:null;if(typeof J=="string")try{H=parseFloat(J)}catch(U){}if(H==null||Z==null)return K(String(Z),String(J),W);if(typeof Z=="string")return K(Z,String(J),W);return K(Z,H,W)}case"is_date_after":case"is_date_before":{if(typeof J=="boolean")throw new d5("Date operations cannot be performed on boolean values");let H=Da5(String(J));if(H==null)H=v04(J);if(H==null)throw new d5(`Invalid date: ${J}`);let U=v04(Z);if(["is_date_before"].includes(W))return U<H;return U>H}case"semver_eq":return wH(eQ(String(Z)),eQ(String(J)))===0;case"semver_neq":return wH(eQ(String(Z)),eQ(String(J)))!==0;case"semver_gt":return wH(eQ(String(Z)),eQ(String(J)))>0;case"semver_gte":return wH(eQ(String(Z)),eQ(String(J)))>=0;case"semver_lt":return wH(eQ(String(Z)),eQ(String(J)))<0;case"semver_lte":return wH(eQ(String(Z)),eQ(String(J)))<=0;case"semver_tilde":{let H=eQ(String(Z)),{lower:U,upper:B}=Na5(String(J));return wH(H,U)>=0&&wH(H,B)<0}case"semver_caret":{let H=eQ(String(Z)),{lower:U,upper:B}=za5(String(J));return wH(H,U)>=0&&wH(H,B)<0}case"semver_wildcard":{let H=eQ(String(Z)),{lower:U,upper:B}=Oa5(String(J));return wH(H,U)>=0&&wH(H,B)<0}default:throw new d5(`Unknown operator: ${W}`)}}function Ba5(X,Y){if(!(X in Y))throw new Jz(`cohort ${X} not found in local cohorts - likely a static cohort that requires server evaluation`)}function f04(X,Y,G,Q=!1){let J=String(X.value);Ba5(J,G);let W=G[J];return b04(W,Y,G,Q)}function b04(X,Y,G,Q=!1){if(!X)return!0;let{type:J,values:W}=X;if(!W||W.length===0)return!0;let Z=!1;if("values"in W[0]){for(let $ of W)try{let K=b04($,Y,G,Q);if(J==="AND"){if(!K)return!1}else if(K)return!0}catch(K){if(K instanceof Jz)throw K;if(K instanceof d5){if(Q)console.debug(`Failed to compute property ${$} locally: ${K}`);Z=!0}else throw K}if(Z)throw new d5("Can't match cohort without a given cohort property value");return J==="AND"}for(let $ of W)try{let K;if($.type==="cohort")K=f04($,Y,G,Q);else if($.type==="flag"){if(Q)console.warn(`[FEATURE FLAGS] Flag dependency filters are not supported in local evaluation. Skipping condition with dependency on flag '${$.key||"unknown"}'`);continue}else K=_04($,Y);let H=$.negation||!1;if(J==="AND"){if(!K&&!H)return!1;if(K&&H)return!1}else{if(K&&!H)return!0;if(!K&&H)return!0}}catch(K){if(K instanceof Jz)throw K;if(K instanceof d5){if(Q)console.debug(`Failed to compute property ${$} locally: ${K}`);Z=!0}else throw K}if(Z)throw new d5("can't match cohort without a given cohort property value");return J==="AND"}function k04(X){try{return new RegExp(X),!0}catch(Y){return!1}}function eQ(X){let G=String(X).trim().replace(/^[vV]/,"").split("-")[0].split("+")[0];if(!G||G.startsWith("."))throw new d5(`Invalid semver: ${X}`);let Q=G.split("."),J=(K)=>{if(K===void 0||K==="")return 0;if(!/^\d+$/.test(K))throw new d5(`Invalid semver: ${X}`);return parseInt(K,10)},W=J(Q[0]),Z=J(Q[1]),$=J(Q[2]);return[W,Z,$]}function wH(X,Y){for(let G=0;G<3;G++){if(X[G]<Y[G])return-1;if(X[G]>Y[G])return 1}return 0}function Na5(X){let Y=eQ(X),G=[Y[0],Y[1],Y[2]],Q=[Y[0],Y[1]+1,0];return{lower:G,upper:Q}}function za5(X){let Y=eQ(X),[G,Q,J]=Y,W=[G,Q,J],Z;return Z=G>0?[G+1,0,0]:Q>0?[0,Q+1,0]:[0,0,J+1],{lower:W,upper:Z}}function Oa5(X){let G=String(X).trim().replace(/^[vV]/,"").replace(/\.\*$/,"").replace(/\*$/,"");if(!G)throw new d5(`Invalid wildcard semver: ${X}`);let Q=G.split("."),J=parseInt(Q[0],10);if(isNaN(J))throw new d5(`Invalid wildcard semver: ${X}`);let W,Z;if(Q.length===1)W=[J,0,0],Z=[J+1,0,0];else{let $=parseInt(Q[1],10);if(isNaN($))throw new d5(`Invalid wildcard semver: ${X}`);W=[J,$,0],Z=[J,$+1,0]}return{lower:W,upper:Z}}function v04(X){if(X instanceof Date)return X;if(typeof X=="string"||typeof X=="number"){let Y=new Date(X);if(!isNaN(Y.valueOf()))return Y;throw new d5(`${X} is in an invalid date format`)}throw new d5(`The date provided ${X} must be a string, number, or date object`)}function Da5(X){let Y=/^-?(?<number>[0-9]+)(?<interval>[a-z])$/,G=X.match(Y),Q=new Date(new Date().toISOString());if(!G)return null;{if(!G.groups)return null;let J=parseInt(G.groups.number);if(J>=1e4)return null;let W=G.groups.interval;if(W=="h")Q.setUTCHours(Q.getUTCHours()-J);else if(W=="d")Q.setUTCDate(Q.getUTCDate()-J);else if(W=="w")Q.setUTCDate(Q.getUTCDate()-7*J);else if(W=="m")Q.setUTCMonth(Q.getUTCMonth()-J);else{if(W!="y")return null;Q.setUTCFullYear(Q.getUTCFullYear()-J)}return Q}}var Ha5=60000,Fa5=1152921504606847000,Ua5,Qt,d5,Jz;var y04=D(()=>{_j();S04();Ua5=["is_not"];Qt=class Qt extends Error{constructor(X){super();Error.captureStackTrace(this,this.constructor),this.name="ClientError",this.message=X,Object.setPrototypeOf(this,Qt.prototype)}};d5=class d5 extends Error{constructor(X){super(X);this.name=this.constructor.name,Error.captureStackTrace(this,this.constructor),Object.setPrototypeOf(this,d5.prototype)}};Jz=class Jz extends Error{constructor(X){super(X);this.name=this.constructor.name,Error.captureStackTrace(this,this.constructor),Object.setPrototypeOf(this,Jz.prototype)}}});class dN0{getProperty(X){return this._memoryStorage[X]}setProperty(X,Y){this._memoryStorage[X]=Y!==null?Y:void 0}constructor(){this._memoryStorage={}}}var x04=()=>{};function Aa5(X){return typeof X=="string"?X.trim():""}function Ta5(X){return(typeof X=="string"?X.trim():"")||void 0}function Ia5(X){return(typeof X=="string"?X.trim():"")||qa5}var wa5=100,h04=30000,La5=50000,Ea5=50,Pa5=500,qa5="https://us.i.posthog.com",cN0;var g04=D(()=>{M04();_j();lN0();y04();KT1();x04();cN0=class cN0 extends YT1{constructor(X,Y={}){let G=Aa5(X),Q={...Y,host:Ia5(Y.host),personalApiKey:Ta5(Y.personalApiKey)};if(super(G,Q),this._memoryStorage=new dN0,this.options=Q,this.context=this.initializeContext(),this.options.featureFlagsPollingInterval=typeof Q.featureFlagsPollingInterval=="number"?Math.max(Q.featureFlagsPollingInterval,wa5):h04,typeof Q.waitUntilDebounceMs=="number")this.options.waitUntilDebounceMs=Math.max(Q.waitUntilDebounceMs,0);if(typeof Q.waitUntilMaxWaitMs=="number")this.options.waitUntilMaxWaitMs=Math.max(Q.waitUntilMaxWaitMs,0);if(Q.personalApiKey){if(Q.personalApiKey.includes("phc_"))throw Error('Your Personal API key is invalid. These keys are prefixed with "phx_" and can be created in PostHog project settings.');if(Q.enableLocalEvaluation!==!1)this.featureFlagsPoller=new mN0({pollingInterval:this.options.featureFlagsPollingInterval,personalApiKey:Q.personalApiKey,projectApiKey:G,timeout:Q.requestTimeout??1e4,host:this.host,fetch:Q.fetch,onError:(W)=>{this._events.emit("error",W)},onLoad:(W)=>{this._events.emit("localEvaluationFlagsLoaded",W)},customHeaders:this.getCustomHeaders(),cacheProvider:Q.flagDefinitionCacheProvider,strictLocalEvaluation:Q.strictLocalEvaluation})}this.errorTracking=new DH(this,Q,this._logger),this.distinctIdHasSentFlagCalls={},this.maxCacheSize=Q.maxCacheSize||La5}enqueue(X,Y,G){super.enqueue(X,Y,G),this.scheduleDebouncedFlush()}async flush(){let X=super.flush(),Y=this.options.waitUntil;if(Y&&!this._waitUntilCycle)try{Y(X.catch(()=>{}))}catch{}return X}scheduleDebouncedFlush(){let X=this.options.waitUntil;if(!X)return;if(this.disabled||this.optedOut)return;if(!this._waitUntilCycle){let W,Z=new Promise(($)=>{W=$});try{X(Z)}catch{return}this._waitUntilCycle={resolve:W,startedAt:Date.now(),timer:void 0}}let Y=Date.now()-this._waitUntilCycle.startedAt,G=this.options.waitUntilMaxWaitMs??Pa5,Q=Y>=G;if(this._waitUntilCycle.timer!==void 0)clearTimeout(this._waitUntilCycle.timer);if(Q)return void this.resolveWaitUntilFlush();let J=this.options.waitUntilDebounceMs??Ea5;this._waitUntilCycle.timer=Fw(()=>{this.resolveWaitUntilFlush()},J)}_consumeWaitUntilCycle(){let X=this._waitUntilCycle;if(X)clearTimeout(X.timer),this._waitUntilCycle=void 0;return X?.resolve}async resolveWaitUntilFlush(){let X=this._consumeWaitUntilCycle();try{await super.flush()}catch{}finally{X?.()}}getPersistedProperty(X){return this._memoryStorage.getProperty(X)}setPersistedProperty(X,Y){return this._memoryStorage.setProperty(X,Y)}fetch(X,Y){return this.options.fetch?this.options.fetch(X,Y):fetch(X,Y)}getLibraryVersion(){return j04}getCustomUserAgent(){return`${this.getLibraryId()}/${this.getLibraryVersion()}`}enable(){return super.optIn()}disable(){return super.optOut()}debug(X=!0){super.debug(X),this.featureFlagsPoller?.debug(X)}capture(X){if(typeof X=="string")this._logger.warn("Called capture() with a string as the first argument when an object was expected.");if(X.event==="$exception"&&!X._originatedFromCaptureException)this._logger.warn("Using `posthog.capture('$exception')` is unreliable because it does not attach required metadata. Use `posthog.captureException(error)` instead, which attaches required metadata automatically.");this.addPendingPromise(this.prepareEventMessage(X).then(({distinctId:Y,event:G,properties:Q,options:J})=>super.captureStateless(Y,G,Q,{timestamp:J.timestamp,disableGeoip:J.disableGeoip,uuid:J.uuid})).catch((Y)=>{if(Y)console.error(Y)}))}async captureImmediate(X){if(typeof X=="string")this._logger.warn("Called captureImmediate() with a string as the first argument when an object was expected.");if(X.event==="$exception"&&!X._originatedFromCaptureException)this._logger.warn("Capturing a `$exception` event via `posthog.captureImmediate('$exception')` is unreliable because it does not attach required metadata. Use `posthog.captureExceptionImmediate(error)` instead, which attaches this metadata by default.");return this.addPendingPromise(this.prepareEventMessage(X).then(({distinctId:Y,event:G,properties:Q,options:J})=>super.captureStatelessImmediate(Y,G,Q,{timestamp:J.timestamp,disableGeoip:J.disableGeoip,uuid:J.uuid})).catch((Y)=>{if(Y)console.error(Y)}))}identify({distinctId:X,properties:Y={},disableGeoip:G}){let{$set:Q,$set_once:J,$anon_distinct_id:W,...Z}=Y,H={$set:Q||Z,$set_once:J||{},$anon_distinct_id:W??void 0};super.identifyStateless(X,H,{disableGeoip:G})}async identifyImmediate({distinctId:X,properties:Y={},disableGeoip:G}){let{$set:Q,$set_once:J,$anon_distinct_id:W,...Z}=Y,H={$set:Q||Z,$set_once:J||{},$anon_distinct_id:W??void 0};super.identifyStatelessImmediate(X,H,{disableGeoip:G})}alias(X){super.aliasStateless(X.alias,X.distinctId,void 0,{disableGeoip:X.disableGeoip})}async aliasImmediate(X){await super.aliasStatelessImmediate(X.alias,X.distinctId,void 0,{disableGeoip:X.disableGeoip})}isLocalEvaluationReady(){return this.featureFlagsPoller?.isLocalEvaluationReady()??!1}async waitForLocalEvaluationReady(X=h04){if(this.isLocalEvaluationReady())return!0;if(this.featureFlagsPoller===void 0)return!1;return new Promise((Y)=>{let G=setTimeout(()=>{Q(),Y(!1)},X),Q=this._events.on("localEvaluationFlagsLoaded",(J)=>{clearTimeout(G),Q(),Y(J>0)})})}_resolveDistinctId(X,Y){if(typeof X=="string")return{distinctId:X,options:Y};return{distinctId:this.context?.get()?.distinctId,options:X}}async _getFeatureFlagResult(X,Y,G={},Q){let J=G.sendFeatureFlagEvents??!0;if(this._flagOverrides!==void 0&&X in this._flagOverrides){let V=this._flagOverrides[X];if(V===void 0)return;let R=this._payloadOverrides?.[X];return{key:X,enabled:V!==!1,variant:typeof V=="string"?V:void 0,payload:R}}let{groups:W,disableGeoip:Z}=G,{onlyEvaluateLocally:$,personProperties:K,groupProperties:H}=G,U=this.addLocalPersonAndGroupProperties(Y,W,K,H);K=U.allPersonProperties,H=U.allGroupProperties;let B=this.createFeatureFlagEvaluationContext(Y,W,K,H);if($==null)$=this.options.strictLocalEvaluation??!1;let N,z=!1,O,w,E,P,q,M;if(this.featureFlagsPoller!==void 0){await this.featureFlagsPoller?.loadFeatureFlags();let V=this.featureFlagsPoller?.featureFlagsByKey[X];if(V)try{let R=await this.featureFlagsPoller?.computeFlagAndPayloadLocally(V,B,{matchValue:Q});if(R){z=!0;let k=R.value;P=V.id,M="Evaluated locally",N={key:X,enabled:k!==!1,variant:typeof k=="string"?k:void 0,payload:R.payload??void 0}}}catch(R){if(R instanceof Jz||R instanceof d5)this._logger?.info(`${R.name} when computing flag locally: ${X}: ${R.message}`);else throw R}}if(!z&&!$){let V=await super.getFeatureFlagDetailsStateless(B.distinctId,B.groups,B.personProperties,B.groupProperties,Z,[X]);if(V===void 0)E=cX1.UNKNOWN_ERROR;else{O=V.requestId,w=V.evaluatedAt;let R=[];if(V.errorsWhileComputingFlags)R.push(cX1.ERRORS_WHILE_COMPUTING);if(V.quotaLimited?.includes("feature_flags"))R.push(cX1.QUOTA_LIMITED);let k=V.flags[X];if(k===void 0)R.push(cX1.FLAG_MISSING);else{P=k.metadata?.id,q=k.metadata?.version,M=k.reason?.description??k.reason?.code;let _;if(k.metadata?.payload!==void 0)try{_=JSON.parse(k.metadata.payload)}catch{_=k.metadata.payload}N={key:X,enabled:k.enabled,variant:k.variant,payload:_}}if(R.length>0)E=R.join(",")}}if(J){let V=N===void 0?void 0:N.enabled===!1?!1:N.variant??!0,R=`${X}_${V}`;if(!(Y in this.distinctIdHasSentFlagCalls)||!this.distinctIdHasSentFlagCalls[Y].includes(R)){if(Object.keys(this.distinctIdHasSentFlagCalls).length>=this.maxCacheSize)this.distinctIdHasSentFlagCalls={};if(Array.isArray(this.distinctIdHasSentFlagCalls[Y]))this.distinctIdHasSentFlagCalls[Y].push(R);else this.distinctIdHasSentFlagCalls[Y]=[R];let k={$feature_flag:X,$feature_flag_response:V,$feature_flag_id:P,$feature_flag_version:q,$feature_flag_reason:M,locally_evaluated:z,[`$feature/${X}`]:V,$feature_flag_request_id:O,$feature_flag_evaluated_at:z?Date.now():w};if(z&&this.featureFlagsPoller){let _=this.featureFlagsPoller.getFlagDefinitionsLoadedAt();if(_!==void 0)k.$feature_flag_definitions_loaded_at=_}if(E)k.$feature_flag_error=E;this.capture({distinctId:Y,event:"$feature_flag_called",properties:k,groups:W,disableGeoip:Z})}}if(N!==void 0&&this._payloadOverrides!==void 0&&X in this._payloadOverrides)N={...N,payload:this._payloadOverrides[X]};return N}async getFeatureFlag(X,Y,G){let Q=await this._getFeatureFlagResult(X,Y,{...G,sendFeatureFlagEvents:G?.sendFeatureFlagEvents??this.options.sendFeatureFlagEvent??!0});if(Q===void 0)return;if(Q.enabled===!1)return!1;return Q.variant??!0}async getFeatureFlagPayload(X,Y,G,Q){if(this._payloadOverrides!==void 0&&X in this._payloadOverrides)return this._payloadOverrides[X];let J=await this._getFeatureFlagResult(X,Y,{...Q,sendFeatureFlagEvents:!1},G);if(J===void 0)return;return J.payload??null}async getFeatureFlagResult(X,Y,G){let{distinctId:Q,options:J}=this._resolveDistinctId(Y,G);if(!Q)return void this._logger.warn("[PostHog] distinctId is required \u2014 pass it explicitly or use withContext()");return this._getFeatureFlagResult(X,Q,{...J,sendFeatureFlagEvents:J?.sendFeatureFlagEvents??this.options.sendFeatureFlagEvent??!0})}async getRemoteConfigPayload(X){if(!this.options.personalApiKey)throw Error("Personal API key is required for remote config payload decryption");let Y=await this._requestRemoteConfigPayload(X);if(!Y)return;let G=await Y.json();if(typeof G=="string")try{return JSON.parse(G)}catch(Q){}return G}async isFeatureEnabled(X,Y,G){let Q=await this.getFeatureFlag(X,Y,G);if(Q===void 0)return;return!!Q||!1}async getAllFlags(X,Y){let{distinctId:G,options:Q}=this._resolveDistinctId(X,Y);if(!G)return this._logger.warn("[PostHog] distinctId is required to get feature flags \u2014 pass it explicitly or use withContext()"),{};return(await this.getAllFlagsAndPayloads(G,Q)).featureFlags||{}}async getAllFlagsAndPayloads(X,Y){let{distinctId:G,options:Q}=this._resolveDistinctId(X,Y);if(!G)return this._logger.warn("[PostHog] distinctId is required to get feature flags and payloads \u2014 pass it explicitly or use withContext()"),{featureFlags:{},featureFlagPayloads:{}};let{groups:J,disableGeoip:W,flagKeys:Z}=Q||{},{onlyEvaluateLocally:$,personProperties:K,groupProperties:H}=Q||{},U=this.addLocalPersonAndGroupProperties(G,J,K,H);K=U.allPersonProperties,H=U.allGroupProperties;let B=this.createFeatureFlagEvaluationContext(G,J,K,H);if($==null)$=this.options.strictLocalEvaluation??!1;let N=await this.featureFlagsPoller?.getAllFlagsAndPayloads(B,Z),z={},O={},w=!0;if(N)z=N.response,O=N.payloads,w=N.fallbackToFlags;if(w&&!$){let E=await super.getFeatureFlagsAndPayloadsStateless(B.distinctId,B.groups,B.personProperties,B.groupProperties,W,Z);z={...z,...E.flags||{}},O={...O,...E.payloads||{}}}if(this._flagOverrides!==void 0)z={...z,...this._flagOverrides};if(this._payloadOverrides!==void 0)O={...O,...this._payloadOverrides};return{featureFlags:z,featureFlagPayloads:O}}groupIdentify({groupType:X,groupKey:Y,properties:G,distinctId:Q,disableGeoip:J}){super.groupIdentifyStateless(X,Y,G,{disableGeoip:J},Q)}async reloadFeatureFlags(){await this.featureFlagsPoller?.loadFeatureFlags(!0)}overrideFeatureFlags(X){let Y=(G)=>Object.fromEntries(G.map((Q)=>[Q,!0]));if(X===!1){this._flagOverrides=void 0,this._payloadOverrides=void 0;return}if(Array.isArray(X)){this._flagOverrides=Y(X);return}if(this._isFeatureFlagOverrideOptions(X)){if("flags"in X){if(X.flags===!1)this._flagOverrides=void 0;else if(Array.isArray(X.flags))this._flagOverrides=Y(X.flags);else if(X.flags!==void 0)this._flagOverrides={...X.flags}}if("payloads"in X){if(X.payloads===!1)this._payloadOverrides=void 0;else if(X.payloads!==void 0)this._payloadOverrides={...X.payloads}}return}this._flagOverrides={...X}}_isFeatureFlagOverrideOptions(X){if(typeof X!="object"||X===null||Array.isArray(X))return!1;let Y=X;if("flags"in Y){let G=Y.flags;if(G===!1||Array.isArray(G)||typeof G=="object"&&G!==null)return!0}if("payloads"in Y){let G=Y.payloads;if(G===!1||typeof G=="object"&&G!==null)return!0}return!1}withContext(X,Y,G){if(!this.context)return Y();return this.context.run(X,Y,G)}getContext(){return this.context?.get()}enterContext(X,Y){this.context?.enter(X,Y)}async _shutdown(X){let Y=this._consumeWaitUntilCycle();await this.featureFlagsPoller?.stopPoller(X),this.errorTracking.shutdown();try{return await super._shutdown(X)}finally{Y?.()}}async _requestRemoteConfigPayload(X){if(!this.options.personalApiKey)return;let Y=`${this.host}/api/projects/@current/feature_flags/${X}/remote_config?token=${encodeURIComponent(this.apiKey)}`,G={method:"GET",headers:{...this.getCustomHeaders(),"Content-Type":"application/json",Authorization:`Bearer ${this.options.personalApiKey}`}},Q=null;if(this.options.requestTimeout&&typeof this.options.requestTimeout=="number"){let J=new AbortController;Q=Fw(()=>{J.abort()},this.options.requestTimeout),G.signal=J.signal}try{return await this.fetch(Y,G)}catch(J){this._events.emit("error",J);return}finally{if(Q)clearTimeout(Q)}}extractPropertiesFromEvent(X,Y){if(!X)return{personProperties:{},groupProperties:{}};let G={},Q={};for(let[J,W]of Object.entries(X))if(oe6(W)&&Y&&J in Y){let Z={};for(let[$,K]of Object.entries(W))Z[String($)]=String(K);Q[String(J)]=Z}else G[String(J)]=String(W);return{personProperties:G,groupProperties:Q}}async getFeatureFlagsForEvent(X,Y,G,Q){let J=Q?.personProperties||{},W=Q?.groupProperties||{},Z=Q?.flagKeys;if(Q?.onlyEvaluateLocally??this.options.strictLocalEvaluation??!1)if(!((this.featureFlagsPoller?.featureFlags?.length||0)>0))return{};else{let K={};for(let[H,U]of Object.entries(Y||{}))K[H]=String(U);return await this.getAllFlags(X,{groups:K,personProperties:J,groupProperties:W,disableGeoip:G,onlyEvaluateLocally:!0,flagKeys:Z})}if((this.featureFlagsPoller?.featureFlags?.length||0)>0){let K={};for(let[H,U]of Object.entries(Y||{}))K[H]=String(U);return await this.getAllFlags(X,{groups:K,personProperties:J,groupProperties:W,disableGeoip:G,onlyEvaluateLocally:!0,flagKeys:Z})}return(await super.getFeatureFlagsStateless(X,Y,J,W,G)).flags}addLocalPersonAndGroupProperties(X,Y,G,Q){let J={distinct_id:X,...G||{}},W={};if(Y)for(let Z of Object.keys(Y))W[Z]={$group_key:Y[Z],...Q?.[Z]||{}};return{allPersonProperties:J,allGroupProperties:W}}createFeatureFlagEvaluationContext(X,Y,G,Q){return{distinctId:X,groups:Y||{},personProperties:G||{},groupProperties:Q||{},evaluationCache:{}}}captureException(X,Y,G,Q){if(!DH.isPreviouslyCapturedError(X)){let J=Error("PostHog syntheticException");this.addPendingPromise(DH.buildEventMessage(X,{syntheticException:J},Y,G).then((W)=>this.capture({...W,uuid:Q})))}}async captureExceptionImmediate(X,Y,G){if(!DH.isPreviouslyCapturedError(X)){let Q=Error("PostHog syntheticException");return this.addPendingPromise(DH.buildEventMessage(X,{syntheticException:Q},Y,G).then((J)=>this.captureImmediate(J)))}}async prepareEventMessage(X){let{distinctId:Y,event:G,properties:Q,groups:J,sendFeatureFlags:W,timestamp:Z,disableGeoip:$,uuid:K}=X,H=this.context?.get(),U=Y||H?.distinctId,B={...this.props,...H?.properties||{},...Q||{}};if(!U)U=Iq(),B.$process_person_profile=!1;if(H?.sessionId&&!B.$session_id)B.$session_id=H.sessionId;let N=this._runBeforeSend({distinctId:U,event:G,properties:B,groups:J,sendFeatureFlags:W,timestamp:Z,disableGeoip:$,uuid:K});if(!N)return Promise.reject(null);let z=await Promise.resolve().then(async()=>{if(W){let O=typeof W=="object"?W:void 0;return await this.getFeatureFlagsForEvent(N.distinctId,J,$,O)}return N.event,{}}).then((O)=>{let w={};if(O)for(let[P,q]of Object.entries(O))w[`$feature/${P}`]=q;let E=Object.keys(O||{}).filter((P)=>O?.[P]!==!1).sort();if(E.length>0)w.$active_feature_flags=E;return w}).catch(()=>({})).then((O)=>{return{...O,...N.properties||{},$groups:N.groups||J}});if(N.event==="$pageview"&&this.options.__preview_capture_bot_pageviews&&typeof z.$raw_user_agent=="string"){if(pe6(z.$raw_user_agent,this.options.custom_blocked_useragents||[]))N.event="$bot_pageview",z.$browser_type="bot"}return{distinctId:N.distinctId,event:N.event,properties:z,options:{timestamp:N.timestamp,disableGeoip:N.disableGeoip,uuid:N.uuid}}}_runBeforeSend(X){let Y=this.options.before_send;if(!Y)return X;let G=Array.isArray(Y)?Y:[Y],Q=X;for(let J of G){if(Q=J(Q),!Q)return this._logger.info(`Event '${X.event}' was rejected in beforeSend function`),null;if(!Q.properties||Object.keys(Q.properties).length===0){let W=`Event '${Q.event}' has no properties after beforeSend function, this is likely an error.`;this._logger.warn(W)}}return Q}}});import{AsyncLocalStorage as Va5}from"async_hooks";class iN0{constructor(){this.storage=new Va5}get(){return this.storage.getStore()}run(X,Y,G){return this.storage.run(this.resolve(X,G),Y)}enter(X,Y){this.storage.enterWith(this.resolve(X,Y))}resolve(X,Y){if(Y?.fresh===!0)return X;let G=this.get()||{};return{distinctId:X.distinctId??G.distinctId,sessionId:X.sessionId??G.sessionId,properties:{...G.properties||{},...X.properties||{}}}}}var u04=()=>{};function ja5(X,{organization:Y,projectId:G,prefix:Q,severityAllowList:J=["error"],sendExceptionsToPostHog:W=!0}={}){return(Z)=>{if(!(J==="*"||J.includes(Z.level)))return Z;if(!Z.tags)Z.tags={};let K=Z.tags[l04.POSTHOG_ID_TAG];if(K===void 0)return Z;let H=X.options.host??"https://us.i.posthog.com",U=new URL(`/project/${X.apiKey}/person/${K}`,H).toString();Z.tags["PostHog Person URL"]=U;let B=Z.exception?.values||[],N=B.map((O)=>({...O,stacktrace:O.stacktrace?{...O.stacktrace,type:"raw",frames:(O.stacktrace.frames||[]).map((w)=>({...w,platform:"node:javascript"}))}:void 0})),z={$exception_message:B[0]?.value||Z.message,$exception_type:B[0]?.type,$exception_level:Z.level,$exception_list:N,$sentry_event_id:Z.event_id,$sentry_exception:Z.exception,$sentry_exception_message:B[0]?.value||Z.message,$sentry_exception_type:B[0]?.type,$sentry_tags:Z.tags};if(Y&&G)z.$sentry_url=(Q||"https://sentry.io/organizations/")+Y+"/issues/?project="+G+"&query="+Z.event_id;if(W)X.capture({event:"$exception",distinctId:K,properties:z});return Z}}var l04;var m04=D(()=>{l04=class l04{static#X=this.POSTHOG_ID_TAG="posthog_distinct_id";constructor(X,Y,G,Q,J){this.name="posthog-node",this.name="posthog-node",this.setupOnce=function(W,Z){let $=Z()?.getClient()?.getDsn()?.projectId;W(ja5(X,{organization:Y,projectId:$,prefix:G,severityAllowList:Q,sendExceptionsToPostHog:J??!0}))}}}});var d04=D(()=>{KT1()});var c04=D(()=>{_j();m04();d04();lN0()});var pN0;var i04=D(()=>{me6();P04();A04();KT1();g04();_j();u04();c04();DH.errorPropertiesBuilder=new qW.ErrorPropertiesBuilder([new qW.EventCoercer,new qW.ErrorCoercer,new qW.ObjectCoercer,new qW.StringCoercer,new qW.PrimitiveCoercer],qW.createStackParser("node:javascript",qW.nodeStackLineParser),[le6(),w04,q04()]);pN0=class pN0 extends cN0{getLibraryId(){return"posthog-node"}initializeContext(){return new iN0}}});function Ma5(){return{capture:()=>{},identify:()=>{},captureException:()=>{},groupIdentify:()=>{},shutdown:async()=>{}}}var nN0,p04,j4;var RX=D(()=>{i04();nN0=process.env.POSTHOG_KEY,p04=process.env.POSTHOG_HOST;j4=nN0?new pN0(nN0,{...p04?{host:p04}:{},enableExceptionAutocapture:!0,flushAt:1,flushInterval:0}):Ma5();if(nN0){let X=()=>{j4.shutdown().catch(()=>{})};process.on("SIGTERM",X),process.on("SIGINT",X)}});function u$(){let X=v6();if(X.baseUrl)return X.baseUrl;return`http://localhost:${X.port??3000}`}function iX1(){return`http://localhost:${v6().port??3000}`}var Uw=D(()=>{m9()});var n04=D(()=>{bV()});function a04(X){return{organizationId:X.organization_id,domain:X.domain,autoJoinEnabled:X.auto_join_enabled,createdAt:X.created_at,updatedAt:X.updated_at}}class Bw{db;constructor(X){this.db=X}async getByDomain(X){let Y=await this.db.selectFrom("organization_domains").selectAll().where("domain","=",X.toLowerCase()).executeTakeFirst();return Y?a04(Y):null}async getByOrganizationId(X){let Y=await this.db.selectFrom("organization_domains").selectAll().where("organization_id","=",X).executeTakeFirst();return Y?a04(Y):null}async setDomain(X,Y,G=!1){let Q=new Date().toISOString(),J=Y.toLowerCase();try{await this.db.insertInto("organization_domains").values({organization_id:X,domain:J,auto_join_enabled:G,created_at:Q,updated_at:Q}).onConflict((Z)=>Z.column("organization_id").doUpdateSet({domain:J,auto_join_enabled:G,updated_at:Q})).execute()}catch(Z){if(Z.code==="23505")throw Error(`Domain "${J}" is already claimed by another organization.`);throw Z}let W=await this.getByOrganizationId(X);if(!W)throw Error("Failed to set domain");return W}async updateAutoJoin(X,Y){let G=new Date().toISOString();await this.db.updateTable("organization_domains").set({auto_join_enabled:Y,updated_at:G}).where("organization_id","=",X).execute();let Q=await this.getByOrganizationId(X);if(!Q)throw Error("No domain found for organization");return Q}async clearDomain(X){await this.db.deleteFrom("organization_domains").where("organization_id","=",X).execute()}}class aN0{apiKey;constructor(X){this.apiKey=X}async sendEmail({to:X,from:Y,subject:G,html:Q}){let J=await fetch("https://api.resend.com/emails",{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.apiKey}`},body:JSON.stringify({to:X,from:Y,subject:G,html:Q})});if(!J.ok)throw Error(`Failed to send email: ${J.statusText}`)}}class tN0{apiKey;constructor(X){this.apiKey=X}async sendEmail({to:X,from:Y,subject:G,html:Q}){let J=await fetch("https://api.sendgrid.com/v3/mail/send",{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.apiKey}`},body:JSON.stringify({personalizations:[{to:[{email:X}]}],from:{email:Y},subject:G,content:[{type:"text/html",value:Q}]})});if(!J.ok){let W=await J.text();throw Error(`Failed to send email via SendGrid: ${J.statusText} - ${W}`)}}}function fj(X){let Y=Ca5[X.provider];if(!Y)throw Error(`Unknown email provider: ${X.provider}`);return Y(X)}function bj(X,Y){return X.find((G)=>G.id===Y)}var Ra5=(X)=>{let Y=new aN0(X.config.apiKey);return async({to:G,subject:Q,html:J})=>{await Y.sendEmail({to:G,from:X.config.fromEmail,subject:Q,html:J})}},Sa5=(X)=>{let Y=new tN0(X.config.apiKey);return async({to:G,subject:Q,html:J})=>{await Y.sendEmail({to:G,from:X.config.fromEmail,subject:Q,html:J})}},Ca5;var HT1=D(()=>{Ca5={resend:Ra5,sendgrid:Sa5}});function yj({preheader:X="",heading:Y,subheading:G,body:Q,footnote:J}){return`<!DOCTYPE html>
1641
1641
  <html lang="en">
1642
1642
  <head>
@@ -2340,7 +2340,7 @@ Reference: https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-sso.ht
2340
2340
  AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY pair.
2341
2341
  `),HM4=!0}throw new hR1.CredentialsProviderError("AWS_PROFILE is set, skipping fromEnv provider.",{logger:X.logger,tryNextLink:!0})}return X.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromEnv"),kT0(X)()},async(Y)=>{X.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromSSO");let{ssoStartUrl:G,ssoAccountId:Q,ssoRegion:J,ssoRoleName:W,ssoSession:Z}=X;if(!G&&!Q&&!J&&!W&&!Z)throw new hR1.CredentialsProviderError("Skipping SSO provider in default chain (inputs do not include SSO fields).",{logger:X.logger});let{fromSSO:$}=await Promise.resolve().then(() => (mI0(),lI0));return $(X)(Y)},async(Y)=>{X.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromIni");let{fromIni:G}=await Promise.resolve().then(() => (KM4(),$M4));return G(X)(Y)},async(Y)=>{X.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromProcess");let{fromProcess:G}=await Promise.resolve().then(() => (cV0(),dV0));return G(X)(Y)},async(Y)=>{X.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromTokenFile");let{fromTokenFile:G}=await Promise.resolve().then(() => (rV0(),tV0));return G(X)(Y)},async()=>{return X.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::remoteProvider"),(await jq4(X))()},async()=>{throw new hR1.CredentialsProviderError("Could not load credentials from any providers",{tryNextLink:!1,logger:X.logger})}],td9),td9=(X)=>X?.expiration!==void 0&&X.expiration.getTime()-Date.now()<300000;var BM4=D(()=>{vT0();Mq4();hR1=Y1(m7(),1),FM4=Y1(q3(),1)});var NM4=D(()=>{BM4()});var zM4=()=>{};var xo,rd9="AWS_S3_USE_ARN_REGION",od9="s3_use_arn_region",OM4;var DM4=D(()=>{xo=Y1(xJ1(),1),OM4={environmentVariableSelector:(X)=>xo.booleanSelector(X,rd9,xo.SelectorType.ENV),configFileSelector:(X)=>xo.booleanSelector(X,od9,xo.SelectorType.CONFIG),default:void 0}});var wM4=()=>{};var LM4=()=>{};var EM4=D(()=>{zM4();DM4();LM4();wM4()});class ho{bytes;constructor(X){if(this.bytes=X,X.byteLength!==8)throw Error("Int64 buffers must be exactly 8 bytes")}static fromNumber(X){if(X>9223372036854776000||X<-9223372036854776000)throw Error(`${X} is too large (or, if negative, too small) to represent as an Int64`);let Y=new Uint8Array(8);for(let G=7,Q=Math.abs(Math.round(X));G>-1&&Q>0;G--,Q/=256)Y[G]=Q;if(X<0)PM4(Y);return new ho(Y)}valueOf(){let X=this.bytes.slice(0),Y=X[0]&128;if(Y)PM4(X);return parseInt(qM4.toHex(X),16)*(Y?-1:1)}toString(){return String(this.valueOf())}}function PM4(X){for(let Y=0;Y<8;Y++)X[Y]^=255;for(let Y=7;Y>-1;Y--)if(X[Y]++,X[Y]!==0)break}var qM4;var sV0=D(()=>{qM4=Y1($J1(),1)});class eV0{toUtf8;fromUtf8;constructor(X,Y){this.toUtf8=X,this.fromUtf8=Y}format(X){let Y=[];for(let J of Object.keys(X)){let W=this.fromUtf8(J);Y.push(Uint8Array.from([W.byteLength]),W,this.formatHeaderValue(X[J]))}let G=new Uint8Array(Y.reduce((J,W)=>J+W.byteLength,0)),Q=0;for(let J of Y)G.set(J,Q),Q+=J.byteLength;return G}formatHeaderValue(X){switch(X.type){case"boolean":return Uint8Array.from([X.value?0:1]);case"byte":return Uint8Array.from([2,X.value]);case"short":let Y=new DataView(new ArrayBuffer(3));return Y.setUint8(0,3),Y.setInt16(1,X.value,!1),new Uint8Array(Y.buffer);case"integer":let G=new DataView(new ArrayBuffer(5));return G.setUint8(0,4),G.setInt32(1,X.value,!1),new Uint8Array(G.buffer);case"long":let Q=new Uint8Array(9);return Q[0]=5,Q.set(X.value.bytes,1),Q;case"binary":let J=new DataView(new ArrayBuffer(3+X.value.byteLength));J.setUint8(0,6),J.setUint16(1,X.value.byteLength,!1);let W=new Uint8Array(J.buffer);return W.set(X.value,3),W;case"string":let Z=this.fromUtf8(X.value),$=new DataView(new ArrayBuffer(3+Z.byteLength));$.setUint8(0,7),$.setUint16(1,Z.byteLength,!1);let K=new Uint8Array($.buffer);return K.set(Z,3),K;case"timestamp":let H=new Uint8Array(9);return H[0]=8,H.set(ho.fromNumber(X.value.valueOf()).bytes,1),H;case"uuid":if(!Wc9.test(X.value))throw Error(`Invalid UUID received: ${X.value}`);let U=new Uint8Array(17);return U[0]=9,U.set(iA.fromHex(X.value.replace(/\-/g,"")),1),U}}parse(X){let Y={},G=0;while(G<X.byteLength){let Q=X.getUint8(G++),J=this.toUtf8(new Uint8Array(X.buffer,X.byteOffset+G,Q));switch(G+=Q,X.getUint8(G++)){case 0:Y[J]={type:TM4,value:!0};break;case 1:Y[J]={type:TM4,value:!1};break;case 2:Y[J]={type:sd9,value:X.getInt8(G++)};break;case 3:Y[J]={type:ed9,value:X.getInt16(G,!1)},G+=2;break;case 4:Y[J]={type:Xc9,value:X.getInt32(G,!1)},G+=4;break;case 5:Y[J]={type:Yc9,value:new ho(new Uint8Array(X.buffer,X.byteOffset+G,8))},G+=8;break;case 6:let W=X.getUint16(G,!1);G+=2,Y[J]={type:Gc9,value:new Uint8Array(X.buffer,X.byteOffset+G,W)},G+=W;break;case 7:let Z=X.getUint16(G,!1);G+=2,Y[J]={type:Qc9,value:this.toUtf8(new Uint8Array(X.buffer,X.byteOffset+G,Z))},G+=Z;break;case 8:Y[J]={type:Jc9,value:new Date(new ho(new Uint8Array(X.buffer,X.byteOffset+G,8)).valueOf())},G+=8;break;case 9:let $=new Uint8Array(X.buffer,X.byteOffset+G,16);G+=16,Y[J]={type:Zc9,value:`${iA.toHex($.subarray(0,4))}-${iA.toHex($.subarray(4,6))}-${iA.toHex($.subarray(6,8))}-${iA.toHex($.subarray(8,10))}-${iA.toHex($.subarray(10))}`};break;default:throw Error("Unrecognized header type tag")}}return Y}}var iA,AM4,TM4="boolean",sd9="byte",ed9="short",Xc9="integer",Yc9="long",Gc9="binary",Qc9="string",Jc9="timestamp",Zc9="uuid",Wc9;var X20=D(()=>{sV0();iA=Y1($J1(),1);(function(X){X[X.boolTrue=0]="boolTrue",X[X.boolFalse=1]="boolFalse",X[X.byte=2]="byte",X[X.short=3]="short",X[X.integer=4]="integer",X[X.long=5]="long",X[X.byteArray=6]="byteArray",X[X.string=7]="string",X[X.timestamp=8]="timestamp",X[X.uuid=9]="uuid"})(AM4||(AM4={}));Wc9=/^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/});function VM4({byteLength:X,byteOffset:Y,buffer:G}){if(X<$c9)throw Error("Provided message too short to accommodate event stream message overhead");let Q=new DataView(G,Y,X),J=Q.getUint32(0,!1);if(X!==J)throw Error("Reported message length does not match received message length");let W=Q.getUint32(IM4,!1),Z=Q.getUint32(pA,!1),$=Q.getUint32(X-kR,!1),K=new oM().update(new Uint8Array(G,Y,pA));if(Z!==K.digest())throw Error(`The prelude checksum specified in the message (${Z}) does not match the calculated CRC32 checksum (${K.digest()})`);if(K.update(new Uint8Array(G,Y+pA,X-(pA+kR))),$!==K.digest())throw Error(`The message checksum (${K.digest()}) did not match the expected value of ${$}`);return{headers:new DataView(G,Y+pA+kR,W),body:new Uint8Array(G,Y+pA+kR+W,J-W-(pA+kR+kR))}}var IM4=4,pA,kR=4,$c9;var jM4=D(()=>{zJ1();pA=IM4*2,$c9=pA+kR*2});class Y20{headerMarshaller;messageBuffer;isEndOfStream;constructor(X,Y){this.headerMarshaller=new eV0(X,Y),this.messageBuffer=[],this.isEndOfStream=!1}feed(X){this.messageBuffer.push(this.decode(X))}endOfStream(){this.isEndOfStream=!0}getMessage(){let X=this.messageBuffer.pop(),Y=this.isEndOfStream;return{getMessage(){return X},isEndOfStream(){return Y}}}getAvailableMessages(){let X=this.messageBuffer;this.messageBuffer=[];let Y=this.isEndOfStream;return{getMessages(){return X},isEndOfStream(){return Y}}}encode({headers:X,body:Y}){let G=this.headerMarshaller.format(X),Q=G.byteLength+Y.byteLength+16,J=new Uint8Array(Q),W=new DataView(J.buffer,J.byteOffset,J.byteLength),Z=new oM;return W.setUint32(0,Q,!1),W.setUint32(4,G.byteLength,!1),W.setUint32(8,Z.update(J.subarray(0,8)).digest(),!1),J.set(G,12),J.set(Y,G.byteLength+12),W.setUint32(Q-4,Z.update(J.subarray(8,Q-4)).digest(),!1),J}decode(X){let{headers:Y,body:G}=VM4(X);return{headers:this.headerMarshaller.parse(Y),body:G}}formatHeaders(X){return this.headerMarshaller.format(X)}}var MM4=D(()=>{zJ1();X20();jM4()});var RM4=()=>{};var G20;var SM4=D(()=>{G20=class G20{options;constructor(X){this.options=X}[Symbol.asyncIterator](){return this.asyncIterator()}async*asyncIterator(){for await(let X of this.options.inputStream)yield this.options.decoder.decode(X)}}});var Q20;var CM4=D(()=>{Q20=class Q20{options;constructor(X){this.options=X}[Symbol.asyncIterator](){return this.asyncIterator()}async*asyncIterator(){for await(let X of this.options.messageStream)yield this.options.encoder.encode(X);if(this.options.includeEndFrame)yield new Uint8Array(0)}}});var J20;var kM4=D(()=>{J20=class J20{options;constructor(X){this.options=X}[Symbol.asyncIterator](){return this.asyncIterator()}async*asyncIterator(){for await(let X of this.options.messageStream){let Y=await this.options.deserializer(X);if(Y===void 0)continue;yield Y}}}});var Z20;var vM4=D(()=>{Z20=class Z20{options;constructor(X){this.options=X}[Symbol.asyncIterator](){return this.asyncIterator()}async*asyncIterator(){for await(let X of this.options.inputStream)yield this.options.serializer(X)}}});var _M4=D(()=>{MM4();X20();sV0();RM4();SM4();CM4();kM4();vM4()});function fM4(X){let Y=0,G=0,Q=null,J=null,W=($)=>{if(typeof $!=="number")throw Error("Attempted to allocate an event message where size was not a number: "+$);Y=$,G=4,Q=new Uint8Array($),new DataView(Q.buffer).setUint32(0,$,!1)},Z=async function*(){let $=X[Symbol.asyncIterator]();while(!0){let{value:K,done:H}=await $.next();if(H){if(!Y)return;else if(Y===G)yield Q;else throw Error("Truncated event message received.");return}let U=K.length,B=0;while(B<U){if(!Q){let z=U-B;if(!J)J=new Uint8Array(4);let O=Math.min(4-G,z);if(J.set(K.slice(B,B+O),G),G+=O,B+=O,G<4)break;W(new DataView(J.buffer).getUint32(0,!1)),J=null}let N=Math.min(Y-G,U-B);if(Q.set(K.slice(B,B+N),G),G+=N,B+=N,Y&&Y===G)yield Q,Q=null,Y=0,G=0}}};return{[Symbol.asyncIterator]:Z}}function bM4(X,Y){return async function(G){let{value:Q}=G.headers[":message-type"];if(Q==="error"){let J=Error(G.headers[":error-message"].value||"UnknownError");throw J.name=G.headers[":error-code"].value,J}else if(Q==="exception"){let J=G.headers[":exception-type"].value,W={[J]:G},Z=await X(W);if(Z.$unknown){let $=Error(Y(G.body));throw $.name=J,$}throw Z[J]}else if(Q==="event"){let J={[G.headers[":event-type"].value]:G},W=await X(J);if(W.$unknown)return;return W}else throw Error(`Unrecognizable event type: ${G.headers[":event-type"].value}`)}}class W20{eventStreamCodec;utfEncoder;constructor({utf8Encoder:X,utf8Decoder:Y}){this.eventStreamCodec=new Y20(X,Y),this.utfEncoder=X}deserialize(X,Y){let G=fM4(X);return new J20({messageStream:new G20({inputStream:G,decoder:this.eventStreamCodec}),deserializer:bM4(Y,this.utfEncoder)})}serialize(X,Y){return new Q20({messageStream:new Z20({inputStream:X,serializer:Y}),encoder:this.eventStreamCodec,includeEndFrame:!0})}}var yM4=D(()=>{_M4()});var xM4=()=>{};var hM4=D(()=>{yM4();xM4()});async function*gM4(X){let Y=!1,G=!1,Q=[];X.on("error",(J)=>{if(!Y)Y=!0;if(J)throw J}),X.on("data",(J)=>{Q.push(J)}),X.on("end",()=>{Y=!0});while(!G){let J=await new Promise((W)=>setTimeout(()=>W(Q.shift()),0));if(J)yield J;G=Y&&Q.length===0}}import{Readable as Kc9}from"stream";class $20{universalMarshaller;constructor({utf8Encoder:X,utf8Decoder:Y}){this.universalMarshaller=new W20({utf8Decoder:Y,utf8Encoder:X})}deserialize(X,Y){let G=typeof X[Symbol.asyncIterator]==="function"?X:gM4(X);return this.universalMarshaller.deserialize(G,Y)}serialize(X,Y){return Kc9.from(this.universalMarshaller.serialize(X,Y))}}var K20=D(()=>{hM4()});var uM4=(X)=>new $20(X);var lM4=D(()=>{K20()});var mM4=D(()=>{K20();lM4()});import{Writable as Hc9}from"stream";var dM4,H20;var cM4=D(()=>{dM4=Y1(KJ(),1);H20=class H20 extends Hc9{hash;constructor(X,Y){super(Y);this.hash=X}_write(X,Y,G){try{this.hash.update(dM4.toUint8Array(X))}catch(Q){return G(Q)}G()}}});var iM4=()=>{};var pM4=(X,Y)=>{if(Y.readableFlowing!==null)throw Error("Unable to calculate hash for flowing readable stream");let G=new X,Q=new H20(G);return Y.pipe(Q),new Promise((J,W)=>{Y.on("error",(Z)=>{Q.end(),W(Z)}),Q.on("error",W),Q.on("finish",()=>{G.digest().then(J).catch(W)})})};var nM4=D(()=>{cM4()});var aM4=D(()=>{iM4();nM4()});var gR1,tM4,rM4,oM4,sM4,uR1,lR1,mR1,eM4=(X)=>{return{apiVersion:"2006-03-01",base64Decoder:X?.base64Decoder??uR1.fromBase64,base64Encoder:X?.base64Encoder??uR1.toBase64,disableHostPrefix:X?.disableHostPrefix??!1,endpointProvider:X?.endpointProvider??EM1,extensions:X?.extensions??[],getAwsChunkedEncodingStream:X?.getAwsChunkedEncodingStream??lR1.getAwsChunkedEncodingStream,httpAuthSchemeProvider:X?.httpAuthSchemeProvider??JL4,httpAuthSchemes:X?.httpAuthSchemes??[{schemeId:"aws.auth#sigv4",identityProvider:(Y)=>Y.getIdentityProvider("aws.auth#sigv4"),signer:new gR1.AwsSdkSigV4Signer},{schemeId:"aws.auth#sigv4a",identityProvider:(Y)=>Y.getIdentityProvider("aws.auth#sigv4a"),signer:new gR1.AwsSdkSigV4ASigner}],logger:X?.logger??new oM4.NoOpLogger,protocol:X?.protocol??tM4.S3RestXmlProtocol,protocolSettings:X?.protocolSettings??{defaultNamespace:"com.amazonaws.s3",errorTypeRegistries:FL4,xmlNamespace:"http://s3.amazonaws.com/doc/2006-03-01/",version:"2006-03-01",serviceTarget:"AmazonS3"},sdkStreamMixin:X?.sdkStreamMixin??lR1.sdkStreamMixin,serviceId:X?.serviceId??"S3",signerConstructor:X?.signerConstructor??rM4.SignatureV4MultiRegion,signingEscapePath:X?.signingEscapePath??!1,urlParser:X?.urlParser??sM4.parseUrl,useArnRegion:X?.useArnRegion??void 0,utf8Decoder:X?.utf8Decoder??mR1.fromUtf8,utf8Encoder:X?.utf8Encoder??mR1.toUtf8}};var XR4=D(()=>{LT0();wT0();c0();gR1=Y1(WZ(),1),tM4=Y1(m6(),1),rM4=Y1(wo(),1),oM4=Y1(R0(),1),sM4=Y1(Vz(),1),uR1=Y1(kW(),1),lR1=Y1(pr(),1),mR1=Y1(KJ(),1)});var YR4,cR1,GR4,iR1,nA,dR1,pR1,WK,nR1,aR1,QR4,JR4,ZR4,WR4=(X)=>{aR1.emitWarningIfUnsupportedVersion(process.version);let Y=JR4.resolveDefaultsModeConfig(X),G=()=>Y().then(aR1.loadConfigsForDefaultMode),Q=eM4(X);YR4.emitWarningIfUnsupportedVersion(process.version);let J={profile:X?.profile,logger:Q.logger};return{...Q,...X,runtime:"node",defaultsMode:Y,authSchemePreference:X?.authSchemePreference??WK.loadConfig(cR1.NODE_AUTH_SCHEME_PREFERENCE_OPTIONS,J),bodyLengthChecker:X?.bodyLengthChecker??QR4.calculateBodyLength,credentialDefaultProvider:X?.credentialDefaultProvider??UM4,defaultUserAgentProvider:X?.defaultUserAgentProvider??iR1.createDefaultUserAgentProvider({serviceId:Q.serviceId,clientVersion:uP4.version}),disableS3ExpressSessionAuth:X?.disableS3ExpressSessionAuth??WK.loadConfig(GR4.NODE_DISABLE_S3_EXPRESS_SESSION_AUTH_OPTIONS,J),eventStreamSerdeProvider:X?.eventStreamSerdeProvider??uM4,maxAttempts:X?.maxAttempts??WK.loadConfig(pR1.NODE_MAX_ATTEMPT_CONFIG_OPTIONS,X),md5:X?.md5??dR1.Hash.bind(null,"md5"),region:X?.region??WK.loadConfig(nA.NODE_REGION_CONFIG_OPTIONS,{...nA.NODE_REGION_CONFIG_FILE_OPTIONS,...J}),requestChecksumCalculation:X?.requestChecksumCalculation??WK.loadConfig(qH4,J),requestHandler:nR1.NodeHttpHandler.create(X?.requestHandler??G),responseChecksumValidation:X?.responseChecksumValidation??WK.loadConfig(TH4,J),retryMode:X?.retryMode??WK.loadConfig({...pR1.NODE_RETRY_MODE_CONFIG_OPTIONS,default:async()=>(await G()).retryMode||ZR4.DEFAULT_RETRY_MODE},X),sha1:X?.sha1??dR1.Hash.bind(null,"sha1"),sha256:X?.sha256??dR1.Hash.bind(null,"sha256"),sigv4aSigningRegionSet:X?.sigv4aSigningRegionSet??WK.loadConfig(cR1.NODE_SIGV4A_CONFIG_OPTIONS,J),streamCollector:X?.streamCollector??nR1.streamCollector,streamHasher:X?.streamHasher??pM4,useArnRegion:X?.useArnRegion??WK.loadConfig(OM4,J),useDualstackEndpoint:X?.useDualstackEndpoint??WK.loadConfig(nA.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS,J),useFipsEndpoint:X?.useFipsEndpoint??WK.loadConfig(nA.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS,J),userAgentAppId:X?.userAgentAppId??WK.loadConfig(iR1.NODE_APP_ID_CONFIG_OPTIONS,J)}};var $R4=D(()=>{gP4();NM4();EM4();W9();mM4();aM4();XR4();YR4=Y1($X(),1),cR1=Y1(WZ(),1),GR4=Y1(m6(),1),iR1=Y1(Io(),1),nA=Y1(fW(),1),dR1=Y1(Vo(),1),pR1=Y1(iU(),1),WK=Y1(cU(),1),nR1=Y1(IA(),1),aR1=Y1(R0(),1),QR4=Y1(jo(),1),JR4=Y1(Mo(),1),ZR4=Y1(uw(),1)});var KR4=(X)=>{let{httpAuthSchemes:Y,httpAuthSchemeProvider:G,credentials:Q}=X;return{setHttpAuthScheme(J){let W=Y.findIndex((Z)=>Z.schemeId===J.schemeId);if(W===-1)Y.push(J);else Y.splice(W,1,J)},httpAuthSchemes(){return Y},setHttpAuthSchemeProvider(J){G=J},httpAuthSchemeProvider(){return G},setCredentials(J){Q=J},credentials(){return Q}}},HR4=(X)=>{return{httpAuthSchemes:X.httpAuthSchemes(),httpAuthSchemeProvider:X.httpAuthSchemeProvider(),credentials:X.credentials()}};var tR1,rR1,oR1,FR4=(X,Y)=>{let G=Object.assign(tR1.getAwsRegionExtensionConfiguration(X),oR1.getDefaultExtensionConfiguration(X),rR1.getHttpHandlerExtensionConfiguration(X),KR4(X));return Y.forEach((Q)=>Q.configure(G)),Object.assign(X,tR1.resolveAwsRegionExtensionConfiguration(G),oR1.resolveDefaultRuntimeConfig(G),rR1.resolveHttpHandlerRuntimeConfig(G),HR4(G))};var UR4=D(()=>{tR1=Y1(zR(),1),rR1=Y1(l7(),1),oR1=Y1(R0(),1)});var sR1,BR4,NR4,Cz,eR1,zR4,go,OR4,DR4,wR4,XS1,LR4,$K;var vR=D(()=>{EH4();W9();sO4();LT0();hM1();p0();$R4();UR4();sR1=Y1(rr(),1),BR4=Y1(or(),1),NR4=Y1(sr(),1),Cz=Y1(m6(),1),eR1=Y1(KR(),1),zR4=Y1(fW(),1),go=Y1(PG(),1),OR4=Y1(QZ(),1),DR4=Y1(No(),1),wR4=Y1(h0(),1),XS1=Y1(iU(),1),LR4=Y1(R0(),1);$K=class $K extends LR4.Client{config;constructor(...[X]){let Y=WR4(X||{});super(Y);this.initConfig=Y;let G=WL4(Y),Q=eR1.resolveUserAgentConfig(G),J=qB4(Q),W=XS1.resolveRetryConfig(J),Z=zR4.resolveRegionConfig(W),$=sR1.resolveHostHeaderConfig(Z),K=wR4.resolveEndpointConfig($),H=oO4(K),U=ZL4(H),B=Cz.resolveS3Config(U,{session:[()=>this,tJ1]}),N=FR4(B,X?.extensions||[]);this.config=N,this.middlewareStack.use(OR4.getSchemaSerdePlugin(this.config)),this.middlewareStack.use(eR1.getUserAgentPlugin(this.config)),this.middlewareStack.use(XS1.getRetryPlugin(this.config)),this.middlewareStack.use(DR4.getContentLengthPlugin(this.config)),this.middlewareStack.use(sR1.getHostHeaderPlugin(this.config)),this.middlewareStack.use(BR4.getLoggerPlugin(this.config)),this.middlewareStack.use(NR4.getRecursionDetectionPlugin(this.config)),this.middlewareStack.use(go.getHttpAuthSchemeEndpointRuleSetPlugin(this.config,{httpAuthSchemeParametersProvider:YL4,identityProviderConfigProvider:async(z)=>new go.DefaultIdentityProviderConfig({"aws.auth#sigv4":z.credentials,"aws.auth#sigv4a":z.credentials})})),this.middlewareStack.use(go.getHttpSigningPlugin(this.config)),this.middlewareStack.use(Cz.getValidateBucketNamePlugin(this.config)),this.middlewareStack.use(LH4(this.config)),this.middlewareStack.use(Cz.getRegionRedirectMiddlewarePlugin(this.config)),this.middlewareStack.use(Cz.getS3ExpressPlugin(this.config)),this.middlewareStack.use(Cz.getS3ExpressHttpSigningPlugin(this.config))}destroy(){super.destroy()}}});var ER4,PR4,qR4,F20;var U20=D(()=>{p0();c0();ER4=Y1(m6(),1),PR4=Y1(h0(),1),qR4=Y1(R0(),1);F20=class F20 extends qR4.Command.classBuilder().ep({...t1,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function(X,Y,G,Q){return[PR4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),ER4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","AbortMultipartUpload",{}).n("S3Client","AbortMultipartUploadCommand").sc(xL4).build(){}});function Fc9(X){return(Y)=>async(G)=>{let Q={...G.input},J=[{target:"SSECustomerKey",hash:"SSECustomerKeyMD5"},{target:"CopySourceSSECustomerKey",hash:"CopySourceSSECustomerKeyMD5"}];for(let W of J){let Z=Q[W.target];if(Z){let $;if(typeof Z==="string")if(Bc9(Z,X))$=X.base64Decoder(Z);else $=X.utf8Decoder(Z),Q[W.target]=X.base64Encoder($);else $=ArrayBuffer.isView(Z)?new Uint8Array(Z.buffer,Z.byteOffset,Z.byteLength):new Uint8Array(Z),Q[W.target]=X.base64Encoder($);let K=new X.md5;K.update($),Q[W.hash]=X.base64Encoder(await K.digest())}}return Y({...G,input:Q})}}function Bc9(X,Y){if(!/^(?:[A-Za-z0-9+/]{4})*([A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(X))return!1;try{return Y.base64Decoder(X).length===32}catch{return!1}}var Uc9,QY=(X)=>({applyToStack:(Y)=>{Y.add(Fc9(X),Uc9)}});var mH=D(()=>{Uc9={name:"ssecMiddleware",step:"initialize",tags:["SSE"],override:!0}});var AR4,TR4,IR4,B20;var N20=D(()=>{mH();p0();c0();AR4=Y1(m6(),1),TR4=Y1(h0(),1),IR4=Y1(R0(),1);B20=class B20 extends IR4.Command.classBuilder().ep({...t1,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function(X,Y,G,Q){return[TR4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),AR4.getThrow200ExceptionsPlugin(G),QY(G)]}).s("AmazonS3","CompleteMultipartUpload",{}).n("S3Client","CompleteMultipartUploadCommand").sc(hL4).build(){}});var VR4,jR4,MR4,z20;var O20=D(()=>{mH();p0();c0();VR4=Y1(m6(),1),jR4=Y1(h0(),1),MR4=Y1(R0(),1);z20=class z20 extends MR4.Command.classBuilder().ep({...t1,DisableS3ExpressSessionAuth:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"},CopySource:{type:"contextParams",name:"CopySource"}}).m(function(X,Y,G,Q){return[jR4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),VR4.getThrow200ExceptionsPlugin(G),QY(G)]}).s("AmazonS3","CopyObject",{}).n("S3Client","CopyObjectCommand").sc(gL4).build(){}});function Nc9(X){return(Y)=>async(G)=>{let{CreateBucketConfiguration:Q}=G.input,J=await X.region();if(!Q?.LocationConstraint&&!Q?.Location){if(J!=="us-east-1")G.input.CreateBucketConfiguration=G.input.CreateBucketConfiguration??{},G.input.CreateBucketConfiguration.LocationConstraint=J}return Y(G)}}var zc9,RR4=(X)=>({applyToStack:(Y)=>{Y.add(Nc9(X),zc9)}});var SR4=D(()=>{zc9={step:"initialize",tags:["LOCATION_CONSTRAINT","CREATE_BUCKET_CONFIGURATION"],name:"locationConstraintMiddleware",override:!0}});var CR4,kR4,vR4,D20;var w20=D(()=>{SR4();p0();c0();CR4=Y1(m6(),1),kR4=Y1(h0(),1),vR4=Y1(R0(),1);D20=class D20 extends vR4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},DisableAccessPoints:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[kR4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),CR4.getThrow200ExceptionsPlugin(G),RR4(G)]}).s("AmazonS3","CreateBucket",{}).n("S3Client","CreateBucketCommand").sc(uL4).build(){}});var _R4,fR4,L20;var E20=D(()=>{W9();p0();c0();_R4=Y1(h0(),1),fR4=Y1(R0(),1);L20=class L20 extends fR4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[_R4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),L4(G,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","CreateBucketMetadataConfiguration",{}).n("S3Client","CreateBucketMetadataConfigurationCommand").sc(lL4).build(){}});var bR4,yR4,P20;var q20=D(()=>{W9();p0();c0();bR4=Y1(h0(),1),yR4=Y1(R0(),1);P20=class P20 extends yR4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[bR4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),L4(G,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","CreateBucketMetadataTableConfiguration",{}).n("S3Client","CreateBucketMetadataTableConfigurationCommand").sc(mL4).build(){}});var xR4,hR4,gR4,A20;var T20=D(()=>{mH();p0();c0();xR4=Y1(m6(),1),hR4=Y1(h0(),1),gR4=Y1(R0(),1);A20=class A20 extends gR4.Command.classBuilder().ep({...t1,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function(X,Y,G,Q){return[hR4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),xR4.getThrow200ExceptionsPlugin(G),QY(G)]}).s("AmazonS3","CreateMultipartUpload",{}).n("S3Client","CreateMultipartUploadCommand").sc(dL4).build(){}});var uR4,lR4,I20;var V20=D(()=>{p0();c0();uR4=Y1(h0(),1),lR4=Y1(R0(),1);I20=class I20 extends lR4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[uR4.getEndpointPlugin(G,X.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketAnalyticsConfiguration",{}).n("S3Client","DeleteBucketAnalyticsConfigurationCommand").sc(pL4).build(){}});var mR4,dR4,j20;var M20=D(()=>{p0();c0();mR4=Y1(h0(),1),dR4=Y1(R0(),1);j20=class j20 extends dR4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[mR4.getEndpointPlugin(G,X.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucket",{}).n("S3Client","DeleteBucketCommand").sc(iL4).build(){}});var cR4,iR4,R20;var S20=D(()=>{p0();c0();cR4=Y1(h0(),1),iR4=Y1(R0(),1);R20=class R20 extends iR4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[cR4.getEndpointPlugin(G,X.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketCors",{}).n("S3Client","DeleteBucketCorsCommand").sc(nL4).build(){}});var pR4,nR4,C20;var k20=D(()=>{p0();c0();pR4=Y1(h0(),1),nR4=Y1(R0(),1);C20=class C20 extends nR4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[pR4.getEndpointPlugin(G,X.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketEncryption",{}).n("S3Client","DeleteBucketEncryptionCommand").sc(aL4).build(){}});var aR4,tR4,v20;var _20=D(()=>{p0();c0();aR4=Y1(h0(),1),tR4=Y1(R0(),1);v20=class v20 extends tR4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[aR4.getEndpointPlugin(G,X.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketIntelligentTieringConfiguration",{}).n("S3Client","DeleteBucketIntelligentTieringConfigurationCommand").sc(tL4).build(){}});var rR4,oR4,f20;var b20=D(()=>{p0();c0();rR4=Y1(h0(),1),oR4=Y1(R0(),1);f20=class f20 extends oR4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[rR4.getEndpointPlugin(G,X.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketInventoryConfiguration",{}).n("S3Client","DeleteBucketInventoryConfigurationCommand").sc(rL4).build(){}});var sR4,eR4,y20;var x20=D(()=>{p0();c0();sR4=Y1(h0(),1),eR4=Y1(R0(),1);y20=class y20 extends eR4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[sR4.getEndpointPlugin(G,X.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketLifecycle",{}).n("S3Client","DeleteBucketLifecycleCommand").sc(oL4).build(){}});var XS4,YS4,h20;var g20=D(()=>{p0();c0();XS4=Y1(h0(),1),YS4=Y1(R0(),1);h20=class h20 extends YS4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[XS4.getEndpointPlugin(G,X.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketMetadataConfiguration",{}).n("S3Client","DeleteBucketMetadataConfigurationCommand").sc(sL4).build(){}});var GS4,QS4,u20;var l20=D(()=>{p0();c0();GS4=Y1(h0(),1),QS4=Y1(R0(),1);u20=class u20 extends QS4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[GS4.getEndpointPlugin(G,X.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketMetadataTableConfiguration",{}).n("S3Client","DeleteBucketMetadataTableConfigurationCommand").sc(eL4).build(){}});var JS4,ZS4,m20;var d20=D(()=>{p0();c0();JS4=Y1(h0(),1),ZS4=Y1(R0(),1);m20=class m20 extends ZS4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[JS4.getEndpointPlugin(G,X.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketMetricsConfiguration",{}).n("S3Client","DeleteBucketMetricsConfigurationCommand").sc(XE4).build(){}});var WS4,$S4,c20;var i20=D(()=>{p0();c0();WS4=Y1(h0(),1),$S4=Y1(R0(),1);c20=class c20 extends $S4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[WS4.getEndpointPlugin(G,X.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketOwnershipControls",{}).n("S3Client","DeleteBucketOwnershipControlsCommand").sc(YE4).build(){}});var KS4,HS4,p20;var n20=D(()=>{p0();c0();KS4=Y1(h0(),1),HS4=Y1(R0(),1);p20=class p20 extends HS4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[KS4.getEndpointPlugin(G,X.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketPolicy",{}).n("S3Client","DeleteBucketPolicyCommand").sc(GE4).build(){}});var FS4,US4,a20;var t20=D(()=>{p0();c0();FS4=Y1(h0(),1),US4=Y1(R0(),1);a20=class a20 extends US4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[FS4.getEndpointPlugin(G,X.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketReplication",{}).n("S3Client","DeleteBucketReplicationCommand").sc(QE4).build(){}});var BS4,NS4,r20;var o20=D(()=>{p0();c0();BS4=Y1(h0(),1),NS4=Y1(R0(),1);r20=class r20 extends NS4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[BS4.getEndpointPlugin(G,X.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketTagging",{}).n("S3Client","DeleteBucketTaggingCommand").sc(JE4).build(){}});var zS4,OS4,s20;var e20=D(()=>{p0();c0();zS4=Y1(h0(),1),OS4=Y1(R0(),1);s20=class s20 extends OS4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[zS4.getEndpointPlugin(G,X.getEndpointParameterInstructions())]}).s("AmazonS3","DeleteBucketWebsite",{}).n("S3Client","DeleteBucketWebsiteCommand").sc(ZE4).build(){}});var DS4,wS4,LS4,DZ1;var Xj0=D(()=>{p0();c0();DS4=Y1(m6(),1),wS4=Y1(h0(),1),LS4=Y1(R0(),1);DZ1=class DZ1 extends LS4.Command.classBuilder().ep({...t1,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function(X,Y,G,Q){return[wS4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),DS4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","DeleteObject",{}).n("S3Client","DeleteObjectCommand").sc(WE4).build(){}});var ES4,PS4,qS4,Yj0;var Gj0=D(()=>{W9();p0();c0();ES4=Y1(m6(),1),PS4=Y1(h0(),1),qS4=Y1(R0(),1);Yj0=class Yj0 extends qS4.Command.classBuilder().ep({...t1,Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[PS4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),L4(G,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0}),ES4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","DeleteObjects",{}).n("S3Client","DeleteObjectsCommand").sc($E4).build(){}});var AS4,TS4,IS4,Qj0;var Jj0=D(()=>{p0();c0();AS4=Y1(m6(),1),TS4=Y1(h0(),1),IS4=Y1(R0(),1);Qj0=class Qj0 extends IS4.Command.classBuilder().ep({...t1,Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[TS4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),AS4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","DeleteObjectTagging",{}).n("S3Client","DeleteObjectTaggingCommand").sc(KE4).build(){}});var VS4,jS4,Zj0;var Wj0=D(()=>{p0();c0();VS4=Y1(h0(),1),jS4=Y1(R0(),1);Zj0=class Zj0 extends jS4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[VS4.getEndpointPlugin(G,X.getEndpointParameterInstructions())]}).s("AmazonS3","DeletePublicAccessBlock",{}).n("S3Client","DeletePublicAccessBlockCommand").sc(HE4).build(){}});var MS4,RS4,SS4,$j0;var Kj0=D(()=>{p0();c0();MS4=Y1(m6(),1),RS4=Y1(h0(),1),SS4=Y1(R0(),1);$j0=class $j0 extends SS4.Command.classBuilder().ep({...t1,Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[RS4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),MS4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","GetBucketAbac",{}).n("S3Client","GetBucketAbacCommand").sc(FE4).build(){}});var CS4,kS4,vS4,Hj0;var Fj0=D(()=>{p0();c0();CS4=Y1(m6(),1),kS4=Y1(h0(),1),vS4=Y1(R0(),1);Hj0=class Hj0 extends vS4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[kS4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),CS4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","GetBucketAccelerateConfiguration",{}).n("S3Client","GetBucketAccelerateConfigurationCommand").sc(UE4).build(){}});var _S4,fS4,bS4,Uj0;var Bj0=D(()=>{p0();c0();_S4=Y1(m6(),1),fS4=Y1(h0(),1),bS4=Y1(R0(),1);Uj0=class Uj0 extends bS4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[fS4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),_S4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","GetBucketAcl",{}).n("S3Client","GetBucketAclCommand").sc(BE4).build(){}});var yS4,xS4,hS4,Nj0;var zj0=D(()=>{p0();c0();yS4=Y1(m6(),1),xS4=Y1(h0(),1),hS4=Y1(R0(),1);Nj0=class Nj0 extends hS4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[xS4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),yS4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","GetBucketAnalyticsConfiguration",{}).n("S3Client","GetBucketAnalyticsConfigurationCommand").sc(NE4).build(){}});var gS4,uS4,lS4,Oj0;var Dj0=D(()=>{p0();c0();gS4=Y1(m6(),1),uS4=Y1(h0(),1),lS4=Y1(R0(),1);Oj0=class Oj0 extends lS4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[uS4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),gS4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","GetBucketCors",{}).n("S3Client","GetBucketCorsCommand").sc(zE4).build(){}});var mS4,dS4,cS4,wj0;var Lj0=D(()=>{p0();c0();mS4=Y1(m6(),1),dS4=Y1(h0(),1),cS4=Y1(R0(),1);wj0=class wj0 extends cS4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[dS4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),mS4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","GetBucketEncryption",{}).n("S3Client","GetBucketEncryptionCommand").sc(OE4).build(){}});var iS4,pS4,nS4,Ej0;var Pj0=D(()=>{p0();c0();iS4=Y1(m6(),1),pS4=Y1(h0(),1),nS4=Y1(R0(),1);Ej0=class Ej0 extends nS4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[pS4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),iS4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","GetBucketIntelligentTieringConfiguration",{}).n("S3Client","GetBucketIntelligentTieringConfigurationCommand").sc(DE4).build(){}});var aS4,tS4,rS4,qj0;var Aj0=D(()=>{p0();c0();aS4=Y1(m6(),1),tS4=Y1(h0(),1),rS4=Y1(R0(),1);qj0=class qj0 extends rS4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[tS4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),aS4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","GetBucketInventoryConfiguration",{}).n("S3Client","GetBucketInventoryConfigurationCommand").sc(wE4).build(){}});var oS4,sS4,eS4,Tj0;var Ij0=D(()=>{p0();c0();oS4=Y1(m6(),1),sS4=Y1(h0(),1),eS4=Y1(R0(),1);Tj0=class Tj0 extends eS4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[sS4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),oS4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","GetBucketLifecycleConfiguration",{}).n("S3Client","GetBucketLifecycleConfigurationCommand").sc(LE4).build(){}});var XC4,YC4,GC4,Vj0;var jj0=D(()=>{p0();c0();XC4=Y1(m6(),1),YC4=Y1(h0(),1),GC4=Y1(R0(),1);Vj0=class Vj0 extends GC4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[YC4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),XC4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","GetBucketLocation",{}).n("S3Client","GetBucketLocationCommand").sc(EE4).build(){}});var QC4,JC4,ZC4,Mj0;var Rj0=D(()=>{p0();c0();QC4=Y1(m6(),1),JC4=Y1(h0(),1),ZC4=Y1(R0(),1);Mj0=class Mj0 extends ZC4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[JC4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),QC4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","GetBucketLogging",{}).n("S3Client","GetBucketLoggingCommand").sc(PE4).build(){}});var WC4,$C4,KC4,Sj0;var Cj0=D(()=>{p0();c0();WC4=Y1(m6(),1),$C4=Y1(h0(),1),KC4=Y1(R0(),1);Sj0=class Sj0 extends KC4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[$C4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),WC4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","GetBucketMetadataConfiguration",{}).n("S3Client","GetBucketMetadataConfigurationCommand").sc(qE4).build(){}});var HC4,FC4,UC4,kj0;var vj0=D(()=>{p0();c0();HC4=Y1(m6(),1),FC4=Y1(h0(),1),UC4=Y1(R0(),1);kj0=class kj0 extends UC4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[FC4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),HC4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","GetBucketMetadataTableConfiguration",{}).n("S3Client","GetBucketMetadataTableConfigurationCommand").sc(AE4).build(){}});var BC4,NC4,zC4,_j0;var fj0=D(()=>{p0();c0();BC4=Y1(m6(),1),NC4=Y1(h0(),1),zC4=Y1(R0(),1);_j0=class _j0 extends zC4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[NC4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),BC4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","GetBucketMetricsConfiguration",{}).n("S3Client","GetBucketMetricsConfigurationCommand").sc(TE4).build(){}});var OC4,DC4,wC4,bj0;var yj0=D(()=>{p0();c0();OC4=Y1(m6(),1),DC4=Y1(h0(),1),wC4=Y1(R0(),1);bj0=class bj0 extends wC4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[DC4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),OC4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","GetBucketNotificationConfiguration",{}).n("S3Client","GetBucketNotificationConfigurationCommand").sc(IE4).build(){}});var LC4,EC4,PC4,xj0;var hj0=D(()=>{p0();c0();LC4=Y1(m6(),1),EC4=Y1(h0(),1),PC4=Y1(R0(),1);xj0=class xj0 extends PC4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[EC4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),LC4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","GetBucketOwnershipControls",{}).n("S3Client","GetBucketOwnershipControlsCommand").sc(VE4).build(){}});var qC4,AC4,gj0;var uj0=D(()=>{p0();c0();qC4=Y1(h0(),1),AC4=Y1(R0(),1);gj0=class gj0 extends AC4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[qC4.getEndpointPlugin(G,X.getEndpointParameterInstructions())]}).s("AmazonS3","GetBucketPolicy",{}).n("S3Client","GetBucketPolicyCommand").sc(jE4).build(){}});var TC4,IC4,VC4,lj0;var mj0=D(()=>{p0();c0();TC4=Y1(m6(),1),IC4=Y1(h0(),1),VC4=Y1(R0(),1);lj0=class lj0 extends VC4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[IC4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),TC4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","GetBucketPolicyStatus",{}).n("S3Client","GetBucketPolicyStatusCommand").sc(ME4).build(){}});var jC4,MC4,RC4,dj0;var cj0=D(()=>{p0();c0();jC4=Y1(m6(),1),MC4=Y1(h0(),1),RC4=Y1(R0(),1);dj0=class dj0 extends RC4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[MC4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),jC4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","GetBucketReplication",{}).n("S3Client","GetBucketReplicationCommand").sc(RE4).build(){}});var SC4,CC4,kC4,ij0;var pj0=D(()=>{p0();c0();SC4=Y1(m6(),1),CC4=Y1(h0(),1),kC4=Y1(R0(),1);ij0=class ij0 extends kC4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[CC4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),SC4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","GetBucketRequestPayment",{}).n("S3Client","GetBucketRequestPaymentCommand").sc(SE4).build(){}});var vC4,_C4,fC4,nj0;var aj0=D(()=>{p0();c0();vC4=Y1(m6(),1),_C4=Y1(h0(),1),fC4=Y1(R0(),1);nj0=class nj0 extends fC4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[_C4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),vC4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","GetBucketTagging",{}).n("S3Client","GetBucketTaggingCommand").sc(CE4).build(){}});var bC4,yC4,xC4,tj0;var rj0=D(()=>{p0();c0();bC4=Y1(m6(),1),yC4=Y1(h0(),1),xC4=Y1(R0(),1);tj0=class tj0 extends xC4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[yC4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),bC4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","GetBucketVersioning",{}).n("S3Client","GetBucketVersioningCommand").sc(kE4).build(){}});var hC4,gC4,uC4,oj0;var sj0=D(()=>{p0();c0();hC4=Y1(m6(),1),gC4=Y1(h0(),1),uC4=Y1(R0(),1);oj0=class oj0 extends uC4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[gC4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),hC4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","GetBucketWebsite",{}).n("S3Client","GetBucketWebsiteCommand").sc(vE4).build(){}});var lC4,mC4,dC4,ej0;var XM0=D(()=>{p0();c0();lC4=Y1(m6(),1),mC4=Y1(h0(),1),dC4=Y1(R0(),1);ej0=class ej0 extends dC4.Command.classBuilder().ep({...t1,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function(X,Y,G,Q){return[mC4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),lC4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","GetObjectAcl",{}).n("S3Client","GetObjectAclCommand").sc(fE4).build(){}});var cC4,iC4,pC4,YM0;var GM0=D(()=>{mH();p0();c0();cC4=Y1(m6(),1),iC4=Y1(h0(),1),pC4=Y1(R0(),1);YM0=class YM0 extends pC4.Command.classBuilder().ep({...t1,Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[iC4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),cC4.getThrow200ExceptionsPlugin(G),QY(G)]}).s("AmazonS3","GetObjectAttributes",{}).n("S3Client","GetObjectAttributesCommand").sc(bE4).build(){}});var nC4,aC4,tC4,_R;var QM0=D(()=>{W9();mH();p0();c0();nC4=Y1(m6(),1),aC4=Y1(h0(),1),tC4=Y1(R0(),1);_R=class _R extends tC4.Command.classBuilder().ep({...t1,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function(X,Y,G,Q){return[aC4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),L4(G,{requestChecksumRequired:!1,requestValidationModeMember:"ChecksumMode",responseAlgorithms:["CRC64NVME","CRC32","CRC32C","SHA256","SHA1","SHA512","MD5","XXHASH64","XXHASH3","XXHASH128"]}),QY(G),nC4.getS3ExpiresMiddlewarePlugin(G)]}).s("AmazonS3","GetObject",{}).n("S3Client","GetObjectCommand").sc(_E4).build(){}});var rC4,oC4,sC4,JM0;var ZM0=D(()=>{p0();c0();rC4=Y1(m6(),1),oC4=Y1(h0(),1),sC4=Y1(R0(),1);JM0=class JM0 extends sC4.Command.classBuilder().ep({...t1,Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[oC4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),rC4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","GetObjectLegalHold",{}).n("S3Client","GetObjectLegalHoldCommand").sc(yE4).build(){}});var eC4,Xk4,Yk4,WM0;var $M0=D(()=>{p0();c0();eC4=Y1(m6(),1),Xk4=Y1(h0(),1),Yk4=Y1(R0(),1);WM0=class WM0 extends Yk4.Command.classBuilder().ep({...t1,Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[Xk4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),eC4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","GetObjectLockConfiguration",{}).n("S3Client","GetObjectLockConfigurationCommand").sc(xE4).build(){}});var Gk4,Qk4,Jk4,KM0;var HM0=D(()=>{p0();c0();Gk4=Y1(m6(),1),Qk4=Y1(h0(),1),Jk4=Y1(R0(),1);KM0=class KM0 extends Jk4.Command.classBuilder().ep({...t1,Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[Qk4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),Gk4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","GetObjectRetention",{}).n("S3Client","GetObjectRetentionCommand").sc(hE4).build(){}});var Zk4,Wk4,$k4,FM0;var UM0=D(()=>{p0();c0();Zk4=Y1(m6(),1),Wk4=Y1(h0(),1),$k4=Y1(R0(),1);FM0=class FM0 extends $k4.Command.classBuilder().ep({...t1,Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[Wk4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),Zk4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","GetObjectTagging",{}).n("S3Client","GetObjectTaggingCommand").sc(gE4).build(){}});var Kk4,Hk4,BM0;var NM0=D(()=>{p0();c0();Kk4=Y1(h0(),1),Hk4=Y1(R0(),1);BM0=class BM0 extends Hk4.Command.classBuilder().ep({...t1,Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[Kk4.getEndpointPlugin(G,X.getEndpointParameterInstructions())]}).s("AmazonS3","GetObjectTorrent",{}).n("S3Client","GetObjectTorrentCommand").sc(uE4).build(){}});var Fk4,Uk4,Bk4,zM0;var OM0=D(()=>{p0();c0();Fk4=Y1(m6(),1),Uk4=Y1(h0(),1),Bk4=Y1(R0(),1);zM0=class zM0 extends Bk4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[Uk4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),Fk4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","GetPublicAccessBlock",{}).n("S3Client","GetPublicAccessBlockCommand").sc(lE4).build(){}});var Nk4,zk4,Ok4,fR;var wZ1=D(()=>{p0();c0();Nk4=Y1(m6(),1),zk4=Y1(h0(),1),Ok4=Y1(R0(),1);fR=class fR extends Ok4.Command.classBuilder().ep({...t1,Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[zk4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),Nk4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","HeadBucket",{}).n("S3Client","HeadBucketCommand").sc(mE4).build(){}});var YS1,Dk4,wk4,kz;var LZ1=D(()=>{mH();p0();c0();YS1=Y1(m6(),1),Dk4=Y1(h0(),1),wk4=Y1(R0(),1);kz=class kz extends wk4.Command.classBuilder().ep({...t1,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function(X,Y,G,Q){return[Dk4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),YS1.getThrow200ExceptionsPlugin(G),QY(G),YS1.getS3ExpiresMiddlewarePlugin(G)]}).s("AmazonS3","HeadObject",{}).n("S3Client","HeadObjectCommand").sc(dE4).build(){}});var Lk4,Ek4,Pk4,DM0;var wM0=D(()=>{p0();c0();Lk4=Y1(m6(),1),Ek4=Y1(h0(),1),Pk4=Y1(R0(),1);DM0=class DM0 extends Pk4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[Ek4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),Lk4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","ListBucketAnalyticsConfigurations",{}).n("S3Client","ListBucketAnalyticsConfigurationsCommand").sc(cE4).build(){}});var qk4,Ak4,Tk4,LM0;var EM0=D(()=>{p0();c0();qk4=Y1(m6(),1),Ak4=Y1(h0(),1),Tk4=Y1(R0(),1);LM0=class LM0 extends Tk4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[Ak4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),qk4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","ListBucketIntelligentTieringConfigurations",{}).n("S3Client","ListBucketIntelligentTieringConfigurationsCommand").sc(iE4).build(){}});var Ik4,Vk4,jk4,PM0;var qM0=D(()=>{p0();c0();Ik4=Y1(m6(),1),Vk4=Y1(h0(),1),jk4=Y1(R0(),1);PM0=class PM0 extends jk4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[Vk4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),Ik4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","ListBucketInventoryConfigurations",{}).n("S3Client","ListBucketInventoryConfigurationsCommand").sc(pE4).build(){}});var Mk4,Rk4,Sk4,AM0;var TM0=D(()=>{p0();c0();Mk4=Y1(m6(),1),Rk4=Y1(h0(),1),Sk4=Y1(R0(),1);AM0=class AM0 extends Sk4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[Rk4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),Mk4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","ListBucketMetricsConfigurations",{}).n("S3Client","ListBucketMetricsConfigurationsCommand").sc(nE4).build(){}});var Ck4,kk4,vk4,EZ1;var GS1=D(()=>{p0();c0();Ck4=Y1(m6(),1),kk4=Y1(h0(),1),vk4=Y1(R0(),1);EZ1=class EZ1 extends vk4.Command.classBuilder().ep(t1).m(function(X,Y,G,Q){return[kk4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),Ck4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","ListBuckets",{}).n("S3Client","ListBucketsCommand").sc(aE4).build(){}});var _k4,fk4,bk4,PZ1;var QS1=D(()=>{p0();c0();_k4=Y1(m6(),1),fk4=Y1(h0(),1),bk4=Y1(R0(),1);PZ1=class PZ1 extends bk4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0}}).m(function(X,Y,G,Q){return[fk4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),_k4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","ListDirectoryBuckets",{}).n("S3Client","ListDirectoryBucketsCommand").sc(tE4).build(){}});var yk4,xk4,hk4,IM0;var VM0=D(()=>{p0();c0();yk4=Y1(m6(),1),xk4=Y1(h0(),1),hk4=Y1(R0(),1);IM0=class IM0 extends hk4.Command.classBuilder().ep({...t1,Bucket:{type:"contextParams",name:"Bucket"},Prefix:{type:"contextParams",name:"Prefix"}}).m(function(X,Y,G,Q){return[xk4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),yk4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","ListMultipartUploads",{}).n("S3Client","ListMultipartUploadsCommand").sc(rE4).build(){}});var gk4,uk4,lk4,jM0;var MM0=D(()=>{p0();c0();gk4=Y1(m6(),1),uk4=Y1(h0(),1),lk4=Y1(R0(),1);jM0=class jM0 extends lk4.Command.classBuilder().ep({...t1,Bucket:{type:"contextParams",name:"Bucket"},Prefix:{type:"contextParams",name:"Prefix"}}).m(function(X,Y,G,Q){return[uk4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),gk4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","ListObjects",{}).n("S3Client","ListObjectsCommand").sc(oE4).build(){}});var mk4,dk4,ck4,bR;var JS1=D(()=>{p0();c0();mk4=Y1(m6(),1),dk4=Y1(h0(),1),ck4=Y1(R0(),1);bR=class bR extends ck4.Command.classBuilder().ep({...t1,Bucket:{type:"contextParams",name:"Bucket"},Prefix:{type:"contextParams",name:"Prefix"}}).m(function(X,Y,G,Q){return[dk4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),mk4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","ListObjectsV2",{}).n("S3Client","ListObjectsV2Command").sc(sE4).build(){}});var ik4,pk4,nk4,RM0;var SM0=D(()=>{p0();c0();ik4=Y1(m6(),1),pk4=Y1(h0(),1),nk4=Y1(R0(),1);RM0=class RM0 extends nk4.Command.classBuilder().ep({...t1,Bucket:{type:"contextParams",name:"Bucket"},Prefix:{type:"contextParams",name:"Prefix"}}).m(function(X,Y,G,Q){return[pk4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),ik4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","ListObjectVersions",{}).n("S3Client","ListObjectVersionsCommand").sc(eE4).build(){}});var ak4,tk4,rk4,qZ1;var ZS1=D(()=>{mH();p0();c0();ak4=Y1(m6(),1),tk4=Y1(h0(),1),rk4=Y1(R0(),1);qZ1=class qZ1 extends rk4.Command.classBuilder().ep({...t1,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function(X,Y,G,Q){return[tk4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),ak4.getThrow200ExceptionsPlugin(G),QY(G)]}).s("AmazonS3","ListParts",{}).n("S3Client","ListPartsCommand").sc(XP4).build(){}});var ok4,sk4,CM0;var kM0=D(()=>{W9();p0();c0();ok4=Y1(h0(),1),sk4=Y1(R0(),1);CM0=class CM0 extends sk4.Command.classBuilder().ep({...t1,Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[ok4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),L4(G,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!1})]}).s("AmazonS3","PutBucketAbac",{}).n("S3Client","PutBucketAbacCommand").sc(YP4).build(){}});var ek4,Xv4,vM0;var _M0=D(()=>{W9();p0();c0();ek4=Y1(h0(),1),Xv4=Y1(R0(),1);vM0=class vM0 extends Xv4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[ek4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),L4(G,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!1})]}).s("AmazonS3","PutBucketAccelerateConfiguration",{}).n("S3Client","PutBucketAccelerateConfigurationCommand").sc(GP4).build(){}});var Yv4,Gv4,fM0;var bM0=D(()=>{W9();p0();c0();Yv4=Y1(h0(),1),Gv4=Y1(R0(),1);fM0=class fM0 extends Gv4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[Yv4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),L4(G,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","PutBucketAcl",{}).n("S3Client","PutBucketAclCommand").sc(QP4).build(){}});var Qv4,Jv4,yM0;var xM0=D(()=>{p0();c0();Qv4=Y1(h0(),1),Jv4=Y1(R0(),1);yM0=class yM0 extends Jv4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[Qv4.getEndpointPlugin(G,X.getEndpointParameterInstructions())]}).s("AmazonS3","PutBucketAnalyticsConfiguration",{}).n("S3Client","PutBucketAnalyticsConfigurationCommand").sc(JP4).build(){}});var Zv4,Wv4,hM0;var gM0=D(()=>{W9();p0();c0();Zv4=Y1(h0(),1),Wv4=Y1(R0(),1);hM0=class hM0 extends Wv4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[Zv4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),L4(G,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","PutBucketCors",{}).n("S3Client","PutBucketCorsCommand").sc(ZP4).build(){}});var $v4,Kv4,uM0;var lM0=D(()=>{W9();p0();c0();$v4=Y1(h0(),1),Kv4=Y1(R0(),1);uM0=class uM0 extends Kv4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[$v4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),L4(G,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","PutBucketEncryption",{}).n("S3Client","PutBucketEncryptionCommand").sc(WP4).build(){}});var Hv4,Fv4,mM0;var dM0=D(()=>{p0();c0();Hv4=Y1(h0(),1),Fv4=Y1(R0(),1);mM0=class mM0 extends Fv4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[Hv4.getEndpointPlugin(G,X.getEndpointParameterInstructions())]}).s("AmazonS3","PutBucketIntelligentTieringConfiguration",{}).n("S3Client","PutBucketIntelligentTieringConfigurationCommand").sc($P4).build(){}});var Uv4,Bv4,cM0;var iM0=D(()=>{p0();c0();Uv4=Y1(h0(),1),Bv4=Y1(R0(),1);cM0=class cM0 extends Bv4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[Uv4.getEndpointPlugin(G,X.getEndpointParameterInstructions())]}).s("AmazonS3","PutBucketInventoryConfiguration",{}).n("S3Client","PutBucketInventoryConfigurationCommand").sc(KP4).build(){}});var Nv4,zv4,Ov4,pM0;var nM0=D(()=>{W9();p0();c0();Nv4=Y1(m6(),1),zv4=Y1(h0(),1),Ov4=Y1(R0(),1);pM0=class pM0 extends Ov4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[zv4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),L4(G,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0}),Nv4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","PutBucketLifecycleConfiguration",{}).n("S3Client","PutBucketLifecycleConfigurationCommand").sc(HP4).build(){}});var Dv4,wv4,aM0;var tM0=D(()=>{W9();p0();c0();Dv4=Y1(h0(),1),wv4=Y1(R0(),1);aM0=class aM0 extends wv4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[Dv4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),L4(G,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","PutBucketLogging",{}).n("S3Client","PutBucketLoggingCommand").sc(FP4).build(){}});var Lv4,Ev4,rM0;var oM0=D(()=>{p0();c0();Lv4=Y1(h0(),1),Ev4=Y1(R0(),1);rM0=class rM0 extends Ev4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[Lv4.getEndpointPlugin(G,X.getEndpointParameterInstructions())]}).s("AmazonS3","PutBucketMetricsConfiguration",{}).n("S3Client","PutBucketMetricsConfigurationCommand").sc(UP4).build(){}});var Pv4,qv4,sM0;var eM0=D(()=>{p0();c0();Pv4=Y1(h0(),1),qv4=Y1(R0(),1);sM0=class sM0 extends qv4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[Pv4.getEndpointPlugin(G,X.getEndpointParameterInstructions())]}).s("AmazonS3","PutBucketNotificationConfiguration",{}).n("S3Client","PutBucketNotificationConfigurationCommand").sc(BP4).build(){}});var Av4,Tv4,XR0;var YR0=D(()=>{W9();p0();c0();Av4=Y1(h0(),1),Tv4=Y1(R0(),1);XR0=class XR0 extends Tv4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[Av4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),L4(G,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","PutBucketOwnershipControls",{}).n("S3Client","PutBucketOwnershipControlsCommand").sc(NP4).build(){}});var Iv4,Vv4,GR0;var QR0=D(()=>{W9();p0();c0();Iv4=Y1(h0(),1),Vv4=Y1(R0(),1);GR0=class GR0 extends Vv4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[Iv4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),L4(G,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","PutBucketPolicy",{}).n("S3Client","PutBucketPolicyCommand").sc(zP4).build(){}});var jv4,Mv4,JR0;var ZR0=D(()=>{W9();p0();c0();jv4=Y1(h0(),1),Mv4=Y1(R0(),1);JR0=class JR0 extends Mv4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[jv4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),L4(G,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","PutBucketReplication",{}).n("S3Client","PutBucketReplicationCommand").sc(OP4).build(){}});var Rv4,Sv4,WR0;var $R0=D(()=>{W9();p0();c0();Rv4=Y1(h0(),1),Sv4=Y1(R0(),1);WR0=class WR0 extends Sv4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[Rv4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),L4(G,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","PutBucketRequestPayment",{}).n("S3Client","PutBucketRequestPaymentCommand").sc(DP4).build(){}});var Cv4,kv4,KR0;var HR0=D(()=>{W9();p0();c0();Cv4=Y1(h0(),1),kv4=Y1(R0(),1);KR0=class KR0 extends kv4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[Cv4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),L4(G,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","PutBucketTagging",{}).n("S3Client","PutBucketTaggingCommand").sc(wP4).build(){}});var vv4,_v4,FR0;var UR0=D(()=>{W9();p0();c0();vv4=Y1(h0(),1),_v4=Y1(R0(),1);FR0=class FR0 extends _v4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[vv4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),L4(G,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","PutBucketVersioning",{}).n("S3Client","PutBucketVersioningCommand").sc(LP4).build(){}});var fv4,bv4,BR0;var NR0=D(()=>{W9();p0();c0();fv4=Y1(h0(),1),bv4=Y1(R0(),1);BR0=class BR0 extends bv4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[fv4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),L4(G,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","PutBucketWebsite",{}).n("S3Client","PutBucketWebsiteCommand").sc(EP4).build(){}});var yv4,xv4,hv4,zR0;var OR0=D(()=>{W9();p0();c0();yv4=Y1(m6(),1),xv4=Y1(h0(),1),hv4=Y1(R0(),1);zR0=class zR0 extends hv4.Command.classBuilder().ep({...t1,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function(X,Y,G,Q){return[xv4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),L4(G,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0}),yv4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","PutObjectAcl",{}).n("S3Client","PutObjectAclCommand").sc(qP4).build(){}});var WS1,gv4,uv4,uo;var DR0=D(()=>{W9();mH();p0();c0();WS1=Y1(m6(),1),gv4=Y1(h0(),1),uv4=Y1(R0(),1);uo=class uo extends uv4.Command.classBuilder().ep({...t1,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function(X,Y,G,Q){return[gv4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),L4(G,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!1}),WS1.getCheckContentLengthHeaderPlugin(G),WS1.getThrow200ExceptionsPlugin(G),QY(G)]}).s("AmazonS3","PutObject",{}).n("S3Client","PutObjectCommand").sc(PP4).build(){}});var lv4,mv4,dv4,wR0;var LR0=D(()=>{W9();p0();c0();lv4=Y1(m6(),1),mv4=Y1(h0(),1),dv4=Y1(R0(),1);wR0=class wR0 extends dv4.Command.classBuilder().ep({...t1,Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[mv4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),L4(G,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0}),lv4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","PutObjectLegalHold",{}).n("S3Client","PutObjectLegalHoldCommand").sc(AP4).build(){}});var cv4,iv4,pv4,ER0;var PR0=D(()=>{W9();p0();c0();cv4=Y1(m6(),1),iv4=Y1(h0(),1),pv4=Y1(R0(),1);ER0=class ER0 extends pv4.Command.classBuilder().ep({...t1,Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[iv4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),L4(G,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0}),cv4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","PutObjectLockConfiguration",{}).n("S3Client","PutObjectLockConfigurationCommand").sc(TP4).build(){}});var nv4,av4,tv4,qR0;var AR0=D(()=>{W9();p0();c0();nv4=Y1(m6(),1),av4=Y1(h0(),1),tv4=Y1(R0(),1);qR0=class qR0 extends tv4.Command.classBuilder().ep({...t1,Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[av4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),L4(G,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0}),nv4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","PutObjectRetention",{}).n("S3Client","PutObjectRetentionCommand").sc(IP4).build(){}});var rv4,ov4,sv4,TR0;var IR0=D(()=>{W9();p0();c0();rv4=Y1(m6(),1),ov4=Y1(h0(),1),sv4=Y1(R0(),1);TR0=class TR0 extends sv4.Command.classBuilder().ep({...t1,Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[ov4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),L4(G,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0}),rv4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","PutObjectTagging",{}).n("S3Client","PutObjectTaggingCommand").sc(VP4).build(){}});var ev4,X_4,VR0;var jR0=D(()=>{W9();p0();c0();ev4=Y1(h0(),1),X_4=Y1(R0(),1);VR0=class VR0 extends X_4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[ev4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),L4(G,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","PutPublicAccessBlock",{}).n("S3Client","PutPublicAccessBlockCommand").sc(jP4).build(){}});var Y_4,G_4,Q_4,MR0;var RR0=D(()=>{p0();c0();Y_4=Y1(m6(),1),G_4=Y1(h0(),1),Q_4=Y1(R0(),1);MR0=class MR0 extends Q_4.Command.classBuilder().ep({...t1,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function(X,Y,G,Q){return[G_4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),Y_4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","RenameObject",{}).n("S3Client","RenameObjectCommand").sc(MP4).build(){}});var J_4,Z_4,W_4,SR0;var CR0=D(()=>{W9();p0();c0();J_4=Y1(m6(),1),Z_4=Y1(h0(),1),W_4=Y1(R0(),1);SR0=class SR0 extends W_4.Command.classBuilder().ep({...t1,Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[Z_4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),L4(G,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!1}),J_4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","RestoreObject",{}).n("S3Client","RestoreObjectCommand").sc(RP4).build(){}});var $_4,K_4,kR0;var vR0=D(()=>{mH();p0();c0();$_4=Y1(h0(),1),K_4=Y1(R0(),1);kR0=class kR0 extends K_4.Command.classBuilder().ep({...t1,Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[$_4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),QY(G)]}).s("AmazonS3","SelectObjectContent",{eventStream:{output:!0}}).n("S3Client","SelectObjectContentCommand").sc(SP4).build(){}});var H_4,F_4,_R0;var fR0=D(()=>{W9();p0();c0();H_4=Y1(h0(),1),F_4=Y1(R0(),1);_R0=class _R0 extends F_4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[H_4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),L4(G,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","UpdateBucketMetadataInventoryTableConfiguration",{}).n("S3Client","UpdateBucketMetadataInventoryTableConfigurationCommand").sc(CP4).build(){}});var U_4,B_4,bR0;var yR0=D(()=>{W9();p0();c0();U_4=Y1(h0(),1),B_4=Y1(R0(),1);bR0=class bR0 extends B_4.Command.classBuilder().ep({...t1,UseS3ExpressControlEndpoint:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[U_4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),L4(G,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0})]}).s("AmazonS3","UpdateBucketMetadataJournalTableConfiguration",{}).n("S3Client","UpdateBucketMetadataJournalTableConfigurationCommand").sc(kP4).build(){}});var N_4,z_4,O_4,xR0;var hR0=D(()=>{W9();p0();c0();N_4=Y1(m6(),1),z_4=Y1(h0(),1),O_4=Y1(R0(),1);xR0=class xR0 extends O_4.Command.classBuilder().ep({...t1,Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[z_4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),L4(G,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!0}),N_4.getThrow200ExceptionsPlugin(G)]}).s("AmazonS3","UpdateObjectEncryption",{}).n("S3Client","UpdateObjectEncryptionCommand").sc(vP4).build(){}});var D_4,w_4,L_4,gR0;var uR0=D(()=>{W9();mH();p0();c0();D_4=Y1(m6(),1),w_4=Y1(h0(),1),L_4=Y1(R0(),1);gR0=class gR0 extends L_4.Command.classBuilder().ep({...t1,Bucket:{type:"contextParams",name:"Bucket"},Key:{type:"contextParams",name:"Key"}}).m(function(X,Y,G,Q){return[w_4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),L4(G,{requestAlgorithmMember:{httpHeader:"x-amz-sdk-checksum-algorithm",name:"ChecksumAlgorithm"},requestChecksumRequired:!1}),D_4.getThrow200ExceptionsPlugin(G),QY(G)]}).s("AmazonS3","UploadPart",{}).n("S3Client","UploadPartCommand").sc(_P4).build(){}});var E_4,P_4,q_4,lR0;var mR0=D(()=>{mH();p0();c0();E_4=Y1(m6(),1),P_4=Y1(h0(),1),q_4=Y1(R0(),1);lR0=class lR0 extends q_4.Command.classBuilder().ep({...t1,DisableS3ExpressSessionAuth:{type:"staticContextParams",value:!0},Bucket:{type:"contextParams",name:"Bucket"}}).m(function(X,Y,G,Q){return[P_4.getEndpointPlugin(G,X.getEndpointParameterInstructions()),E_4.getThrow200ExceptionsPlugin(G),QY(G)]}).s("AmazonS3","UploadPartCopy",{}).n("S3Client","UploadPartCopyCommand").sc(fP4).build(){}});var A_4,T_4,dR0;var cR0=D(()=>{p0();c0();A_4=Y1(h0(),1),T_4=Y1(R0(),1);dR0=class dR0 extends T_4.Command.classBuilder().ep({...t1,UseObjectLambdaEndpoint:{type:"staticContextParams",value:!0}}).m(function(X,Y,G,Q){return[A_4.getEndpointPlugin(G,X.getEndpointParameterInstructions())]}).s("AmazonS3","WriteGetObjectResponse",{}).n("S3Client","WriteGetObjectResponseCommand").sc(bP4).build(){}});var I_4,V_4;var iR0=D(()=>{GS1();vR();I_4=Y1(PG(),1),V_4=I_4.createPaginator($K,EZ1,"ContinuationToken","ContinuationToken","MaxBuckets")});var j_4,M_4;var pR0=D(()=>{QS1();vR();j_4=Y1(PG(),1),M_4=j_4.createPaginator($K,PZ1,"ContinuationToken","ContinuationToken","MaxDirectoryBuckets")});var R_4,S_4;var nR0=D(()=>{JS1();vR();R_4=Y1(PG(),1),S_4=R_4.createPaginator($K,bR,"ContinuationToken","NextContinuationToken","MaxKeys")});var C_4,k_4;var aR0=D(()=>{ZS1();vR();C_4=Y1(PG(),1),k_4=C_4.createPaginator($K,qZ1,"PartNumberMarker","NextPartNumberMarker","MaxParts")});var lo=()=>{let X=new WeakSet;return(Y,G)=>{if(typeof G==="object"&&G!==null){if(X.has(G))return"[Circular]";X.add(G)}return G}};var v_4=(X)=>{return new Promise((Y)=>setTimeout(Y,X*1000))};var __4,KX,aA=(X)=>{if(X.state===KX.ABORTED){let Y=Error(`${JSON.stringify({...X,reason:"Request was aborted"},lo())}`);throw Y.name="AbortError",Y}else if(X.state===KX.TIMEOUT){let Y=Error(`${JSON.stringify({...X,reason:"Waiter has timed out"},lo())}`);throw Y.name="TimeoutError",Y}else if(X.state!==KX.SUCCESS)throw Error(`${JSON.stringify(X,lo())}`);return X};var $S1=D(()=>{__4={minDelay:2,maxDelay:120};(function(X){X.ABORTED="ABORTED",X.FAILURE="FAILURE",X.SUCCESS="SUCCESS",X.RETRY="RETRY",X.TIMEOUT="TIMEOUT"})(KX||(KX={}))});var f_4=async({minDelay:X,maxDelay:Y,maxWaitTime:G,abortController:Q,client:J,abortSignal:W},Z,$)=>{let K={},[H,U]=[X*1000,Y*1000],B=0,N=Date.now()+G*1000,z=Date.now()+60000,O=!1;while(!0){if(B>0){let P=wc9(H,U,B,N);if(Q?.signal?.aborted||W?.aborted)return K["AbortController signal aborted."]|=0,K["AbortController signal aborted."]+=1,{state:KX.ABORTED,observedResponses:K};if(Date.now()+P>N)return{state:KX.TIMEOUT,observedResponses:K};await v_4(P/1000)}let{state:w,reason:E}=await $(J,Z);if(E){let P=Dc9(E);K[P]|=0,K[P]+=1}if(w!==KX.RETRY)return{state:w,reason:E,final:E,observedResponses:K};if(B+=1,!O&&Date.now()>=z)Oc9(K,J),O=!0}},Oc9=(X={},Y)=>{let G=Object.keys(X),Q=0,J=0;for(let $ of G){let K=X[$]|0;if(Q=Math.max(K,Q),$.startsWith("403:"))J+=K}let W=Y?.config?.logger,Z=typeof W?.warn==="function"&&!W.constructor?.name?.includes?.("NoOpLogger")?W:console;if(J>=3||G[G.length-1].startsWith("403:"))Z.warn("@smithy/util-waiter WARN - 403 status code encountered during waiter polling.")},Dc9=(X)=>{let Y=X?.$response?.statusCode??X?.$metadata?.httpStatusCode;if(X?.$responseBodyText)return`${Y?Y+": ":""}Deserialization error for body: ${X.$responseBodyText}`;if(Y){if(X?.$response||X?.message)return`${Y??"Unknown"}: ${X?.message}`;return`${Y}: OK`}return String(X?.message??JSON.stringify(X,lo())??"Unknown")},wc9=(X,Y,G,Q)=>{let J=Math.log(Y/X)/Math.log(2)+1;if(G>J)return Y;let W=X*2**(G-1),Z=Math.min(W,Y),$=Lc9(X,Z);if(Date.now()+$>Q){let K=Q-Date.now();return Math.max(0,K-500)}return $},Lc9=(X,Y)=>X+Math.random()*(Y-X);var b_4=D(()=>{$S1()});var y_4=(X)=>{if(X.maxWaitTime<=0)throw Error("WaiterConfiguration.maxWaitTime must be greater than 0");else if(X.minDelay<=0)throw Error("WaiterConfiguration.minDelay must be greater than 0");else if(X.maxDelay<=0)throw Error("WaiterConfiguration.maxDelay must be greater than 0");else if(X.maxWaitTime<=X.minDelay)throw Error(`WaiterConfiguration.maxWaitTime [${X.maxWaitTime}] must be greater than WaiterConfiguration.minDelay [${X.minDelay}] for this waiter`);else if(X.maxDelay<X.minDelay)throw Error(`WaiterConfiguration.maxDelay [${X.maxDelay}] must be greater than WaiterConfiguration.minDelay [${X.minDelay}] for this waiter`)};var x_4=()=>{};var h_4=(X)=>{let Y,G=new Promise((Q)=>{if(Y=()=>Q({state:KX.ABORTED}),typeof X.addEventListener==="function")X.addEventListener("abort",Y);else X.onabort=Y});return{clearListener(){if(typeof X.removeEventListener==="function")X.removeEventListener("abort",Y)},aborted:G}},tA=async(X,Y,G)=>{let Q={...__4,...X};y_4(Q);let J=[f_4(Q,Y,G)],W=[];if(X.abortSignal){let{aborted:Z,clearListener:$}=h_4(X.abortSignal);W.push($),J.push(Z)}if(X.abortController?.signal){let{aborted:Z,clearListener:$}=h_4(X.abortController.signal);W.push($),J.push(Z)}return Promise.race(J).then((Z)=>{for(let $ of W)$();return Z})};var g_4=D(()=>{b_4();x_4();$S1()});var AZ1=D(()=>{g_4();$S1()});var Ec9=async(X,Y)=>{let G;try{return G=await X.send(new fR(Y)),{state:KX.SUCCESS,reason:G}}catch(Q){if(G=Q,Q.name==="NotFound")return{state:KX.RETRY,reason:G}}return{state:KX.RETRY,reason:G}},u_4=async(X,Y)=>{let Q=await tA({...{minDelay:5,maxDelay:120},...X},Y,Ec9);return aA(Q)};var tR0=D(()=>{AZ1();wZ1()});var Pc9=async(X,Y)=>{let G;try{G=await X.send(new fR(Y))}catch(Q){if(G=Q,Q.name==="NotFound")return{state:KX.SUCCESS,reason:G}}return{state:KX.RETRY,reason:G}},l_4=async(X,Y)=>{let Q=await tA({...{minDelay:5,maxDelay:120},...X},Y,Pc9);return aA(Q)};var rR0=D(()=>{AZ1();wZ1()});var qc9=async(X,Y)=>{let G;try{return G=await X.send(new kz(Y)),{state:KX.SUCCESS,reason:G}}catch(Q){if(G=Q,Q.name==="NotFound")return{state:KX.RETRY,reason:G}}return{state:KX.RETRY,reason:G}},m_4=async(X,Y)=>{let Q=await tA({...{minDelay:5,maxDelay:120},...X},Y,qc9);return aA(Q)};var oR0=D(()=>{AZ1();LZ1()});var Ac9=async(X,Y)=>{let G;try{G=await X.send(new kz(Y))}catch(Q){if(G=Q,Q.name==="NotFound")return{state:KX.SUCCESS,reason:G}}return{state:KX.RETRY,reason:G}},d_4=async(X,Y)=>{let Q=await tA({...{minDelay:5,maxDelay:120},...X},Y,Ac9);return aA(Q)};var sR0=D(()=>{AZ1();LZ1()});var c_4,Tc9,Ic9,Vc9,i_4;var p_4=D(()=>{U20();N20();O20();w20();E20();q20();T20();hM1();V20();M20();S20();k20();_20();b20();x20();g20();l20();d20();i20();n20();t20();o20();e20();Xj0();Gj0();Jj0();Wj0();Kj0();Fj0();Bj0();zj0();Dj0();Lj0();Pj0();Aj0();Ij0();jj0();Rj0();Cj0();vj0();fj0();yj0();hj0();uj0();mj0();cj0();pj0();aj0();rj0();sj0();XM0();GM0();QM0();ZM0();$M0();HM0();UM0();NM0();OM0();wZ1();LZ1();wM0();EM0();qM0();TM0();GS1();QS1();VM0();MM0();JS1();SM0();ZS1();kM0();_M0();bM0();xM0();gM0();lM0();dM0();iM0();nM0();tM0();oM0();eM0();YR0();QR0();ZR0();$R0();HR0();UR0();NR0();OR0();DR0();LR0();PR0();AR0();IR0();jR0();RR0();CR0();vR0();fR0();yR0();hR0();uR0();mR0();cR0();iR0();pR0();nR0();aR0();vR();tR0();rR0();oR0();sR0();c_4=Y1(R0(),1),Tc9={AbortMultipartUploadCommand:F20,CompleteMultipartUploadCommand:B20,CopyObjectCommand:z20,CreateBucketCommand:D20,CreateBucketMetadataConfigurationCommand:L20,CreateBucketMetadataTableConfigurationCommand:P20,CreateMultipartUploadCommand:A20,CreateSessionCommand:tJ1,DeleteBucketCommand:j20,DeleteBucketAnalyticsConfigurationCommand:I20,DeleteBucketCorsCommand:R20,DeleteBucketEncryptionCommand:C20,DeleteBucketIntelligentTieringConfigurationCommand:v20,DeleteBucketInventoryConfigurationCommand:f20,DeleteBucketLifecycleCommand:y20,DeleteBucketMetadataConfigurationCommand:h20,DeleteBucketMetadataTableConfigurationCommand:u20,DeleteBucketMetricsConfigurationCommand:m20,DeleteBucketOwnershipControlsCommand:c20,DeleteBucketPolicyCommand:p20,DeleteBucketReplicationCommand:a20,DeleteBucketTaggingCommand:r20,DeleteBucketWebsiteCommand:s20,DeleteObjectCommand:DZ1,DeleteObjectsCommand:Yj0,DeleteObjectTaggingCommand:Qj0,DeletePublicAccessBlockCommand:Zj0,GetBucketAbacCommand:$j0,GetBucketAccelerateConfigurationCommand:Hj0,GetBucketAclCommand:Uj0,GetBucketAnalyticsConfigurationCommand:Nj0,GetBucketCorsCommand:Oj0,GetBucketEncryptionCommand:wj0,GetBucketIntelligentTieringConfigurationCommand:Ej0,GetBucketInventoryConfigurationCommand:qj0,GetBucketLifecycleConfigurationCommand:Tj0,GetBucketLocationCommand:Vj0,GetBucketLoggingCommand:Mj0,GetBucketMetadataConfigurationCommand:Sj0,GetBucketMetadataTableConfigurationCommand:kj0,GetBucketMetricsConfigurationCommand:_j0,GetBucketNotificationConfigurationCommand:bj0,GetBucketOwnershipControlsCommand:xj0,GetBucketPolicyCommand:gj0,GetBucketPolicyStatusCommand:lj0,GetBucketReplicationCommand:dj0,GetBucketRequestPaymentCommand:ij0,GetBucketTaggingCommand:nj0,GetBucketVersioningCommand:tj0,GetBucketWebsiteCommand:oj0,GetObjectCommand:_R,GetObjectAclCommand:ej0,GetObjectAttributesCommand:YM0,GetObjectLegalHoldCommand:JM0,GetObjectLockConfigurationCommand:WM0,GetObjectRetentionCommand:KM0,GetObjectTaggingCommand:FM0,GetObjectTorrentCommand:BM0,GetPublicAccessBlockCommand:zM0,HeadBucketCommand:fR,HeadObjectCommand:kz,ListBucketAnalyticsConfigurationsCommand:DM0,ListBucketIntelligentTieringConfigurationsCommand:LM0,ListBucketInventoryConfigurationsCommand:PM0,ListBucketMetricsConfigurationsCommand:AM0,ListBucketsCommand:EZ1,ListDirectoryBucketsCommand:PZ1,ListMultipartUploadsCommand:IM0,ListObjectsCommand:jM0,ListObjectsV2Command:bR,ListObjectVersionsCommand:RM0,ListPartsCommand:qZ1,PutBucketAbacCommand:CM0,PutBucketAccelerateConfigurationCommand:vM0,PutBucketAclCommand:fM0,PutBucketAnalyticsConfigurationCommand:yM0,PutBucketCorsCommand:hM0,PutBucketEncryptionCommand:uM0,PutBucketIntelligentTieringConfigurationCommand:mM0,PutBucketInventoryConfigurationCommand:cM0,PutBucketLifecycleConfigurationCommand:pM0,PutBucketLoggingCommand:aM0,PutBucketMetricsConfigurationCommand:rM0,PutBucketNotificationConfigurationCommand:sM0,PutBucketOwnershipControlsCommand:XR0,PutBucketPolicyCommand:GR0,PutBucketReplicationCommand:JR0,PutBucketRequestPaymentCommand:WR0,PutBucketTaggingCommand:KR0,PutBucketVersioningCommand:FR0,PutBucketWebsiteCommand:BR0,PutObjectCommand:uo,PutObjectAclCommand:zR0,PutObjectLegalHoldCommand:wR0,PutObjectLockConfigurationCommand:ER0,PutObjectRetentionCommand:qR0,PutObjectTaggingCommand:TR0,PutPublicAccessBlockCommand:VR0,RenameObjectCommand:MR0,RestoreObjectCommand:SR0,SelectObjectContentCommand:kR0,UpdateBucketMetadataInventoryTableConfigurationCommand:_R0,UpdateBucketMetadataJournalTableConfigurationCommand:bR0,UpdateObjectEncryptionCommand:xR0,UploadPartCommand:gR0,UploadPartCopyCommand:lR0,WriteGetObjectResponseCommand:dR0},Ic9={paginateListBuckets:V_4,paginateListDirectoryBuckets:M_4,paginateListObjectsV2:S_4,paginateListParts:k_4},Vc9={waitUntilBucketExists:u_4,waitUntilBucketNotExists:l_4,waitUntilObjectExists:m_4,waitUntilObjectNotExists:d_4};i_4=class i_4 extends $K{};c_4.createAggregatedClient(Tc9,i_4,{paginators:Ic9,waiters:Vc9})});var n_4=D(()=>{U20();N20();O20();w20();E20();q20();T20();hM1();V20();M20();S20();k20();_20();b20();x20();g20();l20();d20();i20();n20();t20();o20();e20();Xj0();Jj0();Gj0();Wj0();Kj0();Fj0();Bj0();zj0();Dj0();Lj0();Pj0();Aj0();Ij0();jj0();Rj0();Cj0();vj0();fj0();yj0();hj0();uj0();mj0();cj0();pj0();aj0();rj0();sj0();XM0();GM0();QM0();ZM0();$M0();HM0();UM0();NM0();OM0();wZ1();LZ1();wM0();EM0();qM0();TM0();GS1();QS1();VM0();SM0();MM0();JS1();ZS1();kM0();_M0();bM0();xM0();gM0();lM0();dM0();iM0();nM0();tM0();oM0();eM0();YR0();QR0();ZR0();$R0();HR0();UR0();NR0();OR0();DR0();LR0();PR0();AR0();IR0();jR0();RR0();CR0();vR0();fR0();yR0();hR0();uR0();mR0();cR0()});var a_4=()=>{};var t_4=D(()=>{a_4();iR0();pR0();nR0();aR0()});var r_4=D(()=>{tR0();rR0();oR0();sR0()});var o_4=()=>{};var s_4=()=>{};var e_4=()=>{};var Xf4=D(()=>{vR();p_4();n_4();c0();t_4();r_4();o_4();PT0();s_4();e_4()});function Gf4(X){let{port:Y,query:G}=X,{protocol:Q,path:J,hostname:W}=X;if(Q&&Q.slice(-1)!==":")Q+=":";if(Y)W+=`:${Y}`;if(J&&J.charAt(0)!=="/")J=`/${J}`;let Z=G?Yf4.buildQueryString(G):"";if(Z&&Z[0]!=="?")Z=`?${Z}`;let $="";if(X.username!=null||X.password!=null){let H=X.username??"",U=X.password??"";$=`${H}:${U}@`}let K="";if(X.fragment)K=`#${X.fragment}`;return`${Q}//${$}${W}${J}${Z}${K}`}var Yf4;var Qf4=D(()=>{Yf4=Y1(d21(),1)});var Jf4="UNSIGNED-PAYLOAD",Zf4="X-Amz-Content-Sha256";class KS1{signer;constructor(X){let Y={service:X.signingName||X.service||"s3",uriEscapePath:X.uriEscapePath||!1,applyChecksum:X.applyChecksum||!1,...X};this.signer=new Wf4.SignatureV4MultiRegion(Y)}presign(X,{unsignableHeaders:Y=new Set,hoistableHeaders:G=new Set,unhoistableHeaders:Q=new Set,...J}={}){return this.prepareRequest(X,{unsignableHeaders:Y,unhoistableHeaders:Q,hoistableHeaders:G}),this.signer.presign(X,{expiresIn:900,unsignableHeaders:Y,unhoistableHeaders:Q,...J})}presignWithCredentials(X,Y,{unsignableHeaders:G=new Set,hoistableHeaders:Q=new Set,unhoistableHeaders:J=new Set,...W}={}){return this.prepareRequest(X,{unsignableHeaders:G,unhoistableHeaders:J,hoistableHeaders:Q}),this.signer.presignWithCredentials(X,Y,{expiresIn:900,unsignableHeaders:G,unhoistableHeaders:J,...W})}prepareRequest(X,{unsignableHeaders:Y=new Set,unhoistableHeaders:G=new Set,hoistableHeaders:Q=new Set}={}){Y.add("content-type"),Object.keys(X.headers).map(($)=>$.toLowerCase()).filter(($)=>$.startsWith("x-amz-server-side-encryption")).forEach(($)=>{if(!Q.has($))G.add($)}),X.headers[Zf4]=Jf4;let J=X.headers.host,W=X.port,Z=`${X.hostname}${X.port!=null?":"+W:""}`;if(!J||J===X.hostname&&X.port!=null)X.headers.host=Z}}var Wf4;var eR0=D(()=>{Wf4=Y1(wo(),1)});var $f4,Kf4,HS1=async(X,Y,G={})=>{let Q,J;if(typeof X.config.endpointProvider==="function"){let N=(await $f4.getEndpointFromInstructions(Y.input,Y.constructor,X.config)).properties?.authSchemes?.[0];if(N?.name==="sigv4a")J=N?.signingRegionSet?.join(",");else J=N?.signingRegion;Q=new KS1({...X.config,signingName:N?.signingName,region:async()=>J})}else Q=new KS1(X.config);let W=(B,N)=>async(z)=>{let{request:O}=z;if(!Kf4.HttpRequest.isInstance(O))throw Error("Request to be presigned is not an valid HTTP request.");delete O.headers["amz-sdk-invocation-id"],delete O.headers["amz-sdk-request"],delete O.headers["x-amz-user-agent"];let w,E={...G,signingRegion:G.signingRegion??N.signing_region??J,signingService:G.signingService??N.signing_service};if(N.s3ExpressIdentity)w=await Q.presignWithCredentials(O,N.s3ExpressIdentity,E);else w=await Q.presign(O,E);return{response:{},output:{$metadata:{httpStatusCode:200},presigned:w}}},Z="presignInterceptMiddleware",$=X.middlewareStack.clone();$.addRelativeTo(W,{name:Z,relation:"before",toMiddleware:"awsAuthMiddleware",override:!0});let K=Y.resolveMiddleware($,X.config,{}),{output:H}=await K({input:Y.input}),{presigned:U}=H;return Gf4(U)};var Hf4=D(()=>{Qf4();eR0();$f4=Y1(h0(),1),Kf4=Y1(l7(),1)});var Ff4=D(()=>{Hf4();eR0()});import{extname as jc9}from"path";function mo(X){let Y;try{Y=decodeURIComponent(X)}catch{Y=X}let Q=Y.replace(/\0/g,"").replace(/[\x00-\x1f\x7f]/g,"").replace(/\\/g,"/").split("/"),J=[];for(let W of Q)if(W==="..")J.pop();else if(W!=="."&&W!=="")J.push(W);return J.join("/")}function yR(X,Y){let G=mo(Y);if(!G)throw Error("Key is empty after sanitization");return`${X}/${G}`}function Uf4(X,Y){if(!Y)return`${X}/`;let G=mo(Y);return`${X}/${G}${G.endsWith("/")?"":"/"}`}function XS0(X,Y){let G=`${X}/`;if(Y.startsWith(G))return Y.slice(G.length);return Y}function rA(X){let Y=jc9(X).toLowerCase();return Mc9[Y]??"application/octet-stream"}function FS1(X){let Y=X.split(";")[0].trim();if(Rc9.has(Y))return!0;if(Y.startsWith("text/"))return!0;return!1}var Mc9,Rc9;var YS0=D(()=>{Mc9={".json":"application/json",".html":"text/html",".htm":"text/html",".css":"text/css",".js":"application/javascript",".mjs":"application/javascript",".ts":"text/typescript",".txt":"text/plain",".md":"text/markdown",".csv":"text/csv",".xml":"application/xml",".svg":"image/svg+xml",".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".gif":"image/gif",".webp":"image/webp",".pdf":"application/pdf",".zip":"application/zip",".gz":"application/gzip",".tar":"application/x-tar",".wasm":"application/wasm",".yaml":"application/yaml",".yml":"application/yaml",".toml":"application/toml"};Rc9=new Set(["application/json","text/html","text/css","application/javascript","text/typescript","text/plain","text/markdown","text/csv","application/xml","image/svg+xml","application/yaml","application/toml"])});class GS0{client;bucket;constructor(X){this.bucket=X.bucket,this.client=new $K({endpoint:X.endpoint,region:X.region,credentials:{accessKeyId:X.accessKeyId,secretAccessKey:X.secretAccessKey},forcePathStyle:X.forcePathStyle})}async get(X,Y){let G=yR(X,Y),Q=await this.client.send(new kz({Bucket:this.bucket,Key:G})),J=Q.ContentLength??0,W=Q.ContentType??rA(Y);if(J>Bf4){let H=await HS1(this.client,new _R({Bucket:this.bucket,Key:G}),{expiresIn:3600});return{error:"FILE_TOO_LARGE",size:J,maxInlineSize:Bf4,presignedUrl:H,contentType:W}}let $=await(await this.client.send(new _R({Bucket:this.bucket,Key:G}))).Body.transformToByteArray(),K=FS1(W);return{content:K?new TextDecoder().decode($):Buffer.from($).toString("base64"),contentType:W,encoding:K?"utf-8":"base64",size:J,lastModified:Q.LastModified,etag:Q.ETag}}async put(X,Y,G,Q){let J=yR(X,Y),W=Q?.contentType??rA(Y);return{etag:(await this.client.send(new uo({Bucket:this.bucket,Key:J,Body:typeof G==="string"?Buffer.from(G,"utf-8"):G,ContentType:W}))).ETag,key:Y}}async list(X,Y){let G=Uf4(X,Y?.prefix),Q=await this.client.send(new bR({Bucket:this.bucket,Prefix:G,MaxKeys:Y?.maxKeys??1000,ContinuationToken:Y?.continuationToken,Delimiter:Y?.delimiter})),J=Q.CommonPrefixes?.map((W)=>XS0(X,W.Prefix??"")).filter(Boolean);return{objects:(Q.Contents??[]).map((W)=>({key:XS0(X,W.Key??""),size:W.Size??0,lastModified:W.LastModified,etag:W.ETag})),isTruncated:Q.IsTruncated??!1,nextContinuationToken:Q.NextContinuationToken,commonPrefixes:J&&J.length>0?J:void 0}}async delete(X,Y){let G=yR(X,Y);await this.client.send(new DZ1({Bucket:this.bucket,Key:G}))}async head(X,Y){let G=yR(X,Y),Q=await this.client.send(new kz({Bucket:this.bucket,Key:G}));return{contentType:Q.ContentType??rA(Y),size:Q.ContentLength??0,lastModified:Q.LastModified,etag:Q.ETag}}async presignedGetUrl(X,Y,G=3600){let Q=yR(X,Y);return HS1(this.client,new _R({Bucket:this.bucket,Key:Q}),{expiresIn:G})}async presignedPutUrl(X,Y,G=3600,Q){let J=yR(X,Y);return HS1(this.client,new uo({Bucket:this.bucket,Key:J,ContentType:Q}),{expiresIn:G})}}var Bf4=1048576;var Nf4=D(()=>{Xf4();Ff4();YS0()});function Sc9(){let X=v6();return!!(X.s3Endpoint&&X.s3Bucket&&X.s3AccessKeyId&&X.s3SecretAccessKey)}function zf4(){if(TZ1!==void 0)return TZ1;if(!Sc9())return TZ1=null,null;let X=v6();return TZ1=new GS0({endpoint:X.s3Endpoint,bucket:X.s3Bucket,region:X.s3Region,accessKeyId:X.s3AccessKeyId,secretAccessKey:X.s3SecretAccessKey,forcePathStyle:X.s3ForcePathStyle}),TZ1}var TZ1;var Of4=D(()=>{m9();Nf4()});function Df4(X,Y){return{get:(G)=>X.get(Y,G),put:(G,Q,J)=>X.put(Y,G,Q,J),list:(G)=>X.list(Y,G),delete:(G)=>X.delete(Y,G),head:(G)=>X.head(Y,G),presignedGetUrl:(G,Q)=>X.presignedGetUrl(Y,G,Q),presignedPutUrl:(G,Q,J)=>X.presignedPutUrl(Y,G,Q,J)}}import{mkdir as Cc9,readdir as kc9,readFile as wf4,stat as US1,unlink as vc9,writeFile as _c9}from"fs/promises";import{createHmac as fc9}from"crypto";import{dirname as bc9,join as VZ1}from"path";function QS0(X){let Y=X.replace(/[^a-zA-Z0-9_-]/g,"_");return VZ1(yc9,Y)}function IZ1(X,Y){return VZ1(QS0(X),mo(Y))}class JS0{orgId;baseUrl;constructor(X,Y){this.orgId=X;this.baseUrl=Y}async get(X){let Y=IZ1(this.orgId,X),G=await US1(Y),Q=rA(X),J=await wf4(Y),W=FS1(Q);return{content:W?new TextDecoder().decode(J):Buffer.from(J).toString("base64"),contentType:Q,encoding:W?"utf-8":"base64",size:G.size,lastModified:G.mtime}}async put(X,Y,G){let Q=IZ1(this.orgId,X);return await Cc9(bc9(Q),{recursive:!0}),await _c9(Q,typeof Y==="string"?Buffer.from(Y,"utf-8"):Y),{key:X}}async list(X){let Y=X?.prefix?VZ1(QS0(this.orgId),mo(X.prefix)):QS0(this.orgId),G;try{G=await kc9(Y,{withFileTypes:!0})}catch{return{objects:[],isTruncated:!1}}let Q=X?.maxKeys??1000,J=X?.prefix,W=G.filter(($)=>$.isFile());if(X?.delimiter){let $=[],K=G.filter((O)=>O.isDirectory());for(let O of K){let w=J?`${J}/${O.name}/`:`${O.name}/`;$.push(w)}$.sort();let H=Q,U=$.slice(0,H);H-=U.length;let B=W.slice(0,H),N=$.length+W.length;return{objects:await Promise.all(B.map(async(O)=>{let w=await US1(VZ1(Y,O.name));return{key:J?`${J}/${O.name}`:O.name,size:w.size,lastModified:w.mtime}})),isTruncated:N>Q,commonPrefixes:U.length>0?U:void 0}}return{objects:await Promise.all(W.slice(0,Q).map(async($)=>{let K=await US1(VZ1(Y,$.name));return{key:J?`${J}/${$.name}`:$.name,size:K.size,lastModified:K.mtime}})),isTruncated:W.length>Q}}async delete(X){await vc9(IZ1(this.orgId,X))}async head(X){let Y=await US1(IZ1(this.orgId,X));return{contentType:rA(X),size:Y.size,lastModified:Y.mtime}}async presignedGetUrl(X){let Y=IZ1(this.orgId,X),G=await wf4(Y),Q=rA(X),J=Buffer.from(G).toString("base64");return`data:${Q};base64,${J}`}async presignedPutUrl(X,Y=3600){if(!this.baseUrl)throw Error("baseUrl required for presigned PUT URLs in dev mode");let G=mo(X),Q=Math.floor(Date.now()/1000)+Y,J=v6().encryptionKey||"dev-secret",W=`${this.orgId}:${G}:${Q}:PUT`,Z=fc9("sha256",J).update(W).digest("hex"),$=new URL(`/api/dev-assets/${this.orgId}/${G}`,this.baseUrl);return $.searchParams.set("expires",Q.toString()),$.searchParams.set("signature",Z),$.searchParams.set("method","PUT"),$.toString()}}var yc9="./data/assets";var Lf4=D(()=>{YS0();m9()});function xc9(X){if(!X)return;try{let Y=JSON.parse(X);if(typeof Y!=="object"||Y===null||Array.isArray(Y))return;let G={};for(let[Q,J]of Object.entries(Y))if(typeof J==="string")G[Q]=J;return Object.keys(G).length>0?G:void 0}catch{return}}function hc9(X,Y){for(let[G,Q]of Object.entries(Y)){let J=X[G];if(!J||J.length===0){let W=X["*"];if(!W||W.length===0)return!1;if(W.includes("*"))continue;for(let Z of Q)if(!W.includes(Z))return!1;continue}if(J.includes("*"))continue;for(let W of Q)if(!J.includes(W))return!1}return!0}function ZS0(X){let{auth:Y,headers:G,role:Q,permissions:J,userId:W}=X,Z=Y.api.hasPermission;return{hasPermission:async($)=>{if(Q&&ew0.includes(Q))return!0;if(J)return hc9(J,$);if(!Z)return console.error("[Auth] hasPermission API not available"),!1;try{if((await Z({headers:G,body:{permission:$}}))?.success===!0)return!0;let H={};for(let B of Object.keys($))H[B]=["*"];return(await Z({headers:G,body:{permission:H}}))?.success===!0}catch(K){return console.error("[Auth] Permission check failed:",K),!1}},organization:{create:async($)=>{return Y.api.createOrganization({headers:G,body:$})},update:async($)=>{return Y.api.updateOrganization({headers:G,body:$})},delete:async($)=>{await Y.api.deleteOrganization({headers:G,body:{organizationId:$}})},get:async($)=>{return Y.api.getFullOrganization({headers:G,query:$?{organizationId:$}:void 0})},list:async($)=>{return Y.api.listOrganizations({headers:G,query:$?{userId:$}:void 0})},addMember:async($)=>{return Y.api.addMember({headers:G,body:$})},removeMember:async($)=>{await Y.api.removeMember({headers:G,body:$})},listMembers:async($)=>{return Y.api.listMembers({headers:G,query:$?{organizationId:$.organizationId,limit:$.limit,offset:$.offset}:void 0})},updateMemberRole:async($)=>{return Y.api.updateMemberRole({headers:G,body:$})}},apiKey:{create:async($)=>{return Y.api.createApiKey({body:{...$,userId:W}})},list:async()=>{return Y.api.listApiKeys({headers:G})},update:async($)=>{return Y.api.updateApiKey({body:{...$,userId:W}})},delete:async($)=>{await Y.api.deleteApiKey({headers:G,body:{keyId:$}})}}}}async function WS0(X,Y,G){if(ew0.includes(G))return;let Q=await X.selectFrom("organizationRole").select(["permission"]).where("organizationId","=",Y).where("role","=",G).executeTakeFirst();if(!Q?.permission)return;try{return JSON.parse(Q.permission)}catch{console.error(`[Auth] Failed to parse permissions for role: ${G}`);return}}async function gc9(X,Y,G,Q=Pf4,J){let W=X.headers.get("Authorization");try{let Z=new Headers(X.headers);Z.set("X-MCP-Session-Auth","true");let $=await Q.measure("auth_get_mcp_session",()=>Y.api.getMcpSession({headers:Z}));if($){let K=$.userId,H=await Q.measure("auth_query_membership",()=>G.selectFrom("member").innerJoin("organization","organization.id","member.organizationId").select(["member.role","member.organizationId","organization.id as orgId","organization.slug as orgSlug","organization.name as orgName"]).where("member.userId","=",K).executeTakeFirst()),U=H?.role,B=H?{id:H.orgId,slug:H.orgSlug,name:H.orgName}:void 0;if(H&&U)J?.set(K,H.organizationId,U);let N;if(H&&U)N=await Q.measure("auth_fetch_role_permissions",()=>WS0(G,H.organizationId,U));return{user:{id:K,role:U},role:U,permissions:N,organization:B}}}catch(Z){console.error("[Auth] OAuth session check failed:",Z)}if(W?.startsWith("Bearer ")){let Z=W.replace("Bearer ","").trim();try{let $=await Q.measure("auth_verify_mesh_jwt",()=>m84(Z));if($){let K,H=$.metadata?.organizationId;if($.sub&&H){let N=J?.get($.sub,H);if(N)K=N;else if(K=(await Q.measure("auth_query_membership",()=>G.selectFrom("member").select(["member.role"]).where("member.userId","=",$.sub).where("member.organizationId","=",H).executeTakeFirst()))?.role,K)J?.set($.sub,H,K)}let U,B=$.metadata?.organizationId;if(B){let N=$.metadata?.organizationName,z=$.metadata?.organizationSlug;if(N||z)U={id:B,name:N,slug:z};else{let O=await Q.measure("auth_query_org_for_mesh_jwt",()=>G.selectFrom("organization").select(["id","slug","name"]).where("id","=",B).executeTakeFirst());U=O?{id:O.id,slug:O.slug,name:O.name}:{id:B}}}return{user:{id:$.sub,connectionId:$.metadata?.connectionId,role:K},role:K,permissions:$.permissions,organization:U}}}catch{}try{let $=await Q.measure("auth_verify_api_key",()=>Y.api.verifyApiKey({body:{key:Z}}));if($?.valid&&$.key){let K=$.key.metadata?.organization,H=$.key.permissions,U,B=$.key.userId;if(B&&K?.id){let N=J?.get(B,K.id);if(N)U=N;else if(U=(await Q.measure("auth_query_membership",()=>G.selectFrom("member").select(["member.role"]).where("member.userId","=",B).where("member.organizationId","=",K.id).executeTakeFirst()))?.role,B&&U)J?.set(B,K.id,U)}return{apiKeyId:$.key.id,user:{id:$.key.userId,role:U},role:U,permissions:H,organization:K?{id:K.id,slug:K.slug,name:K.name}:void 0}}}catch($){console.error("[Auth] API key check failed:",$)}}try{let Z=new Headers(X.headers);Z.delete("Authorization");let $=await Q.measure("auth_get_session",()=>Y.api.getSession({headers:Z}));if($){let K,H;if($.session.activeOrganizationId){let U=await Q.measure("auth_get_full_organization",()=>Y.api.getFullOrganization({headers:Z}).catch(()=>null));if(U)K={id:U.id,slug:U.slug,name:U.name},H=U.members?.find((N)=>N.userId===$.user.id)?.role;else K={id:$.session.activeOrganizationId,slug:"",name:""}}return{user:{id:$.user.id,email:$.user.email,emailVerified:!!$.user.emailVerified,name:$.user.name,image:$.user.image??void 0,role:H},role:H,organization:K}}}catch(Z){let $=Z;console.error("[Auth] Session check failed:",JSON.stringify({message:$.message,body:$.body,stack:$.stack},null,2))}return{user:void 0}}async function qf4(X){let Y=new uj(X.encryption.key),G=v6().clickhouseUrl,Q=!!G,J=Q?"clickhouse":"duckdb",W,Z;if(Q)W=new eG1(G),Z=new eG1(G);else{let{engine:w}=await _w0({basePath:wD()}),{engine:E}=await _w0({basePath:E2()});W=w,Z=E}let{resolve:$}=await import("path"),K=$(wD()),H=$(E2()),U=Q?(w)=>"monitoring_logs":(w)=>`read_ndjson('${K}/${w}/**/*.ndjson', auto_detect=true)`,B=process.env.USE_METRICS_ROLLUP!=="false",N=Q?(w)=>B?"monitoring_metrics_rollup_1m":"monitoring_metrics":(w)=>`read_ndjson('${H}/${w}/**/*.ndjson', auto_detect=true)`,z=new WQ1(X.db),O={connections:new GY1(X.db,Y),organizationSettings:new fw0(X.db),monitoring:new fD0(W,U,Z,N,J),virtualMcps:new QY1(X.db),users:new pw0(X.db),tags:new iw0(X.db),virtualMcpPluginConfigs:new bw0(X.db),aiProviderKeys:new XY1(X.db,Y),oauthPkceStates:new YL0(X.db),automations:VV1(X.db),triggerCallbackTokens:new XQ1(X.db),orgSsoConfig:new gw0(X.db,Y),orgSsoSessions:new uw0(X.db),registry:{items:new Dr(X.db),publishRequests:new wr(X.db),publishApiKeys:new Lr(X.db),monitorRuns:new _V1(X.db),monitorResults:new fV1(X.db),monitorConnections:new bV1(X.db)},brandContext:new YQ1(X.db),organizationDomains:new Bw(X.db)};return async(w,E)=>{let P=E?.timings??Pf4,q=qr(),M=w?await gc9(w,X.auth,X.db,P,X.memberRoleCache):{user:void 0},j=w?.headers.get("x-caller-id")??M.user?.connectionId??void 0,V=ZS0({auth:X.auth,headers:w?.headers??new Headers,role:M.role,permissions:M.permissions,userId:M.user?.id}),R={user:M.user};if(M.apiKeyId)R.apiKey={id:M.apiKeyId,name:"",userId:""};let k=M.organization,_=w?v6().baseUrl??`${new URL(w.url).origin}`:u$(),v=new SM(X.auth,R.user?.id,void 0,V,M.role,"self"),y={...O,threads:new ZQ1(z,k?.id)},h=new eE0(y.aiProviderKeys,X.modelListCache),i=zf4(),p=i&&k?Df4(i,k.id):v6().nodeEnv==="development"&&k?new JS0(k.id,_):null,f={timings:P,auth:R,connectionId:j,organization:k,storage:y,vault:Y,authInstance:X.auth,boundAuth:V,access:v,db:X.db,tracer:X.observability.tracer,meter:X.observability.meter,baseUrl:_,objectStorage:p,metadata:{requestId:crypto.randomUUID(),timestamp:new Date,wellKnownForwardableHeaders:Object.fromEntries(uc9.map((u)=>[u,w?.headers.get(u)??null]).filter(([u,r])=>r!==null)),userAgent:w?.headers.get("x-mesh-client")||w?.headers.get("User-Agent")||void 0,ipAddress:(w?.headers.get("CF-Connecting-IP")||w?.headers.get("X-Forwarded-For"))??void 0,properties:xc9(w?.headers.get("x-mesh-properties"))},eventBus:X.eventBus,aiProviders:h,createMCPProxy:async(u)=>{return await NZ4(u,f)},invalidateMemberRole:X.memberRoleCache?(u,r)=>X.memberRoleCache.invalidate(u,r):void 0,getOrCreateClient:q,pendingRevalidations:[],firecrawlApiKey:v6().firecrawlApiKey};return f}}var Ef4,eU,Pf4,uc9;var jZ1=D(()=>{lj();IT1();m9();Uw();Lz0();Ez0();NG4();iJ4();tK();pJ4();yw0();hw0();QZ4();JZ4();yV1();hV1();QQ1();lV1();mV1();Dz0();NH4();Of4();Lf4();eU={set:(X)=>{Ef4=X},create:async(X,Y)=>{return await Ef4(X,Y)}},Pf4={measure:async(X,Y)=>{return await Y()}},uc9=["x-hub-signature-256"]});async function Af4(X,Y){return(await Y.storage.connections.findById(X))?.connection_url??null}function lc9(X){let Y=X.toLowerCase();return Y.includes("resource_metadata=")||Y.includes("invalid_token")||Y.includes("oauth")}async function Tf4(X,Y={}){try{let G=await fetch(X,{method:"POST",headers:{...Y,"Content-Type":"application/json",Accept:"application/json, text/event-stream"},body:JSON.stringify({jsonrpc:"2.0",id:0,method:"initialize",params:{protocolVersion:"2025-06-18",capabilities:{},clientInfo:{name:"mcp-cms-proxy",version:"1.0.0"}}})});if(G.status===401){let Q=G.headers.get("WWW-Authenticate");if(Q){if(lc9(Q))return Q}if(await mc9(X))return'Bearer realm="mcp"'}return null}catch{return null}}async function mc9(X){try{let Y=new URL(X),G=new URL("/.well-known/oauth-authorization-server",Y.origin),Q=await fetch(G.toString(),{method:"GET",headers:{Accept:"application/json"}});if(Q.ok){let J=await Q.json();if(J.authorization_endpoint||J.token_endpoint||J.issuer)return!0}return!1}catch{return!1}}async function co(X){let G=new URL(X).pathname;if(G.endsWith("/"))G=G.slice(0,-1);let Q=new URL(X);Q.pathname=`${G}/.well-known/oauth-protected-resource`;let J=await fetch(Q.toString(),{method:"GET",headers:{Accept:"application/json"}});if(J.ok)return J;if(!$S0.includes(J.status))return J;let W=new URL(X);if(W.pathname=`/.well-known/oauth-protected-resource${G}`,J=await fetch(W.toString(),{method:"GET",headers:{Accept:"application/json"}}),!$S0.includes(J.status))return J;let Z=new URL(X);return Z.pathname="/.well-known/oauth-protected-resource",J=await fetch(Z.toString(),{method:"GET",headers:{Accept:"application/json"}}),J}async function dc9(X,Y){let G=await Af4(X,Y);if(!G)return null;let Q;try{Q=new URL(G).origin}catch{return null}try{let J=await co(G);if(J.ok){let W=await J.json();if(W.authorization_servers?.[0])return W.authorization_servers[0]}}catch{}return Q}async function If4(X){let Y=X.get("meshContext");if(!Y)Y=await eU.create(X.req.raw),X.set("meshContext",Y);return Y}async function Vf4({error:X,reqUrl:Y,connectionId:G,connectionUrl:Q,headers:J}){let W=X.message?.toLowerCase()??"";if(!(X.status===401||X.code===401||X.message?.includes("401")||W.includes("unauthorized")||W.includes("invalid_token")||W.includes("api key required")||W.includes("api-key required")))return null;if(Boolean(await Tf4(Q,J)))return new Response(null,{status:401,headers:{"WWW-Authenticate":`Bearer realm="mcp",resource_metadata="${Y.origin}/mcp/${G}/.well-known/oauth-protected-resource"`}});return new Response(JSON.stringify({error:"unauthorized",message:"Authentication required but server does not support OAuth"}),{status:401,headers:{"Content-Type":"application/json"}})}async function MZ1(X){let G=new URL(X).pathname;if(G.endsWith("/"))G=G.slice(0,-1);let Q=G!==""&&G!=="/",J=[];if(Q){let Z=new URL(X);Z.pathname=`/.well-known/oauth-authorization-server${G}`,J.push(Z);let $=new URL(X);$.pathname=`/.well-known/openid-configuration${G}`,J.push($);let K=new URL(X);K.pathname=`${G}/.well-known/openid-configuration`,J.push(K)}else{let Z=new URL(X);Z.pathname="/.well-known/oauth-authorization-server",J.push(Z);let $=new URL(X);$.pathname="/.well-known/openid-configuration",J.push($)}let W=null;for(let Z of J){if(W=await fetch(Z.toString(),{method:"GET",headers:{Accept:"application/json"}}),W.ok)return W;if(W.status!==404&&W.status!==401)return W}return W}var BS1,$S0,jf4=(X)=>{if(!(X.hostname==="localhost"||X.hostname.endsWith(".localhost")||X.hostname==="127.0.0.1"))X.protocol="https:";return X},Mf4=async(X)=>{let Y=X.req.param("connectionId"),G=await If4(X),Q=await Af4(Y,G);if(!Q)return X.json({error:"Connection not found"},404);let J=jf4(new URL(X.req.url)),W=`${J.origin}/mcp/${Y}`,Z=`${J.origin}/oauth-proxy/${Y}`;try{let $=await co(Q);if(!$.ok&&$S0.includes($.status)){if(await Tf4(Q))return new Response(JSON.stringify({resource:W,authorization_servers:[Z],bearer_methods_supported:["header"],scopes_supported:["*"]}),{status:200,headers:{"Content-Type":"application/json"}});return new Response($.body,{status:$.status,statusText:$.statusText,headers:{"Content-Type":"application/json"}})}if(!$.ok)return new Response($.body,{status:$.status,statusText:$.statusText,headers:{"Content-Type":"application/json"}});let K=await $.json();if("issuer"in K&&!("resource"in K)&&(("authorization_endpoint"in K)||("token_endpoint"in K))){let B={resource:W,authorization_servers:[Z],bearer_methods_supported:["header"],scopes_supported:"scopes_supported"in K&&Array.isArray(K.scopes_supported)&&K.scopes_supported.length>0?K.scopes_supported:["*"]};return new Response(JSON.stringify(B),{status:200,headers:{"Content-Type":"application/json"}})}let U={...K,resource:W,authorization_servers:[Z]};return new Response(JSON.stringify(U),{status:$.status,statusText:$.statusText,headers:{"Content-Type":"application/json"}})}catch($){let K=$;return console.error("[oauth-proxy] Failed to proxy OAuth protected resource metadata:",K),X.json({error:"Failed to proxy OAuth metadata",message:K.message},502)}},Rf4;var NS1=D(()=>{NG();jZ1();BS1=new U5,$S0=[404,401,406];BS1.get("/.well-known/oauth-protected-resource/mcp/:connectionId",(X)=>Mf4(X));BS1.get("/mcp/:connectionId/.well-known/oauth-protected-resource",(X)=>Mf4(X));BS1.get("/.well-known/oauth-authorization-server/oauth-proxy/:connectionId",async(X)=>{let Y=X.req.param("connectionId"),G=await If4(X),Q=await dc9(Y,G);if(!Q)return X.json({error:"Connection not found or no auth server"},404);try{let J=await MZ1(Q);if(!J.ok)return new Response(J.body,{status:J.status,statusText:J.statusText,headers:{"Content-Type":"application/json"}});let W=await J.json(),$=`${jf4(new URL(X.req.url)).origin}/oauth-proxy/${Y}`,K={...W,authorization_endpoint:W.authorization_endpoint?`${$}/authorize`:void 0,token_endpoint:W.token_endpoint?`${$}/token`:void 0,registration_endpoint:W.registration_endpoint?`${$}/register`:void 0};return new Response(JSON.stringify(K),{status:200,headers:{"Content-Type":"application/json"}})}catch(J){let W=J;return console.error("[oauth-proxy] Failed to proxy auth server metadata:",W),X.json({error:"Failed to proxy auth server metadata",message:W.message},502)}});Rf4=BS1});async function zS1(X){try{let Y;try{let Q=await co(X);if(Q.ok)Y=(await Q.json()).authorization_servers?.[0]}catch{}if(!Y)Y=new URL(X).origin;let G=await MZ1(Y);if(G.ok)return(await G.json()).token_endpoint??null;return null}catch{return null}}var KS0=D(()=>{NS1()});class I3{db;vault;constructor(X,Y){this.db=X;this.vault=Y}async get(X){let Y=await this.db.selectFrom("downstream_tokens").selectAll().where("connectionId","=",X).executeTakeFirst();if(!Y)return null;return this.decryptToken(Y)}async upsert(X){let Y=new Date().toISOString(),G=await this.vault.encrypt(X.accessToken),Q=X.refreshToken?await this.vault.encrypt(X.refreshToken):null,J=X.clientSecret?await this.vault.encrypt(X.clientSecret):null;return await this.db.transaction().execute(async(W)=>{let Z=await W.selectFrom("downstream_tokens").select(["id","createdAt"]).where("connectionId","=",X.connectionId).executeTakeFirst();if(Z)return await W.updateTable("downstream_tokens").set({accessToken:G,refreshToken:Q,scope:X.scope,expiresAt:X.expiresAt?.toISOString()??null,clientId:X.clientId,clientSecret:J,tokenEndpoint:X.tokenEndpoint,updatedAt:Y}).where("id","=",Z.id).execute(),{id:Z.id,connectionId:X.connectionId,accessToken:X.accessToken,refreshToken:X.refreshToken,scope:X.scope,expiresAt:X.expiresAt,createdAt:Z.createdAt,updatedAt:Y,clientId:X.clientId,clientSecret:X.clientSecret,tokenEndpoint:X.tokenEndpoint};let $=u7("dtok");return await W.insertInto("downstream_tokens").values({id:$,connectionId:X.connectionId,accessToken:G,refreshToken:Q,scope:X.scope,expiresAt:X.expiresAt?.toISOString()??null,clientId:X.clientId,clientSecret:J,tokenEndpoint:X.tokenEndpoint,createdAt:Y,updatedAt:Y}).execute(),{id:$,connectionId:X.connectionId,accessToken:X.accessToken,refreshToken:X.refreshToken,scope:X.scope,expiresAt:X.expiresAt,createdAt:Y,updatedAt:Y,clientId:X.clientId,clientSecret:X.clientSecret,tokenEndpoint:X.tokenEndpoint}})}async delete(X){await this.db.deleteFrom("downstream_tokens").where("connectionId","=",X).execute()}isExpired(X,Y=0){if(!X.expiresAt)return!1;let Q=(X.expiresAt instanceof Date?X.expiresAt:new Date(X.expiresAt)).getTime();if(Number.isNaN(Q))return!0;return Q-Y<Date.now()}async decryptToken(X){let Y=await this.vault.decrypt(X.accessToken),G=X.refreshToken?await this.vault.decrypt(X.refreshToken):null,Q=X.clientSecret?await this.vault.decrypt(X.clientSecret):null;return{id:X.id,connectionId:X.connectionId,accessToken:Y,refreshToken:G,scope:X.scope,expiresAt:X.expiresAt,createdAt:X.createdAt,updatedAt:X.updatedAt,clientId:X.clientId,clientSecret:Q,tokenEndpoint:X.tokenEndpoint}}}var xR=D(()=>{EH()});function cc9(X){if(!X)return;let Y={};for(let[G,Q]of Object.entries(X))if(Q&&typeof Q==="object"&&!Array.isArray(Q)&&"__binding"in Q){let{__binding:J,...W}=Q;Y[G]=W}else Y[G]=Q;return Y}async function HS0(X,Y,G){let Q=X.id,J=MD0(X.configuration_state,X.configuration_scopes),W=Y.auth.user,Z=W?.id??Y.auth.apiKey?.userId??(G?X.created_by:void 0),[$,K]=Z?await l84({sub:Z,user:{id:Z,email:W?.email,name:W?.name,image:W?.image,role:W?.role},metadata:{state:cc9(X.configuration_state),meshUrl:Y.baseUrl,connectionId:Q,organizationId:Y.organization?.id,organizationName:Y.organization?.name,organizationSlug:Y.organization?.slug},permissions:J}).then((O)=>[O,null]).catch((O)=>[null,O]):[null,Error("User ID required to issue configuration token")];if(K)console.error("Failed to issue configuration token:",$);let H=Y.auth.user?.connectionId,U={...H?{"x-caller-id":H}:{},...Y.metadata.wellKnownForwardableHeaders??{},"x-request-id":Y.metadata.requestId},B=null,N=new I3(Y.db,Y.vault),z=await N.get(Q);if(z){let O=!!z.refreshToken&&!!z.tokenEndpoint;if(N.isExpired(z,O?300000:0))if(O){let E=z.tokenEndpoint;if(X.connection_url&&z.tokenEndpoint?.includes("/oauth-proxy/")){let q=await zS1(X.connection_url);if(q)E=q}let P=await iY1({...z,tokenEndpoint:E});if(P.success&&P.accessToken)await N.upsert({connectionId:Q,accessToken:P.accessToken,refreshToken:P.refreshToken??z.refreshToken,scope:P.scope??z.scope,expiresAt:P.expiresIn?new Date(Date.now()+P.expiresIn*1000):null,clientId:z.clientId,clientSecret:z.clientSecret,tokenEndpoint:E}),B=P.accessToken;else{if(P.permanent===!0)await N.delete(Q);console.error("[Proxy] token refresh failed",{connectionId:Q,status:P.status,errorCode:P.errorCode,permanent:P.permanent===!0,deleted:P.permanent===!0})}}else await N.delete(Q),console.warn(`[Proxy] Token expired for ${Q} with no refresh capability (refreshToken: ${!!z.refreshToken}, tokenEndpoint: ${!!z.tokenEndpoint})`);else B=z.accessToken}if(!B&&X.connection_token)B=X.connection_token;if(B)U.Authorization=`Bearer ${B}`;if($)U["x-mesh-token"]=$;return U}var Sf4=D(()=>{RD0();lj();iI1();KS0();xR()});function Cf4(X){let Y=new JY1({command:X.command,args:X.args,env:X.env,cwd:X.cwd,stderr:"pipe"}),G=X.name||X.id,Q="\x1B[2m",J="\x1B[0m";return Y.stderr?.on("data",(W)=>{let Z=W.toString().trimEnd();if(Z)console.error(`${Z} \x1B[2m[${G}]\x1B[0m`)}),Y}var kf4=D(()=>{Cz0()});var ic9="mcp.mesh",io;var vf4=D(()=>{RH();yV1();Na();io=class io extends Ha{options;constructor(X,Y){super(X);this.options=Y}toolsListPromise=null;fetchToolsFromServer(){if(!this.toolsListPromise)this.toolsListPromise=new Promise((X)=>{let Y=`auth-tools-${Date.now()}`,G=this.innerTransport.onmessage;this.innerTransport.onmessage=(Q)=>{if("id"in Q&&Q.id===Y)if(this.innerTransport.onmessage=G,this.toolsListPromise=null,"result"in Q){let J=Q.result?.tools??null;X(J)}else X(null);else G?.(Q)},this.innerTransport.send({jsonrpc:"2.0",id:Y,method:"tools/list",params:{}}).catch(()=>{this.innerTransport.onmessage=G,this.toolsListPromise=null,X(null)})});return this.toolsListPromise}async ensureToolsMap(){let X=this.options.cache??HQ(),Y=await lq("tools",this.options.connection.id,async()=>{let G=await this.fetchToolsFromServer();if(G===null)throw Error("Failed to fetch tools list");return G},X,(G)=>this.options.ctx.pendingRevalidations.push(G));if(!Y)return new Map;return new Map(Y.map((G)=>[G.name,G]))}async handleOutgoingMessage(X){if(!this.isRequest(X))return this.innerTransport.send(X);let Y=X;if(Y.method==="tools/call")await this.authorizeToolCall(Y),this.stripMetaFromArguments(Y);return this.innerTransport.send(X)}async authorizeToolCall(X){if(this.options.superUser)return;let G=X.params.name,{ctx:Q,connection:J}=this.options;if(await this.isPublicTool(G))return;if(!Q.auth.user?.id&&!Q.auth.apiKey?.id)throw Error("Authentication required. Please provide a valid OAuth token or API key.");let W=async()=>{return(await this.ensureToolsMap()).get(G)?._meta};await new SM(Q.authInstance,Q.auth.user?.id??Q.auth.apiKey?.userId,G,Q.boundAuth,Q.auth.user?.role,J.id,W).check(G)}async isPublicTool(X){if(X.startsWith("MESH_PUBLIC_"))return!0;let G=(await this.ensureToolsMap()).get(X);if(!G?._meta)return!1;return G._meta[ic9]?.public_tool===!0}stripMetaFromArguments(X){let Y=X.params;if(Y.arguments&&"_meta"in Y.arguments){let{_meta:G,...Q}=Y.arguments;Y.arguments=Q}}}});class FS0{patterns=[{type:"email",regex:/[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}/g},{type:"api_key",regex:/(?:api[_-]?key|token|secret|password|bearer)\s*[:=]\s*['"]?[\w-]{16,}['"]?/gi},{type:"jwt",regex:/eyJ[A-Za-z0-9-_]+\.eyJ[A-Za-z0-9-_]+\.[A-Za-z0-9-_.+/=]*/g},{type:"credit_card",regex:/\b\d{4}[- ]?\d{4}[- ]?\d{4}[- ]?\d{4}\b/g},{type:"ssn",regex:/\b\d{3}-\d{2}-\d{4}\b/g}];redact(X){if(X===null||X===void 0)return X;if(typeof X==="string")return this.redactString(X);if(Array.isArray(X))return X.map((Y)=>this.redact(Y));if(typeof X==="object"){let Y={};for(let[G,Q]of Object.entries(X)){let J=this.redactString(G);Y[J]=this.redact(Q)}return Y}return X}redactString(X){let Y=X;for(let G of this.patterns)Y=Y.replace(G.regex,`[REDACTED:${G.type}]`);return Y}}function US0(X,Y=65536){if(X.length<=Y&&Buffer.byteLength(X,"utf8")<=Y)return X;let G=Y-pc9;if(G<=0)return"... [TRUNCATED]".slice(0,Y);let Q=0,J=0;for(let W of X){let Z=W.charCodeAt(0)<=127?1:Buffer.byteLength(W,"utf8");if(Q+Z>G)break;Q+=Z,J+=W.length}return X.slice(0,J)+"... [TRUNCATED]"}var pc9;var _f4=D(()=>{pc9=Buffer.byteLength("... [TRUNCATED]","utf8")});function SZ1(X,Y){try{if(!X.organizationId)return;let G=BS0.redact(X.toolArguments??{}),Q=BS0.redact(X.result??{}),J=X.errorMessage?BS0.redactString(X.errorMessage):"";RZ1.logs.getLogger("mesh.monitoring","1.0.0").emit({severityNumber:X.isError?RZ1.SeverityNumber.ERROR:RZ1.SeverityNumber.INFO,severityText:X.isError?"ERROR":"INFO",body:X.toolName,attributes:{[J9.TYPE]:X.type??J51,[J9.ORGANIZATION_ID]:X.organizationId,[J9.CONNECTION_ID]:X.connectionId,[J9.CONNECTION_TITLE]:"",[J9.TOOL_NAME]:X.toolName,[J9.INPUT]:US0(JSON.stringify(G)),[J9.OUTPUT]:US0(JSON.stringify(Q)),[J9.IS_ERROR]:X.isError,[J9.ERROR_MESSAGE]:J,[J9.DURATION_MS]:X.duration,[J9.USER_ID]:X.userId||"",[J9.REQUEST_ID]:X.requestId,[J9.USER_AGENT]:X.userAgent||"",[J9.VIRTUAL_MCP_ID]:X.virtualMcpId||"",[J9.PROPERTIES]:X.properties?JSON.stringify(X.properties):""},context:Y})}catch{}}var RZ1,BS0;var OS1=D(()=>{tK();_f4();RZ1=Y1(H81(),1),BS0=new FS0});function NS0(X){let{ctx:Y,organizationId:G,connectionId:Q,toolName:J,durationMs:W,isError:Z}=X;if(!G||!Q||!J)return;let $={"tool.name":J,"organization.id":G,"connection.id":Q,status:Z?"error":"success","error.type":Z?X.errorType||"Error":""};Y.meter.createHistogram("tool.execution.duration",{description:"Duration of tool executions in milliseconds",unit:"ms"}).record(W,$),Y.meter.createCounter("tool.execution.count",{description:"Number of tool executions"}).add(1,$)}function ff4(X){if(!X.isError)return;let Y=X.content;if(!Array.isArray(Y))return;for(let G of Y)if(G&&typeof G==="object"&&"type"in G&&G.type==="text"&&"text"in G&&typeof G.text==="string")return G.text;return}function bf4(X){if(!X)return;let Y=X._meta;if(!Y||typeof Y!=="object"||Array.isArray(Y))return;let G=Y.properties;if(!G||typeof G!=="object"||Array.isArray(G))return;let Q={};for(let[J,W]of Object.entries(G))if(typeof W==="string")Q[J]=W;return Object.keys(Q).length>0?Q:void 0}function yf4(X,Y){if(!X&&!Y)return;if(!X)return Y;if(!Y)return X;return{...Y,...X}}var xf4=D(()=>{s9();OS1();tK()});var DS1,po;var hf4=D(()=>{Na();OS1();xf4();DS1=Y1(l0(),1);po=class po extends Ha{options;inflightRequests=new Map;constructor(X,Y){super(X);this.options=Y}async handleOutgoingMessage(X){if(this.isRequest(X)){let Y=X;this.onRequestStart(Y)}return this.innerTransport.send(X)}handleIncomingMessage(X){if(this.isResponse(X)){let Y=X;this.onResponseEnd(Y)}this.onmessage?.(X)}onRequestStart(X){let{ctx:Y,connectionId:G}=this.options,Q,J;if(X.method==="tools/call"&&X.params){let Z=X.params;Q=Z.name,J=Z.arguments}let W;if(X.method==="tools/call"&&Q)W=Y.tracer.startSpan("mcp.proxy.callTool",{attributes:{"connection.id":G,"tool.name":Q,"request.id":Y.metadata.requestId,"jsonrpc.id":X.id,"jsonrpc.method":X.method}});if(X.id!==null&&X.id!==void 0)this.inflightRequests.set(X.id,{startTime:Date.now(),method:X.method,toolName:Q,toolArguments:J,span:W})}onResponseEnd(X){if(X.id===null||X.id===void 0)return;let Y=this.inflightRequests.get(X.id);if(!Y)return;let{ctx:G,connectionId:Q}=this.options,{startTime:J,method:W,toolName:Z,toolArguments:$,span:K}=Y,H=Date.now()-J;if(this.inflightRequests.delete(X.id),W!=="tools/call"||!Z)return;let U=G.organization?.id??"",B="error"in X,N=B?X.error:X.result,z=B?{content:[{type:"text",text:X.error?.message||"Unknown error"}],isError:!0}:N;if(G.meter.createHistogram("connection.proxy.duration").record(H,{"connection.id":Q,"organization.id":U,"tool.name":Z,status:B?"error":"success"}),B)G.meter.createCounter("connection.proxy.errors").add(1,{"connection.id":Q,"organization.id":U,"tool.name":Z,error:X.error?.message});else G.meter.createCounter("connection.proxy.requests").add(1,{"connection.id":Q,"organization.id":U,"tool.name":Z,status:"success"});if(U)NS0({ctx:G,organizationId:U,connectionId:Q,toolName:Z,durationMs:H,isError:B,errorType:B?"RemoteError":""});if(K){if(B&&X.error)K.recordException(Error(X.error.message));let O=bf4($),w=yf4(G.metadata.properties,O),E=DS1.trace.setSpan(DS1.context.active(),K);SZ1({organizationId:G.organization?.id??"",connectionId:Q,toolName:Z,toolArguments:$,result:z,duration:H,isError:Boolean(B),errorMessage:ff4(z)||null,userId:G.auth.user?.id||G.auth.apiKey?.userId||null,requestId:G.metadata.requestId,userAgent:G.metadata.userAgent||null,virtualMcpId:this.options.virtualMcpId||null,properties:w||null},E),K.end()}}async close(){for(let X of this.inflightRequests.values())if(X.span)X.span.setAttributes({"transport.closed":!0}),X.span.end();return this.inflightRequests.clear(),super.close()}}});var gf4=D(()=>{Na();vf4();hf4()});async function uf4(X,Y,G=!1){let Q=X.id,J=Y.connectionId&&Y.connectionId!==Q?Y.connectionId:void 0;switch(X.connection_type){case"STDIO":{if(v6().nodeEnv==="production"&&!v6().unsafeAllowStdioTransport)throw Error("STDIO connections are disabled in production. Set UNSAFE_ALLOW_STDIO_TRANSPORT=true to enable.");let W=X.connection_headers;if(!pN(W))throw Error("STDIO connection missing parameters");let Z=Cf4({id:Q,name:X.title,command:W.command,args:W.args,env:W.envVars,cwd:W.cwd});return Z=Fa(Z,($)=>new io($,{ctx:Y,connection:X,superUser:G}),($)=>new po($,{ctx:Y,connectionId:Q,virtualMcpId:J})),nc9(Z,Q)}case"HTTP":case"Websocket":{if(!X.connection_url)throw Error(`${X.connection_type} connection missing URL`);let W=await HS0(X,Y,G),Z=X.connection_headers;if(Z&&"headers"in Z)Object.assign(W,Z.headers);let $=new dN(new URL(X.connection_url),{requestInit:{headers:W}});return $=Fa($,(K)=>new io(K,{ctx:Y,connection:X,superUser:G}),(K)=>new po(K,{ctx:Y,connectionId:Q,virtualMcpId:J})),Y.getOrCreateClient($,Q)}case"SSE":{if(!X.connection_url)throw Error("SSE connection missing URL");let W=await HS0(X,Y,G),Z=X.connection_headers;if(Z&&"headers"in Z)Object.assign(W,Z.headers);let $=new aD(new URL(X.connection_url),{requestInit:{headers:W}});return $=Fa($,(K)=>new io(K,{ctx:Y,connection:X,superUser:G}),(K)=>new po(K,{ctx:Y,connectionId:Q,virtualMcpId:J})),Y.getOrCreateClient($,Q)}default:throw Error(`Unknown connection type: ${X.connection_type}`)}}var nc9;var lf4=D(()=>{m9();zw();g71();Wa();Sf4();mV1();kf4();gf4();nc9=qr()});function wS1(X){return X.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,"")}function zS0(X){if(X&&typeof X==="object"&&"gatewayClientId"in X&&typeof X.gatewayClientId==="string")return X.gatewayClientId;return}function OS0(X,Y){if(!Y)return X;let G=`${wS1(Y)}_`;return X.startsWith(G)?X.slice(G.length):X}function ac9(X){return X.split(/[-_]/).map((Y)=>Y?Y.charAt(0).toUpperCase()+Y.slice(1):Y).join(" ")}var LS1;var mf4=D(()=>{lN();LS1=class LS1 extends hY{clients;slugToKey=new Map;resolvedClients=new Map;toolsCache=null;resourcesCache=null;resourceTemplatesCache=null;promptsCache=null;resourceRouteMap=new Map;constructor(X,Y){super(Y?.clientInfo??{name:"gateway-client",version:"1.0.0"},{capabilities:Y?.capabilities});this.clients=X;for(let G of Object.keys(X)){let Q=wS1(G);if(this.slugToKey.has(Q))throw Error(`GatewayClient: duplicate slug "${Q}" from keys "${this.slugToKey.get(Q)}" and "${G}"`);this.slugToKey.set(Q,G)}}namespace(X,Y){return`${wS1(X)}_${Y}`}async resolveToolTarget(X){let Y=X.indexOf("_");if(Y!==-1){let Q=X.slice(0,Y),J=this.slugToKey.get(Q);if(J)return[J,X.slice(Y+1)]}let{tools:G}=await this.listTools();for(let Q of G){let J=zS0(Q._meta);if(!J)continue;if(OS0(Q.name,J)===X)return[J,X]}if(Y===-1)throw Error(`GatewayClient: could not resolve tool "${X}" \u2014 no namespace prefix and not found in any client`);throw Error(`GatewayClient: unknown namespace "${X.slice(0,Y)}" in "${X}" and not found by original name in any client`)}async resolvePromptTarget(X){let Y=X.indexOf("_");if(Y!==-1){let Q=X.slice(0,Y),J=this.slugToKey.get(Q);if(J)return[J,X.slice(Y+1)]}let{prompts:G}=await this.listPrompts();for(let Q of G){let J=zS0(Q._meta);if(!J)continue;if(OS0(Q.name,J)===X)return[J,X]}if(Y===-1)throw Error(`GatewayClient: could not resolve prompt "${X}" \u2014 no namespace prefix and not found in any client`);throw Error(`GatewayClient: unknown namespace "${X.slice(0,Y)}" in "${X}" and not found by original name in any client`)}resolveClient(X){let Y=this.resolvedClients.get(X);if(Y)return Y;let G=this.clients[X];if(!G)return Promise.reject(Error(`GatewayClient: unknown client key "${X}"`));let Q=G.client,W=(typeof Q==="function"?Promise.resolve(Q()):Promise.resolve(Q)).catch((Z)=>{throw this.resolvedClients.delete(X),Z});return this.resolvedClients.set(X,W),W}getResolvedClient(X){return this.resolveClient(X)}async fetchAllTools(X){let Y=[],G;do{let Q=await X.listTools(G?{cursor:G}:void 0);Y.push(...Q.tools),G=Q.nextCursor}while(G);return Y}async fetchAllResources(X){let Y=[],G;do{let Q=await X.listResources(G?{cursor:G}:void 0);Y.push(...Q.resources),G=Q.nextCursor}while(G);return Y}async fetchAllResourceTemplates(X){let Y=[],G;do{let Q=await X.listResourceTemplates(G?{cursor:G}:void 0);Y.push(...Q.resourceTemplates),G=Q.nextCursor}while(G);return Y}async fetchAllPrompts(X){let Y=[],G;do{let Q=await X.listPrompts(G?{cursor:G}:void 0);Y.push(...Q.prompts),G=Q.nextCursor}while(G);return Y}listTools(X,Y){if(!this.toolsCache)this.toolsCache=this.aggregateTools();return this.toolsCache}async aggregateTools(){let X=[];for(let[Y,G]of Object.entries(this.clients)){let Q=await this.resolveClient(Y),J=await this.fetchAllTools(Q),W=G.tools,Z=W?new Set(W):null;for(let $ of J){if(Z&&!Z.has($.name))continue;X.push({...$,name:this.namespace(Y,$.name),_meta:{...$._meta??{},gatewayClientId:Y}})}}return{tools:X}}listResources(X,Y){if(!this.resourcesCache)this.resourcesCache=this.aggregateResources();return this.resourcesCache}async aggregateResources(){let X=new Set,Y=[],G=new Map;for(let[Q,J]of Object.entries(this.clients)){let W=await this.resolveClient(Q),Z=await this.fetchAllResources(W),$=J.resources,K=$?new Set($):null;for(let H of Z){if(K&&!K.has(H.uri)&&!(H.name&&K.has(H.name)))continue;if(X.has(H.uri)){console.warn(`GatewayClient: duplicate resource "${H.uri}" from client "${Q}" \u2014 skipping`);continue}X.add(H.uri),G.set(H.uri,Q),Y.push({...H,_meta:{...H._meta??{},gatewayClientId:Q}})}}return this.resourceRouteMap=G,{resources:Y}}listResourceTemplates(X,Y){if(!this.resourceTemplatesCache)this.resourceTemplatesCache=this.aggregateResourceTemplates();return this.resourceTemplatesCache}async aggregateResourceTemplates(){let X=new Set,Y=[];for(let[G,Q]of Object.entries(this.clients)){let J=await this.resolveClient(G),W=await this.fetchAllResourceTemplates(J);for(let Z of W){if(X.has(Z.uriTemplate)){console.warn(`GatewayClient: duplicate resource template "${Z.uriTemplate}" from client "${G}" \u2014 skipping`);continue}X.add(Z.uriTemplate),Y.push({...Z,_meta:{...Z._meta??{},gatewayClientId:G}})}}return{resourceTemplates:Y}}listPrompts(X,Y){if(!this.promptsCache)this.promptsCache=this.aggregatePrompts();return this.promptsCache}async aggregatePrompts(){let X=[];for(let[Y,G]of Object.entries(this.clients)){let Q=await this.resolveClient(Y),J=await this.fetchAllPrompts(Q),W=G.prompts,Z=W?new Set(W):null;for(let $ of J){if(Z&&!Z.has($.name))continue;X.push({...$,name:this.namespace(Y,$.name),title:$.title??ac9($.name),_meta:{...$._meta??{},gatewayClientId:Y}})}}return{prompts:X}}async callTool(X,Y,G){let[Q,J]=await this.resolveToolTarget(X.name);return(await this.resolveClient(Q)).callTool({...X,name:J},Y,G)}async readResource(X,Y){let G=await this.resolveResourceRoute(X.uri);return(await this.resolveClient(G)).readResource(X)}async getPrompt(X,Y){let[G,Q]=await this.resolvePromptTarget(X.name);return(await this.resolveClient(G)).getPrompt({...X,name:Q})}async resolveResourceRoute(X){let Y=this.resourceRouteMap.get(X);if(Y)return Y;if(this.resourcesCache=null,await this.listResources(),Y=this.resourceRouteMap.get(X),Y)return Y;throw Error(`GatewayClient: resource "${X}" not found in any upstream client`)}getServerCapabilities(){return{tools:{},resources:{},prompts:{}}}getInstructions(){return}refresh(){this.toolsCache=null,this.resourcesCache=null,this.resourceTemplatesCache=null,this.promptsCache=null}async close(){let X=[...this.resolvedClients.values()].map((Y)=>Y.then((G)=>G.close()).catch(()=>{}));await Promise.allSettled(X),await super.close()}}});var df4=D(()=>{mf4()});var DS0;var cf4=D(()=>{df4();xV1();DS0=class DS0 extends LS1{options;ctx;constructor(X,Y){let G=new Map(X.virtualMcp.connections.map((J)=>[J.connection_id,J])),Q={};for(let J of X.connections){let W=G.get(J.id);Q[J.id]={client:()=>Er(J,Y,X.superUser??!1,X.mcpListCache),...W?.selected_tools!=null?{tools:W.selected_tools}:{},...W?.selected_resources!=null?{resources:W.selected_resources}:{},...W?.selected_prompts!=null?{prompts:W.selected_prompts}:{}}}super(Q,{clientInfo:{name:"virtual-mcp-passthrough",version:"1.0.0"},capabilities:{tasks:{list:{},cancel:{},requests:{tool:{call:{}}}}}});this.options=X;this.ctx=Y}async[Symbol.asyncDispose](){await this.close()}getInstructions(){return this.options.virtualMcp.metadata?.instructions??void 0}}});function tc9(X,Y){if(X.connection_type!=="VIRTUAL")return!1;if(!Y||cN(Y))return!1;return X.id===Y}async function if4(X,Y,G=!1){let Q=X.id,J=await Y.storage.virtualMcps.findById(Q);if(!J)throw Error(`Virtual MCP not found: ${Q}`);return hR(J,Y,"passthrough",G)}async function hR(X,Y,G,Q=!1,J){let Z=X.connections.map((U)=>U.connection_id).map((U)=>Y.storage.connections.findById(U)),H={connections:(await Promise.all(Z)).filter((U)=>U!==null&&U.status==="active"&&!tc9(U,X.id)),virtualMcp:X,superUser:Q,mcpListCache:HQ()??void 0,listTimeoutMs:J?.listTimeoutMs};return new DS0(H,Y)}var CZ1=D(()=>{s9();RH();cf4()});async function MW(X,Y,G=!1){if(X.connection_type==="VIRTUAL")return if4(X,Y,G);return uf4(X,Y,G)}var ow0=D(()=>{lf4();CZ1()});function ES1(X){return(Y)=>{if(Y instanceof D6&&Y.code===I6.MethodNotFound)return X;throw Y}}var pf4=D(()=>{oX()});function wS0(X,Y,G){let Q=Er(X,Y,G,HQ()??void 0),J=pD(Q,{name:"mcp-mesh-enhanced",version:"1.0.0"},{capabilities:rc9,toolCallTimeoutMs:FA});return J.server.setRequestHandler(aP,async()=>{return await Q.listResources().catch(ES1({resources:[]}))}),J.server.setRequestHandler(tP,async()=>{return await Q.listResourceTemplates().catch(ES1({resourceTemplates:[]}))}),J.server.setRequestHandler(rP,async()=>{return await Q.listPrompts().catch(ES1({prompts:[]}))}),J}var rc9;var nf4=D(()=>{s9();oX();xV1();RH();pf4();rc9={tools:{},resources:{},prompts:{}}});var no=D(()=>{ow0();nf4()});function oA(){return v6().nodeEnv!=="production"}function PS1(X,Y){return X===q7.DEV_ASSETS(Y)}function ao(X,Y){let G=qH0(Y,X),Q=new Date().toISOString();return{id:G.id??q7.DEV_ASSETS(X),title:G.title,description:G.description??null,icon:G.icon??null,app_name:G.app_name??null,app_id:G.app_id??null,organization_id:X,created_by:"system",created_at:Q,updated_at:Q,connection_type:G.connection_type,connection_url:G.connection_url??null,connection_token:null,connection_headers:null,oauth_config:null,configuration_state:null,configuration_scopes:null,metadata:G.metadata??null,tools:oc9,bindings:["OBJECT_STORAGE"],status:"active"}}var oc9;var kZ1=D(()=>{m9();lY1();s9();H0();oc9=WM.map((X)=>({name:X.name,description:`${X.name} operation for local file storage`,inputSchema:F.toJSONSchema(X.inputSchema),outputSchema:F.toJSONSchema(X.outputSchema)}))});var sc9,ec9,Xi9,Yi9,LS0;var af4=D(()=>{dY1();tY4();LW();XG4();GG4();lY1();Uj();JG4();s9();H0();x0();Uw();RH();no();kZ1();zw();wz0();sc9=[{name:/^(COLLECTION_REGISTRY_APP_LIST|REGISTRY_ITEM_LIST)$/,inputSchema:F.object({})}],ec9={LLM:mI1,LLMS:mI1,ASSISTANTS:aY4,MCP:YG4,OBJECT_STORAGE:WM,WORKFLOW:ZF0,WORKFLOW_EXECUTION:bi6,AI_GATEWAY_BILLING:QG4,EVENT_BUS:yI1,TRIGGER:xI1,REGISTRY:sc9,BRAND:lI1},Xi9=wU.extend({binding:F.union([F.array(F.object({}).passthrough()),F.object({}).passthrough(),F.string()]).optional(),include_virtual:F.boolean().optional().describe("Whether to include VIRTUAL connections in the results. Defaults to false."),slug:F.string().optional().describe("Filter by connection slug. Matches against app_name, or a slug derived from connection_url or title.")}),Yi9=rD(Z3),LS0=m1({name:"COLLECTION_CONNECTIONS_LIST",description:"List all connections in the organization with filtering, sorting, and pagination",annotations:{title:"List Connections",readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:Xi9,outputSchema:Yi9,handler:async(X,Y)=>{await Y.access.check();let G=s1(Y),Q=X.binding?typeof X.binding==="string"?(()=>{let B=ec9[X.binding.toUpperCase()];if(!B)throw Error(`Unknown binding: ${X.binding}`);return B})():X.binding:void 0,J=Q?Hq1(Q):void 0,W=!!J,Z=X.limit??100,$=X.offset??0,{items:K,totalCount:H}=await Y.storage.connections.list(G.id,{includeVirtual:X.include_virtual??!1,slug:X.slug,where:X.where,orderBy:X.orderBy,limit:W?void 0:Z,offset:W?void 0:$});if(J){let B=HQ(),N=q7.SELF(G.id);await Promise.all(K.map(async(z)=>{if(z.tools!==null)return;let O=z.id===N?async()=>{let{listManagementTools:E}=await Promise.resolve().then(() => (to(),qS1));return E(Y)}:async()=>{let E=await MW(z,Y,!0);try{return(await E.listTools()).tools}finally{await E.close().catch(()=>{})}},w=await lq("tools",z.id,O,B);if(w!==null)z.tools=w}))}if(oA()){let B=u$(),N=q7.DEV_ASSETS(G.id);if(!K.some((z)=>z.id===N)){let z=ao(G.id,B);if(!X.slug||YY1(z)===X.slug)K.unshift(z)}}if(W){let B=(await Promise.all(K.map(async(w)=>{if(!w.tools||w.tools.length===0)return null;return J.isImplementedBy(w.tools.map((P)=>({name:P.name,inputSchema:P.inputSchema,outputSchema:P.outputSchema})))?w:null}))).filter((w)=>w!==null),N=B.length,z=B.slice($,$+Z),O=$+Z<N;return{items:z,totalCount:N,hasMore:O}}let U=$+Z<H;return{items:K,totalCount:H,hasMore:U}}})});var Gi9,ES0;var tf4=D(()=>{LW();s9();x0();Uw();RH();no();kZ1();zw();Gi9=l71(Z3),ES0=m1({name:"COLLECTION_CONNECTIONS_GET",description:"Get a connection's configuration, tools list, and status by ID.",annotations:{title:"Get Connection",readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},_meta:{ui:{visibility:["app"]}},inputSchema:u71,outputSchema:Gi9,handler:async(X,Y)=>{let G=s1(Y);if(await Y.access.check(),oA()&&PS1(X.id,G.id))return{item:ao(G.id,u$())};let Q=await Y.storage.connections.findById(X.id);if(!Q||Q.organization_id!==G.id)return{item:null};if(Q.tools===null){let J=q7.SELF(G.id),W=Q.id===J?async()=>{let{listManagementTools:$}=await Promise.resolve().then(() => (to(),qS1));return $(Y)}:async()=>{let $=await MW(Q,Y,!0);try{return(await $.listTools()).tools}finally{await $.close().catch(()=>{})}},Z=await lq("tools",Q.id,W,HQ(),($)=>Y.pendingRevalidations.push($));if(Z!==null)Q.tools=Z}return{item:Q}}})});function rf4(X,Y,G){if(Y.some((Q)=>Q!=="*"&&Q.startsWith("SELF::"))&&X.SELF===void 0)X.SELF={value:`${G}_self`}}async function Zi9(X,Y,G,Q){for(let W of Y){if(W==="*")continue;let[Z]=ZG4(W),$=dI1(Z,X);if($===void 0||$===null)throw Error(`Scope references key "${Z}" but it's not present in state`)}let J=WG4(X,Y);for(let W of J){if(W.endsWith("_self"))continue;let Z=await Q.storage.connections.findById(W);if(!Z||Z.organization_id!==G)throw Error(`Referenced connection not found: ${W}`);try{await Q.access.check(W)}catch($){throw Error(`Access denied to referenced connection: ${W}. ${$.message}`)}}}var Qi9,Ji9,PS0;var of4=D(()=>{RD0();no();xR();H0();x0();RH();ZY1();zw();Qi9=F.object({id:F.string().describe("ID of the connection to update"),data:I71.describe("Partial connection data to update")}),Ji9=F.object({item:Z3.describe("The updated connection entity")});PS0=m1({name:"COLLECTION_CONNECTIONS_UPDATE",description:"Update a connection's configuration. Re-fetches tools from the server on URL change.",annotations:{title:"Update Connection",readOnlyHint:!1,destructiveHint:!0,idempotentHint:!0,openWorldHint:!1},inputSchema:Qi9,outputSchema:Ji9,handler:async(X,Y)=>{B0(Y);let G=s1(Y);await Y.access.check();let Q=w4(Y);if(!Q)throw Error("User ID required to update connection");let{id:J,data:W}=X,Z=await Y.storage.connections.findById(J);if(!Z||Z.organization_id!==G.id)throw Error("Connection not found in organization");let $=W.connection_type??Z.connection_type,K=W.connection_url??Z.connection_url;if($==="VIRTUAL"){let E=Zj(K);if(!E)throw Error("VIRTUAL connection requires connection_url in format: virtual://$virtual_mcp_id");let P=await Y.storage.virtualMcps.findById(E);if(!P)throw Error(`Virtual MCP not found: ${E}`);if(P.organization_id!==G.id)throw Error("Virtual MCP does not belong to the current organization");K=Wj(E)}let H=W.configuration_state??Z.configuration_state??{},U=W.configuration_scopes??Z.configuration_scopes??[];if(W.configuration_state!==void 0||W.configuration_scopes!==void 0){if(W.configuration_state!==void 0)H=W.configuration_state??{};else if(H===null||H===void 0)H={};if(W.configuration_scopes!==void 0)U=W.configuration_scopes??[];if(U.length>0){let E=H;rf4(E,U,G.id),await Zi9(E,U,G.id,Y)}}let B=W.connection_token??Z.connection_token;if(!B)try{let P=await new I3(Y.db,Y.vault).get(J);if(P?.accessToken)B=P.accessToken}catch{}let N=await Rq({id:Z.id,title:W.title??Z.title,connection_type:$,connection_url:K,connection_token:B,connection_headers:W.connection_headers??Z.connection_headers}).catch(()=>null),z=N?.tools?.length?N.tools:null;if(W.configuration_scopes===void 0&&N?.scopes?.length)U=N.scopes;rf4(H,U,G.id);let O={...W,connection_url:K,tools:null,configuration_state:H,configuration_scopes:U,updated_by:Q},w=await Y.storage.connections.update(J,O);if(z)HQ()?.set("tools",J,z).catch(()=>{});if((W.configuration_state!==void 0||W.configuration_scopes!==void 0)&&H&&U)try{await(await MW(w,Y,!1)).callTool({name:"ON_MCP_CONFIGURATION",arguments:{state:H,scopes:U}})}catch(E){console.error("Failed to invoke ON_MCP_CONFIGURATION callback",E)}return{item:w}}})});var Wi9,qS0;var sf4=D(()=>{LW();H0();RX();x0();RH();zw();Wi9=m71.extend({force:F.boolean().optional().describe("If true, removes this connection from all agents that reference it before deleting")}),qS0=m1({name:"COLLECTION_CONNECTIONS_DELETE",description:"Permanently delete a connection. Set force=true to auto-remove from referencing Virtual MCPs.",annotations:{title:"Delete Connection",readOnlyHint:!1,destructiveHint:!0,idempotentHint:!0,openWorldHint:!1},inputSchema:Wi9,outputSchema:d71(Z3),handler:async(X,Y)=>{B0(Y);let G=s1(Y);await Y.access.check();let Q=await Y.storage.connections.findById(X.id);if(!Q)throw Error(`Connection not found: ${X.id}`);if(Q.organization_id!==G.id)throw Error("Connection not found in organization");if(Q.metadata?.isFixed===!0)throw Error("This connection is a fixed system connection and cannot be deleted");let W=await Y.storage.virtualMcps.listByConnectionId(G.id,X.id);if(W.length>0)if(X.force)await Y.storage.virtualMcps.removeConnectionReferences(X.id);else throw Error(JSON.stringify({code:"CONNECTION_IN_USE",agentNames:W.map((K)=>K.title)}));await Y.storage.connections.delete(X.id);let Z=await Y.storage.organizationSettings.get(G.id);if(Z?.registry_config){let{registries:K,blockedMcps:H}=Z.registry_config;if(X.id in K){let{[X.id]:U,...B}=K;await Y.storage.organizationSettings.upsert(G.id,{registry_config:{registries:B,blockedMcps:H}})}}HQ()?.invalidate(X.id).catch(()=>{});let $=w4(Y);if($)j4.capture({distinctId:$,event:"connection_deleted",groups:{organization:G.id},properties:{connection_id:Q.id,connection_type:Q.connection_type,app_name:Q.app_name??null,organization_id:G.id,forced:X.force??!1}});return{item:Q}}})});var AS0;var ef4=D(()=>{H0();x0();AS0=m1({name:"CONNECTION_TEST",description:"Test connection health and latency",annotations:{title:"Test Connection",readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!0},inputSchema:F.object({id:F.string()}),outputSchema:F.object({id:F.string(),healthy:F.boolean(),latencyMs:F.number()}),handler:async(X,Y)=>{let G=s1(Y);await Y.access.check();let Q=await Y.storage.connections.findById(X.id);if(!Q||Q.organization_id!==G.id)throw Error("Connection not found");let J=await Y.storage.connections.testConnection(X.id);return{id:X.id,...J}}})});var Xb4=D(()=>{SY4();af4();tf4();of4();sf4();ef4()});function Yb4(X){if(X===null||X===void 0)return"NULL";if(typeof X==="number")return String(X);if(typeof X==="boolean")return X?"TRUE":"FALSE";if(typeof X==="string")return`'${X.replace(/'/g,"''")}'`;if(X instanceof Date)return`'${X.toISOString()}'`;return`'${JSON.stringify(X).replace(/'/g,"''")}'`}function Hi9(X,Y){let G=X;for(let J=Y.length;J>=1;J--){let W=`$${J}`;if(G.includes(W))G=G.replaceAll(W,Yb4(Y[J-1]))}let Q=[];for(let J=0;J<G.length;J++)if(G[J]==="?")Q.push(J);for(let J=Math.min(Q.length,Y.length)-1;J>=0;J--){let W=Q[J],Z=Yb4(Y[J]);G=G.slice(0,W)+Z+G.slice(W+1)}return G}function Gb4(X){return X.replace(/-/g,"_")}function Ui9(X){return`app_${Gb4(X)}`}function Bi9(X){return`app_role_${Gb4(X)}`}function Ni9(X){if(X instanceof Error){let Y=X.message.toLowerCase(),G=X.code;return G==="3F000"||G==="42704"||G==="22023"||Y.includes("schema")&&Y.includes("does not exist")||Y.includes("role")&&Y.includes("does not exist")}return!1}async function zi9(X,Y,G){if(await O1`CREATE SCHEMA IF NOT EXISTS ${O1.id(Y)}`.execute(X),!(await O1`
2342
2342
  SELECT EXISTS (SELECT 1 FROM pg_roles WHERE rolname = ${G}) as exists
2343
- `.execute(X)).rows[0]?.exists)await O1`CREATE ROLE ${O1.id(G)} NOLOGIN`.execute(X);await O1`GRANT ${O1.id(G)} TO CURRENT_USER`.execute(X),await O1`GRANT USAGE, CREATE ON SCHEMA ${O1.id(Y)} TO ${O1.id(G)}`.execute(X),await O1`GRANT ALL ON ALL TABLES IN SCHEMA ${O1.id(Y)} TO ${O1.id(G)}`.execute(X),await O1`GRANT ALL ON ALL SEQUENCES IN SCHEMA ${O1.id(Y)} TO ${O1.id(G)}`.execute(X),await O1`ALTER DEFAULT PRIVILEGES IN SCHEMA ${O1.id(Y)} GRANT ALL ON TABLES TO ${O1.id(G)}`.execute(X),await O1`ALTER DEFAULT PRIVILEGES IN SCHEMA ${O1.id(Y)} GRANT ALL ON SEQUENCES TO ${O1.id(G)}`.execute(X),await O1`REVOKE ALL ON SCHEMA public FROM ${O1.id(G)}`.execute(X)}async function Oi9(X,Y,G,Q){try{return await X.transaction().execute(async(J)=>{return await O1`SET LOCAL ROLE ${O1.id(G)}`.execute(J),await O1`SET LOCAL search_path TO ${O1.id(Y)}`.execute(J),await O1.raw(Q).execute(J)})}catch(J){if(Ni9(J))return await zi9(X,Y,G),await X.transaction().execute(async(W)=>{return await O1`SET LOCAL ROLE ${O1.id(G)}`.execute(W),await O1`SET LOCAL search_path TO ${O1.id(Y)}`.execute(W),await O1.raw(Q).execute(W)});throw J}}var Ki9,Fi9,Qb4;var Jb4=D(()=>{A4();H0();x0();Ki9=F.object({results:F.array(F.unknown()).optional(),success:F.boolean().optional()});Fi9=F.object({sql:F.string().describe("The SQL query to run"),params:F.array(F.any()).describe("The parameters to pass to the SQL query").optional()});Qb4=m1({name:"DATABASES_RUN_SQL",description:"Run a SQL query in a connection-scoped isolated schema. Supports SELECT, DDL, and DML.",annotations:{title:"Run SQL Query",readOnlyHint:!1,destructiveHint:!0,idempotentHint:!1,openWorldHint:!1},inputSchema:Fi9,outputSchema:F.object({result:F.array(Ki9)}),handler:async(X,Y)=>{B0(Y),await Y.access.check();let G=Hi9(X.sql,X.params||[]);if(!Y.connectionId)throw Error("Connection context required for database access");let Q=Ui9(Y.connectionId),J=Bi9(Y.connectionId);return{result:[{results:(await Oi9(Y.db,Q,J,G)).rows,success:!0}]}}})});var Zb4,wi9,Wb4;var HL=D(()=>{H0();dY1();Zb4=F.object({connectionId:F.string().optional().describe("Filter subscriptions by connection ID (optional)")}),wi9=F.object({id:F.string().describe("Subscription ID"),connectionId:F.string().describe("Subscriber connection ID"),eventType:F.string().describe("Event type pattern"),publisher:F.string().nullable().describe("Publisher connection filter (null = all publishers)"),filter:F.string().nullable().describe("JSONPath filter expression"),enabled:F.boolean().describe("Whether subscription is enabled"),createdAt:F.string().datetime().describe("Created timestamp (ISO 8601)"),updatedAt:F.string().datetime().describe("Updated timestamp (ISO 8601)")}),Wb4=F.object({subscriptions:F.array(wi9).describe("List of subscriptions")})});var TS0;var $b4=D(()=>{x0();HL();TS0=m1({name:"EVENT_PUBLISH",description:`Publish an event. Supports immediate, scheduled (deliverAt), and recurring (cron) delivery.
2343
+ `.execute(X)).rows[0]?.exists)await O1`CREATE ROLE ${O1.id(G)} NOLOGIN`.execute(X);await O1`GRANT ${O1.id(G)} TO CURRENT_USER`.execute(X),await O1`GRANT USAGE, CREATE ON SCHEMA ${O1.id(Y)} TO ${O1.id(G)}`.execute(X),await O1`GRANT ALL ON ALL TABLES IN SCHEMA ${O1.id(Y)} TO ${O1.id(G)}`.execute(X),await O1`GRANT ALL ON ALL SEQUENCES IN SCHEMA ${O1.id(Y)} TO ${O1.id(G)}`.execute(X),await O1`ALTER DEFAULT PRIVILEGES IN SCHEMA ${O1.id(Y)} GRANT ALL ON TABLES TO ${O1.id(G)}`.execute(X),await O1`ALTER DEFAULT PRIVILEGES IN SCHEMA ${O1.id(Y)} GRANT ALL ON SEQUENCES TO ${O1.id(G)}`.execute(X),await O1`REVOKE ALL ON SCHEMA public FROM ${O1.id(G)}`.execute(X)}async function Oi9(X,Y,G,Q){try{return await X.transaction().execute(async(J)=>{return await O1`SET LOCAL ROLE ${O1.id(G)}`.execute(J),await O1`SET LOCAL search_path TO ${O1.id(Y)}`.execute(J),await O1.raw(Q).execute(J)})}catch(J){if(Ni9(J))return await zi9(X,Y,G),await X.transaction().execute(async(W)=>{return await O1`SET LOCAL ROLE ${O1.id(G)}`.execute(W),await O1`SET LOCAL search_path TO ${O1.id(Y)}`.execute(W),await O1.raw(Q).execute(W)});throw J}}var Ki9,Fi9,Qb4;var Jb4=D(()=>{A4();H0();x0();Ki9=F.object({results:F.array(F.unknown()).optional(),success:F.boolean().optional()});Fi9=F.object({sql:F.string().describe("The SQL query to run"),params:F.array(F.any()).describe("The parameters to pass to the SQL query").optional()});Qb4=m1({name:"DATABASES_RUN_SQL",description:"Run a SQL query in a connection-scoped isolated schema. Supports SELECT, DDL, and DML.",annotations:{title:"Run SQL Query",readOnlyHint:!1,destructiveHint:!0,idempotentHint:!1,openWorldHint:!1},inputSchema:Fi9,outputSchema:F.object({result:F.array(Ki9)}),handler:async(X,Y)=>{B0(Y),await Y.access.check();let G=Hi9(X.sql,X.params||[]);if(!Y.connectionId)throw Error("Connection context required for database access");console.warn("DATABASES_RUN_SQL invoked",{"tool.deprecation_probe":"DATABASES_RUN_SQL","connection.id":Y.connectionId,"organization.id":Y.organization?.id??null,"user.id":Y.auth.user?.id??null});let Q=Ui9(Y.connectionId),J=Bi9(Y.connectionId);return{result:[{results:(await Oi9(Y.db,Q,J,G)).rows,success:!0}]}}})});var Zb4,wi9,Wb4;var HL=D(()=>{H0();dY1();Zb4=F.object({connectionId:F.string().optional().describe("Filter subscriptions by connection ID (optional)")}),wi9=F.object({id:F.string().describe("Subscription ID"),connectionId:F.string().describe("Subscriber connection ID"),eventType:F.string().describe("Event type pattern"),publisher:F.string().nullable().describe("Publisher connection filter (null = all publishers)"),filter:F.string().nullable().describe("JSONPath filter expression"),enabled:F.boolean().describe("Whether subscription is enabled"),createdAt:F.string().datetime().describe("Created timestamp (ISO 8601)"),updatedAt:F.string().datetime().describe("Updated timestamp (ISO 8601)")}),Wb4=F.object({subscriptions:F.array(wi9).describe("List of subscriptions")})});var TS0;var $b4=D(()=>{x0();HL();TS0=m1({name:"EVENT_PUBLISH",description:`Publish an event. Supports immediate, scheduled (deliverAt), and recurring (cron) delivery.
2344
2344
 
2345
2345
  - Source is auto-set to the caller's connection ID.
2346
2346
  - Use EVENT_CANCEL to stop recurring events.`,annotations:{title:"Publish Event",readOnlyHint:!1,destructiveHint:!1,idempotentHint:!1,openWorldHint:!1},inputSchema:SY1,outputSchema:CY1,handler:async(X,Y)=>{B0(Y);let G=s1(Y);await Y.access.check();let Q=Y.connectionId;if(!Q)throw Error("Connection ID required to publish events. Use a connection-scoped token.");let J=await Y.eventBus.publish(G.id,Q,{type:X.type,subject:X.subject,data:X.data,deliverAt:X.deliverAt,cron:X.cron});return{id:J.id,type:J.type,source:J.source,time:J.time}}})});var IS0;var Kb4=D(()=>{x0();HL();IS0=m1({name:"EVENT_SUBSCRIBE",description:"Subscribe to events of a specific type. Caller's connection is set as subscriber automatically.",annotations:{title:"Subscribe to Events",readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:kY1,outputSchema:vY1,handler:async(X,Y)=>{B0(Y);let G=s1(Y);await Y.access.check();let Q=Y.connectionId;if(!Q)throw Error("Connection ID required to subscribe. Use a connection-scoped token.");let J=await Y.eventBus.subscribe(G.id,{connectionId:Q,eventType:X.eventType,publisher:X.publisher,filter:X.filter});return{subscription:{id:J.id,connectionId:J.connectionId,eventType:J.eventType,publisher:J.publisher,filter:J.filter,enabled:J.enabled,createdAt:J.createdAt instanceof Date?J.createdAt.toISOString():J.createdAt,updatedAt:J.updatedAt instanceof Date?J.updatedAt.toISOString():J.updatedAt}}}})});var VS0;var Hb4=D(()=>{x0();HL();VS0=m1({name:"EVENT_UNSUBSCRIBE",description:"Remove a subscription to stop receiving events of that type.",annotations:{title:"Unsubscribe from Events",readOnlyHint:!1,destructiveHint:!0,idempotentHint:!1,openWorldHint:!1},inputSchema:bY1,outputSchema:yY1,handler:async(X,Y)=>{B0(Y);let G=s1(Y);await Y.access.check();let Q=Y.connectionId;if(!Q)throw Error("Connection ID required to unsubscribe. Use a connection-scoped token.");let J=await Y.eventBus.getSubscription(G.id,X.subscriptionId);if(!J)throw Error(`Subscription not found: ${X.subscriptionId}`);if(J.connectionId!==Q)throw Error("Cannot unsubscribe from a subscription owned by another connection");return{success:(await Y.eventBus.unsubscribe(G.id,X.subscriptionId)).success,subscriptionId:X.subscriptionId}}})});var jS0;var Fb4=D(()=>{x0();HL();jS0=m1({name:"EVENT_CANCEL",description:"Stop a recurring event from delivering further. Only the original publisher can cancel.",annotations:{title:"Cancel Recurring Event",readOnlyHint:!1,destructiveHint:!0,idempotentHint:!0,openWorldHint:!1},inputSchema:xY1,outputSchema:hY1,handler:async(X,Y)=>{B0(Y);let G=s1(Y);await Y.access.check();let Q=Y.connectionId;if(!Q)throw Error("Connection ID required to cancel events. Use a connection-scoped token.");if(!await Y.eventBus.getEvent(G.id,X.eventId))throw Error(`Event not found: ${X.eventId}`);if(!(await Y.eventBus.cancelEvent(G.id,X.eventId,Q)).success)throw Error("Failed to cancel event. Either the event is already completed/failed, or you are not the publisher.");return{success:!0,eventId:X.eventId}}})});var MS0;var Ub4=D(()=>{x0();HL();MS0=m1({name:"EVENT_ACK",description:"Acknowledge event delivery after processing. Only needed for events received with retryAfter.",annotations:{title:"Acknowledge Event",readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:gY1,outputSchema:uY1,handler:async(X,Y)=>{B0(Y);let G=s1(Y);await Y.access.check();let Q=Y.connectionId;if(!Q)throw Error("Connection ID required to acknowledge events. Use a connection-scoped token.");if(!(await Y.eventBus.ackEvent(G.id,X.eventId,Q)).success)throw Error("Failed to acknowledge event. Either the event was not found, already delivered, or you are not a subscriber.");return{success:!0,eventId:X.eventId}}})});var RS0;var Bb4=D(()=>{x0();HL();RS0=m1({name:"EVENT_SUBSCRIPTION_LIST",description:"List event subscriptions. Filter by connection ID to scope results.",annotations:{title:"List Event Subscriptions",readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:Zb4,outputSchema:Wb4,handler:async(X,Y)=>{B0(Y);let G=s1(Y);return await Y.access.check(),{subscriptions:(await Y.eventBus.listSubscriptions(G.id,X.connectionId)).map((J)=>({id:J.id,connectionId:J.connectionId,eventType:J.eventType,publisher:J.publisher,filter:J.filter,enabled:J.enabled,createdAt:J.createdAt instanceof Date?J.createdAt.toISOString():J.createdAt,updatedAt:J.updatedAt instanceof Date?J.updatedAt.toISOString():J.updatedAt}))}}})});var SS0;var Nb4=D(()=>{x0();HL();SS0=m1({name:"EVENT_SYNC_SUBSCRIPTIONS",description:"Declaratively sync subscriptions: creates new, deletes removed, updates changed filters.",annotations:{title:"Sync Event Subscriptions",readOnlyHint:!1,destructiveHint:!0,idempotentHint:!0,openWorldHint:!1},inputSchema:_Y1,outputSchema:fY1,handler:async(X,Y)=>{B0(Y);let G=s1(Y);await Y.access.check();let Q=Y.connectionId;if(!Q)throw Error("Connection ID required to sync subscriptions. Use a connection-scoped token.");let J=await Y.eventBus.syncSubscriptions(G.id,{connectionId:Q,subscriptions:X.subscriptions});return{created:J.created,updated:J.updated,deleted:J.deleted,unchanged:J.unchanged,subscriptions:J.subscriptions.map((W)=>({id:W.id,connectionId:W.connectionId,eventType:W.eventType,publisher:W.publisher,filter:W.filter,enabled:W.enabled,createdAt:W.createdAt instanceof Date?W.createdAt.toISOString():W.createdAt,updatedAt:W.updatedAt instanceof Date?W.updatedAt.toISOString():W.updatedAt}))}}})});var zb4=D(()=>{$b4();Kb4();Hb4();Fb4();Ub4();Bb4();Nb4();HL()});var gR=D(()=>{Qq1()});function Ei9(){let X=Ob4[Math.floor(Math.random()*Ob4.length)];return`icon://${Db4[Math.floor(Math.random()*Db4.length)]}?color=${X}`}var Ob4,Db4,Pi9,qi9,CS0;var wb4=D(()=>{H0();x0();gR();Ob4=["red","orange","amber","yellow","lime","green","emerald","cyan","sky","blue","indigo","violet","purple","fuchsia","pink","rose"],Db4=["Star01","Zap","Heart","Globe01","Compass03","Lightbulb02","Rocket01","Flag01","BookOpen01","Shield01","Key01","Diamond01","Cube01","Target04","Award01","Briefcase01","Coffee","Feather","Hexagon01","Layers3_01","Map01","Palette","Package","Terminal"];Pi9=F.object({data:M71.describe("Data for the new virtual MCP")}),qi9=F.object({item:W3.describe("The created virtual MCP entity")}),CS0=m1({name:"COLLECTION_VIRTUAL_MCP_CREATE",description:"Create a Virtual MCP that aggregates tools from multiple connections into one endpoint.",annotations:{title:"Create Virtual MCP",readOnlyHint:!1,destructiveHint:!0,idempotentHint:!1,openWorldHint:!1},inputSchema:Pi9,outputSchema:qi9,handler:async(X,Y)=>{B0(Y);let G=s1(Y);await Y.access.check();let Q=w4(Y);if(!Q)throw Error("User ID required to create virtual MCP");let J={...X.data,icon:X.data.icon??Ei9()};return{item:await Y.storage.virtualMcps.create(G.id,Q,J)}}})});function Ai9(X){let Y=[],G=0;while(G<X.length){let Q=X[G];if(Q==="%")Y.push(".*");else if(Q==="_")Y.push(".");else if(/[.*+?^${}()|[\]\\]/.test(Q))Y.push("\\"+Q);else Y.push(Q);G++}return Y.join("")}function sA(X){return typeof X==="string"||typeof X==="number"}function kS0(X,Y){let G=Y.split("."),Q=X;for(let J of G){if(Q==null||typeof Q!=="object")return;Q=Q[J]}return Q}function Ti9(X,Y){return X.connections.some((G)=>G.connection_id===Y)}function AS1(X,Y){if("conditions"in Y){let{operator:$,conditions:K}=Y;switch($){case"and":return K.every((H)=>AS1(X,H));case"or":return K.some((H)=>AS1(X,H));case"not":return!K.every((H)=>AS1(X,H));default:return!0}}let{field:G,operator:Q,value:J}=Y,W=G.join(".");if(W==="connection_id"){if(Q!=="eq"||typeof J!=="string")return!1;return Ti9(X,J)}let Z=kS0(X,W);switch(Q){case"eq":return Z===J;case"gt":return sA(Z)&&sA(J)&&Z>J;case"gte":return sA(Z)&&sA(J)&&Z>=J;case"lt":return sA(Z)&&sA(J)&&Z<J;case"lte":return sA(Z)&&sA(J)&&Z<=J;case"in":return Array.isArray(J)&&J.includes(Z);case"like":if(typeof Z!=="string"||typeof J!=="string")return!1;if(J.length>100)return!1;let $=Ai9(J);return new RegExp(`^${$}$`,"i").test(Z);case"contains":if(typeof Z!=="string"||typeof J!=="string")return!1;return Z.toLowerCase().includes(J.toLowerCase());default:return!0}}function Ii9(X,Y){return[...X].sort((G,Q)=>{for(let J of Y){let W=J.field.join("."),Z=kS0(G,W),$=kS0(Q,W),K=0;if(Z==null&&$==null)continue;if(Z==null)K=J.nulls==="first"?-1:1;else if($==null)K=J.nulls==="first"?1:-1;else if(typeof Z==="string"&&typeof $==="string")K=Z.localeCompare($);else if(typeof Z==="number"&&typeof $==="number")K=Z-$;else K=String(Z).localeCompare(String($));if(K!==0)return J.direction==="desc"?-K:K}return 0})}var Vi9,ji9,vS0;var Lb4=D(()=>{LW();x0();gR();Vi9=wU,ji9=rD(W3),vS0=m1({name:"COLLECTION_VIRTUAL_MCP_LIST",description:"List all MCP virtual MCPs in the organization",annotations:{title:"List Virtual MCPs",readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:Vi9,outputSchema:ji9,handler:async(X,Y)=>{await Y.access.check();let G=s1(Y),Q=X.where&&!("conditions"in X.where)&&X.where.field.join(".")==="connection_id"&&X.where.operator==="eq"&&typeof X.where.value==="string"?X.where.value:void 0,J=X.where&&!("conditions"in X.where)&&X.where.field.join(".")==="pinned"&&X.where.operator==="eq"&&typeof X.where.value==="boolean"?X.where.value:void 0,Z=Q?await Y.storage.virtualMcps.listByConnectionId(G.id,Q):await Y.storage.virtualMcps.list(G.id,J!==void 0?{pinnedOnly:J}:void 0);if(X.where)Z=Z.filter((N)=>AS1(N,X.where));if(X.orderBy&&X.orderBy.length>0)Z=Ii9(Z,X.orderBy);let $=Z.length,K=X.offset??0,H=X.limit??100,U=Z.slice(K,K+H),B=K+H<$;return{items:U,totalCount:$,hasMore:B}}})});var Mi9,Ri9,_S0;var Eb4=D(()=>{H0();x0();gR();Mi9=F.object({id:F.string().describe("ID of the virtual MCP to retrieve")}),Ri9=F.object({item:W3.nullable().describe("The retrieved virtual MCP, or null if not found")}),_S0=m1({name:"COLLECTION_VIRTUAL_MCP_GET",description:"Get a Virtual MCP's configuration, connections, and virtual tools by ID.",annotations:{title:"Get Virtual MCP",readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:Mi9,outputSchema:Ri9,handler:async(X,Y)=>{B0(Y);let G=s1(Y);await Y.access.check();let Q=await Y.storage.virtualMcps.findById(X.id);if(Q&&Q.organization_id!==G.id)return{item:null};if(!Q)return{item:null};return{item:Q}}})});var Si9,Ci9,fS0;var Pb4=D(()=>{H0();x0();gR();Si9=F.object({id:F.string().describe("ID of the virtual MCP to update"),data:R71.describe("Partial virtual MCP data to update")}),Ci9=F.object({item:W3.describe("The updated virtual MCP entity")}),fS0=m1({name:"COLLECTION_VIRTUAL_MCP_UPDATE",description:"Update a Virtual MCP's name, slug, or connection list.",annotations:{title:"Update Virtual MCP",readOnlyHint:!1,destructiveHint:!0,idempotentHint:!0,openWorldHint:!1},inputSchema:Si9,outputSchema:Ci9,handler:async(X,Y)=>{B0(Y);let G=s1(Y);await Y.access.check();let Q=w4(Y);if(!Q)throw Error("User ID required to update virtual MCP");let J=await Y.storage.virtualMcps.findById(X.id);if(!J)throw Error(`Virtual MCP not found: ${X.id}`);if(J.organization_id!==G.id)throw Error(`Virtual MCP not found: ${X.id}`);let W={...X.data};if(W.metadata&&J.metadata)W.metadata={...J.metadata,...W.metadata};return{item:await Y.storage.virtualMcps.update(X.id,Q,W)}}})});var ki9,vi9,bS0;var qb4=D(()=>{H0();x0();gR();ki9=F.object({id:F.string().describe("ID of the virtual MCP to delete")}),vi9=F.object({item:W3.describe("The deleted virtual MCP entity")}),bS0=m1({name:"COLLECTION_VIRTUAL_MCP_DELETE",description:"Permanently delete a Virtual MCP and its virtual tools.",annotations:{title:"Delete Virtual MCP",readOnlyHint:!1,destructiveHint:!0,idempotentHint:!0,openWorldHint:!1},inputSchema:ki9,outputSchema:vi9,handler:async(X,Y)=>{B0(Y);let G=s1(Y);await Y.access.check();let Q=await Y.storage.virtualMcps.findById(X.id);if(!Q)throw Error(`Virtual MCP not found: ${X.id}`);if(Q.organization_id!==G.id)throw Error(`Virtual MCP not found: ${X.id}`);return await Y.storage.virtualMcps.delete(X.id),{item:Q}}})});var _i9,yS0;var Ab4=D(()=>{H0();x0();_i9=F.object({id:F.string(),virtualMcpId:F.string(),pluginId:F.string(),connectionId:F.string().nullable(),settings:F.record(F.string(),F.unknown()).nullable(),createdAt:F.string(),updatedAt:F.string()}),yS0=m1({name:"VIRTUAL_MCP_PLUGIN_CONFIG_GET",description:"Get a plugin's current configuration for a specific virtual MCP.",annotations:{title:"Get Virtual MCP Plugin Config",readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:F.object({virtualMcpId:F.string().describe("Virtual MCP ID"),pluginId:F.string().describe("Plugin ID")}),outputSchema:F.object({config:_i9.nullable()}),handler:async(X,Y)=>{B0(Y),await Y.access.check();let{virtualMcpId:G,pluginId:Q}=X,J=await Y.storage.virtualMcpPluginConfigs.get(G,Q);if(!J)return{config:null};return{config:{id:J.id,virtualMcpId:J.virtualMcpId,pluginId:J.pluginId,connectionId:J.connectionId,settings:J.settings,createdAt:J.createdAt instanceof Date?J.createdAt.toISOString():J.createdAt,updatedAt:J.updatedAt instanceof Date?J.updatedAt.toISOString():J.updatedAt}}}})});var fi9,xS0;var Tb4=D(()=>{H0();x0();kZ1();Uw();fi9=F.object({id:F.string(),virtualMcpId:F.string(),pluginId:F.string(),connectionId:F.string().nullable(),settings:F.record(F.string(),F.unknown()).nullable(),createdAt:F.string(),updatedAt:F.string()}),xS0=m1({name:"VIRTUAL_MCP_PLUGIN_CONFIG_UPDATE",description:"Set or update a plugin's configuration for a specific virtual MCP.",annotations:{title:"Update Virtual MCP Plugin Config",readOnlyHint:!1,destructiveHint:!0,idempotentHint:!0,openWorldHint:!1},inputSchema:F.object({virtualMcpId:F.string().describe("Virtual MCP ID"),pluginId:F.string().describe("Plugin ID"),connectionId:F.string().nullable().optional().describe("MCP connection to bind"),settings:F.record(F.string(),F.unknown()).nullable().optional().describe("Plugin-specific settings")}),outputSchema:F.object({config:fi9}),handler:async(X,Y)=>{B0(Y),await Y.access.check();let{virtualMcpId:G,pluginId:Q,connectionId:J,settings:W}=X,Z=w4(Y),$=await Y.storage.connections.findById(G);if(!$)throw Error(`Connection not found: ${G}`);let K=J?await Y.storage.connections.findById(J):null;if(J&&$.organization_id&&!K&&oA()){if(PS1(J,$.organization_id)){if(!Z)throw Error("User ID required to create dev-assets connection");let U=ao($.organization_id,u$());await Y.storage.connections.create({...U,organization_id:$.organization_id,created_by:Z})}}let H=await Y.storage.virtualMcpPluginConfigs.upsert(G,Q,{connectionId:J,settings:W});return{config:{id:H.id,virtualMcpId:H.virtualMcpId,pluginId:H.pluginId,connectionId:H.connectionId,settings:H.settings,createdAt:H.createdAt instanceof Date?H.createdAt.toISOString():H.createdAt,updatedAt:H.updatedAt instanceof Date?H.updatedAt.toISOString():H.updatedAt}}}})});var bi9,hS0;var Ib4=D(()=>{H0();x0();gR();bi9=F.object({connectionId:F.string(),toolName:F.string(),label:F.string(),icon:F.string().nullable().optional()}),hS0=m1({name:"VIRTUAL_MCP_PINNED_VIEWS_UPDATE",description:"Update the pinned sidebar views for a virtual MCP. Replaces all current pins.",annotations:{title:"Update Pinned Views",readOnlyHint:!1,destructiveHint:!0,idempotentHint:!0,openWorldHint:!1},inputSchema:F.object({virtualMcpId:F.string().describe("Virtual MCP ID"),pinnedViews:F.array(bi9).describe("Pinned views to set for the virtual MCP sidebar"),layout:F.object({defaultMainView:F.object({type:F.string(),id:F.string().optional(),toolName:F.string().optional()}).nullable().optional(),chatDefaultOpen:F.boolean().nullable().optional()}).optional()}),outputSchema:F.object({item:W3.nullable()}),handler:async(X,Y)=>{B0(Y);let G=s1(Y);await Y.access.check();let{virtualMcpId:Q,pinnedViews:J,layout:W}=X,Z=w4(Y),$=await Y.storage.virtualMcps.findById(Q);if(!$)throw Error(`Virtual MCP not found: ${Q}`);if($.organization_id!==G.id)throw Error(`Virtual MCP not found: ${Q}`);let K=$.metadata?.ui??{},H={...K,pinnedViews:J.length>0?J:null,layout:W??K.layout??null};return{item:await Y.storage.virtualMcps.update(Q,Z??"system",{metadata:{...$.metadata,ui:H}})}}})});var Vb4=D(()=>{wb4();Lb4();Eb4();Pb4();qb4();Ab4();Tb4();Ib4()});var gS0;var jb4=D(()=>{A$();x0();H0();gS0=m1({name:"MONITORING_LOG_GET",description:"Get a single monitoring log by ID with full input and output data.",annotations:{title:"Get Monitoring Log",readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:F.object({id:F.string().describe("Log ID to fetch")}),outputSchema:F.object({log:F.object({id:F.string().optional(),organizationId:F.string(),connectionId:F.string(),toolName:F.string(),input:F.record(F.string(),F.unknown()),output:F.record(F.string(),F.unknown()),isError:F.boolean(),errorMessage:F.string().nullish(),durationMs:F.number(),timestamp:F.string(),userId:F.string().nullish(),requestId:F.string(),userAgent:F.string().nullish(),virtualMcpId:F.string().nullish(),properties:F.record(F.string(),F.string()).nullish()}).nullable().describe("The monitoring log, or null if not found")}),handler:async(X,Y)=>{await Y.access.check(),await uP();let G=s1(Y),Q=await Y.storage.monitoring.getById(G.id,X.id);if(!Q)return{log:null};return{log:{...Q,timestamp:Q.timestamp instanceof Date?Q.timestamp.toISOString():Q.timestamp}}}})});var xi9,uS0;var Mb4=D(()=>{A$();x0();H0();xi9=F.object({id:F.string().optional().describe("Unique log identifier"),organizationId:F.string().describe("Organization ID"),connectionId:F.string().describe("Connection ID"),toolName:F.string().describe("Name of the tool that was called"),isError:F.boolean().describe("Whether the call resulted in an error"),errorMessage:F.string().nullish().describe("Error message if applicable"),durationMs:F.number().describe("Call duration in milliseconds"),timestamp:F.string().describe("ISO 8601 timestamp of the call"),userId:F.string().nullish().describe("User who triggered the call"),requestId:F.string().describe("Unique request identifier"),userAgent:F.string().nullish().describe("Client identifier (x-mesh-client header)"),virtualMcpId:F.string().nullish().describe("Virtual MCP (Agent) ID if routed through an agent"),properties:F.record(F.string(),F.string()).nullish().describe("Custom key-value metadata attached to the log")}),uS0=m1({name:"MONITORING_LOGS_LIST",description:"List monitoring logs for tool calls with filtering and pagination.",annotations:{title:"List Monitoring Logs",readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:F.object({connectionId:F.string().optional().describe("Filter by connection ID"),excludeConnectionIds:F.array(F.string()).optional().describe("Exclude logs from these connection IDs (e.g. system connections)"),virtualMcpId:F.string().optional().describe("Filter by Virtual MCP (Agent) ID"),toolName:F.string().optional().describe("Filter by tool name"),isError:F.boolean().optional().describe("Filter by error status"),startDate:F.string().datetime().optional().describe("Filter by start date (ISO 8601 datetime string)"),endDate:F.string().datetime().optional().describe("Filter by end date (ISO 8601 datetime string)"),limit:F.number().default(20).describe("Maximum number of results"),offset:F.number().default(0).describe("Offset for pagination"),properties:F.record(F.string(),F.string()).optional().describe("Filter by exact property key=value matches"),propertyKeys:F.array(F.string()).optional().describe("Filter by logs that have these property keys"),propertyPatterns:F.record(F.string(),F.string()).optional().describe("Filter by property value patterns (SQL LIKE, use % as wildcard)"),propertyInValues:F.record(F.string(),F.string()).optional().describe("Filter by exact match within comma-separated values (e.g., user_tags in 'Engineering')")}),outputSchema:F.object({logs:F.array(xi9).describe("Array of monitoring logs"),total:F.number().describe("Total number of logs matching filters"),offset:F.number().describe("Current offset for pagination"),limit:F.number().describe("Current limit for pagination")}),handler:async(X,Y)=>{await uP();let G=s1(Y),J=X.properties||X.propertyKeys||X.propertyPatterns||X.propertyInValues?{properties:X.properties,propertyKeys:X.propertyKeys,propertyPatterns:X.propertyPatterns,propertyInValues:X.propertyInValues}:void 0,W={organizationId:G.id,connectionId:X.connectionId,excludeConnectionIds:X.excludeConnectionIds,virtualMcpId:X.virtualMcpId,toolName:X.toolName,isError:X.isError,startDate:X.startDate?new Date(X.startDate):void 0,endDate:X.endDate?new Date(X.endDate):void 0,limit:X.limit,offset:X.offset,propertyFilters:J},Z=await Y.storage.monitoring.query(W);return{logs:Z.logs.map(({input:$,output:K,...H})=>({...H,timestamp:H.timestamp instanceof Date?H.timestamp.toISOString():H.timestamp})),total:Z.total,offset:X.offset,limit:X.limit}}})});var lS0;var Rb4=D(()=>{A$();x0();H0();lS0=m1({name:"MONITORING_STATS",description:"Get aggregated statistics (counts, latency, error rates) for tool call monitoring.",annotations:{title:"Get Monitoring Stats",readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:F.object({startDate:F.string().datetime().optional().describe("Filter by start date (ISO 8601 datetime string)"),endDate:F.string().datetime().optional().describe("Filter by end date (ISO 8601 datetime string)"),interval:F.string().regex(/^\d+[mhd]$/).optional().describe("Bucket interval for timeseries data (e.g. 1m, 5m, 2h, 1d). When provided, returns timeseries array."),connectionIds:F.array(F.string()).max(100).optional().describe("Filter by specific connection IDs (max 100)"),excludeConnectionIds:F.array(F.string()).max(100).optional().describe("Exclude specific connection IDs (max 100)"),toolNames:F.array(F.string()).max(100).optional().describe("Filter by specific tool names (max 100)"),status:F.enum(["success","error"]).optional().describe("Filter metrics by execution status"),topN:F.number().int().min(1).max(20).optional().describe("When provided with interval, also return top tools and their timeseries")}),outputSchema:F.object({totalCalls:F.number().describe("Total number of tool calls"),errorRate:F.number().optional().describe("Error rate as a decimal (0 to 1)"),avgDurationMs:F.number().describe("Average call duration in milliseconds"),errorRatePercent:F.string().optional().describe("Error rate as a percentage string"),totalErrors:F.number().optional().describe("Total number of errors"),p50DurationMs:F.number().optional().describe("50th percentile duration in milliseconds"),p95DurationMs:F.number().optional().describe("95th percentile duration in milliseconds"),connectionBreakdown:F.array(F.object({connectionId:F.string(),calls:F.number(),errors:F.number(),errorRate:F.number(),avgDurationMs:F.number()})).optional().describe("Per-connection metric breakdown"),topTools:F.array(F.object({toolName:F.string(),connectionId:F.string().nullable(),calls:F.number()})).optional().describe("Top tools ranked by calls"),topToolsTimeseries:F.array(F.object({timestamp:F.string(),toolName:F.string(),calls:F.number(),errors:F.number(),avg:F.number(),p95:F.number()})).optional().describe("Per-tool metric timeseries for the top tools"),timeseries:F.array(F.object({timestamp:F.string(),calls:F.number(),errors:F.number(),errorRate:F.number(),avg:F.number(),p50:F.number(),p95:F.number()})).optional().describe("Timeseries data points bucketed by interval")}),handler:async(X,Y)=>{let G=s1(Y);if(await Y.access.check(),await uP(),X.interval){let J=await Y.storage.monitoring.queryMetricTimeseries({organizationId:G.id,interval:X.interval,startDate:X.startDate?new Date(X.startDate):void 0,endDate:X.endDate?new Date(X.endDate):void 0,filters:{connectionIds:X.connectionIds,excludeConnectionIds:X.excludeConnectionIds,toolNames:X.toolNames,status:X.status}});if(!X.topN)return J;let W=await Y.storage.monitoring.queryMetricTopToolsTimeseries({organizationId:G.id,interval:X.interval,startDate:X.startDate?new Date(X.startDate):void 0,endDate:X.endDate?new Date(X.endDate):void 0,topN:X.topN,filters:{connectionIds:X.connectionIds,excludeConnectionIds:X.excludeConnectionIds,toolNames:X.toolNames,status:X.status}});return{...J,topTools:W.topTools,topToolsTimeseries:W.timeseries}}let Q=await Y.storage.monitoring.getStats({organizationId:G.id,startDate:X.startDate?new Date(X.startDate):void 0,endDate:X.endDate?new Date(X.endDate):void 0});return{...Q,errorRatePercent:(Q.errorRate*100).toFixed(2)}}})});var Sb4=D(()=>{jb4();Mb4();Rb4()});var mS0;var Cb4=D(()=>{H0();x0();mS0=m1({name:"ORGANIZATION_CREATE",description:"Create a new organization. The caller becomes the owner automatically.",annotations:{title:"Create Organization",readOnlyHint:!1,destructiveHint:!0,idempotentHint:!1,openWorldHint:!1},inputSchema:F.object({slug:F.string().min(1).max(50).regex(/^[a-z0-9-]+$/,"Slug must be lowercase alphanumeric with hyphens"),name:F.string().min(1).max(255),description:F.string().optional()}),outputSchema:F.object({id:F.string(),name:F.string(),slug:F.string(),logo:F.string().nullable().optional(),metadata:F.any().optional(),createdAt:F.string().datetime().describe("ISO 8601 timestamp"),members:F.array(F.any()).optional()}),handler:async(X,Y)=>{B0(Y),await Y.access.check();let G=w4(Y);if(!G)throw Error("User ID required to create organization");let Q=await Y.boundAuth.organization.create({name:X.name,slug:X.slug,metadata:X.description?{description:X.description}:void 0,userId:G});if(!Q)throw Error("Failed to create organization");return{...Q,createdAt:Q.createdAt instanceof Date?Q.createdAt.toISOString():Q.createdAt}}})});var dS0;var kb4=D(()=>{H0();x0();dS0=m1({name:"ORGANIZATION_LIST",description:"List organizations the current user belongs to.",annotations:{title:"List Organizations",readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},_meta:{ui:{visibility:"app"}},inputSchema:F.object({userId:F.string().optional()}),outputSchema:F.object({organizations:F.array(F.object({id:F.string(),name:F.string(),slug:F.string(),logo:F.string().nullable().optional(),metadata:F.any().optional(),createdAt:F.string().datetime().describe("ISO 8601 timestamp")}))}),handler:async(X,Y)=>{B0(Y),await Y.access.check();let G=w4(Y),Q=X.userId||G;if(!Q)throw Error("User ID required to list organizations");return{organizations:(await Y.boundAuth.organization.list(Q)).map((W)=>({...W,createdAt:W.createdAt instanceof Date?W.createdAt.toISOString():W.createdAt}))}}})});var cS0;var vb4=D(()=>{H0();x0();cS0=m1({name:"ORGANIZATION_GET",description:"Get an organization's details, members, and settings by slug or ID.",annotations:{title:"Get Organization",readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:F.object({}),outputSchema:F.object({id:F.string(),name:F.string(),slug:F.string(),logo:F.string().nullable().optional(),metadata:F.any().optional(),createdAt:F.string().datetime().describe("ISO 8601 timestamp"),members:F.array(F.any()).optional(),invitations:F.array(F.any()).optional()}),handler:async(X,Y)=>{B0(Y),await Y.access.check();let G=await Y.boundAuth.organization.get();if(!G)throw Error("No active organization found");let Q=new Date,J=G.invitations?.filter((W)=>new Date(W.expiresAt)>Q);return{...G,invitations:J,createdAt:G.createdAt instanceof Date?G.createdAt.toISOString():G.createdAt}}})});var iS0;var _b4=D(()=>{H0();x0();iS0=m1({name:"ORGANIZATION_UPDATE",description:"Update an organization's name, slug, or description.",annotations:{title:"Update Organization",readOnlyHint:!1,destructiveHint:!0,idempotentHint:!0,openWorldHint:!1},inputSchema:F.object({id:F.string(),slug:F.string().min(1).max(50).regex(/^[a-z0-9-]+$/).optional(),name:F.string().min(1).max(255).optional(),description:F.string().optional()}),outputSchema:F.object({id:F.string(),name:F.string(),slug:F.string(),logo:F.string().nullable().optional(),metadata:F.any().optional(),createdAt:F.string().datetime().describe("ISO 8601 timestamp")}),handler:async(X,Y)=>{B0(Y),await Y.access.check();let G={};if(X.name)G.name=X.name;if(X.slug)G.slug=X.slug;if(X.description)G.metadata={description:X.description};let Q=await Y.boundAuth.organization.update({organizationId:X.id,data:G});if(!Q)throw Error("Failed to update organization");return{...Q,createdAt:Q.createdAt instanceof Date?Q.createdAt.toISOString():Q.createdAt}}})});var pS0;var fb4=D(()=>{H0();x0();pS0=m1({name:"ORGANIZATION_DELETE",description:"Delete an organization.",annotations:{title:"Delete Organization",readOnlyHint:!1,destructiveHint:!0,idempotentHint:!0,openWorldHint:!1},inputSchema:F.object({id:F.string()}),outputSchema:F.object({success:F.boolean(),id:F.string()}),handler:async(X,Y)=>{return B0(Y),await Y.access.check(),await Y.boundAuth.organization.delete(X.id),{success:!0,id:X.id}}})});var _Z1,fZ1,vZ1,bZ1,yZ1,ro;var xZ1=D(()=>{H0();_Z1=F.object({title:F.string(),url:F.string(),icon:F.string()}),fZ1=F.object({registries:F.record(F.string(),F.object({enabled:F.boolean()})).describe("Per-registry enabled/disabled state. Key is connection ID. Absent registries are treated as enabled."),blockedMcps:F.array(F.string()).describe("List of MCP app_name or app_id values to hide from the store.")}),vZ1=F.object({keyId:F.string(),modelId:F.string(),title:F.string().optional()}).nullable(),bZ1=F.object({enabled:F.boolean(),chat:F.object({fast:vZ1,smart:vZ1,thinking:vZ1}),image:vZ1,webResearch:vZ1}),yZ1=F.object({ids:F.array(F.string()).describe("Ordered list of agent ids to show on the home view. Mix of well-known template ids and custom virtual MCP ids.")}),ro=F.object({id:F.string().describe("Brand context ID"),name:F.string().describe("Company name"),domain:F.string().describe("Company domain (e.g. example.com)"),overview:F.string().describe("Company overview / description"),logo:F.string().nullable().optional().describe("Logo URL"),favicon:F.string().nullable().optional().describe("Favicon URL"),ogImage:F.string().nullable().optional().describe("OG image URL"),fonts:F.object({heading:F.string().optional().describe("Font family for headings"),body:F.string().optional().describe("Font family for body text"),code:F.string().optional().describe("Font family for code / monospace")}).nullable().optional().describe("Font families by semantic role"),colors:F.object({primary:F.string().optional().describe("Primary brand color (hex)"),secondary:F.string().optional().describe("Secondary brand color (hex)"),accent:F.string().optional().describe("Accent / highlight color (hex)"),background:F.string().optional().describe("Background color (hex)"),foreground:F.string().optional().describe("Foreground / text color (hex)")}).nullable().optional().describe("Semantic color palette"),images:F.array(F.record(F.string(),F.unknown())).nullable().optional().describe("Brand images"),metadata:F.record(F.string(),F.unknown()).nullable().optional().describe("Extra design tokens (typography, components, spacing, layout, tone, etc.)"),archivedAt:F.string().nullable().optional().describe("Archive timestamp (null to unarchive)"),isDefault:F.boolean().optional().describe("Whether this is the default brand for the organization")})});var nS0;var bb4=D(()=>{H0();x0();xZ1();nS0=m1({name:"ORGANIZATION_SETTINGS_GET",description:"Get organization-level settings including sidebar configuration, store registry settings, simple model mode, and default home agents.",annotations:{title:"Get Organization Settings",readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:F.object({}),outputSchema:F.object({organizationId:F.string(),sidebar_items:F.array(_Z1).nullable().optional(),enabled_plugins:F.array(F.string()).nullable().optional(),registry_config:fZ1.nullable().optional(),simple_mode:bZ1.nullable().optional(),default_home_agents:yZ1.nullable().optional(),createdAt:F.string().datetime().optional().describe("ISO 8601 timestamp"),updatedAt:F.string().datetime().optional().describe("ISO 8601 timestamp")}),handler:async(X,Y)=>{B0(Y),await Y.access.check();let G=Y.organization?.id;if(!G)throw Error("Organization ID required (no active organization in context)");let Q=await Y.storage.organizationSettings.get(G);if(!Q)return{organizationId:G};return{...Q,createdAt:Q.createdAt instanceof Date?Q.createdAt.toISOString():Q.createdAt,updatedAt:Q.updatedAt instanceof Date?Q.updatedAt.toISOString():Q.updatedAt}}})});var aS0;var yb4=D(()=>{H0();x0();xZ1();aS0=m1({name:"ORGANIZATION_SETTINGS_UPDATE",description:"Update organization-level settings such as sidebar configuration, store registry settings, simple model mode, and default home agents.",annotations:{title:"Update Organization Settings",readOnlyHint:!1,destructiveHint:!0,idempotentHint:!0,openWorldHint:!1},inputSchema:F.object({organizationId:F.string(),sidebar_items:F.array(_Z1).optional(),enabled_plugins:F.array(F.string()).optional(),registry_config:fZ1.optional(),simple_mode:bZ1.optional(),default_home_agents:yZ1.optional()}),outputSchema:F.object({organizationId:F.string(),sidebar_items:F.array(_Z1).nullable().optional(),enabled_plugins:F.array(F.string()).nullable().optional(),registry_config:fZ1.nullable().optional(),simple_mode:bZ1.nullable().optional(),default_home_agents:yZ1.nullable().optional(),createdAt:F.string().datetime().describe("ISO 8601 timestamp"),updatedAt:F.string().datetime().describe("ISO 8601 timestamp")}),handler:async(X,Y)=>{if(B0(Y),await Y.access.check(),Y.organization&&Y.organization.id!==X.organizationId)throw Error("Cannot update settings for a different organization");let G=await Y.storage.organizationSettings.upsert(X.organizationId,{sidebar_items:X.sidebar_items,enabled_plugins:X.enabled_plugins,registry_config:X.registry_config,simple_mode:X.simple_mode,default_home_agents:X.default_home_agents});return{...G,createdAt:G.createdAt instanceof Date?G.createdAt.toISOString():G.createdAt,updatedAt:G.updatedAt instanceof Date?G.updatedAt.toISOString():G.updatedAt}}})});var xb4,tS0,rS0;var hb4=D(()=>{H0();x0();xZ1();xb4=ro.extend({organizationId:F.string(),archivedAt:F.string().nullable().optional().describe("ISO 8601 timestamp"),createdAt:F.string().describe("ISO 8601 timestamp"),updatedAt:F.string().describe("ISO 8601 timestamp")}),tS0=m1({name:"BRAND_CONTEXT_LIST",description:"List all brand contexts (company profiles) for the current organization.",annotations:{title:"List Brand Contexts",readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:F.object({includeArchived:F.boolean().optional().describe("Include archived brands in the list")}),outputSchema:F.object({items:F.array(xb4)}),handler:async(X,Y)=>{B0(Y),await Y.access.check();let G=Y.organization?.id;if(!G)throw Error("Organization ID required (no active organization in context)");return{items:(await Y.storage.brandContext.list(G,{includeArchived:X.includeArchived})).map((J)=>({...J,archivedAt:J.archivedAt instanceof Date?J.archivedAt.toISOString():J.archivedAt,createdAt:J.createdAt instanceof Date?J.createdAt.toISOString():J.createdAt,updatedAt:J.updatedAt instanceof Date?J.updatedAt.toISOString():J.updatedAt}))}}}),rS0=m1({name:"BRAND_CONTEXT_GET",description:"Get a specific brand context by ID.",annotations:{title:"Get Brand Context",readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:F.object({id:F.string().describe("Brand context ID")}),outputSchema:xb4.extend({organizationId:F.string()}),handler:async(X,Y)=>{B0(Y),await Y.access.check();let G=Y.organization?.id;if(!G)throw Error("Organization ID required (no active organization in context)");let Q=await Y.storage.brandContext.get(X.id,G);if(!Q)throw Error("Brand context not found");return{...Q,archivedAt:Q.archivedAt instanceof Date?Q.archivedAt.toISOString():Q.archivedAt,createdAt:Q.createdAt instanceof Date?Q.createdAt.toISOString():Q.createdAt,updatedAt:Q.updatedAt instanceof Date?Q.updatedAt.toISOString():Q.updatedAt}}})});var gb4,oS0,sS0,eS0;var ub4=D(()=>{H0();x0();xZ1();gb4=ro.extend({organizationId:F.string(),createdAt:F.string().describe("ISO 8601 timestamp"),updatedAt:F.string().describe("ISO 8601 timestamp")}),oS0=m1({name:"BRAND_CONTEXT_CREATE",description:"Create a new brand context (company profile) for the current organization.",annotations:{title:"Create Brand Context",readOnlyHint:!1,destructiveHint:!1,idempotentHint:!1,openWorldHint:!1},inputSchema:ro.omit({id:!0}),outputSchema:gb4,handler:async(X,Y)=>{B0(Y),await Y.access.check();let G=Y.organization?.id;if(!G)throw Error("Organization ID required (no active organization in context)");let Q=await Y.storage.brandContext.create(G,{name:X.name,domain:X.domain,overview:X.overview,logo:X.logo??null,favicon:X.favicon??null,ogImage:X.ogImage??null,fonts:X.fonts??null,colors:X.colors??null,images:X.images??null,metadata:X.metadata??null});return{...Q,archivedAt:Q.archivedAt instanceof Date?Q.archivedAt.toISOString():Q.archivedAt,createdAt:Q.createdAt instanceof Date?Q.createdAt.toISOString():Q.createdAt,updatedAt:Q.updatedAt instanceof Date?Q.updatedAt.toISOString():Q.updatedAt}}}),sS0=m1({name:"BRAND_CONTEXT_UPDATE",description:"Update an existing brand context by ID.",annotations:{title:"Update Brand Context",readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:ro.partial().required({id:!0}),outputSchema:gb4,handler:async(X,Y)=>{B0(Y),await Y.access.check();let G=Y.organization?.id;if(!G)throw Error("Organization ID required (no active organization in context)");if(!await Y.storage.brandContext.get(X.id,G))throw Error("Brand context not found");let{id:J,...W}=X;if(W.isDefault===!0)await Y.storage.brandContext.setDefault(J,G);let Z=await Y.storage.brandContext.update(J,G,{name:W.name,domain:W.domain,overview:W.overview,logo:W.logo!==void 0?W.logo??null:void 0,favicon:W.favicon!==void 0?W.favicon??null:void 0,ogImage:W.ogImage!==void 0?W.ogImage??null:void 0,fonts:W.fonts!==void 0?W.fonts??null:void 0,colors:W.colors!==void 0?W.colors??null:void 0,images:W.images!==void 0?W.images??null:void 0,metadata:W.metadata!==void 0?W.metadata??null:void 0,archivedAt:W.archivedAt!==void 0?W.archivedAt??null:void 0,isDefault:W.isDefault===!1?!1:void 0});return{...Z,archivedAt:Z.archivedAt instanceof Date?Z.archivedAt.toISOString():Z.archivedAt,createdAt:Z.createdAt instanceof Date?Z.createdAt.toISOString():Z.createdAt,updatedAt:Z.updatedAt instanceof Date?Z.updatedAt.toISOString():Z.updatedAt}}}),eS0=m1({name:"BRAND_CONTEXT_DELETE",description:"Archive a brand context by ID (soft delete).",annotations:{title:"Archive Brand Context",readOnlyHint:!1,destructiveHint:!0,idempotentHint:!0,openWorldHint:!1},inputSchema:F.object({id:F.string().describe("Brand context ID")}),outputSchema:F.object({success:F.boolean()}),handler:async(X,Y)=>{B0(Y),await Y.access.check();let G=Y.organization?.id;if(!G)throw Error("Organization ID required (no active organization in context)");if(!await Y.storage.brandContext.get(X.id,G))throw Error("Brand context not found");return await Y.storage.brandContext.update(X.id,G,{archivedAt:new Date().toISOString(),isDefault:!1}),{success:!0}}})});async function TS1(X,Y,G){let Q=X.trim();if(!Q.startsWith("http"))Q=`https://${Q}`;let J=await fetch("https://api.firecrawl.dev/v1/scrape",{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${Y}`},body:JSON.stringify({url:Q,formats:["branding"]})});if(!J.ok){let N=await J.text().catch(()=>"");throw Error(`Firecrawl API error: ${J.status} ${N.slice(0,200)}`)}let W=await J.json();if(!W.success||!W.data?.branding)return null;let Z=W.data.branding,$=W.data.metadata??{},K=li9(Z,$);return{name:$.title?.split(/[|\u2013\u2014]|\s+-\s+/).map((N)=>N.trim()).filter(Boolean)?.slice().sort((N,z)=>N.length-z.length)[0]??$.ogSiteName??G??X,domain:X,overview:$.description??"",logo:K.logo,favicon:K.favicon,ogImage:K.ogImage,fonts:K.fonts,colors:K.colors,images:null,metadata:Object.keys(K.metadata).length>0?K.metadata:null}}function li9(X,Y){let G=X.images??{},Q=X.colors??{},J={};for(let[U,B]of Object.entries(Q))if(typeof B==="string"&&B&&gi9.has(U))J[U]=B;let W={},$=(X.typography??{}).fontFamilies??{};for(let[U,B]of Object.entries($))if(typeof B==="string"&&B){let N=ui9[U.toLowerCase()];if(N&&!W[N])W[N]=B}let K=X.fonts;if(Array.isArray(K))for(let U of K){let B=U.family;if(typeof B==="string"&&B&&!W.body)W.body=B}let H={};for(let U of["typography","components","spacing","layout","animations","icons","tone","personality","colorScheme"])if(X[U]!==void 0)H[U]=X[U];return{logo:G.logo??null,favicon:G.favicon??null,ogImage:G.ogImage??Y.ogImage??null,fonts:Object.keys(W).length>0?W:null,colors:Object.keys(J).length>0?J:null,metadata:H}}var gi9,ui9;var XC0=D(()=>{gi9=new Set(["primary","secondary","accent","background","foreground"]),ui9={heading:"heading",headings:"heading",head:"heading",title:"heading",body:"body",primary:"body",text:"body",code:"code",monospace:"code",mono:"code"}});var YC0;var lb4=D(()=>{H0();x0();XC0();YC0=m1({name:"BRAND_CONTEXT_EXTRACT",description:"Extract brand context (colors, fonts, logos) from a website URL using Firecrawl.",annotations:{title:"Extract Brand Context",readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!0},inputSchema:F.object({domain:F.string().describe("Website domain to extract brand from"),brandId:F.string().optional().describe("Existing brand context ID to update (creates new if omitted)")}),outputSchema:F.object({id:F.string(),name:F.string(),domain:F.string(),success:F.boolean()}),handler:async(X,Y)=>{B0(Y),await Y.access.check();let G=Y.organization?.id;if(!G)throw Error("Organization ID required (no active organization in context)");let Q=Y.firecrawlApiKey;if(!Q)throw Error("FIRECRAWL_API_KEY is not configured. Set the environment variable to enable brand extraction.");let J=await TS1(X.domain,Q,X.domain);if(!J)throw Error("Firecrawl did not return branding data for this URL");let W={name:J.name,domain:J.domain,overview:J.overview,logo:J.logo,favicon:J.favicon,ogImage:J.ogImage,fonts:J.fonts,colors:J.colors,images:J.images,metadata:J.metadata};if(X.brandId){if(!await Y.storage.brandContext.get(X.brandId,G))throw Error("Brand context not found");let K=await Y.storage.brandContext.update(X.brandId,G,W);return{id:K.id,name:K.name,domain:K.domain,success:!0}}let Z=await Y.storage.brandContext.create(G,W);return{id:Z.id,name:Z.name,domain:Z.domain,success:!0}}})});function mb4(X){let Y=X.metadata??{};return{id:X.id,name:X.name,domain:X.domain||void 0,colors:X.colors??void 0,fonts:X.fonts??void 0,assets:X.logo||X.favicon||X.ogImage?{logo:X.logo??void 0,favicon:X.favicon??void 0,ogImage:X.ogImage??void 0}:void 0,overview:X.overview||void 0,tagline:typeof Y.tagline==="string"?Y.tagline:void 0,tone:typeof Y.tone==="string"?Y.tone:void 0,metadata:(()=>{let G=Object.fromEntries(Object.entries(Y).filter(([Q])=>Q!=="tagline"&&Q!=="tone"));return Object.keys(G).length>0?G:void 0})()}}var GC0,QC0;var db4=D(()=>{jD0();x0();GC0=m1({name:"BRAND_GET",description:"Get a brand context by ID. Omit the ID to get the default brand for the organization.",annotations:{title:"Get Brand",readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:hI1,outputSchema:mY1,handler:async(X,Y)=>{B0(Y),await Y.access.check();let G=Y.organization?.id;if(!G)throw Error("Organization ID required (no active organization in context)");let Q=X.id?await Y.storage.brandContext.get(X.id,G):await Y.storage.brandContext.getDefault(G);if(!Q)throw Error(X.id?"Brand not found":"No default brand configured");return mb4(Q)}}),QC0=m1({name:"BRAND_LIST",description:"List all active brands for the current organization.",annotations:{title:"List Brands",readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:gI1,outputSchema:uI1,handler:async(X,Y)=>{B0(Y),await Y.access.check();let G=Y.organization?.id;if(!G)throw Error("Organization ID required (no active organization in context)");return{items:(await Y.storage.brandContext.list(G)).map(mb4)}}})});var JC0;var cb4=D(()=>{H0();x0();JC0=m1({name:"ORGANIZATION_DOMAIN_GET",description:"Get the claimed email domain for an organization.",annotations:{title:"Get Organization Domain",readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:F.object({}),outputSchema:F.object({domain:F.string().nullable(),autoJoinEnabled:F.boolean()}),handler:async(X,Y)=>{B0(Y),await Y.access.check();let G=s1(Y),Q=await Y.storage.organizationDomains.getByOrganizationId(G.id);return{domain:Q?.domain??null,autoJoinEnabled:Q?.autoJoinEnabled??!1}}})});var mi9,ZC0,WC0,$C0;var ib4=D(()=>{H0();x0();uR();mi9=/^[a-z0-9]([a-z0-9-]*[a-z0-9])?(\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)+$/,ZC0=m1({name:"ORGANIZATION_DOMAIN_SET",description:"Claim an email domain for an organization. The caller's verified email must match the domain.",annotations:{title:"Set Organization Domain",readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:F.object({domain:F.string().min(1).max(255).describe("Email domain to claim (e.g. 'acme.com')"),autoJoinEnabled:F.boolean().optional().default(!1).describe("Whether users with matching email domain can auto-join")}),outputSchema:F.object({domain:F.string(),autoJoinEnabled:F.boolean()}),handler:async(X,Y)=>{B0(Y),await Y.access.check();let G=s1(Y),Q=X.domain.toLowerCase().trim();if(!mi9.test(Q))throw Error(`Invalid domain format: "${Q}". Must be a valid domain like "acme.com"`);if(eA.has(Q))throw Error(`Cannot claim generic email domain "${Q}". Only corporate domains are allowed.`);let J=Y.auth.user?.email;if(!J)throw Error("User email is required to claim a domain.");if(!Y.auth.user?.emailVerified)throw Error("Email must be verified before claiming a domain.");let W=J.split("@")[1]?.toLowerCase();if(W!==Q)throw Error(`You can only claim your own email domain ("${W}"), not "${Q}".`);let Z=await Y.storage.organizationDomains.getByOrganizationId(G.id);if(Z&&Z.domain!==Q)throw Error(`This organization already claims "${Z.domain}". Clear it first before claiming a new domain.`);let $=await Y.storage.organizationDomains.setDomain(G.id,Q,X.autoJoinEnabled);return{domain:$.domain,autoJoinEnabled:$.autoJoinEnabled}}}),WC0=m1({name:"ORGANIZATION_DOMAIN_UPDATE",description:"Update auto-join setting for the organization's already-claimed domain.",annotations:{title:"Update Organization Domain Settings",readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:F.object({autoJoinEnabled:F.boolean().describe("Whether users with matching email domain can auto-join")}),outputSchema:F.object({domain:F.string(),autoJoinEnabled:F.boolean()}),handler:async(X,Y)=>{B0(Y),await Y.access.check();let G=s1(Y);if(!await Y.storage.organizationDomains.getByOrganizationId(G.id))throw Error("No domain claimed for this organization.");let J=await Y.storage.organizationDomains.updateAutoJoin(G.id,X.autoJoinEnabled);return{domain:J.domain,autoJoinEnabled:J.autoJoinEnabled}}}),$C0=m1({name:"ORGANIZATION_DOMAIN_CLEAR",description:"Remove the claimed email domain for an organization.",annotations:{title:"Clear Organization Domain",readOnlyHint:!1,destructiveHint:!0,idempotentHint:!0,openWorldHint:!1},inputSchema:F.object({}),outputSchema:F.object({success:F.boolean()}),handler:async(X,Y)=>{B0(Y),await Y.access.check();let G=s1(Y);return await Y.storage.organizationDomains.clearDomain(G.id),{success:!0}}})});var KC0;var pb4=D(()=>{H0();RX();x0();KC0=m1({name:"ORGANIZATION_MEMBER_ADD",description:"Invite a member to the organization by email with an assigned role.",annotations:{title:"Add Organization Member",readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:F.object({organizationId:F.string().optional(),userId:F.string(),role:F.array(F.string())}),outputSchema:F.object({id:F.string(),organizationId:F.string(),userId:F.string(),role:F.union([F.string(),F.array(F.string())]),createdAt:F.string().datetime().describe("ISO 8601 timestamp")}),handler:async(X,Y)=>{B0(Y),await Y.access.check();let G=X.organizationId||Y.organization?.id;if(!G)throw Error("Organization ID required (no active organization in context)");if(G!==Y.organization?.id)throw Error("Organization ID does not match authenticated organization");let Q=await Y.boundAuth.organization.addMember({organizationId:G,userId:X.userId,role:X.role});if(!Q)throw Error("Failed to add member");let J=w4(Y);if(J)j4.capture({distinctId:J,event:"organization_member_added",groups:{organization:G},properties:{organization_id:G,added_user_id:X.userId,role:X.role}});return{...Q,role:Q.role,createdAt:Q.createdAt instanceof Date?Q.createdAt.toISOString():Q.createdAt}}})});var HC0;var nb4=D(()=>{H0();RX();x0();HC0=m1({name:"ORGANIZATION_MEMBER_REMOVE",description:"Remove a member from the organization. Revokes all their access immediately.",annotations:{title:"Remove Organization Member",readOnlyHint:!1,destructiveHint:!0,idempotentHint:!0,openWorldHint:!1},inputSchema:F.object({organizationId:F.string().optional(),memberIdOrEmail:F.string()}),outputSchema:F.object({success:F.boolean(),memberIdOrEmail:F.string()}),handler:async(X,Y)=>{B0(Y),await Y.access.check();let G=X.organizationId||Y.organization?.id;if(!G)throw Error("Organization ID required (no active organization in context)");await Y.boundAuth.organization.removeMember({organizationId:G,memberIdOrEmail:X.memberIdOrEmail});let Q=w4(Y);if(Q)j4.capture({distinctId:Q,event:"organization_member_removed",groups:{organization:G},properties:{organization_id:G,member_id_or_email:X.memberIdOrEmail}});return{success:!0,memberIdOrEmail:X.memberIdOrEmail}}})});var FC0;var ab4=D(()=>{H0();x0();FC0=m1({name:"ORGANIZATION_MEMBER_LIST",description:"List all members in the organization with their roles.",annotations:{title:"List Organization Members",readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:F.object({limit:F.number().optional(),offset:F.number().optional()}),outputSchema:F.object({members:F.array(F.object({id:F.string(),organizationId:F.string(),userId:F.string(),role:F.string(),createdAt:F.string().datetime().describe("ISO 8601 timestamp"),user:F.object({id:F.string(),name:F.string(),email:F.string(),image:F.string().optional()}).optional()}))}),handler:async(X,Y)=>{B0(Y),await Y.access.check();let G=Y.organization?.id;if(!G)throw Error("Organization ID required (no active organization in context)");let Q=await Y.boundAuth.organization.listMembers({organizationId:G,limit:X.limit,offset:X.offset});return{members:(Array.isArray(Q)?Q:[]).map((W)=>({...W,createdAt:W.createdAt instanceof Date?W.createdAt.toISOString():W.createdAt}))}}})});var UC0;var tb4=D(()=>{H0();RX();x0();UC0=m1({name:"ORGANIZATION_MEMBER_UPDATE_ROLE",description:"Change a member's role (e.g., admin, member) within the organization.",annotations:{title:"Update Member Role",readOnlyHint:!1,destructiveHint:!0,idempotentHint:!0,openWorldHint:!1},inputSchema:F.object({organizationId:F.string().optional(),memberId:F.string(),role:F.array(F.string())}),outputSchema:F.object({id:F.string(),organizationId:F.string(),userId:F.string(),role:F.union([F.literal("admin"),F.literal("member"),F.literal("owner")]),createdAt:F.string().datetime().describe("ISO 8601 timestamp"),user:F.object({email:F.string(),name:F.string(),image:F.string().optional()})}),handler:async(X,Y)=>{B0(Y),await Y.access.check();let G=X.organizationId||Y.organization?.id;if(!G)throw Error("Organization ID required (no active organization in context)");let Q=await Y.boundAuth.organization.updateMemberRole({organizationId:G,memberId:X.memberId,role:X.role});if(!Q)throw Error("Failed to update member role");Y.invalidateMemberRole?.(Q.userId,G);let J=w4(Y);if(J)j4.capture({distinctId:J,event:"organization_member_role_updated",groups:{organization:G},properties:{organization_id:G,member_id:X.memberId,target_user_id:Q.userId,new_role:Array.isArray(X.role)?X.role.join(","):X.role}});return{...Q,createdAt:Q.createdAt instanceof Date?Q.createdAt.toISOString():Q.createdAt}}})});var rb4=D(()=>{Cb4();kb4();vb4();_b4();fb4();bb4();yb4();hb4();ub4();lb4();db4();cb4();ib4();pb4();nb4();ab4();tb4()});var BC0;var ob4=D(()=>{H0();x0();BC0=m1({name:"TAGS_LIST",description:"List all tags available in the organization.",annotations:{title:"List Tags",readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:F.object({}),outputSchema:F.object({tags:F.array(F.object({id:F.string(),organizationId:F.string(),name:F.string(),createdAt:F.string().describe("ISO 8601 timestamp")}))}),handler:async(X,Y)=>{B0(Y),await Y.access.check();let G=s1(Y);return{tags:(await Y.storage.tags.listOrgTags(G.id)).map((J)=>({...J,createdAt:J.createdAt instanceof Date?J.createdAt.toISOString():String(J.createdAt)}))}}})});var NC0;var sb4=D(()=>{H0();x0();NC0=m1({name:"TAGS_CREATE",description:"Create a new tag that can be assigned to organization members.",annotations:{title:"Create Tag",readOnlyHint:!1,destructiveHint:!0,idempotentHint:!1,openWorldHint:!1},inputSchema:F.object({name:F.string().min(1).max(50).describe("Tag name")}),outputSchema:F.object({tag:F.object({id:F.string(),organizationId:F.string(),name:F.string(),createdAt:F.string().describe("ISO 8601 timestamp")})}),handler:async(X,Y)=>{B0(Y),await Y.access.check();let G=s1(Y),Q=await Y.storage.tags.createTag(G.id,X.name);return{tag:{...Q,createdAt:Q.createdAt instanceof Date?Q.createdAt.toISOString():String(Q.createdAt)}}}})});var zC0;var eb4=D(()=>{H0();x0();zC0=m1({name:"TAGS_DELETE",description:"Delete a tag and automatically remove it from all assigned members.",annotations:{title:"Delete Tag",readOnlyHint:!1,destructiveHint:!0,idempotentHint:!0,openWorldHint:!1},inputSchema:F.object({tagId:F.string().describe("Tag ID to delete")}),outputSchema:F.object({success:F.boolean()}),handler:async(X,Y)=>{B0(Y),await Y.access.check();let G=s1(Y),Q=await Y.storage.tags.getTag(X.tagId);if(!Q)throw Error("Tag not found");if(Q.organizationId!==G.id)throw Error("Tag does not belong to this organization");return await Y.storage.tags.deleteTag(X.tagId),{success:!0}}})});var OC0;var Xy4=D(()=>{H0();x0();OC0=m1({name:"MEMBER_TAGS_GET",description:"Get all tags currently assigned to a specific member.",annotations:{title:"Get Member Tags",readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:F.object({memberId:F.string().describe("Member ID")}),outputSchema:F.object({tags:F.array(F.object({id:F.string(),organizationId:F.string(),name:F.string(),createdAt:F.string().describe("ISO 8601 timestamp")}))}),handler:async(X,Y)=>{B0(Y),await Y.access.check();let G=s1(Y);if(!await Y.storage.tags.verifyMemberOrg(X.memberId,G.id))throw Error(`Member not found in this organization: ${X.memberId}`);return{tags:(await Y.storage.tags.getMemberTags(X.memberId)).map((W)=>({...W,createdAt:W.createdAt instanceof Date?W.createdAt.toISOString():String(W.createdAt)}))}}})});var DC0;var Yy4=D(()=>{H0();x0();DC0=m1({name:"MEMBER_TAGS_SET",description:"Replace all tags on a member with the given set. Pass empty array to clear.",annotations:{title:"Set Member Tags",readOnlyHint:!1,destructiveHint:!0,idempotentHint:!0,openWorldHint:!1},inputSchema:F.object({memberId:F.string().describe("Member ID"),tagIds:F.array(F.string()).describe("Array of tag IDs to assign")}),outputSchema:F.object({success:F.boolean(),tags:F.array(F.object({id:F.string(),organizationId:F.string(),name:F.string(),createdAt:F.string().describe("ISO 8601 timestamp")}))}),handler:async(X,Y)=>{B0(Y),await Y.access.check();let G=s1(Y);if(!await Y.storage.tags.verifyMemberOrg(X.memberId,G.id))throw Error(`Member not found in this organization: ${X.memberId}`);for(let W of X.tagIds){let Z=await Y.storage.tags.getTag(W);if(!Z)throw Error(`Tag not found: ${W}`);if(Z.organizationId!==G.id)throw Error(`Tag does not belong to this organization: ${W}`)}return await Y.storage.tags.setMemberTags(X.memberId,X.tagIds),{success:!0,tags:(await Y.storage.tags.getMemberTags(X.memberId)).map((W)=>({...W,createdAt:W.createdAt instanceof Date?W.createdAt.toISOString():String(W.createdAt)}))}}})});var Gy4=D(()=>{ob4();sb4();eb4();Xy4();Yy4()});var Qy4=D(()=>{s9()});var Jy4,ii9,Zy4,vz,Wy4,$y4;var lR=D(()=>{H0();Qy4();Jy4=F.object({id:F.string().describe("Unique message ID"),thread_id:F.string().describe("ID of the parent thread"),metadata:F.unknown().optional().describe("Optional message metadata"),parts:F.array(F.record(F.string(),F.unknown())).describe("Message content parts (AI SDK UIMessagePart format)"),role:F.enum(["user","assistant","system"]).describe("Message role"),created_at:F.string().datetime().describe("Timestamp of creation"),updated_at:F.string().datetime().describe("Timestamp of last update")}),ii9=F.object({toolName:F.string().describe("Fully qualified tool name"),appId:F.string().describe("App ID that owns the tool"),args:F.record(F.string(),F.unknown()).describe("Arguments used when expanding the tool"),expandedAt:F.string().datetime().describe("When the tool was expanded")}),Zy4=F.object({expanded_tools:F.array(ii9).optional()}).catchall(F.unknown()),vz=F.object({id:F.string().describe("Unique thread ID"),organization_id:F.string().describe("Organization this thread belongs to"),title:F.string().describe("Thread title"),description:F.string().nullable().describe("Thread description"),created_at:F.string().datetime().describe("Timestamp of creation"),updated_at:F.string().datetime().describe("Timestamp of last update"),hidden:F.boolean().optional().describe("Whether the thread is hidden"),status:F.enum([...$a,"expired"]).describe("Thread execution status. 'expired' is virtual -- computed at read time for stale in_progress threads"),created_by:F.string().describe("User ID who created the thread"),updated_by:F.string().optional().describe("User ID who last updated the thread"),virtual_mcp_id:F.string().optional().describe("Virtual MCP (agent) this thread was initiated with"),branch:F.string().nullable().optional().describe("Git branch this thread is pinned to (GitHub-linked vms only)"),metadata:Zy4.optional().describe("Free-form per-thread UI state (e.g. expanded_tools)"),run_config:F.record(F.string(),F.unknown()).nullable().optional().describe("Persisted run configuration (contains agent and model info)")}),Wy4=F.object({id:F.string().optional().describe("Optional custom ID for the thread"),title:F.string().optional().describe("Thread title"),description:F.string().nullish().describe("Thread description"),virtual_mcp_id:F.string().describe("Virtual MCP (agent) this thread is bound to"),branch:F.string().min(1).optional().describe("Preferred branch. Used only when the vMCP has a githubRepo; ignored otherwise. When omitted, the server picks the most-recently-touched branch from the user's vmMap, falling back to a freshly generated name.")}),$y4=F.object({title:F.string().optional().describe("New thread title"),description:F.string().nullish().describe("New thread description"),hidden:F.boolean().optional().describe("Whether the thread is hidden"),status:F.enum(["requires_action","failed","in_progress","completed"]).optional().describe("New thread status (user-set override). 'expired' is a computed virtual status and cannot be set directly."),metadata:Zy4.optional().describe("Full replacement of the thread's metadata object"),branch:F.string().nullish().describe("New git branch for this thread")})});function IS1(){let X=Ky4[Math.floor(Math.random()*Ky4.length)],Y=Hy4[Math.floor(Math.random()*Hy4.length)];return`deco/${X}-${Y}`}var Ky4,Hy4;var wC0=D(()=>{Ky4=["amber","bold","bright","calm","crimson","coral","daring","deep","dusty","eager","faint","fierce","frozen","gentle","golden","grand","green","hollow","iron","ivory","keen","lasting","lunar","mellow","misty","noble","olive","pale","prime","quiet","rapid","rustic","serene","sharp","silver","sleek","solar","stark","still","swift","tawny","tender","thin","true","vast","velvet","warm","wild","young","zen"],Hy4=["anchor","birch","brook","cedar","cliff","cove","crane","dune","echo","ember","falcon","fern","flint","forge","frost","glade","grove","harbor","hawk","iris","jade","lark","maple","marsh","mesa","opal","orbit","peak","pine","plume","quartz","rapids","reef","ridge","river","sage","shore","slate","spruce","stone","summit","thorn","tide","trail","vale","wren","aspen","delta","crest","spark"]});function ai9(X,Y){let G=X?.[Y];if(!G)return;return Object.entries(G).sort(([,J],[,W])=>(W.createdAt??0)-(J.createdAt??0))[0]?.[0]}var pi9,ni9,LC0;var Fy4=D(()=>{H0();RX();x0();lR();EH();wC0();pi9=F.object({data:Wy4.describe("Data for the new thread (id is auto-generated if not provided)")}),ni9=F.object({item:vz.describe("The created thread entity")});LC0=m1({name:"COLLECTION_THREADS_CREATE",description:"Create a new thread for organizing messages and conversations.",annotations:{title:"Create Thread",readOnlyHint:!1,destructiveHint:!0,idempotentHint:!0,openWorldHint:!1},inputSchema:pi9,outputSchema:ni9,handler:async(X,Y)=>{B0(Y);let G=s1(Y);await Y.access.check();let Q=w4(Y);if(!Q)throw Error("User ID required to create thread");let{data:J}=X,W=J.id??u7("thrd"),Z=await Y.storage.virtualMcps.findById(J.virtual_mcp_id,G.id);if(!Z)throw Error(`Virtual MCP not found: ${J.virtual_mcp_id}`);let $=Z.metadata,K=$?.githubRepo,H=null;if(K)H=J.branch??ai9($?.vmMap,Q)??IS1();let U=await Y.storage.threads.create({id:W,organization_id:G.id,title:J.title,description:J.description,virtual_mcp_id:J.virtual_mcp_id,branch:H,created_by:Q});return j4.capture({distinctId:Q,event:"chat_started",groups:{organization:G.id},properties:{organization_id:G.id,thread_id:W,has_title:!!X.data.title,created_via:"tool"}}),{item:{...U,hidden:U.hidden??!1}}}})});function XT(X,Y=Date.now()){let G=X.status;if(G==="in_progress"){let Q=new Date(X.updated_at).getTime();if(!Number.isFinite(Q)||Y-Q>1800000)G="expired"}return{...X,status:G,hidden:X.hidden??!1}}var ti9,ri9,EC0;var Uy4=D(()=>{LW();x0();lR();H0();ti9=wU.extend({where:F.object({created_by:F.string().optional(),trigger_ids:F.array(F.string()).optional(),virtual_mcp_id:F.string().optional(),hidden:F.boolean().optional(),has_trigger:F.boolean().optional()}).optional(),startDate:F.string().datetime().optional().describe("Filter threads updated at or after this ISO timestamp"),endDate:F.string().datetime().optional().describe("Filter threads updated at or before this ISO timestamp"),search:F.string().optional().describe("Full-text search on thread title (case-insensitive)"),status:F.string().optional().describe("Filter by thread status (e.g. completed, failed, in_progress)"),userId:F.string().optional().describe("Filter by the user who created the thread"),agentId:F.string().optional().describe("Filter by agent (connection or virtual MCP) ID")}),ri9=rD(vz),EC0=m1({name:"COLLECTION_THREADS_LIST",description:"List threads with filtering, sorting, and pagination.",annotations:{title:"List Threads",readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:ti9,outputSchema:ri9,handler:async(X,Y)=>{await Y.access.check();let G=Y.auth.user?.id;if(!G)throw Error("User ID required to list threads");s1(Y);let Q=X.offset??0,J=X.limit??100,W=X.where?.trigger_ids,Z=X.where?.virtual_mcp_id,$=X.userId??(X.where?.created_by==="me"?G:X.where?.created_by),{threads:K,total:H}=W?.length?await Y.storage.threads.listByTriggerIds(W,{limit:J,offset:Q}):await Y.storage.threads.list($,{limit:J,offset:Q,virtualMcpId:Z,startDate:X.startDate,endDate:X.endDate,search:X.search,status:X.status,agentId:X.agentId,includeArchived:X.where?.hidden,hasTrigger:X.where?.has_trigger}),U=Q+J<H,B=Date.now();return{items:K.map((N)=>XT(N,B)),totalCount:H,hasMore:U}}})});var oi9,PC0;var By4=D(()=>{LW();x0();lR();oi9=l71(vz),PC0=m1({name:"COLLECTION_THREADS_GET",description:"Get a thread's details and metadata by ID.",annotations:{title:"Get Thread",readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:u71,outputSchema:oi9,handler:async(X,Y)=>{B0(Y),s1(Y),await Y.access.check();let G=await Y.storage.threads.get(X.id);if(!G)return{item:null};return{item:XT(G)}}})});var si9,ei9,qC0;var Ny4=D(()=>{H0();RX();x0();lR();si9=F.object({id:F.string().describe("ID of the thread to update"),data:$y4.describe("Partial thread data to update")}),ei9=F.object({item:vz.describe("The updated thread entity")}),qC0=m1({name:"COLLECTION_THREADS_UPDATE",description:"Update a thread's title, description, or visibility.",annotations:{title:"Update Thread",readOnlyHint:!1,destructiveHint:!0,idempotentHint:!0,openWorldHint:!1},inputSchema:si9,outputSchema:ei9,handler:async(X,Y)=>{B0(Y);let G=s1(Y);await Y.access.check();let Q=w4(Y);if(!Q)throw Error("User ID required to update thread");let{id:J,data:W}=X,Z=await Y.storage.threads.get(J);if(!Z)throw Error("Thread not found in organization");if(W.branch===null&&Z.virtual_mcp_id){if((await Y.storage.virtualMcps.findById(Z.virtual_mcp_id,s1(Y).id))?.metadata?.githubRepo)throw Error("Cannot set branch=null on a github-linked thread (vMCP has githubRepo)")}let $={title:W.title,description:W.description,hidden:W.hidden,updated_by:Q};if(W.status)$.status=W.status;if(W.metadata!==void 0)$.metadata=W.metadata;if(W.branch!==void 0)$.branch=W.branch;let K=await Y.storage.threads.update(J,$);if(W.hidden!==void 0&&W.hidden!==Z.hidden)j4.capture({distinctId:Q,event:W.hidden?"chat_archived":"chat_unarchived",groups:{organization:G.id},properties:{organization_id:G.id,thread_id:J}});return{item:XT(K)}}})});var AC0;var zy4=D(()=>{LW();RX();x0();lR();AC0=m1({name:"COLLECTION_THREADS_DELETE",description:"Permanently delete a thread and all its messages.",annotations:{title:"Delete Thread",readOnlyHint:!1,destructiveHint:!0,idempotentHint:!0,openWorldHint:!1},inputSchema:m71,outputSchema:d71(vz),handler:async(X,Y)=>{B0(Y);let G=s1(Y);await Y.access.check();let Q=await Y.storage.threads.get(X.id);if(!Q)throw Error(`Thread not found: ${X.id}`);await Y.storage.threads.delete(X.id);let J=w4(Y);if(J)j4.capture({distinctId:J,event:"chat_deleted",groups:{organization:G.id},properties:{organization_id:G.id,thread_id:X.id}});return{item:XT(Q)}}})});function Oy4(X){if(!X)return null;if("field"in X&&X.field[0]==="thread_id"&&X.operator==="eq")return String(X.value);if("conditions"in X)for(let Y of X.conditions){let G=Oy4(Y);if(G)return G}return null}var Xp9,Yp9,TC0;var Dy4=D(()=>{LW();H0();x0();lR();Xp9=wU.extend({thread_id:F.string().optional().describe("ID of the thread to list messages for (required)")}),Yp9=rD(Jy4),TC0=m1({name:"COLLECTION_THREAD_MESSAGES_LIST",description:"List messages in a thread with pagination. Requires thread_id. Returns messages in chronological order.",annotations:{title:"List Thread Messages",readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:Xp9,outputSchema:Yp9,handler:async(X,Y)=>{s1(Y),await Y.access.check();let G=X.thread_id??Oy4(X.where);if(!G)throw Error("thread_id is required (provide as top-level param or in where clause)");let Q=X.offset??0,J=X.limit??100,{messages:W,total:Z}=await Y.storage.threads.listMessages(G,{limit:J,offset:Q}),$=Q+J<Z;return{items:W,totalCount:Z,hasMore:$}}})});var wy4=D(()=>{Fy4();Uy4();By4();Ny4();zy4();Dy4()});function Qp9(X){return{type:"doc",content:[{type:"paragraph",content:[{type:"text",text:X}]}]}}function Jp9(X){return X.map((Y)=>{let G=Y.metadata;if(G?.tiptapDoc)return Y;let Q=Y.parts.find((J)=>J.type==="text"&&typeof J.text==="string");if(!Q?.text||typeof Q.text!=="string")return Y;return{...Y,metadata:{...G,tiptapDoc:Qp9(Q.text)}}})}function VS1(X){let Y;if(typeof X==="string")try{let G=JSON.parse(X);if(Array.isArray(G)&&G.length>0&&G[0]?.role&&Array.isArray(G[0]?.parts))Y=G;else Y=[{role:"user",parts:[{type:"text",text:X}]}]}catch{Y=[{role:"user",parts:[{type:"text",text:X}]}]}else Y=X;return Jp9(Y)}var IC0;var Ly4=D(()=>{H0();RX();x0();IC0=m1({name:"AUTOMATION_CREATE",description:"Create an automation with instructions, agent, and model config. Triggers can be added separately.",annotations:{title:"Create Automation",readOnlyHint:!1,destructiveHint:!1,idempotentHint:!1,openWorldHint:!1},inputSchema:F.object({name:F.string().min(1).max(255),virtual_mcp_id:F.string().optional().nullable(),agent:F.object({id:F.string()}),messages:F.union([F.string(),F.array(F.looseObject({id:F.string().optional(),role:F.enum(["user","assistant","system"]),parts:F.array(F.record(F.string(),F.unknown())),metadata:F.unknown().optional()}))]),models:F.object({credentialId:F.string(),thinking:F.object({id:F.string(),capabilities:F.object({vision:F.boolean().optional(),text:F.boolean().optional(),tools:F.boolean().optional()}).optional(),provider:F.enum(["openai","anthropic","google","xai","deepseek","openrouter","openai-compatible"]).optional().nullable(),limits:F.object({contextWindow:F.number().optional(),maxOutputTokens:F.number().optional()}).optional()}),coding:F.object({id:F.string()}).optional(),fast:F.object({id:F.string()}).optional()}).loose().optional(),temperature:F.number().default(0.5),active:F.boolean().default(!0)}),outputSchema:F.object({id:F.string(),name:F.string(),active:F.boolean(),created_at:F.string()}),handler:async(X,Y)=>{B0(Y);let G=s1(Y);await Y.access.check();let Q=w4(Y);if(!Q)throw Error("Unable to determine user identity");let J=VS1(X.messages),W=X.models;if(!W){let $=await Y.storage.aiProviderKeys.list({organizationId:G.id});if($.length===0)throw Error("No AI provider credentials configured");let K=$[0],H=await Y.aiProviders.listModels(K.id,G.id);if(H.length===0)throw Error("No models available from the configured AI provider");W={credentialId:K.id,thinking:{id:H[0].modelId}}}let Z=await Y.storage.automations.create({organization_id:G.id,created_by:Q,name:X.name,agent:JSON.stringify(X.agent),messages:JSON.stringify(J),models:JSON.stringify(W),temperature:X.temperature,active:X.active,virtual_mcp_id:X.virtual_mcp_id??null});return j4.capture({distinctId:Q,event:"automation_created",groups:{organization:G.id},properties:{organization_id:G.id,automation_id:Z.id,agent_id:X.agent.id,has_virtual_mcp:!!X.virtual_mcp_id,active:Z.active,model_id:W.thinking.id}}),{id:Z.id,name:Z.name,active:Z.active,created_at:Z.created_at}}})});var VC0;var Ey4=D(()=>{H0();x0();VC0=m1({name:"AUTOMATION_GET",description:"Get an automation's full configuration and triggers by ID.",annotations:{title:"Get Automation",readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:F.object({id:F.string()}),outputSchema:F.object({automation:F.object({id:F.string(),name:F.string(),active:F.boolean(),created_by:F.string(),created_at:F.string(),updated_at:F.string(),agent:F.unknown(),messages:F.unknown(),models:F.unknown(),temperature:F.number(),triggers:F.array(F.object({id:F.string(),type:F.enum(["cron","event"]),cron_expression:F.string().nullable(),connection_id:F.string().nullable(),event_type:F.string().nullable(),params:F.unknown().nullable(),last_run_at:F.string().nullable(),created_at:F.string()}))}).nullable()}),handler:async(X,Y)=>{B0(Y);let G=s1(Y);await Y.access.check();let Q=await Y.storage.automations.findById(X.id,G.id);if(!Q)return{automation:null};let J=await Y.storage.automations.listTriggers(Q.id);return{automation:{id:Q.id,name:Q.name,active:Q.active,created_by:Q.created_by,created_at:Q.created_at,updated_at:Q.updated_at,agent:JSON.parse(Q.agent),messages:JSON.parse(Q.messages),models:JSON.parse(Q.models),temperature:Q.temperature,triggers:J.map((W)=>({id:W.id,type:W.type,cron_expression:W.cron_expression,connection_id:W.connection_id,event_type:W.event_type,params:W.params?JSON.parse(W.params):null,last_run_at:W.last_run_at,created_at:W.created_at}))}}}})});var jC0;var Py4=D(()=>{H0();x0();jC0=m1({name:"AUTOMATION_LIST",description:"List automations with their status, triggers, and configuration.",annotations:{title:"List Automations",readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:F.object({virtual_mcp_id:F.string().optional().nullable()}),outputSchema:F.object({automations:F.array(F.object({id:F.string(),name:F.string(),active:F.boolean(),created_by:F.string(),created_at:F.string(),trigger_count:F.number(),agent:F.object({id:F.string()}).nullable(),nearest_next_run_at:F.string().nullable(),virtual_mcp_id:F.string().nullable()}))}),handler:async(X,Y)=>{B0(Y);let G=s1(Y);return await Y.access.check(),{automations:(await Y.storage.automations.listWithTriggerCounts(G.id,X.virtual_mcp_id)).map((W)=>{let Z=null;try{if(W.agent)Z=JSON.parse(W.agent)}catch{Z=null}return{id:W.id,name:W.name,active:W.active,created_by:W.created_by,created_at:W.created_at,trigger_count:W.trigger_count,agent:Z,nearest_next_run_at:W.nearest_next_run_at,virtual_mcp_id:W.virtual_mcp_id}})}}})});class dH{constructor(X={}){this._started=!1,this._hasHandledRequest=!1,this._streamMapping=new Map,this._requestToStreamMapping=new Map,this._requestResponseMap=new Map,this._initialized=!1,this._enableJsonResponse=!1,this._standaloneSseStreamId="_GET_stream",this.sessionIdGenerator=X.sessionIdGenerator,this._enableJsonResponse=X.enableJsonResponse??!1,this._eventStore=X.eventStore,this._onsessioninitialized=X.onsessioninitialized,this._onsessionclosed=X.onsessionclosed,this._allowedHosts=X.allowedHosts,this._allowedOrigins=X.allowedOrigins,this._enableDnsRebindingProtection=X.enableDnsRebindingProtection??!1,this._retryInterval=X.retryInterval}async start(){if(this._started)throw Error("Transport already started");this._started=!0}createJsonErrorResponse(X,Y,G,Q){let J={code:Y,message:G};if(Q?.data!==void 0)J.data=Q.data;return new Response(JSON.stringify({jsonrpc:"2.0",error:J,id:null}),{status:X,headers:{"Content-Type":"application/json",...Q?.headers}})}validateRequestHeaders(X){if(!this._enableDnsRebindingProtection)return;if(this._allowedHosts&&this._allowedHosts.length>0){let Y=X.headers.get("host");if(!Y||!this._allowedHosts.includes(Y)){let G=`Invalid Host header: ${Y}`;return this.onerror?.(Error(G)),this.createJsonErrorResponse(403,-32000,G)}}if(this._allowedOrigins&&this._allowedOrigins.length>0){let Y=X.headers.get("origin");if(Y&&!this._allowedOrigins.includes(Y)){let G=`Invalid Origin header: ${Y}`;return this.onerror?.(Error(G)),this.createJsonErrorResponse(403,-32000,G)}}return}async handleRequest(X,Y){if(!this.sessionIdGenerator&&this._hasHandledRequest)throw Error("Stateless transport cannot be reused across requests. Create a new transport per request.");this._hasHandledRequest=!0;let G=this.validateRequestHeaders(X);if(G)return G;switch(X.method){case"POST":return this.handlePostRequest(X,Y);case"GET":return this.handleGetRequest(X);case"DELETE":return this.handleDeleteRequest(X);default:return this.handleUnsupportedRequest()}}async writePrimingEvent(X,Y,G,Q){if(!this._eventStore)return;if(Q<"2025-11-25")return;let J=await this._eventStore.storeEvent(G,{}),W=`id: ${J}