@openhands/agent-canvas 1.13.0 → 1.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1688) hide show
  1. package/README.md +1 -1
  2. package/README.windows.md +2 -2
  3. package/build/assets/acp-providers-BKvmTf82.js +1 -0
  4. package/build/assets/active-backend-context-DKFSMbn3.js +2 -0
  5. package/build/assets/agent-context-settings-D3PjSTU1.js +1 -0
  6. package/build/assets/agent-profiles-settings-D4cY5U2T.js +1 -0
  7. package/build/assets/agent-server-conversation-service.api-DozDKIW_.js +86 -0
  8. package/build/assets/agent-settings-351vXWc9.js +2 -0
  9. package/build/assets/agent-settings-Ce7BDZ6I.js +1 -0
  10. package/build/assets/alert-banner-Kyy1YWZU.js +1 -0
  11. package/build/assets/api-error-message-BJyfWp6p.js +1 -0
  12. package/build/assets/api-key-entry-screen-INIxqAMs.js +1 -0
  13. package/build/assets/app-settings-CbHqzQus.js +1 -0
  14. package/build/assets/automation-detail-DXDhUwPq.js +3 -0
  15. package/build/assets/automation-export-BRopEHMu.js +2 -0
  16. package/build/assets/automation-git-sync-CzyS4cn1.js +1 -0
  17. package/build/assets/automation-setup-route-FRr05f_g.js +1 -0
  18. package/build/assets/automation-templates-C_0FZgLG.js +1 -0
  19. package/build/assets/automations-list-CERuQWE6.js +1 -0
  20. package/build/assets/back-nav-button-Dm9tIjVf.js +1 -0
  21. package/build/assets/backend-form-modal-DK78-jn1.js +1 -0
  22. package/build/assets/backend-synced-settings-badge-3fOwg6Bd.js +1 -0
  23. package/build/assets/badge-D4SqUCsR.js +1 -0
  24. package/build/assets/base-modal-C7_BDl_U.js +1 -0
  25. package/build/assets/bot-C-0Wu7vQ.js +1 -0
  26. package/build/assets/brand-button-Dxv6PDeN.js +1 -0
  27. package/build/assets/browser-11etCQ04.js +7 -0
  28. package/build/assets/browser-tab-BAl4ckJE.js +1 -0
  29. package/build/assets/chat-send-button-DWwR2cgI.js +1 -0
  30. package/build/assets/check-Cf2YoT90.js +1 -0
  31. package/build/assets/chevron-down-C3OQ-ehx.js +1 -0
  32. package/build/assets/chevron-right-CN1uUiJ1.js +1 -0
  33. package/build/assets/circle-check-g5yeGMd-.js +1 -0
  34. package/build/assets/circle-plus-check-toggle-CBh_qomE.js +1 -0
  35. package/build/assets/cloud-funnel-analytics-287iIERo.js +1 -0
  36. package/build/assets/cog-C4rrw-ZK.js +1 -0
  37. package/build/assets/command-menu-BZQ8S3Ke.js +1 -0
  38. package/build/assets/commits-tab-DZtJgaDM.js +1 -0
  39. package/build/assets/condenser-settings-BcNmYR4s.js +1 -0
  40. package/build/assets/confirmation-modal-Bk4JRcCM.js +1 -0
  41. package/build/assets/context-menu-list-item-lVYETtY5.js +1 -0
  42. package/build/assets/conversation-CchMzpGl.js +1 -0
  43. package/build/assets/conversation-Dpzftz57.js +93 -0
  44. package/build/assets/conversation-panel-CchMzpGl.js +1 -0
  45. package/build/assets/conversation-state-store-a9d2fxRc.js +1 -0
  46. package/build/assets/conversation-store-Ca3ghXap.js +6 -0
  47. package/build/assets/conversation-tab-empty-state-HJtkmHZj.js +1 -0
  48. package/build/assets/copy-to-clipboard-button-Cjkswvnj.js +1 -0
  49. package/build/assets/device-verify-EZhHhBT7.js +1 -0
  50. package/build/assets/dropdown-classes-DJe-E6MC.js +1 -0
  51. package/build/assets/edit-automation-modal-D-urtv8n.js +1 -0
  52. package/build/assets/empty-state-CvaVahVr.js +1 -0
  53. package/build/assets/entry.client-C7Bi2tkU.js +2 -0
  54. package/build/assets/enum-filter-dropdown-DliX_Lo0.js +1 -0
  55. package/build/assets/environment-switch-overlay-CEKrFiMw.js +1 -0
  56. package/build/assets/error-state-BALXiBNy.js +1 -0
  57. package/build/assets/extension-module-card-classes-DpeaYhYo.js +1 -0
  58. package/build/assets/extensions-hub-CFduxBnk.js +1 -0
  59. package/build/assets/extensions-navigation-BeC224yX.js +1 -0
  60. package/build/assets/external-link-DFpYunfj.js +1 -0
  61. package/build/assets/files-tab-CL3J9b3p.js +1 -0
  62. package/build/assets/form-control-classes-CGw40z5h.js +1 -0
  63. package/build/assets/format-model-name-BNPKVsIq.js +1 -0
  64. package/build/assets/get-git-path-DlAJa_i6.js +1 -0
  65. package/build/assets/git-repo-dropdown-DGMEhz7d.js +1 -0
  66. package/build/assets/git-repo-dropdown-ai8qaNkD.js +1 -0
  67. package/build/assets/highlighted-source-view-C3sxykQi.js +1 -0
  68. package/build/assets/home-BCGlNJCA.js +1 -0
  69. package/build/assets/home-DB1pRqTC.js +1 -0
  70. package/build/assets/home-automation-run-tooltip-CooFQRIG.js +1 -0
  71. package/build/assets/home-store-Dl1dPE58.js +1 -0
  72. package/build/assets/index-home-DB1pRqTC.js +1 -0
  73. package/build/assets/info-uYSVzX86.js +1 -0
  74. package/build/assets/install-server-modal-BbJdhzet.js +1 -0
  75. package/build/assets/kebab-menu-item-content-BYokkRHi.js +1 -0
  76. package/build/assets/key-Cn5za3rg.js +1 -0
  77. package/build/assets/launch-C1ieiOGe.js +1 -0
  78. package/build/assets/list-filter-OFkpRrmi.js +1 -0
  79. package/build/assets/list-todo-Cuu-STFc.js +1 -0
  80. package/build/assets/llm-not-configured-banner-BqqYnJ1t.js +27 -0
  81. package/build/assets/llm-settings-CnDbbmVW.js +1 -0
  82. package/build/assets/llm-settings-S8Yjg__1.js +1 -0
  83. package/build/assets/llm-subscription-service-BpPfzW4x.js +1 -0
  84. package/build/assets/loader-circle-nvrwthvj.js +1 -0
  85. package/build/assets/loading-spinner-0L3ZTToZ.js +1 -0
  86. package/build/assets/manage-backends-modal-BCUPswyl.js +1 -0
  87. package/build/assets/manifest-58597dde.js +1 -0
  88. package/build/assets/manifest-subpage-layout-BGhiUQbA.js +1 -0
  89. package/build/assets/map-provider-B9LTm23I.js +1 -0
  90. package/build/assets/markdown-renderer-Cb2sBWtV.js +8 -0
  91. package/build/assets/mcp-CKbR4Vft.js +1 -0
  92. package/build/assets/mcp-marketplace-utils-C13fFccR.js +1 -0
  93. package/build/assets/mcp-page-Bm4K2NQq.js +9 -0
  94. package/build/assets/messages-BTN5thLe.js +40 -0
  95. package/build/assets/modal-body-CMOc2tLl.js +1 -0
  96. package/build/assets/modal-classes-BAb4Y_BG.js +1 -0
  97. package/build/assets/modal-close-button-CkJ0Ktjj.js +1 -0
  98. package/build/assets/mouse-pointer-click-CsgRs_-r.js +1 -0
  99. package/build/assets/onboarding-Cx_kaiD1.js +1 -0
  100. package/build/assets/onboarding-modal-vMwn7ihv.js +1 -0
  101. package/build/assets/organization-service.api-C8XpQ0pM.js +1 -0
  102. package/build/assets/parse-git-remote-url-DpDM9bK6.js +1 -0
  103. package/build/assets/pencil-Clh1Wjvh.js +1 -0
  104. package/build/assets/planner-tab-DQvDU3ap.js +1 -0
  105. package/build/assets/plug-BuQhHSSG.js +1 -0
  106. package/build/assets/plugins-management-service-BjYeF0b0.js +1 -0
  107. package/build/assets/plus-CEKne-Yp.js +1 -0
  108. package/build/assets/profiles-service.api-QB-T_u-g.js +1 -0
  109. package/build/assets/providers-FfSZ5TXP.js +1 -0
  110. package/build/assets/proxy-tcFL2yTQ.js +1 -0
  111. package/build/assets/puzzle-A9pGxxai.js +1 -0
  112. package/build/assets/recommended-automations-launcher-Bw8uC4V6.js +1 -0
  113. package/build/assets/refresh-cw-Bh69DyYO.js +1 -0
  114. package/build/assets/root-BLeQfBEq.css +1 -0
  115. package/build/assets/root-ZKKYPR1Z.js +2 -0
  116. package/build/assets/root-layout-luJoE9IG.js +2 -0
  117. package/build/assets/schema-field-Csw5fhtN.js +1 -0
  118. package/build/assets/scroll-fade-state-Dw-i4SGq.js +1 -0
  119. package/build/assets/sdk-section-page-HTffvm7Q.js +1 -0
  120. package/build/assets/secret-form-HTUbYw5o.js +1 -0
  121. package/build/assets/secrets-service-BTor9uAU.js +1 -0
  122. package/build/assets/secrets-settings-BizaTEr1.js +1 -0
  123. package/build/assets/server-process-C9RKzd1x.js +1 -0
  124. package/build/assets/settings-BlmrkwRi.js +1 -0
  125. package/build/assets/settings-DcNPxz0v.js +1 -0
  126. package/build/assets/settings-dropdown-input-tM0A0ipy.js +1 -0
  127. package/build/assets/settings-index-CKq0b0Vg.js +1 -0
  128. package/build/assets/settings-input-C03KUoSC.js +1 -0
  129. package/build/assets/settings-list-classes-BJ0g8rWj.js +1 -0
  130. package/build/assets/settings-modal-AzEF1QPP.js +1 -0
  131. package/build/assets/settings-service.api-B2agVfjL.js +1 -0
  132. package/build/assets/settings-switch-CQE0EGC-.js +1 -0
  133. package/build/assets/settings-utils-ClYOkbbI.js +1 -0
  134. package/build/assets/shared-conversation-B55pCyBG.js +1 -0
  135. package/build/assets/shield-check-CFDViW82.js +1 -0
  136. package/build/assets/sidebar-layout-D3hE08wK.js +1 -0
  137. package/build/assets/sidebar-mobile-menu-toggle-BOtyJHwE.js +1 -0
  138. package/build/assets/sidebar-nav-link-CPzhyHQg.js +1 -0
  139. package/build/assets/sidebar-onboarding-checklist-storage-3qYflszY.js +1 -0
  140. package/build/assets/sidebar-store-DtpU7zaI.js +1 -0
  141. package/build/assets/skill-card-pill-row-CFxjoqxn.js +1 -0
  142. package/build/assets/skill-filter-CWZ5kjcg.js +2 -0
  143. package/build/assets/skill-icon-badge-CPQJ6A-I.js +1 -0
  144. package/build/assets/skill-scope-CV1dkAbW.js +1 -0
  145. package/build/assets/skills-plugins-DGHULTq6.js +1 -0
  146. package/build/assets/skills-settings-CM1lFv3e.js +1 -0
  147. package/build/assets/styled-tooltip-Dl06rkpY.js +1 -0
  148. package/build/assets/task-list-tab-04GNQuii.js +1 -0
  149. package/build/assets/terminal-Cj0iHIW7.js +3 -0
  150. package/build/assets/toggle-switch-Fd_QGz0r.js +1 -0
  151. package/build/assets/trash-2-Dl8_RGz0.js +1 -0
  152. package/build/assets/trash-_RMt7Ayc.js +1 -0
  153. package/build/assets/triangle-alert-SM-q4NU_.js +1 -0
  154. package/build/assets/typography-SgFy466J.js +1 -0
  155. package/build/assets/usage-tab-BcfWV6db.js +1 -0
  156. package/build/assets/use-acp-credential-form-BsSW5NHG.js +1 -0
  157. package/build/assets/use-activate-agent-profile-B2NS8nA5.js +1 -0
  158. package/build/assets/use-agent-profiles-DWBPC0Si.js +1 -0
  159. package/build/assets/use-automation-health-BxXdzZMP.js +1 -0
  160. package/build/assets/use-automations-zYb0dUny.js +1 -0
  161. package/build/assets/use-can-manage-org-profiles-BWMahtUh.js +1 -0
  162. package/build/assets/use-cloud-current-user-id-CPHMDG-C.js +1 -0
  163. package/build/assets/use-config-Bft35DOK.js +1 -0
  164. package/build/assets/use-create-conversation-DwN5vv2f.js +1 -0
  165. package/build/assets/use-create-secret-BSxJMxHp.js +1 -0
  166. package/build/assets/use-get-secrets-BT4ihRwj.js +1 -0
  167. package/build/assets/use-has-permission-B3C8rQmR.js +1 -0
  168. package/build/assets/use-is-authed-CFGkY3-Z.js +1 -0
  169. package/build/assets/use-launch-skill-in-chat-BYjYihBP.js +1 -0
  170. package/build/assets/use-llm-configured-BI6obxsc.js +1 -0
  171. package/build/assets/use-llm-profiles-djGAhTWL.js +1 -0
  172. package/build/assets/use-manifest-capabilities-3z0-1G59.js +1 -0
  173. package/build/assets/use-onboarding-completion-BXpyUSsJ.js +1 -0
  174. package/build/assets/use-plugins-marketplace-DI4_pK56.js +1 -0
  175. package/build/assets/use-save-agent-profile-DdBSTdpN.js +1 -0
  176. package/build/assets/use-save-settings-CUZW6yXP.js +1 -0
  177. package/build/assets/use-settings-C5VhGpqd.js +1 -0
  178. package/build/assets/use-settings-nav-items-DHaUu1Dg.js +16 -0
  179. package/build/assets/use-tracking-D5t9otIF.js +3 -0
  180. package/build/assets/use-user-conversation-DT0_QCnL.js +1 -0
  181. package/build/assets/useInfiniteQuery-CgeUQPfs.js +1 -0
  182. package/build/assets/useMutation-DFnzkf6f.js +1 -0
  183. package/build/assets/useQueries-BhbrGEf1.js +1 -0
  184. package/build/assets/useQuery-BXWbZBZl.js +1 -0
  185. package/build/assets/utils-DaCIEEQP.js +1 -0
  186. package/build/assets/vendor~browser-hbU4u2Ag.js +47 -0
  187. package/build/assets/vendor~commits-tab-BaO2Ce3e.js +11 -0
  188. package/build/assets/vendor~conversation-panel~conversation-CTvDDiXg.js +1 -0
  189. package/build/assets/vendor~entry.client-BFE7Llz9.js +1 -0
  190. package/build/assets/vendor~entry.client-BaKt_PIp.js +9 -0
  191. package/build/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~kepq2zme-ZixYGy6E.js +186 -0
  192. package/build/assets/vendor~index-home~home~conversation-panel~conversation-BTyukeM-.js +13 -0
  193. package/build/assets/vendor~root-layout-BlUaZ18v.js +1 -0
  194. package/build/assets/vendor~root-layout~conversation-panel~conversation-BYAWJwQX.js +1 -0
  195. package/build/assets/vendor~root-layout~conversation-panel~conversation~skills-settings~automations-list~shared-~bovqqk8e-CHaLEBVR.js +1 -0
  196. package/build/assets/vendor~root-layout~index-home~home~conversation-panel~conversation~mcp~automations-list~aut~ibfbmr9f-B2OLKL7N.js +1 -0
  197. package/build/assets/vendor~root-layout~index-home~home~conversation-panel~conversation~shared-conversation-DXqM7vqB.js +1 -0
  198. package/build/assets/vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~hjcjabwg-Dtu7BpYk.js +48 -0
  199. package/build/assets/vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~iw7io29p-Dz-MAyNb.js +1 -0
  200. package/build/assets/vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~skills-setti~eo2nf80n-DonTKfQD.js +4949 -0
  201. package/build/assets/vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~skills-setti~jz4f6vo2-BgxDvUcf.js +8420 -0
  202. package/build/assets/verification-settings-Bj6bo097.js +1 -0
  203. package/build/assets/wrench-hi7Q13dF.js +1 -0
  204. package/build/assets/x-DkgltWa0.js +1 -0
  205. package/build/index.html +4 -4
  206. package/build/locales/ar/openhands.json +183 -44
  207. package/build/locales/ca/openhands.json +183 -44
  208. package/build/locales/de/openhands.json +183 -44
  209. package/build/locales/en/openhands.json +183 -44
  210. package/build/locales/es/openhands.json +183 -44
  211. package/build/locales/fr/openhands.json +183 -44
  212. package/build/locales/it/openhands.json +183 -44
  213. package/build/locales/ja/openhands.json +183 -44
  214. package/build/locales/ko-KR/openhands.json +183 -44
  215. package/build/locales/no/openhands.json +183 -44
  216. package/build/locales/pt/openhands.json +183 -44
  217. package/build/locales/tr/openhands.json +183 -44
  218. package/build/locales/uk/openhands.json +183 -44
  219. package/build/locales/zh-CN/openhands.json +183 -44
  220. package/build/locales/zh-TW/openhands.json +183 -44
  221. package/config/defaults.json +2 -2
  222. package/dist/api/agent-server-adapter.cjs +3 -3
  223. package/dist/api/agent-server-adapter.cjs.map +1 -1
  224. package/dist/api/agent-server-adapter.d.ts +10 -1
  225. package/dist/api/agent-server-adapter.js +115 -110
  226. package/dist/api/agent-server-adapter.js.map +1 -1
  227. package/dist/api/automation-service/automation-service.api.cjs +1 -1
  228. package/dist/api/automation-service/automation-service.api.cjs.map +1 -1
  229. package/dist/api/automation-service/automation-service.api.d.ts +23 -2
  230. package/dist/api/automation-service/automation-service.api.js +130 -73
  231. package/dist/api/automation-service/automation-service.api.js.map +1 -1
  232. package/dist/api/backend-registry/url-selection.cjs +1 -1
  233. package/dist/api/backend-registry/url-selection.cjs.map +1 -1
  234. package/dist/api/backend-registry/url-selection.d.ts +2 -1
  235. package/dist/api/backend-registry/url-selection.js +2 -2
  236. package/dist/api/backend-registry/url-selection.js.map +1 -1
  237. package/dist/api/cloud/conversation-service.api.cjs +1 -1
  238. package/dist/api/cloud/conversation-service.api.cjs.map +1 -1
  239. package/dist/api/cloud/conversation-service.api.d.ts +9 -0
  240. package/dist/api/cloud/conversation-service.api.js +11 -1
  241. package/dist/api/cloud/conversation-service.api.js.map +1 -1
  242. package/dist/api/conversation-service/agent-server-conversation-service.api.cjs +1 -1
  243. package/dist/api/conversation-service/agent-server-conversation-service.api.cjs.map +1 -1
  244. package/dist/api/conversation-service/agent-server-conversation-service.api.js +29 -24
  245. package/dist/api/conversation-service/agent-server-conversation-service.api.js.map +1 -1
  246. package/dist/api/git-provider-items-service.cjs +2 -0
  247. package/dist/api/git-provider-items-service.cjs.map +1 -0
  248. package/dist/api/git-provider-items-service.d.ts +25 -0
  249. package/dist/api/git-provider-items-service.js +127 -0
  250. package/dist/api/git-provider-items-service.js.map +1 -0
  251. package/dist/api/mcp-health/probe-mcp-server-health.cjs +1 -1
  252. package/dist/api/mcp-health/probe-mcp-server-health.js +31 -31
  253. package/dist/api/open-hands.types.d.ts +0 -19
  254. package/dist/api/profiles-service/profiles-service.api.cjs +1 -1
  255. package/dist/api/profiles-service/profiles-service.api.cjs.map +1 -1
  256. package/dist/api/profiles-service/profiles-service.api.d.ts +29 -2
  257. package/dist/api/profiles-service/profiles-service.api.js +25 -2
  258. package/dist/api/profiles-service/profiles-service.api.js.map +1 -1
  259. package/dist/api/provider-connections-service/provider-connections-service.api.cjs +2 -0
  260. package/dist/api/provider-connections-service/provider-connections-service.api.cjs.map +1 -0
  261. package/dist/api/provider-connections-service/provider-connections-service.api.d.ts +34 -0
  262. package/dist/api/provider-connections-service/provider-connections-service.api.js +50 -0
  263. package/dist/api/provider-connections-service/provider-connections-service.api.js.map +1 -0
  264. package/dist/api/secrets-service.cjs +1 -1
  265. package/dist/api/secrets-service.cjs.map +1 -1
  266. package/dist/api/secrets-service.d.ts +5 -0
  267. package/dist/api/secrets-service.js +12 -6
  268. package/dist/api/secrets-service.js.map +1 -1
  269. package/dist/components/conversation-events/chat/event-content-helpers/create-skill-ready-event.cjs +1 -1
  270. package/dist/components/conversation-events/chat/event-content-helpers/create-skill-ready-event.cjs.map +1 -1
  271. package/dist/components/conversation-events/chat/event-content-helpers/create-skill-ready-event.js +1 -1
  272. package/dist/components/conversation-events/chat/event-content-helpers/create-skill-ready-event.js.map +1 -1
  273. package/dist/components/conversation-events/chat/event-message-components/index.d.ts +0 -1
  274. package/dist/components/conversation-events/chat/event-message.cjs +1 -1
  275. package/dist/components/conversation-events/chat/event-message.cjs.map +1 -1
  276. package/dist/components/conversation-events/chat/event-message.js +1 -1
  277. package/dist/components/conversation-events/chat/event-message.js.map +1 -1
  278. package/dist/components/conversation-events/chat/messages.cjs.map +1 -1
  279. package/dist/components/conversation-events/chat/messages.js.map +1 -1
  280. package/dist/components/features/automations/add-automation-menu.d.ts +7 -0
  281. package/dist/components/features/automations/add-automation-modal.cjs +2 -0
  282. package/dist/components/features/automations/add-automation-modal.cjs.map +1 -0
  283. package/dist/components/features/automations/add-automation-modal.js +42 -0
  284. package/dist/components/features/automations/add-automation-modal.js.map +1 -0
  285. package/dist/components/features/automations/automation-action-button-classes.cjs +2 -0
  286. package/dist/components/features/automations/automation-action-button-classes.cjs.map +1 -0
  287. package/dist/components/features/automations/automation-action-button-classes.d.ts +0 -2
  288. package/dist/components/features/automations/automation-action-button-classes.js +8 -0
  289. package/dist/components/features/automations/automation-action-button-classes.js.map +1 -0
  290. package/dist/components/features/automations/automation-card-skeleton.cjs +2 -0
  291. package/dist/components/features/automations/automation-card-skeleton.cjs.map +1 -0
  292. package/dist/components/features/automations/automation-card-skeleton.js +33 -0
  293. package/dist/components/features/automations/automation-card-skeleton.js.map +1 -0
  294. package/dist/components/features/automations/automation-card.cjs +2 -0
  295. package/dist/components/features/automations/automation-card.cjs.map +1 -0
  296. package/dist/components/features/automations/automation-card.d.ts +1 -1
  297. package/dist/components/features/automations/automation-card.js +160 -0
  298. package/dist/components/features/automations/automation-card.js.map +1 -0
  299. package/dist/components/features/automations/automation-group.cjs +2 -0
  300. package/dist/components/features/automations/automation-group.cjs.map +1 -0
  301. package/dist/components/features/automations/automation-group.js +54 -0
  302. package/dist/components/features/automations/automation-group.js.map +1 -0
  303. package/dist/components/features/automations/automation-list-row.cjs +2 -0
  304. package/dist/components/features/automations/automation-list-row.cjs.map +1 -0
  305. package/dist/components/features/automations/automation-list-row.js +152 -0
  306. package/dist/components/features/automations/automation-list-row.js.map +1 -0
  307. package/dist/components/features/automations/automation-run-insights.cjs +2 -0
  308. package/dist/components/features/automations/automation-run-insights.cjs.map +1 -0
  309. package/dist/components/features/automations/automation-run-insights.js +46 -0
  310. package/dist/components/features/automations/automation-run-insights.js.map +1 -0
  311. package/dist/components/features/automations/automation-view-mode.cjs +2 -0
  312. package/dist/components/features/automations/automation-view-mode.cjs.map +1 -0
  313. package/dist/components/features/automations/automation-view-mode.d.ts +5 -1
  314. package/dist/components/features/automations/automation-view-mode.js +6 -0
  315. package/dist/components/features/automations/automation-view-mode.js.map +1 -0
  316. package/dist/components/features/automations/backend-not-configured.cjs +2 -0
  317. package/dist/components/features/automations/backend-not-configured.cjs.map +1 -0
  318. package/dist/components/features/automations/backend-not-configured.js +34 -0
  319. package/dist/components/features/automations/backend-not-configured.js.map +1 -0
  320. package/dist/components/features/automations/build-automation-menu-items.cjs +2 -0
  321. package/dist/components/features/automations/build-automation-menu-items.cjs.map +1 -0
  322. package/dist/components/features/automations/build-automation-menu-items.js +53 -0
  323. package/dist/components/features/automations/build-automation-menu-items.js.map +1 -0
  324. package/dist/components/features/automations/build-automation-pills.cjs +2 -0
  325. package/dist/components/features/automations/build-automation-pills.cjs.map +1 -0
  326. package/dist/components/features/automations/build-automation-pills.js +71 -0
  327. package/dist/components/features/automations/build-automation-pills.js.map +1 -0
  328. package/dist/components/features/automations/create-instructions.cjs +2 -0
  329. package/dist/components/features/automations/create-instructions.cjs.map +1 -0
  330. package/dist/components/features/automations/create-instructions.js +102 -0
  331. package/dist/components/features/automations/create-instructions.js.map +1 -0
  332. package/dist/components/features/automations/dashboard/automations-dashboard-controls.d.ts +4 -3
  333. package/dist/components/features/automations/detail/run-status-badge.cjs +2 -0
  334. package/dist/components/features/automations/detail/run-status-badge.cjs.map +1 -0
  335. package/dist/components/features/automations/detail/run-status-badge.js +102 -0
  336. package/dist/components/features/automations/detail/run-status-badge.js.map +1 -0
  337. package/dist/components/features/automations/empty-state.cjs +2 -0
  338. package/dist/components/features/automations/empty-state.cjs.map +1 -0
  339. package/dist/components/features/automations/empty-state.js +35 -0
  340. package/dist/components/features/automations/empty-state.js.map +1 -0
  341. package/dist/components/features/automations/error-state.cjs +2 -0
  342. package/dist/components/features/automations/error-state.cjs.map +1 -0
  343. package/dist/components/features/automations/error-state.js +28 -0
  344. package/dist/components/features/automations/error-state.js.map +1 -0
  345. package/dist/components/features/automations/git-sync/git-sync-activity-row.d.ts +15 -0
  346. package/dist/components/features/automations/git-sync/git-sync-config-form.d.ts +13 -0
  347. package/dist/components/features/automations/git-sync/git-sync-error-banner.d.ts +6 -0
  348. package/dist/components/features/automations/git-sync/git-sync-not-local-state.d.ts +1 -0
  349. package/dist/components/features/automations/git-sync/git-sync-overview-section.d.ts +12 -0
  350. package/dist/components/features/automations/git-sync/git-sync-skeleton.d.ts +1 -0
  351. package/dist/components/features/automations/git-sync/git-sync-status-pill.d.ts +7 -0
  352. package/dist/components/features/automations/git-sync/git-sync-unsupported-state.d.ts +7 -0
  353. package/dist/components/features/automations/import-automation-modal.d.ts +2 -1
  354. package/dist/components/features/automations/kebab-menu-item-content.cjs +2 -0
  355. package/dist/components/features/automations/kebab-menu-item-content.cjs.map +1 -0
  356. package/dist/components/features/automations/kebab-menu-item-content.js +21 -0
  357. package/dist/components/features/automations/kebab-menu-item-content.js.map +1 -0
  358. package/dist/components/features/automations/kebab-menu.cjs +2 -0
  359. package/dist/components/features/automations/kebab-menu.cjs.map +1 -0
  360. package/dist/components/features/automations/kebab-menu.d.ts +2 -1
  361. package/dist/components/features/automations/kebab-menu.js +76 -0
  362. package/dist/components/features/automations/kebab-menu.js.map +1 -0
  363. package/dist/components/features/automations/recommended-automations-launcher.cjs +2 -0
  364. package/dist/components/features/automations/recommended-automations-launcher.cjs.map +1 -0
  365. package/dist/components/features/automations/recommended-automations-launcher.d.ts +7 -1
  366. package/dist/components/features/automations/recommended-automations-launcher.js +134 -0
  367. package/dist/components/features/automations/recommended-automations-launcher.js.map +1 -0
  368. package/dist/components/features/automations/recommended-automations-rail.cjs +2 -0
  369. package/dist/components/features/automations/recommended-automations-rail.cjs.map +1 -0
  370. package/dist/components/features/automations/recommended-automations-rail.d.ts +9 -0
  371. package/dist/components/features/automations/recommended-automations-rail.js +127 -0
  372. package/dist/components/features/automations/recommended-automations-rail.js.map +1 -0
  373. package/dist/components/features/automations/recommended-automations-section.cjs +2 -0
  374. package/dist/components/features/automations/recommended-automations-section.cjs.map +1 -0
  375. package/dist/components/features/automations/recommended-automations-section.d.ts +2 -2
  376. package/dist/components/features/automations/recommended-automations-section.js +198 -0
  377. package/dist/components/features/automations/recommended-automations-section.js.map +1 -0
  378. package/dist/components/features/automations/responder-deployment-modal.cjs +2 -0
  379. package/dist/components/features/automations/responder-deployment-modal.cjs.map +1 -0
  380. package/dist/components/features/automations/responder-deployment-modal.d.ts +2 -1
  381. package/dist/components/features/automations/responder-deployment-modal.js +75 -0
  382. package/dist/components/features/automations/responder-deployment-modal.js.map +1 -0
  383. package/dist/components/features/automations/status-badge.cjs +2 -0
  384. package/dist/components/features/automations/status-badge.cjs.map +1 -0
  385. package/dist/components/features/automations/status-badge.js +12 -0
  386. package/dist/components/features/automations/status-badge.js.map +1 -0
  387. package/dist/components/features/automations/to-latest-run-state.cjs +2 -0
  388. package/dist/components/features/automations/to-latest-run-state.cjs.map +1 -0
  389. package/dist/components/features/automations/to-latest-run-state.d.ts +6 -0
  390. package/dist/components/features/automations/to-latest-run-state.js +21 -0
  391. package/dist/components/features/automations/to-latest-run-state.js.map +1 -0
  392. package/dist/components/features/backends/backend-form-modal.cjs +1 -1
  393. package/dist/components/features/backends/backend-form-modal.js +10 -10
  394. package/dist/components/features/backends/manage-backends-modal.cjs +1 -1
  395. package/dist/components/features/backends/manage-backends-modal.js +5 -5
  396. package/dist/components/features/chat/chat-interface.cjs +2 -2
  397. package/dist/components/features/chat/chat-interface.cjs.map +1 -1
  398. package/dist/components/features/chat/chat-interface.js +151 -148
  399. package/dist/components/features/chat/chat-interface.js.map +1 -1
  400. package/dist/components/features/chat/error-message-banner.cjs +1 -1
  401. package/dist/components/features/chat/error-message-banner.cjs.map +1 -1
  402. package/dist/components/features/chat/error-message-banner.d.ts +3 -1
  403. package/dist/components/features/chat/error-message-banner.js +64 -58
  404. package/dist/components/features/chat/error-message-banner.js.map +1 -1
  405. package/dist/components/features/command-menu/command-menu-items.d.ts +10 -4
  406. package/dist/components/features/conversation/conversation-git-actions-menu.cjs +2 -0
  407. package/dist/components/features/conversation/conversation-git-actions-menu.cjs.map +1 -0
  408. package/dist/components/features/conversation/conversation-git-actions-menu.d.ts +15 -0
  409. package/dist/components/features/conversation/conversation-git-actions-menu.js +123 -0
  410. package/dist/components/features/conversation/conversation-git-actions-menu.js.map +1 -0
  411. package/dist/components/features/conversation/conversation-git-actions-toggle.cjs +2 -0
  412. package/dist/components/features/conversation/conversation-git-actions-toggle.cjs.map +1 -0
  413. package/dist/components/features/conversation/conversation-git-actions-toggle.d.ts +10 -0
  414. package/dist/components/features/conversation/conversation-git-actions-toggle.js +60 -0
  415. package/dist/components/features/conversation/conversation-git-actions-toggle.js.map +1 -0
  416. package/dist/components/features/conversation/conversation-main/chat-interface-wrapper.cjs +1 -1
  417. package/dist/components/features/conversation/conversation-main/chat-interface-wrapper.cjs.map +1 -1
  418. package/dist/components/features/conversation/conversation-main/chat-interface-wrapper.js +46 -10
  419. package/dist/components/features/conversation/conversation-main/chat-interface-wrapper.js.map +1 -1
  420. package/dist/components/features/conversation/conversation-main/conversation-main.cjs +1 -1
  421. package/dist/components/features/conversation/conversation-main/conversation-main.cjs.map +1 -1
  422. package/dist/components/features/conversation/conversation-main/conversation-main.js +49 -43
  423. package/dist/components/features/conversation/conversation-main/conversation-main.js.map +1 -1
  424. package/dist/components/features/conversation/conversation-name-with-status.cjs +1 -1
  425. package/dist/components/features/conversation/conversation-name-with-status.cjs.map +1 -1
  426. package/dist/components/features/conversation/conversation-name-with-status.js +49 -40
  427. package/dist/components/features/conversation/conversation-name-with-status.js.map +1 -1
  428. package/dist/components/features/conversation/conversation-name.cjs +1 -1
  429. package/dist/components/features/conversation/conversation-name.js +4 -4
  430. package/dist/components/features/conversation/conversation-overview-automations-panel.cjs +2 -0
  431. package/dist/components/features/conversation/conversation-overview-automations-panel.cjs.map +1 -0
  432. package/dist/components/features/conversation/conversation-overview-automations-panel.d.ts +6 -0
  433. package/dist/components/features/conversation/conversation-overview-automations-panel.js +48 -0
  434. package/dist/components/features/conversation/conversation-overview-automations-panel.js.map +1 -0
  435. package/dist/components/features/conversation/conversation-overview-context-menu.cjs +2 -0
  436. package/dist/components/features/conversation/conversation-overview-context-menu.cjs.map +1 -0
  437. package/dist/components/features/conversation/conversation-overview-context-menu.d.ts +10 -0
  438. package/dist/components/features/conversation/conversation-overview-context-menu.js +221 -0
  439. package/dist/components/features/conversation/conversation-overview-context-menu.js.map +1 -0
  440. package/dist/components/features/conversation/conversation-overview-diffs-row.cjs +2 -0
  441. package/dist/components/features/conversation/conversation-overview-diffs-row.cjs.map +1 -0
  442. package/dist/components/features/conversation/conversation-overview-diffs-row.d.ts +2 -0
  443. package/dist/components/features/conversation/conversation-overview-diffs-row.js +88 -0
  444. package/dist/components/features/conversation/conversation-overview-diffs-row.js.map +1 -0
  445. package/dist/components/features/conversation/conversation-overview-drawer-content.cjs +2 -0
  446. package/dist/components/features/conversation/conversation-overview-drawer-content.cjs.map +1 -0
  447. package/dist/components/features/conversation/conversation-overview-drawer-content.d.ts +6 -0
  448. package/dist/components/features/conversation/conversation-overview-drawer-content.js +138 -0
  449. package/dist/components/features/conversation/conversation-overview-drawer-content.js.map +1 -0
  450. package/dist/components/features/conversation/conversation-overview-drawer-context.cjs +2 -0
  451. package/dist/components/features/conversation/conversation-overview-drawer-context.cjs.map +1 -0
  452. package/dist/components/features/conversation/conversation-overview-drawer-context.d.ts +17 -0
  453. package/dist/components/features/conversation/conversation-overview-drawer-context.js +43 -0
  454. package/dist/components/features/conversation/conversation-overview-drawer-context.js.map +1 -0
  455. package/dist/components/features/conversation/conversation-overview-drawer.cjs +2 -0
  456. package/dist/components/features/conversation/conversation-overview-drawer.cjs.map +1 -0
  457. package/dist/components/features/conversation/conversation-overview-drawer.constants.cjs +2 -0
  458. package/dist/components/features/conversation/conversation-overview-drawer.constants.cjs.map +1 -0
  459. package/dist/components/features/conversation/conversation-overview-drawer.constants.d.ts +6 -0
  460. package/dist/components/features/conversation/conversation-overview-drawer.constants.js +6 -0
  461. package/dist/components/features/conversation/conversation-overview-drawer.constants.js.map +1 -0
  462. package/dist/components/features/conversation/conversation-overview-drawer.d.ts +7 -0
  463. package/dist/components/features/conversation/conversation-overview-drawer.js +45 -0
  464. package/dist/components/features/conversation/conversation-overview-drawer.js.map +1 -0
  465. package/dist/components/features/conversation/conversation-overview-drawer.types.cjs +2 -0
  466. package/dist/components/features/conversation/conversation-overview-drawer.types.cjs.map +1 -0
  467. package/dist/components/features/conversation/conversation-overview-drawer.types.d.ts +12 -0
  468. package/dist/components/features/conversation/conversation-overview-drawer.types.js +13 -0
  469. package/dist/components/features/conversation/conversation-overview-drawer.types.js.map +1 -0
  470. package/dist/components/features/conversation/conversation-overview-git-items-panel.cjs +2 -0
  471. package/dist/components/features/conversation/conversation-overview-git-items-panel.cjs.map +1 -0
  472. package/dist/components/features/conversation/conversation-overview-git-items-panel.d.ts +7 -0
  473. package/dist/components/features/conversation/conversation-overview-git-items-panel.js +81 -0
  474. package/dist/components/features/conversation/conversation-overview-git-items-panel.js.map +1 -0
  475. package/dist/components/features/conversation/conversation-overview-git-section.cjs +2 -0
  476. package/dist/components/features/conversation/conversation-overview-git-section.cjs.map +1 -0
  477. package/dist/components/features/conversation/conversation-overview-git-section.d.ts +6 -0
  478. package/dist/components/features/conversation/conversation-overview-git-section.js +143 -0
  479. package/dist/components/features/conversation/conversation-overview-git-section.js.map +1 -0
  480. package/dist/components/features/conversation/conversation-overview-mcp-panel.cjs +2 -0
  481. package/dist/components/features/conversation/conversation-overview-mcp-panel.cjs.map +1 -0
  482. package/dist/components/features/conversation/conversation-overview-mcp-panel.d.ts +6 -0
  483. package/dist/components/features/conversation/conversation-overview-mcp-panel.js +108 -0
  484. package/dist/components/features/conversation/conversation-overview-mcp-panel.js.map +1 -0
  485. package/dist/components/features/conversation/conversation-overview-panel.cjs +2 -0
  486. package/dist/components/features/conversation/conversation-overview-panel.cjs.map +1 -0
  487. package/dist/components/features/conversation/conversation-overview-panel.constants.cjs +2 -0
  488. package/dist/components/features/conversation/conversation-overview-panel.constants.cjs.map +1 -0
  489. package/dist/components/features/conversation/conversation-overview-panel.constants.d.ts +24 -0
  490. package/dist/components/features/conversation/conversation-overview-panel.constants.js +12 -0
  491. package/dist/components/features/conversation/conversation-overview-panel.constants.js.map +1 -0
  492. package/dist/components/features/conversation/conversation-overview-panel.d.ts +2 -0
  493. package/dist/components/features/conversation/conversation-overview-panel.js +102 -0
  494. package/dist/components/features/conversation/conversation-overview-panel.js.map +1 -0
  495. package/dist/components/features/conversation/conversation-overview-project-scope-toggle.cjs +2 -0
  496. package/dist/components/features/conversation/conversation-overview-project-scope-toggle.cjs.map +1 -0
  497. package/dist/components/features/conversation/conversation-overview-project-scope-toggle.d.ts +8 -0
  498. package/dist/components/features/conversation/conversation-overview-project-scope-toggle.js +29 -0
  499. package/dist/components/features/conversation/conversation-overview-project-scope-toggle.js.map +1 -0
  500. package/dist/components/features/conversation/conversation-overview-secrets-panel.cjs +2 -0
  501. package/dist/components/features/conversation/conversation-overview-secrets-panel.cjs.map +1 -0
  502. package/dist/components/features/conversation/conversation-overview-secrets-panel.d.ts +6 -0
  503. package/dist/components/features/conversation/conversation-overview-secrets-panel.js +89 -0
  504. package/dist/components/features/conversation/conversation-overview-secrets-panel.js.map +1 -0
  505. package/dist/components/features/conversation/conversation-overview-sections.cjs +2 -0
  506. package/dist/components/features/conversation/conversation-overview-sections.cjs.map +1 -0
  507. package/dist/components/features/conversation/conversation-overview-sections.d.ts +43 -0
  508. package/dist/components/features/conversation/conversation-overview-sections.js +27 -0
  509. package/dist/components/features/conversation/conversation-overview-sections.js.map +1 -0
  510. package/dist/components/features/conversation/conversation-overview-skills-panel.cjs +2 -0
  511. package/dist/components/features/conversation/conversation-overview-skills-panel.cjs.map +1 -0
  512. package/dist/components/features/conversation/conversation-overview-skills-panel.d.ts +6 -0
  513. package/dist/components/features/conversation/conversation-overview-skills-panel.js +138 -0
  514. package/dist/components/features/conversation/conversation-overview-skills-panel.js.map +1 -0
  515. package/dist/components/features/conversation/conversation-overview-toggle.cjs +2 -0
  516. package/dist/components/features/conversation/conversation-overview-toggle.cjs.map +1 -0
  517. package/dist/components/features/conversation/conversation-overview-toggle.d.ts +11 -0
  518. package/dist/components/features/conversation/conversation-overview-toggle.js +99 -0
  519. package/dist/components/features/conversation/conversation-overview-toggle.js.map +1 -0
  520. package/dist/components/features/conversation/conversation-secondary-drawer.classes.cjs +2 -0
  521. package/dist/components/features/conversation/conversation-secondary-drawer.classes.cjs.map +1 -0
  522. package/dist/components/features/conversation/conversation-secondary-drawer.classes.d.ts +4 -0
  523. package/dist/components/features/conversation/conversation-secondary-drawer.classes.js +7 -0
  524. package/dist/components/features/conversation/conversation-secondary-drawer.classes.js.map +1 -0
  525. package/dist/components/features/conversation/conversation-tabs/conversation-tab-content/conversation-tab-content.cjs +1 -1
  526. package/dist/components/features/conversation/conversation-tabs/conversation-tab-content/conversation-tab-content.cjs.map +1 -1
  527. package/dist/components/features/conversation/conversation-tabs/conversation-tab-content/conversation-tab-content.js +10 -9
  528. package/dist/components/features/conversation/conversation-tabs/conversation-tab-content/conversation-tab-content.js.map +1 -1
  529. package/dist/components/features/conversation/conversation-tabs/conversation-tabs-context-menu.cjs +1 -1
  530. package/dist/components/features/conversation/conversation-tabs/conversation-tabs-context-menu.cjs.map +1 -1
  531. package/dist/components/features/conversation/conversation-tabs/conversation-tabs-context-menu.js +68 -62
  532. package/dist/components/features/conversation/conversation-tabs/conversation-tabs-context-menu.js.map +1 -1
  533. package/dist/components/features/conversation/conversation-tabs/conversation-tabs.cjs +1 -1
  534. package/dist/components/features/conversation/conversation-tabs/conversation-tabs.cjs.map +1 -1
  535. package/dist/components/features/conversation/conversation-tabs/conversation-tabs.js +98 -88
  536. package/dist/components/features/conversation/conversation-tabs/conversation-tabs.js.map +1 -1
  537. package/dist/components/features/conversation/right-panel-toggle.cjs +1 -1
  538. package/dist/components/features/conversation/right-panel-toggle.cjs.map +1 -1
  539. package/dist/components/features/conversation/right-panel-toggle.d.ts +3 -2
  540. package/dist/components/features/conversation/right-panel-toggle.js +34 -33
  541. package/dist/components/features/conversation/right-panel-toggle.js.map +1 -1
  542. package/dist/components/features/conversation-panel/compact-conversation-row.cjs +1 -1
  543. package/dist/components/features/conversation-panel/compact-conversation-row.js +6 -6
  544. package/dist/components/features/conversation-panel/conversation-panel-list-helpers.cjs +1 -1
  545. package/dist/components/features/conversation-panel/conversation-panel-list-helpers.cjs.map +1 -1
  546. package/dist/components/features/conversation-panel/conversation-panel-list-helpers.d.ts +2 -1
  547. package/dist/components/features/conversation-panel/conversation-panel-list-helpers.js +14 -7
  548. package/dist/components/features/conversation-panel/conversation-panel-list-helpers.js.map +1 -1
  549. package/dist/components/features/conversation-panel/conversation-panel.cjs +1 -1
  550. package/dist/components/features/conversation-panel/conversation-panel.cjs.map +1 -1
  551. package/dist/components/features/conversation-panel/conversation-panel.js +263 -236
  552. package/dist/components/features/conversation-panel/conversation-panel.js.map +1 -1
  553. package/dist/components/features/conversation-panel/local-new-conversation-menu.cjs +1 -1
  554. package/dist/components/features/conversation-panel/local-new-conversation-menu.cjs.map +1 -1
  555. package/dist/components/features/conversation-panel/local-new-conversation-menu.js +4 -4
  556. package/dist/components/features/conversation-panel/local-new-conversation-menu.js.map +1 -1
  557. package/dist/components/features/diff-viewer/accordion-panel.cjs +2 -0
  558. package/dist/components/features/diff-viewer/accordion-panel.cjs.map +1 -0
  559. package/dist/components/features/diff-viewer/accordion-panel.d.ts +13 -0
  560. package/dist/components/features/diff-viewer/accordion-panel.js +41 -0
  561. package/dist/components/features/diff-viewer/accordion-panel.js.map +1 -0
  562. package/dist/components/features/diff-viewer/commit-list.cjs +1 -1
  563. package/dist/components/features/diff-viewer/commit-list.cjs.map +1 -1
  564. package/dist/components/features/diff-viewer/commit-list.d.ts +5 -1
  565. package/dist/components/features/diff-viewer/commit-list.js +30 -16
  566. package/dist/components/features/diff-viewer/commit-list.js.map +1 -1
  567. package/dist/components/features/diff-viewer/commit-row.cjs +1 -1
  568. package/dist/components/features/diff-viewer/commit-row.cjs.map +1 -1
  569. package/dist/components/features/diff-viewer/commit-row.d.ts +1 -2
  570. package/dist/components/features/diff-viewer/commit-row.js +38 -34
  571. package/dist/components/features/diff-viewer/commit-row.js.map +1 -1
  572. package/dist/components/features/diff-viewer/diff-change-list.cjs +2 -0
  573. package/dist/components/features/diff-viewer/diff-change-list.cjs.map +1 -0
  574. package/dist/components/features/diff-viewer/diff-change-list.d.ts +18 -0
  575. package/dist/components/features/diff-viewer/diff-change-list.js +22 -0
  576. package/dist/components/features/diff-viewer/diff-change-list.js.map +1 -0
  577. package/dist/components/features/diff-viewer/editor-container.cjs +1 -1
  578. package/dist/components/features/diff-viewer/editor-container.cjs.map +1 -1
  579. package/dist/components/features/diff-viewer/editor-container.d.ts +2 -1
  580. package/dist/components/features/diff-viewer/editor-container.js +8 -7
  581. package/dist/components/features/diff-viewer/editor-container.js.map +1 -1
  582. package/dist/components/features/diff-viewer/file-diff-viewer.cjs +1 -1
  583. package/dist/components/features/diff-viewer/file-diff-viewer.cjs.map +1 -1
  584. package/dist/components/features/diff-viewer/file-diff-viewer.d.ts +10 -1
  585. package/dist/components/features/diff-viewer/file-diff-viewer.js +138 -112
  586. package/dist/components/features/diff-viewer/file-diff-viewer.js.map +1 -1
  587. package/dist/components/features/diff-viewer/uncommitted-changes-row.cjs +2 -0
  588. package/dist/components/features/diff-viewer/uncommitted-changes-row.cjs.map +1 -0
  589. package/dist/components/features/diff-viewer/uncommitted-changes-row.d.ts +12 -0
  590. package/dist/components/features/diff-viewer/uncommitted-changes-row.js +51 -0
  591. package/dist/components/features/diff-viewer/uncommitted-changes-row.js.map +1 -0
  592. package/dist/components/features/files-tab/file-content-viewer.cjs +1 -1
  593. package/dist/components/features/files-tab/file-content-viewer.cjs.map +1 -1
  594. package/dist/components/features/files-tab/file-content-viewer.js +0 -1
  595. package/dist/components/features/files-tab/file-content-viewer.js.map +1 -1
  596. package/dist/components/features/files-tab/file-quick-row.cjs +1 -1
  597. package/dist/components/features/files-tab/file-quick-row.cjs.map +1 -1
  598. package/dist/components/features/files-tab/file-quick-row.d.ts +9 -7
  599. package/dist/components/features/files-tab/file-quick-row.js +63 -34
  600. package/dist/components/features/files-tab/file-quick-row.js.map +1 -1
  601. package/dist/components/features/files-tab/files-tab-tree.constants.cjs +2 -0
  602. package/dist/components/features/files-tab/files-tab-tree.constants.cjs.map +1 -0
  603. package/dist/components/features/files-tab/files-tab-tree.constants.d.ts +7 -0
  604. package/dist/components/features/files-tab/files-tab-tree.constants.js +6 -0
  605. package/dist/components/features/files-tab/files-tab-tree.constants.js.map +1 -0
  606. package/dist/components/features/files-tab/segmented-toggle.cjs +1 -1
  607. package/dist/components/features/files-tab/segmented-toggle.cjs.map +1 -1
  608. package/dist/components/features/files-tab/segmented-toggle.d.ts +5 -3
  609. package/dist/components/features/files-tab/segmented-toggle.js +10 -13
  610. package/dist/components/features/files-tab/segmented-toggle.js.map +1 -1
  611. package/dist/components/features/files-tab/tree-node.cjs +1 -1
  612. package/dist/components/features/files-tab/tree-node.cjs.map +1 -1
  613. package/dist/components/features/files-tab/tree-node.js +34 -32
  614. package/dist/components/features/files-tab/tree-node.js.map +1 -1
  615. package/dist/components/features/files-tab/workspace-path.cjs +2 -0
  616. package/dist/components/features/files-tab/workspace-path.cjs.map +1 -0
  617. package/dist/components/features/files-tab/workspace-path.d.ts +6 -0
  618. package/dist/components/features/files-tab/workspace-path.js +41 -0
  619. package/dist/components/features/files-tab/workspace-path.js.map +1 -0
  620. package/dist/components/features/home/featured-automations/automation-health-indicator.cjs +2 -0
  621. package/dist/components/features/home/featured-automations/automation-health-indicator.cjs.map +1 -0
  622. package/dist/components/features/home/featured-automations/automation-health-indicator.js +22 -0
  623. package/dist/components/features/home/featured-automations/automation-health-indicator.js.map +1 -0
  624. package/dist/components/features/home/featured-automations/automation-run-activity-metrics.cjs +2 -0
  625. package/dist/components/features/home/featured-automations/automation-run-activity-metrics.cjs.map +1 -0
  626. package/dist/components/features/home/featured-automations/automation-run-activity-metrics.js +45 -0
  627. package/dist/components/features/home/featured-automations/automation-run-activity-metrics.js.map +1 -0
  628. package/dist/components/features/home/featured-automations/automation-run-activity-sparkline.cjs +2 -0
  629. package/dist/components/features/home/featured-automations/automation-run-activity-sparkline.cjs.map +1 -0
  630. package/dist/components/features/home/featured-automations/automation-run-activity-sparkline.js +108 -0
  631. package/dist/components/features/home/featured-automations/automation-run-activity-sparkline.js.map +1 -0
  632. package/dist/components/features/home/featured-automations/automation-run-health.cjs +2 -0
  633. package/dist/components/features/home/featured-automations/automation-run-health.cjs.map +1 -0
  634. package/dist/components/features/home/featured-automations/automation-run-health.js +75 -0
  635. package/dist/components/features/home/featured-automations/automation-run-health.js.map +1 -0
  636. package/dist/components/features/home/featured-automations/home-automation-run-tooltip.cjs +2 -0
  637. package/dist/components/features/home/featured-automations/home-automation-run-tooltip.cjs.map +1 -0
  638. package/dist/components/features/home/featured-automations/home-automation-run-tooltip.js +74 -0
  639. package/dist/components/features/home/featured-automations/home-automation-run-tooltip.js.map +1 -0
  640. package/dist/components/features/home/featured-automations/pinned-automation-card.d.ts +3 -3
  641. package/dist/components/features/home/git-repo-dropdown/use-url-search.cjs +1 -1
  642. package/dist/components/features/home/git-repo-dropdown/use-url-search.cjs.map +1 -1
  643. package/dist/components/features/home/git-repo-dropdown/use-url-search.js +1 -1
  644. package/dist/components/features/home/git-repo-dropdown/use-url-search.js.map +1 -1
  645. package/dist/components/features/home/workspace-dropdown/folder-browser-modal.cjs +1 -1
  646. package/dist/components/features/home/workspace-dropdown/folder-browser-modal.js +6 -6
  647. package/dist/components/features/home/workspace-dropdown/manage-workspaces-modal.cjs +1 -1
  648. package/dist/components/features/home/workspace-dropdown/manage-workspaces-modal.js +6 -6
  649. package/dist/components/features/manifest/manifest-form-field.d.ts +4 -3
  650. package/dist/components/features/manifest/manifest-icons.cjs +2 -0
  651. package/dist/components/features/manifest/manifest-icons.cjs.map +1 -0
  652. package/dist/components/features/manifest/manifest-icons.d.ts +1 -0
  653. package/dist/components/features/manifest/manifest-icons.js +21 -0
  654. package/dist/components/features/manifest/manifest-icons.js.map +1 -0
  655. package/dist/components/features/manifest/manifest-repository-list.d.ts +25 -0
  656. package/dist/components/features/markdown/markdown-table-scroll.cjs +1 -1
  657. package/dist/components/features/markdown/markdown-table-scroll.cjs.map +1 -1
  658. package/dist/components/features/markdown/markdown-table-scroll.d.ts +2 -6
  659. package/dist/components/features/markdown/markdown-table-scroll.js +15 -21
  660. package/dist/components/features/markdown/markdown-table-scroll.js.map +1 -1
  661. package/dist/components/features/mcp-logo-badge.cjs +1 -1
  662. package/dist/components/features/mcp-logo-badge.cjs.map +1 -1
  663. package/dist/components/features/mcp-logo-badge.d.ts +1 -1
  664. package/dist/components/features/mcp-logo-badge.js +1 -0
  665. package/dist/components/features/mcp-logo-badge.js.map +1 -1
  666. package/dist/components/features/mcp-page/custom-server-editor.cjs +1 -1
  667. package/dist/components/features/mcp-page/custom-server-editor.js +16 -16
  668. package/dist/components/features/mcp-page/index.cjs +1 -1
  669. package/dist/components/features/mcp-page/index.js +2 -2
  670. package/dist/components/features/mcp-page/install-server-modal.cjs +1 -1
  671. package/dist/components/features/mcp-page/install-server-modal.cjs.map +1 -1
  672. package/dist/components/features/mcp-page/install-server-modal.js +25 -25
  673. package/dist/components/features/mcp-page/install-server-modal.js.map +1 -1
  674. package/dist/components/features/mcp-page/installed-server-card.cjs +1 -1
  675. package/dist/components/features/mcp-page/installed-server-card.js +5 -5
  676. package/dist/components/features/mcp-page/marketplace-card.cjs +1 -1
  677. package/dist/components/features/mcp-page/marketplace-card.js +4 -4
  678. package/dist/components/features/mcp-page/marketplace-section.cjs +1 -1
  679. package/dist/components/features/mcp-page/marketplace-section.js +3 -3
  680. package/dist/components/features/mcp-page/mcp-logo-stack-badge.cjs +2 -0
  681. package/dist/components/features/mcp-page/mcp-logo-stack-badge.cjs.map +1 -0
  682. package/dist/components/features/mcp-page/mcp-logo-stack-badge.js +60 -0
  683. package/dist/components/features/mcp-page/mcp-logo-stack-badge.js.map +1 -0
  684. package/dist/components/features/mcp-page/mcp-server-health.cjs +1 -1
  685. package/dist/components/features/mcp-page/mcp-server-health.js +18 -18
  686. package/dist/components/features/onboarding/steps/setup-llm-step.d.ts +10 -7
  687. package/dist/components/features/onboarding/use-onboarding-completion.cjs +2 -0
  688. package/dist/components/features/onboarding/use-onboarding-completion.cjs.map +1 -0
  689. package/dist/components/features/onboarding/use-onboarding-completion.js +32 -0
  690. package/dist/components/features/onboarding/use-onboarding-completion.js.map +1 -0
  691. package/dist/components/features/settings/app-settings/getting-started-checklist-switch.cjs +2 -0
  692. package/dist/components/features/settings/app-settings/getting-started-checklist-switch.cjs.map +1 -0
  693. package/dist/components/features/settings/app-settings/getting-started-checklist-switch.d.ts +1 -0
  694. package/dist/components/features/settings/app-settings/getting-started-checklist-switch.js +22 -0
  695. package/dist/components/features/settings/app-settings/getting-started-checklist-switch.js.map +1 -0
  696. package/dist/components/features/settings/brand-button.cjs +1 -1
  697. package/dist/components/features/settings/brand-button.cjs.map +1 -1
  698. package/dist/components/features/settings/brand-button.d.ts +2 -0
  699. package/dist/components/features/settings/brand-button.js +4 -2
  700. package/dist/components/features/settings/brand-button.js.map +1 -1
  701. package/dist/components/features/settings/llm-profiles/delete-provider-connection-modal.cjs +1 -0
  702. package/dist/components/features/settings/llm-profiles/delete-provider-connection-modal.d.ts +7 -0
  703. package/dist/components/features/settings/llm-profiles/delete-provider-connection-modal.js +7 -0
  704. package/dist/components/features/settings/llm-profiles/llm-profiles-manager.cjs +1 -1
  705. package/dist/components/features/settings/llm-profiles/llm-profiles-manager.js +3 -0
  706. package/dist/components/features/settings/llm-profiles/llm-settings-local-view.cjs +1 -1
  707. package/dist/components/features/settings/llm-profiles/llm-settings-local-view.js +1 -0
  708. package/dist/components/features/settings/llm-profiles/profiles-body.d.ts +20 -1
  709. package/dist/components/features/settings/llm-profiles/provider-connection-modal.cjs +1 -0
  710. package/dist/components/features/settings/llm-profiles/provider-connection-modal.d.ts +19 -0
  711. package/dist/components/features/settings/llm-profiles/provider-connection-modal.js +10 -0
  712. package/dist/components/features/settings/llm-profiles/provider-connection-row.cjs +1 -0
  713. package/dist/components/features/settings/llm-profiles/provider-connection-row.d.ts +10 -0
  714. package/dist/components/features/settings/llm-profiles/provider-connection-row.js +6 -0
  715. package/dist/components/features/settings/llm-profiles/provider-connections-manager.cjs +1 -0
  716. package/dist/components/features/settings/llm-profiles/provider-connections-manager.d.ts +15 -0
  717. package/dist/components/features/settings/llm-profiles/provider-connections-manager.js +8 -0
  718. package/dist/components/features/settings/sdk-settings/schema-field.cjs +1 -1
  719. package/dist/components/features/settings/sdk-settings/schema-field.js +6 -6
  720. package/dist/components/features/settings/sdk-settings/sdk-section-page.cjs +1 -1
  721. package/dist/components/features/settings/sdk-settings/sdk-section-page.js +7 -7
  722. package/dist/components/features/settings/sdk-settings/sdk-section-page.js.map +1 -1
  723. package/dist/components/features/settings/secrets-settings/secret-form.cjs +1 -1
  724. package/dist/components/features/settings/secrets-settings/secret-form.js +7 -7
  725. package/dist/components/features/settings/settings-input.cjs +1 -1
  726. package/dist/components/features/settings/settings-input.cjs.map +1 -1
  727. package/dist/components/features/settings/settings-input.d.ts +6 -0
  728. package/dist/components/features/settings/settings-input.js +14 -13
  729. package/dist/components/features/settings/settings-input.js.map +1 -1
  730. package/dist/components/features/sidebar/sidebar-onboarding-checklist-item-icon.cjs +2 -0
  731. package/dist/components/features/sidebar/sidebar-onboarding-checklist-item-icon.cjs.map +1 -0
  732. package/dist/components/features/sidebar/sidebar-onboarding-checklist-item-icon.d.ts +7 -0
  733. package/dist/components/features/sidebar/sidebar-onboarding-checklist-item-icon.js +102 -0
  734. package/dist/components/features/sidebar/sidebar-onboarding-checklist-item-icon.js.map +1 -0
  735. package/dist/components/features/sidebar/sidebar-onboarding-checklist-item-preview.cjs +2 -0
  736. package/dist/components/features/sidebar/sidebar-onboarding-checklist-item-preview.cjs.map +1 -0
  737. package/dist/components/features/sidebar/sidebar-onboarding-checklist-item-preview.d.ts +8 -0
  738. package/dist/components/features/sidebar/sidebar-onboarding-checklist-item-preview.js +66 -0
  739. package/dist/components/features/sidebar/sidebar-onboarding-checklist-item-preview.js.map +1 -0
  740. package/dist/components/features/sidebar/sidebar-onboarding-checklist-llm-complete.cjs +2 -0
  741. package/dist/components/features/sidebar/sidebar-onboarding-checklist-llm-complete.cjs.map +1 -0
  742. package/dist/components/features/sidebar/sidebar-onboarding-checklist-llm-complete.d.ts +3 -0
  743. package/dist/components/features/sidebar/sidebar-onboarding-checklist-llm-complete.js +15 -0
  744. package/dist/components/features/sidebar/sidebar-onboarding-checklist-llm-complete.js.map +1 -0
  745. package/dist/components/features/sidebar/sidebar-onboarding-checklist-storage.cjs +2 -0
  746. package/dist/components/features/sidebar/sidebar-onboarding-checklist-storage.cjs.map +1 -0
  747. package/dist/components/features/sidebar/sidebar-onboarding-checklist-storage.d.ts +10 -0
  748. package/dist/components/features/sidebar/sidebar-onboarding-checklist-storage.js +39 -0
  749. package/dist/components/features/sidebar/sidebar-onboarding-checklist-storage.js.map +1 -0
  750. package/dist/components/features/sidebar/sidebar-onboarding-checklist.cjs +2 -0
  751. package/dist/components/features/sidebar/sidebar-onboarding-checklist.cjs.map +1 -0
  752. package/dist/components/features/sidebar/sidebar-onboarding-checklist.constants.cjs +2 -0
  753. package/dist/components/features/sidebar/sidebar-onboarding-checklist.constants.cjs.map +1 -0
  754. package/dist/components/features/sidebar/sidebar-onboarding-checklist.constants.d.ts +26 -0
  755. package/dist/components/features/sidebar/sidebar-onboarding-checklist.constants.js +78 -0
  756. package/dist/components/features/sidebar/sidebar-onboarding-checklist.constants.js.map +1 -0
  757. package/dist/components/features/sidebar/sidebar-onboarding-checklist.d.ts +5 -0
  758. package/dist/components/features/sidebar/sidebar-onboarding-checklist.js +127 -0
  759. package/dist/components/features/sidebar/sidebar-onboarding-checklist.js.map +1 -0
  760. package/dist/components/features/sidebar/sidebar-rail-body.cjs +1 -1
  761. package/dist/components/features/sidebar/sidebar-rail-body.cjs.map +1 -1
  762. package/dist/components/features/sidebar/sidebar-rail-body.js +115 -111
  763. package/dist/components/features/sidebar/sidebar-rail-body.js.map +1 -1
  764. package/dist/components/features/sidebar/use-sidebar-onboarding-checklist-dismissed.cjs +2 -0
  765. package/dist/components/features/sidebar/use-sidebar-onboarding-checklist-dismissed.cjs.map +1 -0
  766. package/dist/components/features/sidebar/use-sidebar-onboarding-checklist-dismissed.d.ts +1 -0
  767. package/dist/components/features/sidebar/use-sidebar-onboarding-checklist-dismissed.js +10 -0
  768. package/dist/components/features/sidebar/use-sidebar-onboarding-checklist-dismissed.js.map +1 -0
  769. package/dist/components/features/sidebar/use-sidebar-onboarding-checklist.cjs +2 -0
  770. package/dist/components/features/sidebar/use-sidebar-onboarding-checklist.cjs.map +1 -0
  771. package/dist/components/features/sidebar/use-sidebar-onboarding-checklist.d.ts +15 -0
  772. package/dist/components/features/sidebar/use-sidebar-onboarding-checklist.js +75 -0
  773. package/dist/components/features/sidebar/use-sidebar-onboarding-checklist.js.map +1 -0
  774. package/dist/components/features/skills/add-skill-modal.cjs +2 -0
  775. package/dist/components/features/skills/add-skill-modal.cjs.map +1 -0
  776. package/dist/components/features/skills/add-skill-modal.js +164 -0
  777. package/dist/components/features/skills/add-skill-modal.js.map +1 -0
  778. package/dist/components/features/skills/build-skill-pills.cjs +2 -0
  779. package/dist/components/features/skills/build-skill-pills.cjs.map +1 -0
  780. package/dist/components/features/skills/build-skill-pills.js +88 -0
  781. package/dist/components/features/skills/build-skill-pills.js.map +1 -0
  782. package/dist/components/features/skills/get-skill-card-description.cjs +2 -0
  783. package/dist/components/features/skills/get-skill-card-description.cjs.map +1 -0
  784. package/dist/components/features/skills/get-skill-card-description.js +34 -0
  785. package/dist/components/features/skills/get-skill-card-description.js.map +1 -0
  786. package/dist/components/features/skills/get-skill-chat-launch-message.cjs +2 -0
  787. package/dist/components/features/skills/get-skill-chat-launch-message.cjs.map +1 -0
  788. package/dist/components/features/skills/get-skill-chat-launch-message.js +9 -0
  789. package/dist/components/features/skills/get-skill-chat-launch-message.js.map +1 -0
  790. package/dist/components/features/skills/is-copyable-skill-source.cjs +2 -0
  791. package/dist/components/features/skills/is-copyable-skill-source.cjs.map +1 -0
  792. package/dist/components/features/skills/is-copyable-skill-source.js +9 -0
  793. package/dist/components/features/skills/is-copyable-skill-source.js.map +1 -0
  794. package/dist/components/features/skills/skill-card-pill-row.cjs +2 -0
  795. package/dist/components/features/skills/skill-card-pill-row.cjs.map +1 -0
  796. package/dist/components/features/skills/skill-card-pill-row.d.ts +1 -1
  797. package/dist/components/features/skills/skill-card-pill-row.js +137 -0
  798. package/dist/components/features/skills/skill-card-pill-row.js.map +1 -0
  799. package/dist/components/features/skills/skill-card.cjs +2 -0
  800. package/dist/components/features/skills/skill-card.cjs.map +1 -0
  801. package/dist/components/features/skills/skill-card.js +93 -0
  802. package/dist/components/features/skills/skill-card.js.map +1 -0
  803. package/dist/components/features/skills/skill-detail-modal.cjs +3 -0
  804. package/dist/components/features/skills/skill-detail-modal.cjs.map +1 -0
  805. package/dist/components/features/skills/skill-detail-modal.js +150 -0
  806. package/dist/components/features/skills/skill-detail-modal.js.map +1 -0
  807. package/dist/components/features/skills/skill-facet-rail.cjs +2 -0
  808. package/dist/components/features/skills/skill-facet-rail.cjs.map +1 -0
  809. package/dist/components/features/skills/skill-facet-rail.js +42 -0
  810. package/dist/components/features/skills/skill-facet-rail.js.map +1 -0
  811. package/dist/components/features/skills/skill-facet-row.cjs +2 -0
  812. package/dist/components/features/skills/skill-facet-row.cjs.map +1 -0
  813. package/dist/components/features/skills/skill-facet-row.js +44 -0
  814. package/dist/components/features/skills/skill-facet-row.js.map +1 -0
  815. package/dist/components/features/skills/skill-filter.cjs +2 -0
  816. package/dist/components/features/skills/skill-filter.cjs.map +1 -0
  817. package/dist/components/features/skills/skill-filter.js +166 -0
  818. package/dist/components/features/skills/skill-filter.js.map +1 -0
  819. package/dist/components/features/skills/skill-filters-modal.cjs +2 -0
  820. package/dist/components/features/skills/skill-filters-modal.cjs.map +1 -0
  821. package/dist/components/features/skills/skill-filters-modal.js +53 -0
  822. package/dist/components/features/skills/skill-filters-modal.js.map +1 -0
  823. package/dist/components/features/skills/skill-icon-badge.cjs +2 -0
  824. package/dist/components/features/skills/skill-icon-badge.cjs.map +1 -0
  825. package/dist/components/features/skills/skill-icon-badge.js +17 -0
  826. package/dist/components/features/skills/skill-icon-badge.js.map +1 -0
  827. package/dist/components/features/skills/skill-type-badge.cjs +2 -0
  828. package/dist/components/features/skills/skill-type-badge.cjs.map +1 -0
  829. package/dist/components/features/skills/skill-type-badge.js +21 -0
  830. package/dist/components/features/skills/skill-type-badge.js.map +1 -0
  831. package/dist/components/features/skills/skills-toolbar.cjs +2 -0
  832. package/dist/components/features/skills/skills-toolbar.cjs.map +1 -0
  833. package/dist/components/features/skills/skills-toolbar.js +63 -0
  834. package/dist/components/features/skills/skills-toolbar.js.map +1 -0
  835. package/dist/components/shared/buttons/circle-plus-check-toggle.cjs +1 -1
  836. package/dist/components/shared/buttons/circle-plus-check-toggle.cjs.map +1 -1
  837. package/dist/components/shared/buttons/circle-plus-check-toggle.js +19 -6
  838. package/dist/components/shared/buttons/circle-plus-check-toggle.js.map +1 -1
  839. package/dist/components/shared/buttons/conversation-confirmation-buttons.cjs +1 -1
  840. package/dist/components/shared/buttons/conversation-confirmation-buttons.cjs.map +1 -1
  841. package/dist/components/shared/buttons/conversation-confirmation-buttons.js +1 -1
  842. package/dist/components/shared/buttons/conversation-confirmation-buttons.js.map +1 -1
  843. package/dist/components/shared/filters/enum-filter-dropdown.cjs +1 -1
  844. package/dist/components/shared/filters/enum-filter-dropdown.cjs.map +1 -1
  845. package/dist/components/shared/filters/enum-filter-dropdown.d.ts +4 -1
  846. package/dist/components/shared/filters/enum-filter-dropdown.js +14 -14
  847. package/dist/components/shared/filters/enum-filter-dropdown.js.map +1 -1
  848. package/dist/components/shared/modals/settings/settings-form.cjs +1 -1
  849. package/dist/components/shared/modals/settings/settings-form.js +4 -4
  850. package/dist/components/ui/resize-handle.cjs +1 -1
  851. package/dist/components/ui/resize-handle.cjs.map +1 -1
  852. package/dist/components/ui/resize-handle.d.ts +2 -1
  853. package/dist/components/ui/resize-handle.js +6 -5
  854. package/dist/components/ui/resize-handle.js.map +1 -1
  855. package/dist/config/defaults.cjs +1 -1
  856. package/dist/config/defaults.cjs.map +1 -1
  857. package/dist/config/defaults.js +2 -2
  858. package/dist/config/defaults.js.map +1 -1
  859. package/dist/constants/skills-docs.cjs +2 -0
  860. package/dist/constants/skills-docs.cjs.map +1 -0
  861. package/dist/constants/skills-docs.js +6 -0
  862. package/dist/constants/skills-docs.js.map +1 -0
  863. package/dist/contexts/conversation-websocket-context.cjs +3 -3
  864. package/dist/contexts/conversation-websocket-context.cjs.map +1 -1
  865. package/dist/contexts/conversation-websocket-context.js +184 -159
  866. package/dist/contexts/conversation-websocket-context.js.map +1 -1
  867. package/dist/fixtures/home-automations-demo.cjs +2 -0
  868. package/dist/fixtures/home-automations-demo.cjs.map +1 -0
  869. package/dist/fixtures/home-automations-demo.d.ts +1 -3
  870. package/dist/fixtures/home-automations-demo.js +384 -0
  871. package/dist/fixtures/home-automations-demo.js.map +1 -0
  872. package/dist/hooks/chat/use-slash-command.cjs +1 -1
  873. package/dist/hooks/chat/use-slash-command.cjs.map +1 -1
  874. package/dist/hooks/chat/use-slash-command.d.ts +1 -2
  875. package/dist/hooks/chat/use-slash-command.js +1 -0
  876. package/dist/hooks/chat/use-slash-command.js.map +1 -1
  877. package/dist/hooks/mutation/use-create-conversation.cjs +1 -1
  878. package/dist/hooks/mutation/use-create-conversation.cjs.map +1 -1
  879. package/dist/hooks/mutation/use-create-conversation.js +27 -30
  880. package/dist/hooks/mutation/use-create-conversation.js.map +1 -1
  881. package/dist/hooks/mutation/use-create-provider-connection.cjs +1 -0
  882. package/dist/hooks/mutation/use-create-provider-connection.d.ts +2 -0
  883. package/dist/hooks/mutation/use-create-provider-connection.js +1 -0
  884. package/dist/hooks/mutation/use-delete-mcp-server.cjs +1 -1
  885. package/dist/hooks/mutation/use-delete-mcp-server.js +3 -3
  886. package/dist/hooks/mutation/use-delete-provider-connection.cjs +1 -0
  887. package/dist/hooks/mutation/use-delete-provider-connection.d.ts +1 -0
  888. package/dist/hooks/mutation/use-delete-provider-connection.js +1 -0
  889. package/dist/hooks/mutation/use-switch-acp-model.cjs +1 -1
  890. package/dist/hooks/mutation/use-switch-acp-model.cjs.map +1 -1
  891. package/dist/hooks/mutation/use-switch-acp-model.d.ts +5 -3
  892. package/dist/hooks/mutation/use-switch-acp-model.js +9 -13
  893. package/dist/hooks/mutation/use-switch-acp-model.js.map +1 -1
  894. package/dist/hooks/mutation/use-update-mcp-server.cjs +1 -1
  895. package/dist/hooks/mutation/use-update-mcp-server.js +6 -6
  896. package/dist/hooks/mutation/use-update-provider-connection.cjs +1 -0
  897. package/dist/hooks/mutation/use-update-provider-connection.d.ts +7 -0
  898. package/dist/hooks/mutation/use-update-provider-connection.js +1 -0
  899. package/dist/hooks/query/query-keys.cjs +1 -1
  900. package/dist/hooks/query/query-keys.cjs.map +1 -1
  901. package/dist/hooks/query/query-keys.d.ts +3 -0
  902. package/dist/hooks/query/query-keys.js +4 -4
  903. package/dist/hooks/query/query-keys.js.map +1 -1
  904. package/dist/hooks/query/use-automation-detail.cjs +1 -0
  905. package/dist/hooks/query/use-automation-detail.js +2 -0
  906. package/dist/hooks/query/use-automation-health.cjs +2 -0
  907. package/dist/hooks/query/use-automation-health.cjs.map +1 -0
  908. package/dist/hooks/query/use-automation-health.js +22 -0
  909. package/dist/hooks/query/use-automation-health.js.map +1 -0
  910. package/dist/hooks/query/use-automations.cjs +2 -0
  911. package/dist/hooks/query/use-automations.cjs.map +1 -0
  912. package/dist/hooks/query/use-automations.js +28 -0
  913. package/dist/hooks/query/use-automations.js.map +1 -0
  914. package/dist/hooks/query/use-backends-health.cjs +1 -1
  915. package/dist/hooks/query/use-backends-health.cjs.map +1 -1
  916. package/dist/hooks/query/use-backends-health.js +1 -1
  917. package/dist/hooks/query/use-backends-health.js.map +1 -1
  918. package/dist/hooks/query/use-conversation-history.cjs +1 -1
  919. package/dist/hooks/query/use-conversation-history.cjs.map +1 -1
  920. package/dist/hooks/query/use-conversation-history.js +3 -1
  921. package/dist/hooks/query/use-conversation-history.js.map +1 -1
  922. package/dist/hooks/query/use-conversation-metrics.cjs +1 -1
  923. package/dist/hooks/query/use-conversation-metrics.js +3 -3
  924. package/dist/hooks/query/use-git-sync.d.ts +19 -0
  925. package/dist/hooks/query/use-latest-automation-runs.cjs +1 -0
  926. package/dist/hooks/query/use-latest-automation-runs.d.ts +2 -0
  927. package/dist/hooks/query/use-latest-automation-runs.js +3 -0
  928. package/dist/hooks/query/use-llm-profiles.d.ts +1 -1
  929. package/dist/hooks/query/use-paginated-conversations.cjs +1 -1
  930. package/dist/hooks/query/use-paginated-conversations.cjs.map +1 -1
  931. package/dist/hooks/query/use-paginated-conversations.js +1 -1
  932. package/dist/hooks/query/use-paginated-conversations.js.map +1 -1
  933. package/dist/hooks/query/use-provider-connections.cjs +2 -0
  934. package/dist/hooks/query/use-provider-connections.cjs.map +1 -0
  935. package/dist/hooks/query/use-provider-connections.d.ts +8 -0
  936. package/dist/hooks/query/use-provider-connections.js +19 -0
  937. package/dist/hooks/query/use-provider-connections.js.map +1 -0
  938. package/dist/hooks/query/use-repository-git-items.cjs +2 -0
  939. package/dist/hooks/query/use-repository-git-items.cjs.map +1 -0
  940. package/dist/hooks/query/use-repository-git-items.d.ts +3 -0
  941. package/dist/hooks/query/use-repository-git-items.js +33 -0
  942. package/dist/hooks/query/use-repository-git-items.js.map +1 -0
  943. package/dist/hooks/query/use-task-polling.cjs +1 -1
  944. package/dist/hooks/query/use-task-polling.cjs.map +1 -1
  945. package/dist/hooks/query/use-task-polling.js +12 -10
  946. package/dist/hooks/query/use-task-polling.js.map +1 -1
  947. package/dist/hooks/query/use-workspace-files.cjs +1 -1
  948. package/dist/hooks/query/use-workspace-files.cjs.map +1 -1
  949. package/dist/hooks/query/use-workspace-files.d.ts +14 -4
  950. package/dist/hooks/query/use-workspace-files.js +46 -33
  951. package/dist/hooks/query/use-workspace-files.js.map +1 -1
  952. package/dist/hooks/use-bash-command-runner.cjs +1 -1
  953. package/dist/hooks/use-bash-command-runner.cjs.map +1 -1
  954. package/dist/hooks/use-bash-command-runner.js +45 -42
  955. package/dist/hooks/use-bash-command-runner.js.map +1 -1
  956. package/dist/hooks/use-conversation-overview-column-space.cjs +2 -0
  957. package/dist/hooks/use-conversation-overview-column-space.cjs.map +1 -0
  958. package/dist/hooks/use-conversation-overview-column-space.d.ts +2 -0
  959. package/dist/hooks/use-conversation-overview-column-space.js +25 -0
  960. package/dist/hooks/use-conversation-overview-column-space.js.map +1 -0
  961. package/dist/hooks/use-conversation-overview-git-diff-stats.cjs +2 -0
  962. package/dist/hooks/use-conversation-overview-git-diff-stats.cjs.map +1 -0
  963. package/dist/hooks/use-conversation-overview-git-diff-stats.d.ts +7 -0
  964. package/dist/hooks/use-conversation-overview-git-diff-stats.js +37 -0
  965. package/dist/hooks/use-conversation-overview-git-diff-stats.js.map +1 -0
  966. package/dist/hooks/use-conversation-overview-panel-peek.cjs +2 -0
  967. package/dist/hooks/use-conversation-overview-panel-peek.cjs.map +1 -0
  968. package/dist/hooks/use-conversation-overview-panel-peek.d.ts +9 -0
  969. package/dist/hooks/use-conversation-overview-panel-peek.js +32 -0
  970. package/dist/hooks/use-conversation-overview-panel-peek.js.map +1 -0
  971. package/dist/hooks/use-conversation-overview-stats.cjs +2 -0
  972. package/dist/hooks/use-conversation-overview-stats.cjs.map +1 -0
  973. package/dist/hooks/use-conversation-overview-stats.d.ts +4 -0
  974. package/dist/hooks/use-conversation-overview-stats.js +15 -0
  975. package/dist/hooks/use-conversation-overview-stats.js.map +1 -0
  976. package/dist/hooks/use-conversation-primary-repository.cjs +2 -0
  977. package/dist/hooks/use-conversation-primary-repository.cjs.map +1 -0
  978. package/dist/hooks/use-conversation-primary-repository.d.ts +11 -0
  979. package/dist/hooks/use-conversation-primary-repository.js +17 -0
  980. package/dist/hooks/use-conversation-primary-repository.js.map +1 -0
  981. package/dist/hooks/use-drag-scroll.cjs +2 -0
  982. package/dist/hooks/use-drag-scroll.cjs.map +1 -0
  983. package/dist/hooks/use-drag-scroll.d.ts +12 -0
  984. package/dist/hooks/use-drag-scroll.js +41 -0
  985. package/dist/hooks/use-drag-scroll.js.map +1 -0
  986. package/dist/hooks/use-has-permission.cjs +2 -0
  987. package/dist/hooks/use-has-permission.cjs.map +1 -0
  988. package/dist/hooks/use-has-permission.js +8 -0
  989. package/dist/hooks/use-has-permission.js.map +1 -0
  990. package/dist/hooks/use-home-automation-actions.cjs +2 -0
  991. package/dist/hooks/use-home-automation-actions.cjs.map +1 -0
  992. package/dist/hooks/use-home-automation-actions.js +15 -0
  993. package/dist/hooks/use-home-automation-actions.js.map +1 -0
  994. package/dist/hooks/use-launch-skill-in-chat.cjs +2 -0
  995. package/dist/hooks/use-launch-skill-in-chat.cjs.map +1 -0
  996. package/dist/hooks/use-launch-skill-in-chat.js +16 -0
  997. package/dist/hooks/use-launch-skill-in-chat.js.map +1 -0
  998. package/dist/hooks/use-mcp-server-health.cjs +1 -1
  999. package/dist/hooks/use-mcp-server-health.js +3 -3
  1000. package/dist/hooks/use-resizable-drawer-width.cjs +2 -0
  1001. package/dist/hooks/use-resizable-drawer-width.cjs.map +1 -0
  1002. package/dist/hooks/use-resizable-drawer-width.d.ts +22 -0
  1003. package/dist/hooks/use-resizable-drawer-width.js +46 -0
  1004. package/dist/hooks/use-resizable-drawer-width.js.map +1 -0
  1005. package/dist/hooks/use-responder-url-secret.cjs +2 -0
  1006. package/dist/hooks/use-responder-url-secret.cjs.map +1 -0
  1007. package/dist/hooks/use-responder-url-secret.d.ts +5 -0
  1008. package/dist/hooks/use-responder-url-secret.js +51 -0
  1009. package/dist/hooks/use-responder-url-secret.js.map +1 -0
  1010. package/dist/hooks/use-select-conversation-tab.cjs +1 -1
  1011. package/dist/hooks/use-select-conversation-tab.cjs.map +1 -1
  1012. package/dist/hooks/use-select-conversation-tab.d.ts +2 -0
  1013. package/dist/hooks/use-select-conversation-tab.js +15 -7
  1014. package/dist/hooks/use-select-conversation-tab.js.map +1 -1
  1015. package/dist/hooks/use-tracking.cjs +1 -1
  1016. package/dist/hooks/use-tracking.cjs.map +1 -1
  1017. package/dist/hooks/use-tracking.d.ts +23 -0
  1018. package/dist/hooks/use-tracking.js +16 -0
  1019. package/dist/hooks/use-tracking.js.map +1 -1
  1020. package/dist/hooks/use-websocket.cjs +1 -1
  1021. package/dist/hooks/use-websocket.cjs.map +1 -1
  1022. package/dist/hooks/use-websocket.d.ts +1 -2
  1023. package/dist/hooks/use-websocket.js +58 -51
  1024. package/dist/hooks/use-websocket.js.map +1 -1
  1025. package/dist/i18n/declaration.cjs +1 -1
  1026. package/dist/i18n/declaration.cjs.map +1 -1
  1027. package/dist/i18n/declaration.d.ts +182 -43
  1028. package/dist/i18n/declaration.js +1 -1
  1029. package/dist/i18n/declaration.js.map +1 -1
  1030. package/dist/i18n/translation.cjs +3 -3
  1031. package/dist/i18n/translation.cjs.map +1 -1
  1032. package/dist/i18n/translation.js +3092 -729
  1033. package/dist/i18n/translation.js.map +1 -1
  1034. package/dist/icons/check-circle.cjs +2 -0
  1035. package/dist/icons/check-circle.cjs.map +1 -0
  1036. package/dist/icons/check-circle.js +20 -0
  1037. package/dist/icons/check-circle.js.map +1 -0
  1038. package/dist/icons/chevron-down.cjs +2 -0
  1039. package/dist/icons/chevron-down.cjs.map +1 -0
  1040. package/dist/icons/chevron-down.js +20 -0
  1041. package/dist/icons/chevron-down.js.map +1 -0
  1042. package/dist/icons/clock.cjs +2 -0
  1043. package/dist/icons/clock.cjs.map +1 -0
  1044. package/dist/icons/clock.js +20 -0
  1045. package/dist/icons/clock.js.map +1 -0
  1046. package/dist/icons/exclamation-circle.cjs +2 -0
  1047. package/dist/icons/exclamation-circle.cjs.map +1 -0
  1048. package/dist/icons/exclamation-circle.js +20 -0
  1049. package/dist/icons/exclamation-circle.js.map +1 -0
  1050. package/dist/icons/kebab-vertical.cjs +2 -0
  1051. package/dist/icons/kebab-vertical.cjs.map +1 -0
  1052. package/dist/icons/kebab-vertical.js +14 -0
  1053. package/dist/icons/kebab-vertical.js.map +1 -0
  1054. package/dist/icons/key.cjs +2 -0
  1055. package/dist/icons/key.cjs.map +1 -0
  1056. package/dist/icons/key.js +21 -0
  1057. package/dist/icons/key.js.map +1 -0
  1058. package/dist/icons/message-square-share.cjs +2 -0
  1059. package/dist/icons/message-square-share.cjs.map +1 -0
  1060. package/dist/icons/message-square-share.js +22 -0
  1061. package/dist/icons/message-square-share.js.map +1 -0
  1062. package/dist/icons/play.cjs +2 -0
  1063. package/dist/icons/play.cjs.map +1 -0
  1064. package/dist/icons/play.js +19 -0
  1065. package/dist/icons/play.js.map +1 -0
  1066. package/dist/icons/power.cjs +2 -0
  1067. package/dist/icons/power.cjs.map +1 -0
  1068. package/dist/icons/power.js +20 -0
  1069. package/dist/icons/power.js.map +1 -0
  1070. package/dist/icons/sparkle.cjs +2 -0
  1071. package/dist/icons/sparkle.cjs.map +1 -0
  1072. package/dist/icons/sparkle.js +20 -0
  1073. package/dist/icons/sparkle.js.map +1 -0
  1074. package/dist/icons/trash.cjs +2 -0
  1075. package/dist/icons/trash.cjs.map +1 -0
  1076. package/dist/icons/trash.js +20 -0
  1077. package/dist/icons/trash.js.map +1 -0
  1078. package/dist/icons/x-circle.cjs +2 -0
  1079. package/dist/icons/x-circle.cjs.map +1 -0
  1080. package/dist/icons/x-circle.js +20 -0
  1081. package/dist/icons/x-circle.js.map +1 -0
  1082. package/dist/locales/ar/openhands.json +183 -44
  1083. package/dist/locales/ca/openhands.json +183 -44
  1084. package/dist/locales/de/openhands.json +183 -44
  1085. package/dist/locales/en/openhands.json +183 -44
  1086. package/dist/locales/es/openhands.json +183 -44
  1087. package/dist/locales/fr/openhands.json +183 -44
  1088. package/dist/locales/it/openhands.json +183 -44
  1089. package/dist/locales/ja/openhands.json +183 -44
  1090. package/dist/locales/ko-KR/openhands.json +183 -44
  1091. package/dist/locales/no/openhands.json +183 -44
  1092. package/dist/locales/pt/openhands.json +183 -44
  1093. package/dist/locales/tr/openhands.json +183 -44
  1094. package/dist/locales/uk/openhands.json +183 -44
  1095. package/dist/locales/zh-CN/openhands.json +183 -44
  1096. package/dist/locales/zh-TW/openhands.json +183 -44
  1097. package/dist/manifests/automation-insights.cjs +2 -0
  1098. package/dist/manifests/automation-insights.cjs.map +1 -0
  1099. package/dist/manifests/automation-insights.d.ts +2 -0
  1100. package/dist/manifests/automation-insights.js +9 -0
  1101. package/dist/manifests/automation-insights.js.map +1 -0
  1102. package/dist/manifests/automation-interface.cjs +1 -1
  1103. package/dist/manifests/automation-interface.cjs.map +1 -1
  1104. package/dist/manifests/automation-interface.d.ts +47 -31
  1105. package/dist/manifests/automation-interface.js +48 -54
  1106. package/dist/manifests/automation-interface.js.map +1 -1
  1107. package/dist/manifests/automation-setup.cjs +1 -1
  1108. package/dist/manifests/automation-setup.cjs.map +1 -1
  1109. package/dist/manifests/automation-setup.d.ts +37 -3
  1110. package/dist/manifests/automation-setup.js +16 -2
  1111. package/dist/manifests/automation-setup.js.map +1 -1
  1112. package/dist/manifests/interface-validation.cjs +1 -1
  1113. package/dist/manifests/interface-validation.cjs.map +1 -1
  1114. package/dist/manifests/interface-validation.js +56 -52
  1115. package/dist/manifests/interface-validation.js.map +1 -1
  1116. package/dist/manifests/manifest-actions.d.ts +5 -0
  1117. package/dist/manifests/manifest-bundle.d.ts +30 -0
  1118. package/dist/manifests/manifest-local-validation.d.ts +10 -1
  1119. package/dist/manifests/manifest-sources.cjs +1 -1
  1120. package/dist/manifests/manifest-sources.cjs.map +1 -1
  1121. package/dist/manifests/manifest-sources.js +3 -3
  1122. package/dist/manifests/manifest-sources.js.map +1 -1
  1123. package/dist/manifests/manifest-template.d.ts +14 -0
  1124. package/dist/manifests/manifest-validation.cjs +1 -1
  1125. package/dist/manifests/manifest-validation.cjs.map +1 -1
  1126. package/dist/manifests/manifest-validation.js +78 -45
  1127. package/dist/manifests/manifest-validation.js.map +1 -1
  1128. package/dist/manifests/types.cjs +1 -1
  1129. package/dist/manifests/types.cjs.map +1 -1
  1130. package/dist/manifests/types.d.ts +64 -3
  1131. package/dist/manifests/types.js +7 -6
  1132. package/dist/manifests/types.js.map +1 -1
  1133. package/dist/node_modules/@heroui/popover/dist/chunk-NW7HJLND.cjs +1 -1
  1134. package/dist/node_modules/@heroui/popover/dist/chunk-NW7HJLND.js +10 -10
  1135. package/dist/node_modules/@heroui/ripple/dist/chunk-UIQI3AYJ.cjs +1 -1
  1136. package/dist/node_modules/@heroui/ripple/dist/chunk-UIQI3AYJ.js +8 -8
  1137. package/dist/node_modules/@heroui/tooltip/dist/chunk-AUA5GDXN.cjs +1 -1
  1138. package/dist/node_modules/@heroui/tooltip/dist/chunk-AUA5GDXN.js +9 -9
  1139. package/dist/node_modules/@openhands/extensions/automations/bundle-index.cjs +4843 -0
  1140. package/dist/node_modules/@openhands/extensions/automations/bundle-index.cjs.map +1 -0
  1141. package/dist/node_modules/@openhands/extensions/automations/bundle-index.js +11 -0
  1142. package/dist/node_modules/@openhands/extensions/automations/bundle-index.js.map +1 -0
  1143. package/dist/node_modules/@openhands/extensions/automations/catalog/github-agents-md-maintainer/manifest.cjs +13 -0
  1144. package/dist/node_modules/@openhands/extensions/automations/catalog/github-agents-md-maintainer/manifest.cjs.map +1 -0
  1145. package/dist/node_modules/@openhands/extensions/automations/catalog/github-agents-md-maintainer/manifest.js +87 -0
  1146. package/dist/node_modules/@openhands/extensions/automations/catalog/github-agents-md-maintainer/manifest.js.map +1 -0
  1147. package/dist/node_modules/@openhands/extensions/automations/catalog/github-issue-to-pr/manifest.cjs +12 -0
  1148. package/dist/node_modules/@openhands/extensions/automations/catalog/github-issue-to-pr/manifest.cjs.map +1 -0
  1149. package/dist/node_modules/@openhands/extensions/automations/catalog/github-issue-to-pr/manifest.js +98 -0
  1150. package/dist/node_modules/@openhands/extensions/automations/catalog/github-issue-to-pr/manifest.js.map +1 -0
  1151. package/dist/node_modules/@openhands/extensions/automations/catalog/github-pr-reviewer/manifest.cjs +9 -7
  1152. package/dist/node_modules/@openhands/extensions/automations/catalog/github-pr-reviewer/manifest.cjs.map +1 -1
  1153. package/dist/node_modules/@openhands/extensions/automations/catalog/github-pr-reviewer/manifest.js +32 -13
  1154. package/dist/node_modules/@openhands/extensions/automations/catalog/github-pr-reviewer/manifest.js.map +1 -1
  1155. package/dist/node_modules/@openhands/extensions/automations/catalog/github-repo-monitor/manifest.cjs +2 -2
  1156. package/dist/node_modules/@openhands/extensions/automations/catalog/github-repo-monitor/manifest.cjs.map +1 -1
  1157. package/dist/node_modules/@openhands/extensions/automations/catalog/github-repo-monitor/manifest.js +29 -34
  1158. package/dist/node_modules/@openhands/extensions/automations/catalog/github-repo-monitor/manifest.js.map +1 -1
  1159. package/dist/node_modules/@openhands/extensions/automations/catalog/jira-issue-to-pr/manifest.cjs +3 -3
  1160. package/dist/node_modules/@openhands/extensions/automations/catalog/jira-issue-to-pr/manifest.cjs.map +1 -1
  1161. package/dist/node_modules/@openhands/extensions/automations/catalog/jira-issue-to-pr/manifest.js +2 -2
  1162. package/dist/node_modules/@openhands/extensions/automations/catalog/jira-issue-to-pr/manifest.js.map +1 -1
  1163. package/dist/node_modules/@openhands/extensions/automations/catalog/news-digest/manifest.cjs +14 -0
  1164. package/dist/node_modules/@openhands/extensions/automations/catalog/news-digest/manifest.cjs.map +1 -0
  1165. package/dist/node_modules/@openhands/extensions/automations/catalog/news-digest/manifest.js +72 -0
  1166. package/dist/node_modules/@openhands/extensions/automations/catalog/news-digest/manifest.js.map +1 -0
  1167. package/dist/node_modules/@openhands/extensions/automations/catalog-index.cjs +1 -1
  1168. package/dist/node_modules/@openhands/extensions/automations/catalog-index.cjs.map +1 -1
  1169. package/dist/node_modules/@openhands/extensions/automations/catalog-index.js +16 -10
  1170. package/dist/node_modules/@openhands/extensions/automations/catalog-index.js.map +1 -1
  1171. package/dist/node_modules/@openhands/extensions/automations/index.cjs +1 -1
  1172. package/dist/node_modules/@openhands/extensions/automations/index.cjs.map +1 -1
  1173. package/dist/node_modules/@openhands/extensions/automations/index.js +18 -13
  1174. package/dist/node_modules/@openhands/extensions/automations/index.js.map +1 -1
  1175. package/dist/node_modules/@openhands/extensions/automations/interface.cjs +1 -1
  1176. package/dist/node_modules/@openhands/extensions/automations/interface.cjs.map +1 -1
  1177. package/dist/node_modules/@openhands/extensions/automations/interface.js +6 -2
  1178. package/dist/node_modules/@openhands/extensions/automations/interface.js.map +1 -1
  1179. package/dist/node_modules/@openhands/extensions/integrations/catalog/posthog.cjs +1 -1
  1180. package/dist/node_modules/@openhands/extensions/integrations/catalog/posthog.cjs.map +1 -1
  1181. package/dist/node_modules/@openhands/extensions/integrations/catalog/posthog.js +36 -3
  1182. package/dist/node_modules/@openhands/extensions/integrations/catalog/posthog.js.map +1 -1
  1183. package/dist/node_modules/@openhands/extensions/integrations/catalog/sonarqube.cjs +2 -0
  1184. package/dist/node_modules/@openhands/extensions/integrations/catalog/sonarqube.cjs.map +1 -0
  1185. package/dist/node_modules/@openhands/extensions/integrations/catalog/sonarqube.js +75 -0
  1186. package/dist/node_modules/@openhands/extensions/integrations/catalog/sonarqube.js.map +1 -0
  1187. package/dist/node_modules/@openhands/extensions/integrations/catalog-index.cjs +1 -1
  1188. package/dist/node_modules/@openhands/extensions/integrations/catalog-index.cjs.map +1 -1
  1189. package/dist/node_modules/@openhands/extensions/integrations/catalog-index.js +68 -66
  1190. package/dist/node_modules/@openhands/extensions/integrations/catalog-index.js.map +1 -1
  1191. package/dist/node_modules/@openhands/extensions/skills/index.cjs +1002 -47
  1192. package/dist/node_modules/@openhands/extensions/skills/index.cjs.map +1 -1
  1193. package/dist/node_modules/@openhands/extensions/skills/index.js +59 -17
  1194. package/dist/node_modules/@openhands/extensions/skills/index.js.map +1 -1
  1195. package/dist/node_modules/lucide-react/dist/esm/icons/activity.cjs +2 -0
  1196. package/dist/node_modules/lucide-react/dist/esm/icons/activity.cjs.map +1 -0
  1197. package/dist/node_modules/lucide-react/dist/esm/icons/activity.js +9 -0
  1198. package/dist/node_modules/lucide-react/dist/esm/icons/activity.js.map +1 -0
  1199. package/dist/node_modules/lucide-react/dist/esm/icons/book-open.cjs +2 -0
  1200. package/dist/node_modules/lucide-react/dist/esm/icons/book-open.cjs.map +1 -0
  1201. package/dist/node_modules/lucide-react/dist/esm/icons/book-open.js +12 -0
  1202. package/dist/node_modules/lucide-react/dist/esm/icons/book-open.js.map +1 -0
  1203. package/dist/node_modules/lucide-react/dist/esm/icons/circle-alert.cjs +2 -0
  1204. package/dist/node_modules/lucide-react/dist/esm/icons/circle-alert.cjs.map +1 -0
  1205. package/dist/node_modules/lucide-react/dist/esm/icons/circle-alert.js +27 -0
  1206. package/dist/node_modules/lucide-react/dist/esm/icons/circle-alert.js.map +1 -0
  1207. package/dist/node_modules/lucide-react/dist/esm/icons/download.cjs +2 -0
  1208. package/dist/node_modules/lucide-react/dist/esm/icons/download.cjs.map +1 -0
  1209. package/dist/node_modules/lucide-react/dist/esm/icons/download.js +19 -0
  1210. package/dist/node_modules/lucide-react/dist/esm/icons/download.js.map +1 -0
  1211. package/dist/node_modules/lucide-react/dist/esm/icons/file-text.cjs +2 -0
  1212. package/dist/node_modules/lucide-react/dist/esm/icons/file-text.cjs.map +1 -0
  1213. package/dist/node_modules/lucide-react/dist/esm/icons/file-text.js +27 -0
  1214. package/dist/node_modules/lucide-react/dist/esm/icons/file-text.js.map +1 -0
  1215. package/dist/node_modules/lucide-react/dist/esm/icons/git-commit-horizontal.cjs +2 -0
  1216. package/dist/node_modules/lucide-react/dist/esm/icons/git-commit-horizontal.cjs.map +1 -0
  1217. package/dist/node_modules/lucide-react/dist/esm/icons/git-commit-horizontal.js +27 -0
  1218. package/dist/node_modules/lucide-react/dist/esm/icons/git-commit-horizontal.js.map +1 -0
  1219. package/dist/node_modules/lucide-react/dist/esm/icons/laptop.cjs +2 -0
  1220. package/dist/node_modules/lucide-react/dist/esm/icons/laptop.cjs.map +1 -0
  1221. package/dist/node_modules/lucide-react/dist/esm/icons/laptop.js +12 -0
  1222. package/dist/node_modules/lucide-react/dist/esm/icons/laptop.js.map +1 -0
  1223. package/dist/node_modules/lucide-react/dist/esm/icons/layout-dashboard.cjs +2 -0
  1224. package/dist/node_modules/lucide-react/dist/esm/icons/layout-dashboard.cjs.map +1 -0
  1225. package/dist/node_modules/lucide-react/dist/esm/icons/layout-dashboard.js +39 -0
  1226. package/dist/node_modules/lucide-react/dist/esm/icons/layout-dashboard.js.map +1 -0
  1227. package/dist/node_modules/lucide-react/dist/esm/icons/library.cjs +2 -0
  1228. package/dist/node_modules/lucide-react/dist/esm/icons/library.cjs.map +1 -0
  1229. package/dist/node_modules/lucide-react/dist/esm/icons/library.js +23 -0
  1230. package/dist/node_modules/lucide-react/dist/esm/icons/library.js.map +1 -0
  1231. package/dist/node_modules/lucide-react/dist/esm/icons/package.cjs +2 -0
  1232. package/dist/node_modules/lucide-react/dist/esm/icons/package.cjs.map +1 -0
  1233. package/dist/node_modules/lucide-react/dist/esm/icons/package.js +23 -0
  1234. package/dist/node_modules/lucide-react/dist/esm/icons/package.js.map +1 -0
  1235. package/dist/node_modules/lucide-react/dist/esm/icons/palette.cjs +2 -0
  1236. package/dist/node_modules/lucide-react/dist/esm/icons/palette.cjs.map +1 -0
  1237. package/dist/node_modules/lucide-react/dist/esm/icons/palette.js +39 -0
  1238. package/dist/node_modules/lucide-react/dist/esm/icons/palette.js.map +1 -0
  1239. package/dist/node_modules/lucide-react/dist/esm/icons/pen-line.cjs +2 -0
  1240. package/dist/node_modules/lucide-react/dist/esm/icons/pen-line.cjs.map +1 -0
  1241. package/dist/node_modules/lucide-react/dist/esm/icons/pen-line.js +12 -0
  1242. package/dist/node_modules/lucide-react/dist/esm/icons/pen-line.js.map +1 -0
  1243. package/dist/node_modules/lucide-react/dist/esm/icons/shield-check.cjs +2 -0
  1244. package/dist/node_modules/lucide-react/dist/esm/icons/shield-check.cjs.map +1 -0
  1245. package/dist/node_modules/lucide-react/dist/esm/icons/shield-check.js +12 -0
  1246. package/dist/node_modules/lucide-react/dist/esm/icons/shield-check.js.map +1 -0
  1247. package/dist/node_modules/lucide-react/dist/esm/icons/sparkles.cjs +2 -0
  1248. package/dist/node_modules/lucide-react/dist/esm/icons/sparkles.cjs.map +1 -0
  1249. package/dist/node_modules/lucide-react/dist/esm/icons/sparkles.js +25 -0
  1250. package/dist/node_modules/lucide-react/dist/esm/icons/sparkles.js.map +1 -0
  1251. package/dist/node_modules/lucide-react/dist/esm/icons/timer.cjs +2 -0
  1252. package/dist/node_modules/lucide-react/dist/esm/icons/timer.cjs.map +1 -0
  1253. package/dist/node_modules/lucide-react/dist/esm/icons/timer.js +27 -0
  1254. package/dist/node_modules/lucide-react/dist/esm/icons/timer.js.map +1 -0
  1255. package/dist/package.cjs +1 -1
  1256. package/dist/package.cjs.map +1 -1
  1257. package/dist/package.js +3 -3
  1258. package/dist/package.js.map +1 -1
  1259. package/dist/routes/app-settings.cjs +1 -1
  1260. package/dist/routes/app-settings.cjs.map +1 -1
  1261. package/dist/routes/app-settings.js +87 -85
  1262. package/dist/routes/app-settings.js.map +1 -1
  1263. package/dist/routes/commits-tab.cjs +1 -1
  1264. package/dist/routes/commits-tab.cjs.map +1 -1
  1265. package/dist/routes/commits-tab.js +27 -21
  1266. package/dist/routes/commits-tab.js.map +1 -1
  1267. package/dist/routes/conversation.cjs +1 -1
  1268. package/dist/routes/conversation.cjs.map +1 -1
  1269. package/dist/routes/conversation.js +56 -55
  1270. package/dist/routes/conversation.js.map +1 -1
  1271. package/dist/routes/files-tab.cjs +1 -1
  1272. package/dist/routes/files-tab.cjs.map +1 -1
  1273. package/dist/routes/files-tab.d.ts +4 -0
  1274. package/dist/routes/files-tab.js +121 -151
  1275. package/dist/routes/files-tab.js.map +1 -1
  1276. package/dist/routes/llm-settings.cjs +1 -1
  1277. package/dist/routes/llm-settings.cjs.map +1 -1
  1278. package/dist/routes/llm-settings.d.ts +9 -1
  1279. package/dist/routes/llm-settings.js +137 -107
  1280. package/dist/routes/llm-settings.js.map +1 -1
  1281. package/dist/routes/mcp.cjs +1 -1
  1282. package/dist/routes/mcp.cjs.map +1 -1
  1283. package/dist/routes/mcp.js +20 -20
  1284. package/dist/routes/secrets-settings.cjs +1 -1
  1285. package/dist/routes/secrets-settings.js +15 -15
  1286. package/dist/services/settings.cjs +1 -1
  1287. package/dist/services/settings.cjs.map +1 -1
  1288. package/dist/services/settings.js +2 -2
  1289. package/dist/services/settings.js.map +1 -1
  1290. package/dist/services/telemetry.cjs +1 -1
  1291. package/dist/services/telemetry.cjs.map +1 -1
  1292. package/dist/services/telemetry.js +47 -51
  1293. package/dist/services/telemetry.js.map +1 -1
  1294. package/dist/stores/conversation-store.cjs +1 -1
  1295. package/dist/stores/conversation-store.cjs.map +1 -1
  1296. package/dist/stores/conversation-store.d.ts +8 -1
  1297. package/dist/stores/conversation-store.js +9 -0
  1298. package/dist/stores/conversation-store.js.map +1 -1
  1299. package/dist/stores/error-message-store.cjs +1 -1
  1300. package/dist/stores/error-message-store.cjs.map +1 -1
  1301. package/dist/stores/error-message-store.d.ts +3 -1
  1302. package/dist/stores/error-message-store.js +5 -3
  1303. package/dist/stores/error-message-store.js.map +1 -1
  1304. package/dist/stores/files-tab-store.cjs +1 -1
  1305. package/dist/stores/files-tab-store.cjs.map +1 -1
  1306. package/dist/stores/files-tab-store.d.ts +13 -0
  1307. package/dist/stores/files-tab-store.js +49 -5
  1308. package/dist/stores/files-tab-store.js.map +1 -1
  1309. package/dist/stores/use-event-store.cjs +1 -1
  1310. package/dist/stores/use-event-store.cjs.map +1 -1
  1311. package/dist/stores/use-event-store.js +11 -11
  1312. package/dist/stores/use-event-store.js.map +1 -1
  1313. package/dist/types/agent-server/core/events/message-event.d.ts +2 -2
  1314. package/dist/types/automation.cjs +2 -0
  1315. package/dist/types/automation.cjs.map +1 -0
  1316. package/dist/types/automation.js +8 -0
  1317. package/dist/types/automation.js.map +1 -0
  1318. package/dist/types/git-sync.d.ts +51 -0
  1319. package/dist/utils/automation-catalog.cjs +1 -1
  1320. package/dist/utils/automation-catalog.cjs.map +1 -1
  1321. package/dist/utils/automation-catalog.d.ts +12 -0
  1322. package/dist/utils/automation-catalog.js +20 -1
  1323. package/dist/utils/automation-catalog.js.map +1 -1
  1324. package/dist/utils/automation-schedule.cjs +2 -0
  1325. package/dist/utils/automation-schedule.cjs.map +1 -0
  1326. package/dist/utils/automation-schedule.js +8 -0
  1327. package/dist/utils/automation-schedule.js.map +1 -0
  1328. package/dist/utils/automation-stack-section.cjs +2 -0
  1329. package/dist/utils/automation-stack-section.cjs.map +1 -0
  1330. package/dist/utils/automation-stack-section.d.ts +2 -0
  1331. package/dist/utils/automation-stack-section.js +6 -0
  1332. package/dist/utils/automation-stack-section.js.map +1 -0
  1333. package/dist/utils/constants.cjs +1 -1
  1334. package/dist/utils/constants.cjs.map +1 -1
  1335. package/dist/utils/constants.js +4 -0
  1336. package/dist/utils/constants.js.map +1 -1
  1337. package/dist/utils/conversation-local-storage.cjs +1 -1
  1338. package/dist/utils/conversation-local-storage.cjs.map +1 -1
  1339. package/dist/utils/conversation-local-storage.d.ts +17 -4
  1340. package/dist/utils/conversation-local-storage.js +111 -63
  1341. package/dist/utils/conversation-local-storage.js.map +1 -1
  1342. package/dist/utils/conversation-metrics.cjs +1 -1
  1343. package/dist/utils/conversation-metrics.cjs.map +1 -1
  1344. package/dist/utils/conversation-metrics.d.ts +3 -2
  1345. package/dist/utils/conversation-metrics.js +16 -14
  1346. package/dist/utils/conversation-metrics.js.map +1 -1
  1347. package/dist/utils/conversation-overview-project-scope.cjs +2 -0
  1348. package/dist/utils/conversation-overview-project-scope.cjs.map +1 -0
  1349. package/dist/utils/conversation-overview-project-scope.d.ts +16 -0
  1350. package/dist/utils/conversation-overview-project-scope.js +22 -0
  1351. package/dist/utils/conversation-overview-project-scope.js.map +1 -0
  1352. package/dist/utils/error-handler.cjs +1 -1
  1353. package/dist/utils/error-handler.cjs.map +1 -1
  1354. package/dist/utils/error-handler.d.ts +3 -2
  1355. package/dist/utils/error-handler.js +18 -5
  1356. package/dist/utils/error-handler.js.map +1 -1
  1357. package/dist/utils/extension-module-card-classes.cjs +1 -1
  1358. package/dist/utils/extension-module-card-classes.cjs.map +1 -1
  1359. package/dist/utils/extension-module-card-classes.d.ts +1 -1
  1360. package/dist/utils/extension-module-card-classes.js +2 -2
  1361. package/dist/utils/extension-module-card-classes.js.map +1 -1
  1362. package/dist/utils/format-model-name.cjs +1 -1
  1363. package/dist/utils/format-model-name.cjs.map +1 -1
  1364. package/dist/utils/format-model-name.d.ts +1 -0
  1365. package/dist/utils/format-model-name.js +1 -0
  1366. package/dist/utils/format-model-name.js.map +1 -1
  1367. package/dist/utils/format-relative-time.cjs +2 -0
  1368. package/dist/utils/format-relative-time.cjs.map +1 -0
  1369. package/dist/utils/format-relative-time.js +17 -0
  1370. package/dist/utils/format-relative-time.js.map +1 -0
  1371. package/dist/utils/git-diff-stats.cjs +5 -0
  1372. package/dist/utils/git-diff-stats.cjs.map +1 -0
  1373. package/dist/utils/git-diff-stats.d.ts +9 -0
  1374. package/dist/utils/git-diff-stats.js +53 -0
  1375. package/dist/utils/git-diff-stats.js.map +1 -0
  1376. package/dist/utils/handle-event-for-ui.cjs +1 -1
  1377. package/dist/utils/handle-event-for-ui.cjs.map +1 -1
  1378. package/dist/utils/handle-event-for-ui.js +13 -11
  1379. package/dist/utils/handle-event-for-ui.js.map +1 -1
  1380. package/dist/utils/mcp-credential-validation.cjs +1 -1
  1381. package/dist/utils/mcp-credential-validation.js +3 -3
  1382. package/dist/utils/mcp-marketplace-utils.cjs +1 -1
  1383. package/dist/utils/mcp-marketplace-utils.cjs.map +1 -1
  1384. package/dist/utils/mcp-marketplace-utils.js +22 -9
  1385. package/dist/utils/mcp-marketplace-utils.js.map +1 -1
  1386. package/dist/utils/parse-git-remote-url.cjs +1 -1
  1387. package/dist/utils/parse-git-remote-url.cjs.map +1 -1
  1388. package/dist/utils/parse-git-remote-url.js +6 -7
  1389. package/dist/utils/parse-git-remote-url.js.map +1 -1
  1390. package/dist/utils/recommended-automation-rail.cjs +2 -0
  1391. package/dist/utils/recommended-automation-rail.cjs.map +1 -0
  1392. package/dist/utils/recommended-automation-rail.d.ts +22 -0
  1393. package/dist/utils/recommended-automation-rail.js +44 -0
  1394. package/dist/utils/recommended-automation-rail.js.map +1 -0
  1395. package/dist/utils/responder-deployment.cjs +2 -0
  1396. package/dist/utils/responder-deployment.cjs.map +1 -0
  1397. package/dist/utils/responder-deployment.js +42 -0
  1398. package/dist/utils/responder-deployment.js.map +1 -0
  1399. package/dist/utils/scroll-fade-state.cjs +2 -0
  1400. package/dist/utils/scroll-fade-state.cjs.map +1 -0
  1401. package/dist/utils/scroll-fade-state.d.ts +6 -0
  1402. package/dist/utils/scroll-fade-state.js +13 -0
  1403. package/dist/utils/scroll-fade-state.js.map +1 -0
  1404. package/dist/utils/skill-category.cjs +2 -0
  1405. package/dist/utils/skill-category.cjs.map +1 -0
  1406. package/dist/utils/skill-category.js +51 -0
  1407. package/dist/utils/skill-category.js.map +1 -0
  1408. package/dist/utils/skill-scope.cjs +1 -1
  1409. package/dist/utils/skill-scope.cjs.map +1 -1
  1410. package/dist/utils/skill-scope.js +1 -1
  1411. package/dist/utils/skill-scope.js.map +1 -1
  1412. package/dist/utils/streaming-delta-batcher.cjs +2 -0
  1413. package/dist/utils/streaming-delta-batcher.cjs.map +1 -0
  1414. package/dist/utils/streaming-delta-batcher.d.ts +21 -0
  1415. package/dist/utils/streaming-delta-batcher.js +31 -0
  1416. package/dist/utils/streaming-delta-batcher.js.map +1 -0
  1417. package/dist/utils/tar-gzip.d.ts +26 -0
  1418. package/dist/utils/transcript-export/load-complete-events.cjs +1 -1
  1419. package/dist/utils/transcript-export/load-complete-events.cjs.map +1 -1
  1420. package/dist/utils/transcript-export/load-complete-events.js +24 -16
  1421. package/dist/utils/transcript-export/load-complete-events.js.map +1 -1
  1422. package/dist/utils/utils.cjs +1 -1
  1423. package/dist/utils/utils.cjs.map +1 -1
  1424. package/dist/utils/utils.d.ts +1 -41
  1425. package/dist/utils/utils.js +27 -6
  1426. package/dist/utils/utils.js.map +1 -1
  1427. package/dist/utils/websocket-handshake.cjs +2 -0
  1428. package/dist/utils/websocket-handshake.cjs.map +1 -0
  1429. package/dist/utils/websocket-handshake.d.ts +11 -0
  1430. package/dist/utils/websocket-handshake.js +12 -0
  1431. package/dist/utils/websocket-handshake.js.map +1 -0
  1432. package/package.json +3 -3
  1433. package/scripts/check-translation-completeness.cjs +7 -0
  1434. package/scripts/dev-static.mjs +49 -43
  1435. package/scripts/dev-with-automation.mjs +111 -14
  1436. package/scripts/seed-automation-ux-data.mjs +810 -0
  1437. package/build/assets/acp-providers-D1PORKc0.js +0 -1
  1438. package/build/assets/active-backend-context-IqOjobNK.js +0 -2
  1439. package/build/assets/agent-context-settings-DMrObcIS.js +0 -1
  1440. package/build/assets/agent-profiles-settings-DororXN5.js +0 -1
  1441. package/build/assets/agent-server-conversation-service.api-DWBe0rbX.js +0 -86
  1442. package/build/assets/agent-settings-BJVk92PU.js +0 -2
  1443. package/build/assets/agent-settings-COfJsQ1d.js +0 -1
  1444. package/build/assets/alert-banner-CzZsm7ms.js +0 -1
  1445. package/build/assets/api-key-entry-screen-D8Fade_-.js +0 -1
  1446. package/build/assets/app-settings-CpyGB3AT.js +0 -1
  1447. package/build/assets/automation-detail-B-jQ39Mm.js +0 -3
  1448. package/build/assets/automation-export-B1dywoqk.js +0 -2
  1449. package/build/assets/automation-setup-route-C-bWUZBi.js +0 -1
  1450. package/build/assets/automation-templates-DgpCGOJV.js +0 -1
  1451. package/build/assets/automations-list-DnMxlxsL.js +0 -1
  1452. package/build/assets/back-nav-button-HHEneWMw.js +0 -1
  1453. package/build/assets/backend-form-modal-DiVrD4Cm.js +0 -1
  1454. package/build/assets/backend-synced-settings-badge-7MIjpr8M.js +0 -1
  1455. package/build/assets/badge-CpYmcVZV.js +0 -1
  1456. package/build/assets/base-modal-Fnh6Uln9.js +0 -1
  1457. package/build/assets/bot-BQZx8e2i.js +0 -1
  1458. package/build/assets/brand-button-swT1RyO0.js +0 -1
  1459. package/build/assets/browser-B9AbV6kG.js +0 -7
  1460. package/build/assets/browser-tab-zAY12m_i.js +0 -1
  1461. package/build/assets/chat-send-button-DsJtivmL.js +0 -1
  1462. package/build/assets/check-WAFXrrs_.js +0 -1
  1463. package/build/assets/chevron-down-CifNWzme.js +0 -1
  1464. package/build/assets/circle-check-CtnimJa8.js +0 -1
  1465. package/build/assets/circle-plus-check-toggle-Cuzx55bo.js +0 -1
  1466. package/build/assets/cloud-funnel-analytics-86CwNdSh.js +0 -1
  1467. package/build/assets/combobox-caret-D0fRotFi.js +0 -1
  1468. package/build/assets/command-menu-BXy03FBl.js +0 -1
  1469. package/build/assets/condenser-settings-BmZa0ui_.js +0 -1
  1470. package/build/assets/confirmation-modal-BgoN6lbN.js +0 -1
  1471. package/build/assets/context-menu-list-item-Bq02tc-P.js +0 -1
  1472. package/build/assets/conversation-BPo8SvLN.js +0 -1
  1473. package/build/assets/conversation-CPCVsCUY.js +0 -90
  1474. package/build/assets/conversation-panel-BPo8SvLN.js +0 -1
  1475. package/build/assets/conversation-state-store-C5YpjMNy.js +0 -1
  1476. package/build/assets/conversation-store-Blc5xysY.js +0 -6
  1477. package/build/assets/conversation-tab-empty-state-CMqo_0Bd.js +0 -1
  1478. package/build/assets/copy-to-clipboard-button-Cg1pF0xn.js +0 -1
  1479. package/build/assets/device-verify-BfQLgNyq.js +0 -1
  1480. package/build/assets/dropdown-classes-BIqQr5mx.js +0 -1
  1481. package/build/assets/entry.client-CxFjRYqH.js +0 -2
  1482. package/build/assets/enum-filter-dropdown-C_yV4_bo.js +0 -1
  1483. package/build/assets/environment-switch-overlay-Bi4qbh2g.js +0 -1
  1484. package/build/assets/extension-module-card-classes-Bo43vY5V.js +0 -1
  1485. package/build/assets/extensions-hub-BqUINAhp.js +0 -1
  1486. package/build/assets/extensions-navigation-lraj88Wk.js +0 -1
  1487. package/build/assets/external-link-CgtpA_a1.js +0 -1
  1488. package/build/assets/file-text-DEK4LSVw.js +0 -1
  1489. package/build/assets/files-tab-DV0L-lFE.js +0 -1
  1490. package/build/assets/form-control-classes-7yFSQJq_.js +0 -1
  1491. package/build/assets/format-model-name-BN_rx1Y3.js +0 -1
  1492. package/build/assets/format-relative-time-DSErAuVr.js +0 -1
  1493. package/build/assets/git-provider-icon-BvlLAche.js +0 -1
  1494. package/build/assets/git-repo-dropdown-ByMzpNko.js +0 -1
  1495. package/build/assets/git-repo-dropdown-C6R7hgM8.js +0 -1
  1496. package/build/assets/highlighted-source-view-C_sfncLZ.js +0 -1
  1497. package/build/assets/home-BOrlwLqG.js +0 -1
  1498. package/build/assets/home-BvMNC6E-.js +0 -1
  1499. package/build/assets/home-store-CxqsY9Fi.js +0 -1
  1500. package/build/assets/index-home-BvMNC6E-.js +0 -1
  1501. package/build/assets/info-BRVcJAUg.js +0 -1
  1502. package/build/assets/install-server-modal-Bl4G1zF4.js +0 -1
  1503. package/build/assets/kebab-menu-item-content-BGoGFEAg.js +0 -1
  1504. package/build/assets/launch-CkqiSCqi.js +0 -1
  1505. package/build/assets/list-todo-DNWlzfaM.js +0 -1
  1506. package/build/assets/llm-not-configured-banner-DLw_tu-G.js +0 -27
  1507. package/build/assets/llm-settings-B-pkVCrt.js +0 -1
  1508. package/build/assets/llm-settings-DSC0-IQ7.js +0 -1
  1509. package/build/assets/llm-subscription-service-BAdOl5Xx.js +0 -1
  1510. package/build/assets/loader-circle-B47W9XqT.js +0 -1
  1511. package/build/assets/loading-spinner-xhnrGP4Y.js +0 -1
  1512. package/build/assets/manage-backends-modal-DhGk5mJt.js +0 -1
  1513. package/build/assets/manifest-653b89aa.js +0 -1
  1514. package/build/assets/manifest-subpage-layout-CKWvL2ig.js +0 -1
  1515. package/build/assets/map-provider-Mx8mZuE-.js +0 -1
  1516. package/build/assets/markdown-renderer-DUmk7pFc.js +0 -8
  1517. package/build/assets/mcp-DCkvl6K0.js +0 -9
  1518. package/build/assets/mcp-marketplace-utils-DEbMXlQr.js +0 -1
  1519. package/build/assets/messages-DSXvyc21.js +0 -40
  1520. package/build/assets/modal-body-gIe21fDv.js +0 -1
  1521. package/build/assets/modal-classes-D66dlgZ7.js +0 -1
  1522. package/build/assets/modal-close-button-B6iOGYpI.js +0 -1
  1523. package/build/assets/mouse-pointer-click-BYX1Pw5W.js +0 -1
  1524. package/build/assets/npm-DLckoeJc.js +0 -1
  1525. package/build/assets/onboarding-D7WDG66N.js +0 -1
  1526. package/build/assets/onboarding-modal-C_xVrFNv.js +0 -1
  1527. package/build/assets/organization-service.api-D-s9z18a.js +0 -1
  1528. package/build/assets/pencil-BGOCPRyu.js +0 -1
  1529. package/build/assets/planner-tab-AKaXIIfg.js +0 -1
  1530. package/build/assets/plugins-management-service-wtmY4QQw.js +0 -1
  1531. package/build/assets/plus-zNEL8rcX.js +0 -1
  1532. package/build/assets/profiles-service.api-DCMYxHMi.js +0 -1
  1533. package/build/assets/providers-BjrtjX4L.js +0 -1
  1534. package/build/assets/proxy-9Z_WZggZ.js +0 -1
  1535. package/build/assets/puzzle-BWLmN8z4.js +0 -1
  1536. package/build/assets/recommended-automations-launcher-CFlzhu1o.js +0 -1
  1537. package/build/assets/refresh-cw-CXtFWpwv.js +0 -1
  1538. package/build/assets/root-CanxKlNV.css +0 -1
  1539. package/build/assets/root-DkfG_UWR.js +0 -2
  1540. package/build/assets/root-layout-D75LHYhh.js +0 -2
  1541. package/build/assets/schema-field-OnM5Uob_.js +0 -1
  1542. package/build/assets/sdk-section-page-m5WQm2sy.js +0 -1
  1543. package/build/assets/search-CycosyjN.js +0 -1
  1544. package/build/assets/secrets-service-B26R61C1.js +0 -1
  1545. package/build/assets/secrets-settings-CbLYCKOX.js +0 -1
  1546. package/build/assets/segmented-toggle-DCspm2U5.js +0 -1
  1547. package/build/assets/settings-BJQI_iBM.js +0 -1
  1548. package/build/assets/settings-CWFxymAf.js +0 -1
  1549. package/build/assets/settings-dropdown-input-BI8V_Nov.js +0 -1
  1550. package/build/assets/settings-index-BiTqJoH7.js +0 -1
  1551. package/build/assets/settings-input-Cz62hWVW.js +0 -1
  1552. package/build/assets/settings-list-classes-z_3FW5H3.js +0 -1
  1553. package/build/assets/settings-modal-BIrIVn97.js +0 -1
  1554. package/build/assets/settings-service.api--rJmnuLa.js +0 -1
  1555. package/build/assets/settings-switch-BRsSI8Vs.js +0 -1
  1556. package/build/assets/settings-utils-Ba7vel6T.js +0 -1
  1557. package/build/assets/shared-conversation-CQK_PqHx.js +0 -1
  1558. package/build/assets/shield-check-T3JsDJiM.js +0 -1
  1559. package/build/assets/sidebar-layout-Bhi3hVcu.js +0 -1
  1560. package/build/assets/sidebar-mobile-menu-toggle-YWJNRN4p.js +0 -1
  1561. package/build/assets/sidebar-nav-link-BSUlY5Ml.js +0 -1
  1562. package/build/assets/sidebar-store-Cl1cUv_F.js +0 -1
  1563. package/build/assets/skill-card-pill-row-BXz8L8Rn.js +0 -1
  1564. package/build/assets/skill-icon-badge-QgfKv31M.js +0 -1
  1565. package/build/assets/skill-scope-Dc3JPW-8.js +0 -1
  1566. package/build/assets/skills-plugins-CpTV27n3.js +0 -1
  1567. package/build/assets/skills-settings-CSW__IW4.js +0 -2
  1568. package/build/assets/sparkles-TJ0mdECe.js +0 -1
  1569. package/build/assets/styled-tooltip-BUMSbgrF.js +0 -1
  1570. package/build/assets/task-list-tab-mAHMOkUz.js +0 -1
  1571. package/build/assets/terminal-BzxBaHx2.js +0 -3
  1572. package/build/assets/toggle-switch-O5v1FgxW.js +0 -1
  1573. package/build/assets/trash-2-C0xNVp9c.js +0 -1
  1574. package/build/assets/typography-NOKSk9_R.js +0 -1
  1575. package/build/assets/usage-tab-tEmVN0KD.js +0 -1
  1576. package/build/assets/use-acp-credential-form-BPNi0Zbm.js +0 -1
  1577. package/build/assets/use-activate-agent-profile-D9YRQPTF.js +0 -1
  1578. package/build/assets/use-agent-profiles-Cb2zUW3l.js +0 -1
  1579. package/build/assets/use-can-manage-org-profiles-Dxzq2AEd.js +0 -1
  1580. package/build/assets/use-cloud-current-user-id-Co2eJk2A.js +0 -1
  1581. package/build/assets/use-config-DKAMiI5R.js +0 -1
  1582. package/build/assets/use-create-conversation-CoHTiCbI.js +0 -1
  1583. package/build/assets/use-create-secret-2zBlCDsF.js +0 -1
  1584. package/build/assets/use-is-authed-C52-ivnB.js +0 -1
  1585. package/build/assets/use-is-creating-conversation-DdaAE6jV.js +0 -1
  1586. package/build/assets/use-launch-skill-in-chat-COnDpxCQ.js +0 -1
  1587. package/build/assets/use-llm-profiles-C_BHue65.js +0 -1
  1588. package/build/assets/use-manifest-capabilities-DPrQsaPP.js +0 -1
  1589. package/build/assets/use-onboarding-completion-CCE8OQgV.js +0 -1
  1590. package/build/assets/use-plugins-marketplace-CEiak69h.js +0 -1
  1591. package/build/assets/use-save-agent-profile-DK9idD6a.js +0 -1
  1592. package/build/assets/use-save-settings-DNmnbG6f.js +0 -1
  1593. package/build/assets/use-settings-nav-items-BlFL7YhM.js +0 -16
  1594. package/build/assets/use-settings-wCwPaSIv.js +0 -1
  1595. package/build/assets/use-tracking-CVwPmhlX.js +0 -3
  1596. package/build/assets/use-user-conversation-DVtfg0B_.js +0 -1
  1597. package/build/assets/useInfiniteQuery-p1xq35r2.js +0 -1
  1598. package/build/assets/useMutation-BFDQmgk9.js +0 -1
  1599. package/build/assets/useQueries-DF1NAAeC.js +0 -1
  1600. package/build/assets/useQuery-DRv--6bK.js +0 -1
  1601. package/build/assets/utils-zxEjKE70.js +0 -1
  1602. package/build/assets/vendor~browser-B-fae1JU.js +0 -47
  1603. package/build/assets/vendor~entry.client-CgNUwtQL.js +0 -1
  1604. package/build/assets/vendor~entry.client-zSIea5EO.js +0 -9
  1605. package/build/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~kv3pap4j-B8i84bh4.js +0 -186
  1606. package/build/assets/vendor~files-tab-D9wR9yM2.js +0 -11
  1607. package/build/assets/vendor~index-home~home~conversation-panel~conversation-Ipoe6hvY.js +0 -13
  1608. package/build/assets/vendor~root-layout-C-IgVx6e.js +0 -1
  1609. package/build/assets/vendor~root-layout~conversation-panel~conversation-Dhd_I4H4.js +0 -1
  1610. package/build/assets/vendor~root-layout~conversation-panel~conversation~skills-settings~automations-list~shared-~bovqqk8e-Cc0f9kPP.js +0 -1
  1611. package/build/assets/vendor~root-layout~index-home~home~conversation-panel~conversation~shared-conversation-d7svw-BB.js +0 -1
  1612. package/build/assets/vendor~root-layout~index-home~home~mcp~automations-list~automation-templates~automation-set~bxsimjx0-D7IDevqN.js +0 -1
  1613. package/build/assets/vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~gxu4j2ea-D5DWZVc7.js +0 -1
  1614. package/build/assets/vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~hjcjabwg-4WsUP-tz.js +0 -48
  1615. package/build/assets/vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~skills-setti~9pstowjp-BOVIFA_g.js +0 -73
  1616. package/build/assets/vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~skills-setti~ht43enc2-C0JXQb_q.js +0 -7465
  1617. package/build/assets/verification-settings-B8UMQ7MG.js +0 -1
  1618. package/build/assets/wrench-DIka3hCq.js +0 -1
  1619. package/build/assets/x-BWKA2Ver.js +0 -1
  1620. package/build/assets/zap-DHddTPc0.js +0 -1
  1621. package/dist/api/cloud/suggestions-service.api.d.ts +0 -8
  1622. package/dist/api/suggestions-service/suggestions-service.api.d.ts +0 -11
  1623. package/dist/components/conversation-events/chat/event-message-components/observation-pair-event-message.d.ts +0 -7
  1624. package/dist/components/conversation-events/index.d.ts +0 -1
  1625. package/dist/components/features/automations/metadata-chip.d.ts +0 -6
  1626. package/dist/components/features/chat/task-tracking/status-badge.d.ts +0 -5
  1627. package/dist/components/features/chat/task-tracking/status-icon.d.ts +0 -5
  1628. package/dist/components/features/chat/task-tracking/task-list-section.d.ts +0 -10
  1629. package/dist/components/features/controls/tools.d.ts +0 -2
  1630. package/dist/components/features/conversation-panel/new-conversation-button.d.ts +0 -23
  1631. package/dist/components/features/diff-viewer/empty-changes-message.cjs +0 -2
  1632. package/dist/components/features/diff-viewer/empty-changes-message.cjs.map +0 -1
  1633. package/dist/components/features/diff-viewer/empty-changes-message.js +0 -17
  1634. package/dist/components/features/diff-viewer/empty-changes-message.js.map +0 -1
  1635. package/dist/components/features/home/home-header/guide-message.d.ts +0 -1
  1636. package/dist/components/features/home/home-header/home-header.d.ts +0 -1
  1637. package/dist/components/features/home/new-conversation/create-conversation-button.d.ts +0 -1
  1638. package/dist/components/features/home/new-conversation/new-conversation.d.ts +0 -1
  1639. package/dist/components/features/home/new-conversation.d.ts +0 -1
  1640. package/dist/components/features/home/tasks/task-card.d.ts +0 -6
  1641. package/dist/components/features/home/tasks/task-group.d.ts +0 -7
  1642. package/dist/components/features/home/tasks/task-issue-number.d.ts +0 -6
  1643. package/dist/components/features/home/tasks/task-item-title.d.ts +0 -1
  1644. package/dist/components/features/home/tasks/task-suggestions-skeleton.d.ts +0 -1
  1645. package/dist/components/features/home/tasks/task-suggestions.d.ts +0 -6
  1646. package/dist/components/features/settings/agent-server-onboarding.d.ts +0 -10
  1647. package/dist/components/features/settings/mcp-settings/mcp-server-list-item.d.ts +0 -6
  1648. package/dist/components/features/settings/mcp-settings/mcp-server-list.d.ts +0 -8
  1649. package/dist/components/features/tips/random-tip.cjs +0 -2
  1650. package/dist/components/features/tips/random-tip.cjs.map +0 -1
  1651. package/dist/components/features/tips/random-tip.js +0 -41
  1652. package/dist/components/features/tips/random-tip.js.map +0 -1
  1653. package/dist/hooks/query/use-has-git-commits.cjs +0 -2
  1654. package/dist/hooks/query/use-has-git-commits.cjs.map +0 -1
  1655. package/dist/hooks/query/use-has-git-commits.d.ts +0 -25
  1656. package/dist/hooks/query/use-has-git-commits.js +0 -31
  1657. package/dist/hooks/query/use-has-git-commits.js.map +0 -1
  1658. package/dist/hooks/query/use-suggested-tasks.d.ts +0 -1
  1659. package/dist/hooks/use-has-attached-source.cjs +0 -2
  1660. package/dist/hooks/use-has-attached-source.cjs.map +0 -1
  1661. package/dist/hooks/use-has-attached-source.d.ts +0 -18
  1662. package/dist/hooks/use-has-attached-source.js +0 -14
  1663. package/dist/hooks/use-has-attached-source.js.map +0 -1
  1664. package/dist/hooks/use-should-show-user-features.d.ts +0 -1
  1665. package/dist/icons/chveron-up.cjs +0 -2
  1666. package/dist/icons/chveron-up.cjs.map +0 -1
  1667. package/dist/icons/chveron-up.js +0 -21
  1668. package/dist/icons/chveron-up.js.map +0 -1
  1669. package/dist/routes/changes-tab.cjs +0 -2
  1670. package/dist/routes/changes-tab.cjs.map +0 -1
  1671. package/dist/routes/changes-tab.d.ts +0 -3
  1672. package/dist/routes/changes-tab.js +0 -64
  1673. package/dist/routes/changes-tab.js.map +0 -1
  1674. package/dist/ui/card-title.d.ts +0 -16
  1675. package/dist/ui/card.d.ts +0 -14
  1676. package/dist/utils/file-priority.cjs +0 -2
  1677. package/dist/utils/file-priority.cjs.map +0 -1
  1678. package/dist/utils/file-priority.d.ts +0 -27
  1679. package/dist/utils/file-priority.js +0 -61
  1680. package/dist/utils/file-priority.js.map +0 -1
  1681. package/dist/utils/group-suggested-tasks.d.ts +0 -7
  1682. package/dist/utils/table-row-classes.d.ts +0 -9
  1683. package/dist/utils/tips.cjs +0 -2
  1684. package/dist/utils/tips.cjs.map +0 -1
  1685. package/dist/utils/tips.js +0 -45
  1686. package/dist/utils/tips.js.map +0 -1
  1687. /package/build/assets/{vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~dh9v73sa-rfV8mQ9m.js → vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~ew3u153i-rfV8mQ9m.js} +0 -0
  1688. /package/build/assets/{vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~lq5hicxx-cHFhpUBq.js → vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~ox0jfsa0-cHFhpUBq.js} +0 -0
@@ -1,47 +0,0 @@
1
- import{a as e,c as t,i as n,l as r,n as i,o as a,r as o,s,t as c,u as l}from"./vendor~browser-C6uXH-dw.js";var u=class{constructor(e,t){this.protocol=e,this.data=t,this.events=new s}protocol;data;events},d=class extends t{frame;constructor(e,t){super(e,{}),this.frame=t}},f=class{emitter;constructor(){this.emitter=new s}async queue(e){await this.emitter.emitAsPromise(new d(`frame`,e))}on(e,t,n){this.emitter.on(e,t,n)}disable(){this.emitter.removeAllListeners()}};function p(e){let t=new URL(e.url);return t.protocol===`file:`||/(fonts\.googleapis\.com)/.test(t.hostname)||/node_modules/.test(t.pathname)||t.pathname.includes(`@vite`)?!0:/\.(s?css|less|m?jsx?|m?tsx?|html|ttf|otf|woff|woff2|eot|gif|jpe?g|png|avif|webp|svg|mp4|webm|ogg|mov|mp3|wav|ogg|flac|aac|pdf|txt|csv|json|xml|md|zip|tar|gz|rar|7z)$/i.test(t.pathname)}var m=`[MSW]`;function h(e,...t){return`${m} ${r(e,...t)}`}function g(e,...t){console.warn(h(e,...t))}function _(e,...t){console.error(h(e,...t))}var v={formatMessage:h,warn:g,error:_},y=class extends Error{constructor(e){super(e),this.name=`InternalError`}};function b(){if(typeof navigator<`u`&&navigator.product===`ReactNative`)return!0;if(typeof process<`u`){let e=process.type;return e===`renderer`||e===`worker`?!1:!!(process.versions&&process.versions.node)}return!1}var x=Object.defineProperty,S=(e,t)=>{for(var n in t)x(e,n,{get:t[n],enumerable:!0})},C={};S(C,{blue:()=>te,gray:()=>ne,green:()=>ie,red:()=>re,yellow:()=>ee});function ee(e){return`\x1B[33m${e}\x1B[0m`}function te(e){return`\x1B[34m${e}\x1B[0m`}function ne(e){return`\x1B[90m${e}\x1B[0m`}function re(e){return`\x1B[31m${e}\x1B[0m`}function ie(e){return`\x1B[32m${e}\x1B[0m`}var ae=b(),oe=class{constructor(e){this.name=e,this.prefix=`[${this.name}]`;let t=de(`DEBUG`),n=de(`LOG_LEVEL`);t===`1`||t===`true`||t!==void 0&&this.name.startsWith(t)?(this.debug=T(n,`debug`)?w:this.debug,this.info=T(n,`info`)?w:this.info,this.success=T(n,`success`)?w:this.success,this.warning=T(n,`warning`)?w:this.warning,this.error=T(n,`error`)?w:this.error):(this.info=w,this.success=w,this.warning=w,this.error=w,this.only=w)}prefix;extend(e){return new oe(`${this.name}:${e}`)}debug(e,...t){this.logEntry({level:`debug`,message:ne(e),positionals:t,prefix:this.prefix,colors:{prefix:`gray`}})}info(e,...t){this.logEntry({level:`info`,message:e,positionals:t,prefix:this.prefix,colors:{prefix:`blue`}});let n=new se;return(e,...t)=>{n.measure(),this.logEntry({level:`info`,message:`${e} ${ne(`${n.deltaTime}ms`)}`,positionals:t,prefix:this.prefix,colors:{prefix:`blue`}})}}success(e,...t){this.logEntry({level:`info`,message:e,positionals:t,prefix:`\u2714 ${this.prefix}`,colors:{timestamp:`green`,prefix:`green`}})}warning(e,...t){this.logEntry({level:`warning`,message:e,positionals:t,prefix:`\u26A0 ${this.prefix}`,colors:{timestamp:`yellow`,prefix:`yellow`}})}error(e,...t){this.logEntry({level:`error`,message:e,positionals:t,prefix:`\u2716 ${this.prefix}`,colors:{timestamp:`red`,prefix:`red`}})}only(e){e()}createEntry(e,t){return{timestamp:new Date,level:e,message:t}}logEntry(e){let{level:t,message:n,prefix:r,colors:i,positionals:a=[]}=e,o=this.createEntry(t,n),s=i?.timestamp||`gray`,c=i?.prefix||`gray`,l={timestamp:C[s],prefix:C[c]};this.getWriter(t)([l.timestamp(this.formatTimestamp(o.timestamp))].concat(r==null?[]:l.prefix(r),fe(n)).join(` `),...a.map(fe))}formatTimestamp(e){return`${e.toLocaleTimeString(`en-GB`)}:${e.getMilliseconds()}`}getWriter(e){switch(e){case`debug`:case`success`:case`info`:return ce;case`warning`:return le;case`error`:return ue}}},se=class{startTime;endTime;deltaTime;constructor(){this.startTime=performance.now()}measure(){this.endTime=performance.now();let e=this.endTime-this.startTime;this.deltaTime=e.toFixed(2)}},w=()=>void 0;function ce(e,...t){if(ae){process.stdout.write(r(e,...t)+`
2
- `);return}console.log(e,...t)}function le(e,...t){if(ae){process.stderr.write(r(e,...t)+`
3
- `);return}console.warn(e,...t)}function ue(e,...t){if(ae){process.stderr.write(r(e,...t)+`
4
- `);return}console.error(e,...t)}function de(e){return ae?{}[e]:globalThis[e]?.toString()}function T(e,t){return e!==void 0&&e!==t}function fe(e){return e===void 0?`undefined`:e===null?`null`:typeof e==`string`?e:typeof e==`object`?JSON.stringify(e):e.toString()}function pe(e){return globalThis[e]||void 0}function me(e,t){globalThis[e]=t}function he(e){delete globalThis[e]}var E=function(e){return e.INACTIVE=`INACTIVE`,e.APPLYING=`APPLYING`,e.APPLIED=`APPLIED`,e.DISPOSING=`DISPOSING`,e.DISPOSED=`DISPOSED`,e}({}),ge=class{constructor(t){this.symbol=t,this.readyState=E.INACTIVE,this.emitter=new e,this.subscriptions=[],this.logger=new oe(t.description),this.emitter.setMaxListeners(0),this.logger.info(`constructing the interceptor...`)}checkEnvironment(){return!0}apply(){let e=this.logger.extend(`apply`);if(e.info(`applying the interceptor...`),this.readyState===E.APPLIED){e.info(`intercepted already applied!`);return}if(!this.checkEnvironment()){e.info(`the interceptor cannot be applied in this environment!`);return}this.readyState=E.APPLYING;let t=this.getInstance();if(t){e.info(`found a running instance, reusing...`),this.on=(n,r)=>(e.info(`proxying the "%s" listener`,n),t.emitter.addListener(n,r),this.subscriptions.push(()=>{t.emitter.removeListener(n,r),e.info(`removed proxied "%s" listener!`,n)}),this),this.readyState=E.APPLIED;return}e.info(`no running instance found, setting up a new instance...`),this.setup(),this.setInstance(),this.readyState=E.APPLIED}setup(){}on(e,t){let n=this.logger.extend(`on`);return this.readyState===E.DISPOSING||this.readyState===E.DISPOSED?(n.info(`cannot listen to events, already disposed!`),this):(n.info(`adding "%s" event listener:`,e,t),this.emitter.on(e,t),this)}once(e,t){return this.emitter.once(e,t),this}off(e,t){return this.emitter.off(e,t),this}removeAllListeners(e){return this.emitter.removeAllListeners(e),this}dispose(){let e=this.logger.extend(`dispose`);if(this.readyState===E.DISPOSED){e.info(`cannot dispose, already disposed!`);return}if(e.info(`disposing the interceptor...`),this.readyState=E.DISPOSING,!this.getInstance()){e.info(`no interceptors running, skipping dispose...`);return}if(this.clearInstance(),e.info(`global symbol deleted:`,pe(this.symbol)),this.subscriptions.length>0){e.info(`disposing of %d subscriptions...`,this.subscriptions.length);for(let e of this.subscriptions)e();this.subscriptions=[],e.info(`disposed of all subscriptions!`,this.subscriptions.length)}this.emitter.removeAllListeners(),e.info(`destroyed the listener!`),this.readyState=E.DISPOSED}getInstance(){let e=pe(this.symbol);return this.logger.info(`retrieved global instance:`,e?.constructor?.name),e}setInstance(){me(this.symbol,this),this.logger.info(`set global instance!`,this.symbol.description)}clearInstance(){he(this.symbol),this.logger.info(`cleared global instance!`,this.symbol.description)}};function _e(){return Math.random().toString(16).slice(2)}function ve(){let e=(t,n)=>{e.state=`pending`,e.resolve=n=>e.state===`pending`?(e.result=n,t(n instanceof Promise?n:Promise.resolve(n).then(t=>(e.state=`fulfilled`,t)))):void 0,e.reject=t=>{if(e.state===`pending`)return queueMicrotask(()=>{e.state=`rejected`}),n(e.rejectionReason=t)}};return e}var ye=class extends Promise{#e;resolve;reject;constructor(e=null){let t=ve();super((n,r)=>{t(n,r),e?.(t.resolve,t.reject)}),this.#e=t,this.resolve=this.#e.resolve,this.reject=this.#e.reject}get state(){return this.#e.state}get rejectionReason(){return this.#e.rejectionReason}then(e,t){return this.#t(super.then(e,t))}catch(e){return this.#t(super.catch(e))}finally(e){return this.#t(super.finally(e))}#t(e){return Object.defineProperties(e,{resolve:{configurable:!0,value:this.resolve},reject:{configurable:!0,value:this.reject}})}},be=class e extends Error{constructor(t){super(t),this.name=`InterceptorError`,Object.setPrototypeOf(this,e.prototype)}};(class e{static{this.PENDING=0}static{this.PASSTHROUGH=1}static{this.RESPONSE=2}static{this.ERROR=3}constructor(t,n){this.request=t,this.source=n,this.readyState=e.PENDING,this.handled=new ye}get#e(){return this.handled}async passthrough(){l.as(be,this.readyState===e.PENDING,`Failed to passthrough the "%s %s" request: the request has already been handled`,this.request.method,this.request.url),this.readyState=e.PASSTHROUGH,await this.source.passthrough(),this.#e.resolve()}respondWith(t){l.as(be,this.readyState===e.PENDING,`Failed to respond to the "%s %s" request with "%d %s": the request has already been handled (%d)`,this.request.method,this.request.url,t.status,t.statusText||`OK`,this.readyState),this.readyState=e.RESPONSE,this.#e.resolve(),this.source.respondWith(t)}errorWith(t){l.as(be,this.readyState===e.PENDING,`Failed to error the "%s %s" request with "%s": the request has already been handled (%d)`,this.request.method,this.request.url,t?.toString(),this.readyState),this.readyState=e.ERROR,this.source.errorWith(t),this.#e.resolve()}});function xe(e){try{return new URL(e),!0}catch{return!1}}function Se(e,t){let n=Object.getOwnPropertySymbols(t).find(t=>t.description===e);if(n)return Reflect.get(t,n)}var Ce=Symbol(`kStatus`),we=Symbol(`kUrl`),Te=class e extends Response{static{this.STATUS_CODES_WITHOUT_BODY=[101,103,204,205,304]}static{this.STATUS_CODES_WITH_REDIRECT=[301,302,303,307,308]}static isConfigurableStatusCode(e){return e>=200&&e<=599}static isRedirectResponse(t){return e.STATUS_CODES_WITH_REDIRECT.includes(t)}static isResponseWithBody(t){return!e.STATUS_CODES_WITHOUT_BODY.includes(t)}static setStatus(e,t){let n=Se(`state`,t);n?n.status=e:Object.defineProperty(t,"status",{value:e,enumerable:!0,configurable:!0,writable:!1}),Object.defineProperty(t,Ce,{value:e,enumerable:!1})}static setUrl(e,t){if(!e||e===`about:`||!xe(e))return;let n=Se(`state`,t);n?n.urlList.push(new URL(e)):Object.defineProperty(t,"url",{value:e,enumerable:!0,configurable:!0,writable:!1}),Object.defineProperty(t,we,{value:e,enumerable:!1})}static parseRawHeaders(e){let t=new Headers;for(let n=0;n<e.length;n+=2)t.append(e[n],e[n+1]);return t}static clone(e){try{return e.clone()}catch(e){return Response.json(e instanceof Error?{name:e.name,message:e.message,stack:e.stack}:{},{status:500,statusText:`Unclonable Response`})}}constructor(t,n={}){let r=n.status??200,i=e.isConfigurableStatusCode(r)?r:200,a=e.isResponseWithBody(r)?t:null;super(a,{status:i,statusText:n.statusText,headers:n.headers}),r!==i&&e.setStatus(r,this),e.setUrl(n.url,this)}clone(){let t=super.clone(),n=Reflect.get(this,Ce);n&&e.setStatus(n,t);let r=Reflect.get(this,we);return r&&e.setUrl(r,t),t}};new TextEncoder;function Ee(e){if(typeof e==`string`)return Ee(new URL(e,typeof location<`u`?location.href:void 0));if(e.protocol===`http:`?e.protocol=`ws:`:e.protocol===`https:`&&(e.protocol=`wss:`),e.protocol!==`ws:`&&e.protocol!==`wss:`)throw SyntaxError(`Failed to construct 'WebSocket': The URL's scheme must be either 'http', 'https', 'ws', or 'wss'. '${e.protocol}' is not allowed.`);if(e.hash!==``)throw SyntaxError(`Failed to construct 'WebSocket': The URL contains a fragment identifier ('${e.hash}'). Fragment identifiers are not allowed in WebSocket URLs.`);return e.href}var De=class e extends ge{constructor(t){e.symbol=Symbol.for(t.name),super(e.symbol),this.interceptors=t.interceptors}setup(){let e=this.logger.extend(`setup`);e.info(`applying all %d interceptors...`,this.interceptors.length);for(let t of this.interceptors)e.info(`applying "%s" interceptor...`,t.constructor.name),t.apply(),e.info(`adding interceptor dispose subscription`),this.subscriptions.push(()=>t.dispose())}on(e,t){for(let n of this.interceptors)n.on(e,t);return this}once(e,t){for(let n of this.interceptors)n.once(e,t);return this}off(e,t){for(let n of this.interceptors)n.off(e,t);return this}removeAllListeners(e){for(let t of this.interceptors)t.removeAllListeners(e);return this}};function Oe(e,t=!0){return[t&&e.origin,e.pathname].filter(Boolean).join(``)}function ke(e){let t=e instanceof URL?e:new URL(e);return typeof location<`u`&&t.origin===location.origin?t.pathname:t.origin+t.pathname}var Ae=/[^a-z0-9\-#$%&'*+.^_`|~]/i;function D(e){if(Ae.test(e)||e.trim()===``)throw TypeError(`Invalid character in header field name`);return e.trim().toLowerCase()}var je=[`
5
- `,`\r`,` `,` `],Me=RegExp(`(^[${je.join(``)}]|$[${je.join(``)}])`,`g`);function Ne(e){return e.replace(Me,``)}function Pe(e){if(typeof e!=`string`||e.length===0)return!1;for(let t=0;t<e.length;t++){let n=e.charCodeAt(t);if(n>127||!Fe(n))return!1}return!0}function Fe(e){return![127,32,`(`,`)`,`<`,`>`,`@`,`,`,`;`,`:`,`\\`,`"`,`/`,`[`,`]`,`?`,`=`,`{`,`}`].includes(e)}function Ie(e){if(typeof e!=`string`||e.trim()!==e)return!1;for(let t=0;t<e.length;t++){let n=e.charCodeAt(t);if(n===0||n===10||n===13)return!1}return!0}var Le,O=Symbol(`normalizedHeaders`),Re=Symbol(`rawHeaderNames`),ze=`, `,Be=class e{constructor(t){this[O]={},this[Re]=new Map,this[Le]=`Headers`,[`Headers`,`HeadersPolyfill`].includes(t?.constructor?.name)||t instanceof e||globalThis.Headers!==void 0&&t instanceof globalThis.Headers?t.forEach((e,t)=>{this.append(t,e)},this):Array.isArray(t)?t.forEach(([e,t])=>{this.append(e,Array.isArray(t)?t.join(ze):t)}):t&&Object.getOwnPropertyNames(t).forEach(e=>{let n=t[e];this.append(e,Array.isArray(n)?n.join(ze):n)})}[(Le=Symbol.toStringTag,Symbol.iterator)](){return this.entries()}*keys(){for(let[e]of this.entries())yield e}*values(){for(let[,e]of this.entries())yield e}*entries(){let e=Object.keys(this[O]).sort((e,t)=>e.localeCompare(t));for(let t of e)if(t===`set-cookie`)for(let e of this.getSetCookie())yield[t,e];else yield[t,this.get(t)]}has(e){if(!Pe(e))throw TypeError(`Invalid header name "${e}"`);return this[O].hasOwnProperty(D(e))}get(e){if(!Pe(e))throw TypeError(`Invalid header name "${e}"`);return this[O][D(e)]??null}set(e,t){if(!Pe(e)||!Ie(t))return;let n=D(e),r=Ne(t);this[O][n]=Ne(r),this[Re].set(n,e)}append(e,t){if(!Pe(e)||!Ie(t))return;let n=D(e),r=Ne(t),i=this.has(n)?`${this.get(n)}, ${r}`:r;this.set(e,i)}delete(e){if(!Pe(e)||!this.has(e))return;let t=D(e);delete this[O][t],this[Re].delete(t)}forEach(e,t){for(let[n,r]of this.entries())e.call(t,r,n,this)}getSetCookie(){let e=this.get(`set-cookie`);return e===null?[]:e===``?[``]:n(e)}},Ve=/[/\\]msw[/\\]src[/\\](.+)/,He=/(node_modules)?[/\\]lib[/\\](core|browser|node|native|iife)[/\\]|^[^/\\]*$/;function Ue(e){let t=e.stack;if(!t)return;let n=t.split(`
6
- `).slice(1).find(e=>!(Ve.test(e)||He.test(e)));if(n)return n.replace(/\s*at [^()]*\(([^)]+)\)/,`$1`).replace(/^@/,``)}function We(e){return e?Reflect.has(e,Symbol.iterator)||Reflect.has(e,Symbol.asyncIterator):!1}var Ge=Object.create,Ke=Object.defineProperty,qe=Object.getOwnPropertyDescriptor,Je=Object.getOwnPropertyNames,Ye=Object.getPrototypeOf,Xe=Object.prototype.hasOwnProperty,Ze=(e,t)=>function(){return t||(0,e[Je(e)[0]])((t={exports:{}}).exports,t),t.exports},Qe=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let i of Je(t))!Xe.call(e,i)&&i!==n&&Ke(e,i,{get:()=>t[i],enumerable:!(r=qe(t,i))||r.enumerable});return e},$e=(e,t,n)=>(n=e==null?{}:Ge(Ye(e)),Qe(t||!e||!e.__esModule?Ke(n,`default`,{value:e,enumerable:!0}):n,e)),et=Ze({"node_modules/.pnpm/statuses@2.0.2/node_modules/statuses/codes.json"(e,t){t.exports={100:`Continue`,101:`Switching Protocols`,102:`Processing`,103:`Early Hints`,200:`OK`,201:`Created`,202:`Accepted`,203:`Non-Authoritative Information`,204:`No Content`,205:`Reset Content`,206:`Partial Content`,207:`Multi-Status`,208:`Already Reported`,226:`IM Used`,300:`Multiple Choices`,301:`Moved Permanently`,302:`Found`,303:`See Other`,304:`Not Modified`,305:`Use Proxy`,307:`Temporary Redirect`,308:`Permanent Redirect`,400:`Bad Request`,401:`Unauthorized`,402:`Payment Required`,403:`Forbidden`,404:`Not Found`,405:`Method Not Allowed`,406:`Not Acceptable`,407:`Proxy Authentication Required`,408:`Request Timeout`,409:`Conflict`,410:`Gone`,411:`Length Required`,412:`Precondition Failed`,413:`Payload Too Large`,414:`URI Too Long`,415:`Unsupported Media Type`,416:`Range Not Satisfiable`,417:`Expectation Failed`,418:`I'm a Teapot`,421:`Misdirected Request`,422:`Unprocessable Entity`,423:`Locked`,424:`Failed Dependency`,425:`Too Early`,426:`Upgrade Required`,428:`Precondition Required`,429:`Too Many Requests`,431:`Request Header Fields Too Large`,451:`Unavailable For Legal Reasons`,500:`Internal Server Error`,501:`Not Implemented`,502:`Bad Gateway`,503:`Service Unavailable`,504:`Gateway Timeout`,505:`HTTP Version Not Supported`,506:`Variant Also Negotiates`,507:`Insufficient Storage`,508:`Loop Detected`,509:`Bandwidth Limit Exceeded`,510:`Not Extended`,511:`Network Authentication Required`}}}),tt=$e(Ze({"node_modules/.pnpm/statuses@2.0.2/node_modules/statuses/index.js"(e,t){var n=et();t.exports=s,s.message=n,s.code=r(n),s.codes=i(n),s.redirect={300:!0,301:!0,302:!0,303:!0,305:!0,307:!0,308:!0},s.empty={204:!0,205:!0,304:!0},s.retry={502:!0,503:!0,504:!0};function r(e){var t={};return Object.keys(e).forEach(function(n){var r=e[n],i=Number(n);t[r.toLowerCase()]=i}),t}function i(e){return Object.keys(e).map(function(e){return Number(e)})}function a(e){var t=e.toLowerCase();if(!Object.prototype.hasOwnProperty.call(s.code,t))throw Error(`invalid status message: "`+e+`"`);return s.code[t]}function o(e){if(!Object.prototype.hasOwnProperty.call(s.message,e))throw Error(`invalid status code: `+e);return s.message[e]}function s(e){if(typeof e==`number`)return o(e);if(typeof e!=`string`)throw TypeError(`code must be a number or string`);var t=parseInt(e,10);return isNaN(t)?a(e):o(t)}}})(),1),nt=tt.default||tt;nt.message;var rt=nt,{message:it}=rt,at=Symbol(`kSetCookie`);function k(e={}){let t=e?.status||200,n=e?.statusText||it[t]||``,r=new Headers(e?.headers);return{...e,headers:r,status:t,statusText:n}}function ot(e,t){t.type&&Object.defineProperty(e,"type",{value:t.type,enumerable:!0,writable:!1});let n=t.headers.get(`set-cookie`);return n&&Object.defineProperty(e,at,{value:n,enumerable:!1,writable:!1}),e}function st(e){return Reflect.get(e,at)}function ct(e,t){for(let n of Reflect.ownKeys(e)){let r=Object.getOwnPropertyDescriptor(e,n);r&&Object.getOwnPropertyDescriptor(t,n)==null&&Object.defineProperty(t,n,r)}}var lt=Symbol(`bodyType`),A=Symbol.for(`kDefaultContentType`),ut=class e extends Te{[lt]=null;constructor(e,t){let n=k(t);super(e,n),ot(this,n)}static error(){return super.error()}static text(t,n){let r=k(n),i=r.headers.has(`Content-Type`);i||r.headers.set(`Content-Type`,`text/plain`),r.headers.has(`Content-Length`)||r.headers.set(`Content-Length`,t?new Blob([t]).size.toString():`0`);let a=new e(t,r);return i||Object.defineProperty(a,A,{value:!0,enumerable:!1}),a}static json(t,n){let r=k(n),i=r.headers.has(`Content-Type`);i||r.headers.set(`Content-Type`,`application/json`);let a=JSON.stringify(t);r.headers.has(`Content-Length`)||r.headers.set(`Content-Length`,a?new Blob([a]).size.toString():`0`);let o=new e(a,r);return i||Object.defineProperty(o,A,{value:!0,enumerable:!1}),o}static xml(t,n){let r=k(n),i=r.headers.has(`Content-Type`);i||r.headers.set(`Content-Type`,`text/xml`);let a=new e(t,r);return i||Object.defineProperty(a,A,{value:!0,enumerable:!1}),a}static html(t,n){let r=k(n),i=r.headers.has(`Content-Type`);i||r.headers.set(`Content-Type`,`text/html`);let a=new e(t,r);return i||Object.defineProperty(a,A,{value:!0,enumerable:!1}),a}static arrayBuffer(t,n){let r=k(n),i=r.headers.has(`Content-Type`);i||r.headers.set(`Content-Type`,`application/octet-stream`),t&&!r.headers.has(`Content-Length`)&&r.headers.set(`Content-Length`,t.byteLength.toString());let a=new e(t,r);return i||Object.defineProperty(a,A,{value:!0,enumerable:!1}),a}static formData(t,n){return new e(t,k(n))}};function dt(){let e=((t,n)=>{e.state=`pending`,e.resolve=n=>e.state===`pending`?(e.result=n,t(n instanceof Promise?n:Promise.resolve(n).then(t=>(e.state=`fulfilled`,t)))):void 0,e.reject=t=>{if(e.state===`pending`)return queueMicrotask(()=>{e.state=`rejected`}),n(e.rejectionReason=t)}});return e}var ft=class extends Promise{#e;resolve;reject;constructor(e=null){let t=dt();super((n,r)=>{t(n,r),e?.(t.resolve,t.reject)}),this.#e=t,this.resolve=this.#e.resolve,this.reject=this.#e.reject}get state(){return this.#e.state}get rejectionReason(){return this.#e.rejectionReason}then(e,t){return this.#t(super.then(e,t))}catch(e){return this.#t(super.catch(e))}finally(e){return this.#t(super.finally(e))}#t(e){return Object.defineProperties(e,{resolve:{configurable:!0,value:this.resolve},reject:{configurable:!0,value:this.reject}})}};function pt(e){if(e.body==null||e.bodyUsed||e.body.locked)return null;let t=new ft,n=e.body.getReader(),r=new Te(new ReadableStream({async pull(e){try{let r=await n.read();if(r.done){t.resolve(),e.close();return}e.enqueue(r.value)}catch(e){throw t.resolve(),e}},async cancel(e){t.resolve(),await n.cancel(e)}}),{status:e.status,statusText:e.statusText,headers:e.headers});return ct(e,r),{response:r,settled:t}}var mt=class e{static cache=new WeakMap;kind=`request`;resolver;resolverIterator;resolverIteratorResult;resolverIteratorCleanups;options;scheduledCleanups;info;isUsed;constructor(e){this.resolver=e.resolver,this.options=e.options,this.scheduledCleanups=new Map;let t=Ue(Error());this.info={...e.info,callFrame:t},this.isUsed=!1}reset(){this.scheduledCleanups.clear();let e=this.resolverIterator;this.resolverIterator=void 0,this.resolverIteratorResult=void 0,this.resolverIteratorCleanups=void 0,typeof e?.return==`function`&&Promise.resolve(e.return())}restore(){this.options?.once&&(this.reset(),this.isUsed=!1)}async parse(e){return{}}async test(e){let t=await this.parse({request:e.request,resolutionContext:e.resolutionContext});return this.predicate({request:e.request,parsedResult:t,resolutionContext:e.resolutionContext})}extendResolverArgs(e){return{}}cloneRequestOrGetFromCache(t){let n=e.cache.get(t);if(n!==void 0)return n;let r=t.clone();return e.cache.set(t,r),r}async run(e){if(this.isUsed&&this.options?.once)return null;let t=this.cloneRequestOrGetFromCache(e.request),n=await this.parse({request:e.request,resolutionContext:e.resolutionContext});if(!await this.predicate({request:e.request,parsedResult:n,resolutionContext:e.resolutionContext})||this.isUsed&&this.options?.once)return null;this.isUsed=!0;let r=this.wrapResolver(this.resolver),i=this.extendResolverArgs({request:e.request,parsedResult:n}),a=new AbortController,o,s=()=>(o??=(e.request.signal.aborted||e.request.signal.addEventListener(`abort`,()=>this.runScheduledCleanups(e.requestId),{once:!0,signal:a.signal}),t=>{this.scheduleCleanup(e.requestId,t),e.request.signal.aborted&&this.runScheduledCleanups(e.requestId)}),o),c=await r({...i,get finalize(){return s()},requestId:e.requestId,request:e.request}).catch(e=>{if(e instanceof Response)return e;throw e}).finally(()=>{a.abort()});return c&&ht(c),this.createExecutionResult({request:t,requestId:e.requestId,response:c,parsedResult:n})}wrapResolver(e){return async t=>{if(!this.resolverIterator){let n;try{n=await e(t)}catch(e){throw await this.runScheduledCleanups(t.requestId),e}if(!We(n))return this.complete({request:t.request,requestId:t.requestId,response:n});let r=this.scheduledCleanups.get(t.requestId);r!=null&&r.length>0&&(this.resolverIteratorCleanups=r,this.scheduledCleanups.delete(t.requestId)),this.resolverIterator=Symbol.iterator in n?n[Symbol.iterator]():n[Symbol.asyncIterator]()}this.isUsed=!1;let{done:n,value:r}=await this.resolverIterator.next(),i=await r;return i&&(this.resolverIteratorResult=i.clone()),n?(this.isUsed=!0,this.complete({request:t.request,requestId:t.requestId,response:this.resolverIteratorResult?.clone()})):i}}createExecutionResult(e){return{handler:this,request:e.request,requestId:e.requestId,response:e.response,parsedResult:e.parsedResult}}scheduleCleanup(e,t){if(this.resolverIterator){(this.resolverIteratorCleanups||=[]).unshift(t);return}let n=this.scheduledCleanups.get(e)||[];n.unshift(t),this.scheduledCleanups.set(e,n)}async exhaustCleanups(e){let t=[];for(let n of e)try{await n()}catch(e){e instanceof Error&&t.push(e)}t.length>0&&v.error(`Failed to execute cleanup for request handler "%s"`,this.info.header,AggregateError(t,`Failed to execute cleanup for request handler "${this.info.header}"`))}takeScheduledCleanups(e){if(this.resolverIterator&&this.resolverIteratorCleanups!=null&&this.resolverIteratorCleanups.length>0){let e=this.resolverIteratorCleanups;return this.resolverIteratorCleanups=void 0,e}let t=this.scheduledCleanups.get(e);if(!(!t||t.length===0))return this.scheduledCleanups.delete(e),t}async runScheduledCleanups(e){let t=this.takeScheduledCleanups(e);t&&await this.exhaustCleanups(t)}async complete(e){let t=this.takeScheduledCleanups(e.requestId);if(!t)return e.response;let n=e.response?pt(e.response):null;if(!n)return await this.exhaustCleanups(t),e.response;let r=new AbortController,i=()=>{r.signal.aborted||(r.abort(),this.exhaustCleanups(t))};return n.settled.then(i),e.request.signal.aborted?i():e.request.signal.addEventListener(`abort`,i,{once:!0,signal:r.signal}),n.response}};function ht(e){if(typeof document>`u`)return;let t=st(e);if(!t)return;let n=Be.prototype.getSetCookie.call(new Headers([[`set-cookie`,t]]));for(let e of n)document.cookie=e}var gt=async({request:e,requestId:t,handlers:n,resolutionContext:r})=>{let i=null,a=null;for(let o of n)if(a=await o.run({request:e,requestId:t,resolutionContext:r}),a!==null&&(i=o),a?.response)break;return i?{handler:i,parsedResult:a?.parsedResult,response:a?.response}:null};function _t(e){try{return JSON.parse(e)}catch{return}}var vt=new class{#e=`__msw-cookie-store__`;#t;#n;constructor(){b()||l(typeof localStorage<`u`,"Failed to create a CookieStore: `localStorage` is not available in this environment. This is likely an issue with your environment, which has been detected as browser (or browser-like) environment and must implement global browser APIs correctly."),this.#n=new o,this.#n.idx=this.getCookieStoreIndex(),this.#t=new i(this.#n)}getCookies(e){return this.#t.getCookiesSync(e)}async setCookie(e,t){await this.#t.setCookie(e,t),this.persist()}getCookieStoreIndex(){if(typeof localStorage>`u`||typeof localStorage.getItem!=`function`)return{};let e=localStorage.getItem(this.#e);if(e==null)return{};let t=_t(e);if(t==null)return{};let n={};for(let e of t){let t=c.fromJSON(e);t!=null&&t.domain!=null&&t.path!=null&&(n[t.domain]||={},n[t.domain][t.path]||={},n[t.domain][t.path][t.key]=t)}return n}persist(){if(typeof localStorage>`u`||typeof localStorage.setItem!=`function`)return;let e=[],{idx:t}=this.#n;for(let n in t)for(let r in t[n])for(let i in t[n][r])e.push(t[n][r][i].toJSON());localStorage.setItem(this.#e,JSON.stringify(e))}};async function yt(e,t){let n=st(t);n&&await vt.setCookie(n,e.url)}function bt(e){return!!e.headers.get(`accept`)?.includes(`msw/passthrough`)}function xt(e){return e.status===302&&e.headers.get(`x-msw-intention`)===`passthrough`}function St(e){let t=e.headers.get(`accept`);if(t){let n=t.replace(/(,\s+)?msw\/passthrough/,``);n?e.headers.set(`accept`,n):e.headers.delete(`accept`)}}function Ct(e){for(var t=[],n=0;n<e.length;){var r=e[n];if(r===`*`||r===`+`||r===`?`){t.push({type:`MODIFIER`,index:n,value:e[n++]});continue}if(r===`\\`){t.push({type:`ESCAPED_CHAR`,index:n++,value:e[n++]});continue}if(r===`{`){t.push({type:`OPEN`,index:n,value:e[n++]});continue}if(r===`}`){t.push({type:`CLOSE`,index:n,value:e[n++]});continue}if(r===`:`){for(var i=``,a=n+1;a<e.length;){var o=e.charCodeAt(a);if(o>=48&&o<=57||o>=65&&o<=90||o>=97&&o<=122||o===95){i+=e[a++];continue}break}if(!i)throw TypeError(`Missing parameter name at ${n}`);t.push({type:`NAME`,index:n,value:i}),n=a;continue}if(r===`(`){var s=1,c=``,a=n+1;if(e[a]===`?`)throw TypeError(`Pattern cannot start with "?" at ${a}`);for(;a<e.length;){if(e[a]===`\\`){c+=e[a++]+e[a++];continue}if(e[a]===`)`){if(s--,s===0){a++;break}}else if(e[a]===`(`&&(s++,e[a+1]!==`?`))throw TypeError(`Capturing groups are not allowed at ${a}`);c+=e[a++]}if(s)throw TypeError(`Unbalanced pattern at ${n}`);if(!c)throw TypeError(`Missing pattern at ${n}`);t.push({type:`PATTERN`,index:n,value:c}),n=a;continue}t.push({type:`CHAR`,index:n,value:e[n++]})}return t.push({type:`END`,index:n,value:``}),t}function wt(e,t){t===void 0&&(t={});for(var n=Ct(e),r=t.prefixes,i=r===void 0?`./`:r,a=t.delimiter,o=a===void 0?`/#?`:a,s=[],c=0,l=0,u=``,d=function(e){if(l<n.length&&n[l].type===e)return n[l++].value},f=function(e){var t=d(e);if(t!==void 0)return t;var r=n[l],i=r.type,a=r.index;throw TypeError(`Unexpected ${i} at ${a}, expected ${e}`)},p=function(){for(var e=``,t;t=d(`CHAR`)||d(`ESCAPED_CHAR`);)e+=t;return e},m=function(e){for(var t=0,n=o;t<n.length;t++){var r=n[t];if(e.indexOf(r)>-1)return!0}return!1},h=function(e){var t=s[s.length-1],n=e||(t&&typeof t==`string`?t:``);if(t&&!n)throw TypeError(`Must have text between two parameters, missing text after "${t.name}"`);return!n||m(n)?`[^${j(o)}]+?`:`(?:(?!${j(n)})[^${j(o)}])+?`};l<n.length;){var g=d(`CHAR`),_=d(`NAME`),v=d(`PATTERN`);if(_||v){var y=g||``;i.indexOf(y)===-1&&(u+=y,y=``),u&&=(s.push(u),``),s.push({name:_||c++,prefix:y,suffix:``,pattern:v||h(y),modifier:d(`MODIFIER`)||``});continue}var b=g||d(`ESCAPED_CHAR`);if(b){u+=b;continue}if(u&&=(s.push(u),``),d(`OPEN`)){var y=p(),x=d(`NAME`)||``,S=d(`PATTERN`)||``,C=p();f(`CLOSE`),s.push({name:x||(S?c++:``),pattern:x&&!S?h(y):S,prefix:y,suffix:C,modifier:d(`MODIFIER`)||``});continue}f(`END`)}return s}function Tt(e,t){var n=[];return Et(Mt(e,n,t),n,t)}function Et(e,t,n){n===void 0&&(n={});var r=n.decode,i=r===void 0?function(e){return e}:r;return function(n){var r=e.exec(n);if(!r)return!1;for(var a=r[0],o=r.index,s=Object.create(null),c=function(e){if(r[e]===void 0)return`continue`;var n=t[e-1];n.modifier===`*`||n.modifier===`+`?s[n.name]=r[e].split(n.prefix+n.suffix).map(function(e){return i(e,n)}):s[n.name]=i(r[e],n)},l=1;l<r.length;l++)c(l);return{path:a,index:o,params:s}}}function j(e){return e.replace(/([.+*?=^!:${}()[\]|/\\])/g,`\\$1`)}function Dt(e){return e&&e.sensitive?``:`i`}function Ot(e,t){if(!t)return e;for(var n=/\((?:\?<(.*?)>)?(?!\?)/g,r=0,i=n.exec(e.source);i;)t.push({name:i[1]||r++,prefix:``,suffix:``,modifier:``,pattern:``}),i=n.exec(e.source);return e}function kt(e,t,n){var r=e.map(function(e){return Mt(e,t,n).source});return RegExp(`(?:${r.join(`|`)})`,Dt(n))}function At(e,t,n){return jt(wt(e,n),t,n)}function jt(e,t,n){n===void 0&&(n={});for(var r=n.strict,i=r===void 0?!1:r,a=n.start,o=a===void 0?!0:a,s=n.end,c=s===void 0?!0:s,l=n.encode,u=l===void 0?function(e){return e}:l,d=n.delimiter,f=d===void 0?`/#?`:d,p=n.endsWith,m=`[${j(p===void 0?``:p)}]|\$`,h=`[${j(f)}]`,g=o?`^`:``,_=0,v=e;_<v.length;_++){var y=v[_];if(typeof y==`string`)g+=j(u(y));else{var b=j(u(y.prefix)),x=j(u(y.suffix));if(y.pattern)if(t&&t.push(y),b||x)if(y.modifier===`+`||y.modifier===`*`){var S=y.modifier===`*`?`?`:``;g+=`(?:${b}((?:${y.pattern})(?:${x}${b}(?:${y.pattern}))*)${x})${S}`}else g+=`(?:${b}(${y.pattern})${x})${y.modifier}`;else{if(y.modifier===`+`||y.modifier===`*`)throw TypeError(`Can not repeat "${y.name}" without a prefix and suffix`);g+=`(${y.pattern})${y.modifier}`}else g+=`(?:${b}${x})${y.modifier}`}}if(c)i||(g+=`${h}?`),g+=n.endsWith?`(?=${m})`:`$`;else{var C=e[e.length-1],ee=typeof C==`string`?h.indexOf(C[C.length-1])>-1:C===void 0;i||(g+=`(?:${h}(?=${m}))?`),ee||(g+=`(?=${h}|${m})`)}return new RegExp(g,Dt(n))}function Mt(e,t,n){return e instanceof RegExp?Ot(e,t):Array.isArray(e)?kt(e,t,n):At(e,t,n)}var Nt=/[?|#].*$/g;function Pt(e){return e.endsWith(`?`)?e:e.replace(Nt,``)}function Ft(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function It(e,t){if(Ft(e)||e.startsWith(`*`))return e;let n=t||typeof location<`u`&&location.href;return n?decodeURI(new URL(encodeURI(e),n).href):e}function Lt(e,t){return e instanceof RegExp?e:Pt(It(e,t))}function Rt(e){return e.replace(/([:a-zA-Z_-]*)(\*{1,2})+/g,(e,t,n)=>{let r=`(.*)`;return t?t.startsWith(`:`)?`${t}${n}`:`${t}${r}`:r}).replace(/([^/])(:)(?=(?:\d+|\(\.\*\))(?=\/|$))/,`$1\\$2`).replace(/^([^/]+)(:)(?=\/\/)/,`$1\\$2`)}function zt(e,t,n){let r=Lt(t,n),i=typeof r==`string`?Rt(r):r,a=Oe(e),o=Tt(i,{decode:decodeURIComponent})(a),s=o&&o.params||{};return{matches:o!==!1,params:s}}function Bt(e){let t=new Date,n=`${t.getHours().toString().padStart(2,`0`)}:${t.getMinutes().toString().padStart(2,`0`)}:${t.getSeconds().toString().padStart(2,`0`)}`;return e?.milliseconds?`${n}.${t.getMilliseconds().toString().padStart(3,`0`)}`:n}function Vt(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}var Ht=Symbol(`kConnect`),Ut=Symbol(`kAutoConnect`),Wt=Symbol(`kSiblingHandlers`);function Gt(e){return Reflect.get(e,Wt)||[]}function Kt(e){let t={},n=(e,n)=>{let r=t[e]||=[];r.includes(n)||r.push(n)};for(let t of e){n(t.kind,t);for(let e of Gt(t))n(e.kind,e)}return t}var qt=class{getInitialState(e){l(this.#e(e),v.formatMessage(`Failed to apply given request handlers: invalid input. Did you forget to spread the request handlers Array?`));let t=Kt(e);return{initialHandlers:t,handlers:{...t}}}currentHandlers(){return Object.values(this.getState().handlers).flat().filter(e=>e!=null)}getHandlersByKind(e){return this.getState().handlers[e]||[]}use(e){if(l(this.#e(e),v.formatMessage(`[MSW] Failed to call "use()" with the given request handlers: invalid input. Did you forget to spread the array of request handlers?`)),e.length===0)return;let{handlers:t}=this.getState(),n=Kt(e);for(let e in n){let r=n[e],i=t[e];t[e]=i?[...r,...i]:r}this.setState({handlers:t})}reset(e){l(e.length>0?this.#e(e):!0,v.formatMessage(`Failed to replace initial handlers during reset: invalid handlers. Did you forget to spread the handlers array?`));for(let e of this.currentHandlers())`reset`in e&&e.reset();let{initialHandlers:t}=this.getState();if(e.length===0){this.setState({handlers:{...t}});return}let n=Kt(e);this.setState({initialHandlers:n,handlers:{...n}})}restore(){for(let e of this.currentHandlers())`restore`in e&&e.restore()}#e(e){return e.every(e=>!Array.isArray(e))}},Jt=class extends qt{#e;#t;constructor(e){super();let t=this.getInitialState(e);this.#t=t.initialHandlers,this.#e=t.handlers}getState(){return{initialHandlers:this.#t,handlers:this.#e}}setState(e){e.initialHandlers&&(this.#t=e.initialHandlers),e.handlers&&(this.#e=e.handlers)}},M=class extends t{requestId;request;constructor(e,t){super(e,{}),this.requestId=t.requestId,this.request=t.request}},Yt=class extends t{requestId;request;response;constructor(e,t){super(e,{}),this.requestId=t.requestId,this.request=t.request,this.response=t.response}},Xt=class extends t{error;requestId;request;constructor(e,t){super(e,{}),this.error=t.error,this.requestId=t.requestId,this.request=t.request}},Zt=class extends u{constructor(e){let t=e.id||_e();super(`http`,{id:t,request:e.request})}getHandlers(e){return e.getHandlersByKind(`request`)}async getUnhandledMessage(){let{request:e}=this.data,t=new URL(e.url),n=ke(t)+t.search,r=e.body==null?null:await e.clone().text();return`intercepted a request without a matching request handler:${`
7
-
8
- \u2022 ${e.method} ${n}
9
-
10
- ${r?` \u2022 Request body: ${r}
11
-
12
- `:``}`}If you still wish to intercept this unhandled request, please create a request handler for it.
13
- Read more: https://mswjs.io/docs/http/intercepting-requests`}async resolve(e,t,n){let{id:r,request:i}=this.data,o=n?.quiet?null:i.clone();if(this.events.emit(new M(`request:start`,{requestId:r,request:i})),bt(i))return this.events.emit(new M(`request:end`,{requestId:r,request:i})),this.passthrough(),null;let[s,c]=await a(()=>gt({requestId:r,request:i,handlers:e,resolutionContext:{baseUrl:n?.baseUrl?.toString(),quiet:n?.quiet}}));if(s!=null)return this.events.emit(new Xt(`unhandledException`,{error:s,requestId:r,request:i}))||(console.error(s),v.error(`Encountered an unhandled exception during the handler lookup for "%s %s". Please see the original error above.`,i.method,i.url)),this.errorWith(s),null;if(c==null)return this.events.emit(new M(`request:unhandled`,{requestId:r,request:i})),await Qt(this,t).then(()=>this.passthrough(),e=>this.errorWith(e)),this.events.emit(new M(`request:end`,{requestId:r,request:i})),!1;let{response:l,handler:u,parsedResult:d}=c;if(this.events.emit(new M(`request:match`,{requestId:r,request:i})),l==null||xt(l))return this.events.emit(new M(`request:end`,{requestId:r,request:i})),this.passthrough(),null;let f=n?.quiet?null:l.clone();return await yt(i,l),this.respondWith(l),this.events.emit(new M(`request:end`,{requestId:r,request:i})),n?.quiet||u.log({request:o,response:f,parsedResult:d}),!0}};async function Qt(e,t){let n=async t=>{if(t===`bypass`)return;let n=await e.getUnhandledMessage();switch(t){case`warn`:return v.warn(`Warning: %s`,n);case`error`:return v.error(`Error: %s`,n)}},r=async e=>{if(l.as(y,e===`bypass`||e===`warn`||e===`error`,v.formatMessage(`Failed to react to an unhandled network frame: unknown strategy "%s". Please provide one of the supported strategies ("bypass", "warn", "error") or a custom callback function as the value of the "onUnhandledRequest" option.`,e)),e!==`bypass`&&(await n(e),e===`error`))return Promise.reject(new y(v.formatMessage(`Cannot bypass a request when using the "error" strategy for the "onUnhandledRequest" option.`)))};if(typeof t==`function`)return t({frame:e,defaults:{warn:n.bind(null,`warn`),error:n.bind(null,`error`)}});if(!(e instanceof Zt&&p(e.data.request)))return r(t)}function $t(e){let t=[...e];return Object.freeze(t),t}var en=class{subscriptions=[];dispose(){let e,t=[];for(;e=this.subscriptions.shift();)try{e()}catch(e){e instanceof Error&&t.push(e)}t.length>0&&console.error(AggregateError(t,v.formatMessage(`Failed to dispose of some side effects. This is likely an issue with MSW, please report it on GitHub: https://github.com/mswjs/msw/issues`)))}};function tn(e){let t=[];for(let n of e)n instanceof Promise&&t.push(n);if(t.length>0)return Promise.all(t).then(()=>{})}var nn=(e=>(e[e.DISABLED=0]=`DISABLED`,e[e.ENABLED=1]=`ENABLED`,e))(nn||{});function rn(e){let t=0,n=new s,r=new en,i=e=>e instanceof qt?e:new Jt(e||[]),a={...e},o=i(a.handlers);return{get readyState(){return t},events:n,configure(e){l(t===0,`Failed to call "configure()" on the network: cannot configure an already enabled network.`),e.handlers&&!Object.is(e.handlers,a.handlers)&&(o=i(e.handlers)),a={...a,...e}},enable(){l(t===0,`Failed to call "enable" on the network: already enabled`),t=1;let e={active:!0};return r.subscriptions.push(()=>{e.active=!1}),tn(a.sources.map(t=>(f.prototype.disable.call(t),t.on(`frame`,async({frame:t})=>{t.events.on(`*`,t=>{e.active&&n.emit(t)});let r=t.getHandlers(o);await t.resolve(r,a.onUnhandledFrame||`warn`,a.context)}),t.enable())))},disable(){return l(t===1,`Failed to call "disable" on the network: already disabled`),t=0,r.dispose(),tn(a.sources.map(e=>e.disable()))},use(...e){o.use(e)},resetHandlers(...e){o.reset(e)},restoreHandlers(){o.restore()},listHandlers(){return $t(o.currentHandlers())}}}async function an(e,t,...n){let r=e.listeners(t);if(r.length!==0)for(let t of r)await t.apply(e,n)}var on=new class{#e=new Map;applyPatch(e,t,n){let r=this.#e.get(e);l(!r?.has(t),`Failed to replace a global value at "${String(t)}": already replaced.`);let i=sn(e,t);if(i===void 0)return console.warn(`Failed to replace a global value at "${String(t)}": not a global value.`),()=>{};if(i.descriptor.configurable)Object.defineProperty(e,t,{value:n(e[t]),enumerable:!0,configurable:!0});else if(i.descriptor.writable)e[t]=n(e[t]);else throw Error(`Failed to patch a non-configurable non-writable property "${t.toString()}"`);let a=()=>{let n=this.#e.get(e);n?.has(t)&&(i.owner===e?Object.defineProperty(i.owner,t,i.descriptor):Reflect.deleteProperty(e,t),n.delete(t),n.size===0&&this.#e.delete(e))};return r?r.set(t,a):this.#e.set(e,new Map([[t,a]])),a}restoreAllPatches(){let e=[];for(let[,t]of this.#e)for(let[,n]of t)try{n()}catch(t){if(t instanceof Error)e.push(t);else throw t}if(e.length>0)throw AggregateError(e,`FOO!`)}};function sn(e,t){let n=e,r;for(;n;){if(r=Object.getOwnPropertyDescriptor(n,t),r)return{owner:n,descriptor:r};n=Object.getPrototypeOf(n)}}function cn(e){let t=sn(globalThis,e);if(t===void 0)return!1;let{descriptor:n}=t;return typeof n.get==`function`&&n.get()===void 0||n.get===void 0&&n.value==null?!1:n.set===void 0&&!n.configurable?(console.error(`[MSW] Failed to apply interceptor: the global \`${e}\` property is non-configurable. This is likely an issue with your environment. If you are using a framework, please open an issue about this in their repository.`),!1):!0}function N(e,t){return Object.defineProperties(t,{target:{value:e,enumerable:!0,writable:!0},currentTarget:{value:e,enumerable:!0,writable:!0}}),t}var P=Symbol(`kCancelable`),F=Symbol(`kDefaultPrevented`),ln=class extends MessageEvent{constructor(e,t){super(e,t),this[P]=!!t.cancelable,this[F]=!1}get cancelable(){return this[P]}set cancelable(e){this[P]=e}get defaultPrevented(){return this[F]}set defaultPrevented(e){this[F]=e}preventDefault(){this.cancelable&&!this[F]&&(this[F]=!0)}},un=class extends Event{constructor(e,t={}){super(e,t),this.code=t.code===void 0?0:t.code,this.reason=t.reason===void 0?``:t.reason,this.wasClean=t.wasClean===void 0?!1:t.wasClean}},dn=class extends un{constructor(e,t={}){super(e,t),this[P]=!!t.cancelable,this[F]=!1}get cancelable(){return this[P]}set cancelable(e){this[P]=e}get defaultPrevented(){return this[F]}set defaultPrevented(e){this[F]=e}preventDefault(){this.cancelable&&!this[F]&&(this[F]=!0)}},fn=Symbol(`kEmitter`),pn=Symbol(`kBoundListener`),mn=class{constructor(e,t){this.socket=e,this.transport=t,this.id=_e(),this.url=new URL(e.url),this[fn]=new EventTarget,this.transport.addEventListener(`outgoing`,e=>{let t=N(this.socket,new ln(`message`,{data:e.data,origin:e.origin,cancelable:!0}));this[fn].dispatchEvent(t),t.defaultPrevented&&e.preventDefault()}),this.transport.addEventListener(`close`,e=>{this[fn].dispatchEvent(N(this.socket,new un(`close`,e)))})}addEventListener(e,t,n){if(!Reflect.has(t,pn)){let e=t.bind(this.socket);Object.defineProperty(t,pn,{value:e,enumerable:!1,configurable:!1})}this[fn].addEventListener(e,Reflect.get(t,pn),n)}removeEventListener(e,t,n){this[fn].removeEventListener(e,Reflect.get(t,pn),n)}send(e){this.transport.send(e)}close(e,t){this.transport.close(e,t)}},hn=`InvalidAccessError: close code out of user configurable range`,gn=Symbol(`kPassthroughPromise`),_n=Symbol(`kOnSend`),vn=Symbol(`kClose`),yn=class extends EventTarget{static{this.CONNECTING=0}static{this.OPEN=1}static{this.CLOSING=2}static{this.CLOSED=3}constructor(e,t){super(),this.CONNECTING=0,this.OPEN=1,this.CLOSING=2,this.CLOSED=3,this._onopen=null,this._onmessage=null,this._onerror=null,this._onclose=null,this.url=Ee(e),this.protocol=``,this.extensions=``,this.binaryType=`blob`,this.readyState=this.CONNECTING,this.bufferedAmount=0,this[gn]=new ye,queueMicrotask(async()=>{await this[gn]||(this.protocol=typeof t==`string`?t:Array.isArray(t)&&t.length>0?t[0]:``,this.readyState===this.CONNECTING&&(this.readyState=this.OPEN,this.dispatchEvent(N(this,new Event(`open`)))))})}set onopen(e){this.removeEventListener(`open`,this._onopen),this._onopen=e,e!==null&&this.addEventListener(`open`,e)}get onopen(){return this._onopen}set onmessage(e){this.removeEventListener(`message`,this._onmessage),this._onmessage=e,e!==null&&this.addEventListener(`message`,e)}get onmessage(){return this._onmessage}set onerror(e){this.removeEventListener(`error`,this._onerror),this._onerror=e,e!==null&&this.addEventListener(`error`,e)}get onerror(){return this._onerror}set onclose(e){this.removeEventListener(`close`,this._onclose),this._onclose=e,e!==null&&this.addEventListener(`close`,e)}get onclose(){return this._onclose}send(e){if(this.readyState===this.CONNECTING)throw this.close(),new DOMException(`InvalidStateError`);this.readyState===this.CLOSING||this.readyState===this.CLOSED||(this.bufferedAmount+=bn(e),queueMicrotask(()=>{this.bufferedAmount=0,this[_n]?.(e)}))}close(e=1e3,t){l(e,hn),l(e===1e3||e>=3e3&&e<=4999,hn),this[vn](e,t)}[vn](e=1e3,t,n=!0){this.readyState===this.CLOSING||this.readyState===this.CLOSED||(this.readyState=this.CLOSING,queueMicrotask(()=>{this.readyState=this.CLOSED,this.dispatchEvent(N(this,new un(`close`,{code:e,reason:t,wasClean:n}))),this._onopen=null,this._onmessage=null,this._onerror=null,this._onclose=null}))}addEventListener(e,t,n){return super.addEventListener(e,t,n)}removeEventListener(e,t,n){return super.removeEventListener(e,t,n)}};function bn(e){return typeof e==`string`?e.length:e instanceof Blob?e.size:e.byteLength}var I=Symbol(`kEmitter`),xn=Symbol(`kBoundListener`),Sn=Symbol(`kSend`),Cn=class{constructor(e,t,n){this.client=e,this.transport=t,this.createConnection=n,this[I]=new EventTarget,this.mockCloseController=new AbortController,this.realCloseController=new AbortController,this.transport.addEventListener(`outgoing`,e=>{this.realWebSocket!==void 0&&queueMicrotask(()=>{e.defaultPrevented||this[Sn](e.data)})}),this.transport.addEventListener(`incoming`,this.handleIncomingMessage.bind(this))}get socket(){return l(this.realWebSocket,'Cannot access "socket" on the original WebSocket server object: the connection is not open. Did you forget to call `server.connect()`?'),this.realWebSocket}connect(){l(!this.realWebSocket||this.realWebSocket.readyState!==WebSocket.OPEN,`Failed to call "connect()" on the original WebSocket instance: the connection already open`);let e=this.createConnection();e.binaryType=this.client.binaryType,e.addEventListener(`open`,e=>{this[I].dispatchEvent(N(this.realWebSocket,new Event(`open`,e)))},{once:!0}),e.addEventListener(`message`,e=>{this.transport.dispatchEvent(N(this.realWebSocket,new MessageEvent(`incoming`,{data:e.data,origin:e.origin})))}),this.client.addEventListener(`close`,e=>{this.handleMockClose(e)},{signal:this.mockCloseController.signal}),e.addEventListener(`close`,e=>{this.handleRealClose(e)},{signal:this.realCloseController.signal}),e.addEventListener(`error`,()=>{let t=N(e,new Event(`error`,{cancelable:!0}));this[I].dispatchEvent(t),t.defaultPrevented||this.client.dispatchEvent(N(this.client,new Event(`error`)))}),this.realWebSocket=e}addEventListener(e,t,n){if(!Reflect.has(t,xn)){let e=t.bind(this.client);Object.defineProperty(t,xn,{value:e,enumerable:!1})}this[I].addEventListener(e,Reflect.get(t,xn),n)}removeEventListener(e,t,n){this[I].removeEventListener(e,Reflect.get(t,xn),n)}send(e){this[Sn](e)}[Sn](e){let{realWebSocket:t}=this;if(l(t,`Failed to call "server.send()" for "%s": the connection is not open. Did you forget to call "server.connect()"?`,this.client.url),!(t.readyState===WebSocket.CLOSING||t.readyState===WebSocket.CLOSED)){if(t.readyState===WebSocket.CONNECTING){t.addEventListener(`open`,()=>{t.send(e)},{once:!0});return}t.send(e)}}close(){let{realWebSocket:e}=this;l(e,`Failed to close server connection for "%s": the connection is not open. Did you forget to call "server.connect()"?`,this.client.url),this.realCloseController.abort(),!(e.readyState===WebSocket.CLOSING||e.readyState===WebSocket.CLOSED)&&(e.close(),queueMicrotask(()=>{this[I].dispatchEvent(N(this.realWebSocket,new dn(`close`,{code:1e3,cancelable:!0})))}))}handleIncomingMessage(e){let t=N(e.target,new ln(`message`,{data:e.data,origin:e.origin,cancelable:!0}));this[I].dispatchEvent(t),t.defaultPrevented||this.client.dispatchEvent(N(this.client,new MessageEvent(`message`,{data:e.data,origin:e.origin})))}handleMockClose(e){this.realWebSocket&&this.realWebSocket.close()}handleRealClose(e){this.mockCloseController.abort();let t=N(this.realWebSocket,new dn(`close`,{code:e.code,reason:e.reason,wasClean:e.wasClean,cancelable:!0}));this[I].dispatchEvent(t),t.defaultPrevented||this.client[vn](e.code,e.reason)}},wn=class extends EventTarget{constructor(e){super(),this.socket=e,this.socket.addEventListener(`close`,e=>{this.dispatchEvent(N(this.socket,new un(`close`,e)))}),this.socket[_n]=e=>{this.dispatchEvent(N(this.socket,new ln(`outgoing`,{data:e,origin:this.socket.url,cancelable:!0})))}}addEventListener(e,t,n){return super.addEventListener(e,t,n)}dispatchEvent(e){return super.dispatchEvent(e)}send(e){queueMicrotask(()=>{if(this.socket.readyState===this.socket.CLOSING||this.socket.readyState===this.socket.CLOSED)return;let t=()=>{this.socket.dispatchEvent(N(this.socket,new MessageEvent(`message`,{data:e,origin:this.socket.url})))};this.socket.readyState===this.socket.CONNECTING?this.socket.addEventListener(`open`,()=>{t()},{once:!0}):t()})}close(e,t){this.socket[vn](e,t)}};(class e extends ge{static{this.symbol=Symbol.for(`websocket-interceptor`)}constructor(){super(e.symbol)}checkEnvironment(){return cn(`WebSocket`)}setup(){let e=this.logger.extend(`setup`),t=new Proxy(globalThis.WebSocket,{construct:(e,t,n)=>{let[r,i]=t,a=()=>Reflect.construct(e,t,n),o=new yn(r,i),s=new wn(o);return queueMicrotask(async()=>{try{let e=new Cn(o,s,a),t=this.emitter.listenerCount(`connection`)>0;await an(this.emitter,`connection`,{client:new mn(o,s),server:e,info:{protocols:i}}),t?o[gn].resolve(!1):(o[gn].resolve(!0),e.connect(),e.addEventListener(`open`,()=>{o.dispatchEvent(N(o,new Event(`open`))),e.realWebSocket&&(o.protocol=e.realWebSocket.protocol)}))}catch(e){e instanceof Error&&(o.dispatchEvent(new Event(`error`)),o.readyState!==WebSocket.CLOSING&&o.readyState!==WebSocket.CLOSED&&o[vn](1011,e.message,!1),console.error(e))}}),o}});e.info(`patching global WebSocket...`),this.subscriptions.push(on.applyPatch(globalThis,`WebSocket`,()=>t)),e.info(`global WebSocket patched!`,globalThis.WebSocket.name)}});var Tn=class extends t{url;protocols;constructor(e,t){super(e,{}),this.url=t.url,this.protocols=t.protocols}},En=class extends t{url;protocols;error;constructor(e,t){super(e,{}),this.url=t.url,this.protocols=t.protocols,this.error=t.error}},Dn=class extends u{constructor(e){super(`ws`,{connection:e.connection})}getHandlers(e){return e.getHandlersByKind(`websocket`)}async resolve(e,t,n){let{connection:r}=this.data;if(this.events.emit(new Tn(`connection`,{url:r.client.url,protocols:r.info.protocols})),e.length===0)return await Qt(this,t).then(()=>this.passthrough(),e=>this.errorWith(e)),!1;let i=!1;for(let t of e){let e=await t.run(r,{baseUrl:n?.baseUrl?.toString(),[Ut]:!1});if(!e)continue;i=!0;let a=n?.quiet?void 0:t.log(r);try{t[Ht](e)||a?.()}catch(e){throw this.events.emit(new En(`unhandledException`,{error:e,url:r.client.url,protocols:r.info.protocols}))||(console.error(e),v.error(`Encountered an unhandled exception during the handler lookup for "%s". Please see the original error above.`,r.client.url)),e}}return i?!0:(await Qt(this,t).then(()=>this.passthrough(),e=>this.errorWith(e)),!1)}async getUnhandledMessage(){let{connection:e}=this.data;return`intercepted a WebSocket connection without a matching event handler:${`
14
-
15
- \u2022 ${e.client.url}
16
-
17
- `}If you still wish to intercept this unhandled connection, please create an event handler for it.
18
- Read more: https://mswjs.io/docs/websocket`}},On=class extends f{#e;#t;constructor(e){super(),this.#e=new De({name:`interceptor-source`,interceptors:e.interceptors}),this.#t=new Map}enable(){this.#e.apply(),this.#e.on(`request`,this.#n.bind(this)).on(`response`,this.#r.bind(this)).on(`connection`,this.#i.bind(this))}disable(){super.disable(),this.#e.dispose(),this.#t.clear()}async#n({requestId:e,request:t,controller:n}){let r=new kn({id:e,request:t,controller:n});this.#t.set(e,r),await this.queue(r)}async#r({requestId:e,request:t,response:n,isMockedResponse:r}){let i=this.#t.get(e);this.#t.delete(e),i!=null&&queueMicrotask(()=>{try{i.events.emit(new Yt(r?`response:mocked`:`response:bypass`,{requestId:e,request:t,response:n}))}finally{i.events.removeAllListeners()}})}async#i(e){await this.queue(new An({connection:e}))}},kn=class extends Zt{#e;constructor(e){super({id:e.id,request:e.request}),this.#e=e.controller}passthrough(){St(this.data.request)}respondWith(e){e&&this.#e.respondWith(e)}errorWith(e){if(e instanceof Response)return this.respondWith(e);throw e instanceof y&&this.#e.errorWith(e),e}},An=class extends Dn{constructor(e){super({connection:e.connection}),e.connection.client.addEventListener(`close`,()=>{this.events.removeAllListeners()},{once:!0})}errorWith(e){if(e instanceof Error){let{client:t}=this.data.connection,n=new Event(`error`);Object.defineProperty(n,"cause",{enumerable:!0,configurable:!1,value:e}),t.socket.dispatchEvent(n)}}passthrough(){this.data.connection.server.connect()}};function jn(e){return({frame:t,defaults:n})=>{let r=e();if(r!=null){if(typeof r==`function`){let e=t instanceof Zt?t.data.request:t instanceof Dn?new Request(t.data.connection.client.url,{headers:{connection:`upgrade`,upgrade:`websocket`}}):null;return l(e!=null,'Failed to coerce a network frame to a legacy `onUnhandledRequest` strategy: unknown frame protocol "%s"',t.protocol),r(e,{warning:n.warn,error:n.error})}return Qt(t,r)}}}function Mn(e){return{status:e.status,statusText:e.statusText,headers:Object.fromEntries(e.headers.entries())}}var Nn=/(%?)(%([sdijo]))/g;function Pn(e,t){switch(t){case`s`:return e;case`d`:case`i`:return Number(e);case`j`:return JSON.stringify(e);case`o`:{if(typeof e==`string`)return e;let t=JSON.stringify(e);return t===`{}`||t===`[]`||/^\[object .+?\]$/.test(t)?e:t}}}function Fn(e,...t){if(t.length===0)return e;let n=0,r=e.replace(Nn,(e,r,i,a)=>{let o=t[n],s=Pn(o,a);return r?e:(n++,s)});return n<t.length&&(r+=` ${t.slice(n).join(` `)}`),r=r.replace(/%{2,2}/g,`%`),r}var In=2;function Ln(e){if(!e.stack)return;let t=e.stack.split(`
19
- `);t.splice(1,In),e.stack=t.join(`
20
- `)}var Rn=class extends Error{constructor(e,...t){super(e),this.message=e,this.name=`Invariant Violation`,this.message=Fn(e,...t),Ln(this)}},L=(e,t,...n)=>{if(!e)throw new Rn(t,...n)};L.as=(e,t,n,...r)=>{if(!t){let t=r.length===0?n:Fn(n,...r),i;try{i=Reflect.construct(e,[t])}catch{i=e(t)}throw i}};function zn(){if(typeof navigator<`u`&&navigator.product===`ReactNative`)return!0;if(typeof process<`u`){let e=process.type;return e===`renderer`||e===`worker`?!1:!!(process.versions&&process.versions.node)}return!1}var Bn=Object.defineProperty,Vn=(e,t)=>{for(var n in t)Bn(e,n,{get:t[n],enumerable:!0})},Hn={};Vn(Hn,{blue:()=>Wn,gray:()=>Gn,green:()=>qn,red:()=>Kn,yellow:()=>Un});function Un(e){return`\x1B[33m${e}\x1B[0m`}function Wn(e){return`\x1B[34m${e}\x1B[0m`}function Gn(e){return`\x1B[90m${e}\x1B[0m`}function Kn(e){return`\x1B[31m${e}\x1B[0m`}function qn(e){return`\x1B[32m${e}\x1B[0m`}var Jn=zn(),Yn=class{constructor(e){this.name=e,this.prefix=`[${this.name}]`;let t=er(`DEBUG`),n=er(`LOG_LEVEL`);t===`1`||t===`true`||t!==void 0&&this.name.startsWith(t)?(this.debug=z(n,`debug`)?R:this.debug,this.info=z(n,`info`)?R:this.info,this.success=z(n,`success`)?R:this.success,this.warning=z(n,`warning`)?R:this.warning,this.error=z(n,`error`)?R:this.error):(this.info=R,this.success=R,this.warning=R,this.error=R,this.only=R)}prefix;extend(e){return new Yn(`${this.name}:${e}`)}debug(e,...t){this.logEntry({level:`debug`,message:Gn(e),positionals:t,prefix:this.prefix,colors:{prefix:`gray`}})}info(e,...t){this.logEntry({level:`info`,message:e,positionals:t,prefix:this.prefix,colors:{prefix:`blue`}});let n=new Xn;return(e,...t)=>{n.measure(),this.logEntry({level:`info`,message:`${e} ${Gn(`${n.deltaTime}ms`)}`,positionals:t,prefix:this.prefix,colors:{prefix:`blue`}})}}success(e,...t){this.logEntry({level:`info`,message:e,positionals:t,prefix:`\u2714 ${this.prefix}`,colors:{timestamp:`green`,prefix:`green`}})}warning(e,...t){this.logEntry({level:`warning`,message:e,positionals:t,prefix:`\u26A0 ${this.prefix}`,colors:{timestamp:`yellow`,prefix:`yellow`}})}error(e,...t){this.logEntry({level:`error`,message:e,positionals:t,prefix:`\u2716 ${this.prefix}`,colors:{timestamp:`red`,prefix:`red`}})}only(e){e()}createEntry(e,t){return{timestamp:new Date,level:e,message:t}}logEntry(e){let{level:t,message:n,prefix:r,colors:i,positionals:a=[]}=e,o=this.createEntry(t,n),s=i?.timestamp||`gray`,c=i?.prefix||`gray`,l={timestamp:Hn[s],prefix:Hn[c]};this.getWriter(t)([l.timestamp(this.formatTimestamp(o.timestamp))].concat(r==null?[]:l.prefix(r),tr(n)).join(` `),...a.map(tr))}formatTimestamp(e){return`${e.toLocaleTimeString(`en-GB`)}:${e.getMilliseconds()}`}getWriter(e){switch(e){case`debug`:case`success`:case`info`:return Zn;case`warning`:return Qn;case`error`:return $n}}},Xn=class{startTime;endTime;deltaTime;constructor(){this.startTime=performance.now()}measure(){this.endTime=performance.now();let e=this.endTime-this.startTime;this.deltaTime=e.toFixed(2)}},R=()=>void 0;function Zn(e,...t){if(Jn){process.stdout.write(Fn(e,...t)+`
21
- `);return}console.log(e,...t)}function Qn(e,...t){if(Jn){process.stderr.write(Fn(e,...t)+`
22
- `);return}console.warn(e,...t)}function $n(e,...t){if(Jn){process.stderr.write(Fn(e,...t)+`
23
- `);return}console.error(e,...t)}function er(e){return Jn?{}[e]:globalThis[e]?.toString()}function z(e,t){return e!==void 0&&e!==t}function tr(e){return e===void 0?`undefined`:e===null?`null`:typeof e==`string`?e:typeof e==`object`?JSON.stringify(e):e.toString()}var nr=class extends Error{constructor(e,t,n){super(`Possible EventEmitter memory leak detected. ${n} ${t.toString()} listeners added. Use emitter.setMaxListeners() to increase limit`),this.emitter=e,this.type=t,this.count=n,this.name=`MaxListenersExceededWarning`}},rr=class{static listenerCount(e,t){return e.listenerCount(t)}constructor(){this.events=new Map,this.maxListeners=rr.defaultMaxListeners,this.hasWarnedAboutPotentialMemoryLeak=!1}_emitInternalEvent(e,t,n){this.emit(e,t,n)}_getListeners(e){return Array.prototype.concat.apply([],this.events.get(e))||[]}_removeListener(e,t){let n=e.indexOf(t);return n>-1&&e.splice(n,1),[]}_wrapOnceListener(e,t){let n=(...r)=>(this.removeListener(e,n),t.apply(this,r));return Object.defineProperty(n,"name",{value:t.name}),n}setMaxListeners(e){return this.maxListeners=e,this}getMaxListeners(){return this.maxListeners}eventNames(){return Array.from(this.events.keys())}emit(e,...t){let n=this._getListeners(e);return n.forEach(e=>{e.apply(this,t)}),n.length>0}addListener(e,t){this._emitInternalEvent(`newListener`,e,t);let n=this._getListeners(e).concat(t);if(this.events.set(e,n),this.maxListeners>0&&this.listenerCount(e)>this.maxListeners&&!this.hasWarnedAboutPotentialMemoryLeak){this.hasWarnedAboutPotentialMemoryLeak=!0;let t=new nr(this,e,this.listenerCount(e));console.warn(t)}return this}on(e,t){return this.addListener(e,t)}once(e,t){return this.addListener(e,this._wrapOnceListener(e,t))}prependListener(e,t){let n=this._getListeners(e);if(n.length>0){let r=[t].concat(n);this.events.set(e,r)}else this.events.set(e,n.concat(t));return this}prependOnceListener(e,t){return this.prependListener(e,this._wrapOnceListener(e,t))}removeListener(e,t){let n=this._getListeners(e);return n.length>0&&(this._removeListener(n,t),this.events.set(e,n),this._emitInternalEvent(`removeListener`,e,t)),this}off(e,t){return this.removeListener(e,t)}removeAllListeners(e){return e?this.events.delete(e):this.events.clear(),this}listeners(e){return Array.from(this._getListeners(e))}listenerCount(e){return this._getListeners(e).length}rawListeners(e){return this.listeners(e)}},ir=rr;ir.defaultMaxListeners=10;var ar=`x-interceptors-internal-request-id`;function or(e){return globalThis[e]||void 0}function sr(e,t){globalThis[e]=t}function cr(e){delete globalThis[e]}var B=(function(e){return e.INACTIVE=`INACTIVE`,e.APPLYING=`APPLYING`,e.APPLIED=`APPLIED`,e.DISPOSING=`DISPOSING`,e.DISPOSED=`DISPOSED`,e})({}),lr=class{constructor(e){this.symbol=e,this.readyState=B.INACTIVE,this.emitter=new ir,this.subscriptions=[],this.logger=new Yn(e.description),this.emitter.setMaxListeners(0),this.logger.info(`constructing the interceptor...`)}checkEnvironment(){return!0}apply(){let e=this.logger.extend(`apply`);if(e.info(`applying the interceptor...`),this.readyState===B.APPLIED){e.info(`intercepted already applied!`);return}if(!this.checkEnvironment()){e.info(`the interceptor cannot be applied in this environment!`);return}this.readyState=B.APPLYING;let t=this.getInstance();if(t){e.info(`found a running instance, reusing...`),this.on=(n,r)=>(e.info(`proxying the "%s" listener`,n),t.emitter.addListener(n,r),this.subscriptions.push(()=>{t.emitter.removeListener(n,r),e.info(`removed proxied "%s" listener!`,n)}),this),this.readyState=B.APPLIED;return}e.info(`no running instance found, setting up a new instance...`),this.setup(),this.setInstance(),this.readyState=B.APPLIED}setup(){}on(e,t){let n=this.logger.extend(`on`);return this.readyState===B.DISPOSING||this.readyState===B.DISPOSED?(n.info(`cannot listen to events, already disposed!`),this):(n.info(`adding "%s" event listener:`,e,t),this.emitter.on(e,t),this)}once(e,t){return this.emitter.once(e,t),this}off(e,t){return this.emitter.off(e,t),this}removeAllListeners(e){return this.emitter.removeAllListeners(e),this}dispose(){let e=this.logger.extend(`dispose`);if(this.readyState===B.DISPOSED){e.info(`cannot dispose, already disposed!`);return}if(e.info(`disposing the interceptor...`),this.readyState=B.DISPOSING,!this.getInstance()){e.info(`no interceptors running, skipping dispose...`);return}if(this.clearInstance(),e.info(`global symbol deleted:`,or(this.symbol)),this.subscriptions.length>0){e.info(`disposing of %d subscriptions...`,this.subscriptions.length);for(let e of this.subscriptions)e();this.subscriptions=[],e.info(`disposed of all subscriptions!`,this.subscriptions.length)}this.emitter.removeAllListeners(),e.info(`destroyed the listener!`),this.readyState=B.DISPOSED}getInstance(){let e=or(this.symbol);return this.logger.info(`retrieved global instance:`,e?.constructor?.name),e}setInstance(){sr(this.symbol,this),this.logger.info(`set global instance!`,this.symbol.description)}clearInstance(){cr(this.symbol),this.logger.info(`cleared global instance!`,this.symbol.description)}};function ur(){return Math.random().toString(16).slice(2)}function dr(e){if(typeof e==`string`)return dr(new URL(e,typeof location<`u`?location.href:void 0));if(e.protocol===`http:`?e.protocol=`ws:`:e.protocol===`https:`&&(e.protocol=`wss:`),e.protocol!==`ws:`&&e.protocol!==`wss:`)throw SyntaxError(`Failed to construct 'WebSocket': The URL's scheme must be either 'http', 'https', 'ws', or 'wss'. '${e.protocol}' is not allowed.`);if(e.hash!==``)throw SyntaxError(`Failed to construct 'WebSocket': The URL contains a fragment identifier ('${e.hash}'). Fragment identifiers are not allowed in WebSocket URLs.`);return e.href}async function V(e,t,...n){let r=e.listeners(t);if(r.length!==0)for(let t of r)await t.apply(e,n)}var fr=new class{#e=new Map;applyPatch(e,t,n){let r=this.#e.get(e);L(!r?.has(t),`Failed to replace a global value at "${String(t)}": already replaced.`);let i=pr(e,t);if(i===void 0)return console.warn(`Failed to replace a global value at "${String(t)}": not a global value.`),()=>{};if(i.descriptor.configurable)Object.defineProperty(e,t,{value:n(e[t]),enumerable:!0,configurable:!0});else if(i.descriptor.writable)e[t]=n(e[t]);else throw Error(`Failed to patch a non-configurable non-writable property "${t.toString()}"`);let a=()=>{let n=this.#e.get(e);n?.has(t)&&(i.owner===e?Object.defineProperty(i.owner,t,i.descriptor):Reflect.deleteProperty(e,t),n.delete(t),n.size===0&&this.#e.delete(e))};return r?r.set(t,a):this.#e.set(e,new Map([[t,a]])),a}restoreAllPatches(){let e=[];for(let[,t]of this.#e)for(let[,n]of t)try{n()}catch(t){if(t instanceof Error)e.push(t);else throw t}if(e.length>0)throw AggregateError(e,`FOO!`)}};function pr(e,t){let n=e,r;for(;n;){if(r=Object.getOwnPropertyDescriptor(n,t),r)return{owner:n,descriptor:r};n=Object.getPrototypeOf(n)}}function mr(e){let t=pr(globalThis,e);if(t===void 0)return!1;let{descriptor:n}=t;return typeof n.get==`function`&&n.get()===void 0||n.get===void 0&&n.value==null?!1:n.set===void 0&&!n.configurable?(console.error(`[MSW] Failed to apply interceptor: the global \`${e}\` property is non-configurable. This is likely an issue with your environment. If you are using a framework, please open an issue about this in their repository.`),!1):!0}function hr(){let e=(t,n)=>{e.state=`pending`,e.resolve=n=>e.state===`pending`?(e.result=n,t(n instanceof Promise?n:Promise.resolve(n).then(t=>(e.state=`fulfilled`,t)))):void 0,e.reject=t=>{if(e.state===`pending`)return queueMicrotask(()=>{e.state=`rejected`}),n(e.rejectionReason=t)}};return e}var gr=class extends Promise{#e;resolve;reject;constructor(e=null){let t=hr();super((n,r)=>{t(n,r),e?.(t.resolve,t.reject)}),this.#e=t,this.resolve=this.#e.resolve,this.reject=this.#e.reject}get state(){return this.#e.state}get rejectionReason(){return this.#e.rejectionReason}then(e,t){return this.#t(super.then(e,t))}catch(e){return this.#t(super.catch(e))}finally(e){return this.#t(super.finally(e))}#t(e){return Object.defineProperties(e,{resolve:{configurable:!0,value:this.resolve},reject:{configurable:!0,value:this.reject}})}};function H(e,t){return Object.defineProperties(t,{target:{value:e,enumerable:!0,writable:!0},currentTarget:{value:e,enumerable:!0,writable:!0}}),t}var U=Symbol(`kCancelable`),W=Symbol(`kDefaultPrevented`),_r=class extends MessageEvent{constructor(e,t){super(e,t),this[U]=!!t.cancelable,this[W]=!1}get cancelable(){return this[U]}set cancelable(e){this[U]=e}get defaultPrevented(){return this[W]}set defaultPrevented(e){this[W]=e}preventDefault(){this.cancelable&&!this[W]&&(this[W]=!0)}},vr=class extends Event{constructor(e,t={}){super(e,t),this.code=t.code===void 0?0:t.code,this.reason=t.reason===void 0?``:t.reason,this.wasClean=t.wasClean===void 0?!1:t.wasClean}},yr=class extends vr{constructor(e,t={}){super(e,t),this[U]=!!t.cancelable,this[W]=!1}get cancelable(){return this[U]}set cancelable(e){this[U]=e}get defaultPrevented(){return this[W]}set defaultPrevented(e){this[W]=e}preventDefault(){this.cancelable&&!this[W]&&(this[W]=!0)}},G=Symbol(`kEmitter`),br=Symbol(`kBoundListener`),xr=class{constructor(e,t){this.socket=e,this.transport=t,this.id=ur(),this.url=new URL(e.url),this[G]=new EventTarget,this.transport.addEventListener(`outgoing`,e=>{let t=H(this.socket,new _r(`message`,{data:e.data,origin:e.origin,cancelable:!0}));this[G].dispatchEvent(t),t.defaultPrevented&&e.preventDefault()}),this.transport.addEventListener(`close`,e=>{this[G].dispatchEvent(H(this.socket,new vr(`close`,e)))})}addEventListener(e,t,n){if(!Reflect.has(t,br)){let e=t.bind(this.socket);Object.defineProperty(t,br,{value:e,enumerable:!1,configurable:!1})}this[G].addEventListener(e,Reflect.get(t,br),n)}removeEventListener(e,t,n){this[G].removeEventListener(e,Reflect.get(t,br),n)}send(e){this.transport.send(e)}close(e,t){this.transport.close(e,t)}},Sr=`InvalidAccessError: close code out of user configurable range`,Cr=Symbol(`kPassthroughPromise`),wr=Symbol(`kOnSend`),Tr=Symbol(`kClose`),Er=class extends EventTarget{static{this.CONNECTING=0}static{this.OPEN=1}static{this.CLOSING=2}static{this.CLOSED=3}constructor(e,t){super(),this.CONNECTING=0,this.OPEN=1,this.CLOSING=2,this.CLOSED=3,this._onopen=null,this._onmessage=null,this._onerror=null,this._onclose=null,this.url=dr(e),this.protocol=``,this.extensions=``,this.binaryType=`blob`,this.readyState=this.CONNECTING,this.bufferedAmount=0,this[Cr]=new gr,queueMicrotask(async()=>{await this[Cr]||(this.protocol=typeof t==`string`?t:Array.isArray(t)&&t.length>0?t[0]:``,this.readyState===this.CONNECTING&&(this.readyState=this.OPEN,this.dispatchEvent(H(this,new Event(`open`)))))})}set onopen(e){this.removeEventListener(`open`,this._onopen),this._onopen=e,e!==null&&this.addEventListener(`open`,e)}get onopen(){return this._onopen}set onmessage(e){this.removeEventListener(`message`,this._onmessage),this._onmessage=e,e!==null&&this.addEventListener(`message`,e)}get onmessage(){return this._onmessage}set onerror(e){this.removeEventListener(`error`,this._onerror),this._onerror=e,e!==null&&this.addEventListener(`error`,e)}get onerror(){return this._onerror}set onclose(e){this.removeEventListener(`close`,this._onclose),this._onclose=e,e!==null&&this.addEventListener(`close`,e)}get onclose(){return this._onclose}send(e){if(this.readyState===this.CONNECTING)throw this.close(),new DOMException(`InvalidStateError`);this.readyState===this.CLOSING||this.readyState===this.CLOSED||(this.bufferedAmount+=Dr(e),queueMicrotask(()=>{this.bufferedAmount=0,this[wr]?.(e)}))}close(e=1e3,t){L(e,Sr),L(e===1e3||e>=3e3&&e<=4999,Sr),this[Tr](e,t)}[Tr](e=1e3,t,n=!0){this.readyState===this.CLOSING||this.readyState===this.CLOSED||(this.readyState=this.CLOSING,queueMicrotask(()=>{this.readyState=this.CLOSED,this.dispatchEvent(H(this,new vr(`close`,{code:e,reason:t,wasClean:n}))),this._onopen=null,this._onmessage=null,this._onerror=null,this._onclose=null}))}addEventListener(e,t,n){return super.addEventListener(e,t,n)}removeEventListener(e,t,n){return super.removeEventListener(e,t,n)}};function Dr(e){return typeof e==`string`?e.length:e instanceof Blob?e.size:e.byteLength}var K=Symbol(`kEmitter`),Or=Symbol(`kBoundListener`),kr=Symbol(`kSend`),Ar=class{constructor(e,t,n){this.client=e,this.transport=t,this.createConnection=n,this[K]=new EventTarget,this.mockCloseController=new AbortController,this.realCloseController=new AbortController,this.transport.addEventListener(`outgoing`,e=>{this.realWebSocket!==void 0&&queueMicrotask(()=>{e.defaultPrevented||this[kr](e.data)})}),this.transport.addEventListener(`incoming`,this.handleIncomingMessage.bind(this))}get socket(){return L(this.realWebSocket,'Cannot access "socket" on the original WebSocket server object: the connection is not open. Did you forget to call `server.connect()`?'),this.realWebSocket}connect(){L(!this.realWebSocket||this.realWebSocket.readyState!==WebSocket.OPEN,`Failed to call "connect()" on the original WebSocket instance: the connection already open`);let e=this.createConnection();e.binaryType=this.client.binaryType,e.addEventListener(`open`,e=>{this[K].dispatchEvent(H(this.realWebSocket,new Event(`open`,e)))},{once:!0}),e.addEventListener(`message`,e=>{this.transport.dispatchEvent(H(this.realWebSocket,new MessageEvent(`incoming`,{data:e.data,origin:e.origin})))}),this.client.addEventListener(`close`,e=>{this.handleMockClose(e)},{signal:this.mockCloseController.signal}),e.addEventListener(`close`,e=>{this.handleRealClose(e)},{signal:this.realCloseController.signal}),e.addEventListener(`error`,()=>{let t=H(e,new Event(`error`,{cancelable:!0}));this[K].dispatchEvent(t),t.defaultPrevented||this.client.dispatchEvent(H(this.client,new Event(`error`)))}),this.realWebSocket=e}addEventListener(e,t,n){if(!Reflect.has(t,Or)){let e=t.bind(this.client);Object.defineProperty(t,Or,{value:e,enumerable:!1})}this[K].addEventListener(e,Reflect.get(t,Or),n)}removeEventListener(e,t,n){this[K].removeEventListener(e,Reflect.get(t,Or),n)}send(e){this[kr](e)}[kr](e){let{realWebSocket:t}=this;if(L(t,`Failed to call "server.send()" for "%s": the connection is not open. Did you forget to call "server.connect()"?`,this.client.url),!(t.readyState===WebSocket.CLOSING||t.readyState===WebSocket.CLOSED)){if(t.readyState===WebSocket.CONNECTING){t.addEventListener(`open`,()=>{t.send(e)},{once:!0});return}t.send(e)}}close(){let{realWebSocket:e}=this;L(e,`Failed to close server connection for "%s": the connection is not open. Did you forget to call "server.connect()"?`,this.client.url),this.realCloseController.abort(),!(e.readyState===WebSocket.CLOSING||e.readyState===WebSocket.CLOSED)&&(e.close(),queueMicrotask(()=>{this[K].dispatchEvent(H(this.realWebSocket,new yr(`close`,{code:1e3,cancelable:!0})))}))}handleIncomingMessage(e){let t=H(e.target,new _r(`message`,{data:e.data,origin:e.origin,cancelable:!0}));this[K].dispatchEvent(t),t.defaultPrevented||this.client.dispatchEvent(H(this.client,new MessageEvent(`message`,{data:e.data,origin:e.origin})))}handleMockClose(e){this.realWebSocket&&this.realWebSocket.close()}handleRealClose(e){this.mockCloseController.abort();let t=H(this.realWebSocket,new yr(`close`,{code:e.code,reason:e.reason,wasClean:e.wasClean,cancelable:!0}));this[K].dispatchEvent(t),t.defaultPrevented||this.client[Tr](e.code,e.reason)}},jr=class extends EventTarget{constructor(e){super(),this.socket=e,this.socket.addEventListener(`close`,e=>{this.dispatchEvent(H(this.socket,new vr(`close`,e)))}),this.socket[wr]=e=>{this.dispatchEvent(H(this.socket,new _r(`outgoing`,{data:e,origin:this.socket.url,cancelable:!0})))}}addEventListener(e,t,n){return super.addEventListener(e,t,n)}dispatchEvent(e){return super.dispatchEvent(e)}send(e){queueMicrotask(()=>{if(this.socket.readyState===this.socket.CLOSING||this.socket.readyState===this.socket.CLOSED)return;let t=()=>{this.socket.dispatchEvent(H(this.socket,new MessageEvent(`message`,{data:e,origin:this.socket.url})))};this.socket.readyState===this.socket.CONNECTING?this.socket.addEventListener(`open`,()=>{t()},{once:!0}):t()})}close(e,t){this.socket[Tr](e,t)}},Mr=class e extends lr{static{this.symbol=Symbol.for(`websocket-interceptor`)}constructor(){super(e.symbol)}checkEnvironment(){return mr(`WebSocket`)}setup(){let e=this.logger.extend(`setup`),t=new Proxy(globalThis.WebSocket,{construct:(e,t,n)=>{let[r,i]=t,a=()=>Reflect.construct(e,t,n),o=new Er(r,i),s=new jr(o);return queueMicrotask(async()=>{try{let e=new Ar(o,s,a),t=this.emitter.listenerCount(`connection`)>0;await V(this.emitter,`connection`,{client:new xr(o,s),server:e,info:{protocols:i}}),t?o[Cr].resolve(!1):(o[Cr].resolve(!0),e.connect(),e.addEventListener(`open`,()=>{o.dispatchEvent(H(o,new Event(`open`))),e.realWebSocket&&(o.protocol=e.realWebSocket.protocol)}))}catch(e){e instanceof Error&&(o.dispatchEvent(new Event(`error`)),o.readyState!==WebSocket.CLOSING&&o.readyState!==WebSocket.CLOSED&&o[Tr](1011,e.message,!1),console.error(e))}}),o}});e.info(`patching global WebSocket...`),this.subscriptions.push(fr.applyPatch(globalThis,`WebSocket`,()=>t)),e.info(`global WebSocket patched!`,globalThis.WebSocket.name)}};function Nr(){return typeof navigator<`u`&&`serviceWorker`in navigator&&typeof location<`u`&&location.protocol!==`file:`}function Pr(){try{let e=new ReadableStream({start:e=>e.close()});return new MessageChannel().port1.postMessage(e,[e]),!0}catch{return!1}}function Fr(){let e=((t,n)=>{e.state=`pending`,e.resolve=n=>e.state===`pending`?(e.result=n,t(n instanceof Promise?n:Promise.resolve(n).then(t=>(e.state=`fulfilled`,t)))):void 0,e.reject=t=>{if(e.state===`pending`)return queueMicrotask(()=>{e.state=`rejected`}),n(e.rejectionReason=t)}});return e}var Ir=class extends Promise{#e;resolve;reject;constructor(e=null){let t=Fr();super((n,r)=>{t(n,r),e?.(t.resolve,t.reject)}),this.#e=t,this.resolve=this.#e.resolve,this.reject=this.#e.reject}get state(){return this.#e.state}get rejectionReason(){return this.#e.rejectionReason}then(e,t){return this.#t(super.then(e,t))}catch(e){return this.#t(super.catch(e))}finally(e){return this.#t(super.finally(e))}#t(e){return Object.defineProperties(e,{resolve:{configurable:!0,value:this.resolve},reject:{configurable:!0,value:this.reject}})}},Lr=class e extends Error{constructor(t){super(t),this.name=`InterceptorError`,Object.setPrototypeOf(this,e.prototype)}},Rr=class e{static{this.PENDING=0}static{this.PASSTHROUGH=1}static{this.RESPONSE=2}static{this.ERROR=3}constructor(t,n){this.request=t,this.source=n,this.readyState=e.PENDING,this.handled=new gr}get#e(){return this.handled}async passthrough(){L.as(Lr,this.readyState===e.PENDING,`Failed to passthrough the "%s %s" request: the request has already been handled`,this.request.method,this.request.url),this.readyState=e.PASSTHROUGH,await this.source.passthrough(),this.#e.resolve()}respondWith(t){L.as(Lr,this.readyState===e.PENDING,`Failed to respond to the "%s %s" request with "%d %s": the request has already been handled (%d)`,this.request.method,this.request.url,t.status,t.statusText||`OK`,this.readyState),this.readyState=e.RESPONSE,this.#e.resolve(),this.source.respondWith(t)}errorWith(t){L.as(Lr,this.readyState===e.PENDING,`Failed to error the "%s %s" request with "%s": the request has already been handled (%d)`,this.request.method,this.request.url,t?.toString(),this.readyState),this.readyState=e.ERROR,this.source.errorWith(t),this.#e.resolve()}};function zr(e){try{return new URL(e),!0}catch{return!1}}function Br(e,t){let n=Object.getOwnPropertySymbols(t).find(t=>t.description===e);if(n)return Reflect.get(t,n)}var Vr=class e extends Request{static#e(e,t={},n){return t[n]??(e instanceof Request?e[n]:void 0)}static isConfigurableMethod(e){return e!==`CONNECT`&&e!==`TRACE`&&e!==`TRACK`}static isMethodWithBody(t){return t!==`HEAD`&&t!==`GET`&&e.isConfigurableMethod(t)}static isConfigurableMode(e){return e!==`navigate`&&e!==`websocket`&&e!==`webtransport`}constructor(t,n){let r=e.#e(t,n,`method`)||`GET`,i=e.isConfigurableMethod(r)?r:`GET`,a=n!=null&&`body`in n,o=e.isMethodWithBody(r)?a?{body:n.body}:{}:{body:void 0},s=e.#e(t,n,`mode`)??void 0,c=e.isConfigurableMode(s)?s:void 0;if(super(t,{...n||{},method:i,mode:c,duplex:n?.duplex??(e.isMethodWithBody(r)?`half`:void 0),...o}),r!==i&&this.#t(`method`,r),r===`CONNECT`){let e=new URL(t instanceof Request?t.url:t),n;n=e.protocol===`localhost:`?e.href:e.pathname.replace(/^\/+/,``),Object.defineProperty(this,"url",{get:()=>n,enumerable:!0,configurable:!0})}s!=null&&s!==c&&this.#t(`mode`,s)}#t(e,t){let n=Br(`state`,this);n?Reflect.set(n,e,t):Object.defineProperty(this,e,{value:t,enumerable:!0,configurable:!0,writable:!1})}},Hr=Symbol(`kStatus`),Ur=Symbol(`kUrl`),q=class e extends Response{static{this.STATUS_CODES_WITHOUT_BODY=[101,103,204,205,304]}static{this.STATUS_CODES_WITH_REDIRECT=[301,302,303,307,308]}static isConfigurableStatusCode(e){return e>=200&&e<=599}static isRedirectResponse(t){return e.STATUS_CODES_WITH_REDIRECT.includes(t)}static isResponseWithBody(t){return!e.STATUS_CODES_WITHOUT_BODY.includes(t)}static setStatus(e,t){let n=Br(`state`,t);n?n.status=e:Object.defineProperty(t,"status",{value:e,enumerable:!0,configurable:!0,writable:!1}),Object.defineProperty(t,Hr,{value:e,enumerable:!1})}static setUrl(e,t){if(!e||e===`about:`||!zr(e))return;let n=Br(`state`,t);n?n.urlList.push(new URL(e)):Object.defineProperty(t,"url",{value:e,enumerable:!0,configurable:!0,writable:!1}),Object.defineProperty(t,Ur,{value:e,enumerable:!1})}static parseRawHeaders(e){let t=new Headers;for(let n=0;n<e.length;n+=2)t.append(e[n],e[n+1]);return t}static clone(e){try{return e.clone()}catch(e){return Response.json(e instanceof Error?{name:e.name,message:e.message,stack:e.stack}:{},{status:500,statusText:`Unclonable Response`})}}constructor(t,n={}){let r=n.status??200,i=e.isConfigurableStatusCode(r)?r:200,a=e.isResponseWithBody(r)?t:null;super(a,{status:i,statusText:n.statusText,headers:n.headers}),r!==i&&e.setStatus(r,this),e.setUrl(n.url,this)}clone(){let t=super.clone(),n=Reflect.get(this,Hr);n&&e.setStatus(n,t);let r=Reflect.get(this,Ur);return r&&e.setUrl(r,t),t}},Wr=Symbol(`kRawRequest`);function Gr(e,t){Reflect.set(e,Wr,t)}var Kr=new TextEncoder;function qr(e){return Kr.encode(e)}function Jr(e,t){return new TextDecoder(t).decode(e)}function Yr(e){return e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength)}async function Xr(e){try{return[null,await e().catch(e=>{throw e})]}catch(e){return[e,null]}}function Zr(e){return new URL(e,location.href).href}function Qr(e,t,n){return[e.active,e.installing,e.waiting].filter(e=>e!=null).find(e=>n(e.scriptURL,t))||null}var $r=async(e,t={},n)=>{let r=Zr(e),i=await navigator.serviceWorker.getRegistrations().then(e=>e.filter(e=>Qr(e,r,n)));!navigator.serviceWorker.controller&&i.length>0&&location.reload();let[a]=i;if(a)return a.update(),[Qr(a,r,n),a];let[o,s]=await Xr(async()=>{let i=await navigator.serviceWorker.register(e,t);return[Qr(i,r,n),i]});if(o){if(o.message.includes(`(404)`)){let e=new URL(t?.scope||`/`,location.href);throw Error(v.formatMessage(`Failed to register a Service Worker for scope ('${e.href}') with script ('${r}'): Service Worker script does not exist at the given path.
24
-
25
- Did you forget to run "npx msw init <PUBLIC_DIR>"?
26
-
27
- Learn more about creating the Service Worker script: https://mswjs.io/docs/cli/init`))}throw Error(v.formatMessage(`Failed to register the Service Worker:
28
-
29
- %s`,o.message))}return s},ei=class{#e;#t;constructor(){this.#e=[],this.#t=new Map}get[Symbol.iterator](){return this.#e[Symbol.iterator].bind(this.#e)}entries(){return this.#t.entries()}get(e){return this.#t.get(e)||[]}getAll(){return this.#e.map(([,e])=>e)}append(e,t){this.#e.push([e,t]),this.#n(e,e=>e.push(t))}prepend(e,t){this.#e.unshift([e,t]),this.#n(e,e=>e.unshift(t))}delete(e,t){if(this.size===0)return!1;let n=this.#t.get(e);if(!n)return!1;let r=n.indexOf(t);return r===-1?!1:(n.splice(r,1),this.#e.splice(this.#e.findIndex(n=>n[0]===e&&n[1]===t),1),!0)}deleteAll(e){this.size!==0&&(this.#e=this.#e.filter(t=>t[0]!==e),this.#t.delete(e))}get size(){return this.#e.length}clear(){this.size!==0&&(this.#e.length=0,this.#t.clear())}#n(e,t){t(this.#t.get(e)||this.#t.set(e,[]).get(e))}},ti=Symbol(`kDefaultPrevented`),J=Symbol(`kPropagationStopped`),Y=Symbol(`kImmediatePropagationStopped`),ni=class extends MessageEvent{[ti];[J];[Y];constructor(...e){super(e[0],e[1]),this[ti]=!1}get defaultPrevented(){return this[ti]}preventDefault(){super.preventDefault(),this[ti]=!0}stopImmediatePropagation(){super.stopImmediatePropagation(),this[Y]=!0}},ri=class{#e;#t;#n;#r;#i;#a;#o;hooks;constructor(){this.#e=new ei,this.#t=new WeakMap,this.#n=new WeakMap,this.#r=new WeakSet,this.#i=new ei,this.#a=new WeakMap,this.#o=new WeakMap,this.hooks={on:(e,t,n)=>{if(!n?.signal?.aborted){if(n?.once){let n=t,r=((...t)=>(this.#s(e,r),n(...t)));t=r}if(this.#i.append(e,t),n&&this.#a.set(t,n),n?.signal){let{signal:r}=n,i=()=>{this.#s(e,t)};r.addEventListener(`abort`,i,{once:!0}),this.#o.set(t,()=>{r.removeEventListener(`abort`,i)})}}},removeListener:(e,t)=>{this.#s(e,t)}}}#s(e,t){this.#i.delete(e,t);let n=this.#o.get(t);n&&(n(),this.#o.delete(t))}#c(e,t){let n=this.#e.delete(e,t),r=this.#n.get(t);return r&&(r(),this.#n.delete(t)),n}on(e,t,n){return this.#l(e,t,n),this}once(e,t,n){return this.on(e,t,{...n||{},once:!0})}earlyOn(e,t,n){return this.#l(e,t,n,`prepend`),this}earlyOnce(e,t,n){return this.earlyOn(e,t,{...n||{},once:!0})}emit(e){if(this.#e.size===0)return!1;let t=this.listenerCount(e.type)>0,n=this.#u(e);for(let t of this.#f(e.type)){if(n.event[J]!=null&&n.event[J]!==this)return n.revoke(),!1;if(n.event[Y])break;this.#d(n.event,t)}return n.revoke(),t}async emitAsPromise(e){if(this.#e.size===0)return[];let t=[],n=this.#u(e);for(let r of this.#f(e.type)){if(n.event[J]!=null&&n.event[J]!==this)return n.revoke(),[];if(n.event[Y])break;let e=await Promise.resolve(this.#d(n.event,r));this.#p(r)||t.push(e)}return n.revoke(),Promise.allSettled(t).then(e=>e.map(e=>e.status===`fulfilled`?e.value:e.reason))}*emitAsGenerator(e){if(this.#e.size===0)return;let t=this.#u(e);for(let n of this.#f(e.type)){if(t.event[J]!=null&&t.event[J]!==this){t.revoke();return}if(t.event[Y])break;let e=this.#d(t.event,n);this.#p(n)||(yield e)}t.revoke()}removeListener(e,t){let n=this.#t.get(t);if(this.#c(e,t))for(let r of this.#i.get(`removeListener`).slice())r(e,t,n)}removeAllListeners(e){if(e==null){for(let[e,t]of this.#e.entries())for(;t.length>0;)this.removeListener(e,t[0]);for(let[e,t]of[...this.#i])this.#a.get(t)?.persist||this.#s(e,t);return}let t=this.listeners(e);for(;t.length>0;)this.removeListener(e,t[0])}listeners(e){return e==null?this.#e.getAll():this.#e.get(e)}listenerCount(e){return e==null?this.#e.size:this.listeners(e).length}#l(e,t,n,r=`append`){if(!n?.signal?.aborted){for(let r of this.#i.get(`newListener`).slice())r(e,t,n);if(e===`*`&&this.#r.add(t),r===`prepend`?this.#e.prepend(e,t):this.#e.append(e,t),n&&(this.#t.set(t,n),n.signal)){let{signal:r}=n,i=()=>{this.removeListener(e,t)};r.addEventListener(`abort`,i,{once:!0}),this.#n.set(t,()=>{r.removeEventListener(`abort`,i)})}}}#u(e){let{stopPropagation:t}=e;return e.stopPropagation=()=>{e[J]=this,t.call(e)},{event:e,revoke(){e.stopPropagation=t}}}#d(e,t){for(let t of this.#i.get(`beforeEmit`).slice())if(t(e)===!1)return;let n=t.call(this,e),r=this.#t.get(t);if(r?.once){let n=this.#p(t)?`*`:e.type;if(this.#c(n,t))for(let e of this.#i.get(`removeListener`).slice())e(n,t,r)}return n}*#f(e){let t=[];for(let[n,r]of this.#e)(n===`*`||n===e)&&t.push(r);yield*t}#p(e){return this.#r.has(e)}},ii=Nr(),ai=class extends ni{#e;constructor(e){let t=e.data.type,n=e.data.payload;super(t,{data:n}),this.#e=e}get ports(){return this.#e.ports}postMessage(e,...t){this.#e.ports[0].postMessage({type:e,data:t[0]},{transfer:t[1]})}},oi=class extends ri{#e;#t;constructor(e){super(),L(ii,`Failed to open a WorkerChannel: Service Worker is not supported in this environment.`),this.#e=e.getWorker,this.#t=new AbortController,navigator.serviceWorker.addEventListener(`message`,async e=>{let t=await this.#e();e.source!=null&&e.source!==t||e.data&&Vt(e.data)&&`type`in e.data&&this.emit(new ai(e))},{signal:this.#t.signal})}postMessage(e){L(ii,`Failed to post message on a WorkerChannel: the Service Worker API is unavailable in this environment. This is likely an issue with MSW. Please report it on GitHub: https://github.com/mswjs/msw/issues`),this.#e().then(t=>{t.postMessage(e)})}terminate(){this.#t.abort(),this.removeAllListeners()}};function si(e){if(![`HEAD`,`GET`].includes(e.method))return e.body}function ci(e){return new Request(e.url,{...e,body:si(e)})}function li(e){location.href.startsWith(e.scope)||v.warn(`Cannot intercept requests on this page because it's outside of the worker's scope ("${e.scope}"). If you wish to mock API requests on this page, you must resolve this scope issue.
30
-
31
- - (Recommended) Register the worker at the root level ("/") of your application.
32
- - Set the "Service-Worker-Allowed" response header to allow out-of-scope workers.`)}function ui(e,t){return e.findWorker!==t.findWorker||e.serviceWorker.url!==t.serviceWorker.url||JSON.stringify(e.serviceWorker.options)!==JSON.stringify(t.serviceWorker.options)}var di=class e extends f{static#e;static async from(t){return e.#e==null?e.#e=new e(t):ui(e.#e.#t,t)&&(await e.#e.terminate(),e.#e=new e(t)),e.#e}#t;#n;#r;#i;#a;#o;#s;workerPromise;constructor(e){super(),L(Nr(),`Failed to use Service Worker as the network source: the Service Worker API is not supported in this environment`),this.#t=e,this.#n=new Map,this.workerPromise=new Ir,this.#r=new oi({getWorker:()=>this.workerPromise.then(([e])=>e)})}async enable(){if(this.workerPromise.state===`fulfilled`&&this.#s===void 0)return v.warn(`Found a redundant "worker.start()" call. Note that starting the worker while mocking is already enabled will have no effect. Consider removing this "worker.start()" call.`),this.workerPromise.then(([,e])=>e);this.#s=void 0,this.#r.removeAllListeners(),this.#n.clear(),this.#i=new AbortController;let[e,t]=await this.#c();if(e.state!==`activated`){let t=new AbortController,n=new Ir;n.then(()=>t.abort()),e.addEventListener(`statechange`,()=>{e.state===`activated`&&n.resolve()},{signal:t.signal}),await n}this.#r.postMessage(`MOCK_ACTIVATE`);let n=new Ir;return this.#a=n,this.#r.once(`MOCKING_ENABLED`,e=>{n.resolve(e.data.client)}),await n,this.#t.quiet||this.#p(),t}disable(){if(this.#s!==void 0){v.warn(`Found a redundant "worker.stop()" call. Notice that stopping the worker after it has already been stopped has no effect. Consider removing this "worker.stop()" call.`);return}this.#s=Date.now(),this.#i?.abort(),this.#i=void 0,this.#r.postMessage(`CLIENT_CLOSED`),this.#t.quiet||this.#m()}async terminate(){if(this.#o!=null&&(clearInterval(this.#o),this.#o=void 0),this.#n.clear(),this.#r.terminate(),this.#i?.abort(),this.#i=void 0,this.workerPromise.state===`fulfilled`){let[,e]=await this.workerPromise;await e.unregister()}e.#e===this&&(e.#e=void 0)}async#c(){this.#o&&clearInterval(this.#o);let e=this.#t.serviceWorker.url,[t,n]=await $r(e,this.#t.serviceWorker.options,this.#t.findWorker||this.#d);if(t==null){let t=this.#t?.findWorker?v.formatMessage(`Failed to locate the Service Worker registration using a custom "findWorker" predicate.
33
-
34
- Please ensure that the custom predicate properly locates the Service Worker registration at "%s".
35
- More details: https://mswjs.io/docs/api/setup-worker/start#findworker
36
- `,e):v.formatMessage(`Failed to locate the Service Worker registration.
37
-
38
- This most likely means that the worker script URL "%s" cannot resolve against the actual public hostname (%s). This may happen if your application runs behind a proxy, or has a dynamic hostname.
39
-
40
- Please consider using a custom "serviceWorker.url" option to point to the actual worker script location, or a custom "findWorker" option to resolve the Service Worker registration manually. More details: https://mswjs.io/docs/api/setup-worker/start`,e,location.host);throw Error(t)}return this.workerPromise.state===`pending`?this.workerPromise.resolve([t,n]):this.workerPromise=new Ir(e=>{e([t,n])}),this.#r.on(`REQUEST`,this.#l.bind(this)),this.#r.on(`RESPONSE`,this.#u.bind(this)),window.addEventListener(`beforeunload`,()=>{t.state!==`redundant`&&this.#r.postMessage(`CLIENT_CLOSED`),clearInterval(this.#o),window.postMessage({type:`msw/worker:stop`})},{signal:this.#i?.signal}),await this.#f().catch(e=>{v.error(`Error while checking the worker script integrity. Please report this on GitHub (https://github.com/mswjs/msw/issues) and include the original error below.`),console.error(e)}),this.#o=window.setInterval(()=>{this.#r.postMessage(`KEEPALIVE_REQUEST`)},5e3),this.#t.quiet||li(n),[t,n]}async#l(e){if(this.#s&&e.data.interceptedAt>this.#s)return e.postMessage(`PASSTHROUGH`);let t=ci(e.data);mt.cache.set(t,t.clone());let n=new fi({event:e,request:t});this.#n.set(e.data.id,n),await this.queue(n)}async#u(e){let{request:t,response:n,isMockedResponse:r}=e.data,i=this.#n.get(t.id);if(n.type?.includes(`opaque`)){this.#n.delete(t.id),i?.events.removeAllListeners();return}if(this.#n.delete(t.id),i==null)return;let a=ci(t),o=n.status===0?Response.error():new q(q.isResponseWithBody(n.status)?n.body:null,{...n,url:t.url});try{i.events.emit(new Yt(r?`response:mocked`:`response:bypass`,{requestId:i.data.id,request:a,response:o,isMockedResponse:r}))}finally{i.events.removeAllListeners()}}#d=(e,t)=>e===t;async#f(){let e=new Ir;return this.#r.postMessage(`INTEGRITY_CHECK_REQUEST`),this.#r.once(`INTEGRITY_CHECK_RESPONSE`,t=>{let{checksum:n,packageVersion:r}=t.data;n!==`03cb67ac84128e63d7cd722a6e5b7f1e`&&v.warn(`The currently registered Service Worker has been generated by a different version of MSW (${r}) and may not be fully compatible with the installed version.
41
-
42
- It's recommended you update your worker script by running this command:
43
-
44
- \u2022 npx msw init <PUBLIC_DIR>
45
-
46
- You can also automate this process and make the worker script update automatically upon the library installations. Read more: https://mswjs.io/docs/cli/init.`),e.resolve()}),e}async#p(){if(this.workerPromise.state===`rejected`)return;L(this.#a!=null,`[ServiceWorkerSource] Failed to print a start message: client confirmation not received`);let e=await this.#a,[t,n]=await this.workerPromise;console.groupCollapsed(`%c${v.formatMessage(`Mocking enabled.`)}`,`color:orangered;font-weight:bold;`),console.log(`%cDocumentation: %chttps://mswjs.io/docs`,`font-weight:bold`,`font-weight:normal`),console.log(`Found an issue? https://github.com/mswjs/msw/issues`),console.log(`Worker script URL:`,t.scriptURL),console.log(`Worker scope:`,n.scope),e&&console.log(`Client ID: %s (%s)`,e.id,e.frameType),console.groupEnd()}#m(){console.log(`%c${v.formatMessage(`Mocking disabled.`)}`,`color:orangered;font-weight:bold;`)}},fi=class extends Zt{#e;constructor(e){super({request:e.request}),this.#e=e.event}passthrough(){this.#e.postMessage(`PASSTHROUGH`)}respondWith(e){e&&this.#t(e)}errorWith(e){if(e instanceof Response)return this.respondWith(e);v.warn(`Uncaught exception in the request handler for "%s %s". This exception has been gracefully handled as a 500 response, however, it's strongly recommended to resolve this error, as it indicates a mistake in your code. If you wish to mock an error response, please see this guide: https://mswjs.io/docs/http/mocking-responses/error-responses`,this.data.request.method,this.data.request.url);let t=e instanceof Error?e:Error(e?.toString()||`Request failure`);this.respondWith(ut.json({name:t.name,message:t.message,stack:t.stack},{status:500,statusText:`Request Handler Error`}))}async#t(e){let t,n,r=Mn(e);Pr()?(t=e.body,n=e.body==null?void 0:[e.body]):t=e.body==null?null:await e.clone().arrayBuffer(),this.#e.postMessage(`MOCK_RESPONSE`,{...r,body:t},n)}},pi=async e=>{try{return{error:null,data:await e().catch(e=>{throw e})}}catch(e){return{error:e,data:null}}};function mi(e,t=!1){return t?Object.prototype.toString.call(e).startsWith(`[object `):Object.prototype.toString.call(e)===`[object Object]`}function hi(e,t){try{return e[t],!0}catch{return!1}}function gi(e){return new Response(JSON.stringify(e instanceof Error?{name:e.name,message:e.message,stack:e.stack}:e),{status:500,statusText:`Unhandled Exception`,headers:{"Content-Type":`application/json`}})}function _i(e){return e!=null&&e instanceof Response&&hi(e,`type`)&&e.type===`error`}function vi(e){return mi(e,!0)&&hi(e,`status`)&&hi(e,`statusText`)&&hi(e,`bodyUsed`)}function yi(e){return e==null||!(e instanceof Error)?!1:`code`in e&&`errno`in e}async function bi(e){let t=async t=>t instanceof Error?(await e.controller.errorWith(t),!0):_i(t)||vi(t)?(await e.controller.respondWith(t),!0):mi(t)?(await e.controller.errorWith(t),!0):!1,n=async n=>{if(n instanceof Lr)throw a.error;return yi(n)?(await e.controller.errorWith(n),!0):n instanceof Response?await t(n):!1},r=new gr,i=()=>{r.reject(e.request.signal?.reason)};if(e.request.signal){if(e.request.signal.aborted){await e.controller.errorWith(e.request.signal.reason);return}e.request.signal.addEventListener(`abort`,i,{once:!0})}let a=await pi(async()=>{let t=V(e.emitter,`request`,{requestId:e.requestId,request:e.request,controller:e.controller});await Promise.race([r,t,e.controller.handled])});if(e.request.signal?.removeEventListener(`abort`,i),r.state===`rejected`){await e.controller.errorWith(r.rejectionReason);return}if(a.error){if(await n(a.error))return;if(e.emitter.listenerCount(`unhandledException`)>0){let n=new Rr(e.request,{passthrough(){},async respondWith(e){await t(e)},async errorWith(t){await e.controller.errorWith(t)}});if(await V(e.emitter,`unhandledException`,{error:a.error,request:e.request,requestId:e.requestId,controller:n}),n.readyState!==Rr.PENDING)return}await e.controller.respondWith(gi(a.error));return}return e.controller.readyState===Rr.PENDING?await e.controller.passthrough():e.controller.handled}function X(e){return Object.assign(TypeError(`Failed to fetch`),{cause:e})}var xi=[`content-encoding`,`content-language`,`content-location`,`content-type`,`content-length`],Si=Symbol(`kRedirectCount`);async function Ci(e,t){if(t.status!==303&&e.body!=null)return Promise.reject(X());let n=new URL(e.url),r;try{r=new URL(t.headers.get(`location`),e.url)}catch(e){return Promise.reject(X(e))}if(!(r.protocol===`http:`||r.protocol===`https:`))return Promise.reject(X(`URL scheme must be a HTTP(S) scheme`));if(Reflect.get(e,Si)>20)return Promise.reject(X(`redirect count exceeded`));if(Object.defineProperty(e,Si,{value:(Reflect.get(e,Si)||0)+1}),e.mode===`cors`&&(r.username||r.password)&&!wi(n,r))return Promise.reject(X(`cross origin not allowed for request mode "cors"`));let i={};([301,302].includes(t.status)&&e.method===`POST`||t.status===303&&![`HEAD`,`GET`].includes(e.method))&&(i.method=`GET`,i.body=null,xi.forEach(t=>{e.headers.delete(t)})),wi(n,r)||(e.headers.delete(`authorization`),e.headers.delete(`proxy-authorization`),e.headers.delete(`cookie`),e.headers.delete(`host`)),i.headers=e.headers;let a=await fetch(new Request(r,i));return Object.defineProperty(a,"redirected",{value:!0,configurable:!0}),a}function wi(e,t){return e.origin===t.origin&&e.origin===`null`||e.protocol===t.protocol&&e.hostname===t.hostname&&e.port===t.port}var Ti=class extends TransformStream{constructor(){console.warn(`[Interceptors]: Brotli decompression of response streams is not supported in the browser`),super({transform(e,t){t.enqueue(e)}})}},Ei=class extends TransformStream{constructor(e,...t){super({},...t);let n=[super.readable,...e].reduce((e,t)=>e.pipeThrough(t));Object.defineProperty(this,"readable",{get(){return n}})}};function Di(e){return e.toLowerCase().split(`,`).map(e=>e.trim())}function Oi(e){if(e===``)return null;let t=Di(e);return t.length===0?null:new Ei(t.reduceRight((e,t)=>t===`gzip`||t===`x-gzip`?e.concat(new DecompressionStream(`gzip`)):t===`deflate`?e.concat(new DecompressionStream(`deflate`)):t===`br`?e.concat(new Ti):(e.length=0,e),[]))}function ki(e){if(e.body===null)return null;let t=Oi(e.headers.get(`content-encoding`)||``);return t?(e.body.pipeTo(t.writable),t.readable):null}var Ai=class e extends lr{static{this.symbol=Symbol.for(`fetch-interceptor`)}constructor(){super(e.symbol)}checkEnvironment(){return mr(`fetch`)}async setup(){let e=this.logger.extend(`setup`),t=globalThis.fetch,n=async(e,n)=>{let r=ur(),i=new Vr(typeof e==`string`&&typeof location<`u`&&!zr(e)?new URL(e,location.href):e,n);e instanceof Request&&Gr(i,e);let a=new gr,o=new Rr(i,{passthrough:async()=>{this.logger.info(`request has not been handled, passthrough...`);let e=i.clone(),{error:n,data:o}=await pi(()=>t(i));if(n)return a.reject(n);if(this.logger.info(`original fetch performed`,o),this.emitter.listenerCount(`response`)>0){this.logger.info(`emitting the "response" event...`);let t=q.clone(o);await V(this.emitter,`response`,{response:t,isMockedResponse:!1,request:e,requestId:r})}a.resolve(o)},respondWith:async e=>{if(_i(e)){this.logger.info(`request has errored!`,{response:e}),a.reject(X(e));return}this.logger.info(`received mocked response!`,{rawResponse:e});let t=new q(ki(e)||e.body,{url:i.url,status:e.status,statusText:e.statusText,headers:e.headers});if(q.isRedirectResponse(t.status)){if(i.redirect===`error`){a.reject(X(`unexpected redirect`));return}if(i.redirect===`follow`){Ci(i,t).then(e=>{a.resolve(e)},e=>{a.reject(e)});return}}this.emitter.listenerCount(`response`)>0&&(this.logger.info(`emitting the "response" event...`),await V(this.emitter,`response`,{response:q.clone(t),isMockedResponse:!0,request:i,requestId:r})),a.resolve(t)},errorWith:e=>{this.logger.info(`request has been aborted!`,{reason:e}),a.reject(e)}});return this.logger.info(`[%s] %s`,i.method,i.url),this.logger.info(`awaiting for the mocked response...`),this.logger.info(`emitting the "request" event for %s listener(s)...`,this.emitter.listenerCount(`request`)),await bi({request:i,requestId:r,emitter:this.emitter,controller:o}),a};e.info(`patching global fetch...`),this.subscriptions.push(fr.applyPatch(globalThis,`fetch`,()=>n)),e.info(`global fetch patched!`,globalThis.fetch.name)}};function ji(e,t){let n=new Uint8Array(e.byteLength+t.byteLength);return n.set(e,0),n.set(t,e.byteLength),n}var Mi=class{constructor(e,t){this.NONE=0,this.CAPTURING_PHASE=1,this.AT_TARGET=2,this.BUBBLING_PHASE=3,this.type=``,this.srcElement=null,this.currentTarget=null,this.eventPhase=0,this.isTrusted=!0,this.composed=!1,this.cancelable=!0,this.defaultPrevented=!1,this.bubbles=!0,this.lengthComputable=!0,this.loaded=0,this.total=0,this.cancelBubble=!1,this.returnValue=!0,this.type=e,this.target=t?.target||null,this.currentTarget=t?.currentTarget||null,this.timeStamp=Date.now()}composedPath(){return[]}initEvent(e,t,n){this.type=e,this.bubbles=!!t,this.cancelable=!!n}preventDefault(){this.defaultPrevented=!0}stopPropagation(){}stopImmediatePropagation(){}},Ni=class extends Mi{constructor(e,t){super(e),this.lengthComputable=t?.lengthComputable||!1,this.composed=t?.composed||!1,this.loaded=t?.loaded||0,this.total=t?.total||0}},Pi=typeof ProgressEvent<`u`;function Fi(e,t,n){let r=[`error`,`progress`,`loadstart`,`loadend`,`load`,`timeout`,`abort`],i=Pi?ProgressEvent:Ni;return r.includes(t)?new i(t,{lengthComputable:!0,loaded:n?.loaded||0,total:n?.total||0}):new Mi(t,{target:e,currentTarget:e})}function Ii(e,t){if(!(t in e))return null;if(Object.prototype.hasOwnProperty.call(e,t))return e;let n=Reflect.getPrototypeOf(e);return n?Ii(n,t):null}function Li(e,t){return new Proxy(e,Ri(t))}function Ri(e){let{constructorCall:t,methodCall:n,getProperty:r,setProperty:i}=e,a={};return t!==void 0&&(a.construct=function(e,n,r){let i=Reflect.construct.bind(null,e,n,r);return t.call(r,n,i)}),a.set=function(e,t,n){let r=()=>{let r=Ii(e,t)||e,i=Reflect.getOwnPropertyDescriptor(r,t);return i?.set===void 0?Reflect.defineProperty(r,t,{writable:!0,enumerable:!0,configurable:!0,value:n}):(i.set.apply(e,[n]),!0)};return i===void 0?r():i.call(e,[t,n],r)},a.get=function(e,t,i){let a=()=>e[t],o=r===void 0?a():r.call(e,[t,i],a);return typeof o==`function`?(...r)=>{let i=o.bind(e,...r);return n===void 0?i():n.call(e,[t,r],i)}:o},a}function zi(e){return[`application/xhtml+xml`,`application/xml`,`image/svg+xml`,`text/html`,`text/xml`].some(t=>e.startsWith(t))}function Bi(e){try{return JSON.parse(e)}catch{return null}}function Vi(e,t){return new q(q.isResponseWithBody(e.status)?t:null,{url:e.responseURL,status:e.status,statusText:e.statusText,headers:Hi(e.getAllResponseHeaders())})}function Hi(e){let t=new Headers,n=e.split(/[\r\n]+/);for(let e of n){if(e.trim()===``)continue;let[n,...r]=e.split(`: `),i=r.join(`: `);t.append(n,i)}return t}async function Ui(e){let t=e.headers.get(`content-length`);return t!=null&&t!==``?Number(t):(await e.arrayBuffer()).byteLength}var Wi=Symbol(`kIsRequestHandled`),Gi=zn(),Ki=Symbol(`kFetchRequest`),qi=class{constructor(e,t){this.initialRequest=e,this.logger=t,this.method=`GET`,this.url=null,this[Wi]=!1,this.events=new Map,this.uploadEvents=new Map,this.requestId=ur(),this.requestHeaders=new Headers,this.responseBuffer=new Uint8Array,this.request=Li(e,{setProperty:([e,t],n)=>{switch(e){case`ontimeout`:{let r=e.slice(2);return this.request.addEventListener(r,t),n()}default:return n()}},methodCall:([e,t],n)=>{switch(e){case`open`:{let[e,r]=t;return r===void 0?(this.method=`GET`,this.url=Ji(e)):(this.method=e,this.url=Ji(r)),this.logger=this.logger.extend(`${this.method} ${this.url.href}`),this.logger.info(`open`,this.method,this.url.href),n()}case`addEventListener`:{let[e,r]=t;return this.registerEvent(e,r),this.logger.info(`addEventListener`,e,r),n()}case`setRequestHeader`:{let[e,r]=t;return this.requestHeaders.set(e,r),this.logger.info(`setRequestHeader`,e,r),n()}case`send`:{let[e]=t;this.request.addEventListener(`load`,()=>{if(this.onResponse!==void 0){let e=Vi(this.request,this.request.response);this.onResponse.call(this,{response:e,isMockedResponse:this[Wi],request:i,requestId:this.requestId})}});let r=typeof e==`string`?qr(e):e,i=this.toFetchApiRequest(r);this[Ki]=i.clone(),queueMicrotask(()=>{(this.onRequest?.call(this,{request:i,requestId:this.requestId})||Promise.resolve()).finally(()=>{if(!this[Wi])return this.logger.info(`request callback settled but request has not been handled (readystate %d), performing as-is...`,this.request.readyState),Gi&&this.request.setRequestHeader(ar,this.requestId),n()})});break}default:return n()}}}),Z(this.request,`upload`,Li(this.request.upload,{setProperty:([e,t],n)=>{switch(e){case`onloadstart`:case`onprogress`:case`onaboart`:case`onerror`:case`onload`:case`ontimeout`:case`onloadend`:{let n=e.slice(2);this.registerUploadEvent(n,t)}}return n()},methodCall:([e,t],n)=>{switch(e){case`addEventListener`:{let[e,r]=t;return this.registerUploadEvent(e,r),this.logger.info(`upload.addEventListener`,e,r),n()}}}}))}registerEvent(e,t){let n=(this.events.get(e)||[]).concat(t);this.events.set(e,n),this.logger.info(`registered event "%s"`,e,t)}registerUploadEvent(e,t){let n=(this.uploadEvents.get(e)||[]).concat(t);this.uploadEvents.set(e,n),this.logger.info(`registered upload event "%s"`,e,t)}async respondWith(e){if(this[Wi]=!0,this[Ki]){let e=await Ui(this[Ki]);this.trigger(`loadstart`,this.request.upload,{loaded:0,total:e}),this.trigger(`progress`,this.request.upload,{loaded:e,total:e}),this.trigger(`load`,this.request.upload,{loaded:e,total:e}),this.trigger(`loadend`,this.request.upload,{loaded:e,total:e})}this.logger.info(`responding with a mocked response: %d %s`,e.status,e.statusText),Z(this.request,`status`,e.status),Z(this.request,`statusText`,e.statusText),Z(this.request,`responseURL`,this.url.href),this.request.getResponseHeader=new Proxy(this.request.getResponseHeader,{apply:(t,n,r)=>{if(this.logger.info(`getResponseHeader`,r[0]),this.request.readyState<this.request.HEADERS_RECEIVED)return this.logger.info(`headers not received yet, returning null`),null;let i=e.headers.get(r[0]);return this.logger.info(`resolved response header "%s" to`,r[0],i),i}}),this.request.getAllResponseHeaders=new Proxy(this.request.getAllResponseHeaders,{apply:()=>{if(this.logger.info(`getAllResponseHeaders`),this.request.readyState<this.request.HEADERS_RECEIVED)return this.logger.info(`headers not received yet, returning empty string`),``;let t=Array.from(e.headers.entries()).map(([e,t])=>`${e}: ${t}`).join(`\r
47
- `);return this.logger.info(`resolved all response headers to`,t),t}}),Object.defineProperties(this.request,{response:{enumerable:!0,configurable:!1,get:()=>this.response},responseText:{enumerable:!0,configurable:!1,get:()=>this.responseText},responseXML:{enumerable:!0,configurable:!1,get:()=>this.responseXML}});let t=await Ui(e.clone());this.logger.info(`calculated response body length`,t),this.trigger(`loadstart`,this.request,{loaded:0,total:t}),this.setReadyState(this.request.HEADERS_RECEIVED),this.setReadyState(this.request.LOADING);let n=()=>{this.logger.info(`finalizing the mocked response...`),this.setReadyState(this.request.DONE),this.trigger(`load`,this.request,{loaded:this.responseBuffer.byteLength,total:t}),this.trigger(`loadend`,this.request,{loaded:this.responseBuffer.byteLength,total:t})};if(e.body){this.logger.info(`mocked response has body, streaming...`);let r=e.body.getReader(),i=async()=>{let{value:e,done:a}=await r.read();if(a){this.logger.info(`response body stream done!`),n();return}e&&(this.logger.info(`read response body chunk:`,e),this.responseBuffer=ji(this.responseBuffer,e),this.trigger(`progress`,this.request,{loaded:this.responseBuffer.byteLength,total:t})),i()};i()}else n()}responseBufferToText(){return Jr(this.responseBuffer)}get response(){if(this.logger.info(`getResponse (responseType: %s)`,this.request.responseType),this.request.readyState!==this.request.DONE)return null;switch(this.request.responseType){case`json`:{let e=Bi(this.responseBufferToText());return this.logger.info(`resolved response JSON`,e),e}case`arraybuffer`:{let e=Yr(this.responseBuffer);return this.logger.info(`resolved response ArrayBuffer`,e),e}case`blob`:{let e=this.request.getResponseHeader(`Content-Type`)||`text/plain`,t=new Blob([this.responseBufferToText()],{type:e});return this.logger.info(`resolved response Blob (mime type: %s)`,t,e),t}default:{let e=this.responseBufferToText();return this.logger.info(`resolving "%s" response type as text`,this.request.responseType,e),e}}}get responseText(){if(L(this.request.responseType===``||this.request.responseType===`text`,`InvalidStateError: The object is in invalid state.`),this.request.readyState!==this.request.LOADING&&this.request.readyState!==this.request.DONE)return``;let e=this.responseBufferToText();return this.logger.info(`getResponseText: "%s"`,e),e}get responseXML(){if(L(this.request.responseType===``||this.request.responseType===`document`,`InvalidStateError: The object is in invalid state.`),this.request.readyState!==this.request.DONE)return null;let e=this.request.getResponseHeader(`Content-Type`)||``;return typeof DOMParser>`u`?(console.warn(`Cannot retrieve XMLHttpRequest response body as XML: DOMParser is not defined. You are likely using an environment that is not browser or does not polyfill browser globals correctly.`),null):zi(e)?new DOMParser().parseFromString(this.responseBufferToText(),e):null}errorWith(e){this[Wi]=!0,this.logger.info(`responding with an error`),this.setReadyState(this.request.DONE),this.trigger(`error`,this.request),this.trigger(`loadend`,this.request)}setReadyState(e){if(this.logger.info(`setReadyState: %d -> %d`,this.request.readyState,e),this.request.readyState===e){this.logger.info(`ready state identical, skipping transition...`);return}Z(this.request,`readyState`,e),this.logger.info(`set readyState to: %d`,e),e!==this.request.UNSENT&&(this.logger.info(`triggering "readystatechange" event...`),this.trigger(`readystatechange`,this.request))}trigger(e,t,n){let r=t[`on${e}`],i=Fi(t,e,n);this.logger.info(`trigger "%s"`,e,n||``),typeof r==`function`&&(this.logger.info(`found a direct "%s" callback, calling...`,e),r.call(t,i));let a=t instanceof XMLHttpRequestUpload?this.uploadEvents:this.events;for(let[n,r]of a)n===e&&(this.logger.info(`found %d listener(s) for "%s" event, calling...`,r.length,e),r.forEach(e=>e.call(t,i)))}toFetchApiRequest(e){this.logger.info(`converting request to a Fetch API Request...`);let t=e instanceof Document?e.documentElement.innerText:e,n=new Vr(this.url.href,{method:this.method,headers:this.requestHeaders,credentials:this.request.withCredentials?`include`:`same-origin`,body:[`GET`,`HEAD`].includes(this.method.toUpperCase())?null:t});return Z(n,`headers`,Li(n.headers,{methodCall:([e,t],r)=>{switch(e){case`append`:case`set`:{let[e,n]=t;this.request.setRequestHeader(e,n);break}case`delete`:{let[e]=t;console.warn(`XMLHttpRequest: Cannot remove a "${e}" header from the Fetch API representation of the "${n.method} ${n.url}" request. XMLHttpRequest headers cannot be removed.`);break}}return r()}})),Gr(n,this.request),this.logger.info(`converted request to a Fetch API Request!`,n),n}};function Ji(e){return typeof location>`u`?new URL(e):new URL(e.toString(),location.href)}function Z(e,t,n){Reflect.defineProperty(e,t,{writable:!0,enumerable:!0,value:n})}function Yi({emitter:e,logger:t}){return new Proxy(globalThis.XMLHttpRequest,{construct(n,r,i){t.info(`constructed new XMLHttpRequest`);let a=Reflect.construct(n,r,i),o=Object.getOwnPropertyDescriptors(n.prototype);for(let e in o)Reflect.defineProperty(a,e,o[e]);let s=new qi(a,t);return s.onRequest=async function({request:t,requestId:n}){let r=new Rr(t,{passthrough:()=>{this.logger.info(`no mocked response received, performing request as-is...`)},respondWith:async e=>{if(_i(e)){this.errorWith(TypeError(`Network error`));return}await this.respondWith(e)},errorWith:e=>{this.logger.info(`request errored!`,{error:e}),e instanceof Error&&this.errorWith(e)}});this.logger.info(`awaiting mocked response...`),this.logger.info(`emitting the "request" event for %s listener(s)...`,e.listenerCount(`request`)),await bi({request:t,requestId:n,controller:r,emitter:e})},s.onResponse=async function({response:t,isMockedResponse:n,request:r,requestId:i}){this.logger.info(`emitting the "response" event for %s listener(s)...`,e.listenerCount(`response`)),e.emit(`response`,{response:t,isMockedResponse:n,request:r,requestId:i})},s.request}})}var Xi=class e extends lr{static{this.symbol=Symbol.for(`xhr-interceptor`)}constructor(){super(e.symbol)}checkEnvironment(){return mr(`XMLHttpRequest`)}setup(){let e=this.logger.extend(`setup`);e.info(`patching global XMLHttpRequest...`),this.subscriptions.push(fr.applyPatch(globalThis,`XMLHttpRequest`,()=>Yi({emitter:this.emitter,logger:this.logger}))),e.info(`global XMLHttpRequest patched!`,globalThis.XMLHttpRequest.name)}},Zi=class extends On{constructor(e){super({interceptors:[new Xi,new Ai]}),this.options=e}options;enable(){super.enable(),this.options.quiet||this.#e()}disable(){super.disable(),this.options.quiet||this.#t()}#e(){console.groupCollapsed(`%c${v.formatMessage(`Mocking enabled (fallback mode).`)}`,`color:orangered;font-weight:bold;`),console.log(`%cDocumentation: %chttps://mswjs.io/docs`,`font-weight:bold`,`font-weight:normal`),console.log(`Found an issue? https://github.com/mswjs/msw/issues`),console.groupEnd()}#t(){console.log(`%c${v.formatMessage(`Mocking disabled.`)}`,`color:orangered;font-weight:bold;`)}},Qi=`/mockServiceWorker.js`;function $i(...e){L(!zn(),v.formatMessage("Failed to execute `setupWorker` in a non-browser environment"));let t=rn({sources:[],handlers:e});return{async start(e){if(e?.waitUntilReady!=null&&v.warn(`The "waitUntilReady" option has been deprecated. Please remove it from this "worker.start()" call. Follow the recommended Browser integration (https://mswjs.io/docs/integrations/browser) to eliminate any race conditions between the Service Worker registration and any requests made by your application on initial render.`),t.readyState===nn.ENABLED){v.warn(`Found a redundant "worker.start()" call. Note that starting the worker while mocking is already enabled will have no effect. Consider removing this "worker.start()" call.`);return}let n=Nr()?await di.from({serviceWorker:{url:e?.serviceWorker?.url?.toString()||Qi,options:e?.serviceWorker?.options},findWorker:e?.findWorker,quiet:e?.quiet}):new Zi({quiet:e?.quiet});if(t.configure({sources:[n,new On({interceptors:[new Mr]})],onUnhandledFrame:jn(()=>e?.onUnhandledRequest||`warn`),context:{quiet:e?.quiet}}),await t.enable(),n instanceof di){let[,e]=await n.workerPromise;return e}},stop(){if(t.readyState===nn.DISABLED){v.warn(`Found a redundant "worker.stop()" call. Notice that stopping the worker after it has already been stopped has no effect. Consider removing this "worker.stop()" call.`);return}t.disable(),window.postMessage({type:`msw/worker:stop`})},events:t.events,use:t.use.bind(t),resetHandlers:t.resetHandlers.bind(t),restoreHandlers:t.restoreHandlers.bind(t),listHandlers:t.listHandlers.bind(t)}}function ea(e,t){return e.toLowerCase()===t.toLowerCase()}function ta(e){return e<300?`#69AB32`:e<400?`#F0BB4B`:`#E95F5D`}async function na(e){let t=await e.clone().text();return{url:new URL(e.url),method:e.method,headers:Object.fromEntries(e.headers.entries()),body:t}}var{message:ra}=rt;async function ia(e){let t=e.clone(),n=await t.text(),r=t.status||200;return{status:r,statusText:t.statusText||ra[r]||`OK`,headers:Object.fromEntries(t.headers.entries()),body:n}}var aa=Object.create,oa=Object.defineProperty,sa=Object.getOwnPropertyDescriptor,ca=Object.getOwnPropertyNames,la=Object.getPrototypeOf,ua=Object.prototype.hasOwnProperty,da=(e,t)=>function(){return t||(0,e[ca(e)[0]])((t={exports:{}}).exports,t),t.exports},fa=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let i of ca(t))!ua.call(e,i)&&i!==n&&oa(e,i,{get:()=>t[i],enumerable:!(r=sa(t,i))||r.enumerable});return e},pa=((e,t,n)=>(n=e==null?{}:aa(la(e)),fa(t||!e||!e.__esModule?oa(n,`default`,{value:e,enumerable:!0}):n,e)))(da({"node_modules/.pnpm/cookie@1.1.1/node_modules/cookie/dist/index.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.parseCookie=c,e.parse=c,e.stringifyCookie=l,e.stringifySetCookie=u,e.serialize=u,e.parseSetCookie=d,e.stringifySetCookie=u,e.serialize=u;var t=/^[\u0021-\u003A\u003C\u003E-\u007E]+$/,n=/^[\u0021-\u003A\u003C-\u007E]*$/,r=/^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i,i=/^[\u0020-\u003A\u003D-\u007E]*$/,a=/^-?\d+$/,o=Object.prototype.toString,s=(()=>{let e=function(){};return e.prototype=Object.create(null),e})();function c(e,t){let n=new s,r=e.length;if(r<2)return n;let i=t?.decode||h,a=0;do{let t=p(e,a,r);if(t===-1)break;let o=f(e,a,r);if(t>o){a=e.lastIndexOf(`;`,t-1)+1;continue}let s=m(e,a,t);n[s]===void 0&&(n[s]=i(m(e,t+1,o))),a=o+1}while(a<r);return n}function l(e,r){let i=r?.encode||encodeURIComponent,a=[];for(let r of Object.keys(e)){let o=e[r];if(o===void 0)continue;if(!t.test(r))throw TypeError(`cookie name is invalid: ${r}`);let s=i(o);if(!n.test(s))throw TypeError(`cookie val is invalid: ${o}`);a.push(`${r}=${s}`)}return a.join(`; `)}function u(e,a,o){let s=typeof e==`object`?e:{...o,name:e,value:String(a)},c=(typeof a==`object`?a:o)?.encode||encodeURIComponent;if(!t.test(s.name))throw TypeError(`argument name is invalid: ${s.name}`);let l=s.value?c(s.value):``;if(!n.test(l))throw TypeError(`argument val is invalid: ${s.value}`);let u=s.name+`=`+l;if(s.maxAge!==void 0){if(!Number.isInteger(s.maxAge))throw TypeError(`option maxAge is invalid: ${s.maxAge}`);u+=`; Max-Age=`+s.maxAge}if(s.domain){if(!r.test(s.domain))throw TypeError(`option domain is invalid: ${s.domain}`);u+=`; Domain=`+s.domain}if(s.path){if(!i.test(s.path))throw TypeError(`option path is invalid: ${s.path}`);u+=`; Path=`+s.path}if(s.expires){if(!g(s.expires)||!Number.isFinite(s.expires.valueOf()))throw TypeError(`option expires is invalid: ${s.expires}`);u+=`; Expires=`+s.expires.toUTCString()}if(s.httpOnly&&(u+=`; HttpOnly`),s.secure&&(u+=`; Secure`),s.partitioned&&(u+=`; Partitioned`),s.priority)switch(typeof s.priority==`string`?s.priority.toLowerCase():void 0){case`low`:u+=`; Priority=Low`;break;case`medium`:u+=`; Priority=Medium`;break;case`high`:u+=`; Priority=High`;break;default:throw TypeError(`option priority is invalid: ${s.priority}`)}if(s.sameSite)switch(typeof s.sameSite==`string`?s.sameSite.toLowerCase():s.sameSite){case!0:case`strict`:u+=`; SameSite=Strict`;break;case`lax`:u+=`; SameSite=Lax`;break;case`none`:u+=`; SameSite=None`;break;default:throw TypeError(`option sameSite is invalid: ${s.sameSite}`)}return u}function d(e,t){let n=t?.decode||h,r=e.length,i=f(e,0,r),o=p(e,0,i),s=o===-1?{name:``,value:n(m(e,0,i))}:{name:m(e,0,o),value:n(m(e,o+1,i))},c=i+1;for(;c<r;){let t=f(e,c,r),n=p(e,c,t),i=n===-1?m(e,c,t):m(e,c,n),o=n===-1?void 0:m(e,n+1,t);switch(i.toLowerCase()){case`httponly`:s.httpOnly=!0;break;case`secure`:s.secure=!0;break;case`partitioned`:s.partitioned=!0;break;case`domain`:s.domain=o;break;case`path`:s.path=o;break;case`max-age`:o&&a.test(o)&&(s.maxAge=Number(o));break;case`expires`:if(!o)break;let e=new Date(o);Number.isFinite(e.valueOf())&&(s.expires=e);break;case`priority`:if(!o)break;let t=o.toLowerCase();(t===`low`||t===`medium`||t===`high`)&&(s.priority=t);break;case`samesite`:if(!o)break;let n=o.toLowerCase();(n===`lax`||n===`strict`||n===`none`)&&(s.sameSite=n);break}c=t+1}return s}function f(e,t,n){let r=e.indexOf(`;`,t);return r===-1?n:r}function p(e,t,n){let r=e.indexOf(`=`,t);return r<n?r:-1}function m(e,t,n){let r=t,i=n;do{let t=e.charCodeAt(r);if(t!==32&&t!==9)break}while(++r<i);for(;i>r;){let t=e.charCodeAt(i-1);if(t!==32&&t!==9)break;i--}return e.slice(r,i)}function h(e){if(e.indexOf(`%`)===-1)return e;try{return decodeURIComponent(e)}catch{return e}}function g(e){return o.call(e)===`[object Date]`}}})(),1),ma=pa.default||pa,ha=ma.parse,ga=ma.serialize;function _a(e){let t=ha(e),n={};for(let e in t)t[e]!==void 0&&(n[e]=t[e]);return n}function va(){return _a(document.cookie)}function ya(e){if(typeof document>`u`||typeof location>`u`)return{};switch(e.credentials){case`same-origin`:{let t=new URL(e.url);return location.origin===t.origin?va():{}}case`include`:return va();default:return{}}}function ba(e){let t=e.headers.get(`cookie`),n=t?_a(t):{},r=ya(e);for(let t in r)e.headers.append(`cookie`,ga(t,r[t]));let i=vt.getCookies(e.url),a=Object.fromEntries(i.map(e=>[e.key,e.value]));for(let t of i)e.headers.append(`cookie`,t.toString());return{...r,...a,...n}}var Q=(e=>(e.HEAD=`HEAD`,e.GET=`GET`,e.POST=`POST`,e.PUT=`PUT`,e.PATCH=`PATCH`,e.OPTIONS=`OPTIONS`,e.DELETE=`DELETE`,e))(Q||{}),xa=class extends mt{constructor(e,t,n,r){let i=typeof t==`function`?`[custom predicate]`:t;super({info:{header:`${e}${i?` ${i}`:``}`,path:t,method:e},resolver:n,options:r}),this.checkRedundantQueryParameters()}checkRedundantQueryParameters(){let{method:e,path:t}=this.info;!t||t instanceof RegExp||typeof t==`function`||Pt(t)!==t&&v.warn(`Found a redundant usage of query parameters in the request handler URL for "${e} ${t}". Please match against a path instead and access query parameters using "new URL(request.url).searchParams" instead. Learn more: https://mswjs.io/docs/http/intercepting-requests#querysearch-parameters`)}async parse(e){let t=new URL(e.request.url),n=ba(e.request);if(typeof this.info.path==`function`){let t=await this.info.path({request:e.request,cookies:n});return{match:typeof t==`boolean`?{matches:t,params:{}}:t,cookies:n}}return{match:this.info.path?zt(t,this.info.path,e.resolutionContext?.baseUrl):{matches:!1,params:{}},cookies:n}}async predicate(e){let t=this.matchMethod(e.request.method),n=e.parsedResult.match.matches;return t&&n}matchMethod(e){return this.info.method instanceof RegExp?this.info.method.test(e):ea(this.info.method,e)}extendResolverArgs(e){return{params:e.parsedResult.match?.params||{},cookies:e.parsedResult.cookies}}async log(e){let t=ke(e.request.url),n=await na(e.request),r=await ia(e.response),i=ta(r.status);console.groupCollapsed(v.formatMessage(`${Bt()} ${e.request.method} ${t} (%c${r.status} ${r.statusText}%c)`),`color:${i}`,`color:inherit`),console.log(`Request`,n),console.log(`Handler:`,this),console.log(`Response`,r),console.groupEnd()}};function $(e){return(t,n,r={})=>new xa(e,t,n,r)}var Sa={all:$(/.+/),head:$(Q.HEAD),get:$(Q.GET),post:$(Q.POST),put:$(Q.PUT),delete:$(Q.DELETE),patch:$(Q.PATCH),options:$(Q.OPTIONS)};function Ca(e){return Vt(e)&&typeof Reflect.get(e,`ref`)==`function`&&typeof Reflect.get(e,`unref`)==`function`}var wa=2147483647;function Ta(){return b()?5:Math.floor(Math.random()*300+100)}async function Ea(e){let t;if(typeof e==`string`)switch(e){case`infinite`:t=wa;break;case`real`:t=Ta();break;default:throw Error(`Failed to delay a response: unknown delay mode "${e}". Please make sure you provide one of the supported modes ("real", "infinite") or a number.`)}else if(e===void 0)t=Ta();else{if(e>2147483647)throw Error(`Failed to delay a response: provided delay duration (${e}) exceeds the maximum allowed duration for "setTimeout" (${wa}). This will cause the response to be returned immediately. Please use a number within the allowed range to delay the response by exact duration, or consider the "infinite" delay mode to delay the response indefinitely.`);t=e}return new Promise(e=>{let n=setTimeout(e,t);t===2147483647&&b()&&Ca(n)&&n.unref()})}function Da(){return new Response(null,{status:302,statusText:`Passthrough`,headers:{"x-msw-intention":`passthrough`}})}var Oa={description:`Reference responses for the capabilities endpoint the host queries at stage 2. The endpoint does not exist yet - defining it is OpenHands/automation#262. Field names here are the contract that setup.requires.features, the trigger kinds in setup.form.triggers, and the cron and timezone field types are written against.`,endpoint:{method:`GET`,path:`/v1/capabilities`},responses:{supported:{description:`A deployment that is publicly reachable and can run every archetype.`,status:200,body:{ready:!0,triggerKinds:[`cron`,`event`],eventSources:[`github`],eventTypes:[`issue_comment.created`,`pull_request.opened`,`pull_request.labeled`,`pull_request_review_comment.created`,`push`],triggers:{cron:{minIntervalSeconds:300,timezones:[`UTC`,`America/Los_Angeles`,`America/New_York`,`Asia/Tokyo`,`Europe/London`]},event:{filterLanguage:`jmespath`,filterFunctions:[`contains`,`ends_with`,`glob`,`icontains`,`lower`,`regex`,`starts_with`,`upper`]}},features:[`conversationDispatch`,`mcpTools`,`presetPlugin`,`presetPrompt`,`repoClone`,`webhookDelivery`]}},cronOnly:{description:`A deployment that is not reachable from the public internet, so external services cannot deliver webhooks to it. Scheduled polling is the documented alternative - see skills/openhands-automation/SKILL.md.`,status:200,body:{ready:!0,triggerKinds:[`cron`],eventSources:[],eventTypes:[],triggers:{cron:{minIntervalSeconds:300,timezones:[`UTC`]}},features:[`conversationDispatch`,`mcpTools`,`presetPrompt`,`repoClone`]}},notReady:{description:`The automation service is reachable but not accepting work. It offers no features and no trigger kinds, so every setup block is blocked.`,status:200,body:{ready:!1,triggerKinds:[],eventSources:[],eventTypes:[],triggers:{},features:[]}}}};export{$i as a,Sa as i,Da as n,ut as o,Ea as r,Oa as t};
@@ -1 +0,0 @@
1
- import{a as e,t}from"./rolldown-runtime-Cyuzqnbw.js";import{St as n,bt as r}from"./vendor-styling-Ck5D_A2Q.js";import{A as i,C as a,D as o,E as s,M as c,N as l,S as u,T as d,b as f,d as p,h as m,k as h,m as g,s as _,v,w as y,x as b,y as x}from"./vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~lq5hicxx-cHFhpUBq.js";var S=e(n(),1);[...p],new TextEncoder,S.Component;function C({state:e,routes:t,getRouteInfo:n,location:r,basename:a,isSpaMode:o}){let s={...e,loaderData:{...e.loaderData}},l=i(t,r,a);if(l)for(let e of l){let t=e.route.id,r=n(t);c(t,r.clientLoader,r.hasLoader,o)&&(r.hasHydrateFallback||!r.hasLoader)?delete s.loaderData[t]:r.hasLoader||(s.loaderData[t]=null)}return s}var w=e(r(),1);function T(e){return S.createElement(m,{flushSync:w.flushSync,...e})}var E=null,D=null;function O(){if(!E&&window.__reactRouterContext&&window.__reactRouterManifest&&window.__reactRouterRouteModules){if(window.__reactRouterManifest.sri===!0){let e=document.querySelector(`script[rr-importmap]`);if(e?.textContent)try{window.__reactRouterManifest.sri=JSON.parse(e.textContent).integrity}catch(e){console.error(`Failed to parse import map`,e)}}E={context:window.__reactRouterContext,manifest:window.__reactRouterManifest,routeModules:window.__reactRouterRouteModules,stateDecodingPromise:void 0,router:void 0,routerInitialized:!1}}}function k({getContext:e,instrumentations:t}){if(O(),!E)throw Error("You must be using the SSR features of React Router in order to skip passing a `router` prop to `<RouterProvider>`");let n=E;if(!E.stateDecodingPromise){let e=E.context.stream;o(e,`No stream found for single fetch decoding`),E.context.stream=void 0,E.stateDecodingPromise=a(e,window).then(e=>{E.context.state=e.value,n.stateDecodingPromise.value=!0}).catch(e=>{n.stateDecodingPromise.error=e})}if(E.stateDecodingPromise.error)throw E.stateDecodingPromise.error;if(!E.stateDecodingPromise.value)throw E.stateDecodingPromise;let r=x(E.manifest.routes,E.routeModules,E.context.state,E.context.ssr,E.context.isSpaMode),i;if(E.context.isSpaMode){let{loaderData:e}=E.context.state;E.manifest.routes.root?.hasLoader&&e&&`root`in e&&(i={loaderData:{root:e.root}})}else i=C({state:E.context.state,routes:r,getRouteInfo:e=>({clientLoader:E.routeModules[e]?.clientLoader,hasLoader:E.manifest.routes[e]?.hasLoader===!0,hasHydrateFallback:E.routeModules[e]?.HydrateFallback!=null}),location:window.location,basename:window.__reactRouterContext?.basename,isSpaMode:E.context.isSpaMode});window.history.state&&window.history.state.masked&&window.history.replaceState({...window.history.state,masked:void 0},``);let c=u({routes:r,history:v(),basename:E.context.basename,getContext:e,hydrationData:i,hydrationRouteProperties:s,instrumentations:t,mapRouteProperties:h,future:{v8_passThroughRequests:E.context.future.v8_passThroughRequests},dataStrategy:d(()=>c,E.manifest,E.routeModules,E.context.ssr,E.context.basename,E.context.future.v8_trailingSlashAwareDataRequests),patchRoutesOnNavigation:y(()=>c,E.manifest,E.routeModules,E.context.ssr,E.context.routeDiscovery,E.context.isSpaMode,E.context.basename)});return E.router=c,c.state.initialized&&(E.routerInitialized=!0,c.initialize()),c.createRoutesForHMR=f,window.__reactRouterDataRouter=c,c}function A(e){D||=k({getContext:e.getContext,instrumentations:e.instrumentations});let[t,n]=S.useState(void 0);S.useEffect(()=>{},[]),S.useEffect(()=>{},[t]);let[r,i]=S.useState(D.state.location);return S.useLayoutEffect(()=>{E&&E.router&&!E.routerInitialized&&(E.routerInitialized=!0,E.router.initialize())},[]),S.useLayoutEffect(()=>{if(E&&E.router)return E.router.subscribe(e=>{e.location!==r&&i(e.location)})},[r]),o(E,`ssrInfo unavailable for HydratedRouter`),l(D,E.manifest,E.routeModules,E.context.ssr,E.context.routeDiscovery,E.context.isSpaMode),S.createElement(S.Fragment,null,S.createElement(_.Provider,{value:{manifest:E.manifest,routeModules:E.routeModules,future:E.context.future,criticalCss:t,ssr:E.context.ssr,isSpaMode:E.context.isSpaMode,routeDiscovery:E.context.routeDiscovery}},S.createElement(g,{location:r},S.createElement(T,{router:D,useTransitions:e.useTransitions,onError:e.onError}))),S.createElement(S.Fragment,null))}b();var j=t((e=>{function t(e,t){var n=e.length;e.push(t);a:for(;0<n;){var r=n-1>>>1,a=e[r];if(0<i(a,t))e[r]=t,e[n]=a,n=r;else break a}}function n(e){return e.length===0?null:e[0]}function r(e){if(e.length===0)return null;var t=e[0],n=e.pop();if(n!==t){e[0]=n;a:for(var r=0,a=e.length,o=a>>>1;r<o;){var s=2*(r+1)-1,c=e[s],l=s+1,u=e[l];if(0>i(c,n))l<a&&0>i(u,c)?(e[r]=u,e[l]=n,r=l):(e[r]=c,e[s]=n,r=s);else if(l<a&&0>i(u,n))e[r]=u,e[l]=n,r=l;else break a}}return t}function i(e,t){var n=e.sortIndex-t.sortIndex;return n===0?e.id-t.id:n}if(e.unstable_now=void 0,typeof performance==`object`&&typeof performance.now==`function`){var a=performance;e.unstable_now=function(){return a.now()}}else{var o=Date,s=o.now();e.unstable_now=function(){return o.now()-s}}var c=[],l=[],u=1,d=null,f=3,p=!1,m=!1,h=!1,g=!1,_=typeof setTimeout==`function`?setTimeout:null,v=typeof clearTimeout==`function`?clearTimeout:null,y=typeof setImmediate<`u`?setImmediate:null;function b(e){for(var i=n(l);i!==null;){if(i.callback===null)r(l);else if(i.startTime<=e)r(l),i.sortIndex=i.expirationTime,t(c,i);else break;i=n(l)}}function x(e){if(h=!1,b(e),!m)if(n(c)!==null)m=!0,S||(S=!0,O());else{var t=n(l);t!==null&&j(x,t.startTime-e)}}var S=!1,C=-1,w=5,T=-1;function E(){return g?!0:!(e.unstable_now()-T<w)}function D(){if(g=!1,S){var t=e.unstable_now();T=t;var i=!0;try{a:{m=!1,h&&(h=!1,v(C),C=-1),p=!0;var a=f;try{b:{for(b(t),d=n(c);d!==null&&!(d.expirationTime>t&&E());){var o=d.callback;if(typeof o==`function`){d.callback=null,f=d.priorityLevel;var s=o(d.expirationTime<=t);if(t=e.unstable_now(),typeof s==`function`){d.callback=s,b(t),i=!0;break b}d===n(c)&&r(c),b(t)}else r(c);d=n(c)}if(d!==null)i=!0;else{var u=n(l);u!==null&&j(x,u.startTime-t),i=!1}}break a}finally{d=null,f=a,p=!1}i=void 0}}finally{i?O():S=!1}}}var O;if(typeof y==`function`)O=function(){y(D)};else if(typeof MessageChannel<`u`){var k=new MessageChannel,A=k.port2;k.port1.onmessage=D,O=function(){A.postMessage(null)}}else O=function(){_(D,0)};function j(t,n){C=_(function(){t(e.unstable_now())},n)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(e){e.callback=null},e.unstable_forceFrameRate=function(e){0>e||125<e?console.error(`forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported`):w=0<e?Math.floor(1e3/e):5},e.unstable_getCurrentPriorityLevel=function(){return f},e.unstable_next=function(e){switch(f){case 1:case 2:case 3:var t=3;break;default:t=f}var n=f;f=t;try{return e()}finally{f=n}},e.unstable_requestPaint=function(){g=!0},e.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=f;f=e;try{return t()}finally{f=n}},e.unstable_scheduleCallback=function(r,i,a){var o=e.unstable_now();switch(typeof a==`object`&&a?(a=a.delay,a=typeof a==`number`&&0<a?o+a:o):a=o,r){case 1:var s=-1;break;case 2:s=250;break;case 5:s=1073741823;break;case 4:s=1e4;break;default:s=5e3}return s=a+s,r={id:u++,callback:i,priorityLevel:r,startTime:a,expirationTime:s,sortIndex:-1},a>o?(r.sortIndex=a,t(l,r),n(c)===null&&r===n(l)&&(h?(v(C),C=-1):h=!0,j(x,a-o))):(r.sortIndex=s,t(c,r),m||p||(m=!0,S||(S=!0,O()))),r},e.unstable_shouldYield=E,e.unstable_wrapCallback=function(e){var t=f;return function(){var n=f;f=t;try{return e.apply(this,arguments)}finally{f=n}}}})),M=t(((e,t)=>{t.exports=j()}));export{A as n,M as t};