flujo-ai 3.22.0 → 3.23.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 (241) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-build-manifest.json +133 -133
  3. package/.next/app-path-routes-manifest.json +6 -6
  4. package/.next/build-manifest.json +5 -5
  5. package/.next/prerender-manifest.json +12 -12
  6. package/.next/react-loadable-manifest.json +6 -6
  7. package/.next/server/app/_not-found/page.js +1 -1
  8. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  9. package/.next/server/app/_not-found.html +1 -1
  10. package/.next/server/app/_not-found.rsc +1 -1
  11. package/.next/server/app/api/approvals/[id]/route.js +1 -1
  12. package/.next/server/app/api/approvals/[id]/route.js.nft.json +1 -1
  13. package/.next/server/app/api/approvals/[id]/route_client-reference-manifest.js +1 -1
  14. package/.next/server/app/api/approvals/route.js.nft.json +1 -1
  15. package/.next/server/app/api/approvals/route_client-reference-manifest.js +1 -1
  16. package/.next/server/app/api/backup/route.js +1 -1
  17. package/.next/server/app/api/backup/route.js.nft.json +1 -1
  18. package/.next/server/app/api/backup/route_client-reference-manifest.js +1 -1
  19. package/.next/server/app/api/browse/route.js +1 -1
  20. package/.next/server/app/api/browse/route_client-reference-manifest.js +1 -1
  21. package/.next/server/app/api/bugs/enhance/route.js.nft.json +1 -1
  22. package/.next/server/app/api/bugs/enhance/route_client-reference-manifest.js +1 -1
  23. package/.next/server/app/api/cwd/route.js +1 -1
  24. package/.next/server/app/api/cwd/route_client-reference-manifest.js +1 -1
  25. package/.next/server/app/api/encryption/secure/route.js.nft.json +1 -1
  26. package/.next/server/app/api/encryption/secure/route_client-reference-manifest.js +1 -1
  27. package/.next/server/app/api/env/route_client-reference-manifest.js +1 -1
  28. package/.next/server/app/api/flow/[id]/route.js.nft.json +1 -1
  29. package/.next/server/app/api/flow/[id]/route_client-reference-manifest.js +1 -1
  30. package/.next/server/app/api/flow/compile/route.js.nft.json +1 -1
  31. package/.next/server/app/api/flow/compile/route_client-reference-manifest.js +1 -1
  32. package/.next/server/app/api/flow/generate/route.js.nft.json +1 -1
  33. package/.next/server/app/api/flow/generate/route_client-reference-manifest.js +1 -1
  34. package/.next/server/app/api/flow/improve/route.js.nft.json +1 -1
  35. package/.next/server/app/api/flow/improve/route_client-reference-manifest.js +1 -1
  36. package/.next/server/app/api/flow/prompt-renderer/route.js.nft.json +1 -1
  37. package/.next/server/app/api/flow/prompt-renderer/route_client-reference-manifest.js +1 -1
  38. package/.next/server/app/api/flow/quick-chat/route.js.nft.json +1 -1
  39. package/.next/server/app/api/flow/quick-chat/route_client-reference-manifest.js +1 -1
  40. package/.next/server/app/api/flow/repair/route.js.nft.json +1 -1
  41. package/.next/server/app/api/flow/repair/route_client-reference-manifest.js +1 -1
  42. package/.next/server/app/api/flow/route.js.nft.json +1 -1
  43. package/.next/server/app/api/flow/route_client-reference-manifest.js +1 -1
  44. package/.next/server/app/api/git/route.js +5 -5
  45. package/.next/server/app/api/git/route_client-reference-manifest.js +1 -1
  46. package/.next/server/app/api/init/route.js.nft.json +1 -1
  47. package/.next/server/app/api/init/route_client-reference-manifest.js +1 -1
  48. package/.next/server/app/api/local-models/capability/route_client-reference-manifest.js +1 -1
  49. package/.next/server/app/api/local-models/pull/route_client-reference-manifest.js +1 -1
  50. package/.next/server/app/api/local-models/suggest/route_client-reference-manifest.js +1 -1
  51. package/.next/server/app/api/mcp/cancel/route.js.nft.json +1 -1
  52. package/.next/server/app/api/mcp/cancel/route_client-reference-manifest.js +1 -1
  53. package/.next/server/app/api/mcp/servers/[name]/prompts/get/route.js.nft.json +1 -1
  54. package/.next/server/app/api/mcp/servers/[name]/prompts/get/route_client-reference-manifest.js +1 -1
  55. package/.next/server/app/api/mcp/servers/[name]/prompts/route.js.nft.json +1 -1
  56. package/.next/server/app/api/mcp/servers/[name]/prompts/route_client-reference-manifest.js +1 -1
  57. package/.next/server/app/api/mcp/servers/[name]/resources/read/route.js.nft.json +1 -1
  58. package/.next/server/app/api/mcp/servers/[name]/resources/read/route_client-reference-manifest.js +1 -1
  59. package/.next/server/app/api/mcp/servers/[name]/resources/route.js.nft.json +1 -1
  60. package/.next/server/app/api/mcp/servers/[name]/resources/route_client-reference-manifest.js +1 -1
  61. package/.next/server/app/api/mcp/servers/[name]/route.js.nft.json +1 -1
  62. package/.next/server/app/api/mcp/servers/[name]/route_client-reference-manifest.js +1 -1
  63. package/.next/server/app/api/mcp/servers/[name]/status/route.js.nft.json +1 -1
  64. package/.next/server/app/api/mcp/servers/[name]/status/route_client-reference-manifest.js +1 -1
  65. package/.next/server/app/api/mcp/servers/[name]/tools/[toolName]/route.js.nft.json +1 -1
  66. package/.next/server/app/api/mcp/servers/[name]/tools/[toolName]/route_client-reference-manifest.js +1 -1
  67. package/.next/server/app/api/mcp/servers/[name]/tools/route.js.nft.json +1 -1
  68. package/.next/server/app/api/mcp/servers/[name]/tools/route_client-reference-manifest.js +1 -1
  69. package/.next/server/app/api/mcp/servers/route.js.nft.json +1 -1
  70. package/.next/server/app/api/mcp/servers/route_client-reference-manifest.js +1 -1
  71. package/.next/server/app/api/mcp/test-connection/route.js +1 -1
  72. package/.next/server/app/api/mcp/test-connection/route.js.nft.json +1 -1
  73. package/.next/server/app/api/mcp/test-connection/route_client-reference-manifest.js +1 -1
  74. package/.next/server/app/api/mcp/test-connection/stream/route.js +1 -1
  75. package/.next/server/app/api/mcp/test-connection/stream/route.js.nft.json +1 -1
  76. package/.next/server/app/api/mcp/test-connection/stream/route_client-reference-manifest.js +1 -1
  77. package/.next/server/app/api/mcp-registry/route.js.nft.json +1 -1
  78. package/.next/server/app/api/mcp-registry/route_client-reference-manifest.js +1 -1
  79. package/.next/server/app/api/mcp-registry/spotlight/route_client-reference-manifest.js +1 -1
  80. package/.next/server/app/api/model/[id]/route.js.nft.json +1 -1
  81. package/.next/server/app/api/model/[id]/route_client-reference-manifest.js +1 -1
  82. package/.next/server/app/api/model/provider/route.js.nft.json +1 -1
  83. package/.next/server/app/api/model/provider/route_client-reference-manifest.js +1 -1
  84. package/.next/server/app/api/model/route.js.nft.json +1 -1
  85. package/.next/server/app/api/model/route_client-reference-manifest.js +1 -1
  86. package/.next/server/app/api/model/test/route.js.nft.json +1 -1
  87. package/.next/server/app/api/model/test/route_client-reference-manifest.js +1 -1
  88. package/.next/server/app/api/oauth/callback/route_client-reference-manifest.js +1 -1
  89. package/.next/server/app/api/oauth/initiate/route_client-reference-manifest.js +1 -1
  90. package/.next/server/app/api/oauth/reset/route.js.nft.json +1 -1
  91. package/.next/server/app/api/oauth/reset/route_client-reference-manifest.js +1 -1
  92. package/.next/server/app/api/planned-executions/[id]/route.js.nft.json +1 -1
  93. package/.next/server/app/api/planned-executions/[id]/route_client-reference-manifest.js +1 -1
  94. package/.next/server/app/api/planned-executions/[id]/run/route.js.nft.json +1 -1
  95. package/.next/server/app/api/planned-executions/[id]/run/route_client-reference-manifest.js +1 -1
  96. package/.next/server/app/api/planned-executions/[id]/runs/route.js.nft.json +1 -1
  97. package/.next/server/app/api/planned-executions/[id]/runs/route_client-reference-manifest.js +1 -1
  98. package/.next/server/app/api/planned-executions/preview-schedule/route_client-reference-manifest.js +1 -1
  99. package/.next/server/app/api/planned-executions/reconcile/route.js.nft.json +1 -1
  100. package/.next/server/app/api/planned-executions/reconcile/route_client-reference-manifest.js +1 -1
  101. package/.next/server/app/api/planned-executions/route.js.nft.json +1 -1
  102. package/.next/server/app/api/planned-executions/route_client-reference-manifest.js +1 -1
  103. package/.next/server/app/api/restore/route.js +1 -1
  104. package/.next/server/app/api/restore/route.js.nft.json +1 -1
  105. package/.next/server/app/api/restore/route_client-reference-manifest.js +1 -1
  106. package/.next/server/app/api/runs/active/route.js.nft.json +1 -1
  107. package/.next/server/app/api/runs/active/route_client-reference-manifest.js +1 -1
  108. package/.next/server/app/api/storage/route_client-reference-manifest.js +1 -1
  109. package/.next/server/app/api/update/route.js +1 -1
  110. package/.next/server/app/api/update/route_client-reference-manifest.js +1 -1
  111. package/.next/server/app/api/waves/route.js.nft.json +1 -1
  112. package/.next/server/app/api/waves/route_client-reference-manifest.js +1 -1
  113. package/.next/server/app/api/webhooks/[id]/route.js +1 -1
  114. package/.next/server/app/api/webhooks/[id]/route.js.nft.json +1 -1
  115. package/.next/server/app/api/webhooks/[id]/route_client-reference-manifest.js +1 -1
  116. package/.next/server/app/chat/page.js +8 -8
  117. package/.next/server/app/chat/page_client-reference-manifest.js +1 -1
  118. package/.next/server/app/chat.html +1 -1
  119. package/.next/server/app/chat.rsc +2 -2
  120. package/.next/server/app/docs/page.js +8 -2
  121. package/.next/server/app/docs/page_client-reference-manifest.js +1 -1
  122. package/.next/server/app/docs.html +1 -1
  123. package/.next/server/app/docs.rsc +2 -2
  124. package/.next/server/app/executions/page_client-reference-manifest.js +1 -1
  125. package/.next/server/app/executions.html +1 -1
  126. package/.next/server/app/executions.rsc +2 -2
  127. package/.next/server/app/flows/page.js +3 -3
  128. package/.next/server/app/flows/page_client-reference-manifest.js +1 -1
  129. package/.next/server/app/flows.html +1 -1
  130. package/.next/server/app/flows.rsc +2 -2
  131. package/.next/server/app/index.html +1 -1
  132. package/.next/server/app/index.rsc +2 -2
  133. package/.next/server/app/mcp/page.js +5 -5
  134. package/.next/server/app/mcp/page_client-reference-manifest.js +1 -1
  135. package/.next/server/app/mcp-flows/route.js +1 -1
  136. package/.next/server/app/mcp-flows/route.js.nft.json +1 -1
  137. package/.next/server/app/mcp-flows/route_client-reference-manifest.js +1 -1
  138. package/.next/server/app/mcp-proxy/[server]/route.js +1 -1
  139. package/.next/server/app/mcp-proxy/[server]/route.js.nft.json +1 -1
  140. package/.next/server/app/mcp-proxy/[server]/route_client-reference-manifest.js +1 -1
  141. package/.next/server/app/mcp.html +1 -1
  142. package/.next/server/app/mcp.rsc +2 -2
  143. package/.next/server/app/models/page.js +1 -1
  144. package/.next/server/app/models/page.js.nft.json +1 -1
  145. package/.next/server/app/models/page_client-reference-manifest.js +1 -1
  146. package/.next/server/app/page.js +1 -1
  147. package/.next/server/app/page_client-reference-manifest.js +1 -1
  148. package/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  149. package/.next/server/app/settings.html +1 -1
  150. package/.next/server/app/settings.rsc +2 -2
  151. package/.next/server/app/v1/chat/completions/route.js +1 -1
  152. package/.next/server/app/v1/chat/completions/route.js.nft.json +1 -1
  153. package/.next/server/app/v1/chat/completions/route_client-reference-manifest.js +1 -1
  154. package/.next/server/app/v1/chat/conversations/[conversationId]/breakpoints/route.js.nft.json +1 -1
  155. package/.next/server/app/v1/chat/conversations/[conversationId]/breakpoints/route_client-reference-manifest.js +1 -1
  156. package/.next/server/app/v1/chat/conversations/[conversationId]/cancel/route.js.nft.json +1 -1
  157. package/.next/server/app/v1/chat/conversations/[conversationId]/cancel/route_client-reference-manifest.js +1 -1
  158. package/.next/server/app/v1/chat/conversations/[conversationId]/debug/continue/route.js +1 -1
  159. package/.next/server/app/v1/chat/conversations/[conversationId]/debug/continue/route.js.nft.json +1 -1
  160. package/.next/server/app/v1/chat/conversations/[conversationId]/debug/continue/route_client-reference-manifest.js +1 -1
  161. package/.next/server/app/v1/chat/conversations/[conversationId]/debug/step/route.js +1 -1
  162. package/.next/server/app/v1/chat/conversations/[conversationId]/debug/step/route.js.nft.json +1 -1
  163. package/.next/server/app/v1/chat/conversations/[conversationId]/debug/step/route_client-reference-manifest.js +1 -1
  164. package/.next/server/app/v1/chat/conversations/[conversationId]/edit-state/route.js.nft.json +1 -1
  165. package/.next/server/app/v1/chat/conversations/[conversationId]/edit-state/route_client-reference-manifest.js +1 -1
  166. package/.next/server/app/v1/chat/conversations/[conversationId]/events/route.js +2 -2
  167. package/.next/server/app/v1/chat/conversations/[conversationId]/events/route.js.nft.json +1 -1
  168. package/.next/server/app/v1/chat/conversations/[conversationId]/events/route_client-reference-manifest.js +1 -1
  169. package/.next/server/app/v1/chat/conversations/[conversationId]/resources/route_client-reference-manifest.js +1 -1
  170. package/.next/server/app/v1/chat/conversations/[conversationId]/respond/route.js +1 -1
  171. package/.next/server/app/v1/chat/conversations/[conversationId]/respond/route.js.nft.json +1 -1
  172. package/.next/server/app/v1/chat/conversations/[conversationId]/respond/route_client-reference-manifest.js +1 -1
  173. package/.next/server/app/v1/chat/conversations/[conversationId]/route.js +1 -1
  174. package/.next/server/app/v1/chat/conversations/[conversationId]/route.js.nft.json +1 -1
  175. package/.next/server/app/v1/chat/conversations/[conversationId]/route_client-reference-manifest.js +1 -1
  176. package/.next/server/app/v1/chat/conversations/route.js.nft.json +1 -1
  177. package/.next/server/app/v1/chat/conversations/route_client-reference-manifest.js +1 -1
  178. package/.next/server/app/v1/models/route.js.nft.json +1 -1
  179. package/.next/server/app/v1/models/route_client-reference-manifest.js +1 -1
  180. package/.next/server/app/waves/page.js +1 -1
  181. package/.next/server/app/waves/page_client-reference-manifest.js +1 -1
  182. package/.next/server/app/waves.html +1 -1
  183. package/.next/server/app/waves.rsc +1 -1
  184. package/.next/server/app-paths-manifest.json +6 -6
  185. package/.next/server/chunks/1083.js +1 -1
  186. package/.next/server/chunks/1197.js +1 -1
  187. package/.next/server/chunks/1226.js +1 -1
  188. package/.next/server/chunks/1373.js +1 -1
  189. package/.next/server/chunks/264.js +2 -2
  190. package/.next/server/chunks/2823.js +6 -0
  191. package/.next/server/chunks/2859.js +1 -1
  192. package/.next/server/chunks/289.js +1 -1
  193. package/.next/server/chunks/3774.js +1 -1
  194. package/.next/server/chunks/3823.js +4 -4
  195. package/.next/server/chunks/3984.js +4 -4
  196. package/.next/server/chunks/4239.js +1 -1
  197. package/.next/server/chunks/4561.js +4 -4
  198. package/.next/server/chunks/4637.js +8 -2
  199. package/.next/server/chunks/4671.js +1 -1
  200. package/.next/server/chunks/472.js +1 -1
  201. package/.next/server/chunks/4771.js +2 -2
  202. package/.next/server/chunks/5708.js +7 -1
  203. package/.next/server/chunks/5734.js +4 -4
  204. package/.next/server/chunks/6996.js +3 -3
  205. package/.next/server/chunks/701.js +1 -1
  206. package/.next/server/chunks/7362.js +8 -8
  207. package/.next/server/chunks/7506.js +1 -1
  208. package/.next/server/chunks/7769.js +6 -0
  209. package/.next/server/chunks/8739.js +1 -1
  210. package/.next/server/chunks/9509.js +2 -2
  211. package/.next/server/functions-config-manifest.json +2 -2
  212. package/.next/server/instrumentation.js.nft.json +1 -1
  213. package/.next/server/middleware-build-manifest.js +1 -1
  214. package/.next/server/middleware-react-loadable-manifest.js +1 -1
  215. package/.next/server/pages/404.html +1 -1
  216. package/.next/server/pages/500.html +1 -1
  217. package/.next/server/server-reference-manifest.js +1 -1
  218. package/.next/server/server-reference-manifest.json +1 -1
  219. package/.next/static/chunks/6016.8201fa15ab6aa90e.js +1 -0
  220. package/.next/static/chunks/{7583.7cb88044a5212b29.js → 7583.7af90b94e3c263f2.js} +1 -1
  221. package/.next/static/chunks/812-624e93f4c0f671c7.js +1 -0
  222. package/.next/static/chunks/{9164-3d34bf7eab100ac7.js → 9164-d9f1abba780231e0.js} +1 -1
  223. package/.next/static/chunks/app/chat/page-ea6752144d35c892.js +1 -0
  224. package/.next/static/chunks/app/docs/page-935b0386917b91bb.js +1 -0
  225. package/.next/static/chunks/app/executions/page-d72027b0179e8fa2.js +1 -0
  226. package/.next/static/chunks/app/flows/page-1844e86dd43fa285.js +1 -0
  227. package/.next/static/chunks/app/mcp/{page-770a870b3d40766b.js → page-b6866f49f76a6801.js} +1 -1
  228. package/.next/static/chunks/{webpack-dded92b3d7b33173.js → webpack-f4a471ab560eb19e.js} +1 -1
  229. package/.next/trace +8 -9
  230. package/README.md +1 -1
  231. package/package.json +1 -1
  232. package/.next/server/chunks/7214.js +0 -6
  233. package/.next/server/chunks/7463.js +0 -6
  234. package/.next/static/chunks/6016.a157e5bde2faa652.js +0 -1
  235. package/.next/static/chunks/812-181496bc32cd0cd3.js +0 -1
  236. package/.next/static/chunks/app/chat/page-3a3efba25b59a747.js +0 -1
  237. package/.next/static/chunks/app/docs/page-84a92c3d5d8d5e13.js +0 -1
  238. package/.next/static/chunks/app/executions/page-445afbf37819e3ce.js +0 -1
  239. package/.next/static/chunks/app/flows/page-74ebca19957cc6db.js +0 -1
  240. /package/.next/static/{MMmWHUQ3UAJBdRB7G1zGj → WRUzIBdypUJvv0xAct8qc}/_buildManifest.js +0 -0
  241. /package/.next/static/{MMmWHUQ3UAJBdRB7G1zGj → WRUzIBdypUJvv0xAct8qc}/_ssgManifest.js +0 -0
@@ -61,7 +61,7 @@ ${eg(a)}`);return{...h,id:g,type:f,function:{...k,name:j,arguments:i}}})}}:{...f
61
61
  }
62
62
  }
63
63
 
64
- `)}b.write("payload.value = newResult;"),b.write("return payload;");let j=b.compile();return(b,c)=>j(a,b,c)})(b.shape)),e=c(e,l),n)?W([],o,e,l,d,a):e:g(e,l):(e.issues.push({expected:"object",code:"invalid_type",input:o,inst:a}),e)}});function Z(a,b,c,d){for(let c of a)if(0===c.issues.length)return b.value=c.value,b;let f=a.filter(a=>!i.QH(a));return 1===f.length?(b.value=f[0].value,f[0]):(b.issues.push({code:"invalid_union",input:b.value,inst:c,errors:a.map(a=>a.issues.map(a=>i.iR(a,d,e.$W())))}),b)}let $=e.xI("$ZodUnion",(a,b)=>{k.init(a,b),i.gJ(a._zod,"optin",()=>b.options.some(a=>"optional"===a._zod.optin)?"optional":void 0),i.gJ(a._zod,"optout",()=>b.options.some(a=>"optional"===a._zod.optout)?"optional":void 0),i.gJ(a._zod,"values",()=>{if(b.options.every(a=>a._zod.values))return new Set(b.options.flatMap(a=>Array.from(a._zod.values)))}),i.gJ(a._zod,"pattern",()=>{if(b.options.every(a=>a._zod.pattern)){let a=b.options.map(a=>a._zod.pattern);return RegExp(`^(${a.map(a=>i.p6(a.source)).join("|")})$`)}});let c=1===b.options.length?b.options[0]._zod.run:null;a._zod.parse=(d,e)=>{if(c)return c(d,e);let f=!1,g=[];for(let a of b.options){let b=a._zod.run({value:d.value,issues:[]},e);if(b instanceof Promise)g.push(b),f=!0;else{if(0===b.issues.length)return b;g.push(b)}}return f?Promise.all(g).then(b=>Z(b,d,a,e)):Z(g,d,a,e)}}),_=e.xI("$ZodDiscriminatedUnion",(a,b)=>{b.inclusive=!1,$.init(a,b);let c=a._zod.parse;i.gJ(a._zod,"propValues",()=>{let a={};for(let c of b.options){let d=c._zod.propValues;if(!d||0===Object.keys(d).length)throw Error(`Invalid discriminated union option at index "${b.options.indexOf(c)}"`);for(let[b,c]of Object.entries(d))for(let d of(a[b]||(a[b]=new Set),c))a[b].add(d)}return a});let d=i.PO(()=>{let a=b.options,c=new Map;for(let d of a){let a=d._zod.propValues?.[b.discriminator];if(!a||0===a.size)throw Error(`Invalid discriminated union option at index "${b.options.indexOf(d)}"`);for(let b of a){if(c.has(b))throw Error(`Duplicate discriminator value "${String(b)}"`);c.set(b,d)}}return c});a._zod.parse=(e,f)=>{let g=e.value;if(!i.Gv(g))return e.issues.push({code:"invalid_type",expected:"object",input:g,inst:a}),e;let h=d.value.get(g?.[b.discriminator]);return h?h._zod.run(e,f):b.unionFallback||"backward"===f.direction?c(e,f):(e.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:b.discriminator,options:Array.from(d.value.keys()),input:g,path:[b.discriminator],inst:a}),e)}}),aa=e.xI("$ZodIntersection",(a,b)=>{k.init(a,b),a._zod.parse=(a,c)=>{let d=a.value,e=b.left._zod.run({value:d,issues:[]},c),f=b.right._zod.run({value:d,issues:[]},c);return e instanceof Promise||f instanceof Promise?Promise.all([e,f]).then(([b,c])=>ab(a,b,c)):ab(a,e,f)}});function ab(a,b,c){let d,e=new Map;for(let c of b.issues)if("unrecognized_keys"===c.code)for(let a of(d??(d=c),c.keys))e.has(a)||e.set(a,{}),e.get(a).l=!0;else a.issues.push(c);for(let b of c.issues)if("unrecognized_keys"===b.code)for(let a of b.keys)e.has(a)||e.set(a,{}),e.get(a).r=!0;else a.issues.push(b);let f=[...e].filter(([,a])=>a.l&&a.r).map(([a])=>a);if(f.length&&d&&a.issues.push({...d,keys:f}),i.QH(a))return a;let g=function a(b,c){if(b===c||b instanceof Date&&c instanceof Date&&+b==+c)return{valid:!0,data:b};if(i.Qd(b)&&i.Qd(c)){let d=Object.keys(c),e=Object.keys(b).filter(a=>-1!==d.indexOf(a)),f={...b,...c};for(let d of e){let e=a(b[d],c[d]);if(!e.valid)return{valid:!1,mergeErrorPath:[d,...e.mergeErrorPath]};f[d]=e.data}return{valid:!0,data:f}}if(Array.isArray(b)&&Array.isArray(c)){if(b.length!==c.length)return{valid:!1,mergeErrorPath:[]};let d=[];for(let e=0;e<b.length;e++){let f=a(b[e],c[e]);if(!f.valid)return{valid:!1,mergeErrorPath:[e,...f.mergeErrorPath]};d.push(f.data)}return{valid:!0,data:d}}return{valid:!1,mergeErrorPath:[]}}(b.value,c.value);if(!g.valid)throw Error(`Unmergable intersection. Error path: ${JSON.stringify(g.mergeErrorPath)}`);return a.value=g.data,a}let ac=e.xI("$ZodRecord",(a,b)=>{k.init(a,b),a._zod.parse=(c,d)=>{let f=c.value;if(!i.Qd(f))return c.issues.push({expected:"record",code:"invalid_type",input:f,inst:a}),c;let g=[],j=b.keyType._zod.values;if(j){let h;c.value={};let k=new Set;for(let h of j)if("string"==typeof h||"number"==typeof h||"symbol"==typeof h){k.add("number"==typeof h?h.toString():h);let j=b.keyType._zod.run({value:h,issues:[]},d);if(j instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(j.issues.length){c.issues.push({code:"invalid_key",origin:"record",issues:j.issues.map(a=>i.iR(a,d,e.$W())),input:h,path:[h],inst:a});continue}let l=j.value,m=b.valueType._zod.run({value:f[h],issues:[]},d);m instanceof Promise?g.push(m.then(a=>{a.issues.length&&c.issues.push(...i.lQ(h,a.issues)),c.value[l]=a.value})):(m.issues.length&&c.issues.push(...i.lQ(h,m.issues)),c.value[l]=m.value)}for(let a in f)k.has(a)||(h=h??[]).push(a);h&&h.length>0&&c.issues.push({code:"unrecognized_keys",input:f,inst:a,keys:h})}else for(let j of(c.value={},Reflect.ownKeys(f))){if("__proto__"===j||!Object.prototype.propertyIsEnumerable.call(f,j))continue;let k=b.keyType._zod.run({value:j,issues:[]},d);if(k instanceof Promise)throw Error("Async schemas not supported in object keys currently");if("string"==typeof j&&h.ai.test(j)&&k.issues.length){let a=b.keyType._zod.run({value:Number(j),issues:[]},d);if(a instanceof Promise)throw Error("Async schemas not supported in object keys currently");0===a.issues.length&&(k=a)}if(k.issues.length){"loose"===b.mode?c.value[j]=f[j]:c.issues.push({code:"invalid_key",origin:"record",issues:k.issues.map(a=>i.iR(a,d,e.$W())),input:j,path:[j],inst:a});continue}let l=b.valueType._zod.run({value:f[j],issues:[]},d);l instanceof Promise?g.push(l.then(a=>{a.issues.length&&c.issues.push(...i.lQ(j,a.issues)),c.value[k.value]=a.value})):(l.issues.length&&c.issues.push(...i.lQ(j,l.issues)),c.value[k.value]=l.value)}return g.length?Promise.all(g).then(()=>c):c}}),ad=e.xI("$ZodEnum",(a,b)=>{k.init(a,b);let c=i.w5(b.entries),d=new Set(c);a._zod.values=d,a._zod.pattern=RegExp(`^(${c.filter(a=>i.qQ.has(typeof a)).map(a=>"string"==typeof a?i.$f(a):a.toString()).join("|")})$`),a._zod.parse=(b,e)=>{let f=b.value;return d.has(f)||b.issues.push({code:"invalid_value",values:c,input:f,inst:a}),b}}),ae=e.xI("$ZodLiteral",(a,b)=>{if(k.init(a,b),0===b.values.length)throw Error("Cannot create literal schema with no valid values");let c=new Set(b.values);a._zod.values=c,a._zod.pattern=RegExp(`^(${b.values.map(a=>"string"==typeof a?i.$f(a):a?i.$f(a.toString()):String(a)).join("|")})$`),a._zod.parse=(d,e)=>{let f=d.value;return c.has(f)||d.issues.push({code:"invalid_value",values:b.values,input:f,inst:a}),d}}),af=e.xI("$ZodTransform",(a,b)=>{k.init(a,b),a._zod.optin="optional",a._zod.parse=(c,d)=>{if("backward"===d.direction)throw new e.cV(a.constructor.name);let f=b.transform(c.value,c);if(d.async)return(f instanceof Promise?f:Promise.resolve(f)).then(a=>(c.value=a,c.fallback=!0,c));if(f instanceof Promise)throw new e.GT;return c.value=f,c.fallback=!0,c}});function ag(a,b){return void 0===b&&(a.issues.length||a.fallback)?{issues:[],value:void 0}:a}let ah=e.xI("$ZodOptional",(a,b)=>{k.init(a,b),a._zod.optin="optional",a._zod.optout="optional",i.gJ(a._zod,"values",()=>b.innerType._zod.values?new Set([...b.innerType._zod.values,void 0]):void 0),i.gJ(a._zod,"pattern",()=>{let a=b.innerType._zod.pattern;return a?RegExp(`^(${i.p6(a.source)})?$`):void 0}),a._zod.parse=(a,c)=>{if("optional"===b.innerType._zod.optin){let d=a.value,e=b.innerType._zod.run(a,c);return e instanceof Promise?e.then(a=>ag(a,d)):ag(e,d)}return void 0===a.value?a:b.innerType._zod.run(a,c)}}),ai=e.xI("$ZodExactOptional",(a,b)=>{ah.init(a,b),i.gJ(a._zod,"values",()=>b.innerType._zod.values),i.gJ(a._zod,"pattern",()=>b.innerType._zod.pattern),a._zod.parse=(a,c)=>b.innerType._zod.run(a,c)}),aj=e.xI("$ZodNullable",(a,b)=>{k.init(a,b),i.gJ(a._zod,"optin",()=>b.innerType._zod.optin),i.gJ(a._zod,"optout",()=>b.innerType._zod.optout),i.gJ(a._zod,"pattern",()=>{let a=b.innerType._zod.pattern;return a?RegExp(`^(${i.p6(a.source)}|null)$`):void 0}),i.gJ(a._zod,"values",()=>b.innerType._zod.values?new Set([...b.innerType._zod.values,null]):void 0),a._zod.parse=(a,c)=>null===a.value?a:b.innerType._zod.run(a,c)}),ak=e.xI("$ZodDefault",(a,b)=>{k.init(a,b),a._zod.optin="optional",i.gJ(a._zod,"values",()=>b.innerType._zod.values),a._zod.parse=(a,c)=>{if("backward"===c.direction)return b.innerType._zod.run(a,c);if(void 0===a.value)return a.value=b.defaultValue,a;let d=b.innerType._zod.run(a,c);return d instanceof Promise?d.then(a=>al(a,b)):al(d,b)}});function al(a,b){return void 0===a.value&&(a.value=b.defaultValue),a}let am=e.xI("$ZodPrefault",(a,b)=>{k.init(a,b),a._zod.optin="optional",i.gJ(a._zod,"values",()=>b.innerType._zod.values),a._zod.parse=(a,c)=>("backward"===c.direction||void 0===a.value&&(a.value=b.defaultValue),b.innerType._zod.run(a,c))}),an=e.xI("$ZodNonOptional",(a,b)=>{k.init(a,b),i.gJ(a._zod,"values",()=>{let a=b.innerType._zod.values;return a?new Set([...a].filter(a=>void 0!==a)):void 0}),a._zod.parse=(c,d)=>{let e=b.innerType._zod.run(c,d);return e instanceof Promise?e.then(b=>ao(b,a)):ao(e,a)}});function ao(a,b){return a.issues.length||void 0!==a.value||a.issues.push({code:"invalid_type",expected:"nonoptional",input:a.value,inst:b}),a}let ap=e.xI("$ZodCatch",(a,b)=>{k.init(a,b),a._zod.optin="optional",i.gJ(a._zod,"optout",()=>b.innerType._zod.optout),i.gJ(a._zod,"values",()=>b.innerType._zod.values),a._zod.parse=(a,c)=>{if("backward"===c.direction)return b.innerType._zod.run(a,c);let d=b.innerType._zod.run(a,c);return d instanceof Promise?d.then(d=>(a.value=d.value,d.issues.length&&(a.value=b.catchValue({...a,error:{issues:d.issues.map(a=>i.iR(a,c,e.$W()))},input:a.value}),a.issues=[],a.fallback=!0),a)):(a.value=d.value,d.issues.length&&(a.value=b.catchValue({...a,error:{issues:d.issues.map(a=>i.iR(a,c,e.$W()))},input:a.value}),a.issues=[],a.fallback=!0),a)}}),aq=e.xI("$ZodPipe",(a,b)=>{k.init(a,b),i.gJ(a._zod,"values",()=>b.in._zod.values),i.gJ(a._zod,"optin",()=>b.in._zod.optin),i.gJ(a._zod,"optout",()=>b.out._zod.optout),i.gJ(a._zod,"propValues",()=>b.in._zod.propValues),a._zod.parse=(a,c)=>{if("backward"===c.direction){let d=b.out._zod.run(a,c);return d instanceof Promise?d.then(a=>ar(a,b.in,c)):ar(d,b.in,c)}let d=b.in._zod.run(a,c);return d instanceof Promise?d.then(a=>ar(a,b.out,c)):ar(d,b.out,c)}});function ar(a,b,c){return a.issues.length?(a.aborted=!0,a):b._zod.run({value:a.value,issues:a.issues,fallback:a.fallback},c)}let as=e.xI("$ZodPreprocess",(a,b)=>{aq.init(a,b)}),at=e.xI("$ZodReadonly",(a,b)=>{k.init(a,b),i.gJ(a._zod,"propValues",()=>b.innerType._zod.propValues),i.gJ(a._zod,"values",()=>b.innerType._zod.values),i.gJ(a._zod,"optin",()=>b.innerType?._zod?.optin),i.gJ(a._zod,"optout",()=>b.innerType?._zod?.optout),a._zod.parse=(a,c)=>{if("backward"===c.direction)return b.innerType._zod.run(a,c);let d=b.innerType._zod.run(a,c);return d instanceof Promise?d.then(au):au(d)}});function au(a){return a.value=Object.freeze(a.value),a}let av=e.xI("$ZodCustom",(a,b)=>{d.QP.init(a,b),k.init(a,b),a._zod.parse=(a,b)=>a,a._zod.check=c=>{let d=c.value,e=b.fn(d);if(e instanceof Promise)return e.then(b=>aw(b,c,d,a));aw(e,c,d,a)}});function aw(a,b,c,d){if(!a){let a={code:"custom",input:c,inst:d,path:[...d._zod.def.path??[]],continue:!d._zod.def.abort};d._zod.def.params&&(a.params=d._zod.def.params),b.issues.push(i.sn(a))}}},4090:a=>{"use strict";var b=Object.prototype.toString,c=Math.max,d=function(a,b){for(var c=[],d=0;d<a.length;d+=1)c[d]=a[d];for(var e=0;e<b.length;e+=1)c[e+a.length]=b[e];return c},e=function(a,b){for(var c=[],d=b||0,e=0;d<a.length;d+=1,e+=1)c[e]=a[d];return c},f=function(a,b){for(var c="",d=0;d<a.length;d+=1)c+=a[d],d+1<a.length&&(c+=b);return c};a.exports=function(a){var g,h=this;if("function"!=typeof h||"[object Function]"!==b.apply(h))throw TypeError("Function.prototype.bind called on incompatible "+h);for(var i=e(arguments,1),j=c(0,h.length-i.length),k=[],l=0;l<j;l++)k[l]="$"+l;if(g=Function("binder","return function ("+f(k,",")+"){ return binder.apply(this,arguments); }")(function(){if(this instanceof g){var b=h.apply(this,d(i,arguments));return Object(b)===b?b:this}return h.apply(a,d(i,arguments))}),h.prototype){var m=function(){};m.prototype=h.prototype,g.prototype=new m,m.prototype=null}return g}},4177:function(a,b,c){var d;d=c(67278),c(47973),function(){var a=d.lib.Hasher,b=d.x64,c=b.Word,e=b.WordArray,f=d.algo;function g(){return c.create.apply(c,arguments)}for(var h=[g(0x428a2f98,0xd728ae22),g(0x71374491,0x23ef65cd),g(0xb5c0fbcf,0xec4d3b2f),g(0xe9b5dba5,0x8189dbbc),g(0x3956c25b,0xf348b538),g(0x59f111f1,0xb605d019),g(0x923f82a4,0xaf194f9b),g(0xab1c5ed5,0xda6d8118),g(0xd807aa98,0xa3030242),g(0x12835b01,0x45706fbe),g(0x243185be,0x4ee4b28c),g(0x550c7dc3,0xd5ffb4e2),g(0x72be5d74,0xf27b896f),g(0x80deb1fe,0x3b1696b1),g(0x9bdc06a7,0x25c71235),g(0xc19bf174,0xcf692694),g(0xe49b69c1,0x9ef14ad2),g(0xefbe4786,0x384f25e3),g(0xfc19dc6,0x8b8cd5b5),g(0x240ca1cc,0x77ac9c65),g(0x2de92c6f,0x592b0275),g(0x4a7484aa,0x6ea6e483),g(0x5cb0a9dc,0xbd41fbd4),g(0x76f988da,0x831153b5),g(0x983e5152,0xee66dfab),g(0xa831c66d,0x2db43210),g(0xb00327c8,0x98fb213f),g(0xbf597fc7,0xbeef0ee4),g(0xc6e00bf3,0x3da88fc2),g(0xd5a79147,0x930aa725),g(0x6ca6351,0xe003826f),g(0x14292967,0xa0e6e70),g(0x27b70a85,0x46d22ffc),g(0x2e1b2138,0x5c26c926),g(0x4d2c6dfc,0x5ac42aed),g(0x53380d13,0x9d95b3df),g(0x650a7354,0x8baf63de),g(0x766a0abb,0x3c77b2a8),g(0x81c2c92e,0x47edaee6),g(0x92722c85,0x1482353b),g(0xa2bfe8a1,0x4cf10364),g(0xa81a664b,0xbc423001),g(0xc24b8b70,0xd0f89791),g(0xc76c51a3,0x654be30),g(0xd192e819,0xd6ef5218),g(0xd6990624,0x5565a910),g(0xf40e3585,0x5771202a),g(0x106aa070,0x32bbd1b8),g(0x19a4c116,0xb8d2d0c8),g(0x1e376c08,0x5141ab53),g(0x2748774c,0xdf8eeb99),g(0x34b0bcb5,0xe19b48a8),g(0x391c0cb3,0xc5c95a63),g(0x4ed8aa4a,0xe3418acb),g(0x5b9cca4f,0x7763e373),g(0x682e6ff3,0xd6b2b8a3),g(0x748f82ee,0x5defb2fc),g(0x78a5636f,0x43172f60),g(0x84c87814,0xa1f0ab72),g(0x8cc70208,0x1a6439ec),g(0x90befffa,0x23631e28),g(0xa4506ceb,0xde82bde9),g(0xbef9a3f7,0xb2c67915),g(0xc67178f2,0xe372532b),g(0xca273ece,0xea26619c),g(0xd186b8c7,0x21c0c207),g(0xeada7dd6,0xcde0eb1e),g(0xf57d4f7f,0xee6ed178),g(0x6f067aa,0x72176fba),g(0xa637dc5,0xa2c898a6),g(0x113f9804,0xbef90dae),g(0x1b710b35,0x131c471b),g(0x28db77f5,0x23047d84),g(0x32caab7b,0x40c72493),g(0x3c9ebe0a,0x15c9bebc),g(0x431d67c4,0x9c100d4c),g(0x4cc5d4be,0xcb3e42b6),g(0x597f299c,0xfc657e2a),g(0x5fcb6fab,0x3ad6faec),g(0x6c44198c,0x4a475817)],i=[],j=0;j<80;j++)i[j]=g();var k=f.SHA512=a.extend({_doReset:function(){this._hash=new e.init([new c.init(0x6a09e667,0xf3bcc908),new c.init(0xbb67ae85,0x84caa73b),new c.init(0x3c6ef372,0xfe94f82b),new c.init(0xa54ff53a,0x5f1d36f1),new c.init(0x510e527f,0xade682d1),new c.init(0x9b05688c,0x2b3e6c1f),new c.init(0x1f83d9ab,0xfb41bd6b),new c.init(0x5be0cd19,0x137e2179)])},_doProcessBlock:function(a,b){for(var c=this._hash.words,d=c[0],e=c[1],f=c[2],g=c[3],j=c[4],k=c[5],l=c[6],m=c[7],n=d.high,o=d.low,p=e.high,q=e.low,r=f.high,s=f.low,t=g.high,u=g.low,v=j.high,w=j.low,x=k.high,y=k.low,z=l.high,A=l.low,B=m.high,C=m.low,D=n,E=o,F=p,G=q,H=r,I=s,J=t,K=u,L=v,M=w,N=x,O=y,P=z,Q=A,R=B,S=C,T=0;T<80;T++){var U,V,W=i[T];if(T<16)V=W.high=0|a[b+2*T],U=W.low=0|a[b+2*T+1];else{var X=i[T-15],Y=X.high,Z=X.low,$=(Y>>>1|Z<<31)^(Y>>>8|Z<<24)^Y>>>7,_=(Z>>>1|Y<<31)^(Z>>>8|Y<<24)^(Z>>>7|Y<<25),aa=i[T-2],ab=aa.high,ac=aa.low,ad=(ab>>>19|ac<<13)^(ab<<3|ac>>>29)^ab>>>6,ae=(ac>>>19|ab<<13)^(ac<<3|ab>>>29)^(ac>>>6|ab<<26),af=i[T-7],ag=af.high,ah=af.low,ai=i[T-16],aj=ai.high,ak=ai.low;V=$+ag+ +((U=_+ah)>>>0<_>>>0),U+=ae,V=V+ad+ +(U>>>0<ae>>>0),U+=ak,W.high=V=V+aj+ +(U>>>0<ak>>>0),W.low=U}var al=L&N^~L&P,am=M&O^~M&Q,an=D&F^D&H^F&H,ao=E&G^E&I^G&I,ap=(D>>>28|E<<4)^(D<<30|E>>>2)^(D<<25|E>>>7),aq=(E>>>28|D<<4)^(E<<30|D>>>2)^(E<<25|D>>>7),ar=(L>>>14|M<<18)^(L>>>18|M<<14)^(L<<23|M>>>9),as=(M>>>14|L<<18)^(M>>>18|L<<14)^(M<<23|L>>>9),at=h[T],au=at.high,av=at.low,aw=S+as,ax=R+ar+ +(aw>>>0<S>>>0),aw=aw+am,ax=ax+al+ +(aw>>>0<am>>>0),aw=aw+av,ax=ax+au+ +(aw>>>0<av>>>0),aw=aw+U,ax=ax+V+ +(aw>>>0<U>>>0),ay=aq+ao,az=ap+an+ +(ay>>>0<aq>>>0);R=P,S=Q,P=N,Q=O,N=L,O=M,L=J+ax+ +((M=K+aw|0)>>>0<K>>>0)|0,J=H,K=I,H=F,I=G,F=D,G=E,D=ax+az+ +((E=aw+ay|0)>>>0<aw>>>0)|0}o=d.low=o+E,d.high=n+D+ +(o>>>0<E>>>0),q=e.low=q+G,e.high=p+F+ +(q>>>0<G>>>0),s=f.low=s+I,f.high=r+H+ +(s>>>0<I>>>0),u=g.low=u+K,g.high=t+J+ +(u>>>0<K>>>0),w=j.low=w+M,j.high=v+L+ +(w>>>0<M>>>0),y=k.low=y+O,k.high=x+N+ +(y>>>0<O>>>0),A=l.low=A+Q,l.high=z+P+ +(A>>>0<Q>>>0),C=m.low=C+S,m.high=B+R+ +(C>>>0<S>>>0)},_doFinalize:function(){var a=this._data,b=a.words,c=8*this._nDataBytes,d=8*a.sigBytes;return b[d>>>5]|=128<<24-d%32,b[(d+128>>>10<<5)+30]=Math.floor(c/0x100000000),b[(d+128>>>10<<5)+31]=c,a.sigBytes=4*b.length,this._process(),this._hash.toX32()},clone:function(){var b=a.clone.call(this);return b._hash=this._hash.clone(),b},blockSize:32});d.SHA512=a._createHelper(k),d.HmacSHA512=a._createHmacHelper(k)}(),a.exports=d.SHA512},4313:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.GaxiosInterceptorManager=void 0;class c extends Set{}b.GaxiosInterceptorManager=c},4498:function(a,b,c){var d,e,f;d=c(67278),c(70522),d.mode.OFB=(f=(e=d.lib.BlockCipherMode.extend()).Encryptor=e.extend({processBlock:function(a,b){var c=this._cipher,d=c.blockSize,e=this._iv,f=this._keystream;e&&(f=this._keystream=e.slice(0),this._iv=void 0),c.encryptBlock(f,0);for(var g=0;g<d;g++)a[b+g]^=f[g]}}),e.Decryptor=f,e),a.exports=d.mode.OFB},4686:function(a,b,c){"use strict";let d;var e,f,g,h=this&&this.__createBinding||(Object.create?function(a,b,c,d){void 0===d&&(d=c);var e=Object.getOwnPropertyDescriptor(b,c);(!e||("get"in e?!b.__esModule:e.writable||e.configurable))&&(e={enumerable:!0,get:function(){return b[c]}}),Object.defineProperty(a,d,e)}:function(a,b,c,d){void 0===d&&(d=c),a[d]=b[c]}),i=this&&this.__setModuleDefault||(Object.create?function(a,b){Object.defineProperty(a,"default",{enumerable:!0,value:b})}:function(a,b){a.default=b}),j=this&&this.__importStar||(e=function(a){return(e=Object.getOwnPropertyNames||function(a){var b=[];for(var c in a)Object.prototype.hasOwnProperty.call(a,c)&&(b[b.length]=c);return b})(a)},function(a){if(a&&a.__esModule)return a;var b={};if(null!=a)for(var c=e(a),d=0;d<c.length;d++)"default"!==c[d]&&h(b,a,c[d]);return i(b,a),b});Object.defineProperty(b,"__esModule",{value:!0}),b.env=b.DebugLogBackendBase=b.placeholder=b.AdhocDebugLogger=b.LogSeverity=void 0,b.getNodeBackend=r,b.getDebugBackend=function(a){return new s(a)},b.getStructuredBackend=function(a){return new t(a)},b.setBackend=function(a){d=a,u.clear()},b.log=v;let k=c(94735),l=j(c(19771)),m=j(c(28354)),n=c(56066);(f=g||(b.LogSeverity=g={})).DEFAULT="DEFAULT",f.DEBUG="DEBUG",f.INFO="INFO",f.WARNING="WARNING",f.ERROR="ERROR";class o extends k.EventEmitter{constructor(a,b){super(),this.namespace=a,this.upstream=b,this.func=Object.assign(this.invoke.bind(this),{instance:this,on:(a,b)=>this.on(a,b)}),this.func.debug=(...a)=>this.invokeSeverity(g.DEBUG,...a),this.func.info=(...a)=>this.invokeSeverity(g.INFO,...a),this.func.warn=(...a)=>this.invokeSeverity(g.WARNING,...a),this.func.error=(...a)=>this.invokeSeverity(g.ERROR,...a),this.func.sublog=a=>v(a,this.func)}invoke(a,...b){if(this.upstream)try{this.upstream(a,...b)}catch(a){}try{this.emit("log",a,b)}catch(a){}}invokeSeverity(a,...b){this.invoke({severity:a},...b)}}b.AdhocDebugLogger=o,b.placeholder=new o("",()=>{}).func;class p{constructor(){var a;this.cached=new Map,this.filters=[],this.filtersSet=!1;let c=null!=(a=l.env[b.env.nodeEnables])?a:"*";"all"===c&&(c="*"),this.filters=c.split(",")}log(a,b,...c){try{this.filtersSet||(this.setFilters(),this.filtersSet=!0);let d=this.cached.get(a);d||(d=this.makeLogger(a),this.cached.set(a,d)),d(b,...c)}catch(a){console.error(a)}}}b.DebugLogBackendBase=p;class q extends p{constructor(){super(...arguments),this.enabledRegexp=/.*/g}isEnabled(a){return this.enabledRegexp.test(a)}makeLogger(a){return this.enabledRegexp.test(a)?(b,...c)=>{var d;let e,f=`${n.Colours.green}${a}${n.Colours.reset}`,h=`${n.Colours.yellow}${l.pid}${n.Colours.reset}`;switch(b.severity){case g.ERROR:e=`${n.Colours.red}${b.severity}${n.Colours.reset}`;break;case g.INFO:e=`${n.Colours.magenta}${b.severity}${n.Colours.reset}`;break;case g.WARNING:e=`${n.Colours.yellow}${b.severity}${n.Colours.reset}`;break;default:e=null!=(d=b.severity)?d:g.DEFAULT}let i=m.formatWithOptions({colors:n.Colours.enabled},...c),j=Object.assign({},b);delete j.severity;let k=Object.getOwnPropertyNames(j).length?JSON.stringify(j):"",o=k?`${n.Colours.grey}${k}${n.Colours.reset}`:"";console.error("%s [%s|%s] %s%s",h,f,e,i,k?` ${o}`:"")}:()=>{}}setFilters(){let a=this.filters.join(",").replace(/[|\\{}()[\]^$+?.]/g,"\\$&").replace(/\*/g,".*").replace(/,/g,"$|^");this.enabledRegexp=RegExp(`^${a}$`,"i")}}function r(){return new q}class s extends p{constructor(a){super(),this.debugPkg=a}makeLogger(a){let b=this.debugPkg(a);return(a,...c)=>{b(c[0],...c.slice(1))}}setFilters(){var a;let b=null!=(a=l.env.NODE_DEBUG)?a:"";l.env.NODE_DEBUG=`${b}${b?",":""}${this.filters.join(",")}`}}class t extends p{constructor(a){super(),this.upstream=null!=a?a:void 0}makeLogger(a){var b;let c=null==(b=this.upstream)?void 0:b.makeLogger(a);return(a,...b)=>{var d;let e=JSON.stringify(Object.assign({severity:null!=(d=a.severity)?d:g.INFO,message:m.format(...b)},a));c?c(a,e):console.log("%s",e)}}setFilters(){var a;null==(a=this.upstream)||a.setFilters()}}b.env={nodeEnables:"GOOGLE_SDK_NODE_LOGGING"};let u=new Map;function v(a,c){let e;if(!d&&!l.env[b.env.nodeEnables]||!a)return b.placeholder;c&&(a=`${c.instance.namespace}:${a}`);let f=u.get(a);if(f)return f.func;if(null===d)return b.placeholder;void 0===d&&(d=r());let g=new o(a,(b,...c)=>{if(e!==d){if(null===d)return;void 0===d&&(d=r()),e=d}null==d||d.log(a,b,...c)});return u.set(a,g),g.func}},5136:(a,b,c)=>{"use strict";let d=c(55591).Agent,e=c(21890),{INIT_SOCKET:f,CREATE_HTTPS_CONNECTION:g}=c(10358);class h extends e{constructor(a){super(a),this.defaultPort=443,this.protocol="https:",this.maxCachedSessions=this.options.maxCachedSessions,void 0===this.maxCachedSessions&&(this.maxCachedSessions=100),this._sessionCache={map:{},list:[]}}createConnection(a,b){let c=this[g](a,b);return this[f](c,a),c}}h.prototype[g]=d.prototype.createConnection,["getName","_getSession","_cacheSession","_evictSession"].forEach(function(a){"function"==typeof d.prototype[a]&&(h.prototype[a]=d.prototype[a])}),a.exports=h},5433:(a,b,c)=>{var d=c(44724),e=c(84833),f=c(68041);function g(a,b){return a<b?-1:+(a>b)}a.exports=function(a,b,c,g){var h=e(a,c);return d(a,b,h,function c(e,f){return e?void g(e,f):(h.index++,h.index<(h.keyedList||a).length)?void d(a,b,h,c):void g(null,h.results)}),f.bind(h,g)},a.exports.ascending=g,a.exports.descending=function(a,b){return -1*g(a,b)}},5550:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{normalizeAppPath:function(){return f},normalizeRscURL:function(){return g}});let d=c(35621),e=c(5619);function f(a){return(0,d.ensureLeadingSlash)(a.split("/").reduce((a,b,c,d)=>!b||(0,e.isGroupSegment)(b)||"@"===b[0]||("page"===b||"route"===b)&&c===d.length-1?a:a+"/"+b,""))}function g(a){return a.replace(/\.rsc($|\?)/,"$1")}},5619:(a,b)=>{"use strict";function c(a){return"("===a[0]&&a.endsWith(")")}function d(a){return a.startsWith("@")&&"@children"!==a}function e(a,b){if(a.includes(f)){let a=JSON.stringify(b);return"{}"!==a?f+"?"+a:f}return a}Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{DEFAULT_SEGMENT_KEY:function(){return g},PAGE_SEGMENT_KEY:function(){return f},addSearchParamsIfPageSegment:function(){return e},isGroupSegment:function(){return c},isParallelRouteSegment:function(){return d}});let f="__PAGE__",g="__DEFAULT__"},5984:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});let d=c(78140);b.default={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:a=>(0,d.validateTuple)(a,"items")}},6286:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.getRules=b.isJSONType=void 0;let c=new Set(["string","number","integer","boolean","null","object","array"]);b.isJSONType=function(a){return"string"==typeof a&&c.has(a)},b.getRules=function(){let a={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...a,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},a.number,a.string,a.array,a.object],post:{rules:[]},all:{},keywords:{}}}},6544:(a,b,c)=>{"use strict";c.d(b,{loadServerConfigs:()=>h,q:()=>i});var d=c(79111),e=c(89392);let f=(0,c(18230).h)("backend/services/mcp/config"),g=new Set(["streamable","sse","websocket"]);async function h(){f.debug("Entering loadServerConfigs method");try{let a=await (0,d.YM)(e.Z.MCP_SERVERS,{});return Object.entries(a).map(([a,b])=>{let c=b.transport||"stdio";g.has(c)&&function(a){if("string"!=typeof a)return!1;let b=a.trim();return"/"===b||"\\"===b||/^[A-Za-z]:[\\/]?$/.test(b)}(b.rootPath)&&(f.info(`Normalizing filesystem-root rootPath "${b.rootPath}" of remote server ${a} to mcp-servers/${a}`),b={...b,rootPath:`mcp-servers/${a}`});let d={name:a,disabled:!1,autoApprove:[],rootPath:"",env:{},_buildCommand:"",_installCommand:""};return"streamable"===c?{...d,...b,name:a,requestInit:b.requestInit&&"object"==typeof b.requestInit?b.requestInit:void 0,reconnectionOptions:b.reconnectionOptions&&"object"==typeof b.reconnectionOptions?b.reconnectionOptions:void 0,sessionId:b.sessionId||void 0,oauthClientId:b.oauthClientId||"",oauthClientSecret:b.oauthClientSecret||"",oauthScopes:b.oauthScopes||(b.oauthClientId||b.oauthClientInformation?["read"]:void 0),oauthClientMetadata:b.oauthClientMetadata,oauthClientInformation:b.oauthClientInformation,oauthTokens:b.oauthTokens,oauthCodeVerifier:b.oauthCodeVerifier}:"sse"===c?{...d,...b,name:a,eventSourceInit:b.eventSourceInit&&"object"==typeof b.eventSourceInit?b.eventSourceInit:void 0,requestInit:b.requestInit&&"object"==typeof b.requestInit?b.requestInit:void 0}:"websocket"===c?{...d,...b,name:a,websocketUrl:b.websocketUrl||""}:{...d,...b,name:a,command:b.command||"",args:b.args||[],stderr:b.stderr||"pipe"}})}catch(a){return f.warn("Failed to load server configs",a),{success:!1,error:`Failed to load server configs: ${a instanceof Error?a.message:"Unknown error"}`}}}async function i(a){f.debug("Entering saveConfig method");try{let b=Object.fromEntries(Array.from(a.entries()).filter(([,a])=>!0!==a.builtIn).map(([a,b])=>{let{name:c,...d}=b;return[a,d]}));return await (0,d.VH)(e.Z.MCP_SERVERS,b),{success:!0}}catch(a){return f.warn("Failed to save config",a),{success:!1,error:`Failed to save config: ${a instanceof Error?a.message:"Unknown error"}`}}}},7041:a=>{"use strict";a.exports="undefined"!=typeof Reflect&&Reflect.getPrototypeOf||null},7265:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.contentVocabulary=b.metadataVocabulary=void 0,b.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"],b.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]},7349:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});let d=c(31849),e=c(83593),f=c(73744);b.default={keyword:"enum",schemaType:"array",$data:!0,error:{message:"must be equal to one of the allowed values",params:({schemaCode:a})=>(0,d._)`{allowedValues: ${a}}`},code(a){let b,c,{gen:g,data:h,$data:i,schema:j,schemaCode:k,it:l}=a;if(!i&&0===j.length)throw Error("enum must have non-empty array");let m=j.length>=l.opts.loopEnum,n=()=>null!=b?b:b=(0,e.useFunc)(g,f.default);if(m||i)c=g.let("valid"),a.block$data(c,function(){g.assign(c,!1),g.forOf("v",k,a=>g.if((0,d._)`${n()}(${h}, ${a})`,()=>g.assign(c,!0).break()))});else{if(!Array.isArray(j))throw Error("ajv implementation error");let a=g.const("vSchema",k);c=(0,d.or)(...j.map((b,c)=>(function(a,b){let c=j[b];return"object"==typeof c&&null!==c?(0,d._)`${n()}(${h}, ${a}[${b}])`:(0,d._)`${h} === ${c}`})(a,c)))}a.pass(c)}}},7901:a=>{"use strict";a.exports=Math.floor},8560:(a,b,c)=>{"use strict";c.d(b,{l:()=>j,s:()=>k});var d=c(37067),e=c.n(d),f=c(44708),g=c.n(f),h=c(1191),i=c(14790);function j(a){if("requesty"===a)return{"HTTP-Referer":"https://flujo.com.co","X-Title":"FLUJO"}}function k(a){let{apiKey:b,baseURL:c,maxRetries:d=2,timeout:f=i.l,defaultHeaders:j}=a,k=!c||c.trim().toLowerCase().startsWith("https")?new(g()).Agent({keepAlive:!1}):new(e()).Agent({keepAlive:!1});return new h.Ay({apiKey:b,baseURL:c,httpAgent:k,maxRetries:d,timeout:f,...j?{defaultHeaders:j}:{}})}},8654:(a,b,c)=>{"use strict";a.exports=c(72886).vendored["react-rsc"].React},9216:(a,b,c)=>{"use strict";let d,e=c(21820),f=c(83997),g=c(28325),{env:h}=process;function i(a,b={}){var c;return 0!==(c=function(a,{streamIsTTY:b,sniffFlags:c=!0}={}){let f=function(){if("FORCE_COLOR"in h)return"true"===h.FORCE_COLOR?1:"false"===h.FORCE_COLOR?0:0===h.FORCE_COLOR.length?1:Math.min(Number.parseInt(h.FORCE_COLOR,10),3)}();void 0!==f&&(d=f);let i=c?d:f;if(0===i)return 0;if(c){if(g("color=16m")||g("color=full")||g("color=truecolor"))return 3;if(g("color=256"))return 2}if(a&&!b&&void 0===i)return 0;let j=i||0;if("dumb"===h.TERM)return j;if("win32"===process.platform){let a=e.release().split(".");return Number(a[0])>=10&&Number(a[2])>=10586?Number(a[2])>=14931?3:2:1}if("CI"in h)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE","DRONE"].some(a=>a in h)||"codeship"===h.CI_NAME?1:j;if("TEAMCITY_VERSION"in h)return+!!/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(h.TEAMCITY_VERSION);if("truecolor"===h.COLORTERM)return 3;if("TERM_PROGRAM"in h){let a=Number.parseInt((h.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(h.TERM_PROGRAM){case"iTerm.app":return a>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(h.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(h.TERM)||"COLORTERM"in h?1:j}(a,{streamIsTTY:a&&a.isTTY,...b}))&&{level:c,hasBasic:!0,has256:c>=2,has16m:c>=3}}g("no-color")||g("no-colors")||g("color=false")||g("color=never")?d=0:(g("color")||g("colors")||g("color=true")||g("color=always"))&&(d=1),a.exports={supportsColor:i,stdout:i({isTTY:f.isatty(1)}),stderr:i({isTTY:f.isatty(2)})}},9534:a=>{"use strict";let b=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),c=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u),d=RegExp.prototype.test.bind(/^[\da-f]{2}$/iu),e=RegExp.prototype.test.bind(/^[\da-z\-._~]$/iu),f=RegExp.prototype.test.bind(/^[\da-z\-._~!$&'()*+,;=:@/]$/iu);function g(a){let b="",c=0,d=0;for(d=0;d<a.length;d++)if(48!==(c=a[d].charCodeAt(0))){if(!(c>=48&&c<=57||c>=65&&c<=70||c>=97&&c<=102))return"";b+=a[d];break}for(d+=1;d<a.length;d++){if(!((c=a[d].charCodeAt(0))>=48&&c<=57||c>=65&&c<=70||c>=97&&c<=102))return"";b+=a[d]}return b}let h=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function i(a){return a.length=0,!0}function j(a,b,c){if(a.length){let d=g(a);if(""===d)return c.error=!0,!1;b.push(d),a.length=0}return!0}function k(a){if(2>function(a,b){let c=0;for(let b=0;b<a.length;b++)":"===a[b]&&c++;return c}(a,":"))return{host:a,isIPV6:!1};let b=function(a){let b=0,c={error:!1,address:"",zone:""},d=[],e=[],f=!1,h=!1,k=j;for(let g=0;g<a.length;g++){let j=a[g];if("["!==j&&"]"!==j)if(":"===j){if(!0===f&&(h=!0),!k(e,d,c))break;if(++b>7){c.error=!0;break}g>0&&":"===a[g-1]&&(f=!0),d.push(":");continue}else if("%"===j){if(!k(e,d,c))break;k=i}else{e.push(j);continue}}return e.length&&(k===i?c.zone=e.join(""):h?d.push(e.join("")):d.push(g(e))),c.address=d.join(""),c}(a);if(b.error)return{host:a,isIPV6:!1};{let a=b.address,c=b.address;return b.zone&&(a+="%"+b.zone,c+="%25"+b.zone),{host:a,isIPV6:!0,escapedHost:c}}}let l={"@":"%40","/":"%2F","?":"%3F","#":"%23",":":"%3A"},m=/[@/?#:]/g,n=/[@/?#]/g;function o(a,b){let c=b?n:m;return c.lastIndex=0,a.replace(c,a=>l[a])}a.exports={nonSimpleDomain:h,recomposeAuthority:function(a){let b=[];if(void 0!==a.userinfo&&(b.push(a.userinfo),b.push("@")),void 0!==a.host){let d=unescape(a.host);if(!c(d)){let a=k(d);d=!0===a.isIPV6?`[${a.escapedHost}]`:o(d,!1)}b.push(d)}return("number"==typeof a.port||"string"==typeof a.port)&&(b.push(":"),b.push(String(a.port))),b.length?b.join(""):void 0},reescapeHostDelimiters:o,normalizePercentEncoding:function(a,b=!1){if(-1===a.indexOf("%"))return a;let c="";for(let f=0;f<a.length;f++){if("%"===a[f]&&f+2<a.length){let g=a.slice(f+1,f+3);if(d(g)){let a=g.toUpperCase(),d=String.fromCharCode(parseInt(a,16));b&&e(d)?c+=d:c+="%"+a,f+=2;continue}}c+=a[f]}return c},normalizePathEncoding:function(a){let b="";for(let c=0;c<a.length;c++){if("%"===a[c]&&c+2<a.length){let f=a.slice(c+1,c+3);if(d(f)){let a=f.toUpperCase(),d=String.fromCharCode(parseInt(a,16));"."!==d&&e(d)?b+=d:b+="%"+a,c+=2;continue}}f(a[c])?b+=a[c]:b+=escape(a[c])}return b},escapePreservingEscapes:function(a){let b="";for(let c=0;c<a.length;c++){if("%"===a[c]&&c+2<a.length){let e=a.slice(c+1,c+3);if(d(e)){b+="%"+e.toUpperCase(),c+=2;continue}}b+=escape(a[c])}return b},removeDotSegments:function(a){let b=a,c=[],d=-1,e=0;for(;e=b.length;){if(1===e)if("."===b)break;else if("/"===b){c.push("/");break}else{c.push(b);break}if(2===e){if("."===b[0]){if("."===b[1])break;else if("/"===b[1]){b=b.slice(2);continue}}else if("/"===b[0]&&("."===b[1]||"/"===b[1])){c.push("/");break}}else if(3===e&&"/.."===b){0!==c.length&&c.pop(),c.push("/");break}if("."===b[0]){if("."===b[1]){if("/"===b[2]){b=b.slice(3);continue}}else if("/"===b[1]){b=b.slice(2);continue}}else if("/"===b[0]&&"."===b[1]){if("/"===b[2]){b=b.slice(2);continue}else if("."===b[2]&&"/"===b[3]){b=b.slice(3),0!==c.length&&c.pop();continue}}if(-1===(d=b.indexOf("/",1))){c.push(b);break}c.push(b.slice(0,d)),b=b.slice(d)}return c.join("")},isIPv4:c,isUUID:b,normalizeIPv6:k,stringArrayToHexStripped:g}},9583:(a,b,c)=>{a.exports=f,f.sync=function(a,b){return e(d.statSync(a),a,b)};var d=c(29021);function e(a,b,c){if(!a.isSymbolicLink()&&!a.isFile())return!1;var d=void 0!==c.pathExt?c.pathExt:process.env.PATHEXT;if(!d||-1!==(d=d.split(";")).indexOf(""))return!0;for(var e=0;e<d.length;e++){var f=d[e].toLowerCase();if(f&&b.substr(-f.length).toLowerCase()===f)return!0}return!1}function f(a,b,c){d.stat(a,function(d,f){c(d,!d&&e(f,a,b))})}},9715:a=>{"use strict";a.exports=Math.round},10289:(a,b,c)=>{var d=c(79551),e=d.URL,f=c(81630),g=c(55591),h=c(27910).Writable,i=c(12412),j=c(2472);!function(){var a="undefined"!=typeof process,b="undefined"!=typeof window&&"undefined"!=typeof document,c=F(Error.captureStackTrace);a||!b&&c||console.warn("The follow-redirects package should be excluded from browser builds.")}();var k=!1;try{i(new e(""))}catch(a){k="ERR_INVALID_URL"===a.code}var l=["Authorization","Proxy-Authorization","Cookie"],m=["auth","host","hostname","href","path","pathname","port","protocol","query","search","hash"],n=["abort","aborted","connect","error","socket","timeout"],o=Object.create(null);n.forEach(function(a){o[a]=function(b,c,d){this._redirectable.emit(a,b,c,d)}});var p=C("ERR_INVALID_URL","Invalid URL",TypeError),q=C("ERR_FR_REDIRECTION_FAILURE","Redirected request failed"),r=C("ERR_FR_TOO_MANY_REDIRECTS","Maximum number of redirects exceeded",q),s=C("ERR_FR_MAX_BODY_LENGTH_EXCEEDED","Request body larger than maxBodyLength limit"),t=C("ERR_STREAM_WRITE_AFTER_END","write after end"),u=h.prototype.destroy||x;function v(a,b){h.call(this),this._sanitizeOptions(a),this._options=a,this._ended=!1,this._ending=!1,this._redirectCount=0,this._redirects=[],this._requestBodyLength=0,this._requestBodyBuffers=[],b&&this.on("response",b);var c=this;this._onNativeResponse=function(a){try{c._processResponse(a)}catch(a){c.emit("error",a instanceof q?a:new q({cause:a}))}},this._headerFilter=RegExp("^(?:"+l.concat(a.sensitiveHeaders).map(G).join("|")+")$","i"),this._performRequest()}function w(a){var b={maxRedirects:21,maxBodyLength:0xa00000},c={};return Object.keys(a).forEach(function(d){var f=d+":",g=c[f]=a[d],h=b[d]=Object.create(g);Object.defineProperties(h,{request:{value:function(a,d,g){var h;return(h=a,e&&h instanceof e)?a=A(a):E(a)?a=A(y(a)):(g=d,d=z(a),a={protocol:f}),F(d)&&(g=d,d=null),(d=Object.assign({maxRedirects:b.maxRedirects,maxBodyLength:b.maxBodyLength},a,d)).nativeProtocols=c,E(d.host)||E(d.hostname)||(d.hostname="::1"),i.equal(d.protocol,f,"protocol mismatch"),j("options",d),new v(d,g)},configurable:!0,enumerable:!0,writable:!0},get:{value:function(a,b,c){var d=h.request(a,b,c);return d.end(),d},configurable:!0,enumerable:!0,writable:!0}})}),b}function x(){}function y(a){var b;if(k)b=new e(a);else if(!E((b=z(d.parse(a))).protocol))throw new p({input:a});return b}function z(a){if(/^\[/.test(a.hostname)&&!/^\[[:0-9a-f]+\]$/i.test(a.hostname)||/^\[/.test(a.host)&&!/^\[[:0-9a-f]+\](:\d+)?$/i.test(a.host))throw new p({input:a.href||a});return a}function A(a,b){var c=b||{};for(var d of m)c[d]=a[d];return c.hostname.startsWith("[")&&(c.hostname=c.hostname.slice(1,-1)),""!==c.port&&(c.port=Number(c.port)),c.path=c.search?c.pathname+c.search:c.pathname,c}function B(a,b){var c;for(var d in b)a.test(d)&&(c=b[d],delete b[d]);return null==c?void 0:String(c).trim()}function C(a,b,c){function d(c){F(Error.captureStackTrace)&&Error.captureStackTrace(this,this.constructor),Object.assign(this,c||{}),this.code=a,this.message=this.cause?b+": "+this.cause.message:b}return d.prototype=new(c||Error),Object.defineProperties(d.prototype,{constructor:{value:d,enumerable:!1},name:{value:"Error ["+a+"]",enumerable:!1}}),d}function D(a,b){for(var c of n)a.removeListener(c,o[c]);a.on("error",x),a.destroy(b)}function E(a){return"string"==typeof a||a instanceof String}function F(a){return"function"==typeof a}function G(a){return a.replace(/[\]\\/()*+?.$]/g,"\\$&")}v.prototype=Object.create(h.prototype),v.prototype.abort=function(){D(this._currentRequest),this._currentRequest.abort(),this.emit("abort")},v.prototype.destroy=function(a){return D(this._currentRequest,a),u.call(this,a),this},v.prototype.write=function(a,b,c){var d;if(this._ending)throw new t;if(!E(a)&&!("object"==typeof(d=a)&&"length"in d))throw TypeError("data should be a string, Buffer or Uint8Array");if(F(b)&&(c=b,b=null),0===a.length){c&&c();return}this._requestBodyLength+a.length<=this._options.maxBodyLength?(this._requestBodyLength+=a.length,this._requestBodyBuffers.push({data:a,encoding:b}),this._currentRequest.write(a,b,c)):(this.emit("error",new s),this.abort())},v.prototype.end=function(a,b,c){if(F(a)?(c=a,a=b=null):F(b)&&(c=b,b=null),a){var d=this,e=this._currentRequest;this.write(a,b,function(){d._ended=!0,e.end(null,null,c)}),this._ending=!0}else this._ended=this._ending=!0,this._currentRequest.end(null,null,c)},v.prototype.setHeader=function(a,b){this._options.headers[a]=b,this._currentRequest.setHeader(a,b)},v.prototype.removeHeader=function(a){delete this._options.headers[a],this._currentRequest.removeHeader(a)},v.prototype.setTimeout=function(a,b){var c=this;function d(b){b.setTimeout(a),b.removeListener("timeout",b.destroy),b.addListener("timeout",b.destroy)}function e(b){c._timeout&&clearTimeout(c._timeout),c._timeout=setTimeout(function(){c.emit("timeout"),f()},a),d(b)}function f(){c._timeout&&(clearTimeout(c._timeout),c._timeout=null),c.removeListener("abort",f),c.removeListener("error",f),c.removeListener("response",f),c.removeListener("close",f),b&&c.removeListener("timeout",b),c.socket||c._currentRequest.removeListener("socket",e)}return b&&this.on("timeout",b),this.socket?e(this.socket):this._currentRequest.once("socket",e),this.on("socket",d),this.on("abort",f),this.on("error",f),this.on("response",f),this.on("close",f),this},["flushHeaders","getHeader","setNoDelay","setSocketKeepAlive"].forEach(function(a){v.prototype[a]=function(b,c){return this._currentRequest[a](b,c)}}),["aborted","connection","socket"].forEach(function(a){Object.defineProperty(v.prototype,a,{get:function(){return this._currentRequest[a]}})}),v.prototype._sanitizeOptions=function(a){if(a.headers||(a.headers={}),a.sensitiveHeaders instanceof Array||(a.sensitiveHeaders=[]),a.host&&(a.hostname||(a.hostname=a.host),delete a.host),!a.pathname&&a.path){var b=a.path.indexOf("?");b<0?a.pathname=a.path:(a.pathname=a.path.substring(0,b),a.search=a.path.substring(b))}},v.prototype._performRequest=function(){var a=this._options.protocol,b=this._options.nativeProtocols[a];if(!b)throw TypeError("Unsupported protocol "+a);if(this._options.agents){var c=a.slice(0,-1);this._options.agent=this._options.agents[c]}var e=this._currentRequest=b.request(this._options,this._onNativeResponse);for(var f of(e._redirectable=this,n))e.on(f,o[f]);if(this._currentUrl=/^\//.test(this._options.path)?d.format(this._options):this._options.path,this._isRedirect){var g=0,h=this,i=this._requestBodyBuffers;!function a(b){if(e===h._currentRequest)if(b)h.emit("error",b);else if(g<i.length){var c=i[g++];e.finished||e.write(c.data,c.encoding,a)}else h._ended&&e.end()}()}},v.prototype._processResponse=function(a){var b,c,f,g,h,l,m=a.statusCode;this._options.trackRedirects&&this._redirects.push({url:this._currentUrl,headers:a.headers,statusCode:m});var n=a.headers.location;if(!n||!1===this._options.followRedirects||m<300||m>=400){a.responseUrl=this._currentUrl,a.redirects=this._redirects,this.emit("response",a),this._requestBodyBuffers=[];return}if(D(this._currentRequest),a.destroy(),++this._redirectCount>this._options.maxRedirects)throw new r;var o=this._options.beforeRedirect;o&&(l=Object.assign({Host:a.req.getHeader("host")},this._options.headers));var p=this._options.method;(301!==m&&302!==m||"POST"!==this._options.method)&&(303!==m||/^(?:GET|HEAD)$/.test(this._options.method))||(this._options.method="GET",this._requestBodyBuffers=[],B(/^content-/i,this._options.headers));var q=B(/^host$/i,this._options.headers),s=y(this._currentUrl),t=q||s.host,u=/^\w+:/.test(n)?this._currentUrl:d.format(Object.assign(s,{host:t})),v=(b=n,c=u,k?new e(b,c):y(d.resolve(c,b)));if(j("redirecting to",v.href),this._isRedirect=!0,A(v,this._options),(v.protocol===s.protocol||"https:"===v.protocol)&&(v.host===t||(f=v.host,g=t,i(E(f)&&E(g)),(h=f.length-g.length-1)>0&&"."===f[h]&&f.endsWith(g)))||B(this._headerFilter,this._options.headers),F(o)){var w={headers:a.headers,statusCode:m},x={url:u,method:p,headers:l};o(this._options,w,x),this._sanitizeOptions(this._options)}this._performRequest()},a.exports=w({http:f,https:g}),a.exports.wrap=w},10358:a=>{"use strict";a.exports={CURRENT_ID:Symbol("agentkeepalive#currentId"),CREATE_ID:Symbol("agentkeepalive#createId"),INIT_SOCKET:Symbol("agentkeepalive#initSocket"),CREATE_HTTPS_CONNECTION:Symbol("agentkeepalive#createHttpsConnection"),SOCKET_CREATED_TIME:Symbol("agentkeepalive#socketCreatedTime"),SOCKET_NAME:Symbol("agentkeepalive#socketName"),SOCKET_REQUEST_COUNT:Symbol("agentkeepalive#socketRequestCount"),SOCKET_REQUEST_FINISHED_COUNT:Symbol("agentkeepalive#socketRequestFinishedCount")}},10481:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{chainStreams:function(){return n},continueDynamicHTMLResume:function(){return E},continueDynamicPrerender:function(){return C},continueFizzStream:function(){return B},continueStaticPrerender:function(){return D},createBufferedTransformStream:function(){return s},createDocumentClosingStream:function(){return F},createRootLayoutValidatorStream:function(){return A},renderToInitialFizzStream:function(){return u},streamFromBuffer:function(){return p},streamFromString:function(){return o},streamToBuffer:function(){return q},streamToString:function(){return r}});let d=c(73359),e=c(69579),f=c(34856),g=c(71545),h=c(21517),i=c(15542),j=c(96655),k=c(835);function l(){}let m=new TextEncoder;function n(...a){if(0===a.length)return new ReadableStream({start(a){a.close()}});if(1===a.length)return a[0];let{readable:b,writable:c}=new TransformStream,d=a[0].pipeTo(c,{preventClose:!0}),e=1;for(;e<a.length-1;e++){let b=a[e];d=d.then(()=>b.pipeTo(c,{preventClose:!0}))}let f=a[e];return(d=d.then(()=>f.pipeTo(c))).catch(l),b}function o(a){return new ReadableStream({start(b){b.enqueue(m.encode(a)),b.close()}})}function p(a){return new ReadableStream({start(b){b.enqueue(a),b.close()}})}async function q(a){let b=a.getReader(),c=[];for(;;){let{done:a,value:d}=await b.read();if(a)break;c.push(d)}return Buffer.concat(c)}async function r(a,b){let c=new TextDecoder("utf-8",{fatal:!0}),d="";for await(let e of a){if(null==b?void 0:b.aborted)return d;d+=c.decode(e,{stream:!0})}return d+c.decode()}function s(){let a,b=[],c=0;return new TransformStream({transform(d,e){b.push(d),c+=d.byteLength,(d=>{if(a)return;let e=new f.DetachedPromise;a=e,(0,g.scheduleImmediate)(()=>{try{let a=new Uint8Array(c),e=0;for(let c=0;c<b.length;c++){let d=b[c];a.set(d,e),e+=d.byteLength}b.length=0,c=0,d.enqueue(a)}catch{}finally{a=void 0,e.resolve()}})})(e)},flush(){if(a)return a.promise}})}function t(a,b){let c=!1;return new TransformStream({transform(d,e){if(a&&!c){c=!0;let a=new TextDecoder("utf-8",{fatal:!0}).decode(d,{stream:!0}),f=(0,k.insertBuildIdComment)(a,b);e.enqueue(m.encode(f));return}e.enqueue(d)}})}function u({ReactDOMServer:a,element:b,streamOptions:c}){return(0,d.getTracer)().trace(e.AppRenderSpan.renderToReadableStream,async()=>a.renderToReadableStream(b,c))}function v(a){let b=-1,c=!1;return new TransformStream({async transform(d,e){let f=-1,g=-1;if(b++,c)return void e.enqueue(d);let j=0;if(-1===f){if(-1===(f=(0,i.indexOfUint8Array)(d,h.ENCODED_TAGS.META.ICON_MARK)))return void e.enqueue(d);47===d[f+(j=h.ENCODED_TAGS.META.ICON_MARK.length)]?j+=2:j++}if(0===b){if(g=(0,i.indexOfUint8Array)(d,h.ENCODED_TAGS.CLOSED.HEAD),-1!==f){if(f<g){let a=new Uint8Array(d.length-j);a.set(d.subarray(0,f)),a.set(d.subarray(f+j),f),d=a}else{let b=await a(),c=m.encode(b),e=c.length,g=new Uint8Array(d.length-j+e);g.set(d.subarray(0,f)),g.set(c,f),g.set(d.subarray(f+j),f+e),d=g}c=!0}}else{let b=await a(),e=m.encode(b),g=e.length,h=new Uint8Array(d.length-j+g);h.set(d.subarray(0,f)),h.set(e,f),h.set(d.subarray(f+j),f+g),d=h,c=!0}e.enqueue(d)}})}function w(a){let b=!1,c=!1;return new TransformStream({async transform(d,e){c=!0;let f=await a();if(b){if(f){let a=m.encode(f);e.enqueue(a)}e.enqueue(d)}else{let a=(0,i.indexOfUint8Array)(d,h.ENCODED_TAGS.CLOSED.HEAD);if(-1!==a){if(f){let b=m.encode(f),c=new Uint8Array(d.length+b.length);c.set(d.slice(0,a)),c.set(b,a),c.set(d.slice(a),a+b.length),e.enqueue(c)}else e.enqueue(d);b=!0}else f&&e.enqueue(m.encode(f)),e.enqueue(d),b=!0}},async flush(b){if(c){let c=await a();c&&b.enqueue(m.encode(c))}}})}function x(a,b){let c=!1,d=null,e=!1;function f(a){return d||(d=h(a)),d}async function h(d){let f=a.getReader();b&&await (0,g.atLeastOneTask)();try{for(;;){let{done:a,value:h}=await f.read();if(a){e=!0;return}b||c||await (0,g.atLeastOneTask)(),d.enqueue(h)}}catch(a){d.error(a)}}return new TransformStream({start(a){b||f(a)},transform(a,c){c.enqueue(a),b&&f(c)},flush(a){if(c=!0,!e)return f(a)}})}let y="</body></html>";function z(){let a=!1;return new TransformStream({transform(b,c){if(a)return c.enqueue(b);let d=(0,i.indexOfUint8Array)(b,h.ENCODED_TAGS.CLOSED.BODY_AND_HTML);if(d>-1){if(a=!0,b.length===h.ENCODED_TAGS.CLOSED.BODY_AND_HTML.length)return;let e=b.slice(0,d);if(c.enqueue(e),b.length>h.ENCODED_TAGS.CLOSED.BODY_AND_HTML.length+d){let a=b.slice(d+h.ENCODED_TAGS.CLOSED.BODY_AND_HTML.length);c.enqueue(a)}}else c.enqueue(b)},flush(a){a.enqueue(h.ENCODED_TAGS.CLOSED.BODY_AND_HTML)}})}function A(){let a=!1,b=!1;return new TransformStream({async transform(c,d){!a&&(0,i.indexOfUint8Array)(c,h.ENCODED_TAGS.OPENING.HTML)>-1&&(a=!0),!b&&(0,i.indexOfUint8Array)(c,h.ENCODED_TAGS.OPENING.BODY)>-1&&(b=!0),d.enqueue(c)},flush(c){let d=[];a||d.push("html"),b||d.push("body"),d.length&&c.enqueue(m.encode(`<html id="__next_error__">
64
+ `)}b.write("payload.value = newResult;"),b.write("return payload;");let j=b.compile();return(b,c)=>j(a,b,c)})(b.shape)),e=c(e,l),n)?W([],o,e,l,d,a):e:g(e,l):(e.issues.push({expected:"object",code:"invalid_type",input:o,inst:a}),e)}});function Z(a,b,c,d){for(let c of a)if(0===c.issues.length)return b.value=c.value,b;let f=a.filter(a=>!i.QH(a));return 1===f.length?(b.value=f[0].value,f[0]):(b.issues.push({code:"invalid_union",input:b.value,inst:c,errors:a.map(a=>a.issues.map(a=>i.iR(a,d,e.$W())))}),b)}let $=e.xI("$ZodUnion",(a,b)=>{k.init(a,b),i.gJ(a._zod,"optin",()=>b.options.some(a=>"optional"===a._zod.optin)?"optional":void 0),i.gJ(a._zod,"optout",()=>b.options.some(a=>"optional"===a._zod.optout)?"optional":void 0),i.gJ(a._zod,"values",()=>{if(b.options.every(a=>a._zod.values))return new Set(b.options.flatMap(a=>Array.from(a._zod.values)))}),i.gJ(a._zod,"pattern",()=>{if(b.options.every(a=>a._zod.pattern)){let a=b.options.map(a=>a._zod.pattern);return RegExp(`^(${a.map(a=>i.p6(a.source)).join("|")})$`)}});let c=1===b.options.length?b.options[0]._zod.run:null;a._zod.parse=(d,e)=>{if(c)return c(d,e);let f=!1,g=[];for(let a of b.options){let b=a._zod.run({value:d.value,issues:[]},e);if(b instanceof Promise)g.push(b),f=!0;else{if(0===b.issues.length)return b;g.push(b)}}return f?Promise.all(g).then(b=>Z(b,d,a,e)):Z(g,d,a,e)}}),_=e.xI("$ZodDiscriminatedUnion",(a,b)=>{b.inclusive=!1,$.init(a,b);let c=a._zod.parse;i.gJ(a._zod,"propValues",()=>{let a={};for(let c of b.options){let d=c._zod.propValues;if(!d||0===Object.keys(d).length)throw Error(`Invalid discriminated union option at index "${b.options.indexOf(c)}"`);for(let[b,c]of Object.entries(d))for(let d of(a[b]||(a[b]=new Set),c))a[b].add(d)}return a});let d=i.PO(()=>{let a=b.options,c=new Map;for(let d of a){let a=d._zod.propValues?.[b.discriminator];if(!a||0===a.size)throw Error(`Invalid discriminated union option at index "${b.options.indexOf(d)}"`);for(let b of a){if(c.has(b))throw Error(`Duplicate discriminator value "${String(b)}"`);c.set(b,d)}}return c});a._zod.parse=(e,f)=>{let g=e.value;if(!i.Gv(g))return e.issues.push({code:"invalid_type",expected:"object",input:g,inst:a}),e;let h=d.value.get(g?.[b.discriminator]);return h?h._zod.run(e,f):b.unionFallback||"backward"===f.direction?c(e,f):(e.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:b.discriminator,options:Array.from(d.value.keys()),input:g,path:[b.discriminator],inst:a}),e)}}),aa=e.xI("$ZodIntersection",(a,b)=>{k.init(a,b),a._zod.parse=(a,c)=>{let d=a.value,e=b.left._zod.run({value:d,issues:[]},c),f=b.right._zod.run({value:d,issues:[]},c);return e instanceof Promise||f instanceof Promise?Promise.all([e,f]).then(([b,c])=>ab(a,b,c)):ab(a,e,f)}});function ab(a,b,c){let d,e=new Map;for(let c of b.issues)if("unrecognized_keys"===c.code)for(let a of(d??(d=c),c.keys))e.has(a)||e.set(a,{}),e.get(a).l=!0;else a.issues.push(c);for(let b of c.issues)if("unrecognized_keys"===b.code)for(let a of b.keys)e.has(a)||e.set(a,{}),e.get(a).r=!0;else a.issues.push(b);let f=[...e].filter(([,a])=>a.l&&a.r).map(([a])=>a);if(f.length&&d&&a.issues.push({...d,keys:f}),i.QH(a))return a;let g=function a(b,c){if(b===c||b instanceof Date&&c instanceof Date&&+b==+c)return{valid:!0,data:b};if(i.Qd(b)&&i.Qd(c)){let d=Object.keys(c),e=Object.keys(b).filter(a=>-1!==d.indexOf(a)),f={...b,...c};for(let d of e){let e=a(b[d],c[d]);if(!e.valid)return{valid:!1,mergeErrorPath:[d,...e.mergeErrorPath]};f[d]=e.data}return{valid:!0,data:f}}if(Array.isArray(b)&&Array.isArray(c)){if(b.length!==c.length)return{valid:!1,mergeErrorPath:[]};let d=[];for(let e=0;e<b.length;e++){let f=a(b[e],c[e]);if(!f.valid)return{valid:!1,mergeErrorPath:[e,...f.mergeErrorPath]};d.push(f.data)}return{valid:!0,data:d}}return{valid:!1,mergeErrorPath:[]}}(b.value,c.value);if(!g.valid)throw Error(`Unmergable intersection. Error path: ${JSON.stringify(g.mergeErrorPath)}`);return a.value=g.data,a}let ac=e.xI("$ZodRecord",(a,b)=>{k.init(a,b),a._zod.parse=(c,d)=>{let f=c.value;if(!i.Qd(f))return c.issues.push({expected:"record",code:"invalid_type",input:f,inst:a}),c;let g=[],j=b.keyType._zod.values;if(j){let h;c.value={};let k=new Set;for(let h of j)if("string"==typeof h||"number"==typeof h||"symbol"==typeof h){k.add("number"==typeof h?h.toString():h);let j=b.keyType._zod.run({value:h,issues:[]},d);if(j instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(j.issues.length){c.issues.push({code:"invalid_key",origin:"record",issues:j.issues.map(a=>i.iR(a,d,e.$W())),input:h,path:[h],inst:a});continue}let l=j.value,m=b.valueType._zod.run({value:f[h],issues:[]},d);m instanceof Promise?g.push(m.then(a=>{a.issues.length&&c.issues.push(...i.lQ(h,a.issues)),c.value[l]=a.value})):(m.issues.length&&c.issues.push(...i.lQ(h,m.issues)),c.value[l]=m.value)}for(let a in f)k.has(a)||(h=h??[]).push(a);h&&h.length>0&&c.issues.push({code:"unrecognized_keys",input:f,inst:a,keys:h})}else for(let j of(c.value={},Reflect.ownKeys(f))){if("__proto__"===j||!Object.prototype.propertyIsEnumerable.call(f,j))continue;let k=b.keyType._zod.run({value:j,issues:[]},d);if(k instanceof Promise)throw Error("Async schemas not supported in object keys currently");if("string"==typeof j&&h.ai.test(j)&&k.issues.length){let a=b.keyType._zod.run({value:Number(j),issues:[]},d);if(a instanceof Promise)throw Error("Async schemas not supported in object keys currently");0===a.issues.length&&(k=a)}if(k.issues.length){"loose"===b.mode?c.value[j]=f[j]:c.issues.push({code:"invalid_key",origin:"record",issues:k.issues.map(a=>i.iR(a,d,e.$W())),input:j,path:[j],inst:a});continue}let l=b.valueType._zod.run({value:f[j],issues:[]},d);l instanceof Promise?g.push(l.then(a=>{a.issues.length&&c.issues.push(...i.lQ(j,a.issues)),c.value[k.value]=a.value})):(l.issues.length&&c.issues.push(...i.lQ(j,l.issues)),c.value[k.value]=l.value)}return g.length?Promise.all(g).then(()=>c):c}}),ad=e.xI("$ZodEnum",(a,b)=>{k.init(a,b);let c=i.w5(b.entries),d=new Set(c);a._zod.values=d,a._zod.pattern=RegExp(`^(${c.filter(a=>i.qQ.has(typeof a)).map(a=>"string"==typeof a?i.$f(a):a.toString()).join("|")})$`),a._zod.parse=(b,e)=>{let f=b.value;return d.has(f)||b.issues.push({code:"invalid_value",values:c,input:f,inst:a}),b}}),ae=e.xI("$ZodLiteral",(a,b)=>{if(k.init(a,b),0===b.values.length)throw Error("Cannot create literal schema with no valid values");let c=new Set(b.values);a._zod.values=c,a._zod.pattern=RegExp(`^(${b.values.map(a=>"string"==typeof a?i.$f(a):a?i.$f(a.toString()):String(a)).join("|")})$`),a._zod.parse=(d,e)=>{let f=d.value;return c.has(f)||d.issues.push({code:"invalid_value",values:b.values,input:f,inst:a}),d}}),af=e.xI("$ZodTransform",(a,b)=>{k.init(a,b),a._zod.optin="optional",a._zod.parse=(c,d)=>{if("backward"===d.direction)throw new e.cV(a.constructor.name);let f=b.transform(c.value,c);if(d.async)return(f instanceof Promise?f:Promise.resolve(f)).then(a=>(c.value=a,c.fallback=!0,c));if(f instanceof Promise)throw new e.GT;return c.value=f,c.fallback=!0,c}});function ag(a,b){return void 0===b&&(a.issues.length||a.fallback)?{issues:[],value:void 0}:a}let ah=e.xI("$ZodOptional",(a,b)=>{k.init(a,b),a._zod.optin="optional",a._zod.optout="optional",i.gJ(a._zod,"values",()=>b.innerType._zod.values?new Set([...b.innerType._zod.values,void 0]):void 0),i.gJ(a._zod,"pattern",()=>{let a=b.innerType._zod.pattern;return a?RegExp(`^(${i.p6(a.source)})?$`):void 0}),a._zod.parse=(a,c)=>{if("optional"===b.innerType._zod.optin){let d=a.value,e=b.innerType._zod.run(a,c);return e instanceof Promise?e.then(a=>ag(a,d)):ag(e,d)}return void 0===a.value?a:b.innerType._zod.run(a,c)}}),ai=e.xI("$ZodExactOptional",(a,b)=>{ah.init(a,b),i.gJ(a._zod,"values",()=>b.innerType._zod.values),i.gJ(a._zod,"pattern",()=>b.innerType._zod.pattern),a._zod.parse=(a,c)=>b.innerType._zod.run(a,c)}),aj=e.xI("$ZodNullable",(a,b)=>{k.init(a,b),i.gJ(a._zod,"optin",()=>b.innerType._zod.optin),i.gJ(a._zod,"optout",()=>b.innerType._zod.optout),i.gJ(a._zod,"pattern",()=>{let a=b.innerType._zod.pattern;return a?RegExp(`^(${i.p6(a.source)}|null)$`):void 0}),i.gJ(a._zod,"values",()=>b.innerType._zod.values?new Set([...b.innerType._zod.values,null]):void 0),a._zod.parse=(a,c)=>null===a.value?a:b.innerType._zod.run(a,c)}),ak=e.xI("$ZodDefault",(a,b)=>{k.init(a,b),a._zod.optin="optional",i.gJ(a._zod,"values",()=>b.innerType._zod.values),a._zod.parse=(a,c)=>{if("backward"===c.direction)return b.innerType._zod.run(a,c);if(void 0===a.value)return a.value=b.defaultValue,a;let d=b.innerType._zod.run(a,c);return d instanceof Promise?d.then(a=>al(a,b)):al(d,b)}});function al(a,b){return void 0===a.value&&(a.value=b.defaultValue),a}let am=e.xI("$ZodPrefault",(a,b)=>{k.init(a,b),a._zod.optin="optional",i.gJ(a._zod,"values",()=>b.innerType._zod.values),a._zod.parse=(a,c)=>("backward"===c.direction||void 0===a.value&&(a.value=b.defaultValue),b.innerType._zod.run(a,c))}),an=e.xI("$ZodNonOptional",(a,b)=>{k.init(a,b),i.gJ(a._zod,"values",()=>{let a=b.innerType._zod.values;return a?new Set([...a].filter(a=>void 0!==a)):void 0}),a._zod.parse=(c,d)=>{let e=b.innerType._zod.run(c,d);return e instanceof Promise?e.then(b=>ao(b,a)):ao(e,a)}});function ao(a,b){return a.issues.length||void 0!==a.value||a.issues.push({code:"invalid_type",expected:"nonoptional",input:a.value,inst:b}),a}let ap=e.xI("$ZodCatch",(a,b)=>{k.init(a,b),a._zod.optin="optional",i.gJ(a._zod,"optout",()=>b.innerType._zod.optout),i.gJ(a._zod,"values",()=>b.innerType._zod.values),a._zod.parse=(a,c)=>{if("backward"===c.direction)return b.innerType._zod.run(a,c);let d=b.innerType._zod.run(a,c);return d instanceof Promise?d.then(d=>(a.value=d.value,d.issues.length&&(a.value=b.catchValue({...a,error:{issues:d.issues.map(a=>i.iR(a,c,e.$W()))},input:a.value}),a.issues=[],a.fallback=!0),a)):(a.value=d.value,d.issues.length&&(a.value=b.catchValue({...a,error:{issues:d.issues.map(a=>i.iR(a,c,e.$W()))},input:a.value}),a.issues=[],a.fallback=!0),a)}}),aq=e.xI("$ZodPipe",(a,b)=>{k.init(a,b),i.gJ(a._zod,"values",()=>b.in._zod.values),i.gJ(a._zod,"optin",()=>b.in._zod.optin),i.gJ(a._zod,"optout",()=>b.out._zod.optout),i.gJ(a._zod,"propValues",()=>b.in._zod.propValues),a._zod.parse=(a,c)=>{if("backward"===c.direction){let d=b.out._zod.run(a,c);return d instanceof Promise?d.then(a=>ar(a,b.in,c)):ar(d,b.in,c)}let d=b.in._zod.run(a,c);return d instanceof Promise?d.then(a=>ar(a,b.out,c)):ar(d,b.out,c)}});function ar(a,b,c){return a.issues.length?(a.aborted=!0,a):b._zod.run({value:a.value,issues:a.issues,fallback:a.fallback},c)}let as=e.xI("$ZodPreprocess",(a,b)=>{aq.init(a,b)}),at=e.xI("$ZodReadonly",(a,b)=>{k.init(a,b),i.gJ(a._zod,"propValues",()=>b.innerType._zod.propValues),i.gJ(a._zod,"values",()=>b.innerType._zod.values),i.gJ(a._zod,"optin",()=>b.innerType?._zod?.optin),i.gJ(a._zod,"optout",()=>b.innerType?._zod?.optout),a._zod.parse=(a,c)=>{if("backward"===c.direction)return b.innerType._zod.run(a,c);let d=b.innerType._zod.run(a,c);return d instanceof Promise?d.then(au):au(d)}});function au(a){return a.value=Object.freeze(a.value),a}let av=e.xI("$ZodCustom",(a,b)=>{d.QP.init(a,b),k.init(a,b),a._zod.parse=(a,b)=>a,a._zod.check=c=>{let d=c.value,e=b.fn(d);if(e instanceof Promise)return e.then(b=>aw(b,c,d,a));aw(e,c,d,a)}});function aw(a,b,c,d){if(!a){let a={code:"custom",input:c,inst:d,path:[...d._zod.def.path??[]],continue:!d._zod.def.abort};d._zod.def.params&&(a.params=d._zod.def.params),b.issues.push(i.sn(a))}}},4090:a=>{"use strict";var b=Object.prototype.toString,c=Math.max,d=function(a,b){for(var c=[],d=0;d<a.length;d+=1)c[d]=a[d];for(var e=0;e<b.length;e+=1)c[e+a.length]=b[e];return c},e=function(a,b){for(var c=[],d=b||0,e=0;d<a.length;d+=1,e+=1)c[e]=a[d];return c},f=function(a,b){for(var c="",d=0;d<a.length;d+=1)c+=a[d],d+1<a.length&&(c+=b);return c};a.exports=function(a){var g,h=this;if("function"!=typeof h||"[object Function]"!==b.apply(h))throw TypeError("Function.prototype.bind called on incompatible "+h);for(var i=e(arguments,1),j=c(0,h.length-i.length),k=[],l=0;l<j;l++)k[l]="$"+l;if(g=Function("binder","return function ("+f(k,",")+"){ return binder.apply(this,arguments); }")(function(){if(this instanceof g){var b=h.apply(this,d(i,arguments));return Object(b)===b?b:this}return h.apply(a,d(i,arguments))}),h.prototype){var m=function(){};m.prototype=h.prototype,g.prototype=new m,m.prototype=null}return g}},4177:function(a,b,c){var d;d=c(67278),c(47973),function(){var a=d.lib.Hasher,b=d.x64,c=b.Word,e=b.WordArray,f=d.algo;function g(){return c.create.apply(c,arguments)}for(var h=[g(0x428a2f98,0xd728ae22),g(0x71374491,0x23ef65cd),g(0xb5c0fbcf,0xec4d3b2f),g(0xe9b5dba5,0x8189dbbc),g(0x3956c25b,0xf348b538),g(0x59f111f1,0xb605d019),g(0x923f82a4,0xaf194f9b),g(0xab1c5ed5,0xda6d8118),g(0xd807aa98,0xa3030242),g(0x12835b01,0x45706fbe),g(0x243185be,0x4ee4b28c),g(0x550c7dc3,0xd5ffb4e2),g(0x72be5d74,0xf27b896f),g(0x80deb1fe,0x3b1696b1),g(0x9bdc06a7,0x25c71235),g(0xc19bf174,0xcf692694),g(0xe49b69c1,0x9ef14ad2),g(0xefbe4786,0x384f25e3),g(0xfc19dc6,0x8b8cd5b5),g(0x240ca1cc,0x77ac9c65),g(0x2de92c6f,0x592b0275),g(0x4a7484aa,0x6ea6e483),g(0x5cb0a9dc,0xbd41fbd4),g(0x76f988da,0x831153b5),g(0x983e5152,0xee66dfab),g(0xa831c66d,0x2db43210),g(0xb00327c8,0x98fb213f),g(0xbf597fc7,0xbeef0ee4),g(0xc6e00bf3,0x3da88fc2),g(0xd5a79147,0x930aa725),g(0x6ca6351,0xe003826f),g(0x14292967,0xa0e6e70),g(0x27b70a85,0x46d22ffc),g(0x2e1b2138,0x5c26c926),g(0x4d2c6dfc,0x5ac42aed),g(0x53380d13,0x9d95b3df),g(0x650a7354,0x8baf63de),g(0x766a0abb,0x3c77b2a8),g(0x81c2c92e,0x47edaee6),g(0x92722c85,0x1482353b),g(0xa2bfe8a1,0x4cf10364),g(0xa81a664b,0xbc423001),g(0xc24b8b70,0xd0f89791),g(0xc76c51a3,0x654be30),g(0xd192e819,0xd6ef5218),g(0xd6990624,0x5565a910),g(0xf40e3585,0x5771202a),g(0x106aa070,0x32bbd1b8),g(0x19a4c116,0xb8d2d0c8),g(0x1e376c08,0x5141ab53),g(0x2748774c,0xdf8eeb99),g(0x34b0bcb5,0xe19b48a8),g(0x391c0cb3,0xc5c95a63),g(0x4ed8aa4a,0xe3418acb),g(0x5b9cca4f,0x7763e373),g(0x682e6ff3,0xd6b2b8a3),g(0x748f82ee,0x5defb2fc),g(0x78a5636f,0x43172f60),g(0x84c87814,0xa1f0ab72),g(0x8cc70208,0x1a6439ec),g(0x90befffa,0x23631e28),g(0xa4506ceb,0xde82bde9),g(0xbef9a3f7,0xb2c67915),g(0xc67178f2,0xe372532b),g(0xca273ece,0xea26619c),g(0xd186b8c7,0x21c0c207),g(0xeada7dd6,0xcde0eb1e),g(0xf57d4f7f,0xee6ed178),g(0x6f067aa,0x72176fba),g(0xa637dc5,0xa2c898a6),g(0x113f9804,0xbef90dae),g(0x1b710b35,0x131c471b),g(0x28db77f5,0x23047d84),g(0x32caab7b,0x40c72493),g(0x3c9ebe0a,0x15c9bebc),g(0x431d67c4,0x9c100d4c),g(0x4cc5d4be,0xcb3e42b6),g(0x597f299c,0xfc657e2a),g(0x5fcb6fab,0x3ad6faec),g(0x6c44198c,0x4a475817)],i=[],j=0;j<80;j++)i[j]=g();var k=f.SHA512=a.extend({_doReset:function(){this._hash=new e.init([new c.init(0x6a09e667,0xf3bcc908),new c.init(0xbb67ae85,0x84caa73b),new c.init(0x3c6ef372,0xfe94f82b),new c.init(0xa54ff53a,0x5f1d36f1),new c.init(0x510e527f,0xade682d1),new c.init(0x9b05688c,0x2b3e6c1f),new c.init(0x1f83d9ab,0xfb41bd6b),new c.init(0x5be0cd19,0x137e2179)])},_doProcessBlock:function(a,b){for(var c=this._hash.words,d=c[0],e=c[1],f=c[2],g=c[3],j=c[4],k=c[5],l=c[6],m=c[7],n=d.high,o=d.low,p=e.high,q=e.low,r=f.high,s=f.low,t=g.high,u=g.low,v=j.high,w=j.low,x=k.high,y=k.low,z=l.high,A=l.low,B=m.high,C=m.low,D=n,E=o,F=p,G=q,H=r,I=s,J=t,K=u,L=v,M=w,N=x,O=y,P=z,Q=A,R=B,S=C,T=0;T<80;T++){var U,V,W=i[T];if(T<16)V=W.high=0|a[b+2*T],U=W.low=0|a[b+2*T+1];else{var X=i[T-15],Y=X.high,Z=X.low,$=(Y>>>1|Z<<31)^(Y>>>8|Z<<24)^Y>>>7,_=(Z>>>1|Y<<31)^(Z>>>8|Y<<24)^(Z>>>7|Y<<25),aa=i[T-2],ab=aa.high,ac=aa.low,ad=(ab>>>19|ac<<13)^(ab<<3|ac>>>29)^ab>>>6,ae=(ac>>>19|ab<<13)^(ac<<3|ab>>>29)^(ac>>>6|ab<<26),af=i[T-7],ag=af.high,ah=af.low,ai=i[T-16],aj=ai.high,ak=ai.low;V=$+ag+ +((U=_+ah)>>>0<_>>>0),U+=ae,V=V+ad+ +(U>>>0<ae>>>0),U+=ak,W.high=V=V+aj+ +(U>>>0<ak>>>0),W.low=U}var al=L&N^~L&P,am=M&O^~M&Q,an=D&F^D&H^F&H,ao=E&G^E&I^G&I,ap=(D>>>28|E<<4)^(D<<30|E>>>2)^(D<<25|E>>>7),aq=(E>>>28|D<<4)^(E<<30|D>>>2)^(E<<25|D>>>7),ar=(L>>>14|M<<18)^(L>>>18|M<<14)^(L<<23|M>>>9),as=(M>>>14|L<<18)^(M>>>18|L<<14)^(M<<23|L>>>9),at=h[T],au=at.high,av=at.low,aw=S+as,ax=R+ar+ +(aw>>>0<S>>>0),aw=aw+am,ax=ax+al+ +(aw>>>0<am>>>0),aw=aw+av,ax=ax+au+ +(aw>>>0<av>>>0),aw=aw+U,ax=ax+V+ +(aw>>>0<U>>>0),ay=aq+ao,az=ap+an+ +(ay>>>0<aq>>>0);R=P,S=Q,P=N,Q=O,N=L,O=M,L=J+ax+ +((M=K+aw|0)>>>0<K>>>0)|0,J=H,K=I,H=F,I=G,F=D,G=E,D=ax+az+ +((E=aw+ay|0)>>>0<aw>>>0)|0}o=d.low=o+E,d.high=n+D+ +(o>>>0<E>>>0),q=e.low=q+G,e.high=p+F+ +(q>>>0<G>>>0),s=f.low=s+I,f.high=r+H+ +(s>>>0<I>>>0),u=g.low=u+K,g.high=t+J+ +(u>>>0<K>>>0),w=j.low=w+M,j.high=v+L+ +(w>>>0<M>>>0),y=k.low=y+O,k.high=x+N+ +(y>>>0<O>>>0),A=l.low=A+Q,l.high=z+P+ +(A>>>0<Q>>>0),C=m.low=C+S,m.high=B+R+ +(C>>>0<S>>>0)},_doFinalize:function(){var a=this._data,b=a.words,c=8*this._nDataBytes,d=8*a.sigBytes;return b[d>>>5]|=128<<24-d%32,b[(d+128>>>10<<5)+30]=Math.floor(c/0x100000000),b[(d+128>>>10<<5)+31]=c,a.sigBytes=4*b.length,this._process(),this._hash.toX32()},clone:function(){var b=a.clone.call(this);return b._hash=this._hash.clone(),b},blockSize:32});d.SHA512=a._createHelper(k),d.HmacSHA512=a._createHmacHelper(k)}(),a.exports=d.SHA512},4313:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.GaxiosInterceptorManager=void 0;class c extends Set{}b.GaxiosInterceptorManager=c},4498:function(a,b,c){var d,e,f;d=c(67278),c(70522),d.mode.OFB=(f=(e=d.lib.BlockCipherMode.extend()).Encryptor=e.extend({processBlock:function(a,b){var c=this._cipher,d=c.blockSize,e=this._iv,f=this._keystream;e&&(f=this._keystream=e.slice(0),this._iv=void 0),c.encryptBlock(f,0);for(var g=0;g<d;g++)a[b+g]^=f[g]}}),e.Decryptor=f,e),a.exports=d.mode.OFB},4686:function(a,b,c){"use strict";let d;var e,f,g,h=this&&this.__createBinding||(Object.create?function(a,b,c,d){void 0===d&&(d=c);var e=Object.getOwnPropertyDescriptor(b,c);(!e||("get"in e?!b.__esModule:e.writable||e.configurable))&&(e={enumerable:!0,get:function(){return b[c]}}),Object.defineProperty(a,d,e)}:function(a,b,c,d){void 0===d&&(d=c),a[d]=b[c]}),i=this&&this.__setModuleDefault||(Object.create?function(a,b){Object.defineProperty(a,"default",{enumerable:!0,value:b})}:function(a,b){a.default=b}),j=this&&this.__importStar||(e=function(a){return(e=Object.getOwnPropertyNames||function(a){var b=[];for(var c in a)Object.prototype.hasOwnProperty.call(a,c)&&(b[b.length]=c);return b})(a)},function(a){if(a&&a.__esModule)return a;var b={};if(null!=a)for(var c=e(a),d=0;d<c.length;d++)"default"!==c[d]&&h(b,a,c[d]);return i(b,a),b});Object.defineProperty(b,"__esModule",{value:!0}),b.env=b.DebugLogBackendBase=b.placeholder=b.AdhocDebugLogger=b.LogSeverity=void 0,b.getNodeBackend=r,b.getDebugBackend=function(a){return new s(a)},b.getStructuredBackend=function(a){return new t(a)},b.setBackend=function(a){d=a,u.clear()},b.log=v;let k=c(94735),l=j(c(19771)),m=j(c(28354)),n=c(56066);(f=g||(b.LogSeverity=g={})).DEFAULT="DEFAULT",f.DEBUG="DEBUG",f.INFO="INFO",f.WARNING="WARNING",f.ERROR="ERROR";class o extends k.EventEmitter{constructor(a,b){super(),this.namespace=a,this.upstream=b,this.func=Object.assign(this.invoke.bind(this),{instance:this,on:(a,b)=>this.on(a,b)}),this.func.debug=(...a)=>this.invokeSeverity(g.DEBUG,...a),this.func.info=(...a)=>this.invokeSeverity(g.INFO,...a),this.func.warn=(...a)=>this.invokeSeverity(g.WARNING,...a),this.func.error=(...a)=>this.invokeSeverity(g.ERROR,...a),this.func.sublog=a=>v(a,this.func)}invoke(a,...b){if(this.upstream)try{this.upstream(a,...b)}catch(a){}try{this.emit("log",a,b)}catch(a){}}invokeSeverity(a,...b){this.invoke({severity:a},...b)}}b.AdhocDebugLogger=o,b.placeholder=new o("",()=>{}).func;class p{constructor(){var a;this.cached=new Map,this.filters=[],this.filtersSet=!1;let c=null!=(a=l.env[b.env.nodeEnables])?a:"*";"all"===c&&(c="*"),this.filters=c.split(",")}log(a,b,...c){try{this.filtersSet||(this.setFilters(),this.filtersSet=!0);let d=this.cached.get(a);d||(d=this.makeLogger(a),this.cached.set(a,d)),d(b,...c)}catch(a){console.error(a)}}}b.DebugLogBackendBase=p;class q extends p{constructor(){super(...arguments),this.enabledRegexp=/.*/g}isEnabled(a){return this.enabledRegexp.test(a)}makeLogger(a){return this.enabledRegexp.test(a)?(b,...c)=>{var d;let e,f=`${n.Colours.green}${a}${n.Colours.reset}`,h=`${n.Colours.yellow}${l.pid}${n.Colours.reset}`;switch(b.severity){case g.ERROR:e=`${n.Colours.red}${b.severity}${n.Colours.reset}`;break;case g.INFO:e=`${n.Colours.magenta}${b.severity}${n.Colours.reset}`;break;case g.WARNING:e=`${n.Colours.yellow}${b.severity}${n.Colours.reset}`;break;default:e=null!=(d=b.severity)?d:g.DEFAULT}let i=m.formatWithOptions({colors:n.Colours.enabled},...c),j=Object.assign({},b);delete j.severity;let k=Object.getOwnPropertyNames(j).length?JSON.stringify(j):"",o=k?`${n.Colours.grey}${k}${n.Colours.reset}`:"";console.error("%s [%s|%s] %s%s",h,f,e,i,k?` ${o}`:"")}:()=>{}}setFilters(){let a=this.filters.join(",").replace(/[|\\{}()[\]^$+?.]/g,"\\$&").replace(/\*/g,".*").replace(/,/g,"$|^");this.enabledRegexp=RegExp(`^${a}$`,"i")}}function r(){return new q}class s extends p{constructor(a){super(),this.debugPkg=a}makeLogger(a){let b=this.debugPkg(a);return(a,...c)=>{b(c[0],...c.slice(1))}}setFilters(){var a;let b=null!=(a=l.env.NODE_DEBUG)?a:"";l.env.NODE_DEBUG=`${b}${b?",":""}${this.filters.join(",")}`}}class t extends p{constructor(a){super(),this.upstream=null!=a?a:void 0}makeLogger(a){var b;let c=null==(b=this.upstream)?void 0:b.makeLogger(a);return(a,...b)=>{var d;let e=JSON.stringify(Object.assign({severity:null!=(d=a.severity)?d:g.INFO,message:m.format(...b)},a));c?c(a,e):console.log("%s",e)}}setFilters(){var a;null==(a=this.upstream)||a.setFilters()}}b.env={nodeEnables:"GOOGLE_SDK_NODE_LOGGING"};let u=new Map;function v(a,c){let e;if(!d&&!l.env[b.env.nodeEnables]||!a)return b.placeholder;c&&(a=`${c.instance.namespace}:${a}`);let f=u.get(a);if(f)return f.func;if(null===d)return b.placeholder;void 0===d&&(d=r());let g=new o(a,(b,...c)=>{if(e!==d){if(null===d)return;void 0===d&&(d=r()),e=d}null==d||d.log(a,b,...c)});return u.set(a,g),g.func}},5136:(a,b,c)=>{"use strict";let d=c(55591).Agent,e=c(21890),{INIT_SOCKET:f,CREATE_HTTPS_CONNECTION:g}=c(10358);class h extends e{constructor(a){super(a),this.defaultPort=443,this.protocol="https:",this.maxCachedSessions=this.options.maxCachedSessions,void 0===this.maxCachedSessions&&(this.maxCachedSessions=100),this._sessionCache={map:{},list:[]}}createConnection(a,b){let c=this[g](a,b);return this[f](c,a),c}}h.prototype[g]=d.prototype.createConnection,["getName","_getSession","_cacheSession","_evictSession"].forEach(function(a){"function"==typeof d.prototype[a]&&(h.prototype[a]=d.prototype[a])}),a.exports=h},5433:(a,b,c)=>{var d=c(44724),e=c(84833),f=c(68041);function g(a,b){return a<b?-1:+(a>b)}a.exports=function(a,b,c,g){var h=e(a,c);return d(a,b,h,function c(e,f){return e?void g(e,f):(h.index++,h.index<(h.keyedList||a).length)?void d(a,b,h,c):void g(null,h.results)}),f.bind(h,g)},a.exports.ascending=g,a.exports.descending=function(a,b){return -1*g(a,b)}},5550:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{normalizeAppPath:function(){return f},normalizeRscURL:function(){return g}});let d=c(35621),e=c(5619);function f(a){return(0,d.ensureLeadingSlash)(a.split("/").reduce((a,b,c,d)=>!b||(0,e.isGroupSegment)(b)||"@"===b[0]||("page"===b||"route"===b)&&c===d.length-1?a:a+"/"+b,""))}function g(a){return a.replace(/\.rsc($|\?)/,"$1")}},5619:(a,b)=>{"use strict";function c(a){return"("===a[0]&&a.endsWith(")")}function d(a){return a.startsWith("@")&&"@children"!==a}function e(a,b){if(a.includes(f)){let a=JSON.stringify(b);return"{}"!==a?f+"?"+a:f}return a}Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{DEFAULT_SEGMENT_KEY:function(){return g},PAGE_SEGMENT_KEY:function(){return f},addSearchParamsIfPageSegment:function(){return e},isGroupSegment:function(){return c},isParallelRouteSegment:function(){return d}});let f="__PAGE__",g="__DEFAULT__"},5984:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});let d=c(78140);b.default={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:a=>(0,d.validateTuple)(a,"items")}},6286:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.getRules=b.isJSONType=void 0;let c=new Set(["string","number","integer","boolean","null","object","array"]);b.isJSONType=function(a){return"string"==typeof a&&c.has(a)},b.getRules=function(){let a={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...a,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},a.number,a.string,a.array,a.object],post:{rules:[]},all:{},keywords:{}}}},6544:(a,b,c)=>{"use strict";c.d(b,{loadServerConfigs:()=>h,q:()=>i});var d=c(79111),e=c(89392);let f=(0,c(18230).h)("backend/services/mcp/config"),g=new Set(["streamable","sse","websocket"]);async function h(){f.debug("Entering loadServerConfigs method");try{let a=await (0,d.YM)(e.Z.MCP_SERVERS,{});return Object.entries(a).map(([a,b])=>{let c=b.transport||"stdio";g.has(c)&&function(a){if("string"!=typeof a)return!1;let b=a.trim();return"/"===b||"\\"===b||/^[A-Za-z]:[\\/]?$/.test(b)}(b.rootPath)&&(f.info(`Normalizing filesystem-root rootPath "${b.rootPath}" of remote server ${a} to mcp-servers/${a}`),b={...b,rootPath:`mcp-servers/${a}`});let d={name:a,disabled:!1,autoApprove:[],rootPath:"",env:{},_buildCommand:"",_installCommand:""};return"streamable"===c?{...d,...b,name:a,requestInit:b.requestInit&&"object"==typeof b.requestInit?b.requestInit:void 0,reconnectionOptions:b.reconnectionOptions&&"object"==typeof b.reconnectionOptions?b.reconnectionOptions:void 0,sessionId:b.sessionId||void 0,oauthClientId:b.oauthClientId||"",oauthClientSecret:b.oauthClientSecret||"",oauthScopes:b.oauthScopes||(b.oauthClientId||b.oauthClientInformation?["read"]:void 0),oauthClientMetadata:b.oauthClientMetadata,oauthClientInformation:b.oauthClientInformation,oauthTokens:b.oauthTokens,oauthCodeVerifier:b.oauthCodeVerifier}:"sse"===c?{...d,...b,name:a,eventSourceInit:b.eventSourceInit&&"object"==typeof b.eventSourceInit?b.eventSourceInit:void 0,requestInit:b.requestInit&&"object"==typeof b.requestInit?b.requestInit:void 0}:"websocket"===c?{...d,...b,name:a,websocketUrl:b.websocketUrl||""}:{...d,...b,name:a,command:b.command||"",args:b.args||[],stderr:b.stderr||"pipe"}})}catch(a){return f.warn("Failed to load server configs",a),{success:!1,error:`Failed to load server configs: ${a instanceof Error?a.message:"Unknown error"}`}}}async function i(a){f.debug("Entering saveConfig method");try{let b=Object.fromEntries(Array.from(a.entries()).filter(([,a])=>!0!==a.builtIn).map(([a,b])=>{let{name:c,...d}=b;return[a,d]}));return await (0,d.VH)(e.Z.MCP_SERVERS,b),{success:!0}}catch(a){return f.warn("Failed to save config",a),{success:!1,error:`Failed to save config: ${a instanceof Error?a.message:"Unknown error"}`}}}},7041:a=>{"use strict";a.exports="undefined"!=typeof Reflect&&Reflect.getPrototypeOf||null},7265:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.contentVocabulary=b.metadataVocabulary=void 0,b.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"],b.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]},7349:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});let d=c(31849),e=c(83593),f=c(73744);b.default={keyword:"enum",schemaType:"array",$data:!0,error:{message:"must be equal to one of the allowed values",params:({schemaCode:a})=>(0,d._)`{allowedValues: ${a}}`},code(a){let b,c,{gen:g,data:h,$data:i,schema:j,schemaCode:k,it:l}=a;if(!i&&0===j.length)throw Error("enum must have non-empty array");let m=j.length>=l.opts.loopEnum,n=()=>null!=b?b:b=(0,e.useFunc)(g,f.default);if(m||i)c=g.let("valid"),a.block$data(c,function(){g.assign(c,!1),g.forOf("v",k,a=>g.if((0,d._)`${n()}(${h}, ${a})`,()=>g.assign(c,!0).break()))});else{if(!Array.isArray(j))throw Error("ajv implementation error");let a=g.const("vSchema",k);c=(0,d.or)(...j.map((b,c)=>(function(a,b){let c=j[b];return"object"==typeof c&&null!==c?(0,d._)`${n()}(${h}, ${a}[${b}])`:(0,d._)`${h} === ${c}`})(a,c)))}a.pass(c)}}},7901:a=>{"use strict";a.exports=Math.floor},8560:(a,b,c)=>{"use strict";c.d(b,{l:()=>j,s:()=>k});var d=c(37067),e=c.n(d),f=c(44708),g=c.n(f),h=c(1191),i=c(14790);function j(a){if("requesty"===a||"openrouter"===a)return{"HTTP-Referer":"https://flujo.com.co","X-Title":"FLUJO"}}function k(a){let{apiKey:b,baseURL:c,maxRetries:d=2,timeout:f=i.l,defaultHeaders:j}=a,k=!c||c.trim().toLowerCase().startsWith("https")?new(g()).Agent({keepAlive:!1}):new(e()).Agent({keepAlive:!1});return new h.Ay({apiKey:b,baseURL:c,httpAgent:k,maxRetries:d,timeout:f,...j?{defaultHeaders:j}:{}})}},8654:(a,b,c)=>{"use strict";a.exports=c(72886).vendored["react-rsc"].React},9216:(a,b,c)=>{"use strict";let d,e=c(21820),f=c(83997),g=c(28325),{env:h}=process;function i(a,b={}){var c;return 0!==(c=function(a,{streamIsTTY:b,sniffFlags:c=!0}={}){let f=function(){if("FORCE_COLOR"in h)return"true"===h.FORCE_COLOR?1:"false"===h.FORCE_COLOR?0:0===h.FORCE_COLOR.length?1:Math.min(Number.parseInt(h.FORCE_COLOR,10),3)}();void 0!==f&&(d=f);let i=c?d:f;if(0===i)return 0;if(c){if(g("color=16m")||g("color=full")||g("color=truecolor"))return 3;if(g("color=256"))return 2}if(a&&!b&&void 0===i)return 0;let j=i||0;if("dumb"===h.TERM)return j;if("win32"===process.platform){let a=e.release().split(".");return Number(a[0])>=10&&Number(a[2])>=10586?Number(a[2])>=14931?3:2:1}if("CI"in h)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE","DRONE"].some(a=>a in h)||"codeship"===h.CI_NAME?1:j;if("TEAMCITY_VERSION"in h)return+!!/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(h.TEAMCITY_VERSION);if("truecolor"===h.COLORTERM)return 3;if("TERM_PROGRAM"in h){let a=Number.parseInt((h.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(h.TERM_PROGRAM){case"iTerm.app":return a>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(h.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(h.TERM)||"COLORTERM"in h?1:j}(a,{streamIsTTY:a&&a.isTTY,...b}))&&{level:c,hasBasic:!0,has256:c>=2,has16m:c>=3}}g("no-color")||g("no-colors")||g("color=false")||g("color=never")?d=0:(g("color")||g("colors")||g("color=true")||g("color=always"))&&(d=1),a.exports={supportsColor:i,stdout:i({isTTY:f.isatty(1)}),stderr:i({isTTY:f.isatty(2)})}},9534:a=>{"use strict";let b=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),c=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u),d=RegExp.prototype.test.bind(/^[\da-f]{2}$/iu),e=RegExp.prototype.test.bind(/^[\da-z\-._~]$/iu),f=RegExp.prototype.test.bind(/^[\da-z\-._~!$&'()*+,;=:@/]$/iu);function g(a){let b="",c=0,d=0;for(d=0;d<a.length;d++)if(48!==(c=a[d].charCodeAt(0))){if(!(c>=48&&c<=57||c>=65&&c<=70||c>=97&&c<=102))return"";b+=a[d];break}for(d+=1;d<a.length;d++){if(!((c=a[d].charCodeAt(0))>=48&&c<=57||c>=65&&c<=70||c>=97&&c<=102))return"";b+=a[d]}return b}let h=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function i(a){return a.length=0,!0}function j(a,b,c){if(a.length){let d=g(a);if(""===d)return c.error=!0,!1;b.push(d),a.length=0}return!0}function k(a){if(2>function(a,b){let c=0;for(let b=0;b<a.length;b++)":"===a[b]&&c++;return c}(a,":"))return{host:a,isIPV6:!1};let b=function(a){let b=0,c={error:!1,address:"",zone:""},d=[],e=[],f=!1,h=!1,k=j;for(let g=0;g<a.length;g++){let j=a[g];if("["!==j&&"]"!==j)if(":"===j){if(!0===f&&(h=!0),!k(e,d,c))break;if(++b>7){c.error=!0;break}g>0&&":"===a[g-1]&&(f=!0),d.push(":");continue}else if("%"===j){if(!k(e,d,c))break;k=i}else{e.push(j);continue}}return e.length&&(k===i?c.zone=e.join(""):h?d.push(e.join("")):d.push(g(e))),c.address=d.join(""),c}(a);if(b.error)return{host:a,isIPV6:!1};{let a=b.address,c=b.address;return b.zone&&(a+="%"+b.zone,c+="%25"+b.zone),{host:a,isIPV6:!0,escapedHost:c}}}let l={"@":"%40","/":"%2F","?":"%3F","#":"%23",":":"%3A"},m=/[@/?#:]/g,n=/[@/?#]/g;function o(a,b){let c=b?n:m;return c.lastIndex=0,a.replace(c,a=>l[a])}a.exports={nonSimpleDomain:h,recomposeAuthority:function(a){let b=[];if(void 0!==a.userinfo&&(b.push(a.userinfo),b.push("@")),void 0!==a.host){let d=unescape(a.host);if(!c(d)){let a=k(d);d=!0===a.isIPV6?`[${a.escapedHost}]`:o(d,!1)}b.push(d)}return("number"==typeof a.port||"string"==typeof a.port)&&(b.push(":"),b.push(String(a.port))),b.length?b.join(""):void 0},reescapeHostDelimiters:o,normalizePercentEncoding:function(a,b=!1){if(-1===a.indexOf("%"))return a;let c="";for(let f=0;f<a.length;f++){if("%"===a[f]&&f+2<a.length){let g=a.slice(f+1,f+3);if(d(g)){let a=g.toUpperCase(),d=String.fromCharCode(parseInt(a,16));b&&e(d)?c+=d:c+="%"+a,f+=2;continue}}c+=a[f]}return c},normalizePathEncoding:function(a){let b="";for(let c=0;c<a.length;c++){if("%"===a[c]&&c+2<a.length){let f=a.slice(c+1,c+3);if(d(f)){let a=f.toUpperCase(),d=String.fromCharCode(parseInt(a,16));"."!==d&&e(d)?b+=d:b+="%"+a,c+=2;continue}}f(a[c])?b+=a[c]:b+=escape(a[c])}return b},escapePreservingEscapes:function(a){let b="";for(let c=0;c<a.length;c++){if("%"===a[c]&&c+2<a.length){let e=a.slice(c+1,c+3);if(d(e)){b+="%"+e.toUpperCase(),c+=2;continue}}b+=escape(a[c])}return b},removeDotSegments:function(a){let b=a,c=[],d=-1,e=0;for(;e=b.length;){if(1===e)if("."===b)break;else if("/"===b){c.push("/");break}else{c.push(b);break}if(2===e){if("."===b[0]){if("."===b[1])break;else if("/"===b[1]){b=b.slice(2);continue}}else if("/"===b[0]&&("."===b[1]||"/"===b[1])){c.push("/");break}}else if(3===e&&"/.."===b){0!==c.length&&c.pop(),c.push("/");break}if("."===b[0]){if("."===b[1]){if("/"===b[2]){b=b.slice(3);continue}}else if("/"===b[1]){b=b.slice(2);continue}}else if("/"===b[0]&&"."===b[1]){if("/"===b[2]){b=b.slice(2);continue}else if("."===b[2]&&"/"===b[3]){b=b.slice(3),0!==c.length&&c.pop();continue}}if(-1===(d=b.indexOf("/",1))){c.push(b);break}c.push(b.slice(0,d)),b=b.slice(d)}return c.join("")},isIPv4:c,isUUID:b,normalizeIPv6:k,stringArrayToHexStripped:g}},9583:(a,b,c)=>{a.exports=f,f.sync=function(a,b){return e(d.statSync(a),a,b)};var d=c(29021);function e(a,b,c){if(!a.isSymbolicLink()&&!a.isFile())return!1;var d=void 0!==c.pathExt?c.pathExt:process.env.PATHEXT;if(!d||-1!==(d=d.split(";")).indexOf(""))return!0;for(var e=0;e<d.length;e++){var f=d[e].toLowerCase();if(f&&b.substr(-f.length).toLowerCase()===f)return!0}return!1}function f(a,b,c){d.stat(a,function(d,f){c(d,!d&&e(f,a,b))})}},9715:a=>{"use strict";a.exports=Math.round},10289:(a,b,c)=>{var d=c(79551),e=d.URL,f=c(81630),g=c(55591),h=c(27910).Writable,i=c(12412),j=c(2472);!function(){var a="undefined"!=typeof process,b="undefined"!=typeof window&&"undefined"!=typeof document,c=F(Error.captureStackTrace);a||!b&&c||console.warn("The follow-redirects package should be excluded from browser builds.")}();var k=!1;try{i(new e(""))}catch(a){k="ERR_INVALID_URL"===a.code}var l=["Authorization","Proxy-Authorization","Cookie"],m=["auth","host","hostname","href","path","pathname","port","protocol","query","search","hash"],n=["abort","aborted","connect","error","socket","timeout"],o=Object.create(null);n.forEach(function(a){o[a]=function(b,c,d){this._redirectable.emit(a,b,c,d)}});var p=C("ERR_INVALID_URL","Invalid URL",TypeError),q=C("ERR_FR_REDIRECTION_FAILURE","Redirected request failed"),r=C("ERR_FR_TOO_MANY_REDIRECTS","Maximum number of redirects exceeded",q),s=C("ERR_FR_MAX_BODY_LENGTH_EXCEEDED","Request body larger than maxBodyLength limit"),t=C("ERR_STREAM_WRITE_AFTER_END","write after end"),u=h.prototype.destroy||x;function v(a,b){h.call(this),this._sanitizeOptions(a),this._options=a,this._ended=!1,this._ending=!1,this._redirectCount=0,this._redirects=[],this._requestBodyLength=0,this._requestBodyBuffers=[],b&&this.on("response",b);var c=this;this._onNativeResponse=function(a){try{c._processResponse(a)}catch(a){c.emit("error",a instanceof q?a:new q({cause:a}))}},this._headerFilter=RegExp("^(?:"+l.concat(a.sensitiveHeaders).map(G).join("|")+")$","i"),this._performRequest()}function w(a){var b={maxRedirects:21,maxBodyLength:0xa00000},c={};return Object.keys(a).forEach(function(d){var f=d+":",g=c[f]=a[d],h=b[d]=Object.create(g);Object.defineProperties(h,{request:{value:function(a,d,g){var h;return(h=a,e&&h instanceof e)?a=A(a):E(a)?a=A(y(a)):(g=d,d=z(a),a={protocol:f}),F(d)&&(g=d,d=null),(d=Object.assign({maxRedirects:b.maxRedirects,maxBodyLength:b.maxBodyLength},a,d)).nativeProtocols=c,E(d.host)||E(d.hostname)||(d.hostname="::1"),i.equal(d.protocol,f,"protocol mismatch"),j("options",d),new v(d,g)},configurable:!0,enumerable:!0,writable:!0},get:{value:function(a,b,c){var d=h.request(a,b,c);return d.end(),d},configurable:!0,enumerable:!0,writable:!0}})}),b}function x(){}function y(a){var b;if(k)b=new e(a);else if(!E((b=z(d.parse(a))).protocol))throw new p({input:a});return b}function z(a){if(/^\[/.test(a.hostname)&&!/^\[[:0-9a-f]+\]$/i.test(a.hostname)||/^\[/.test(a.host)&&!/^\[[:0-9a-f]+\](:\d+)?$/i.test(a.host))throw new p({input:a.href||a});return a}function A(a,b){var c=b||{};for(var d of m)c[d]=a[d];return c.hostname.startsWith("[")&&(c.hostname=c.hostname.slice(1,-1)),""!==c.port&&(c.port=Number(c.port)),c.path=c.search?c.pathname+c.search:c.pathname,c}function B(a,b){var c;for(var d in b)a.test(d)&&(c=b[d],delete b[d]);return null==c?void 0:String(c).trim()}function C(a,b,c){function d(c){F(Error.captureStackTrace)&&Error.captureStackTrace(this,this.constructor),Object.assign(this,c||{}),this.code=a,this.message=this.cause?b+": "+this.cause.message:b}return d.prototype=new(c||Error),Object.defineProperties(d.prototype,{constructor:{value:d,enumerable:!1},name:{value:"Error ["+a+"]",enumerable:!1}}),d}function D(a,b){for(var c of n)a.removeListener(c,o[c]);a.on("error",x),a.destroy(b)}function E(a){return"string"==typeof a||a instanceof String}function F(a){return"function"==typeof a}function G(a){return a.replace(/[\]\\/()*+?.$]/g,"\\$&")}v.prototype=Object.create(h.prototype),v.prototype.abort=function(){D(this._currentRequest),this._currentRequest.abort(),this.emit("abort")},v.prototype.destroy=function(a){return D(this._currentRequest,a),u.call(this,a),this},v.prototype.write=function(a,b,c){var d;if(this._ending)throw new t;if(!E(a)&&!("object"==typeof(d=a)&&"length"in d))throw TypeError("data should be a string, Buffer or Uint8Array");if(F(b)&&(c=b,b=null),0===a.length){c&&c();return}this._requestBodyLength+a.length<=this._options.maxBodyLength?(this._requestBodyLength+=a.length,this._requestBodyBuffers.push({data:a,encoding:b}),this._currentRequest.write(a,b,c)):(this.emit("error",new s),this.abort())},v.prototype.end=function(a,b,c){if(F(a)?(c=a,a=b=null):F(b)&&(c=b,b=null),a){var d=this,e=this._currentRequest;this.write(a,b,function(){d._ended=!0,e.end(null,null,c)}),this._ending=!0}else this._ended=this._ending=!0,this._currentRequest.end(null,null,c)},v.prototype.setHeader=function(a,b){this._options.headers[a]=b,this._currentRequest.setHeader(a,b)},v.prototype.removeHeader=function(a){delete this._options.headers[a],this._currentRequest.removeHeader(a)},v.prototype.setTimeout=function(a,b){var c=this;function d(b){b.setTimeout(a),b.removeListener("timeout",b.destroy),b.addListener("timeout",b.destroy)}function e(b){c._timeout&&clearTimeout(c._timeout),c._timeout=setTimeout(function(){c.emit("timeout"),f()},a),d(b)}function f(){c._timeout&&(clearTimeout(c._timeout),c._timeout=null),c.removeListener("abort",f),c.removeListener("error",f),c.removeListener("response",f),c.removeListener("close",f),b&&c.removeListener("timeout",b),c.socket||c._currentRequest.removeListener("socket",e)}return b&&this.on("timeout",b),this.socket?e(this.socket):this._currentRequest.once("socket",e),this.on("socket",d),this.on("abort",f),this.on("error",f),this.on("response",f),this.on("close",f),this},["flushHeaders","getHeader","setNoDelay","setSocketKeepAlive"].forEach(function(a){v.prototype[a]=function(b,c){return this._currentRequest[a](b,c)}}),["aborted","connection","socket"].forEach(function(a){Object.defineProperty(v.prototype,a,{get:function(){return this._currentRequest[a]}})}),v.prototype._sanitizeOptions=function(a){if(a.headers||(a.headers={}),a.sensitiveHeaders instanceof Array||(a.sensitiveHeaders=[]),a.host&&(a.hostname||(a.hostname=a.host),delete a.host),!a.pathname&&a.path){var b=a.path.indexOf("?");b<0?a.pathname=a.path:(a.pathname=a.path.substring(0,b),a.search=a.path.substring(b))}},v.prototype._performRequest=function(){var a=this._options.protocol,b=this._options.nativeProtocols[a];if(!b)throw TypeError("Unsupported protocol "+a);if(this._options.agents){var c=a.slice(0,-1);this._options.agent=this._options.agents[c]}var e=this._currentRequest=b.request(this._options,this._onNativeResponse);for(var f of(e._redirectable=this,n))e.on(f,o[f]);if(this._currentUrl=/^\//.test(this._options.path)?d.format(this._options):this._options.path,this._isRedirect){var g=0,h=this,i=this._requestBodyBuffers;!function a(b){if(e===h._currentRequest)if(b)h.emit("error",b);else if(g<i.length){var c=i[g++];e.finished||e.write(c.data,c.encoding,a)}else h._ended&&e.end()}()}},v.prototype._processResponse=function(a){var b,c,f,g,h,l,m=a.statusCode;this._options.trackRedirects&&this._redirects.push({url:this._currentUrl,headers:a.headers,statusCode:m});var n=a.headers.location;if(!n||!1===this._options.followRedirects||m<300||m>=400){a.responseUrl=this._currentUrl,a.redirects=this._redirects,this.emit("response",a),this._requestBodyBuffers=[];return}if(D(this._currentRequest),a.destroy(),++this._redirectCount>this._options.maxRedirects)throw new r;var o=this._options.beforeRedirect;o&&(l=Object.assign({Host:a.req.getHeader("host")},this._options.headers));var p=this._options.method;(301!==m&&302!==m||"POST"!==this._options.method)&&(303!==m||/^(?:GET|HEAD)$/.test(this._options.method))||(this._options.method="GET",this._requestBodyBuffers=[],B(/^content-/i,this._options.headers));var q=B(/^host$/i,this._options.headers),s=y(this._currentUrl),t=q||s.host,u=/^\w+:/.test(n)?this._currentUrl:d.format(Object.assign(s,{host:t})),v=(b=n,c=u,k?new e(b,c):y(d.resolve(c,b)));if(j("redirecting to",v.href),this._isRedirect=!0,A(v,this._options),(v.protocol===s.protocol||"https:"===v.protocol)&&(v.host===t||(f=v.host,g=t,i(E(f)&&E(g)),(h=f.length-g.length-1)>0&&"."===f[h]&&f.endsWith(g)))||B(this._headerFilter,this._options.headers),F(o)){var w={headers:a.headers,statusCode:m},x={url:u,method:p,headers:l};o(this._options,w,x),this._sanitizeOptions(this._options)}this._performRequest()},a.exports=w({http:f,https:g}),a.exports.wrap=w},10358:a=>{"use strict";a.exports={CURRENT_ID:Symbol("agentkeepalive#currentId"),CREATE_ID:Symbol("agentkeepalive#createId"),INIT_SOCKET:Symbol("agentkeepalive#initSocket"),CREATE_HTTPS_CONNECTION:Symbol("agentkeepalive#createHttpsConnection"),SOCKET_CREATED_TIME:Symbol("agentkeepalive#socketCreatedTime"),SOCKET_NAME:Symbol("agentkeepalive#socketName"),SOCKET_REQUEST_COUNT:Symbol("agentkeepalive#socketRequestCount"),SOCKET_REQUEST_FINISHED_COUNT:Symbol("agentkeepalive#socketRequestFinishedCount")}},10481:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{chainStreams:function(){return n},continueDynamicHTMLResume:function(){return E},continueDynamicPrerender:function(){return C},continueFizzStream:function(){return B},continueStaticPrerender:function(){return D},createBufferedTransformStream:function(){return s},createDocumentClosingStream:function(){return F},createRootLayoutValidatorStream:function(){return A},renderToInitialFizzStream:function(){return u},streamFromBuffer:function(){return p},streamFromString:function(){return o},streamToBuffer:function(){return q},streamToString:function(){return r}});let d=c(73359),e=c(69579),f=c(34856),g=c(71545),h=c(21517),i=c(15542),j=c(96655),k=c(835);function l(){}let m=new TextEncoder;function n(...a){if(0===a.length)return new ReadableStream({start(a){a.close()}});if(1===a.length)return a[0];let{readable:b,writable:c}=new TransformStream,d=a[0].pipeTo(c,{preventClose:!0}),e=1;for(;e<a.length-1;e++){let b=a[e];d=d.then(()=>b.pipeTo(c,{preventClose:!0}))}let f=a[e];return(d=d.then(()=>f.pipeTo(c))).catch(l),b}function o(a){return new ReadableStream({start(b){b.enqueue(m.encode(a)),b.close()}})}function p(a){return new ReadableStream({start(b){b.enqueue(a),b.close()}})}async function q(a){let b=a.getReader(),c=[];for(;;){let{done:a,value:d}=await b.read();if(a)break;c.push(d)}return Buffer.concat(c)}async function r(a,b){let c=new TextDecoder("utf-8",{fatal:!0}),d="";for await(let e of a){if(null==b?void 0:b.aborted)return d;d+=c.decode(e,{stream:!0})}return d+c.decode()}function s(){let a,b=[],c=0;return new TransformStream({transform(d,e){b.push(d),c+=d.byteLength,(d=>{if(a)return;let e=new f.DetachedPromise;a=e,(0,g.scheduleImmediate)(()=>{try{let a=new Uint8Array(c),e=0;for(let c=0;c<b.length;c++){let d=b[c];a.set(d,e),e+=d.byteLength}b.length=0,c=0,d.enqueue(a)}catch{}finally{a=void 0,e.resolve()}})})(e)},flush(){if(a)return a.promise}})}function t(a,b){let c=!1;return new TransformStream({transform(d,e){if(a&&!c){c=!0;let a=new TextDecoder("utf-8",{fatal:!0}).decode(d,{stream:!0}),f=(0,k.insertBuildIdComment)(a,b);e.enqueue(m.encode(f));return}e.enqueue(d)}})}function u({ReactDOMServer:a,element:b,streamOptions:c}){return(0,d.getTracer)().trace(e.AppRenderSpan.renderToReadableStream,async()=>a.renderToReadableStream(b,c))}function v(a){let b=-1,c=!1;return new TransformStream({async transform(d,e){let f=-1,g=-1;if(b++,c)return void e.enqueue(d);let j=0;if(-1===f){if(-1===(f=(0,i.indexOfUint8Array)(d,h.ENCODED_TAGS.META.ICON_MARK)))return void e.enqueue(d);47===d[f+(j=h.ENCODED_TAGS.META.ICON_MARK.length)]?j+=2:j++}if(0===b){if(g=(0,i.indexOfUint8Array)(d,h.ENCODED_TAGS.CLOSED.HEAD),-1!==f){if(f<g){let a=new Uint8Array(d.length-j);a.set(d.subarray(0,f)),a.set(d.subarray(f+j),f),d=a}else{let b=await a(),c=m.encode(b),e=c.length,g=new Uint8Array(d.length-j+e);g.set(d.subarray(0,f)),g.set(c,f),g.set(d.subarray(f+j),f+e),d=g}c=!0}}else{let b=await a(),e=m.encode(b),g=e.length,h=new Uint8Array(d.length-j+g);h.set(d.subarray(0,f)),h.set(e,f),h.set(d.subarray(f+j),f+g),d=h,c=!0}e.enqueue(d)}})}function w(a){let b=!1,c=!1;return new TransformStream({async transform(d,e){c=!0;let f=await a();if(b){if(f){let a=m.encode(f);e.enqueue(a)}e.enqueue(d)}else{let a=(0,i.indexOfUint8Array)(d,h.ENCODED_TAGS.CLOSED.HEAD);if(-1!==a){if(f){let b=m.encode(f),c=new Uint8Array(d.length+b.length);c.set(d.slice(0,a)),c.set(b,a),c.set(d.slice(a),a+b.length),e.enqueue(c)}else e.enqueue(d);b=!0}else f&&e.enqueue(m.encode(f)),e.enqueue(d),b=!0}},async flush(b){if(c){let c=await a();c&&b.enqueue(m.encode(c))}}})}function x(a,b){let c=!1,d=null,e=!1;function f(a){return d||(d=h(a)),d}async function h(d){let f=a.getReader();b&&await (0,g.atLeastOneTask)();try{for(;;){let{done:a,value:h}=await f.read();if(a){e=!0;return}b||c||await (0,g.atLeastOneTask)(),d.enqueue(h)}}catch(a){d.error(a)}}return new TransformStream({start(a){b||f(a)},transform(a,c){c.enqueue(a),b&&f(c)},flush(a){if(c=!0,!e)return f(a)}})}let y="</body></html>";function z(){let a=!1;return new TransformStream({transform(b,c){if(a)return c.enqueue(b);let d=(0,i.indexOfUint8Array)(b,h.ENCODED_TAGS.CLOSED.BODY_AND_HTML);if(d>-1){if(a=!0,b.length===h.ENCODED_TAGS.CLOSED.BODY_AND_HTML.length)return;let e=b.slice(0,d);if(c.enqueue(e),b.length>h.ENCODED_TAGS.CLOSED.BODY_AND_HTML.length+d){let a=b.slice(d+h.ENCODED_TAGS.CLOSED.BODY_AND_HTML.length);c.enqueue(a)}}else c.enqueue(b)},flush(a){a.enqueue(h.ENCODED_TAGS.CLOSED.BODY_AND_HTML)}})}function A(){let a=!1,b=!1;return new TransformStream({async transform(c,d){!a&&(0,i.indexOfUint8Array)(c,h.ENCODED_TAGS.OPENING.HTML)>-1&&(a=!0),!b&&(0,i.indexOfUint8Array)(c,h.ENCODED_TAGS.OPENING.BODY)>-1&&(b=!0),d.enqueue(c)},flush(c){let d=[];a||d.push("html"),b||d.push("body"),d.length&&c.enqueue(m.encode(`<html id="__next_error__">
65
65
  <template
66
66
  data-next-error-message="Missing ${d.map(a=>`<${a}>`).join(d.length>1?" and ":"")} tags in the root layout.
67
67
  Read more at https://nextjs.org/docs/messages/missing-root-layout-tags"
@@ -90,9 +90,9 @@ Content-Type: ${a}\r
90
90
  `;h.auth&&(k["Proxy-Authorization"]=`Basic ${Buffer.from(h.auth).toString("base64")}`);let{host:q,port:r,secureEndpoint:s}=b;for(let a of(c=r,((d=s)||80!==c)&&(!d||443!==c)&&(q+=`:${r}`),k.Host=q,k.Connection="close",Object.keys(k)))p+=`${a}: ${k[a]}\r
91
91
  `;let t=l.default(e);e.write(`${p}\r
92
92
  `);let{statusCode:u,buffered:v}=yield t;if(200===u){if(a.once("socket",o),b.secureEndpoint){m("Upgrading socket connection to TLS");let a=b.servername||b.host;return g.default.connect(Object.assign(Object.assign({},function(a,...b){let c,d={};for(c in a)b.includes(c)||(d[c]=a[c]);return d}(b,"host","hostname","path","port")),{socket:e,servername:a}))}return e}e.destroy();let w=new f.default.Socket({writable:!1});return w.readable=!0,a.once("socket",a=>{m("replaying proxy buffer for failed request"),i.default(a.listenerCount("data")>0),a.push(v),a.push(null)}),w})}}function o(a){a.resume()}b.default=n},47973:function(a,b,c){var d,e,f,g,h;f=(e=(d=c(67278)).lib).Base,g=e.WordArray,(h=d.x64={}).Word=f.extend({init:function(a,b){this.high=a,this.low=b}}),h.WordArray=f.extend({init:function(a,b){a=this.words=a||[],void 0!=b?this.sigBytes=b:this.sigBytes=8*a.length},toX32:function(){for(var a=this.words,b=a.length,c=[],d=0;d<b;d++){var e=a[d];c.push(e.high),c.push(e.low)}return g.create(c,this.sigBytes)},clone:function(){for(var a=f.clone.call(this),b=a.words=this.words.slice(0),c=b.length,d=0;d<c;d++)b[d]=b[d].clone();return a}}),a.exports=d},47990:()=>{},48181:(a,b,c)=>{"use strict";var d=c(11870);a.exports=function(){return d()&&!!Symbol.toStringTag}},48366:function(a,b,c){var d,e;e=(d=c(67278)).lib.WordArray,d.enc.Base64url={stringify:function(a,b){void 0===b&&(b=!0);var c=a.words,d=a.sigBytes,e=b?this._safe_map:this._map;a.clamp();for(var f=[],g=0;g<d;g+=3)for(var h=(c[g>>>2]>>>24-g%4*8&255)<<16|(c[g+1>>>2]>>>24-(g+1)%4*8&255)<<8|c[g+2>>>2]>>>24-(g+2)%4*8&255,i=0;i<4&&g+.75*i<d;i++)f.push(e.charAt(h>>>6*(3-i)&63));var j=e.charAt(64);if(j)for(;f.length%4;)f.push(j);return f.join("")},parse:function(a,b){void 0===b&&(b=!0);var c=a.length,d=b?this._safe_map:this._map,f=this._reverseMap;if(!f){f=this._reverseMap=[];for(var g=0;g<d.length;g++)f[d.charCodeAt(g)]=g}var h=d.charAt(64);if(h){var i=a.indexOf(h);-1!==i&&(c=i)}for(var j=a,k=c,l=f,m=[],n=0,o=0;o<k;o++)if(o%4){var p=l[j.charCodeAt(o-1)]<<o%4*2|l[j.charCodeAt(o)]>>>6-o%4*2;m[n>>>2]|=p<<24-n%4*8,n++}return e.create(m,n)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",_safe_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"},a.exports=d.enc.Base64url},48584:(a,b)=>{"use strict";function c(a){for(let b=0;b<a.length;b++){let c=a[b];if("function"!=typeof c)throw Object.defineProperty(Error(`A "use server" file can only export async functions, found ${typeof c}.
93
- Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(b,"D",{enumerable:!0,get:function(){return c}})},49036:(a,b,c)=>{"use strict";a.exports=c(71649)},49213:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});let d=c(31849),e=c(83593);function f(a,b){let c=a.schema[b];return void 0!==c&&!(0,e.alwaysValidSchema)(a,c)}b.default={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:{message:({params:a})=>(0,d.str)`must match "${a.ifClause}" schema`,params:({params:a})=>(0,d._)`{failingKeyword: ${a.ifClause}}`},code(a){let{gen:b,parentSchema:c,it:g}=a;void 0===c.then&&void 0===c.else&&(0,e.checkStrictMode)(g,'"if" without "then" and "else" is ignored');let h=f(g,"then"),i=f(g,"else");if(!h&&!i)return;let j=b.let("valid",!0),k=b.name("_valid");if(function(){let b=a.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},k);a.mergeEvaluated(b)}(),a.reset(),h&&i){let c=b.let("ifClause");a.setParams({ifClause:c}),b.if(k,l("then",c),l("else",c))}else h?b.if(k,l("then")):b.if((0,d.not)(k),l("else"));function l(c,e){return()=>{let f=a.subschema({keyword:c},k);b.assign(j,k),a.mergeValidEvaluated(f,j),e?b.assign(e,(0,d._)`${c}`):a.setParams({ifClause:c})}}a.pass(j,()=>a.error(!0))}}},49502:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.AuthClient=b.DEFAULT_EAGER_REFRESH_THRESHOLD_MILLIS=b.DEFAULT_UNIVERSE=void 0;let d=c(94735),e=c(79792),f=c(45388),g=c(26981),h=c(58900);b.DEFAULT_UNIVERSE="googleapis.com",b.DEFAULT_EAGER_REFRESH_THRESHOLD_MILLIS=3e5;class i extends d.EventEmitter{apiKey;projectId;quotaProjectId;transporter;credentials={};eagerRefreshThresholdMillis=b.DEFAULT_EAGER_REFRESH_THRESHOLD_MILLIS;forceRefreshOnFailure=!1;universeDomain=b.DEFAULT_UNIVERSE;static RequestMethodNameSymbol=Symbol("request method name");static RequestLogIdSymbol=Symbol("request log id");constructor(a={}){super();let c=(0,f.originalOrCamelOptions)(a);this.apiKey=a.apiKey,this.projectId=c.get("project_id")??null,this.quotaProjectId=c.get("quota_project_id"),this.credentials=c.get("credentials")??{},this.universeDomain=c.get("universe_domain")??b.DEFAULT_UNIVERSE,this.transporter=a.transporter??new e.Gaxios(a.transporterOptions),!1!==c.get("useAuthRequestParameters")&&(this.transporter.interceptors.request.add(i.DEFAULT_REQUEST_INTERCEPTOR),this.transporter.interceptors.response.add(i.DEFAULT_RESPONSE_INTERCEPTOR)),a.eagerRefreshThresholdMillis&&(this.eagerRefreshThresholdMillis=a.eagerRefreshThresholdMillis),this.forceRefreshOnFailure=a.forceRefreshOnFailure??!1}fetch(...a){let b,c=a[0],d=a[1],f=new Headers;return("string"==typeof c?b=new URL(c):c instanceof URL?b=c:c&&c.url&&(b=new URL(c.url)),c&&"object"==typeof c&&"headers"in c&&e.Gaxios.mergeHeaders(f,c.headers),d&&e.Gaxios.mergeHeaders(f,new Headers(d.headers)),"object"!=typeof c||c instanceof URL)?this.request({...d,headers:f,url:b}):this.request({...d,...c,headers:f,url:b})}setCredentials(a){this.credentials=a}addSharedMetadataHeaders(a){return!a.has("x-goog-user-project")&&this.quotaProjectId&&a.set("x-goog-user-project",this.quotaProjectId),a}addUserProjectAndAuthHeaders(a,b){let c=b.get("x-goog-user-project"),d=b.get("authorization");return c&&a.set("x-goog-user-project",c),d&&a.set("authorization",d),a}static log=(0,g.log)("auth");static DEFAULT_REQUEST_INTERCEPTOR={resolved:async a=>{if(!a.headers.has("x-goog-api-client")){let b=process.version.replace(/^v/,"");a.headers.set("x-goog-api-client",`gl-node/${b}`)}let b=a.headers.get("User-Agent");b?b.includes(`${h.PRODUCT_NAME}/`)||a.headers.set("User-Agent",`${b} ${h.USER_AGENT}`):a.headers.set("User-Agent",h.USER_AGENT);try{let b=a[i.RequestMethodNameSymbol],c=`${Math.floor(1e3*Math.random())}`;a[i.RequestLogIdSymbol]=c;let d={url:a.url,headers:a.headers};b?i.log.info("%s [%s] request %j",b,c,d):i.log.info("[%s] request %j",c,d)}catch(a){}return a}};static DEFAULT_RESPONSE_INTERCEPTOR={resolved:async a=>{try{let b=a.config,c=b[i.RequestMethodNameSymbol],d=b[i.RequestLogIdSymbol];c?i.log.info("%s [%s] response %j",c,d,a.data):i.log.info("[%s] response %j",d,a.data)}catch(a){}return a},rejected:async a=>{try{let b=a.config,c=b[i.RequestMethodNameSymbol],d=b[i.RequestLogIdSymbol];c?i.log.info("%s [%s] error %j",c,d,a.response?.data):i.log.error("[%s] error %j",d,a.response?.data)}catch(a){}throw a}};static setMethodName(a,b){try{a[i.RequestMethodNameSymbol]=b}catch(a){}}static get RETRY_CONFIG(){return{retry:!0,retryConfig:{httpMethodsToRetry:["GET","PUT","POST","HEAD","OPTIONS","DELETE"]}}}}b.AuthClient=i},49633:(a,b,c)=>{"use strict";var d,e,f;Object.defineProperty(b,"__esModule",{value:!0}),b.OAuth2Client=b.ClientAuthentication=b.CertificateFormat=b.CodeChallengeMethod=void 0;let g=c(79792),h=c(11723),i=c(27910),j=c(13755),k=c(45388),l=c(88593),m=c(49502),n=c(80876);!function(a){a.Plain="plain",a.S256="S256"}(d||(b.CodeChallengeMethod=d={})),function(a){a.PEM="PEM",a.JWK="JWK"}(e||(b.CertificateFormat=e={})),function(a){a.ClientSecretPost="ClientSecretPost",a.ClientSecretBasic="ClientSecretBasic",a.None="None"}(f||(b.ClientAuthentication=f={}));class o extends m.AuthClient{redirectUri;certificateCache={};certificateExpiry=null;certificateCacheFormat=e.PEM;refreshTokenPromises=new Map;endpoints;issuers;clientAuthentication;_clientId;_clientSecret;refreshHandler;constructor(a={},b,c){super("object"==typeof a?a:{}),"object"!=typeof a&&(a={clientId:a,clientSecret:b,redirectUri:c}),this._clientId=a.clientId||a.client_id,this._clientSecret=a.clientSecret||a.client_secret,this.redirectUri=a.redirectUri||a.redirect_uris?.[0],this.endpoints={tokenInfoUrl:"https://oauth2.googleapis.com/tokeninfo",oauth2AuthBaseUrl:"https://accounts.google.com/o/oauth2/v2/auth",oauth2TokenUrl:"https://oauth2.googleapis.com/token",oauth2RevokeUrl:"https://oauth2.googleapis.com/revoke",oauth2FederatedSignonPemCertsUrl:"https://www.googleapis.com/oauth2/v1/certs",oauth2FederatedSignonJwkCertsUrl:"https://www.googleapis.com/oauth2/v3/certs",oauth2IapPublicKeyUrl:"https://www.gstatic.com/iap/verify/public_key",...a.endpoints},this.clientAuthentication=a.clientAuthentication||f.ClientSecretPost,this.issuers=a.issuers||["accounts.google.com","https://accounts.google.com",this.universeDomain]}static GOOGLE_TOKEN_INFO_URL="https://oauth2.googleapis.com/tokeninfo";static CLOCK_SKEW_SECS_=300;static DEFAULT_MAX_TOKEN_LIFETIME_SECS_=86400;generateAuthUrl(a={}){if(a.code_challenge_method&&!a.code_challenge)throw Error("If a code_challenge_method is provided, code_challenge must be included.");return a.response_type=a.response_type||"code",a.client_id=a.client_id||this._clientId,a.redirect_uri=a.redirect_uri||this.redirectUri,Array.isArray(a.scope)&&(a.scope=a.scope.join(" ")),this.endpoints.oauth2AuthBaseUrl.toString()+"?"+h.stringify(a)}generateCodeVerifier(){throw Error("generateCodeVerifier is removed, please use generateCodeVerifierAsync instead.")}async generateCodeVerifierAsync(){let a=(0,l.createCrypto)(),b=a.randomBytesBase64(96).replace(/\+/g,"~").replace(/=/g,"_").replace(/\//g,"-"),c=(await a.sha256DigestBase64(b)).split("=")[0].replace(/\+/g,"-").replace(/\//g,"_");return{codeVerifier:b,codeChallenge:c}}getToken(a,b){let c="string"==typeof a?{code:a}:a;if(!b)return this.getTokenAsync(c);this.getTokenAsync(c).then(a=>b(null,a.tokens,a.res),a=>b(a,null,a.response))}async getTokenAsync(a){let b=this.endpoints.oauth2TokenUrl.toString(),c=new Headers,d={client_id:a.client_id||this._clientId,code_verifier:a.codeVerifier,code:a.code,grant_type:"authorization_code",redirect_uri:a.redirect_uri||this.redirectUri};if(this.clientAuthentication===f.ClientSecretBasic){let a=Buffer.from(`${this._clientId}:${this._clientSecret}`);c.set("authorization",`Basic ${a.toString("base64")}`)}this.clientAuthentication===f.ClientSecretPost&&(d.client_secret=this._clientSecret);let e={...o.RETRY_CONFIG,method:"POST",url:b,data:new URLSearchParams((0,k.removeUndefinedValuesInObject)(d)),headers:c};m.AuthClient.setMethodName(e,"getTokenAsync");let g=await this.transporter.request(e),h=g.data;return g.data&&g.data.expires_in&&(h.expiry_date=new Date().getTime()+1e3*g.data.expires_in,delete h.expires_in),this.emit("tokens",h),{tokens:h,res:g}}async refreshToken(a){if(!a)return this.refreshTokenNoCache(a);if(this.refreshTokenPromises.has(a))return this.refreshTokenPromises.get(a);let b=this.refreshTokenNoCache(a).then(b=>(this.refreshTokenPromises.delete(a),b),b=>{throw this.refreshTokenPromises.delete(a),b});return this.refreshTokenPromises.set(a,b),b}async refreshTokenNoCache(a){let b;if(!a)throw Error("No refresh token is set.");let c=this.endpoints.oauth2TokenUrl.toString(),d={refresh_token:a,client_id:this._clientId,client_secret:this._clientSecret,grant_type:"refresh_token"};try{let a={...o.RETRY_CONFIG,method:"POST",url:c,data:new URLSearchParams((0,k.removeUndefinedValuesInObject)(d))};m.AuthClient.setMethodName(a,"refreshTokenNoCache"),b=await this.transporter.request(a)}catch(a){throw a instanceof g.GaxiosError&&"invalid_grant"===a.message&&a.response?.data&&/ReAuth/i.test(a.response.data.error_description)&&(a.message=JSON.stringify(a.response.data)),a}let e=b.data;return b.data&&b.data.expires_in&&(e.expiry_date=new Date().getTime()+1e3*b.data.expires_in,delete e.expires_in),this.emit("tokens",e),{tokens:e,res:b}}refreshAccessToken(a){if(!a)return this.refreshAccessTokenAsync();this.refreshAccessTokenAsync().then(b=>a(null,b.credentials,b.res),a)}async refreshAccessTokenAsync(){let a=await this.refreshToken(this.credentials.refresh_token),b=a.tokens;return b.refresh_token=this.credentials.refresh_token,this.credentials=b,{credentials:this.credentials,res:a.res}}getAccessToken(a){if(!a)return this.getAccessTokenAsync();this.getAccessTokenAsync().then(b=>a(null,b.token,b.res),a)}async getAccessTokenAsync(){if(!(!this.credentials.access_token||this.isTokenExpiring()))return{token:this.credentials.access_token};{if(!this.credentials.refresh_token)if(this.refreshHandler){let a=await this.processAndValidateRefreshHandler();if(a?.access_token)return this.setCredentials(a),{token:this.credentials.access_token}}else throw Error("No refresh token or refresh handler callback is set.");let a=await this.refreshAccessTokenAsync();if(!a.credentials||a.credentials&&!a.credentials.access_token)throw Error("Could not refresh access token.");return{token:a.credentials.access_token,res:a.res}}}async getRequestHeaders(a){return(await this.getRequestMetadataAsync(a)).headers}async getRequestMetadataAsync(a){let b=this.credentials;if(!b.access_token&&!b.refresh_token&&!this.apiKey&&!this.refreshHandler)throw Error("No access, refresh token, API key or refresh handler callback is set.");if(b.access_token&&!this.isTokenExpiring()){b.token_type=b.token_type||"Bearer";let a=new Headers({authorization:b.token_type+" "+b.access_token});return{headers:this.addSharedMetadataHeaders(a)}}if(this.refreshHandler){let a=await this.processAndValidateRefreshHandler();if(a?.access_token){this.setCredentials(a);let b=new Headers({authorization:"Bearer "+this.credentials.access_token});return{headers:this.addSharedMetadataHeaders(b)}}}if(this.apiKey)return{headers:new Headers({"X-Goog-Api-Key":this.apiKey})};let c=null,d=null;try{d=(c=await this.refreshToken(b.refresh_token)).tokens}catch(a){throw a.response&&(403===a.response.status||404===a.response.status)&&(a.message=`Could not refresh access token: ${a.message}`),a}let e=this.credentials;e.token_type=e.token_type||"Bearer",d.refresh_token=e.refresh_token,this.credentials=d;let f=new Headers({authorization:e.token_type+" "+d.access_token});return{headers:this.addSharedMetadataHeaders(f),res:c.res}}static getRevokeTokenUrl(a){return new o().getRevokeTokenURL(a).toString()}getRevokeTokenURL(a){let b=new URL(this.endpoints.oauth2RevokeUrl);return b.searchParams.append("token",a),b}revokeToken(a,b){let c={...o.RETRY_CONFIG,url:this.getRevokeTokenURL(a).toString(),method:"POST"};if(m.AuthClient.setMethodName(c,"revokeToken"),!b)return this.transporter.request(c);this.transporter.request(c).then(a=>b(null,a),b)}revokeCredentials(a){if(!a)return this.revokeCredentialsAsync();this.revokeCredentialsAsync().then(b=>a(null,b),a)}async revokeCredentialsAsync(){let a=this.credentials.access_token;if(this.credentials={},a)return this.revokeToken(a);throw Error("No access token to revoke.")}request(a,b){if(!b)return this.requestAsync(a);this.requestAsync(a).then(a=>b(null,a),a=>b(a,a.response))}async requestAsync(a,b=!1){try{let b=await this.getRequestMetadataAsync();return a.headers=g.Gaxios.mergeHeaders(a.headers),this.addUserProjectAndAuthHeaders(a.headers,b.headers),this.apiKey&&a.headers.set("X-Goog-Api-Key",this.apiKey),await this.transporter.request(a)}catch(d){let c=d.response;if(c){let d=c.status,e=this.credentials&&this.credentials.access_token&&this.credentials.refresh_token&&(!this.credentials.expiry_date||this.forceRefreshOnFailure),f=this.credentials&&this.credentials.access_token&&!this.credentials.refresh_token&&(!this.credentials.expiry_date||this.forceRefreshOnFailure)&&this.refreshHandler,g=c.config.data instanceof i.Readable,h=401===d||403===d;if(!b&&h&&!g&&e)return await this.refreshAccessTokenAsync(),this.requestAsync(a,!0);if(!b&&h&&!g&&f){let b=await this.processAndValidateRefreshHandler();return b?.access_token&&this.setCredentials(b),this.requestAsync(a,!0)}}throw d}}verifyIdToken(a,b){if(b&&"function"!=typeof b)throw Error("This method accepts an options object as the first parameter, which includes the idToken, audience, and maxExpiry.");if(!b)return this.verifyIdTokenAsync(a);this.verifyIdTokenAsync(a).then(a=>b(null,a),b)}async verifyIdTokenAsync(a){if(!a.idToken)throw Error("The verifyIdToken method requires an ID Token");let b=await this.getFederatedSignonCertsAsync();return await this.verifySignedJwtWithCertsAsync(a.idToken,b.certs,a.audience,this.issuers,a.maxExpiry)}async getTokenInfo(a){let{data:b}=await this.transporter.request({...o.RETRY_CONFIG,method:"POST",headers:{"content-type":"application/x-www-form-urlencoded;charset=UTF-8",authorization:`Bearer ${a}`},url:this.endpoints.tokenInfoUrl.toString()}),c=Object.assign({expiry_date:new Date().getTime()+1e3*b.expires_in,scopes:b.scope.split(" ")},b);return delete c.expires_in,delete c.scope,c}getFederatedSignonCerts(a){if(!a)return this.getFederatedSignonCertsAsync();this.getFederatedSignonCertsAsync().then(b=>a(null,b.certs,b.res),a)}async getFederatedSignonCertsAsync(){let a,b,c=new Date().getTime(),d=(0,l.hasBrowserCrypto)()?e.JWK:e.PEM;if(this.certificateExpiry&&c<this.certificateExpiry.getTime()&&this.certificateCacheFormat===d)return{certs:this.certificateCache,format:d};switch(d){case e.PEM:b=this.endpoints.oauth2FederatedSignonPemCertsUrl.toString();break;case e.JWK:b=this.endpoints.oauth2FederatedSignonJwkCertsUrl.toString();break;default:throw Error(`Unsupported certificate format ${d}`)}try{let c={...o.RETRY_CONFIG,url:b};m.AuthClient.setMethodName(c,"getFederatedSignonCertsAsync"),a=await this.transporter.request(c)}catch(a){throw a instanceof Error&&(a.message=`Failed to retrieve verification certificates: ${a.message}`),a}let f=a?.headers.get("cache-control"),g=-1;if(f){let a=/max-age=(?<maxAge>[0-9]+)/.exec(f)?.groups?.maxAge;a&&(g=1e3*Number(a))}let h={};switch(d){case e.PEM:h=a.data;break;case e.JWK:for(let b of a.data.keys)h[b.kid]=b;break;default:throw Error(`Unsupported certificate format ${d}`)}let i=new Date;return this.certificateExpiry=-1===g?null:new Date(i.getTime()+g),this.certificateCache=h,this.certificateCacheFormat=d,{certs:h,format:d,res:a}}getIapPublicKeys(a){if(!a)return this.getIapPublicKeysAsync();this.getIapPublicKeysAsync().then(b=>a(null,b.pubkeys,b.res),a)}async getIapPublicKeysAsync(){let a,b=this.endpoints.oauth2IapPublicKeyUrl.toString();try{let c={...o.RETRY_CONFIG,url:b};m.AuthClient.setMethodName(c,"getIapPublicKeysAsync"),a=await this.transporter.request(c)}catch(a){throw a instanceof Error&&(a.message=`Failed to retrieve verification certificates: ${a.message}`),a}return{pubkeys:a.data,res:a}}verifySignedJwtWithCerts(){throw Error("verifySignedJwtWithCerts is removed, please use verifySignedJwtWithCertsAsync instead.")}async verifySignedJwtWithCertsAsync(a,b,c,d,e){let f,g,h=(0,l.createCrypto)();e||(e=o.DEFAULT_MAX_TOKEN_LIFETIME_SECS_);let i=a.split(".");if(3!==i.length)throw Error("Wrong number of segments in token: "+a);let k=i[0]+"."+i[1],m=i[2];try{f=JSON.parse(h.decodeBase64StringUtf8(i[0]))}catch(a){throw a instanceof Error&&(a.message=`Can't parse token envelope: ${i[0]}': ${a.message}`),a}if(!f)throw Error("Can't parse token envelope: "+i[0]);try{g=JSON.parse(h.decodeBase64StringUtf8(i[1]))}catch(a){throw a instanceof Error&&(a.message=`Can't parse token payload '${i[0]}`),a}if(!g)throw Error("Can't parse token payload: "+i[1]);if(!Object.prototype.hasOwnProperty.call(b,f.kid))throw Error("No pem found for envelope: "+JSON.stringify(f));let p=b[f.kid];if("ES256"===f.alg&&(m=j.joseToDer(m,"ES256").toString("base64")),!await h.verify(p,k,m))throw Error("Invalid token signature: "+a);if(!g.iat)throw Error("No issue time in token: "+JSON.stringify(g));if(!g.exp)throw Error("No expiration time in token: "+JSON.stringify(g));let q=Number(g.iat);if(isNaN(q))throw Error("iat field using invalid format");let r=Number(g.exp);if(isNaN(r))throw Error("exp field using invalid format");let s=new Date().getTime()/1e3;if(r>=s+e)throw Error("Expiration time too far in future: "+JSON.stringify(g));let t=q-o.CLOCK_SKEW_SECS_,u=r+o.CLOCK_SKEW_SECS_;if(s<t)throw Error("Token used too early, "+s+" < "+t+": "+JSON.stringify(g));if(s>u)throw Error("Token used too late, "+s+" > "+u+": "+JSON.stringify(g));if(d&&0>d.indexOf(g.iss))throw Error("Invalid issuer, expected one of ["+d+"], but got "+g.iss);if(null!=c){let a=g.aud;if(!(c.constructor===Array?c.indexOf(a)>-1:a===c))throw Error("Wrong recipient, payload audience != requiredAudience")}return new n.LoginTicket(f,g)}async processAndValidateRefreshHandler(){if(this.refreshHandler){let a=await this.refreshHandler();if(!a.access_token)throw Error("No access token is returned by the refreshHandler callback.");return a}}isTokenExpiring(){let a=this.credentials.expiry_date;return!!a&&a<=new Date().getTime()+this.eagerRefreshThresholdMillis}}b.OAuth2Client=o},50010:(a,b,c)=>{"use strict";c.d(b,{z:()=>aL});var d=c(89850),e=c(79111),f=c(89392),g=c(18230),h=c(97832),i=c(35432),j=c(33873),k=c.n(j),l=c(29021),m=c(79748),n=c(94735),o=c(51455),p=c(57075),q=c(76760);let r={FILE_TYPE:"files",DIR_TYPE:"directories",FILE_DIR_TYPE:"files_directories",EVERYTHING_TYPE:"all"},s={root:".",fileFilter:a=>!0,directoryFilter:a=>!0,type:r.FILE_TYPE,lstat:!1,depth:0x80000000,alwaysStat:!1,highWaterMark:4096};Object.freeze(s);let t="READDIRP_RECURSIVE_ERROR",u=new Set(["ENOENT","EPERM","EACCES","ELOOP",t]),v=[r.DIR_TYPE,r.EVERYTHING_TYPE,r.FILE_DIR_TYPE,r.FILE_TYPE],w=new Set([r.DIR_TYPE,r.EVERYTHING_TYPE,r.FILE_DIR_TYPE]),x=new Set([r.EVERYTHING_TYPE,r.FILE_DIR_TYPE,r.FILE_TYPE]),y="win32"===process.platform,z=a=>!0,A=a=>{if(void 0===a)return z;if("function"==typeof a)return a;if("string"==typeof a){let b=a.trim();return a=>a.basename===b}if(Array.isArray(a)){let b=a.map(a=>a.trim());return a=>b.some(b=>a.basename===b)}return z};class B extends p.Readable{constructor(a={}){super({objectMode:!0,autoDestroy:!0,highWaterMark:a.highWaterMark});let b={...s,...a},{root:c,type:d}=b;this._fileFilter=A(b.fileFilter),this._directoryFilter=A(b.directoryFilter);let e=b.lstat?o.lstat:o.stat;y?this._stat=a=>e(a,{bigint:!0}):this._stat=e,this._maxDepth=b.depth??s.depth,this._wantsDir=!!d&&w.has(d),this._wantsFile=!!d&&x.has(d),this._wantsEverything=d===r.EVERYTHING_TYPE,this._root=(0,q.resolve)(c),this._isDirent=!b.alwaysStat,this._statsProp=this._isDirent?"dirent":"stats",this._rdOptions={encoding:"utf8",withFileTypes:this._isDirent},this.parents=[this._exploreDir(c,1)],this.reading=!1,this.parent=void 0}async _read(a){if(!this.reading){this.reading=!0;try{for(;!this.destroyed&&a>0;){let b=this.parent,c=b&&b.files;if(c&&c.length>0){let{path:d,depth:e}=b,f=c.splice(0,a).map(a=>this._formatEntry(a,d));for(let b of(await Promise.all(f))){if(!b)continue;if(this.destroyed)return;let c=await this._getEntryType(b);"directory"===c&&this._directoryFilter(b)?(e<=this._maxDepth&&this.parents.push(this._exploreDir(b.fullPath,e+1)),this._wantsDir&&(this.push(b),a--)):("file"===c||this._includeAsFile(b))&&this._fileFilter(b)&&this._wantsFile&&(this.push(b),a--)}}else{let a=this.parents.pop();if(!a){this.push(null);break}if(this.parent=await a,this.destroyed)return}}}catch(a){this.destroy(a)}finally{this.reading=!1}}}async _exploreDir(a,b){let c;try{c=await (0,o.readdir)(a,this._rdOptions)}catch(a){this._onError(a)}return{files:c,depth:b,path:a}}async _formatEntry(a,b){let c,d=this._isDirent?a.name:a;try{let e=(0,q.resolve)((0,q.join)(b,d));(c={path:(0,q.relative)(this._root,e),fullPath:e,basename:d})[this._statsProp]=this._isDirent?a:await this._stat(e)}catch(a){this._onError(a);return}return c}_onError(a){u.has(a.code)&&!this.destroyed?this.emit("warn",a):this.destroy(a)}async _getEntryType(a){if(!a&&this._statsProp in a)return"";let b=a[this._statsProp];if(b.isFile())return"file";if(b.isDirectory())return"directory";if(b&&b.isSymbolicLink()){let b=a.fullPath;try{let a=await (0,o.realpath)(b),c=await (0,o.lstat)(a);if(c.isFile())return"file";if(c.isDirectory()){let c=a.length;if(b.startsWith(a)&&b.substr(c,1)===q.sep){let c=Error(`Circular symlink detected: "${b}" points to "${a}"`);return c.code=t,this._onError(c)}return"directory"}}catch(a){return this._onError(a),""}}}_includeAsFile(a){let b=a&&a[this._statsProp];return b&&this._wantsEverything&&!b.isDirectory()}}var C=c(21820);let D=()=>{},E=process.platform,F="win32"===E,G="darwin"===E,H="linux"===E,I="freebsd"===E,J="OS400"===(0,C.type)(),K={ALL:"all",READY:"ready",ADD:"add",CHANGE:"change",ADD_DIR:"addDir",UNLINK:"unlink",UNLINK_DIR:"unlinkDir",RAW:"raw",ERROR:"error"},L={lstat:m.lstat,stat:m.stat},M="listeners",N="errHandlers",O="rawEmitters",P=[M,N,O],Q=new Set(["3dm","3ds","3g2","3gp","7z","a","aac","adp","afdesign","afphoto","afpub","ai","aif","aiff","alz","ape","apk","appimage","ar","arj","asf","au","avi","bak","baml","bh","bin","bk","bmp","btif","bz2","bzip2","cab","caf","cgm","class","cmx","cpio","cr2","cur","dat","dcm","deb","dex","djvu","dll","dmg","dng","doc","docm","docx","dot","dotm","dra","DS_Store","dsk","dts","dtshd","dvb","dwg","dxf","ecelp4800","ecelp7470","ecelp9600","egg","eol","eot","epub","exe","f4v","fbs","fh","fla","flac","flatpak","fli","flv","fpx","fst","fvt","g3","gh","gif","graffle","gz","gzip","h261","h263","h264","icns","ico","ief","img","ipa","iso","jar","jpeg","jpg","jpgv","jpm","jxr","key","ktx","lha","lib","lvp","lz","lzh","lzma","lzo","m3u","m4a","m4v","mar","mdi","mht","mid","midi","mj2","mka","mkv","mmr","mng","mobi","mov","movie","mp3","mp4","mp4a","mpeg","mpg","mpga","mxu","nef","npx","numbers","nupkg","o","odp","ods","odt","oga","ogg","ogv","otf","ott","pages","pbm","pcx","pdb","pdf","pea","pgm","pic","png","pnm","pot","potm","potx","ppa","ppam","ppm","pps","ppsm","ppsx","ppt","pptm","pptx","psd","pya","pyc","pyo","pyv","qt","rar","ras","raw","resources","rgb","rip","rlc","rmf","rmvb","rpm","rtf","rz","s3m","s7z","scpt","sgi","shar","snap","sil","sketch","slk","smv","snk","so","stl","suo","sub","swf","tar","tbz","tbz2","tga","tgz","thmx","tif","tiff","tlz","ttc","ttf","txz","udf","uvh","uvi","uvm","uvp","uvs","uvu","viv","vob","war","wav","wax","wbmp","wdp","weba","webm","webp","whl","wim","wm","wma","wmv","wmx","woff","woff2","wrm","wvx","xbm","xif","xla","xlam","xls","xlsb","xlsm","xlsx","xlt","xltm","xltx","xm","xmind","xpi","xpm","xwd","xz","z","zip","zipx"]),R=(a,b)=>{a instanceof Set?a.forEach(b):b(a)},S=(a,b,c)=>{let d=a[b];d instanceof Set||(a[b]=d=new Set([d])),d.add(c)},T=(a,b,c)=>{let d=a[b];d instanceof Set?d.delete(c):d===c&&delete a[b]},U=a=>a instanceof Set?0===a.size:!a,V=new Map;function W(a,b,c,d,e){try{return(0,l.watch)(a,{persistent:b.persistent},(b,d)=>{c(a),e(b,d,{watchedPath:a}),d&&a!==d&&X(j.resolve(a,d),M,j.join(a,d))})}catch(a){d(a);return}}let X=(a,b,c,d,e)=>{let f=V.get(a);f&&R(f[b],a=>{a(c,d,e)})},Y=new Map;class Z{constructor(a){this.fsw=a,this._boundHandleError=b=>a._handleError(b)}_watchWithNodeFs(a,b){let c,d=this.fsw.options,e=j.dirname(a),f=j.basename(a);this.fsw._getWatchedDir(e).add(f);let g=j.resolve(a),h={persistent:d.persistent};if(b||(b=D),d.usePolling)h.interval=d.interval!==d.binaryInterval&&Q.has(j.extname(f).slice(1).toLowerCase())?d.binaryInterval:d.interval,c=((a,b,c,d)=>{let{listener:e,rawEmitter:f}=d,g=Y.get(b),h=g&&g.options;return h&&(h.persistent<c.persistent||h.interval>c.interval)&&((0,l.unwatchFile)(b),g=void 0),g?(S(g,M,e),S(g,O,f)):(g={listeners:e,rawEmitters:f,options:c,watcher:(0,l.watchFile)(b,c,(c,d)=>{R(g.rawEmitters,a=>{a(K.CHANGE,b,{curr:c,prev:d})});let e=c.mtimeMs;(c.size!==d.size||e>d.mtimeMs||0===e)&&R(g.listeners,b=>b(a,c))})},Y.set(b,g)),()=>{T(g,M,e),T(g,O,f),U(g.listeners)&&(Y.delete(b),(0,l.unwatchFile)(b),g.options=g.watcher=void 0,Object.freeze(g))}})(a,g,h,{listener:b,rawEmitter:this.fsw._emitRaw});else c=((a,b,c,d)=>{let e,{listener:f,errHandler:g,rawEmitter:h}=d,i=V.get(b);if(!c.persistent){if(!(e=W(a,c,f,g,h)))return;return e.close.bind(e)}if(i)S(i,M,f),S(i,N,g),S(i,O,h);else{if(!(e=W(a,c,X.bind(null,b,M),g,X.bind(null,b,O))))return;e.on(K.ERROR,async c=>{let d=X.bind(null,b,N);if(i&&(i.watcherUnusable=!0),F&&"EPERM"===c.code)try{let b=await (0,m.open)(a,"r");await b.close(),d(c)}catch(a){}else d(c)}),i={listeners:f,errHandlers:g,rawEmitters:h,watcher:e},V.set(b,i)}return()=>{let a;T(i,M,f),T(i,N,g),T(i,O,h),U(i.listeners)&&(i.watcher.close(),V.delete(b),P.forEach((a=i,b=>{let c=a[b];c instanceof Set?c.clear():delete a[b]})),i.watcher=void 0,Object.freeze(i))}})(a,g,h,{listener:b,errHandler:this._boundHandleError,rawEmitter:this.fsw._emitRaw});return c}_handleFile(a,b,c){if(this.fsw.closed)return;let d=j.dirname(a),e=j.basename(a),f=this.fsw._getWatchedDir(d),g=b;if(f.has(e))return;let h=async(b,c)=>{if(this.fsw._throttle("watch",a,5))if(c&&0!==c.mtimeMs){if(f.has(e)){let b=c.atimeMs,d=c.mtimeMs;(!b||b<=d||d!==g.mtimeMs)&&this.fsw._emit(K.CHANGE,a,c),g=c}}else try{let c=await (0,m.stat)(a);if(this.fsw.closed)return;let d=c.atimeMs,e=c.mtimeMs;if((!d||d<=e||e!==g.mtimeMs)&&this.fsw._emit(K.CHANGE,a,c),(G||H||I)&&g.ino!==c.ino){this.fsw._closeFile(b),g=c;let d=this._watchWithNodeFs(a,h);d&&this.fsw._addPathCloser(b,d)}else g=c}catch(a){this.fsw._remove(d,e)}},i=this._watchWithNodeFs(a,h);if(!(c&&this.fsw.options.ignoreInitial)&&this.fsw._isntIgnored(a)){if(!this.fsw._throttle(K.ADD,a,0))return;this.fsw._emit(K.ADD,a,b)}return i}async _handleSymlink(a,b,c,d){if(this.fsw.closed)return;let e=a.fullPath,f=this.fsw._getWatchedDir(b);if(!this.fsw.options.followSymlinks){let b;this.fsw._incrReadyCount();try{b=await (0,m.realpath)(c)}catch(a){return this.fsw._emitReady(),!0}if(this.fsw.closed)return;return f.has(d)?this.fsw._symlinkPaths.get(e)!==b&&(this.fsw._symlinkPaths.set(e,b),this.fsw._emit(K.CHANGE,c,a.stats)):(f.add(d),this.fsw._symlinkPaths.set(e,b),this.fsw._emit(K.ADD,c,a.stats)),this.fsw._emitReady(),!0}if(this.fsw._symlinkPaths.has(e))return!0;this.fsw._symlinkPaths.set(e,!0)}_handleRead(a,b,c,d,e,f,g){if(a=j.join(a,""),!(g=this.fsw._throttle("readdir",a,1e3)))return;let h=this.fsw._getWatchedDir(c.path),i=new Set,k=this.fsw._readdirp(a,{fileFilter:a=>c.filterPath(a),directoryFilter:a=>c.filterDir(a)});if(k)return k.on("data",async g=>{if(this.fsw.closed){k=void 0;return}let l=g.path,m=j.join(a,l);if(i.add(l),!(g.stats.isSymbolicLink()&&await this._handleSymlink(g,a,m,l))){if(this.fsw.closed){k=void 0;return}l!==d&&(d||h.has(l))||(this.fsw._incrReadyCount(),m=j.join(e,j.relative(e,m)),this._addToNodeFs(m,b,c,f+1))}}).on(K.ERROR,this._boundHandleError),new Promise((b,j)=>{if(!k)return j();k.once("end",()=>{if(this.fsw.closed){k=void 0;return}let j=!!g&&g.clear();b(void 0),h.getChildren().filter(b=>b!==a&&!i.has(b)).forEach(b=>{this.fsw._remove(a,b)}),k=void 0,j&&this._handleRead(a,!1,c,d,e,f,g)})})}async _handleDir(a,b,c,d,e,f,g){let h,i,k=this.fsw._getWatchedDir(j.dirname(a)),l=k.has(j.basename(a));c&&this.fsw.options.ignoreInitial||e||l||this.fsw._emit(K.ADD_DIR,a,b),k.add(j.basename(a)),this.fsw._getWatchedDir(a);let m=this.fsw.options.depth;if((null==m||d<=m)&&!this.fsw._symlinkPaths.has(g)){if(!e&&(await this._handleRead(a,c,f,e,a,d,h),this.fsw.closed))return;i=this._watchWithNodeFs(a,(b,c)=>{c&&0===c.mtimeMs||this._handleRead(b,!1,f,e,a,d,h)})}return i}async _addToNodeFs(a,b,c,d,e){let f=this.fsw._emitReady;if(this.fsw._isIgnored(a)||this.fsw.closed)return f(),!1;let g=this.fsw._getWatchHelpers(a);c&&(g.filterPath=a=>c.filterPath(a),g.filterDir=a=>c.filterDir(a));try{let c,h=await L[g.statMethod](g.watchPath);if(this.fsw.closed)return;if(this.fsw._isIgnored(g.watchPath,h))return f(),!1;let i=this.fsw.options.followSymlinks;if(h.isDirectory()){let f=j.resolve(a),k=i?await (0,m.realpath)(a):a;if(this.fsw.closed||(c=await this._handleDir(g.watchPath,h,b,d,e,g,k),this.fsw.closed))return;f!==k&&void 0!==k&&this.fsw._symlinkPaths.set(f,k)}else if(h.isSymbolicLink()){let e=i?await (0,m.realpath)(a):a;if(this.fsw.closed)return;let f=j.dirname(g.watchPath);if(this.fsw._getWatchedDir(f).add(g.watchPath),this.fsw._emit(K.ADD,g.watchPath,h),c=await this._handleDir(f,h,b,d,a,g,e),this.fsw.closed)return;void 0!==e&&this.fsw._symlinkPaths.set(j.resolve(a),e)}else c=this._handleFile(g.watchPath,h,b);return f(),c&&this.fsw._addPathCloser(a,c),!1}catch(b){if(this.fsw._handleError(b))return f(),a}}}let $=/\\/g,_=/\/\//,aa=/\..*\.(sw[px])$|~$|\.subl.*\.tmp/,ab=/^\.[/\\]/;function ac(a){return Array.isArray(a)?a:[a]}let ad=a=>"object"==typeof a&&null!==a&&!(a instanceof RegExp);function ae(a,b,c){let d=function(a){if("string"!=typeof a)throw Error("string expected");a=(a=j.normalize(a)).replace(/\\/g,"/");let b=!1;a.startsWith("//")&&(b=!0);let c=/\/\//;for(;a.match(c);)a=a.replace(c,"/");return b&&(a="/"+a),a}(b);for(let b=0;b<a.length;b++)if((0,a[b])(d,c))return!0;return!1}let af=a=>{let b=ac(a).flat();if(!b.every(a=>"string"==typeof a))throw TypeError(`Non-string provided as watch path: ${b}`);return b.map(ah)},ag=a=>{let b=a.replace($,"/"),c=!1;for(b.startsWith("//")&&(c=!0);b.match(_);)b=b.replace(_,"/");return c&&(b="/"+b),b},ah=a=>ag(j.normalize(ag(a))),ai=(a="")=>b=>"string"==typeof b?ah(j.isAbsolute(b)?b:j.join(a,b)):b,aj=Object.freeze(new Set);class ak{constructor(a,b){this.path=a,this._removeWatcher=b,this.items=new Set}add(a){let{items:b}=this;b&&"."!==a&&".."!==a&&b.add(a)}async remove(a){let{items:b}=this;if(!b||(b.delete(a),b.size>0))return;let c=this.path;try{await (0,m.readdir)(c)}catch(a){this._removeWatcher&&this._removeWatcher(j.dirname(c),j.basename(c))}}has(a){let{items:b}=this;if(b)return b.has(a)}getChildren(){let{items:a}=this;return a?[...a.values()]:[]}dispose(){this.items.clear(),this.path="",this._removeWatcher=D,this.items=aj,Object.freeze(this)}}class al{constructor(a,b,c){this.fsw=c;let d=a;this.path=a=a.replace(ab,""),this.watchPath=d,this.fullWatchPath=j.resolve(d),this.dirParts=[],this.dirParts.forEach(a=>{a.length>1&&a.pop()}),this.followSymlinks=b,this.statMethod=b?"stat":"lstat"}entryPath(a){return j.join(this.watchPath,j.relative(this.watchPath,a.fullPath))}filterPath(a){let{stats:b}=a;if(b&&b.isSymbolicLink())return this.filterDir(a);let c=this.entryPath(a);return this.fsw._isntIgnored(c,b)&&this.fsw._hasReadPermissions(b)}filterDir(a){return this.fsw._isntIgnored(this.entryPath(a),a.stats)}}class am extends n.EventEmitter{constructor(a={}){super(),this.closed=!1,this._closers=new Map,this._ignoredPaths=new Set,this._throttled=new Map,this._streams=new Set,this._symlinkPaths=new Map,this._watched=new Map,this._pendingWrites=new Map,this._pendingUnlinks=new Map,this._readyCount=0,this._readyEmitted=!1;let b=a.awaitWriteFinish,c={stabilityThreshold:2e3,pollInterval:100},d={persistent:!0,ignoreInitial:!1,ignorePermissionErrors:!1,interval:100,binaryInterval:300,followSymlinks:!0,usePolling:!1,atomic:!0,...a,ignored:a.ignored?ac(a.ignored):ac([]),awaitWriteFinish:!0===b?c:"object"==typeof b&&{...c,...b}};J&&(d.usePolling=!0),void 0===d.atomic&&(d.atomic=!d.usePolling);let e=process.env.CHOKIDAR_USEPOLLING;if(void 0!==e){let a=e.toLowerCase();"false"===a||"0"===a?d.usePolling=!1:"true"===a||"1"===a?d.usePolling=!0:d.usePolling=!!a}let f=process.env.CHOKIDAR_INTERVAL;f&&(d.interval=Number.parseInt(f,10));let g=0;this._emitReady=()=>{++g>=this._readyCount&&(this._emitReady=D,this._readyEmitted=!0,process.nextTick(()=>this.emit(K.READY)))},this._emitRaw=(...a)=>this.emit(K.RAW,...a),this._boundRemove=this._remove.bind(this),this.options=d,this._nodeFsHandler=new Z(this),Object.freeze(d)}_addIgnoredPath(a){if(ad(a)){for(let b of this._ignoredPaths)if(ad(b)&&b.path===a.path&&b.recursive===a.recursive)return}this._ignoredPaths.add(a)}_removeIgnoredPath(a){if(this._ignoredPaths.delete(a),"string"==typeof a)for(let b of this._ignoredPaths)ad(b)&&b.path===a&&this._ignoredPaths.delete(b)}add(a,b,c){let{cwd:d}=this.options;this.closed=!1,this._closePromise=void 0;let e=af(a);return d&&(e=e.map(a=>j.isAbsolute(a)?a:j.join(d,a))),e.forEach(a=>{this._removeIgnoredPath(a)}),this._userIgnored=void 0,this._readyCount||(this._readyCount=0),this._readyCount+=e.length,Promise.all(e.map(async a=>{let d=await this._nodeFsHandler._addToNodeFs(a,!c,void 0,0,b);return d&&this._emitReady(),d})).then(a=>{this.closed||a.forEach(a=>{a&&this.add(j.dirname(a),j.basename(b||a))})}),this}unwatch(a){if(this.closed)return this;let b=af(a),{cwd:c}=this.options;return b.forEach(a=>{j.isAbsolute(a)||this._closers.has(a)||(c&&(a=j.join(c,a)),a=j.resolve(a)),this._closePath(a),this._addIgnoredPath(a),this._watched.has(a)&&this._addIgnoredPath({path:a,recursive:!0}),this._userIgnored=void 0}),this}close(){if(this._closePromise)return this._closePromise;this.closed=!0,this.removeAllListeners();let a=[];return this._closers.forEach(b=>b.forEach(b=>{let c=b();c instanceof Promise&&a.push(c)})),this._streams.forEach(a=>a.destroy()),this._userIgnored=void 0,this._readyCount=0,this._readyEmitted=!1,this._watched.forEach(a=>a.dispose()),this._closers.clear(),this._watched.clear(),this._streams.clear(),this._symlinkPaths.clear(),this._throttled.clear(),this._closePromise=a.length?Promise.all(a).then(()=>void 0):Promise.resolve(),this._closePromise}getWatched(){let a={};return this._watched.forEach((b,c)=>{a[(this.options.cwd?j.relative(this.options.cwd,c):c)||"."]=b.getChildren().sort()}),a}emitWithAll(a,b){this.emit(a,...b),a!==K.ERROR&&this.emit(K.ALL,a,...b)}async _emit(a,b,c){let d;if(this.closed)return;let e=this.options;F&&(b=j.normalize(b)),e.cwd&&(b=j.relative(e.cwd,b));let f=[b];null!=c&&f.push(c);let g=e.awaitWriteFinish;if(g&&(d=this._pendingWrites.get(b)))return d.lastChange=new Date,this;if(e.atomic){if(a===K.UNLINK)return this._pendingUnlinks.set(b,[a,...f]),setTimeout(()=>{this._pendingUnlinks.forEach((a,b)=>{this.emit(...a),this.emit(K.ALL,...a),this._pendingUnlinks.delete(b)})},"number"==typeof e.atomic?e.atomic:100),this;a===K.ADD&&this._pendingUnlinks.has(b)&&(a=K.CHANGE,this._pendingUnlinks.delete(b))}if(g&&(a===K.ADD||a===K.CHANGE)&&this._readyEmitted){let c=(b,c)=>{b?(a=K.ERROR,f[0]=b,this.emitWithAll(a,f)):c&&(f.length>1?f[1]=c:f.push(c),this.emitWithAll(a,f))};return this._awaitWriteFinish(b,g.stabilityThreshold,a,c),this}if(a===K.CHANGE&&!this._throttle(K.CHANGE,b,50))return this;if(e.alwaysStat&&void 0===c&&(a===K.ADD||a===K.ADD_DIR||a===K.CHANGE)){let a,c=e.cwd?j.join(e.cwd,b):b;try{a=await (0,m.stat)(c)}catch(a){}if(!a||this.closed)return;f.push(a)}return this.emitWithAll(a,f),this}_handleError(a){let b=a&&a.code;return a&&"ENOENT"!==b&&"ENOTDIR"!==b&&(!this.options.ignorePermissionErrors||"EPERM"!==b&&"EACCES"!==b)&&this.emit(K.ERROR,a),a||this.closed}_throttle(a,b,c){let d;this._throttled.has(a)||this._throttled.set(a,new Map);let e=this._throttled.get(a);if(!e)throw Error("invalid throttle");let f=e.get(b);if(f)return f.count++,!1;let g=()=>{let a=e.get(b),c=a?a.count:0;return e.delete(b),clearTimeout(d),a&&clearTimeout(a.timeoutObject),c},h={timeoutObject:d=setTimeout(g,c),clear:g,count:0};return e.set(b,h),h}_incrReadyCount(){return this._readyCount++}_awaitWriteFinish(a,b,c,d){let e,f=this.options.awaitWriteFinish;if("object"!=typeof f)return;let g=f.pollInterval,h=a;this.options.cwd&&!j.isAbsolute(a)&&(h=j.join(this.options.cwd,a));let i=new Date,k=this._pendingWrites;k.has(a)||(k.set(a,{lastChange:i,cancelWait:()=>(k.delete(a),clearTimeout(e),c)}),e=setTimeout(function c(f){(0,l.stat)(h,(h,i)=>{if(h||!k.has(a)){h&&"ENOENT"!==h.code&&d(h);return}let j=Number(new Date);f&&i.size!==f.size&&(k.get(a).lastChange=j),j-k.get(a).lastChange>=b?(k.delete(a),d(void 0,i)):e=setTimeout(c,g,i)})},g))}_isIgnored(a,b){if(this.options.atomic&&aa.test(a))return!0;if(!this._userIgnored){let{cwd:a}=this.options,b=(this.options.ignored||[]).map(ai(a)),c=[...[...this._ignoredPaths].map(ai(a)),...b];this._userIgnored=function(a,b){if(null==a)throw TypeError("anymatch: specify first argument");let c=ac(a).map(a=>"function"==typeof a?a:"string"==typeof a?b=>a===b:a instanceof RegExp?b=>a.test(b):"object"==typeof a&&null!==a?b=>{if(a.path===b)return!0;if(a.recursive){let c=j.relative(a.path,b);return!!c&&!c.startsWith("..")&&!j.isAbsolute(c)}return!1}:()=>!1);return null==b?(a,b)=>ae(c,a,b):ae(c,b)}(c,void 0)}return this._userIgnored(a,b)}_isntIgnored(a,b){return!this._isIgnored(a,b)}_getWatchHelpers(a){return new al(a,this.options.followSymlinks,this)}_getWatchedDir(a){let b=j.resolve(a);return this._watched.has(b)||this._watched.set(b,new ak(b,this._boundRemove)),this._watched.get(b)}_hasReadPermissions(a){return!!this.options.ignorePermissionErrors||!!(256&Number(a.mode))}_remove(a,b,c){let d=j.join(a,b),e=j.resolve(d);if(c=null!=c?c:this._watched.has(d)||this._watched.has(e),!this._throttle("remove",d,100))return;c||1!==this._watched.size||this.add(a,b,!0),this._getWatchedDir(d).getChildren().forEach(a=>this._remove(d,a));let f=this._getWatchedDir(a),g=f.has(b);f.remove(b),this._symlinkPaths.has(e)&&this._symlinkPaths.delete(e);let h=d;if(this.options.cwd&&(h=j.relative(this.options.cwd,d)),this.options.awaitWriteFinish&&this._pendingWrites.has(h)&&this._pendingWrites.get(h).cancelWait()===K.ADD)return;this._watched.delete(d),this._watched.delete(e);let i=c?K.UNLINK_DIR:K.UNLINK;g&&!this._isIgnored(d)&&this._emit(i,d),this._closePath(d)}_closePath(a){this._closeFile(a);let b=j.dirname(a);this._getWatchedDir(b).remove(j.basename(a))}_closeFile(a){let b=this._closers.get(a);b&&(b.forEach(a=>a()),this._closers.delete(a))}_addPathCloser(a,b){if(!b)return;let c=this._closers.get(a);c||(c=[],this._closers.set(a,c)),c.push(b)}_readdirp(a,b){if(this.closed)return;let c=function(a,b={}){let c=b.entryType||b.type;if("both"===c&&(c=r.FILE_DIR_TYPE),c&&(b.type=c),a){if("string"!=typeof a)throw TypeError("readdirp: root argument must be a string. Usage: readdirp(root, options)");else if(c&&!v.includes(c))throw Error(`readdirp: Invalid type passed. Use one of ${v.join(", ")}`)}else throw Error("readdirp: root argument is required. Usage: readdirp(root, options)");return b.root=a,new B(b)}(a,{type:K.ALL,alwaysStat:!0,lstat:!0,...b,depth:0});return this._streams.add(c),c.once("close",()=>{c=void 0}),c.once("end",()=>{c&&(this._streams.delete(c),c=void 0)}),c}}let an=(0,g.h)("backend/services/scheduler/triggers/fileWatch");var ao=c(74663);function ap(a){let b=Math.max(5,Math.round((a??6e4)/1e3));if(b<60)return`*/${b} * * * * *`;let c=Math.max(1,Math.round(b/60));if(c<60)return`*/${c} * * * *`;let d=Math.max(1,Math.min(23,Math.round(c/60)));return`0 */${d} * * *`}var aq=c(26358);let ar=(0,g.h)("backend/services/scheduler/triggers/mcpPoll"),as=(0,g.h)("backend/services/scheduler/triggers/urlWatch");var at=c(37860);let au=(0,g.h)("backend/services/scheduler/triggers/flowEvent");function av(a){return a&&a.length>8192?`${a.slice(0,8192)}… (truncated)`:a}let aw=(0,g.h)("backend/services/scheduler/runHistory"),ax=a=>`planned-execution-runs/${a}`,ay=new Map;async function az(a){try{return await (0,e.YM)(ax(a),[])}catch(b){return aw.error(`Failed to load run history for ${a}:`,b),[]}}async function aA(a,b){let c=(ay.get(a)??Promise.resolve()).catch(()=>{}).then(async()=>{let c=await az(a);c.push(b);let d=c.slice(-100);await (0,e.VH)(ax(a),d)});ay.set(a,c);try{await c}finally{ay.get(a)===c&&ay.delete(a)}}async function aB(a){let b=await az(a);return b.length>0?b[b.length-1]:null}async function aC(a){await (0,e.N2)(ax(a))}let aD=(0,g.h)("backend/services/scheduler/state"),aE=a=>`planned-execution-state/${a}`;async function aF(a){try{return await (0,e.YM)(aE(a),{})}catch(b){return aD.error(`Failed to load trigger state for ${a}:`,b),{}}}async function aG(a,b){await (0,e.VH)(aE(a),b)}async function aH(a){await (0,e.N2)(aE(a))}let aI=(0,g.h)("backend/services/scheduler/index"),aJ={version:1,paused:!1,executions:[]};class aK{static{this.MAX_QUEUE_DEPTH=50}async start(){this.started||(this.started=!0,aI.info("Starting scheduler"),await this.reconcile())}reconcile(){let a=this.reconcileChain.catch(()=>{}).then(()=>this.doReconcile());return this.reconcileChain=a,a}async doReconcile(){for(let[a,b]of this.armed)try{b.dispose()}catch(b){aI.warn(`Failed to dispose trigger for ${a}:`,b)}this.armed.clear();let a=await this.loadFile();if(this.pausedCache=a.paused,a.paused)return void aI.info("Scheduler is paused — nothing armed");for(let b of a.executions)if(b.enabled)try{await this.armExecution(b)}catch(c){let a=c instanceof Error?c.message:String(c);this.lastTriggerErrors.set(b.id,a),aI.error(`Failed to arm "${b.name}" (${b.id}):`,c)}aI.info(`Scheduler armed ${this.armed.size} execution(s)`)}async armExecution(a){let b=a.trigger;switch(b.type){case"schedule":{let c=await aF(a.id);c.lastScheduledFireAt?b.catchUp&&(0,i.hk)(b,c.lastScheduledFireAt)&&(await aG(a.id,{...c,lastScheduledFireAt:new Date().toISOString()}),aI.info(`Catch-up run for "${a.name}" (missed while closed)`),this.fire(a,{kind:"schedule-catchup",summary:"Schedule (missed while FLUJO was closed — ran once at startup)"})):await aG(a.id,{...c,lastScheduledFireAt:new Date().toISOString()}),this.armed.set(a.id,(0,i.wv)(b,()=>{(async()=>{let b=await aF(a.id);await aG(a.id,{...b,lastScheduledFireAt:new Date().toISOString()}),await this.fire(a,{kind:"schedule",summary:"Schedule"})})().catch(b=>aI.error(`Scheduled fire failed for ${a.id}:`,b))}));break}case"webhook":break;case"file-watch":this.armed.set(a.id,function(a,b,c){let d,e=a.debounceMs??2e3,f=new Set(a.events),g=a.glob?.trim()?function(a){let b=a.replace(/\\/g,"/"),c="";for(let a=0;a<b.length;a++){let d=b[a];"*"===d?"*"===b[a+1]?"/"===b[++a+1]?(a++,c+="(?:.*/)?"):c+=".*":c+="[^/]*":"?"===d?c+="[^/]":c+=d.replace(/[.+^${}()|[\]\\]/g,"\\$&")}return RegExp(`^${c}$`)}(a.glob.trim()):null;try{d=l.realpathSync.native(a.path)}catch(d){let b=d instanceof Error?d.message:String(d);return an.warn(`Cannot watch "${a.path}": ${b}`),c(`Cannot watch "${a.path}": ${b}`),{dispose:()=>void 0}}let h=[],i=!1,j=null,m=!1,n=()=>{if(j=null,m||0===h.length)return;let a=h;i&&an.info("File-watch batch overflowed; reporting first 50 events"),h=[],i=!1,b({events:a})},o=function(a,b={}){let c=new am(b);return c.add(a),c}(d,{ignoreInitial:!0,awaitWriteFinish:{stabilityThreshold:500,pollInterval:100}});return o.on("all",(a,b)=>{if(!m&&("add"===a||"change"===a||"unlink"===a)&&f.has(a)){if(g){let a=k().relative(d,b).replace(/\\/g,"/")||k().basename(b);if(!g.test(a))return}h.length>=50?i=!0:h.push({event:a,path:b}),j&&clearTimeout(j),j=setTimeout(n,e),j.unref?.()}}),o.on("error",a=>{let b=a instanceof Error?a.message:String(a);an.warn(`Watcher error for ${d}: ${b}`),c(b)}),{dispose:()=>{m=!0,j&&(clearTimeout(j),j=null),h=[],o.close().catch(a=>an.warn(`Failed to close watcher for ${d}:`,a))}}}(b,({events:c})=>{this.lastTriggerErrors.delete(a.id),this.fire(a,{kind:"file",summary:1===c.length?`File ${"unlink"===c[0].event?"deleted":"add"===c[0].event?"added":"changed"}`:`${c.length} file changes`,context:{watchedPath:b.path,events:c}})},b=>this.lastTriggerErrors.set(a.id,b)));break;case"mcp-poll":Promise.resolve().then(c.bind(c,82464)).then(async({mcpService:c})=>{await c.isServerDisabled(b.serverName)&&this.lastTriggerErrors.set(a.id,`MCP server '${b.serverName}' is disabled — enable it on the MCP page or change the trigger`)}).catch(b=>aI.warn(`Arm-time disabled-server check failed for ${a.id}:`,b)),this.armed.set(a.id,function(a,b){let c=a.cron||ap(a.intervalMs),d=!1,e=!1,f=0,g=0,h=async()=>{if(!e&&!d){if(g>0)return void g--;d=!0;try{let c,d=await b.callTool(a.serverName,a.toolName,a.args);if(!d.success)throw Error(d.error||"Tool call failed");f=0;let g=await b.loadState(),h=a.evaluate;if(c="on-change"===h.mode?(0,aq.Jl)(d.data,g):"new-items"===h.mode?(0,aq.A1)(d.data,h.itemsPath,h.idField,g):b.evaluateAiGate?await b.evaluateAiGate(d.data,h,g):{fire:!1,newState:{},error:'The "AI decides" condition is not available yet'},e)return;if(Object.keys(c.newState).length>0&&await b.saveState(c.newState),c.error)b.onError(c.error);else if(c.fire){let{status:d}=await b.onFire({summary:`Watched tool: ${c.summary??"condition met"}`,context:{server:a.serverName,tool:a.toolName,..."object"==typeof c.context&&null!==c.context?c.context:{result:c.context}}});if(e)return;if(c.pendingState){let{giveUpError:a}=await (0,aq.vV)({status:d,pendingState:c.pendingState,priorFailures:g.pendingFailures??0,saveState:b.saveState});a&&b.onError(a)}}else b.onSuccess?.()}catch(d){f++,g=Math.min(2**(f-1),8);let c=d instanceof Error?d.message:String(d);ar.warn(`Poll failed for ${a.serverName}/${a.toolName} (backing off ${g} check(s)): ${c}`),b.onError(c)}finally{d=!1}}},i=new ao.l4(c,{timezone:a.timezone,unref:!0},()=>void h());return h(),{dispose:()=>{e=!0,i.stop()},nextRun:()=>i.nextRun()?.toISOString()??null}}(b,{callTool:async(a,b,d)=>{let{mcpService:e}=await Promise.resolve().then(c.bind(c,82464)),f=await e.callTool(a,b,d);return{success:!0===f.success,data:f.data,error:"string"==typeof f.error?f.error:void 0}},loadState:()=>aF(a.id),saveState:async b=>{let c=await aF(a.id);await aG(a.id,{...c,...b})},onFire:async({summary:b,context:c})=>(this.lastTriggerErrors.delete(a.id),{status:(await this.fire(a,{kind:"mcp-poll",summary:b,context:c})).status}),onError:b=>this.lastTriggerErrors.set(a.id,b),onSuccess:()=>this.lastTriggerErrors.delete(a.id),evaluateAiGate:async(a,b,d)=>{let{evaluateAiGate:e}=await c.e(701).then(c.bind(c,90701));return e(a,b,d)}}));break;case"url-watch":this.armed.set(a.id,function(a,b){let c=b.fetchImpl??fetch,d=!1,e=!1,f=async()=>{if(!e&&!d){d=!0;try{let d=await c(a.url,{redirect:"follow",headers:{"User-Agent":"FLUJO-url-watch"},signal:AbortSignal.timeout(3e4)});if(!d.ok)return void b.onError(`The URL answered with HTTP ${d.status}`);let f=await d.text(),g=(0,aq.qq)(f),h=await b.loadState();if(e)return;if(!h.lastHash){await b.saveState({lastHash:g}),b.onSuccess?.();return}if(h.lastHash===g)return void b.onSuccess?.();let{status:i}=await b.onFire({summary:"Online content changed",context:{url:a.url,status:d.status,contentType:d.headers.get("content-type")??void 0,content:f.length>8192?`${f.slice(0,8192)}… (truncated, ${f.length} chars total)`:f}});if(e)return;let{giveUpError:j}=await (0,aq.vV)({status:i,pendingState:{lastHash:g},priorFailures:h.pendingFailures??0,saveState:b.saveState});j&&b.onError(j)}catch(d){let c=d instanceof Error&&"TimeoutError"===d.name?"The URL did not answer within 30s":d instanceof Error?d.message:String(d);as.warn(`URL check failed for ${a.url}: ${c}`),b.onError(c)}finally{d=!1}}},g=new ao.l4(a.cron,{timezone:a.timezone,unref:!0},()=>void f());return f(),{dispose:()=>{e=!0,g.stop()},nextRun:()=>g.nextRun()?.toISOString()??null}}(b,{loadState:()=>aF(a.id),saveState:async b=>{let c=await aF(a.id);await aG(a.id,{...c,...b})},onFire:async({summary:b,context:c})=>(this.lastTriggerErrors.delete(a.id),{status:(await this.fire(a,{kind:"url-watch",summary:b,context:c})).status}),onError:b=>this.lastTriggerErrors.set(a.id,b),onSuccess:()=>this.lastTriggerErrors.delete(a.id)}));break;case"flow-event":this.armed.set(a.id,function(a,b){let c=a.maxChainDepth??5,d="string"==typeof a.source.topic?a.source.topic.trim():"",e=d.length>0,f=0,g=null,h=!1;if(a.outputMatch?.regex)try{g=new RegExp(a.outputMatch.regex)}catch(c){h=!0;let a=`Invalid output-match regex: ${c instanceof Error?c.message:String(c)}`;au.warn(a),b.onError(a)}let i=b=>{if(!a.outputMatch)return!0;if(h)return!1;let c=(b??"").slice(0,16384);return(!a.outputMatch.contains||!!c.includes(a.outputMatch.contains))&&(!g||!!g.test(c))},j=(d,e,g)=>{if(d>=c){let a=`Flow-event chain reached the depth limit (${c}); not firing again`;au.info(a),b.onSkip(a);return}let h=Date.now();if(a.minIntervalMs&&h-f<a.minIntervalMs)return void au.debug(`Flow-event cooldown active (${a.minIntervalMs}ms); ignoring event`);f=h,b.onFire({summary:e,context:g,chainDepth:d+1})},k=(0,at.eh)().subscribe(c=>{try{if(e){if(!(0,at.ru)(c)||c.topic!==d||!i(c.payload))return;j(c.chainDepth,`Signal "${c.topic}"`,{topic:c.topic,payload:av(c.payload),emitterFlowId:c.emitterFlowId,flowName:c.flowName,runId:c.runId,conversationId:c.conversationId,firedBy:c.firedBy});return}if((0,at.ru)(c)||!(b=>{let c=a.source;return c.executionId?b.executionId===c.executionId:c.flowId?b.flowId===c.flowId:!!c.flowName&&b.flowName===c.flowName})(c)||!c.status||!(a.on??[]).includes(c.status)||!i(c.outputText))return;let b=c.flowName??c.flowId;j(c.chainDepth,`Flow "${b}" ${c.status}`,{flowId:c.flowId,flowName:c.flowName,executionId:c.executionId,runId:c.runId,conversationId:c.conversationId,status:c.status,firedBy:c.firedBy,outputText:av(c.outputText),error:c.error})}catch(c){let a=c instanceof Error?c.message:String(c);au.warn(`Flow-event handling failed: ${a}`),b.onError(a)}});return{dispose:()=>k(),nextRun:()=>null}}(b,{onFire:({summary:b,context:c,chainDepth:d})=>{this.lastTriggerErrors.delete(a.id),this.fire(a,{kind:"flow-event",summary:b,context:c,chainDepth:d}).catch(b=>aI.error(`Flow-event fire failed for ${a.id}:`,b))},onSkip:b=>{let c=new Date().toISOString();aA(a.id,{runId:(0,d.A)(),conversationId:"",firedAt:c,finishedAt:c,status:"skipped",triggerSummary:"Flow event",error:b}).catch(b=>aI.warn(`Failed to record flow-event skip for ${a.id}:`,b))},onError:b=>this.lastTriggerErrors.set(a.id,b)}));break;default:aI.warn(`Trigger type "${b.type}" is not implemented — "${a.name}" not armed`)}}async loadFile(){let a=await (0,e.YM)(f.Z.PLANNED_EXECUTIONS,aJ);return{version:1,paused:!0===a.paused,executions:Array.isArray(a.executions)?a.executions:[]}}async saveFile(a){await (0,e.VH)(f.Z.PLANNED_EXECUTIONS,a)}async isPaused(){return(await this.loadFile()).paused}async setPaused(a){let b=await this.loadFile();if(await this.saveFile({...b,paused:a}),await this.reconcile(),a)for(let a of[...this.queued.keys()])await this.cancelQueued(a,"scheduler paused",!0)}async list(){return Promise.all((await this.loadFile()).executions.map(async a=>({execution:a,status:this.getStatus(a),lastRun:await aB(a.id)})))}async get(a){return(await this.loadFile()).executions.find(b=>b.id===a)??null}async create(a){let b=this.validateInput(a);if(b)return{error:b};if(void 0!==a.id&&!/^[A-Za-z0-9._:-]{1,128}$/.test(a.id))return{error:"The id must be 1-128 characters of letters, digits, dot, underscore, colon or hyphen"};if("."===a.id||".."===a.id)return{error:'The id must be a safe identifier, not "." or ".."'};let c=new Date().toISOString(),e={...a,trigger:this.normalizeTrigger(a.trigger),id:a.id??(0,d.A)(),createdAt:c,updatedAt:c},f=await this.loadFile();return f.executions.some(a=>a.id===e.id)?{error:`A planned execution with id "${e.id}" already exists`,conflict:!0}:(await this.saveFile({...f,executions:[...f.executions,e]}),await this.reconcile(),{execution:e})}async update(a,b){let c=await this.loadFile(),d=c.executions.findIndex(b=>b.id===a);if(d<0)return{error:`No planned execution with id "${a}"`};let e={...c.executions[d],...b,...b.trigger?{trigger:this.normalizeTrigger(b.trigger)}:{},id:a,createdAt:c.executions[d].createdAt,updatedAt:new Date().toISOString()},f=this.validateInput(e);if(f)return{error:f};let g=[...c.executions];return g[d]=e,await this.saveFile({...c,executions:g}),await this.reconcile(),await this.cancelQueued(a,"execution updated",!0),{execution:e}}async delete(a){let b=await this.loadFile();return b.executions.some(b=>b.id===a)?(await this.saveFile({...b,executions:b.executions.filter(b=>b.id!==a)}),await this.reconcile(),this.lastTriggerErrors.delete(a),await this.cancelQueued(a,"execution deleted",!1),await aC(a),await aH(a),{success:!0}):{success:!1,error:`No planned execution with id "${a}"`}}normalizeTrigger(a){return a?.type!=="webhook"||a.token?a?.type!=="mcp-poll"||a.cron?a:{...a,cron:ap(a.intervalMs)}:{...a,token:(0,d.A)()}}validateInput(a){if(!a.name?.trim())return"A name is required";if(!a.flowId)return"A flow is required";if("string"!=typeof a.prompt)return"A prompt is required (may be empty)";if(void 0!==a.overlapStrategy&&!["skip","queue","parallel","error"].includes(a.overlapStrategy))return"Overlap strategy must be one of: skip, queue, parallel, error";let b=a.trigger;if(!b||"object"!=typeof b)return"A trigger is required";switch(b.type){case"schedule":{let a=(0,i.O9)(b.cron,b.timezone);return a.valid?null:`Invalid schedule: ${a.error}`}case"webhook":return null;case"file-watch":if(!b.path?.trim())return"A folder or file path to watch is required";if(!Array.isArray(b.events)||0===b.events.length)return"At least one file event is required";return null;case"mcp-poll":if(!b.serverName||!b.toolName)return"A server and tool are required";if(b.cron){let a=(0,i.O9)(b.cron,b.timezone);if(!a.valid)return`Invalid schedule: ${a.error}`}if(b.evaluate?.mode==="new-items"&&!b.evaluate.idField?.trim())return"An id field is required to detect new items";if((b.evaluate?.mode==="llm-gate"||b.evaluate?.mode==="flow-gate")&&!b.evaluate.condition?.trim())return"A condition is required for the AI to check";if(b.evaluate?.mode==="llm-gate"&&!b.evaluate.modelId)return"A model is required to check the condition";if(b.evaluate?.mode==="flow-gate"&&!b.evaluate.flowId)return"A flow is required to check the condition";return null;case"url-watch":{try{let a=new URL(b.url??"");if("http:"!==a.protocol&&"https:"!==a.protocol)return"The URL must start with http:// or https://"}catch{return"A valid URL is required"}let a=(0,i.O9)(b.cron,b.timezone);return a.valid?null:`Invalid schedule: ${a.error}`}case"flow-event":{let a=b.source;if(1!==[a?.executionId,a?.flowId,a?.flowName,a?.topic].filter(a=>"string"==typeof a&&a.trim().length>0).length)return"Choose exactly one source: a flow, a planned execution, or a signal topic";if(!("string"==typeof a?.topic&&a.topic.trim().length>0)){if(!Array.isArray(b.on)||0===b.on.length)return"Select at least one outcome to react to (completed or error)";if(b.on.some(a=>"completed"!==a&&"error"!==a))return'Outcomes must be "completed" or "error"'}if(b.outputMatch?.regex)try{new RegExp(b.outputMatch.regex)}catch(a){return`Invalid output-match regex: ${a instanceof Error?a.message:String(a)}`}if(void 0!==b.maxChainDepth&&(!Number.isInteger(b.maxChainDepth)||b.maxChainDepth<1))return"Max chain depth must be a positive whole number";if(void 0!==b.minIntervalMs&&(!Number.isFinite(b.minIntervalMs)||b.minIntervalMs<0))return"Minimum interval must be zero or more milliseconds";return null}default:return"Unknown trigger type"}}isRunning(a){let b=this.running.get(a);return void 0!==b&&b.size>0}addRunning(a,b,c){let d=this.running.get(a);d||(d=new Map,this.running.set(a,d)),d.set(b,c)}removeRunning(a,b){let c=this.running.get(a);c&&(c.delete(b),0===c.size&&this.running.delete(a))}earliestRunningSince(a){let b,c=this.running.get(a);if(c&&0!==c.size){for(let a of c.values())(void 0===b||a<b)&&(b=a);return b}}skippedRecord(a,b){let c=new Date().toISOString();return{runId:a.runId,conversationId:"",firedAt:c,finishedAt:c,status:"skipped",triggerSummary:a.payload.summary,error:b}}async cancelQueued(a,b,c){let d=this.queued.get(a);if(d&&0!==d.length){for(let e of(this.queued.delete(a),d)){let d=this.skippedRecord(e,b);if(c)try{await aA(a,d)}catch(b){aI.warn(`Failed to record cancelled queued fire for ${a}:`,b)}e.resolve(d)}aI.info(`Cancelled ${d.length} queued fire(s) for ${a}: ${b}`)}}drainQueue(a){let b=this.queued.get(a);if(!b||0===b.length||this.isRunning(a))return;let c=b.shift();0===b.length&&this.queued.delete(a),c&&(async()=>{let b=await this.get(a);if(!b||!b.enabled||this.pausedCache){let a=b?b.enabled?"scheduler paused":"execution disabled":"execution deleted";c.resolve(this.skippedRecord(c,a));return}let d=await this.fire(b,c.payload,c.runId);c.resolve(d)})().catch(b=>aI.error(`Queued fire failed for ${a}:`,b))}getStatus(a){let b=this.armed.get(a.id),c=void 0!==b||a.enabled&&"webhook"===a.trigger.type&&this.started&&!this.pausedCache,d=this.earliestRunningSince(a.id),e=c?void 0:a.enabled?this.pausedCache?"paused":void 0:"disabled";return{armed:c,notArmedReason:e,nextRun:b?.nextRun?b.nextRun():void 0,lastTriggerError:this.lastTriggerErrors.get(a.id),running:void 0!==d,runningSince:d}}async runNow(a){let b=await this.get(a);return b?{record:await this.fire(b,{kind:"manual",summary:"Manual run"},(0,d.A)(),!0)}:{error:`No planned execution with id "${a}"`}}async fire(a,b,e=(0,d.A)(),f=!1){let g,i=new Date().toISOString();if(await (0,h.C3)()){let c={runId:e,conversationId:"",firedAt:i,finishedAt:i,status:"skipped",triggerSummary:b.summary,error:"encryption locked"};return await aA(a.id,c),aI.info(`Skipped fire for "${a.name}" — encryption locked`),c}let j=a.overlapStrategy??"skip";if(!f&&this.isRunning(a.id)){if("skip"===j){let c={runId:e,conversationId:"",firedAt:i,finishedAt:i,status:"skipped",triggerSummary:b.summary,error:"Previous run still in progress"};return await aA(a.id,c),aI.info(`Skipped overlapping fire for "${a.name}"`),c}if("error"===j){let c={runId:e,conversationId:"",firedAt:i,finishedAt:i,status:"error",triggerSummary:b.summary,error:"Overlapping run rejected (overlapStrategy=error)"};return await aA(a.id,c),aI.info(`Rejected overlapping fire for "${a.name}" (overlapStrategy=error)`),c}if("queue"===j){let c=this.queued.get(a.id)?.length??0;if(c>=aK.MAX_QUEUE_DEPTH){let c={runId:e,conversationId:"",firedAt:i,finishedAt:i,status:"skipped",triggerSummary:b.summary,error:`Overlap queue full (cap ${aK.MAX_QUEUE_DEPTH}) — fire dropped`};return await aA(a.id,c),aI.warn(`Overlap queue full for "${a.name}" — dropped fire`),c}return aI.info(`Queued overlapping fire for "${a.name}" (depth ${c+1})`),new Promise(c=>{let d=this.queued.get(a.id)??[];d.push({execution:a,payload:b,runId:e,resolve:c}),this.queued.set(a.id,d)})}}this.addRunning(a.id,e,i);let k=(0,d.A)();try{aI.info(`Firing "${a.name}" (${b.kind})`);let d=await az(a.id),f=d.length>0?d[d.length-1]:null,h=[...d].reverse().find(a=>a.outputText),j={executionName:a.name,trigger:b.kind,now:i,timezone:Intl.DateTimeFormat().resolvedOptions().timeZone,lastRun:f?{at:f.firedAt,status:f.status}:null,lastOutput:h?{at:h.firedAt,text:h.outputText}:null,nextPlannedRun:this.getStatus(a).nextRun??null},l=a.approvalPolicy??"auto",m=a.saveConversations||"pause"===l?"conversation":"ephemeral",{runFlow:n}=await Promise.all([c.e(3304),c.e(4561),c.e(1659),c.e(7463)]).then(c.bind(c,67463)),o=await n({flowId:a.flowId,prompt:this.composePrompt(a.prompt,b,j),mode:m,conversationId:k,source:"schedule",plannedExecutionId:a.id,chainDepth:b.chainDepth??0,requireApproval:"auto"!==l,onApprovalRequired:l,debug:!1,userTurn:!0});g=await this.recordFromResult(a,o,{runId:e,conversationId:k,firedAt:i,payload:b})}catch(c){g={runId:e,conversationId:k,firedAt:i,finishedAt:new Date().toISOString(),status:"error",triggerSummary:b.summary,error:c instanceof Error?c.message:String(c)},aI.error(`Run crashed for "${a.name}":`,c)}finally{this.removeRunning(a.id,e),this.drainQueue(a.id)}return await this.get(a.id)===null?aI.info(`Dropping run record for deleted execution ${a.id}`):(await aA(a.id,g),("completed"===g.status||"error"===g.status)&&await this.publishFlowRunEvent(a,g,b)),g}async recordFromResult(a,b,c){let{runId:d,conversationId:e,firedAt:f,payload:g}=c,h=new Date().toISOString(),i="awaiting_tool_approval"===b.status,j="error"===b.status&&b.error?.details?.type==="approval_required";if(i||j){let c=(b.pendingToolCalls??[]).map(a=>({id:a.id,name:"function"===a.type?a.function.name:String(a.type)})),k={runId:d,conversationId:e,firedAt:f,finishedAt:h,status:"needs_approval",triggerSummary:g.summary,outputText:this.truncateOutput(b.outputText),usage:b.usage,error:j?b.error?.message??"Tool approval required":"Awaiting tool approval",pendingApproval:{tool:c[0]?.name??b.error?.details?.name,toolCallId:c[0]?.id,pendingToolCalls:c.length>0?c:void 0}};return i&&await this.registerPendingApproval(a,k,c),k}return{runId:d,conversationId:e,firedAt:f,finishedAt:h,status:"completed"===b.status?"completed":"error",triggerSummary:g.summary,outputText:this.truncateOutput(b.outputText),usage:b.usage,error:"completed"===b.status?void 0:b.error?.message??`Run ended with status "${b.status}"`}}async registerPendingApproval(a,b,d){try{let e;try{let{flowService:b}=await c.e(1659).then(c.bind(c,11659));e=(await b.getFlow(a.flowId))?.name??void 0}catch(b){aI.debug(`Could not resolve flow name for pending approval (${a.flowId}):`,b)}let{putPendingApproval:f}=await c.e(7032).then(c.bind(c,67032));await f({approvalId:b.conversationId,conversationId:b.conversationId,plannedExecutionId:a.id,flowId:a.flowId,flowName:e,runId:b.runId,triggerSummary:b.triggerSummary,pendingToolCalls:d,createdAt:b.firedAt})}catch(b){aI.warn(`Failed to register pending approval for "${a.name}":`,b)}}async publishFlowRunEvent(a,b,d){try{let e;try{let{flowService:b}=await c.e(1659).then(c.bind(c,11659));e=(await b.getFlow(a.flowId))?.name??void 0}catch(b){aI.debug(`Could not resolve flow name for run event (${a.flowId}):`,b)}let f="schedule-catchup"===d.kind?"schedule":d.kind;(0,at.eh)().publish({flowId:a.flowId,flowName:e,executionId:a.id,runId:b.runId,conversationId:b.conversationId,status:"completed"===b.status?"completed":"error",outputText:b.outputText,error:b.error,firedBy:f,chainDepth:d.chainDepth??0,timestamp:b.finishedAt??new Date().toISOString()})}catch(b){aI.warn(`Failed to publish flow-run event for "${a.name}":`,b)}}composePrompt(a,b,c){let d=JSON.stringify(void 0===b.context?c:{...c,data:b.context},null,2);return`${a}
93
+ Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(b,"D",{enumerable:!0,get:function(){return c}})},49036:(a,b,c)=>{"use strict";a.exports=c(71649)},49213:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});let d=c(31849),e=c(83593);function f(a,b){let c=a.schema[b];return void 0!==c&&!(0,e.alwaysValidSchema)(a,c)}b.default={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:{message:({params:a})=>(0,d.str)`must match "${a.ifClause}" schema`,params:({params:a})=>(0,d._)`{failingKeyword: ${a.ifClause}}`},code(a){let{gen:b,parentSchema:c,it:g}=a;void 0===c.then&&void 0===c.else&&(0,e.checkStrictMode)(g,'"if" without "then" and "else" is ignored');let h=f(g,"then"),i=f(g,"else");if(!h&&!i)return;let j=b.let("valid",!0),k=b.name("_valid");if(function(){let b=a.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},k);a.mergeEvaluated(b)}(),a.reset(),h&&i){let c=b.let("ifClause");a.setParams({ifClause:c}),b.if(k,l("then",c),l("else",c))}else h?b.if(k,l("then")):b.if((0,d.not)(k),l("else"));function l(c,e){return()=>{let f=a.subschema({keyword:c},k);b.assign(j,k),a.mergeValidEvaluated(f,j),e?b.assign(e,(0,d._)`${c}`):a.setParams({ifClause:c})}}a.pass(j,()=>a.error(!0))}}},49502:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.AuthClient=b.DEFAULT_EAGER_REFRESH_THRESHOLD_MILLIS=b.DEFAULT_UNIVERSE=void 0;let d=c(94735),e=c(79792),f=c(45388),g=c(26981),h=c(58900);b.DEFAULT_UNIVERSE="googleapis.com",b.DEFAULT_EAGER_REFRESH_THRESHOLD_MILLIS=3e5;class i extends d.EventEmitter{apiKey;projectId;quotaProjectId;transporter;credentials={};eagerRefreshThresholdMillis=b.DEFAULT_EAGER_REFRESH_THRESHOLD_MILLIS;forceRefreshOnFailure=!1;universeDomain=b.DEFAULT_UNIVERSE;static RequestMethodNameSymbol=Symbol("request method name");static RequestLogIdSymbol=Symbol("request log id");constructor(a={}){super();let c=(0,f.originalOrCamelOptions)(a);this.apiKey=a.apiKey,this.projectId=c.get("project_id")??null,this.quotaProjectId=c.get("quota_project_id"),this.credentials=c.get("credentials")??{},this.universeDomain=c.get("universe_domain")??b.DEFAULT_UNIVERSE,this.transporter=a.transporter??new e.Gaxios(a.transporterOptions),!1!==c.get("useAuthRequestParameters")&&(this.transporter.interceptors.request.add(i.DEFAULT_REQUEST_INTERCEPTOR),this.transporter.interceptors.response.add(i.DEFAULT_RESPONSE_INTERCEPTOR)),a.eagerRefreshThresholdMillis&&(this.eagerRefreshThresholdMillis=a.eagerRefreshThresholdMillis),this.forceRefreshOnFailure=a.forceRefreshOnFailure??!1}fetch(...a){let b,c=a[0],d=a[1],f=new Headers;return("string"==typeof c?b=new URL(c):c instanceof URL?b=c:c&&c.url&&(b=new URL(c.url)),c&&"object"==typeof c&&"headers"in c&&e.Gaxios.mergeHeaders(f,c.headers),d&&e.Gaxios.mergeHeaders(f,new Headers(d.headers)),"object"!=typeof c||c instanceof URL)?this.request({...d,headers:f,url:b}):this.request({...d,...c,headers:f,url:b})}setCredentials(a){this.credentials=a}addSharedMetadataHeaders(a){return!a.has("x-goog-user-project")&&this.quotaProjectId&&a.set("x-goog-user-project",this.quotaProjectId),a}addUserProjectAndAuthHeaders(a,b){let c=b.get("x-goog-user-project"),d=b.get("authorization");return c&&a.set("x-goog-user-project",c),d&&a.set("authorization",d),a}static log=(0,g.log)("auth");static DEFAULT_REQUEST_INTERCEPTOR={resolved:async a=>{if(!a.headers.has("x-goog-api-client")){let b=process.version.replace(/^v/,"");a.headers.set("x-goog-api-client",`gl-node/${b}`)}let b=a.headers.get("User-Agent");b?b.includes(`${h.PRODUCT_NAME}/`)||a.headers.set("User-Agent",`${b} ${h.USER_AGENT}`):a.headers.set("User-Agent",h.USER_AGENT);try{let b=a[i.RequestMethodNameSymbol],c=`${Math.floor(1e3*Math.random())}`;a[i.RequestLogIdSymbol]=c;let d={url:a.url,headers:a.headers};b?i.log.info("%s [%s] request %j",b,c,d):i.log.info("[%s] request %j",c,d)}catch(a){}return a}};static DEFAULT_RESPONSE_INTERCEPTOR={resolved:async a=>{try{let b=a.config,c=b[i.RequestMethodNameSymbol],d=b[i.RequestLogIdSymbol];c?i.log.info("%s [%s] response %j",c,d,a.data):i.log.info("[%s] response %j",d,a.data)}catch(a){}return a},rejected:async a=>{try{let b=a.config,c=b[i.RequestMethodNameSymbol],d=b[i.RequestLogIdSymbol];c?i.log.info("%s [%s] error %j",c,d,a.response?.data):i.log.error("[%s] error %j",d,a.response?.data)}catch(a){}throw a}};static setMethodName(a,b){try{a[i.RequestMethodNameSymbol]=b}catch(a){}}static get RETRY_CONFIG(){return{retry:!0,retryConfig:{httpMethodsToRetry:["GET","PUT","POST","HEAD","OPTIONS","DELETE"]}}}}b.AuthClient=i},49633:(a,b,c)=>{"use strict";var d,e,f;Object.defineProperty(b,"__esModule",{value:!0}),b.OAuth2Client=b.ClientAuthentication=b.CertificateFormat=b.CodeChallengeMethod=void 0;let g=c(79792),h=c(11723),i=c(27910),j=c(13755),k=c(45388),l=c(88593),m=c(49502),n=c(80876);!function(a){a.Plain="plain",a.S256="S256"}(d||(b.CodeChallengeMethod=d={})),function(a){a.PEM="PEM",a.JWK="JWK"}(e||(b.CertificateFormat=e={})),function(a){a.ClientSecretPost="ClientSecretPost",a.ClientSecretBasic="ClientSecretBasic",a.None="None"}(f||(b.ClientAuthentication=f={}));class o extends m.AuthClient{redirectUri;certificateCache={};certificateExpiry=null;certificateCacheFormat=e.PEM;refreshTokenPromises=new Map;endpoints;issuers;clientAuthentication;_clientId;_clientSecret;refreshHandler;constructor(a={},b,c){super("object"==typeof a?a:{}),"object"!=typeof a&&(a={clientId:a,clientSecret:b,redirectUri:c}),this._clientId=a.clientId||a.client_id,this._clientSecret=a.clientSecret||a.client_secret,this.redirectUri=a.redirectUri||a.redirect_uris?.[0],this.endpoints={tokenInfoUrl:"https://oauth2.googleapis.com/tokeninfo",oauth2AuthBaseUrl:"https://accounts.google.com/o/oauth2/v2/auth",oauth2TokenUrl:"https://oauth2.googleapis.com/token",oauth2RevokeUrl:"https://oauth2.googleapis.com/revoke",oauth2FederatedSignonPemCertsUrl:"https://www.googleapis.com/oauth2/v1/certs",oauth2FederatedSignonJwkCertsUrl:"https://www.googleapis.com/oauth2/v3/certs",oauth2IapPublicKeyUrl:"https://www.gstatic.com/iap/verify/public_key",...a.endpoints},this.clientAuthentication=a.clientAuthentication||f.ClientSecretPost,this.issuers=a.issuers||["accounts.google.com","https://accounts.google.com",this.universeDomain]}static GOOGLE_TOKEN_INFO_URL="https://oauth2.googleapis.com/tokeninfo";static CLOCK_SKEW_SECS_=300;static DEFAULT_MAX_TOKEN_LIFETIME_SECS_=86400;generateAuthUrl(a={}){if(a.code_challenge_method&&!a.code_challenge)throw Error("If a code_challenge_method is provided, code_challenge must be included.");return a.response_type=a.response_type||"code",a.client_id=a.client_id||this._clientId,a.redirect_uri=a.redirect_uri||this.redirectUri,Array.isArray(a.scope)&&(a.scope=a.scope.join(" ")),this.endpoints.oauth2AuthBaseUrl.toString()+"?"+h.stringify(a)}generateCodeVerifier(){throw Error("generateCodeVerifier is removed, please use generateCodeVerifierAsync instead.")}async generateCodeVerifierAsync(){let a=(0,l.createCrypto)(),b=a.randomBytesBase64(96).replace(/\+/g,"~").replace(/=/g,"_").replace(/\//g,"-"),c=(await a.sha256DigestBase64(b)).split("=")[0].replace(/\+/g,"-").replace(/\//g,"_");return{codeVerifier:b,codeChallenge:c}}getToken(a,b){let c="string"==typeof a?{code:a}:a;if(!b)return this.getTokenAsync(c);this.getTokenAsync(c).then(a=>b(null,a.tokens,a.res),a=>b(a,null,a.response))}async getTokenAsync(a){let b=this.endpoints.oauth2TokenUrl.toString(),c=new Headers,d={client_id:a.client_id||this._clientId,code_verifier:a.codeVerifier,code:a.code,grant_type:"authorization_code",redirect_uri:a.redirect_uri||this.redirectUri};if(this.clientAuthentication===f.ClientSecretBasic){let a=Buffer.from(`${this._clientId}:${this._clientSecret}`);c.set("authorization",`Basic ${a.toString("base64")}`)}this.clientAuthentication===f.ClientSecretPost&&(d.client_secret=this._clientSecret);let e={...o.RETRY_CONFIG,method:"POST",url:b,data:new URLSearchParams((0,k.removeUndefinedValuesInObject)(d)),headers:c};m.AuthClient.setMethodName(e,"getTokenAsync");let g=await this.transporter.request(e),h=g.data;return g.data&&g.data.expires_in&&(h.expiry_date=new Date().getTime()+1e3*g.data.expires_in,delete h.expires_in),this.emit("tokens",h),{tokens:h,res:g}}async refreshToken(a){if(!a)return this.refreshTokenNoCache(a);if(this.refreshTokenPromises.has(a))return this.refreshTokenPromises.get(a);let b=this.refreshTokenNoCache(a).then(b=>(this.refreshTokenPromises.delete(a),b),b=>{throw this.refreshTokenPromises.delete(a),b});return this.refreshTokenPromises.set(a,b),b}async refreshTokenNoCache(a){let b;if(!a)throw Error("No refresh token is set.");let c=this.endpoints.oauth2TokenUrl.toString(),d={refresh_token:a,client_id:this._clientId,client_secret:this._clientSecret,grant_type:"refresh_token"};try{let a={...o.RETRY_CONFIG,method:"POST",url:c,data:new URLSearchParams((0,k.removeUndefinedValuesInObject)(d))};m.AuthClient.setMethodName(a,"refreshTokenNoCache"),b=await this.transporter.request(a)}catch(a){throw a instanceof g.GaxiosError&&"invalid_grant"===a.message&&a.response?.data&&/ReAuth/i.test(a.response.data.error_description)&&(a.message=JSON.stringify(a.response.data)),a}let e=b.data;return b.data&&b.data.expires_in&&(e.expiry_date=new Date().getTime()+1e3*b.data.expires_in,delete e.expires_in),this.emit("tokens",e),{tokens:e,res:b}}refreshAccessToken(a){if(!a)return this.refreshAccessTokenAsync();this.refreshAccessTokenAsync().then(b=>a(null,b.credentials,b.res),a)}async refreshAccessTokenAsync(){let a=await this.refreshToken(this.credentials.refresh_token),b=a.tokens;return b.refresh_token=this.credentials.refresh_token,this.credentials=b,{credentials:this.credentials,res:a.res}}getAccessToken(a){if(!a)return this.getAccessTokenAsync();this.getAccessTokenAsync().then(b=>a(null,b.token,b.res),a)}async getAccessTokenAsync(){if(!(!this.credentials.access_token||this.isTokenExpiring()))return{token:this.credentials.access_token};{if(!this.credentials.refresh_token)if(this.refreshHandler){let a=await this.processAndValidateRefreshHandler();if(a?.access_token)return this.setCredentials(a),{token:this.credentials.access_token}}else throw Error("No refresh token or refresh handler callback is set.");let a=await this.refreshAccessTokenAsync();if(!a.credentials||a.credentials&&!a.credentials.access_token)throw Error("Could not refresh access token.");return{token:a.credentials.access_token,res:a.res}}}async getRequestHeaders(a){return(await this.getRequestMetadataAsync(a)).headers}async getRequestMetadataAsync(a){let b=this.credentials;if(!b.access_token&&!b.refresh_token&&!this.apiKey&&!this.refreshHandler)throw Error("No access, refresh token, API key or refresh handler callback is set.");if(b.access_token&&!this.isTokenExpiring()){b.token_type=b.token_type||"Bearer";let a=new Headers({authorization:b.token_type+" "+b.access_token});return{headers:this.addSharedMetadataHeaders(a)}}if(this.refreshHandler){let a=await this.processAndValidateRefreshHandler();if(a?.access_token){this.setCredentials(a);let b=new Headers({authorization:"Bearer "+this.credentials.access_token});return{headers:this.addSharedMetadataHeaders(b)}}}if(this.apiKey)return{headers:new Headers({"X-Goog-Api-Key":this.apiKey})};let c=null,d=null;try{d=(c=await this.refreshToken(b.refresh_token)).tokens}catch(a){throw a.response&&(403===a.response.status||404===a.response.status)&&(a.message=`Could not refresh access token: ${a.message}`),a}let e=this.credentials;e.token_type=e.token_type||"Bearer",d.refresh_token=e.refresh_token,this.credentials=d;let f=new Headers({authorization:e.token_type+" "+d.access_token});return{headers:this.addSharedMetadataHeaders(f),res:c.res}}static getRevokeTokenUrl(a){return new o().getRevokeTokenURL(a).toString()}getRevokeTokenURL(a){let b=new URL(this.endpoints.oauth2RevokeUrl);return b.searchParams.append("token",a),b}revokeToken(a,b){let c={...o.RETRY_CONFIG,url:this.getRevokeTokenURL(a).toString(),method:"POST"};if(m.AuthClient.setMethodName(c,"revokeToken"),!b)return this.transporter.request(c);this.transporter.request(c).then(a=>b(null,a),b)}revokeCredentials(a){if(!a)return this.revokeCredentialsAsync();this.revokeCredentialsAsync().then(b=>a(null,b),a)}async revokeCredentialsAsync(){let a=this.credentials.access_token;if(this.credentials={},a)return this.revokeToken(a);throw Error("No access token to revoke.")}request(a,b){if(!b)return this.requestAsync(a);this.requestAsync(a).then(a=>b(null,a),a=>b(a,a.response))}async requestAsync(a,b=!1){try{let b=await this.getRequestMetadataAsync();return a.headers=g.Gaxios.mergeHeaders(a.headers),this.addUserProjectAndAuthHeaders(a.headers,b.headers),this.apiKey&&a.headers.set("X-Goog-Api-Key",this.apiKey),await this.transporter.request(a)}catch(d){let c=d.response;if(c){let d=c.status,e=this.credentials&&this.credentials.access_token&&this.credentials.refresh_token&&(!this.credentials.expiry_date||this.forceRefreshOnFailure),f=this.credentials&&this.credentials.access_token&&!this.credentials.refresh_token&&(!this.credentials.expiry_date||this.forceRefreshOnFailure)&&this.refreshHandler,g=c.config.data instanceof i.Readable,h=401===d||403===d;if(!b&&h&&!g&&e)return await this.refreshAccessTokenAsync(),this.requestAsync(a,!0);if(!b&&h&&!g&&f){let b=await this.processAndValidateRefreshHandler();return b?.access_token&&this.setCredentials(b),this.requestAsync(a,!0)}}throw d}}verifyIdToken(a,b){if(b&&"function"!=typeof b)throw Error("This method accepts an options object as the first parameter, which includes the idToken, audience, and maxExpiry.");if(!b)return this.verifyIdTokenAsync(a);this.verifyIdTokenAsync(a).then(a=>b(null,a),b)}async verifyIdTokenAsync(a){if(!a.idToken)throw Error("The verifyIdToken method requires an ID Token");let b=await this.getFederatedSignonCertsAsync();return await this.verifySignedJwtWithCertsAsync(a.idToken,b.certs,a.audience,this.issuers,a.maxExpiry)}async getTokenInfo(a){let{data:b}=await this.transporter.request({...o.RETRY_CONFIG,method:"POST",headers:{"content-type":"application/x-www-form-urlencoded;charset=UTF-8",authorization:`Bearer ${a}`},url:this.endpoints.tokenInfoUrl.toString()}),c=Object.assign({expiry_date:new Date().getTime()+1e3*b.expires_in,scopes:b.scope.split(" ")},b);return delete c.expires_in,delete c.scope,c}getFederatedSignonCerts(a){if(!a)return this.getFederatedSignonCertsAsync();this.getFederatedSignonCertsAsync().then(b=>a(null,b.certs,b.res),a)}async getFederatedSignonCertsAsync(){let a,b,c=new Date().getTime(),d=(0,l.hasBrowserCrypto)()?e.JWK:e.PEM;if(this.certificateExpiry&&c<this.certificateExpiry.getTime()&&this.certificateCacheFormat===d)return{certs:this.certificateCache,format:d};switch(d){case e.PEM:b=this.endpoints.oauth2FederatedSignonPemCertsUrl.toString();break;case e.JWK:b=this.endpoints.oauth2FederatedSignonJwkCertsUrl.toString();break;default:throw Error(`Unsupported certificate format ${d}`)}try{let c={...o.RETRY_CONFIG,url:b};m.AuthClient.setMethodName(c,"getFederatedSignonCertsAsync"),a=await this.transporter.request(c)}catch(a){throw a instanceof Error&&(a.message=`Failed to retrieve verification certificates: ${a.message}`),a}let f=a?.headers.get("cache-control"),g=-1;if(f){let a=/max-age=(?<maxAge>[0-9]+)/.exec(f)?.groups?.maxAge;a&&(g=1e3*Number(a))}let h={};switch(d){case e.PEM:h=a.data;break;case e.JWK:for(let b of a.data.keys)h[b.kid]=b;break;default:throw Error(`Unsupported certificate format ${d}`)}let i=new Date;return this.certificateExpiry=-1===g?null:new Date(i.getTime()+g),this.certificateCache=h,this.certificateCacheFormat=d,{certs:h,format:d,res:a}}getIapPublicKeys(a){if(!a)return this.getIapPublicKeysAsync();this.getIapPublicKeysAsync().then(b=>a(null,b.pubkeys,b.res),a)}async getIapPublicKeysAsync(){let a,b=this.endpoints.oauth2IapPublicKeyUrl.toString();try{let c={...o.RETRY_CONFIG,url:b};m.AuthClient.setMethodName(c,"getIapPublicKeysAsync"),a=await this.transporter.request(c)}catch(a){throw a instanceof Error&&(a.message=`Failed to retrieve verification certificates: ${a.message}`),a}return{pubkeys:a.data,res:a}}verifySignedJwtWithCerts(){throw Error("verifySignedJwtWithCerts is removed, please use verifySignedJwtWithCertsAsync instead.")}async verifySignedJwtWithCertsAsync(a,b,c,d,e){let f,g,h=(0,l.createCrypto)();e||(e=o.DEFAULT_MAX_TOKEN_LIFETIME_SECS_);let i=a.split(".");if(3!==i.length)throw Error("Wrong number of segments in token: "+a);let k=i[0]+"."+i[1],m=i[2];try{f=JSON.parse(h.decodeBase64StringUtf8(i[0]))}catch(a){throw a instanceof Error&&(a.message=`Can't parse token envelope: ${i[0]}': ${a.message}`),a}if(!f)throw Error("Can't parse token envelope: "+i[0]);try{g=JSON.parse(h.decodeBase64StringUtf8(i[1]))}catch(a){throw a instanceof Error&&(a.message=`Can't parse token payload '${i[0]}`),a}if(!g)throw Error("Can't parse token payload: "+i[1]);if(!Object.prototype.hasOwnProperty.call(b,f.kid))throw Error("No pem found for envelope: "+JSON.stringify(f));let p=b[f.kid];if("ES256"===f.alg&&(m=j.joseToDer(m,"ES256").toString("base64")),!await h.verify(p,k,m))throw Error("Invalid token signature: "+a);if(!g.iat)throw Error("No issue time in token: "+JSON.stringify(g));if(!g.exp)throw Error("No expiration time in token: "+JSON.stringify(g));let q=Number(g.iat);if(isNaN(q))throw Error("iat field using invalid format");let r=Number(g.exp);if(isNaN(r))throw Error("exp field using invalid format");let s=new Date().getTime()/1e3;if(r>=s+e)throw Error("Expiration time too far in future: "+JSON.stringify(g));let t=q-o.CLOCK_SKEW_SECS_,u=r+o.CLOCK_SKEW_SECS_;if(s<t)throw Error("Token used too early, "+s+" < "+t+": "+JSON.stringify(g));if(s>u)throw Error("Token used too late, "+s+" > "+u+": "+JSON.stringify(g));if(d&&0>d.indexOf(g.iss))throw Error("Invalid issuer, expected one of ["+d+"], but got "+g.iss);if(null!=c){let a=g.aud;if(!(c.constructor===Array?c.indexOf(a)>-1:a===c))throw Error("Wrong recipient, payload audience != requiredAudience")}return new n.LoginTicket(f,g)}async processAndValidateRefreshHandler(){if(this.refreshHandler){let a=await this.refreshHandler();if(!a.access_token)throw Error("No access token is returned by the refreshHandler callback.");return a}}isTokenExpiring(){let a=this.credentials.expiry_date;return!!a&&a<=new Date().getTime()+this.eagerRefreshThresholdMillis}}b.OAuth2Client=o},50010:(a,b,c)=>{"use strict";c.d(b,{z:()=>aL});var d=c(89850),e=c(79111),f=c(89392),g=c(18230),h=c(97832),i=c(35432),j=c(33873),k=c.n(j),l=c(29021),m=c(79748),n=c(94735),o=c(51455),p=c(57075),q=c(76760);let r={FILE_TYPE:"files",DIR_TYPE:"directories",FILE_DIR_TYPE:"files_directories",EVERYTHING_TYPE:"all"},s={root:".",fileFilter:a=>!0,directoryFilter:a=>!0,type:r.FILE_TYPE,lstat:!1,depth:0x80000000,alwaysStat:!1,highWaterMark:4096};Object.freeze(s);let t="READDIRP_RECURSIVE_ERROR",u=new Set(["ENOENT","EPERM","EACCES","ELOOP",t]),v=[r.DIR_TYPE,r.EVERYTHING_TYPE,r.FILE_DIR_TYPE,r.FILE_TYPE],w=new Set([r.DIR_TYPE,r.EVERYTHING_TYPE,r.FILE_DIR_TYPE]),x=new Set([r.EVERYTHING_TYPE,r.FILE_DIR_TYPE,r.FILE_TYPE]),y="win32"===process.platform,z=a=>!0,A=a=>{if(void 0===a)return z;if("function"==typeof a)return a;if("string"==typeof a){let b=a.trim();return a=>a.basename===b}if(Array.isArray(a)){let b=a.map(a=>a.trim());return a=>b.some(b=>a.basename===b)}return z};class B extends p.Readable{constructor(a={}){super({objectMode:!0,autoDestroy:!0,highWaterMark:a.highWaterMark});let b={...s,...a},{root:c,type:d}=b;this._fileFilter=A(b.fileFilter),this._directoryFilter=A(b.directoryFilter);let e=b.lstat?o.lstat:o.stat;y?this._stat=a=>e(a,{bigint:!0}):this._stat=e,this._maxDepth=b.depth??s.depth,this._wantsDir=!!d&&w.has(d),this._wantsFile=!!d&&x.has(d),this._wantsEverything=d===r.EVERYTHING_TYPE,this._root=(0,q.resolve)(c),this._isDirent=!b.alwaysStat,this._statsProp=this._isDirent?"dirent":"stats",this._rdOptions={encoding:"utf8",withFileTypes:this._isDirent},this.parents=[this._exploreDir(c,1)],this.reading=!1,this.parent=void 0}async _read(a){if(!this.reading){this.reading=!0;try{for(;!this.destroyed&&a>0;){let b=this.parent,c=b&&b.files;if(c&&c.length>0){let{path:d,depth:e}=b,f=c.splice(0,a).map(a=>this._formatEntry(a,d));for(let b of(await Promise.all(f))){if(!b)continue;if(this.destroyed)return;let c=await this._getEntryType(b);"directory"===c&&this._directoryFilter(b)?(e<=this._maxDepth&&this.parents.push(this._exploreDir(b.fullPath,e+1)),this._wantsDir&&(this.push(b),a--)):("file"===c||this._includeAsFile(b))&&this._fileFilter(b)&&this._wantsFile&&(this.push(b),a--)}}else{let a=this.parents.pop();if(!a){this.push(null);break}if(this.parent=await a,this.destroyed)return}}}catch(a){this.destroy(a)}finally{this.reading=!1}}}async _exploreDir(a,b){let c;try{c=await (0,o.readdir)(a,this._rdOptions)}catch(a){this._onError(a)}return{files:c,depth:b,path:a}}async _formatEntry(a,b){let c,d=this._isDirent?a.name:a;try{let e=(0,q.resolve)((0,q.join)(b,d));(c={path:(0,q.relative)(this._root,e),fullPath:e,basename:d})[this._statsProp]=this._isDirent?a:await this._stat(e)}catch(a){this._onError(a);return}return c}_onError(a){u.has(a.code)&&!this.destroyed?this.emit("warn",a):this.destroy(a)}async _getEntryType(a){if(!a&&this._statsProp in a)return"";let b=a[this._statsProp];if(b.isFile())return"file";if(b.isDirectory())return"directory";if(b&&b.isSymbolicLink()){let b=a.fullPath;try{let a=await (0,o.realpath)(b),c=await (0,o.lstat)(a);if(c.isFile())return"file";if(c.isDirectory()){let c=a.length;if(b.startsWith(a)&&b.substr(c,1)===q.sep){let c=Error(`Circular symlink detected: "${b}" points to "${a}"`);return c.code=t,this._onError(c)}return"directory"}}catch(a){return this._onError(a),""}}}_includeAsFile(a){let b=a&&a[this._statsProp];return b&&this._wantsEverything&&!b.isDirectory()}}var C=c(21820);let D=()=>{},E=process.platform,F="win32"===E,G="darwin"===E,H="linux"===E,I="freebsd"===E,J="OS400"===(0,C.type)(),K={ALL:"all",READY:"ready",ADD:"add",CHANGE:"change",ADD_DIR:"addDir",UNLINK:"unlink",UNLINK_DIR:"unlinkDir",RAW:"raw",ERROR:"error"},L={lstat:m.lstat,stat:m.stat},M="listeners",N="errHandlers",O="rawEmitters",P=[M,N,O],Q=new Set(["3dm","3ds","3g2","3gp","7z","a","aac","adp","afdesign","afphoto","afpub","ai","aif","aiff","alz","ape","apk","appimage","ar","arj","asf","au","avi","bak","baml","bh","bin","bk","bmp","btif","bz2","bzip2","cab","caf","cgm","class","cmx","cpio","cr2","cur","dat","dcm","deb","dex","djvu","dll","dmg","dng","doc","docm","docx","dot","dotm","dra","DS_Store","dsk","dts","dtshd","dvb","dwg","dxf","ecelp4800","ecelp7470","ecelp9600","egg","eol","eot","epub","exe","f4v","fbs","fh","fla","flac","flatpak","fli","flv","fpx","fst","fvt","g3","gh","gif","graffle","gz","gzip","h261","h263","h264","icns","ico","ief","img","ipa","iso","jar","jpeg","jpg","jpgv","jpm","jxr","key","ktx","lha","lib","lvp","lz","lzh","lzma","lzo","m3u","m4a","m4v","mar","mdi","mht","mid","midi","mj2","mka","mkv","mmr","mng","mobi","mov","movie","mp3","mp4","mp4a","mpeg","mpg","mpga","mxu","nef","npx","numbers","nupkg","o","odp","ods","odt","oga","ogg","ogv","otf","ott","pages","pbm","pcx","pdb","pdf","pea","pgm","pic","png","pnm","pot","potm","potx","ppa","ppam","ppm","pps","ppsm","ppsx","ppt","pptm","pptx","psd","pya","pyc","pyo","pyv","qt","rar","ras","raw","resources","rgb","rip","rlc","rmf","rmvb","rpm","rtf","rz","s3m","s7z","scpt","sgi","shar","snap","sil","sketch","slk","smv","snk","so","stl","suo","sub","swf","tar","tbz","tbz2","tga","tgz","thmx","tif","tiff","tlz","ttc","ttf","txz","udf","uvh","uvi","uvm","uvp","uvs","uvu","viv","vob","war","wav","wax","wbmp","wdp","weba","webm","webp","whl","wim","wm","wma","wmv","wmx","woff","woff2","wrm","wvx","xbm","xif","xla","xlam","xls","xlsb","xlsm","xlsx","xlt","xltm","xltx","xm","xmind","xpi","xpm","xwd","xz","z","zip","zipx"]),R=(a,b)=>{a instanceof Set?a.forEach(b):b(a)},S=(a,b,c)=>{let d=a[b];d instanceof Set||(a[b]=d=new Set([d])),d.add(c)},T=(a,b,c)=>{let d=a[b];d instanceof Set?d.delete(c):d===c&&delete a[b]},U=a=>a instanceof Set?0===a.size:!a,V=new Map;function W(a,b,c,d,e){try{return(0,l.watch)(a,{persistent:b.persistent},(b,d)=>{c(a),e(b,d,{watchedPath:a}),d&&a!==d&&X(j.resolve(a,d),M,j.join(a,d))})}catch(a){d(a);return}}let X=(a,b,c,d,e)=>{let f=V.get(a);f&&R(f[b],a=>{a(c,d,e)})},Y=new Map;class Z{constructor(a){this.fsw=a,this._boundHandleError=b=>a._handleError(b)}_watchWithNodeFs(a,b){let c,d=this.fsw.options,e=j.dirname(a),f=j.basename(a);this.fsw._getWatchedDir(e).add(f);let g=j.resolve(a),h={persistent:d.persistent};if(b||(b=D),d.usePolling)h.interval=d.interval!==d.binaryInterval&&Q.has(j.extname(f).slice(1).toLowerCase())?d.binaryInterval:d.interval,c=((a,b,c,d)=>{let{listener:e,rawEmitter:f}=d,g=Y.get(b),h=g&&g.options;return h&&(h.persistent<c.persistent||h.interval>c.interval)&&((0,l.unwatchFile)(b),g=void 0),g?(S(g,M,e),S(g,O,f)):(g={listeners:e,rawEmitters:f,options:c,watcher:(0,l.watchFile)(b,c,(c,d)=>{R(g.rawEmitters,a=>{a(K.CHANGE,b,{curr:c,prev:d})});let e=c.mtimeMs;(c.size!==d.size||e>d.mtimeMs||0===e)&&R(g.listeners,b=>b(a,c))})},Y.set(b,g)),()=>{T(g,M,e),T(g,O,f),U(g.listeners)&&(Y.delete(b),(0,l.unwatchFile)(b),g.options=g.watcher=void 0,Object.freeze(g))}})(a,g,h,{listener:b,rawEmitter:this.fsw._emitRaw});else c=((a,b,c,d)=>{let e,{listener:f,errHandler:g,rawEmitter:h}=d,i=V.get(b);if(!c.persistent){if(!(e=W(a,c,f,g,h)))return;return e.close.bind(e)}if(i)S(i,M,f),S(i,N,g),S(i,O,h);else{if(!(e=W(a,c,X.bind(null,b,M),g,X.bind(null,b,O))))return;e.on(K.ERROR,async c=>{let d=X.bind(null,b,N);if(i&&(i.watcherUnusable=!0),F&&"EPERM"===c.code)try{let b=await (0,m.open)(a,"r");await b.close(),d(c)}catch(a){}else d(c)}),i={listeners:f,errHandlers:g,rawEmitters:h,watcher:e},V.set(b,i)}return()=>{let a;T(i,M,f),T(i,N,g),T(i,O,h),U(i.listeners)&&(i.watcher.close(),V.delete(b),P.forEach((a=i,b=>{let c=a[b];c instanceof Set?c.clear():delete a[b]})),i.watcher=void 0,Object.freeze(i))}})(a,g,h,{listener:b,errHandler:this._boundHandleError,rawEmitter:this.fsw._emitRaw});return c}_handleFile(a,b,c){if(this.fsw.closed)return;let d=j.dirname(a),e=j.basename(a),f=this.fsw._getWatchedDir(d),g=b;if(f.has(e))return;let h=async(b,c)=>{if(this.fsw._throttle("watch",a,5))if(c&&0!==c.mtimeMs){if(f.has(e)){let b=c.atimeMs,d=c.mtimeMs;(!b||b<=d||d!==g.mtimeMs)&&this.fsw._emit(K.CHANGE,a,c),g=c}}else try{let c=await (0,m.stat)(a);if(this.fsw.closed)return;let d=c.atimeMs,e=c.mtimeMs;if((!d||d<=e||e!==g.mtimeMs)&&this.fsw._emit(K.CHANGE,a,c),(G||H||I)&&g.ino!==c.ino){this.fsw._closeFile(b),g=c;let d=this._watchWithNodeFs(a,h);d&&this.fsw._addPathCloser(b,d)}else g=c}catch(a){this.fsw._remove(d,e)}},i=this._watchWithNodeFs(a,h);if(!(c&&this.fsw.options.ignoreInitial)&&this.fsw._isntIgnored(a)){if(!this.fsw._throttle(K.ADD,a,0))return;this.fsw._emit(K.ADD,a,b)}return i}async _handleSymlink(a,b,c,d){if(this.fsw.closed)return;let e=a.fullPath,f=this.fsw._getWatchedDir(b);if(!this.fsw.options.followSymlinks){let b;this.fsw._incrReadyCount();try{b=await (0,m.realpath)(c)}catch(a){return this.fsw._emitReady(),!0}if(this.fsw.closed)return;return f.has(d)?this.fsw._symlinkPaths.get(e)!==b&&(this.fsw._symlinkPaths.set(e,b),this.fsw._emit(K.CHANGE,c,a.stats)):(f.add(d),this.fsw._symlinkPaths.set(e,b),this.fsw._emit(K.ADD,c,a.stats)),this.fsw._emitReady(),!0}if(this.fsw._symlinkPaths.has(e))return!0;this.fsw._symlinkPaths.set(e,!0)}_handleRead(a,b,c,d,e,f,g){if(a=j.join(a,""),!(g=this.fsw._throttle("readdir",a,1e3)))return;let h=this.fsw._getWatchedDir(c.path),i=new Set,k=this.fsw._readdirp(a,{fileFilter:a=>c.filterPath(a),directoryFilter:a=>c.filterDir(a)});if(k)return k.on("data",async g=>{if(this.fsw.closed){k=void 0;return}let l=g.path,m=j.join(a,l);if(i.add(l),!(g.stats.isSymbolicLink()&&await this._handleSymlink(g,a,m,l))){if(this.fsw.closed){k=void 0;return}l!==d&&(d||h.has(l))||(this.fsw._incrReadyCount(),m=j.join(e,j.relative(e,m)),this._addToNodeFs(m,b,c,f+1))}}).on(K.ERROR,this._boundHandleError),new Promise((b,j)=>{if(!k)return j();k.once("end",()=>{if(this.fsw.closed){k=void 0;return}let j=!!g&&g.clear();b(void 0),h.getChildren().filter(b=>b!==a&&!i.has(b)).forEach(b=>{this.fsw._remove(a,b)}),k=void 0,j&&this._handleRead(a,!1,c,d,e,f,g)})})}async _handleDir(a,b,c,d,e,f,g){let h,i,k=this.fsw._getWatchedDir(j.dirname(a)),l=k.has(j.basename(a));c&&this.fsw.options.ignoreInitial||e||l||this.fsw._emit(K.ADD_DIR,a,b),k.add(j.basename(a)),this.fsw._getWatchedDir(a);let m=this.fsw.options.depth;if((null==m||d<=m)&&!this.fsw._symlinkPaths.has(g)){if(!e&&(await this._handleRead(a,c,f,e,a,d,h),this.fsw.closed))return;i=this._watchWithNodeFs(a,(b,c)=>{c&&0===c.mtimeMs||this._handleRead(b,!1,f,e,a,d,h)})}return i}async _addToNodeFs(a,b,c,d,e){let f=this.fsw._emitReady;if(this.fsw._isIgnored(a)||this.fsw.closed)return f(),!1;let g=this.fsw._getWatchHelpers(a);c&&(g.filterPath=a=>c.filterPath(a),g.filterDir=a=>c.filterDir(a));try{let c,h=await L[g.statMethod](g.watchPath);if(this.fsw.closed)return;if(this.fsw._isIgnored(g.watchPath,h))return f(),!1;let i=this.fsw.options.followSymlinks;if(h.isDirectory()){let f=j.resolve(a),k=i?await (0,m.realpath)(a):a;if(this.fsw.closed||(c=await this._handleDir(g.watchPath,h,b,d,e,g,k),this.fsw.closed))return;f!==k&&void 0!==k&&this.fsw._symlinkPaths.set(f,k)}else if(h.isSymbolicLink()){let e=i?await (0,m.realpath)(a):a;if(this.fsw.closed)return;let f=j.dirname(g.watchPath);if(this.fsw._getWatchedDir(f).add(g.watchPath),this.fsw._emit(K.ADD,g.watchPath,h),c=await this._handleDir(f,h,b,d,a,g,e),this.fsw.closed)return;void 0!==e&&this.fsw._symlinkPaths.set(j.resolve(a),e)}else c=this._handleFile(g.watchPath,h,b);return f(),c&&this.fsw._addPathCloser(a,c),!1}catch(b){if(this.fsw._handleError(b))return f(),a}}}let $=/\\/g,_=/\/\//,aa=/\..*\.(sw[px])$|~$|\.subl.*\.tmp/,ab=/^\.[/\\]/;function ac(a){return Array.isArray(a)?a:[a]}let ad=a=>"object"==typeof a&&null!==a&&!(a instanceof RegExp);function ae(a,b,c){let d=function(a){if("string"!=typeof a)throw Error("string expected");a=(a=j.normalize(a)).replace(/\\/g,"/");let b=!1;a.startsWith("//")&&(b=!0);let c=/\/\//;for(;a.match(c);)a=a.replace(c,"/");return b&&(a="/"+a),a}(b);for(let b=0;b<a.length;b++)if((0,a[b])(d,c))return!0;return!1}let af=a=>{let b=ac(a).flat();if(!b.every(a=>"string"==typeof a))throw TypeError(`Non-string provided as watch path: ${b}`);return b.map(ah)},ag=a=>{let b=a.replace($,"/"),c=!1;for(b.startsWith("//")&&(c=!0);b.match(_);)b=b.replace(_,"/");return c&&(b="/"+b),b},ah=a=>ag(j.normalize(ag(a))),ai=(a="")=>b=>"string"==typeof b?ah(j.isAbsolute(b)?b:j.join(a,b)):b,aj=Object.freeze(new Set);class ak{constructor(a,b){this.path=a,this._removeWatcher=b,this.items=new Set}add(a){let{items:b}=this;b&&"."!==a&&".."!==a&&b.add(a)}async remove(a){let{items:b}=this;if(!b||(b.delete(a),b.size>0))return;let c=this.path;try{await (0,m.readdir)(c)}catch(a){this._removeWatcher&&this._removeWatcher(j.dirname(c),j.basename(c))}}has(a){let{items:b}=this;if(b)return b.has(a)}getChildren(){let{items:a}=this;return a?[...a.values()]:[]}dispose(){this.items.clear(),this.path="",this._removeWatcher=D,this.items=aj,Object.freeze(this)}}class al{constructor(a,b,c){this.fsw=c;let d=a;this.path=a=a.replace(ab,""),this.watchPath=d,this.fullWatchPath=j.resolve(d),this.dirParts=[],this.dirParts.forEach(a=>{a.length>1&&a.pop()}),this.followSymlinks=b,this.statMethod=b?"stat":"lstat"}entryPath(a){return j.join(this.watchPath,j.relative(this.watchPath,a.fullPath))}filterPath(a){let{stats:b}=a;if(b&&b.isSymbolicLink())return this.filterDir(a);let c=this.entryPath(a);return this.fsw._isntIgnored(c,b)&&this.fsw._hasReadPermissions(b)}filterDir(a){return this.fsw._isntIgnored(this.entryPath(a),a.stats)}}class am extends n.EventEmitter{constructor(a={}){super(),this.closed=!1,this._closers=new Map,this._ignoredPaths=new Set,this._throttled=new Map,this._streams=new Set,this._symlinkPaths=new Map,this._watched=new Map,this._pendingWrites=new Map,this._pendingUnlinks=new Map,this._readyCount=0,this._readyEmitted=!1;let b=a.awaitWriteFinish,c={stabilityThreshold:2e3,pollInterval:100},d={persistent:!0,ignoreInitial:!1,ignorePermissionErrors:!1,interval:100,binaryInterval:300,followSymlinks:!0,usePolling:!1,atomic:!0,...a,ignored:a.ignored?ac(a.ignored):ac([]),awaitWriteFinish:!0===b?c:"object"==typeof b&&{...c,...b}};J&&(d.usePolling=!0),void 0===d.atomic&&(d.atomic=!d.usePolling);let e=process.env.CHOKIDAR_USEPOLLING;if(void 0!==e){let a=e.toLowerCase();"false"===a||"0"===a?d.usePolling=!1:"true"===a||"1"===a?d.usePolling=!0:d.usePolling=!!a}let f=process.env.CHOKIDAR_INTERVAL;f&&(d.interval=Number.parseInt(f,10));let g=0;this._emitReady=()=>{++g>=this._readyCount&&(this._emitReady=D,this._readyEmitted=!0,process.nextTick(()=>this.emit(K.READY)))},this._emitRaw=(...a)=>this.emit(K.RAW,...a),this._boundRemove=this._remove.bind(this),this.options=d,this._nodeFsHandler=new Z(this),Object.freeze(d)}_addIgnoredPath(a){if(ad(a)){for(let b of this._ignoredPaths)if(ad(b)&&b.path===a.path&&b.recursive===a.recursive)return}this._ignoredPaths.add(a)}_removeIgnoredPath(a){if(this._ignoredPaths.delete(a),"string"==typeof a)for(let b of this._ignoredPaths)ad(b)&&b.path===a&&this._ignoredPaths.delete(b)}add(a,b,c){let{cwd:d}=this.options;this.closed=!1,this._closePromise=void 0;let e=af(a);return d&&(e=e.map(a=>j.isAbsolute(a)?a:j.join(d,a))),e.forEach(a=>{this._removeIgnoredPath(a)}),this._userIgnored=void 0,this._readyCount||(this._readyCount=0),this._readyCount+=e.length,Promise.all(e.map(async a=>{let d=await this._nodeFsHandler._addToNodeFs(a,!c,void 0,0,b);return d&&this._emitReady(),d})).then(a=>{this.closed||a.forEach(a=>{a&&this.add(j.dirname(a),j.basename(b||a))})}),this}unwatch(a){if(this.closed)return this;let b=af(a),{cwd:c}=this.options;return b.forEach(a=>{j.isAbsolute(a)||this._closers.has(a)||(c&&(a=j.join(c,a)),a=j.resolve(a)),this._closePath(a),this._addIgnoredPath(a),this._watched.has(a)&&this._addIgnoredPath({path:a,recursive:!0}),this._userIgnored=void 0}),this}close(){if(this._closePromise)return this._closePromise;this.closed=!0,this.removeAllListeners();let a=[];return this._closers.forEach(b=>b.forEach(b=>{let c=b();c instanceof Promise&&a.push(c)})),this._streams.forEach(a=>a.destroy()),this._userIgnored=void 0,this._readyCount=0,this._readyEmitted=!1,this._watched.forEach(a=>a.dispose()),this._closers.clear(),this._watched.clear(),this._streams.clear(),this._symlinkPaths.clear(),this._throttled.clear(),this._closePromise=a.length?Promise.all(a).then(()=>void 0):Promise.resolve(),this._closePromise}getWatched(){let a={};return this._watched.forEach((b,c)=>{a[(this.options.cwd?j.relative(this.options.cwd,c):c)||"."]=b.getChildren().sort()}),a}emitWithAll(a,b){this.emit(a,...b),a!==K.ERROR&&this.emit(K.ALL,a,...b)}async _emit(a,b,c){let d;if(this.closed)return;let e=this.options;F&&(b=j.normalize(b)),e.cwd&&(b=j.relative(e.cwd,b));let f=[b];null!=c&&f.push(c);let g=e.awaitWriteFinish;if(g&&(d=this._pendingWrites.get(b)))return d.lastChange=new Date,this;if(e.atomic){if(a===K.UNLINK)return this._pendingUnlinks.set(b,[a,...f]),setTimeout(()=>{this._pendingUnlinks.forEach((a,b)=>{this.emit(...a),this.emit(K.ALL,...a),this._pendingUnlinks.delete(b)})},"number"==typeof e.atomic?e.atomic:100),this;a===K.ADD&&this._pendingUnlinks.has(b)&&(a=K.CHANGE,this._pendingUnlinks.delete(b))}if(g&&(a===K.ADD||a===K.CHANGE)&&this._readyEmitted){let c=(b,c)=>{b?(a=K.ERROR,f[0]=b,this.emitWithAll(a,f)):c&&(f.length>1?f[1]=c:f.push(c),this.emitWithAll(a,f))};return this._awaitWriteFinish(b,g.stabilityThreshold,a,c),this}if(a===K.CHANGE&&!this._throttle(K.CHANGE,b,50))return this;if(e.alwaysStat&&void 0===c&&(a===K.ADD||a===K.ADD_DIR||a===K.CHANGE)){let a,c=e.cwd?j.join(e.cwd,b):b;try{a=await (0,m.stat)(c)}catch(a){}if(!a||this.closed)return;f.push(a)}return this.emitWithAll(a,f),this}_handleError(a){let b=a&&a.code;return a&&"ENOENT"!==b&&"ENOTDIR"!==b&&(!this.options.ignorePermissionErrors||"EPERM"!==b&&"EACCES"!==b)&&this.emit(K.ERROR,a),a||this.closed}_throttle(a,b,c){let d;this._throttled.has(a)||this._throttled.set(a,new Map);let e=this._throttled.get(a);if(!e)throw Error("invalid throttle");let f=e.get(b);if(f)return f.count++,!1;let g=()=>{let a=e.get(b),c=a?a.count:0;return e.delete(b),clearTimeout(d),a&&clearTimeout(a.timeoutObject),c},h={timeoutObject:d=setTimeout(g,c),clear:g,count:0};return e.set(b,h),h}_incrReadyCount(){return this._readyCount++}_awaitWriteFinish(a,b,c,d){let e,f=this.options.awaitWriteFinish;if("object"!=typeof f)return;let g=f.pollInterval,h=a;this.options.cwd&&!j.isAbsolute(a)&&(h=j.join(this.options.cwd,a));let i=new Date,k=this._pendingWrites;k.has(a)||(k.set(a,{lastChange:i,cancelWait:()=>(k.delete(a),clearTimeout(e),c)}),e=setTimeout(function c(f){(0,l.stat)(h,(h,i)=>{if(h||!k.has(a)){h&&"ENOENT"!==h.code&&d(h);return}let j=Number(new Date);f&&i.size!==f.size&&(k.get(a).lastChange=j),j-k.get(a).lastChange>=b?(k.delete(a),d(void 0,i)):e=setTimeout(c,g,i)})},g))}_isIgnored(a,b){if(this.options.atomic&&aa.test(a))return!0;if(!this._userIgnored){let{cwd:a}=this.options,b=(this.options.ignored||[]).map(ai(a)),c=[...[...this._ignoredPaths].map(ai(a)),...b];this._userIgnored=function(a,b){if(null==a)throw TypeError("anymatch: specify first argument");let c=ac(a).map(a=>"function"==typeof a?a:"string"==typeof a?b=>a===b:a instanceof RegExp?b=>a.test(b):"object"==typeof a&&null!==a?b=>{if(a.path===b)return!0;if(a.recursive){let c=j.relative(a.path,b);return!!c&&!c.startsWith("..")&&!j.isAbsolute(c)}return!1}:()=>!1);return null==b?(a,b)=>ae(c,a,b):ae(c,b)}(c,void 0)}return this._userIgnored(a,b)}_isntIgnored(a,b){return!this._isIgnored(a,b)}_getWatchHelpers(a){return new al(a,this.options.followSymlinks,this)}_getWatchedDir(a){let b=j.resolve(a);return this._watched.has(b)||this._watched.set(b,new ak(b,this._boundRemove)),this._watched.get(b)}_hasReadPermissions(a){return!!this.options.ignorePermissionErrors||!!(256&Number(a.mode))}_remove(a,b,c){let d=j.join(a,b),e=j.resolve(d);if(c=null!=c?c:this._watched.has(d)||this._watched.has(e),!this._throttle("remove",d,100))return;c||1!==this._watched.size||this.add(a,b,!0),this._getWatchedDir(d).getChildren().forEach(a=>this._remove(d,a));let f=this._getWatchedDir(a),g=f.has(b);f.remove(b),this._symlinkPaths.has(e)&&this._symlinkPaths.delete(e);let h=d;if(this.options.cwd&&(h=j.relative(this.options.cwd,d)),this.options.awaitWriteFinish&&this._pendingWrites.has(h)&&this._pendingWrites.get(h).cancelWait()===K.ADD)return;this._watched.delete(d),this._watched.delete(e);let i=c?K.UNLINK_DIR:K.UNLINK;g&&!this._isIgnored(d)&&this._emit(i,d),this._closePath(d)}_closePath(a){this._closeFile(a);let b=j.dirname(a);this._getWatchedDir(b).remove(j.basename(a))}_closeFile(a){let b=this._closers.get(a);b&&(b.forEach(a=>a()),this._closers.delete(a))}_addPathCloser(a,b){if(!b)return;let c=this._closers.get(a);c||(c=[],this._closers.set(a,c)),c.push(b)}_readdirp(a,b){if(this.closed)return;let c=function(a,b={}){let c=b.entryType||b.type;if("both"===c&&(c=r.FILE_DIR_TYPE),c&&(b.type=c),a){if("string"!=typeof a)throw TypeError("readdirp: root argument must be a string. Usage: readdirp(root, options)");else if(c&&!v.includes(c))throw Error(`readdirp: Invalid type passed. Use one of ${v.join(", ")}`)}else throw Error("readdirp: root argument is required. Usage: readdirp(root, options)");return b.root=a,new B(b)}(a,{type:K.ALL,alwaysStat:!0,lstat:!0,...b,depth:0});return this._streams.add(c),c.once("close",()=>{c=void 0}),c.once("end",()=>{c&&(this._streams.delete(c),c=void 0)}),c}}let an=(0,g.h)("backend/services/scheduler/triggers/fileWatch");var ao=c(74663);function ap(a){let b=Math.max(5,Math.round((a??6e4)/1e3));if(b<60)return`*/${b} * * * * *`;let c=Math.max(1,Math.round(b/60));if(c<60)return`*/${c} * * * *`;let d=Math.max(1,Math.min(23,Math.round(c/60)));return`0 */${d} * * *`}var aq=c(26358);let ar=(0,g.h)("backend/services/scheduler/triggers/mcpPoll"),as=(0,g.h)("backend/services/scheduler/triggers/urlWatch");var at=c(37860);let au=(0,g.h)("backend/services/scheduler/triggers/flowEvent");function av(a){return a&&a.length>8192?`${a.slice(0,8192)}… (truncated)`:a}let aw=(0,g.h)("backend/services/scheduler/runHistory"),ax=a=>`planned-execution-runs/${a}`,ay=new Map;async function az(a){try{return await (0,e.YM)(ax(a),[])}catch(b){return aw.error(`Failed to load run history for ${a}:`,b),[]}}async function aA(a,b){let c=(ay.get(a)??Promise.resolve()).catch(()=>{}).then(async()=>{let c=await az(a);c.push(b);let d=c.slice(-100);await (0,e.VH)(ax(a),d)});ay.set(a,c);try{await c}finally{ay.get(a)===c&&ay.delete(a)}}async function aB(a){let b=await az(a);return b.length>0?b[b.length-1]:null}async function aC(a){await (0,e.N2)(ax(a))}let aD=(0,g.h)("backend/services/scheduler/state"),aE=a=>`planned-execution-state/${a}`;async function aF(a){try{return await (0,e.YM)(aE(a),{})}catch(b){return aD.error(`Failed to load trigger state for ${a}:`,b),{}}}async function aG(a,b){await (0,e.VH)(aE(a),b)}async function aH(a){await (0,e.N2)(aE(a))}let aI=(0,g.h)("backend/services/scheduler/index"),aJ={version:1,paused:!1,executions:[]};class aK{static{this.MAX_QUEUE_DEPTH=50}async start(){this.started||(this.started=!0,aI.info("Starting scheduler"),await this.reconcile())}reconcile(){let a=this.reconcileChain.catch(()=>{}).then(()=>this.doReconcile());return this.reconcileChain=a,a}async doReconcile(){for(let[a,b]of this.armed)try{b.dispose()}catch(b){aI.warn(`Failed to dispose trigger for ${a}:`,b)}this.armed.clear();let a=await this.loadFile();if(this.pausedCache=a.paused,a.paused)return void aI.info("Scheduler is paused — nothing armed");for(let b of a.executions)if(b.enabled)try{await this.armExecution(b)}catch(c){let a=c instanceof Error?c.message:String(c);this.lastTriggerErrors.set(b.id,a),aI.error(`Failed to arm "${b.name}" (${b.id}):`,c)}aI.info(`Scheduler armed ${this.armed.size} execution(s)`)}async armExecution(a){let b=a.trigger;switch(b.type){case"schedule":{let c=await aF(a.id);c.lastScheduledFireAt?b.catchUp&&(0,i.hk)(b,c.lastScheduledFireAt)&&(await aG(a.id,{...c,lastScheduledFireAt:new Date().toISOString()}),aI.info(`Catch-up run for "${a.name}" (missed while closed)`),this.fire(a,{kind:"schedule-catchup",summary:"Schedule (missed while FLUJO was closed — ran once at startup)"})):await aG(a.id,{...c,lastScheduledFireAt:new Date().toISOString()}),this.armed.set(a.id,(0,i.wv)(b,()=>{(async()=>{let b=await aF(a.id);await aG(a.id,{...b,lastScheduledFireAt:new Date().toISOString()}),await this.fire(a,{kind:"schedule",summary:"Schedule"})})().catch(b=>aI.error(`Scheduled fire failed for ${a.id}:`,b))}));break}case"webhook":break;case"file-watch":this.armed.set(a.id,function(a,b,c){let d,e=a.debounceMs??2e3,f=new Set(a.events),g=a.glob?.trim()?function(a){let b=a.replace(/\\/g,"/"),c="";for(let a=0;a<b.length;a++){let d=b[a];"*"===d?"*"===b[a+1]?"/"===b[++a+1]?(a++,c+="(?:.*/)?"):c+=".*":c+="[^/]*":"?"===d?c+="[^/]":c+=d.replace(/[.+^${}()|[\]\\]/g,"\\$&")}return RegExp(`^${c}$`)}(a.glob.trim()):null;try{d=l.realpathSync.native(a.path)}catch(d){let b=d instanceof Error?d.message:String(d);return an.warn(`Cannot watch "${a.path}": ${b}`),c(`Cannot watch "${a.path}": ${b}`),{dispose:()=>void 0}}let h=[],i=!1,j=null,m=!1,n=()=>{if(j=null,m||0===h.length)return;let a=h;i&&an.info("File-watch batch overflowed; reporting first 50 events"),h=[],i=!1,b({events:a})},o=function(a,b={}){let c=new am(b);return c.add(a),c}(d,{ignoreInitial:!0,awaitWriteFinish:{stabilityThreshold:500,pollInterval:100}});return o.on("all",(a,b)=>{if(!m&&("add"===a||"change"===a||"unlink"===a)&&f.has(a)){if(g){let a=k().relative(d,b).replace(/\\/g,"/")||k().basename(b);if(!g.test(a))return}h.length>=50?i=!0:h.push({event:a,path:b}),j&&clearTimeout(j),j=setTimeout(n,e),j.unref?.()}}),o.on("error",a=>{let b=a instanceof Error?a.message:String(a);an.warn(`Watcher error for ${d}: ${b}`),c(b)}),{dispose:()=>{m=!0,j&&(clearTimeout(j),j=null),h=[],o.close().catch(a=>an.warn(`Failed to close watcher for ${d}:`,a))}}}(b,({events:c})=>{this.lastTriggerErrors.delete(a.id),this.fire(a,{kind:"file",summary:1===c.length?`File ${"unlink"===c[0].event?"deleted":"add"===c[0].event?"added":"changed"}`:`${c.length} file changes`,context:{watchedPath:b.path,events:c}})},b=>this.lastTriggerErrors.set(a.id,b)));break;case"mcp-poll":Promise.resolve().then(c.bind(c,82464)).then(async({mcpService:c})=>{await c.isServerDisabled(b.serverName)&&this.lastTriggerErrors.set(a.id,`MCP server '${b.serverName}' is disabled — enable it on the MCP page or change the trigger`)}).catch(b=>aI.warn(`Arm-time disabled-server check failed for ${a.id}:`,b)),this.armed.set(a.id,function(a,b){let c=a.cron||ap(a.intervalMs),d=!1,e=!1,f=0,g=0,h=async()=>{if(!e&&!d){if(g>0)return void g--;d=!0;try{let c,d=await b.callTool(a.serverName,a.toolName,a.args);if(!d.success)throw Error(d.error||"Tool call failed");f=0;let g=await b.loadState(),h=a.evaluate;if(c="on-change"===h.mode?(0,aq.Jl)(d.data,g):"new-items"===h.mode?(0,aq.A1)(d.data,h.itemsPath,h.idField,g):b.evaluateAiGate?await b.evaluateAiGate(d.data,h,g):{fire:!1,newState:{},error:'The "AI decides" condition is not available yet'},e)return;if(Object.keys(c.newState).length>0&&await b.saveState(c.newState),c.error)b.onError(c.error);else if(c.fire){let{status:d}=await b.onFire({summary:`Watched tool: ${c.summary??"condition met"}`,context:{server:a.serverName,tool:a.toolName,..."object"==typeof c.context&&null!==c.context?c.context:{result:c.context}}});if(e)return;if(c.pendingState){let{giveUpError:a}=await (0,aq.vV)({status:d,pendingState:c.pendingState,priorFailures:g.pendingFailures??0,saveState:b.saveState});a&&b.onError(a)}}else b.onSuccess?.()}catch(d){f++,g=Math.min(2**(f-1),8);let c=d instanceof Error?d.message:String(d);ar.warn(`Poll failed for ${a.serverName}/${a.toolName} (backing off ${g} check(s)): ${c}`),b.onError(c)}finally{d=!1}}},i=new ao.l4(c,{timezone:a.timezone,unref:!0},()=>void h());return h(),{dispose:()=>{e=!0,i.stop()},nextRun:()=>i.nextRun()?.toISOString()??null}}(b,{callTool:async(a,b,d)=>{let{mcpService:e}=await Promise.resolve().then(c.bind(c,82464)),f=await e.callTool(a,b,d);return{success:!0===f.success,data:f.data,error:"string"==typeof f.error?f.error:void 0}},loadState:()=>aF(a.id),saveState:async b=>{let c=await aF(a.id);await aG(a.id,{...c,...b})},onFire:async({summary:b,context:c})=>(this.lastTriggerErrors.delete(a.id),{status:(await this.fire(a,{kind:"mcp-poll",summary:b,context:c})).status}),onError:b=>this.lastTriggerErrors.set(a.id,b),onSuccess:()=>this.lastTriggerErrors.delete(a.id),evaluateAiGate:async(a,b,d)=>{let{evaluateAiGate:e}=await c.e(701).then(c.bind(c,90701));return e(a,b,d)}}));break;case"url-watch":this.armed.set(a.id,function(a,b){let c=b.fetchImpl??fetch,d=!1,e=!1,f=async()=>{if(!e&&!d){d=!0;try{let d=await c(a.url,{redirect:"follow",headers:{"User-Agent":"FLUJO-url-watch"},signal:AbortSignal.timeout(3e4)});if(!d.ok)return void b.onError(`The URL answered with HTTP ${d.status}`);let f=await d.text(),g=(0,aq.qq)(f),h=await b.loadState();if(e)return;if(!h.lastHash){await b.saveState({lastHash:g}),b.onSuccess?.();return}if(h.lastHash===g)return void b.onSuccess?.();let{status:i}=await b.onFire({summary:"Online content changed",context:{url:a.url,status:d.status,contentType:d.headers.get("content-type")??void 0,content:f.length>8192?`${f.slice(0,8192)}… (truncated, ${f.length} chars total)`:f}});if(e)return;let{giveUpError:j}=await (0,aq.vV)({status:i,pendingState:{lastHash:g},priorFailures:h.pendingFailures??0,saveState:b.saveState});j&&b.onError(j)}catch(d){let c=d instanceof Error&&"TimeoutError"===d.name?"The URL did not answer within 30s":d instanceof Error?d.message:String(d);as.warn(`URL check failed for ${a.url}: ${c}`),b.onError(c)}finally{d=!1}}},g=new ao.l4(a.cron,{timezone:a.timezone,unref:!0},()=>void f());return f(),{dispose:()=>{e=!0,g.stop()},nextRun:()=>g.nextRun()?.toISOString()??null}}(b,{loadState:()=>aF(a.id),saveState:async b=>{let c=await aF(a.id);await aG(a.id,{...c,...b})},onFire:async({summary:b,context:c})=>(this.lastTriggerErrors.delete(a.id),{status:(await this.fire(a,{kind:"url-watch",summary:b,context:c})).status}),onError:b=>this.lastTriggerErrors.set(a.id,b),onSuccess:()=>this.lastTriggerErrors.delete(a.id)}));break;case"flow-event":this.armed.set(a.id,function(a,b){let c=a.maxChainDepth??5,d="string"==typeof a.source.topic?a.source.topic.trim():"",e=d.length>0,f=0,g=null,h=!1;if(a.outputMatch?.regex)try{g=new RegExp(a.outputMatch.regex)}catch(c){h=!0;let a=`Invalid output-match regex: ${c instanceof Error?c.message:String(c)}`;au.warn(a),b.onError(a)}let i=b=>{if(!a.outputMatch)return!0;if(h)return!1;let c=(b??"").slice(0,16384);return(!a.outputMatch.contains||!!c.includes(a.outputMatch.contains))&&(!g||!!g.test(c))},j=(d,e,g)=>{if(d>=c){let a=`Flow-event chain reached the depth limit (${c}); not firing again`;au.info(a),b.onSkip(a);return}let h=Date.now();if(a.minIntervalMs&&h-f<a.minIntervalMs)return void au.debug(`Flow-event cooldown active (${a.minIntervalMs}ms); ignoring event`);f=h,b.onFire({summary:e,context:g,chainDepth:d+1})},k=(0,at.eh)().subscribe(c=>{try{if(e){if(!(0,at.ru)(c)||c.topic!==d||!i(c.payload))return;j(c.chainDepth,`Signal "${c.topic}"`,{topic:c.topic,payload:av(c.payload),emitterFlowId:c.emitterFlowId,flowName:c.flowName,runId:c.runId,conversationId:c.conversationId,firedBy:c.firedBy});return}if((0,at.ru)(c)||!(b=>{let c=a.source;return c.executionId?b.executionId===c.executionId:c.flowId?b.flowId===c.flowId:!!c.flowName&&b.flowName===c.flowName})(c)||!c.status||!(a.on??[]).includes(c.status)||!i(c.outputText))return;let b=c.flowName??c.flowId;j(c.chainDepth,`Flow "${b}" ${c.status}`,{flowId:c.flowId,flowName:c.flowName,executionId:c.executionId,runId:c.runId,conversationId:c.conversationId,status:c.status,firedBy:c.firedBy,outputText:av(c.outputText),error:c.error})}catch(c){let a=c instanceof Error?c.message:String(c);au.warn(`Flow-event handling failed: ${a}`),b.onError(a)}});return{dispose:()=>k(),nextRun:()=>null}}(b,{onFire:({summary:b,context:c,chainDepth:d})=>{this.lastTriggerErrors.delete(a.id),this.fire(a,{kind:"flow-event",summary:b,context:c,chainDepth:d}).catch(b=>aI.error(`Flow-event fire failed for ${a.id}:`,b))},onSkip:b=>{let c=new Date().toISOString();aA(a.id,{runId:(0,d.A)(),conversationId:"",firedAt:c,finishedAt:c,status:"skipped",triggerSummary:"Flow event",error:b}).catch(b=>aI.warn(`Failed to record flow-event skip for ${a.id}:`,b))},onError:b=>this.lastTriggerErrors.set(a.id,b)}));break;default:aI.warn(`Trigger type "${b.type}" is not implemented — "${a.name}" not armed`)}}async loadFile(){let a=await (0,e.YM)(f.Z.PLANNED_EXECUTIONS,aJ);return{version:1,paused:!0===a.paused,executions:Array.isArray(a.executions)?a.executions:[]}}async saveFile(a){await (0,e.VH)(f.Z.PLANNED_EXECUTIONS,a)}async isPaused(){return(await this.loadFile()).paused}async setPaused(a){let b=await this.loadFile();if(await this.saveFile({...b,paused:a}),await this.reconcile(),a)for(let a of[...this.queued.keys()])await this.cancelQueued(a,"scheduler paused",!0)}async list(){return Promise.all((await this.loadFile()).executions.map(async a=>({execution:a,status:this.getStatus(a),lastRun:await aB(a.id)})))}async get(a){return(await this.loadFile()).executions.find(b=>b.id===a)??null}async create(a){let b=this.validateInput(a);if(b)return{error:b};if(void 0!==a.id&&!/^[A-Za-z0-9._:-]{1,128}$/.test(a.id))return{error:"The id must be 1-128 characters of letters, digits, dot, underscore, colon or hyphen"};if("."===a.id||".."===a.id)return{error:'The id must be a safe identifier, not "." or ".."'};let c=new Date().toISOString(),e={...a,trigger:this.normalizeTrigger(a.trigger),id:a.id??(0,d.A)(),createdAt:c,updatedAt:c},f=await this.loadFile();return f.executions.some(a=>a.id===e.id)?{error:`A planned execution with id "${e.id}" already exists`,conflict:!0}:(await this.saveFile({...f,executions:[...f.executions,e]}),await this.reconcile(),{execution:e})}async update(a,b){let c=await this.loadFile(),d=c.executions.findIndex(b=>b.id===a);if(d<0)return{error:`No planned execution with id "${a}"`};let e={...c.executions[d],...b,...b.trigger?{trigger:this.normalizeTrigger(b.trigger)}:{},id:a,createdAt:c.executions[d].createdAt,updatedAt:new Date().toISOString()},f=this.validateInput(e);if(f)return{error:f};let g=[...c.executions];return g[d]=e,await this.saveFile({...c,executions:g}),await this.reconcile(),await this.cancelQueued(a,"execution updated",!0),{execution:e}}async delete(a){let b=await this.loadFile();return b.executions.some(b=>b.id===a)?(await this.saveFile({...b,executions:b.executions.filter(b=>b.id!==a)}),await this.reconcile(),this.lastTriggerErrors.delete(a),await this.cancelQueued(a,"execution deleted",!1),await aC(a),await aH(a),{success:!0}):{success:!1,error:`No planned execution with id "${a}"`}}normalizeTrigger(a){return a?.type!=="webhook"||a.token?a?.type!=="mcp-poll"||a.cron?a:{...a,cron:ap(a.intervalMs)}:{...a,token:(0,d.A)()}}validateInput(a){if(!a.name?.trim())return"A name is required";if(!a.flowId)return"A flow is required";if("string"!=typeof a.prompt)return"A prompt is required (may be empty)";if(void 0!==a.overlapStrategy&&!["skip","queue","parallel","error"].includes(a.overlapStrategy))return"Overlap strategy must be one of: skip, queue, parallel, error";let b=a.trigger;if(!b||"object"!=typeof b)return"A trigger is required";switch(b.type){case"schedule":{let a=(0,i.O9)(b.cron,b.timezone);return a.valid?null:`Invalid schedule: ${a.error}`}case"webhook":return null;case"file-watch":if(!b.path?.trim())return"A folder or file path to watch is required";if(!Array.isArray(b.events)||0===b.events.length)return"At least one file event is required";return null;case"mcp-poll":if(!b.serverName||!b.toolName)return"A server and tool are required";if(b.cron){let a=(0,i.O9)(b.cron,b.timezone);if(!a.valid)return`Invalid schedule: ${a.error}`}if(b.evaluate?.mode==="new-items"&&!b.evaluate.idField?.trim())return"An id field is required to detect new items";if((b.evaluate?.mode==="llm-gate"||b.evaluate?.mode==="flow-gate")&&!b.evaluate.condition?.trim())return"A condition is required for the AI to check";if(b.evaluate?.mode==="llm-gate"&&!b.evaluate.modelId)return"A model is required to check the condition";if(b.evaluate?.mode==="flow-gate"&&!b.evaluate.flowId)return"A flow is required to check the condition";return null;case"url-watch":{try{let a=new URL(b.url??"");if("http:"!==a.protocol&&"https:"!==a.protocol)return"The URL must start with http:// or https://"}catch{return"A valid URL is required"}let a=(0,i.O9)(b.cron,b.timezone);return a.valid?null:`Invalid schedule: ${a.error}`}case"flow-event":{let a=b.source;if(1!==[a?.executionId,a?.flowId,a?.flowName,a?.topic].filter(a=>"string"==typeof a&&a.trim().length>0).length)return"Choose exactly one source: a flow, a planned execution, or a signal topic";if(!("string"==typeof a?.topic&&a.topic.trim().length>0)){if(!Array.isArray(b.on)||0===b.on.length)return"Select at least one outcome to react to (completed or error)";if(b.on.some(a=>"completed"!==a&&"error"!==a))return'Outcomes must be "completed" or "error"'}if(b.outputMatch?.regex)try{new RegExp(b.outputMatch.regex)}catch(a){return`Invalid output-match regex: ${a instanceof Error?a.message:String(a)}`}if(void 0!==b.maxChainDepth&&(!Number.isInteger(b.maxChainDepth)||b.maxChainDepth<1))return"Max chain depth must be a positive whole number";if(void 0!==b.minIntervalMs&&(!Number.isFinite(b.minIntervalMs)||b.minIntervalMs<0))return"Minimum interval must be zero or more milliseconds";return null}default:return"Unknown trigger type"}}isRunning(a){let b=this.running.get(a);return void 0!==b&&b.size>0}addRunning(a,b,c){let d=this.running.get(a);d||(d=new Map,this.running.set(a,d)),d.set(b,c)}removeRunning(a,b){let c=this.running.get(a);c&&(c.delete(b),0===c.size&&this.running.delete(a))}earliestRunningSince(a){let b,c=this.running.get(a);if(c&&0!==c.size){for(let a of c.values())(void 0===b||a<b)&&(b=a);return b}}skippedRecord(a,b){let c=new Date().toISOString();return{runId:a.runId,conversationId:"",firedAt:c,finishedAt:c,status:"skipped",triggerSummary:a.payload.summary,error:b}}async cancelQueued(a,b,c){let d=this.queued.get(a);if(d&&0!==d.length){for(let e of(this.queued.delete(a),d)){let d=this.skippedRecord(e,b);if(c)try{await aA(a,d)}catch(b){aI.warn(`Failed to record cancelled queued fire for ${a}:`,b)}e.resolve(d)}aI.info(`Cancelled ${d.length} queued fire(s) for ${a}: ${b}`)}}drainQueue(a){let b=this.queued.get(a);if(!b||0===b.length||this.isRunning(a))return;let c=b.shift();0===b.length&&this.queued.delete(a),c&&(async()=>{let b=await this.get(a);if(!b||!b.enabled||this.pausedCache){let a=b?b.enabled?"scheduler paused":"execution disabled":"execution deleted";c.resolve(this.skippedRecord(c,a));return}let d=await this.fire(b,c.payload,c.runId);c.resolve(d)})().catch(b=>aI.error(`Queued fire failed for ${a}:`,b))}getStatus(a){let b=this.armed.get(a.id),c=void 0!==b||a.enabled&&"webhook"===a.trigger.type&&this.started&&!this.pausedCache,d=this.earliestRunningSince(a.id),e=c?void 0:a.enabled?this.pausedCache?"paused":void 0:"disabled";return{armed:c,notArmedReason:e,nextRun:b?.nextRun?b.nextRun():void 0,lastTriggerError:this.lastTriggerErrors.get(a.id),running:void 0!==d,runningSince:d}}async runNow(a){let b=await this.get(a);return b?{record:await this.fire(b,{kind:"manual",summary:"Manual run"},(0,d.A)(),!0)}:{error:`No planned execution with id "${a}"`}}async fire(a,b,e=(0,d.A)(),f=!1){let g,i=new Date().toISOString();if(await (0,h.C3)()){let c={runId:e,conversationId:"",firedAt:i,finishedAt:i,status:"skipped",triggerSummary:b.summary,error:"encryption locked"};return await aA(a.id,c),aI.info(`Skipped fire for "${a.name}" — encryption locked`),c}let j=a.overlapStrategy??"skip";if(!f&&this.isRunning(a.id)){if("skip"===j){let c={runId:e,conversationId:"",firedAt:i,finishedAt:i,status:"skipped",triggerSummary:b.summary,error:"Previous run still in progress"};return await aA(a.id,c),aI.info(`Skipped overlapping fire for "${a.name}"`),c}if("error"===j){let c={runId:e,conversationId:"",firedAt:i,finishedAt:i,status:"error",triggerSummary:b.summary,error:"Overlapping run rejected (overlapStrategy=error)"};return await aA(a.id,c),aI.info(`Rejected overlapping fire for "${a.name}" (overlapStrategy=error)`),c}if("queue"===j){let c=this.queued.get(a.id)?.length??0;if(c>=aK.MAX_QUEUE_DEPTH){let c={runId:e,conversationId:"",firedAt:i,finishedAt:i,status:"skipped",triggerSummary:b.summary,error:`Overlap queue full (cap ${aK.MAX_QUEUE_DEPTH}) — fire dropped`};return await aA(a.id,c),aI.warn(`Overlap queue full for "${a.name}" — dropped fire`),c}return aI.info(`Queued overlapping fire for "${a.name}" (depth ${c+1})`),new Promise(c=>{let d=this.queued.get(a.id)??[];d.push({execution:a,payload:b,runId:e,resolve:c}),this.queued.set(a.id,d)})}}this.addRunning(a.id,e,i);let k=(0,d.A)();try{aI.info(`Firing "${a.name}" (${b.kind})`);let d=await az(a.id),f=d.length>0?d[d.length-1]:null,h={executionName:a.name,trigger:b.kind,now:i,timezone:Intl.DateTimeFormat().resolvedOptions().timeZone,lastRun:f?{at:f.firedAt,status:f.status}:null,nextPlannedRun:this.getStatus(a).nextRun??null},j=a.approvalPolicy??"auto",l=a.saveConversations||"pause"===j?"conversation":"ephemeral",{runFlow:m}=await Promise.all([c.e(3304),c.e(4561),c.e(1659),c.e(2823)]).then(c.bind(c,52823)),n=await m({flowId:a.flowId,prompt:this.composePrompt(a.prompt,b,h),mode:l,conversationId:k,source:"schedule",plannedExecutionId:a.id,chainDepth:b.chainDepth??0,requireApproval:"auto"!==j,onApprovalRequired:j,debug:!1,userTurn:!0});g=await this.recordFromResult(a,n,{runId:e,conversationId:k,firedAt:i,payload:b})}catch(c){g={runId:e,conversationId:k,firedAt:i,finishedAt:new Date().toISOString(),status:"error",triggerSummary:b.summary,error:c instanceof Error?c.message:String(c)},aI.error(`Run crashed for "${a.name}":`,c)}finally{this.removeRunning(a.id,e),this.drainQueue(a.id)}return await this.get(a.id)===null?aI.info(`Dropping run record for deleted execution ${a.id}`):(await aA(a.id,g),("completed"===g.status||"error"===g.status)&&await this.publishFlowRunEvent(a,g,b)),g}async recordFromResult(a,b,c){let{runId:d,conversationId:e,firedAt:f,payload:g}=c,h=new Date().toISOString(),i="awaiting_tool_approval"===b.status,j="error"===b.status&&b.error?.details?.type==="approval_required";if(i||j){let c=(b.pendingToolCalls??[]).map(a=>({id:a.id,name:"function"===a.type?a.function.name:String(a.type)})),k={runId:d,conversationId:e,firedAt:f,finishedAt:h,status:"needs_approval",triggerSummary:g.summary,outputText:this.truncateOutput(b.outputText),usage:b.usage,error:j?b.error?.message??"Tool approval required":"Awaiting tool approval",pendingApproval:{tool:c[0]?.name??b.error?.details?.name,toolCallId:c[0]?.id,pendingToolCalls:c.length>0?c:void 0}};return i&&await this.registerPendingApproval(a,k,c),k}return{runId:d,conversationId:e,firedAt:f,finishedAt:h,status:"completed"===b.status?"completed":"error",triggerSummary:g.summary,outputText:this.truncateOutput(b.outputText),usage:b.usage,error:"completed"===b.status?void 0:b.error?.message??`Run ended with status "${b.status}"`}}async registerPendingApproval(a,b,d){try{let e;try{let{flowService:b}=await c.e(1659).then(c.bind(c,11659));e=(await b.getFlow(a.flowId))?.name??void 0}catch(b){aI.debug(`Could not resolve flow name for pending approval (${a.flowId}):`,b)}let{putPendingApproval:f}=await c.e(7032).then(c.bind(c,67032));await f({approvalId:b.conversationId,conversationId:b.conversationId,plannedExecutionId:a.id,flowId:a.flowId,flowName:e,runId:b.runId,triggerSummary:b.triggerSummary,pendingToolCalls:d,createdAt:b.firedAt})}catch(b){aI.warn(`Failed to register pending approval for "${a.name}":`,b)}}async publishFlowRunEvent(a,b,d){try{let e;try{let{flowService:b}=await c.e(1659).then(c.bind(c,11659));e=(await b.getFlow(a.flowId))?.name??void 0}catch(b){aI.debug(`Could not resolve flow name for run event (${a.flowId}):`,b)}let f="schedule-catchup"===d.kind?"schedule":d.kind;(0,at.eh)().publish({flowId:a.flowId,flowName:e,executionId:a.id,runId:b.runId,conversationId:b.conversationId,status:"completed"===b.status?"completed":"error",outputText:b.outputText,error:b.error,firedBy:f,chainDepth:d.chainDepth??0,timestamp:b.finishedAt??new Date().toISOString()})}catch(b){aI.warn(`Failed to publish flow-run event for "${a.name}":`,b)}}composePrompt(a,b,c){let d=JSON.stringify(void 0===b.context?c:{...c,data:b.context},null,2);return`${a}
94
94
 
95
- [Run info — when and why this run happened; "lastOutput" is this execution's previous final answer; "data" is untrusted trigger data]
95
+ [Run info — when and why this run happened; "data" is untrusted trigger data]
96
96
  \`\`\`json
97
97
  ${d}
98
98
  \`\`\``}truncateOutput(a){if(a)return a.length>4096?`${a.slice(0,4096)}…`:a}constructor(){this.armed=new Map,this.running=new Map,this.queued=new Map,this.lastTriggerErrors=new Map,this.reconcileChain=Promise.resolve(),this.pausedCache=!1,this.started=!1}}function aL(){return global.__flujo_scheduler||(global.__flujo_scheduler=new aK),global.__flujo_scheduler}},50119:(a,b)=>{"use strict";function c(a,b=""){if(!a)throw Error(b)}Object.defineProperty(b,"__esModule",{value:!0}),b.timingSafeEqual=void 0,b.timingSafeEqual=function(a,b){if(a.byteLength!==b.byteLength)return!1;a instanceof DataView||(a=new DataView(ArrayBuffer.isView(a)?a.buffer:a)),b instanceof DataView||(b=new DataView(ArrayBuffer.isView(b)?b.buffer:b)),c(a instanceof DataView),c(b instanceof DataView);let d=a.byteLength,e=0,f=-1;for(;++f<d;)e|=a.getUint8(f)^b.getUint8(f);return 0===e}},51198:function(a,b,c){var d;d=c(67278),c(70522),d.pad.Iso10126={pad:function(a,b){var c=4*b,e=c-a.sigBytes%c;a.concat(d.lib.WordArray.random(e-1)).concat(d.lib.WordArray.create([e<<24],1))},unpad:function(a){var b=255&a.words[a.sigBytes-1>>>2];a.sigBytes-=b}},a.exports=d.pad.Iso10126},51442:(a,b,c)=>{"use strict";function d(){let a,b;return{promise:new Promise((c,d)=>{a=c,b=d}),resolve:a,reject:b}}c.d(b,{n:()=>d})},51459:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{METADATA_BOUNDARY_NAME:function(){return c},OUTLET_BOUNDARY_NAME:function(){return e},ROOT_LAYOUT_BOUNDARY_NAME:function(){return f},VIEWPORT_BOUNDARY_NAME:function(){return d}});let c="__next_metadata_boundary__",d="__next_viewport_boundary__",e="__next_outlet_boundary__",f="__next_root_layout_boundary__"},51508:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.buildPayloadForJwsSign=e,b.getJwsSign=function(a){let b=e(a);return(0,d.sign)({header:{alg:"RS256"},payload:b,secret:a.key})};let d=c(36412);function e(a){let b=Math.floor(new Date().getTime()/1e3);return{iss:a.iss,scope:a.scope,aud:"https://oauth2.googleapis.com/token",exp:b+3600,iat:b,sub:a.sub,...a.additionalClaims}}},52097:(a,b,c)=>{a.exports=function(a){function b(a){let c,e,f,g=null;function h(...a){if(!h.enabled)return;let d=Number(new Date);h.diff=d-(c||d),h.prev=c,h.curr=d,c=d,a[0]=b.coerce(a[0]),"string"!=typeof a[0]&&a.unshift("%O");let e=0;a[0]=a[0].replace(/%([a-zA-Z%])/g,(c,d)=>{if("%%"===c)return"%";e++;let f=b.formatters[d];if("function"==typeof f){let b=a[e];c=f.call(h,b),a.splice(e,1),e--}return c}),b.formatArgs.call(h,a),(h.log||b.log).apply(h,a)}return h.namespace=a,h.useColors=b.useColors(),h.color=b.selectColor(a),h.extend=d,h.destroy=b.destroy,Object.defineProperty(h,"enabled",{enumerable:!0,configurable:!1,get:()=>null!==g?g:(e!==b.namespaces&&(e=b.namespaces,f=b.enabled(a)),f),set:a=>{g=a}}),"function"==typeof b.init&&b.init(h),h}function d(a,c){let d=b(this.namespace+(void 0===c?":":c)+a);return d.log=this.log,d}function e(a,b){let c=0,d=0,e=-1,f=0;for(;c<a.length;)if(d<b.length&&(b[d]===a[c]||"*"===b[d]))"*"===b[d]?(e=d,f=c):c++,d++;else{if(-1===e)return!1;d=e+1,c=++f}for(;d<b.length&&"*"===b[d];)d++;return d===b.length}return b.debug=b,b.default=b,b.coerce=function(a){return a instanceof Error?a.stack||a.message:a},b.disable=function(){let a=[...b.names,...b.skips.map(a=>"-"+a)].join(",");return b.enable(""),a},b.enable=function(a){for(let c of(b.save(a),b.namespaces=a,b.names=[],b.skips=[],("string"==typeof a?a:"").trim().replace(/\s+/g,",").split(",").filter(Boolean)))"-"===c[0]?b.skips.push(c.slice(1)):b.names.push(c)},b.enabled=function(a){for(let c of b.skips)if(e(a,c))return!1;for(let c of b.names)if(e(a,c))return!0;return!1},b.humanize=c(79490),b.destroy=function(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")},Object.keys(a).forEach(c=>{b[c]=a[c]}),b.names=[],b.skips=[],b.formatters={},b.selectColor=function(a){let c=0;for(let b=0;b<a.length;b++)c=(c<<5)-c+a.charCodeAt(b)|0;return b.colors[Math.abs(c)%b.colors.length]},b.enable(b.load()),b}},52117:function(a,b,c){var d;d=c(67278),function(a){for(var b=d.lib,c=b.WordArray,e=b.Hasher,f=d.algo,g=[],h=0;h<64;h++)g[h]=0x100000000*a.abs(a.sin(h+1))|0;var i=f.MD5=e.extend({_doReset:function(){this._hash=new c.init([0x67452301,0xefcdab89,0x98badcfe,0x10325476])},_doProcessBlock:function(a,b){for(var c=0;c<16;c++){var d=b+c,e=a[d];a[d]=(e<<8|e>>>24)&0xff00ff|(e<<24|e>>>8)&0xff00ff00}var f=this._hash.words,h=a[b+0],i=a[b+1],n=a[b+2],o=a[b+3],p=a[b+4],q=a[b+5],r=a[b+6],s=a[b+7],t=a[b+8],u=a[b+9],v=a[b+10],w=a[b+11],x=a[b+12],y=a[b+13],z=a[b+14],A=a[b+15],B=f[0],C=f[1],D=f[2],E=f[3];B=j(B,C,D,E,h,7,g[0]),E=j(E,B,C,D,i,12,g[1]),D=j(D,E,B,C,n,17,g[2]),C=j(C,D,E,B,o,22,g[3]),B=j(B,C,D,E,p,7,g[4]),E=j(E,B,C,D,q,12,g[5]),D=j(D,E,B,C,r,17,g[6]),C=j(C,D,E,B,s,22,g[7]),B=j(B,C,D,E,t,7,g[8]),E=j(E,B,C,D,u,12,g[9]),D=j(D,E,B,C,v,17,g[10]),C=j(C,D,E,B,w,22,g[11]),B=j(B,C,D,E,x,7,g[12]),E=j(E,B,C,D,y,12,g[13]),D=j(D,E,B,C,z,17,g[14]),C=j(C,D,E,B,A,22,g[15]),B=k(B,C,D,E,i,5,g[16]),E=k(E,B,C,D,r,9,g[17]),D=k(D,E,B,C,w,14,g[18]),C=k(C,D,E,B,h,20,g[19]),B=k(B,C,D,E,q,5,g[20]),E=k(E,B,C,D,v,9,g[21]),D=k(D,E,B,C,A,14,g[22]),C=k(C,D,E,B,p,20,g[23]),B=k(B,C,D,E,u,5,g[24]),E=k(E,B,C,D,z,9,g[25]),D=k(D,E,B,C,o,14,g[26]),C=k(C,D,E,B,t,20,g[27]),B=k(B,C,D,E,y,5,g[28]),E=k(E,B,C,D,n,9,g[29]),D=k(D,E,B,C,s,14,g[30]),C=k(C,D,E,B,x,20,g[31]),B=l(B,C,D,E,q,4,g[32]),E=l(E,B,C,D,t,11,g[33]),D=l(D,E,B,C,w,16,g[34]),C=l(C,D,E,B,z,23,g[35]),B=l(B,C,D,E,i,4,g[36]),E=l(E,B,C,D,p,11,g[37]),D=l(D,E,B,C,s,16,g[38]),C=l(C,D,E,B,v,23,g[39]),B=l(B,C,D,E,y,4,g[40]),E=l(E,B,C,D,h,11,g[41]),D=l(D,E,B,C,o,16,g[42]),C=l(C,D,E,B,r,23,g[43]),B=l(B,C,D,E,u,4,g[44]),E=l(E,B,C,D,x,11,g[45]),D=l(D,E,B,C,A,16,g[46]),C=l(C,D,E,B,n,23,g[47]),B=m(B,C,D,E,h,6,g[48]),E=m(E,B,C,D,s,10,g[49]),D=m(D,E,B,C,z,15,g[50]),C=m(C,D,E,B,q,21,g[51]),B=m(B,C,D,E,x,6,g[52]),E=m(E,B,C,D,o,10,g[53]),D=m(D,E,B,C,v,15,g[54]),C=m(C,D,E,B,i,21,g[55]),B=m(B,C,D,E,t,6,g[56]),E=m(E,B,C,D,A,10,g[57]),D=m(D,E,B,C,r,15,g[58]),C=m(C,D,E,B,y,21,g[59]),B=m(B,C,D,E,p,6,g[60]),E=m(E,B,C,D,w,10,g[61]),D=m(D,E,B,C,n,15,g[62]),C=m(C,D,E,B,u,21,g[63]),f[0]=f[0]+B|0,f[1]=f[1]+C|0,f[2]=f[2]+D|0,f[3]=f[3]+E|0},_doFinalize:function(){var b=this._data,c=b.words,d=8*this._nDataBytes,e=8*b.sigBytes;c[e>>>5]|=128<<24-e%32;var f=a.floor(d/0x100000000);c[(e+64>>>9<<4)+15]=(f<<8|f>>>24)&0xff00ff|(f<<24|f>>>8)&0xff00ff00,c[(e+64>>>9<<4)+14]=(d<<8|d>>>24)&0xff00ff|(d<<24|d>>>8)&0xff00ff00,b.sigBytes=(c.length+1)*4,this._process();for(var g=this._hash,h=g.words,i=0;i<4;i++){var j=h[i];h[i]=(j<<8|j>>>24)&0xff00ff|(j<<24|j>>>8)&0xff00ff00}return g},clone:function(){var a=e.clone.call(this);return a._hash=this._hash.clone(),a}});function j(a,b,c,d,e,f,g){var h=a+(b&c|~b&d)+e+g;return(h<<f|h>>>32-f)+b}function k(a,b,c,d,e,f,g){var h=a+(b&d|c&~d)+e+g;return(h<<f|h>>>32-f)+b}function l(a,b,c,d,e,f,g){var h=a+(b^c^d)+e+g;return(h<<f|h>>>32-f)+b}function m(a,b,c,d,e,f,g){var h=a+(c^(b|~d))+e+g;return(h<<f|h>>>32-f)+b}d.MD5=e._createHelper(i),d.HmacMD5=e._createHmacHelper(i)}(Math),a.exports=d.MD5},52127:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});let d=c(31849),e=c(83593);b.default={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:{message:({params:{min:a,max:b}})=>void 0===b?(0,d.str)`must contain at least ${a} valid item(s)`:(0,d.str)`must contain at least ${a} and no more than ${b} valid item(s)`,params:({params:{min:a,max:b}})=>void 0===b?(0,d._)`{minContains: ${a}}`:(0,d._)`{minContains: ${a}, maxContains: ${b}}`},code(a){let b,c,{gen:f,schema:g,parentSchema:h,data:i,it:j}=a,{minContains:k,maxContains:l}=h;j.opts.next?(b=void 0===k?1:k,c=l):b=1;let m=f.const("len",(0,d._)`${i}.length`);if(a.setParams({min:b,max:c}),void 0===c&&0===b)return void(0,e.checkStrictMode)(j,'"minContains" == 0 without "maxContains": "contains" keyword ignored');if(void 0!==c&&b>c){(0,e.checkStrictMode)(j,'"minContains" > "maxContains" is always invalid'),a.fail();return}if((0,e.alwaysValidSchema)(j,g)){let e=(0,d._)`${m} >= ${b}`;void 0!==c&&(e=(0,d._)`${e} && ${m} <= ${c}`),a.pass(e);return}j.items=!0;let n=f.name("valid");function o(){let a=f.name("_valid"),e=f.let("count",0);p(a,()=>f.if(a,()=>{var a;return a=e,void(f.code((0,d._)`${a}++`),void 0===c?f.if((0,d._)`${a} >= ${b}`,()=>f.assign(n,!0).break()):(f.if((0,d._)`${a} > ${c}`,()=>f.assign(n,!1).break()),1===b?f.assign(n,!0):f.if((0,d._)`${a} >= ${b}`,()=>f.assign(n,!0))))}))}function p(b,c){f.forRange("i",0,m,d=>{a.subschema({keyword:"contains",dataProp:d,dataPropType:e.Type.Num,compositeRule:!0},b),c()})}void 0===c&&1===b?p(n,()=>f.if(n,()=>f.break())):0===b?(f.let(n,!0),void 0!==c&&f.if((0,d._)`${i}.length > 0`,o)):(f.let(n,!1),o()),a.result(n,()=>a.reset())}}},52229:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"InvariantError",{enumerable:!0,get:function(){return c}});class c extends Error{constructor(a,b){super("Invariant: "+(a.endsWith(".")?a:a+".")+" This is a bug in Next.js.",b),this.name="InvariantError"}}},52369:(a,b,c)=>{"use strict";c.d(b,{f:()=>e});var d=c(80693);let e=a=>a instanceof d.Z},52668:function(a,b,c){"use strict";var d=this&&this.__createBinding||(Object.create?function(a,b,c,d){void 0===d&&(d=c);var e=Object.getOwnPropertyDescriptor(b,c);(!e||("get"in e?!b.__esModule:e.writable||e.configurable))&&(e={enumerable:!0,get:function(){return b[c]}}),Object.defineProperty(a,d,e)}:function(a,b,c,d){void 0===d&&(d=c),a[d]=b[c]}),e=this&&this.__exportStar||function(a,b){for(var c in a)"default"===c||Object.prototype.hasOwnProperty.call(b,c)||d(b,a,c)};Object.defineProperty(b,"__esModule",{value:!0}),b.GoogleAuth=b.auth=b.GDCH_SERVICE_ACCOUNT_TYPE=b.GdchClient=b.PassThroughClient=b.ExternalAccountAuthorizedUserClient=b.EXTERNAL_ACCOUNT_AUTHORIZED_USER_TYPE=b.ExecutableError=b.PluggableAuthClient=b.DownscopedClient=b.BaseExternalAccountClient=b.ExternalAccountClient=b.IdentityPoolClient=b.AwsRequestSigner=b.AwsClient=b.UserRefreshClient=b.LoginTicket=b.ClientAuthentication=b.OAuth2Client=b.CodeChallengeMethod=b.Impersonated=b.JWT=b.JWTAccess=b.IdTokenClient=b.IAMAuth=b.GCPEnv=b.Compute=b.DEFAULT_UNIVERSE=b.AuthClient=b.gaxios=b.gcpMetadata=void 0;let f=c(96698);Object.defineProperty(b,"GoogleAuth",{enumerable:!0,get:function(){return f.GoogleAuth}}),b.gcpMetadata=c(70916),b.gaxios=c(79792);var g=c(49502);Object.defineProperty(b,"AuthClient",{enumerable:!0,get:function(){return g.AuthClient}}),Object.defineProperty(b,"DEFAULT_UNIVERSE",{enumerable:!0,get:function(){return g.DEFAULT_UNIVERSE}});var h=c(745);Object.defineProperty(b,"Compute",{enumerable:!0,get:function(){return h.Compute}});var i=c(25203);Object.defineProperty(b,"GCPEnv",{enumerable:!0,get:function(){return i.GCPEnv}});var j=c(22908);Object.defineProperty(b,"IAMAuth",{enumerable:!0,get:function(){return j.IAMAuth}});var k=c(58500);Object.defineProperty(b,"IdTokenClient",{enumerable:!0,get:function(){return k.IdTokenClient}});var l=c(58838);Object.defineProperty(b,"JWTAccess",{enumerable:!0,get:function(){return l.JWTAccess}});var m=c(74829);Object.defineProperty(b,"JWT",{enumerable:!0,get:function(){return m.JWT}});var n=c(83e3);Object.defineProperty(b,"Impersonated",{enumerable:!0,get:function(){return n.Impersonated}});var o=c(49633);Object.defineProperty(b,"CodeChallengeMethod",{enumerable:!0,get:function(){return o.CodeChallengeMethod}}),Object.defineProperty(b,"OAuth2Client",{enumerable:!0,get:function(){return o.OAuth2Client}}),Object.defineProperty(b,"ClientAuthentication",{enumerable:!0,get:function(){return o.ClientAuthentication}});var p=c(80876);Object.defineProperty(b,"LoginTicket",{enumerable:!0,get:function(){return p.LoginTicket}});var q=c(31995);Object.defineProperty(b,"UserRefreshClient",{enumerable:!0,get:function(){return q.UserRefreshClient}});var r=c(73925);Object.defineProperty(b,"AwsClient",{enumerable:!0,get:function(){return r.AwsClient}});var s=c(19553);Object.defineProperty(b,"AwsRequestSigner",{enumerable:!0,get:function(){return s.AwsRequestSigner}});var t=c(62888);Object.defineProperty(b,"IdentityPoolClient",{enumerable:!0,get:function(){return t.IdentityPoolClient}});var u=c(93209);Object.defineProperty(b,"ExternalAccountClient",{enumerable:!0,get:function(){return u.ExternalAccountClient}});var v=c(35294);Object.defineProperty(b,"BaseExternalAccountClient",{enumerable:!0,get:function(){return v.BaseExternalAccountClient}});var w=c(85868);Object.defineProperty(b,"DownscopedClient",{enumerable:!0,get:function(){return w.DownscopedClient}});var x=c(27305);Object.defineProperty(b,"PluggableAuthClient",{enumerable:!0,get:function(){return x.PluggableAuthClient}}),Object.defineProperty(b,"ExecutableError",{enumerable:!0,get:function(){return x.ExecutableError}});var y=c(29694);Object.defineProperty(b,"EXTERNAL_ACCOUNT_AUTHORIZED_USER_TYPE",{enumerable:!0,get:function(){return y.EXTERNAL_ACCOUNT_AUTHORIZED_USER_TYPE}}),Object.defineProperty(b,"ExternalAccountAuthorizedUserClient",{enumerable:!0,get:function(){return y.ExternalAccountAuthorizedUserClient}});var z=c(16465);Object.defineProperty(b,"PassThroughClient",{enumerable:!0,get:function(){return z.PassThroughClient}});var A=c(24420);Object.defineProperty(b,"GdchClient",{enumerable:!0,get:function(){return A.GdchClient}}),Object.defineProperty(b,"GDCH_SERVICE_ACCOUNT_TYPE",{enumerable:!0,get:function(){return A.GDCH_SERVICE_ACCOUNT_TYPE}}),e(c(73919),b),b.auth=new f.GoogleAuth},52844:function(a,b,c){var d,e,f,g,h,i,j,k;d=c(67278),c(28394),c(64570),f=(e=d.lib).Base,g=e.WordArray,i=(h=d.algo).SHA256,j=h.HMAC,k=h.PBKDF2=f.extend({cfg:f.extend({keySize:4,hasher:i,iterations:25e4}),init:function(a){this.cfg=this.cfg.extend(a)},compute:function(a,b){for(var c=this.cfg,d=j.create(c.hasher,a),e=g.create(),f=g.create([1]),h=e.words,i=f.words,k=c.keySize,l=c.iterations;h.length<k;){var m=d.update(b).finalize(f);d.reset();for(var n=m.words,o=n.length,p=m,q=1;q<l;q++){p=d.finalize(p),d.reset();for(var r=p.words,s=0;s<o;s++)n[s]^=r[s]}e.concat(m),i[0]++}return e.sigBytes=4*k,e}}),d.PBKDF2=function(a,b,c){return k.create(c).compute(a,b)},a.exports=d.PBKDF2},53707:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.getSchemaRefs=b.resolveUrl=b.normalizeId=b._getFullPath=b.getFullPath=b.inlineRef=void 0;let d=c(83593),e=c(22666),f=c(34008),g=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);b.inlineRef=function(a,b=!0){return"boolean"==typeof a||(!0===b?!function a(b){for(let c in b){if(h.has(c))return!0;let d=b[c];if(Array.isArray(d)&&d.some(a)||"object"==typeof d&&a(d))return!0}return!1}(a):!!b&&function a(b){let c=0;for(let e in b)if("$ref"===e||(c++,!g.has(e)&&("object"==typeof b[e]&&(0,d.eachItem)(b[e],b=>c+=a(b)),c===1/0)))return 1/0;return c}(a)<=b)};let h=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function i(a,b="",c){!1!==c&&(b=l(b));let d=a.parse(b);return j(a,d)}function j(a,b){return a.serialize(b).split("#")[0]+"#"}b.getFullPath=i,b._getFullPath=j;let k=/#\/?$/;function l(a){return a?a.replace(k,""):""}b.normalizeId=l,b.resolveUrl=function(a,b,c){return c=l(c),a.resolve(b,c)};let m=/^[a-z_][-a-z0-9._]*$/i;b.getSchemaRefs=function(a,b){if("boolean"==typeof a)return{};let{schemaId:c,uriResolver:d}=this.opts,g=l(a[c]||b),h={"":g},j=i(d,g,!1),k={},n=new Set;return f(a,{allKeys:!0},(a,b,d,e)=>{if(void 0===e)return;let f=j+b,g=h[e];function i(b){let c=this.opts.uriResolver.resolve;if(b=l(g?c(g,b):b),n.has(b))throw p(b);n.add(b);let d=this.refs[b];return"string"==typeof d&&(d=this.refs[d]),"object"==typeof d?o(a,d.schema,b):b!==l(f)&&("#"===b[0]?(o(a,k[b],b),k[b]=a):this.refs[b]=f),b}function q(a){if("string"==typeof a){if(!m.test(a))throw Error(`invalid anchor "${a}"`);i.call(this,`#${a}`)}}"string"==typeof a[c]&&(g=i.call(this,a[c])),q.call(this,a.$anchor),q.call(this,a.$dynamicAnchor),h[b]=g}),k;function o(a,b,c){if(void 0!==b&&!e(a,b))throw p(c)}function p(a){return Error(`reference "${a}" resolves to more than one schema`)}}},53859:(a,b,c)=>{"use strict";let d=c(29021),e=c(37060);a.exports=function(a){let b,c=Buffer.alloc(150);try{b=d.openSync(a,"r"),d.readSync(b,c,0,150,0),d.closeSync(b)}catch(a){}return e(c.toString())}},54494:(a,b,c)=>{"use strict";c.d(b,{rS:()=>ae,EB:()=>L,bz:()=>am,YO:()=>ar,zM:()=>ai,Ie:()=>aX,gM:()=>ay,k5:()=>aE,E$:()=>aA,eu:()=>aG,_H:()=>au,ch:()=>ak,ai:()=>af,Ik:()=>at,lq:()=>aK,vk:()=>aY,g1:()=>aC,Yj:()=>K,KC:()=>aw,L5:()=>ao,OZ:()=>Q});var d=c(86709),e=c(3614),f=c(73580),g=c(63429),h=c(72748);function i(a){let b=a?.target??"draft-2020-12";return"draft-4"===b&&(b="draft-04"),"draft-7"===b&&(b="draft-07"),{processors:a.processors??{},metadataRegistry:a?.metadata??g.fd,target:b,unrepresentable:a?.unrepresentable??"throw",override:a?.override??(()=>{}),io:a?.io??"output",counter:0,seen:new Map,cycles:a?.cycles??"ref",reused:a?.reused??"inline",external:a?.external??void 0}}function j(a,b,c={path:[],schemaPath:[]}){var d;let e=a._zod.def,f=b.seen.get(a);if(f)return f.count++,c.schemaPath.includes(a)&&(f.cycle=c.path),f.schema;let g={schema:{},count:1,cycle:void 0,path:c.path};b.seen.set(a,g);let h=a._zod.toJSONSchema?.();if(h)g.schema=h;else{let d={...c,schemaPath:[...c.schemaPath,a],path:c.path};if(a._zod.processJSONSchema)a._zod.processJSONSchema(b,g.schema,d);else{let c=g.schema,f=b.processors[e.type];if(!f)throw Error(`[toJSONSchema]: Non-representable type encountered: ${e.type}`);f(a,b,c,d)}let f=a._zod.parent;f&&(g.ref||(g.ref=f),j(f,b,d),b.seen.get(f).isParent=!0)}let i=b.metadataRegistry.get(a);return i&&Object.assign(g.schema,i),"input"===b.io&&function a(b,c){let d=c??{seen:new Set};if(d.seen.has(b))return!1;d.seen.add(b);let e=b._zod.def;if("transform"===e.type)return!0;if("array"===e.type)return a(e.element,d);if("set"===e.type)return a(e.valueType,d);if("lazy"===e.type)return a(e.getter(),d);if("promise"===e.type||"optional"===e.type||"nonoptional"===e.type||"nullable"===e.type||"readonly"===e.type||"default"===e.type||"prefault"===e.type)return a(e.innerType,d);if("intersection"===e.type)return a(e.left,d)||a(e.right,d);if("record"===e.type||"map"===e.type)return a(e.keyType,d)||a(e.valueType,d);if("pipe"===e.type)return!!b._zod.traits.has("$ZodCodec")||a(e.in,d)||a(e.out,d);if("object"===e.type){for(let b in e.shape)if(a(e.shape[b],d))return!0;return!1}if("union"===e.type){for(let b of e.options)if(a(b,d))return!0;return!1}if("tuple"===e.type){for(let b of e.items)if(a(b,d))return!0;if(e.rest&&a(e.rest,d))return!0}return!1}(a)&&(delete g.schema.examples,delete g.schema.default),"input"===b.io&&"_prefault"in g.schema&&((d=g.schema).default??(d.default=g.schema._prefault)),delete g.schema._prefault,b.seen.get(a).schema}function k(a,b){let c=a.seen.get(b);if(!c)throw Error("Unprocessed schema. This is a bug in Zod.");let d=new Map;for(let b of a.seen.entries()){let c=a.metadataRegistry.get(b[0])?.id;if(c){let a=d.get(c);if(a&&a!==b[0])throw Error(`Duplicate schema id "${c}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);d.set(c,b[0])}}let e=b=>{if(b[1].schema.$ref)return;let d=b[1],{ref:e,defId:f}=(b=>{let d="draft-2020-12"===a.target?"$defs":"definitions";if(a.external){let c=a.external.registry.get(b[0])?.id,e=a.external.uri??(a=>a);if(c)return{ref:e(c)};let f=b[1].defId??b[1].schema.id??`schema${a.counter++}`;return b[1].defId=f,{defId:f,ref:`${e("__shared")}#/${d}/${f}`}}if(b[1]===c)return{ref:"#"};let e=`#/${d}/`,f=b[1].schema.id??`__schema${a.counter++}`;return{defId:f,ref:e+f}})(b);d.def={...d.schema},f&&(d.defId=f);let g=d.schema;for(let a in g)delete g[a];g.$ref=e};if("throw"===a.cycles)for(let b of a.seen.entries()){let a=b[1];if(a.cycle)throw Error(`Cycle detected: #/${a.cycle?.join("/")}/<root>
@@ -131,14 +131,14 @@ Any promises made to the user
131
131
  Be concise but complete—err on the side of including information that would prevent duplicate work or repeated mistakes. Write in a way that enables immediate resumption of the task.
132
132
  Wrap your summary in <summary></summary> tags.`;class c0{constructor(a,b,c){au.add(this),this.client=a,av.set(this,!1),aw.set(this,!1),ax.set(this,void 0),ay.set(this,void 0),az.set(this,void 0),aA.set(this,void 0),aB.set(this,void 0),aC.set(this,0),(0,a5.G)(this,ax,{params:{...b,messages:structuredClone(b.messages)}},"f");let d=["BetaToolRunner",...cn(b.tools,b.messages)].join(", ");(0,a5.G)(this,ay,{...c,headers:cf([{"x-stainless-helper":d},c?.headers])},"f"),(0,a5.G)(this,aB,(0,c$.n)(),"f"),b.compactionControl?.enabled&&console.warn('Anthropic: The `compactionControl` parameter is deprecated and will be removed in a future version. Use server-side compaction instead by passing `edits: [{ type: "compact_20260112" }]` in the params passed to `toolRunner()`. See https://platform.claude.com/docs/en/build-with-claude/compaction')}async *[(av=new WeakMap,aw=new WeakMap,ax=new WeakMap,ay=new WeakMap,az=new WeakMap,aA=new WeakMap,aB=new WeakMap,aC=new WeakMap,au=new WeakSet,aD=async function(){let a=(0,a5.g)(this,ax,"f").params.compactionControl;if(!a||!a.enabled)return!1;let b=0;if(void 0!==(0,a5.g)(this,az,"f"))try{let a=await (0,a5.g)(this,az,"f");b=a.usage.input_tokens+(a.usage.cache_creation_input_tokens??0)+(a.usage.cache_read_input_tokens??0)+a.usage.output_tokens}catch{return!1}if(b<(a.contextTokenThreshold??1e5))return!1;let c=a.model??(0,a5.g)(this,ax,"f").params.model,d=a.summaryPrompt??c_,e=(0,a5.g)(this,ax,"f").params.messages;if("assistant"===e[e.length-1].role){let a=e[e.length-1];if(Array.isArray(a.content)){let b=a.content.filter(a=>"tool_use"!==a.type);0===b.length?e.pop():a.content=b}}let f=await this.client.beta.messages.create({model:c,messages:[...e,{role:"user",content:[{type:"text",text:d}]}],max_tokens:(0,a5.g)(this,ax,"f").params.max_tokens},{signal:(0,a5.g)(this,ay,"f").signal,headers:cf([(0,a5.g)(this,ay,"f").headers,{"x-stainless-helper":"compaction"}])});if(f.content[0]?.type!=="text")throw new bk.pJ("Expected text response for compaction");return(0,a5.g)(this,ax,"f").params.messages=[{role:"user",content:f.content}],!0},Symbol.asyncIterator)](){var a;if((0,a5.g)(this,av,"f"))throw new bk.pJ("Cannot iterate over a consumed stream");(0,a5.G)(this,av,!0,"f"),(0,a5.G)(this,aw,!0,"f"),(0,a5.G)(this,aA,void 0,"f");try{for(;;){let b;try{if((0,a5.g)(this,ax,"f").params.max_iterations&&(0,a5.g)(this,aC,"f")>=(0,a5.g)(this,ax,"f").params.max_iterations)break;(0,a5.G)(this,aw,!1,"f"),(0,a5.G)(this,aA,void 0,"f"),(0,a5.G)(this,aC,(a=(0,a5.g)(this,aC,"f"),++a),"f"),(0,a5.G)(this,az,void 0,"f");let{max_iterations:c,compactionControl:d,...e}=(0,a5.g)(this,ax,"f").params;if(e.stream?(b=this.client.beta.messages.stream({...e},(0,a5.g)(this,ay,"f")),(0,a5.G)(this,az,b.finalMessage(),"f"),(0,a5.g)(this,az,"f").catch(()=>{}),yield b):((0,a5.G)(this,az,this.client.beta.messages.create({...e,stream:!1},(0,a5.g)(this,ay,"f")),"f"),yield(0,a5.g)(this,az,"f")),!await (0,a5.g)(this,au,"m",aD).call(this)){if(!(0,a5.g)(this,aw,"f")){let a=await (0,a5.g)(this,az,"f");if((0,a5.g)(this,ax,"f").params.messages.push({role:a.role,content:a.content}),"refusal"===a.stop_reason)break}let a=await (0,a5.g)(this,au,"m",aE).call(this,(0,a5.g)(this,ax,"f").params.messages.at(-1));if(a)(0,a5.g)(this,ax,"f").params.messages.push(a);else if(!(0,a5.g)(this,aw,"f"))break}}finally{b&&b.abort()}}if(!(0,a5.g)(this,az,"f"))throw new bk.pJ("ToolRunner concluded without a message from the server");(0,a5.g)(this,aB,"f").resolve(await (0,a5.g)(this,az,"f"))}catch(a){throw(0,a5.G)(this,av,!1,"f"),(0,a5.g)(this,aB,"f").promise.catch(()=>{}),(0,a5.g)(this,aB,"f").reject(a),(0,a5.G)(this,aB,(0,c$.n)(),"f"),a}}setMessagesParams(a){"function"==typeof a?(0,a5.g)(this,ax,"f").params=a((0,a5.g)(this,ax,"f").params):(0,a5.g)(this,ax,"f").params=a,(0,a5.G)(this,aw,!0,"f"),(0,a5.G)(this,aA,void 0,"f")}setRequestOptions(a){"function"==typeof a?(0,a5.G)(this,ay,a((0,a5.g)(this,ay,"f")),"f"):(0,a5.G)(this,ay,{...(0,a5.g)(this,ay,"f"),...a},"f")}async generateToolResponse(a=(0,a5.g)(this,ay,"f").signal){let b=await (0,a5.g)(this,az,"f")??this.params.messages.at(-1);return b?(0,a5.g)(this,au,"m",aE).call(this,b,a):null}done(){return(0,a5.g)(this,aB,"f").promise}async runUntilDone(){if(!(0,a5.g)(this,av,"f"))for await(let a of this);return this.done()}get params(){return(0,a5.g)(this,ax,"f").params}pushMessages(...a){this.setMessagesParams(b=>({...b,messages:[...b.messages,...a]}))}then(a,b){return this.runUntilDone().then(a,b)}}async function c1(a,b=a.messages.at(-1),c){if(!b||"assistant"!==b.role||!b.content||"string"==typeof b.content)return null;let d=b.content.filter(a=>"tool_use"===a.type);return 0===d.length?null:{role:"user",content:await Promise.all(d.map(async b=>{let d=a.tools.find(a=>("name"in a?a.name:a.mcp_server_name)===b.name);if(!d||!("run"in d))return{type:"tool_result",tool_use_id:b.id,content:`Error: Tool '${b.name}' not found`,is_error:!0};try{let a=b.input;"parse"in d&&d.parse&&(a=d.parse(a));let e=await d.run(a,{toolUse:b,toolUseBlock:b,signal:c?.signal});return{type:"tool_result",tool_use_id:b.id,content:e}}catch(a){return{type:"tool_result",tool_use_id:b.id,content:a instanceof cC.v?a.content:`Error: ${a instanceof Error?a.message:String(a)}`,is_error:!0}}}))}}aE=async function(a,b=(0,a5.g)(this,ay,"f").signal){return void 0!==(0,a5.g)(this,aA,"f")||(0,a5.G)(this,aA,c1((0,a5.g)(this,ax,"f").params,a,{...(0,a5.g)(this,ay,"f"),signal:b}),"f"),(0,a5.g)(this,aA,"f")};let c2={"claude-1.3":"November 6th, 2024","claude-1.3-100k":"November 6th, 2024","claude-instant-1.1":"November 6th, 2024","claude-instant-1.1-100k":"November 6th, 2024","claude-instant-1.2":"November 6th, 2024","claude-3-sonnet-20240229":"July 21st, 2025","claude-3-opus-20240229":"January 5th, 2026","claude-2.1":"July 21st, 2025","claude-2.0":"July 21st, 2025","claude-3-7-sonnet-latest":"February 19th, 2026","claude-3-7-sonnet-20250219":"February 19th, 2026","claude-3-5-haiku-latest":"February 19th, 2026","claude-3-5-haiku-20241022":"February 19th, 2026","claude-opus-4-0":"June 15th, 2026","claude-opus-4-20250514":"June 15th, 2026","claude-sonnet-4-0":"June 15th, 2026","claude-sonnet-4-20250514":"June 15th, 2026","claude-opus-4-1":"August 5th, 2026","claude-opus-4-1-20250805":"August 5th, 2026","claude-mythos-preview":"June 30th, 2026"},c3=["claude-mythos-preview","claude-opus-4-6"];class c4 extends cd{constructor(){super(...arguments),this.batches=new cQ(this._client)}create(a,b){let c=c5(a),{betas:d,...e}=c;e.model in c2&&console.warn(`The model '${e.model}' is deprecated and will reach end-of-life on ${c2[e.model]}
133
133
  Please migrate to a newer model. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.`),c3.includes(e.model)&&e.thinking&&"enabled"===e.thinking.type&&console.warn(`Using Claude with ${e.model} and 'thinking.type=enabled' is deprecated. Use 'thinking.type=adaptive' instead which results in better model performance in our testing: https://platform.claude.com/docs/en/build-with-claude/adaptive-thinking`);let f=this._client._options.timeout;if(!e.stream&&null==f){let a=cR[e.model]??void 0;f=this._client.calculateNonstreamingTimeout(e.max_tokens,a)}let g=co(e.tools,e.messages);return this._client.post("/v1/messages?beta=true",{body:e,timeout:f??6e5,...b,headers:cf([{...d?.toString()!=null?{"anthropic-beta":d?.toString()}:void 0},g,b?.headers]),stream:c.stream??!1})}parse(a,b){return b={...b,headers:cf([{"anthropic-beta":[...a.betas??[],"structured-outputs-2025-12-15"].toString()},b?.headers])},this.create(a,b).then(b=>cU(b,a,{logger:this._client.logger??console}))}stream(a,b){return cZ.createMessage(this,a,b)}countTokens(a,b){let{betas:c,...d}=c5(a);return this._client.post("/v1/messages/count_tokens?beta=true",{body:d,...b,headers:cf([{"anthropic-beta":[...c??[],"token-counting-2024-11-01"].toString()},b?.headers])})}toolRunner(a,b){return new c0(this._client,a,b)}}function c5(a){if(!a.output_format)return a;if(a.output_config?.format)throw new bk.pJ("Both output_format and output_config.format were provided. Please use only output_config.format (output_format is deprecated).");let{output_format:b,...c}=a;return{...c,output_config:{...a.output_config,format:b}}}c4.Batches=cQ,c4.BetaToolRunner=c0,c4.ToolError=cC.v;class c6 extends cd{list(a,b={},c){let{betas:d,...e}=b??{};return this._client.getAPIList(ci`/v1/sessions/${a}/events?beta=true`,b_,{query:e,...c,headers:cf([{"anthropic-beta":[...d??[],"managed-agents-2026-04-01"].toString()},c?.headers])})}send(a,b,c){let{betas:d,...e}=b;return this._client.post(ci`/v1/sessions/${a}/events?beta=true`,{body:e,...c,headers:cf([{"anthropic-beta":[...d??[],"managed-agents-2026-04-01"].toString()},c?.headers])})}stream(a,b={},c){let{betas:d}=b??{};return this._client.get(ci`/v1/sessions/${a}/events/stream?beta=true`,{...c,headers:cf([{"anthropic-beta":[...d??[],"managed-agents-2026-04-01"].toString()},c?.headers]),stream:!0})}toolRunner(a,b){return new cG(a,{...b,client:this._client})}}c6.SessionToolRunner=cG;class c7 extends cd{retrieve(a,b,c){let{session_id:d,betas:e}=b;return this._client.get(ci`/v1/sessions/${d}/resources/${a}?beta=true`,{...c,headers:cf([{"anthropic-beta":[...e??[],"managed-agents-2026-04-01"].toString()},c?.headers])})}update(a,b,c){let{session_id:d,betas:e,...f}=b;return this._client.post(ci`/v1/sessions/${d}/resources/${a}?beta=true`,{body:f,...c,headers:cf([{"anthropic-beta":[...e??[],"managed-agents-2026-04-01"].toString()},c?.headers])})}list(a,b={},c){let{betas:d,...e}=b??{};return this._client.getAPIList(ci`/v1/sessions/${a}/resources?beta=true`,b_,{query:e,...c,headers:cf([{"anthropic-beta":[...d??[],"managed-agents-2026-04-01"].toString()},c?.headers])})}delete(a,b,c){let{session_id:d,betas:e}=b;return this._client.delete(ci`/v1/sessions/${d}/resources/${a}?beta=true`,{...c,headers:cf([{"anthropic-beta":[...e??[],"managed-agents-2026-04-01"].toString()},c?.headers])})}add(a,b,c){let{betas:d,...e}=b;return this._client.post(ci`/v1/sessions/${a}/resources?beta=true`,{body:e,...c,headers:cf([{"anthropic-beta":[...d??[],"managed-agents-2026-04-01"].toString()},c?.headers])})}}class c8 extends cd{list(a,b,c){let{session_id:d,betas:e,...f}=b;return this._client.getAPIList(ci`/v1/sessions/${d}/threads/${a}/events?beta=true`,b_,{query:f,...c,headers:cf([{"anthropic-beta":[...e??[],"managed-agents-2026-04-01"].toString()},c?.headers])})}stream(a,b,c){let{session_id:d,betas:e}=b;return this._client.get(ci`/v1/sessions/${d}/threads/${a}/stream?beta=true`,{...c,headers:cf([{"anthropic-beta":[...e??[],"managed-agents-2026-04-01"].toString()},c?.headers]),stream:!0})}}class c9 extends cd{constructor(){super(...arguments),this.events=new c8(this._client)}retrieve(a,b,c){let{session_id:d,betas:e}=b;return this._client.get(ci`/v1/sessions/${d}/threads/${a}?beta=true`,{...c,headers:cf([{"anthropic-beta":[...e??[],"managed-agents-2026-04-01"].toString()},c?.headers])})}list(a,b={},c){let{betas:d,...e}=b??{};return this._client.getAPIList(ci`/v1/sessions/${a}/threads?beta=true`,b_,{query:e,...c,headers:cf([{"anthropic-beta":[...d??[],"managed-agents-2026-04-01"].toString()},c?.headers])})}archive(a,b,c){let{session_id:d,betas:e}=b;return this._client.post(ci`/v1/sessions/${d}/threads/${a}/archive?beta=true`,{...c,headers:cf([{"anthropic-beta":[...e??[],"managed-agents-2026-04-01"].toString()},c?.headers])})}}c9.Events=c8;class da extends cd{constructor(){super(...arguments),this.events=new c6(this._client),this.resources=new c7(this._client),this.threads=new c9(this._client)}create(a,b){let{betas:c,...d}=a;return this._client.post("/v1/sessions?beta=true",{body:d,...b,headers:cf([{"anthropic-beta":[...c??[],"managed-agents-2026-04-01"].toString()},b?.headers])})}retrieve(a,b={},c){let{betas:d}=b??{};return this._client.get(ci`/v1/sessions/${a}?beta=true`,{...c,headers:cf([{"anthropic-beta":[...d??[],"managed-agents-2026-04-01"].toString()},c?.headers])})}update(a,b,c){let{betas:d,...e}=b;return this._client.post(ci`/v1/sessions/${a}?beta=true`,{body:e,...c,headers:cf([{"anthropic-beta":[...d??[],"managed-agents-2026-04-01"].toString()},c?.headers])})}list(a={},b){let{betas:c,...d}=a??{};return this._client.getAPIList("/v1/sessions?beta=true",b_,{query:d,...b,headers:cf([{"anthropic-beta":[...c??[],"managed-agents-2026-04-01"].toString()},b?.headers])})}delete(a,b={},c){let{betas:d}=b??{};return this._client.delete(ci`/v1/sessions/${a}?beta=true`,{...c,headers:cf([{"anthropic-beta":[...d??[],"managed-agents-2026-04-01"].toString()},c?.headers])})}archive(a,b={},c){let{betas:d}=b??{};return this._client.post(ci`/v1/sessions/${a}/archive?beta=true`,{...c,headers:cf([{"anthropic-beta":[...d??[],"managed-agents-2026-04-01"].toString()},c?.headers])})}}da.Events=c6,da.Resources=c7,da.Threads=c9;class db extends cd{create(a,b={},c){let{betas:d,...e}=b??{};return this._client.post(ci`/v1/skills/${a}/versions?beta=true`,b4({body:e,...c,headers:cf([{"anthropic-beta":[...d??[],"skills-2025-10-02"].toString()},c?.headers])},this._client,!1))}retrieve(a,b,c){let{skill_id:d,betas:e}=b;return this._client.get(ci`/v1/skills/${d}/versions/${a}?beta=true`,{...c,headers:cf([{"anthropic-beta":[...e??[],"skills-2025-10-02"].toString()},c?.headers])})}list(a,b={},c){let{betas:d,...e}=b??{};return this._client.getAPIList(ci`/v1/skills/${a}/versions?beta=true`,b_,{query:e,...c,headers:cf([{"anthropic-beta":[...d??[],"skills-2025-10-02"].toString()},c?.headers])})}delete(a,b,c){let{skill_id:d,betas:e}=b;return this._client.delete(ci`/v1/skills/${d}/versions/${a}?beta=true`,{...c,headers:cf([{"anthropic-beta":[...e??[],"skills-2025-10-02"].toString()},c?.headers])})}download(a,b,c){let{skill_id:d,betas:e}=b;return this._client.get(ci`/v1/skills/${d}/versions/${a}/content?beta=true`,{...c,headers:cf([{"anthropic-beta":[...e??[],"skills-2025-10-02"].toString(),Accept:"application/binary"},c?.headers]),__binaryResponse:!0})}}class dc extends cd{constructor(){super(...arguments),this.versions=new db(this._client)}create(a={},b){let{betas:c,...d}=a??{};return this._client.post("/v1/skills?beta=true",b4({body:d,...b,headers:cf([{"anthropic-beta":[...c??[],"skills-2025-10-02"].toString()},b?.headers])},this._client,!1))}retrieve(a,b={},c){let{betas:d}=b??{};return this._client.get(ci`/v1/skills/${a}?beta=true`,{...c,headers:cf([{"anthropic-beta":[...d??[],"skills-2025-10-02"].toString()},c?.headers])})}list(a={},b){let{betas:c,...d}=a??{};return this._client.getAPIList("/v1/skills?beta=true",b_,{query:d,...b,headers:cf([{"anthropic-beta":[...c??[],"skills-2025-10-02"].toString()},b?.headers])})}delete(a,b={},c){let{betas:d}=b??{};return this._client.delete(ci`/v1/skills/${a}?beta=true`,{...c,headers:cf([{"anthropic-beta":[...d??[],"skills-2025-10-02"].toString()},c?.headers])})}}dc.Versions=db;class dd extends cd{create(a,b,c){let{betas:d,...e}=b;return this._client.post(ci`/v1/vaults/${a}/credentials?beta=true`,{body:e,...c,headers:cf([{"anthropic-beta":[...d??[],"managed-agents-2026-04-01"].toString()},c?.headers])})}retrieve(a,b,c){let{vault_id:d,betas:e}=b;return this._client.get(ci`/v1/vaults/${d}/credentials/${a}?beta=true`,{...c,headers:cf([{"anthropic-beta":[...e??[],"managed-agents-2026-04-01"].toString()},c?.headers])})}update(a,b,c){let{vault_id:d,betas:e,...f}=b;return this._client.post(ci`/v1/vaults/${d}/credentials/${a}?beta=true`,{body:f,...c,headers:cf([{"anthropic-beta":[...e??[],"managed-agents-2026-04-01"].toString()},c?.headers])})}list(a,b={},c){let{betas:d,...e}=b??{};return this._client.getAPIList(ci`/v1/vaults/${a}/credentials?beta=true`,b_,{query:e,...c,headers:cf([{"anthropic-beta":[...d??[],"managed-agents-2026-04-01"].toString()},c?.headers])})}delete(a,b,c){let{vault_id:d,betas:e}=b;return this._client.delete(ci`/v1/vaults/${d}/credentials/${a}?beta=true`,{...c,headers:cf([{"anthropic-beta":[...e??[],"managed-agents-2026-04-01"].toString()},c?.headers])})}archive(a,b,c){let{vault_id:d,betas:e}=b;return this._client.post(ci`/v1/vaults/${d}/credentials/${a}/archive?beta=true`,{...c,headers:cf([{"anthropic-beta":[...e??[],"managed-agents-2026-04-01"].toString()},c?.headers])})}mcpOAuthValidate(a,b,c){let{vault_id:d,betas:e}=b;return this._client.post(ci`/v1/vaults/${d}/credentials/${a}/mcp_oauth_validate?beta=true`,{...c,headers:cf([{"anthropic-beta":[...e??[],"managed-agents-2026-04-01"].toString()},c?.headers])})}}class de extends cd{constructor(){super(...arguments),this.credentials=new dd(this._client)}create(a,b){let{betas:c,...d}=a;return this._client.post("/v1/vaults?beta=true",{body:d,...b,headers:cf([{"anthropic-beta":[...c??[],"managed-agents-2026-04-01"].toString()},b?.headers])})}retrieve(a,b={},c){let{betas:d}=b??{};return this._client.get(ci`/v1/vaults/${a}?beta=true`,{...c,headers:cf([{"anthropic-beta":[...d??[],"managed-agents-2026-04-01"].toString()},c?.headers])})}update(a,b,c){let{betas:d,...e}=b;return this._client.post(ci`/v1/vaults/${a}?beta=true`,{body:e,...c,headers:cf([{"anthropic-beta":[...d??[],"managed-agents-2026-04-01"].toString()},c?.headers])})}list(a={},b){let{betas:c,...d}=a??{};return this._client.getAPIList("/v1/vaults?beta=true",b_,{query:d,...b,headers:cf([{"anthropic-beta":[...c??[],"managed-agents-2026-04-01"].toString()},b?.headers])})}delete(a,b={},c){let{betas:d}=b??{};return this._client.delete(ci`/v1/vaults/${a}?beta=true`,{...c,headers:cf([{"anthropic-beta":[...d??[],"managed-agents-2026-04-01"].toString()},c?.headers])})}archive(a,b={},c){let{betas:d}=b??{};return this._client.post(ci`/v1/vaults/${a}/archive?beta=true`,{...c,headers:cf([{"anthropic-beta":[...d??[],"managed-agents-2026-04-01"].toString()},c?.headers])})}}de.Credentials=dd;class df extends cd{constructor(){super(...arguments),this.models=new cq(this._client),this.messages=new c4(this._client),this.agents=new cv(this._client),this.environments=new cL(this._client),this.sessions=new da(this._client),this.deployments=new ck(this._client),this.deploymentRuns=new cj(this._client),this.vaults=new de(this._client),this.memoryStores=new cO(this._client),this.files=new cp(this._client),this.skills=new dc(this._client),this.webhooks=new ct(this._client),this.userProfiles=new cr(this._client)}}df.Models=cq,df.Messages=c4,df.Agents=cv,df.Environments=cL,df.Sessions=da,df.Deployments=ck,df.DeploymentRuns=cj,df.Vaults=de,df.MemoryStores=cO,df.Files=cp,df.Skills=dc,df.Webhooks=ct,df.UserProfiles=cr;class dg extends cd{create(a,b){let{betas:c,...d}=a;return this._client.post("/v1/complete",{body:d,timeout:this._client._options.timeout??6e5,...b,headers:cf([{...c?.toString()!=null?{"anthropic-beta":c?.toString()}:void 0},b?.headers]),stream:a.stream??!1})}}function dh(a){return a?.output_config?.format}function di(a,b,c){let d=dh(b);return b&&"parse"in(d??{})?dj(a,b,c):{...a,content:a.content.map(a=>"text"===a.type?Object.defineProperty({...a},"parsed_output",{value:null,enumerable:!1}):a),parsed_output:null}}function dj(a,b,c){let d=null,e=a.content.map(a=>{if("text"===a.type){let c=function(a,b){let c=dh(a);if(c?.type!=="json_schema")return null;try{if("parse"in c)return c.parse(b);return JSON.parse(b)}catch(a){throw new bk.pJ(`Failed to parse structured output: ${a}`)}}(b,a.text);return null===d&&(d=c),Object.defineProperty({...a},"parsed_output",{value:c,enumerable:!1})}return a});return{...a,content:e,parsed_output:d}}function dk(a){return"tool_use"===a.type||"server_tool_use"===a.type}class dl{constructor(a,b){aF.add(this),this.messages=[],this.receivedMessages=[],aG.set(this,void 0),aH.set(this,null),this.controller=new AbortController,aI.set(this,void 0),aJ.set(this,()=>{}),aK.set(this,()=>{}),aL.set(this,void 0),aM.set(this,()=>{}),aN.set(this,()=>{}),aO.set(this,{}),aP.set(this,!1),aQ.set(this,!1),aR.set(this,!1),aS.set(this,!1),aT.set(this,void 0),aU.set(this,void 0),aV.set(this,void 0),aY.set(this,a=>{if((0,a5.G)(this,aQ,!0,"f"),(0,a9.z)(a)&&(a=new bk.cH),a instanceof bk.cH)return(0,a5.G)(this,aR,!0,"f"),this._emit("abort",a);if(a instanceof bk.pJ)return this._emit("error",a);if(a instanceof Error){let b=new bk.pJ(a.message);return b.cause=a,this._emit("error",b)}return this._emit("error",new bk.pJ(String(a)))}),(0,a5.G)(this,aI,new Promise((a,b)=>{(0,a5.G)(this,aJ,a,"f"),(0,a5.G)(this,aK,b,"f")}),"f"),(0,a5.G)(this,aL,new Promise((a,b)=>{(0,a5.G)(this,aM,a,"f"),(0,a5.G)(this,aN,b,"f")}),"f"),(0,a5.g)(this,aI,"f").catch(()=>{}),(0,a5.g)(this,aL,"f").catch(()=>{}),(0,a5.G)(this,aH,a,"f"),(0,a5.G)(this,aV,b?.logger??console,"f")}get response(){return(0,a5.g)(this,aT,"f")}get request_id(){return(0,a5.g)(this,aU,"f")}async withResponse(){(0,a5.G)(this,aS,!0,"f");let a=await (0,a5.g)(this,aI,"f");if(!a)throw Error("Could not resolve a `Response` object");return{data:this,response:a,request_id:a.headers.get("request-id")}}static fromReadableStream(a){let b=new dl(null);return b._run(()=>b._fromReadableStream(a)),b}static createMessage(a,b,c,{logger:d}={}){let e=new dl(b,{logger:d});for(let a of b.messages)e._addMessageParam(a);return(0,a5.G)(e,aH,{...b,stream:!0},"f"),e._run(()=>e._createMessage(a,{...b,stream:!0},{...c,headers:{...c?.headers,"X-Stainless-Helper-Method":"stream"}})),e}_run(a){a().then(()=>{this._emitFinal(),this._emit("end")},(0,a5.g)(this,aY,"f"))}_addMessageParam(a){this.messages.push(a)}_addMessage(a,b=!0){this.receivedMessages.push(a),b&&this._emit("message",a)}async _createMessage(a,b,c){let d,e=c?.signal;e&&(e.aborted&&this.controller.abort(),d=this.controller.abort.bind(this.controller),e.addEventListener("abort",d));try{(0,a5.g)(this,aF,"m",aZ).call(this);let{response:d,data:e}=await a.create({...b,stream:!0},{...c,signal:this.controller.signal}).withResponse();for await(let a of(this._connected(d),e))(0,a5.g)(this,aF,"m",a$).call(this,a);if(e.controller.signal?.aborted)throw new bk.cH;(0,a5.g)(this,aF,"m",a_).call(this)}finally{e&&d&&e.removeEventListener("abort",d)}}_connected(a){this.ended||((0,a5.G)(this,aT,a,"f"),(0,a5.G)(this,aU,a?.headers.get("request-id"),"f"),(0,a5.g)(this,aJ,"f").call(this,a),this._emit("connect"))}get ended(){return(0,a5.g)(this,aP,"f")}get errored(){return(0,a5.g)(this,aQ,"f")}get aborted(){return(0,a5.g)(this,aR,"f")}abort(){this.controller.abort()}on(a,b){return((0,a5.g)(this,aO,"f")[a]||((0,a5.g)(this,aO,"f")[a]=[])).push({listener:b}),this}off(a,b){let c=(0,a5.g)(this,aO,"f")[a];if(!c)return this;let d=c.findIndex(a=>a.listener===b);return d>=0&&c.splice(d,1),this}once(a,b){return((0,a5.g)(this,aO,"f")[a]||((0,a5.g)(this,aO,"f")[a]=[])).push({listener:b,once:!0}),this}emitted(a){return new Promise((b,c)=>{(0,a5.G)(this,aS,!0,"f"),"error"!==a&&this.once("error",c),this.once(a,b)})}async done(){(0,a5.G)(this,aS,!0,"f"),await (0,a5.g)(this,aL,"f")}get currentMessage(){return(0,a5.g)(this,aG,"f")}async finalMessage(){return await this.done(),(0,a5.g)(this,aF,"m",aW).call(this)}async finalText(){return await this.done(),(0,a5.g)(this,aF,"m",aX).call(this)}_emit(a,...b){if((0,a5.g)(this,aP,"f"))return;"end"===a&&((0,a5.G)(this,aP,!0,"f"),(0,a5.g)(this,aM,"f").call(this));let c=(0,a5.g)(this,aO,"f")[a];if(c&&((0,a5.g)(this,aO,"f")[a]=c.filter(a=>!a.once),c.forEach(({listener:a})=>a(...b))),"abort"===a){let a=b[0];(0,a5.g)(this,aS,"f")||c?.length||Promise.reject(a),(0,a5.g)(this,aK,"f").call(this,a),(0,a5.g)(this,aN,"f").call(this,a),this._emit("end");return}if("error"===a){let a=b[0];(0,a5.g)(this,aS,"f")||c?.length||Promise.reject(a),(0,a5.g)(this,aK,"f").call(this,a),(0,a5.g)(this,aN,"f").call(this,a),this._emit("end")}}_emitFinal(){this.receivedMessages.at(-1)&&this._emit("finalMessage",(0,a5.g)(this,aF,"m",aW).call(this))}async _fromReadableStream(a,b){let c,d=b?.signal;d&&(d.aborted&&this.controller.abort(),c=this.controller.abort.bind(this.controller),d.addEventListener("abort",c));try{(0,a5.g)(this,aF,"m",aZ).call(this),this._connected(null);let b=bN.fromReadableStream(a,this.controller);for await(let a of b)(0,a5.g)(this,aF,"m",a$).call(this,a);if(b.controller.signal?.aborted)throw new bk.cH;(0,a5.g)(this,aF,"m",a_).call(this)}finally{d&&c&&d.removeEventListener("abort",c)}}[(aG=new WeakMap,aH=new WeakMap,aI=new WeakMap,aJ=new WeakMap,aK=new WeakMap,aL=new WeakMap,aM=new WeakMap,aN=new WeakMap,aO=new WeakMap,aP=new WeakMap,aQ=new WeakMap,aR=new WeakMap,aS=new WeakMap,aT=new WeakMap,aU=new WeakMap,aV=new WeakMap,aY=new WeakMap,aF=new WeakSet,aW=function(){if(0===this.receivedMessages.length)throw new bk.pJ("stream ended without producing a Message with role=assistant");return this.receivedMessages.at(-1)},aX=function(){if(0===this.receivedMessages.length)throw new bk.pJ("stream ended without producing a Message with role=assistant");let a=this.receivedMessages.at(-1).content.filter(a=>"text"===a.type).map(a=>a.text);if(0===a.length)throw new bk.pJ("stream ended without producing a content block with type=text");return a.join(" ")},aZ=function(){this.ended||(0,a5.G)(this,aG,void 0,"f")},a$=function(a){if(this.ended)return;let b=(0,a5.g)(this,aF,"m",a0).call(this,a);switch(this._emit("streamEvent",a,b),a.type){case"content_block_delta":{let c=b.content.at(-1);switch(a.delta.type){case"text_delta":"text"===c.type&&this._emit("text",a.delta.text,c.text||"");break;case"citations_delta":"text"===c.type&&this._emit("citation",a.delta.citation,c.citations??[]);break;case"input_json_delta":dk(c)&&(0,a5.g)(this,aO,"f").inputJson?.length&&this._emit("inputJson",a.delta.partial_json,c.input);break;case"thinking_delta":"thinking"===c.type&&this._emit("thinking",a.delta.thinking,c.thinking);break;case"signature_delta":"thinking"===c.type&&this._emit("signature",c.signature);break;default:a.delta}break}case"message_stop":this._addMessageParam(b),this._addMessage(di(b,(0,a5.g)(this,aH,"f"),{logger:(0,a5.g)(this,aV,"f")}),!0);break;case"content_block_stop":this._emit("contentBlock",b.content.at(-1));break;case"message_start":(0,a5.G)(this,aG,b,"f")}},a_=function(){if(this.ended)throw new bk.pJ("stream has ended, this shouldn't happen");let a=(0,a5.g)(this,aG,"f");if(!a)throw new bk.pJ("request ended without sending any chunks");return(0,a5.G)(this,aG,void 0,"f"),di(a,(0,a5.g)(this,aH,"f"),{logger:(0,a5.g)(this,aV,"f")})},a0=function(a){let b=(0,a5.g)(this,aG,"f");if("message_start"===a.type){if(b)throw new bk.pJ(`Unexpected event order, got ${a.type} before receiving "message_stop"`);return a.message}if(!b)throw new bk.pJ(`Unexpected event order, got ${a.type} before "message_start"`);switch(a.type){case"message_stop":return b;case"message_delta":return b.stop_reason=a.delta.stop_reason,b.stop_sequence=a.delta.stop_sequence,null!=a.delta.stop_details&&(b.stop_details=a.delta.stop_details),b.usage.output_tokens=a.usage.output_tokens,null!=a.usage.input_tokens&&(b.usage.input_tokens=a.usage.input_tokens),null!=a.usage.cache_creation_input_tokens&&(b.usage.cache_creation_input_tokens=a.usage.cache_creation_input_tokens),null!=a.usage.cache_read_input_tokens&&(b.usage.cache_read_input_tokens=a.usage.cache_read_input_tokens),null!=a.usage.server_tool_use&&(b.usage.server_tool_use=a.usage.server_tool_use),b;case"content_block_start":return b.content.push({...a.content_block}),b;case"content_block_delta":{let c=b.content.at(a.index);switch(a.delta.type){case"text_delta":c?.type==="text"&&(b.content[a.index]={...c,text:(c.text||"")+a.delta.text});break;case"citations_delta":c?.type==="text"&&(b.content[a.index]={...c,citations:[...c.citations??[],a.delta.citation]});break;case"input_json_delta":if(c&&dk(c)){let d=(c[cW]||"")+a.delta.partial_json;b.content[a.index]=cX(c,d)}break;case"thinking_delta":c?.type==="thinking"&&(b.content[a.index]={...c,thinking:c.thinking+a.delta.thinking});break;case"signature_delta":c?.type==="thinking"&&(b.content[a.index]={...c,signature:a.delta.signature});break;default:a.delta}return b}case"content_block_stop":{let c=b.content.at(a.index);return c&&dk(c)&&cW in c&&Object.defineProperty(c,"input",{value:c.input,enumerable:!0,configurable:!0,writable:!0}),b}}},Symbol.asyncIterator)](){let a=[],b=[],c=!1;return this.on("streamEvent",c=>{let d=b.shift();d?d.resolve(c):a.push(c)}),this.on("end",()=>{for(let a of(c=!0,b))a.resolve(void 0);b.length=0}),this.on("abort",a=>{for(let d of(c=!0,b))d.reject(a);b.length=0}),this.on("error",a=>{for(let d of(c=!0,b))d.reject(a);b.length=0}),{next:async()=>a.length?{value:a.shift(),done:!1}:c?{value:void 0,done:!0}:new Promise((a,c)=>b.push({resolve:a,reject:c})).then(a=>a?{value:a,done:!1}:{value:void 0,done:!0}),return:async()=>(this.abort(),{value:void 0,done:!0})}}toReadableStream(){return new bN(this[Symbol.asyncIterator].bind(this),this.controller).toReadableStream()}}class dm extends cd{create(a,b){return this._client.post("/v1/messages/batches",{body:a,...b})}retrieve(a,b){return this._client.get(ci`/v1/messages/batches/${a}`,b)}list(a={},b){return this._client.getAPIList("/v1/messages/batches",b$,{query:a,...b})}delete(a,b){return this._client.delete(ci`/v1/messages/batches/${a}`,b)}cancel(a,b){return this._client.post(ci`/v1/messages/batches/${a}/cancel`,b)}async results(a,b){let c=await this.retrieve(a);if(!c.results_url)throw new bk.pJ(`No batch \`results_url\`; Has it finished processing? ${c.processing_status} - ${c.id}`);return this._client.get(c.results_url,{...b,headers:cf([{Accept:"application/binary"},b?.headers]),stream:!0,__binaryResponse:!0})._thenUnwrap((a,b)=>cP.fromResponse(b.response,b.controller))}}class dn extends cd{constructor(){super(...arguments),this.batches=new dm(this._client)}create(a,b){a.model in dp&&console.warn(`The model '${a.model}' is deprecated and will reach end-of-life on ${dp[a.model]}
134
- Please migrate to a newer model. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.`),dq.includes(a.model)&&a.thinking&&"enabled"===a.thinking.type&&console.warn(`Using Claude with ${a.model} and 'thinking.type=enabled' is deprecated. Use 'thinking.type=adaptive' instead which results in better model performance in our testing: https://platform.claude.com/docs/en/build-with-claude/adaptive-thinking`);let c=this._client._options.timeout;if(!a.stream&&null==c){let b=cR[a.model]??void 0;c=this._client.calculateNonstreamingTimeout(a.max_tokens,b)}let d=co(a.tools,a.messages);return this._client.post("/v1/messages",{body:a,timeout:c??6e5,...b,headers:cf([d,b?.headers]),stream:a.stream??!1})}parse(a,b){return this.create(a,b).then(b=>dj(b,a,{logger:this._client.logger??console}))}stream(a,b){return dl.createMessage(this,a,b,{logger:this._client.logger??console})}countTokens(a,b){return this._client.post("/v1/messages/count_tokens",{body:a,...b})}}let dp={"claude-1.3":"November 6th, 2024","claude-1.3-100k":"November 6th, 2024","claude-instant-1.1":"November 6th, 2024","claude-instant-1.1-100k":"November 6th, 2024","claude-instant-1.2":"November 6th, 2024","claude-3-sonnet-20240229":"July 21st, 2025","claude-3-opus-20240229":"January 5th, 2026","claude-2.1":"July 21st, 2025","claude-2.0":"July 21st, 2025","claude-3-7-sonnet-latest":"February 19th, 2026","claude-3-7-sonnet-20250219":"February 19th, 2026","claude-3-5-haiku-latest":"February 19th, 2026","claude-3-5-haiku-20241022":"February 19th, 2026","claude-opus-4-0":"June 15th, 2026","claude-opus-4-20250514":"June 15th, 2026","claude-sonnet-4-0":"June 15th, 2026","claude-sonnet-4-20250514":"June 15th, 2026","claude-opus-4-1":"August 5th, 2026","claude-opus-4-1-20250805":"August 5th, 2026","claude-mythos-preview":"June 30th, 2026"},dq=["claude-mythos-preview","claude-opus-4-6"];dn.Batches=dm;class dr extends cd{retrieve(a,b={},c){let{betas:d}=b??{};return this._client.get(ci`/v1/models/${a}`,{...c,headers:cf([{...d?.toString()!=null?{"anthropic-beta":d?.toString()}:void 0},c?.headers])})}list(a={},b){let{betas:c,...d}=a??{};return this._client.getAPIList("/v1/models",b$,{query:d,...b,headers:cf([{...c?.toString()!=null?{"anthropic-beta":c?.toString()}:void 0},b?.headers])})}}class ds{get credentials(){return this._authState.provider}constructor({baseURL:a=(0,bx.s)("ANTHROPIC_BASE_URL"),apiKey:b,authToken:c,webhookKey:d=(0,bx.s)("ANTHROPIC_WEBHOOK_SIGNING_KEY")??null,...e}={}){if(a1.add(this),this._requestAuthFlags=new WeakMap,a3.set(this,void 0),void 0===b&&(b=null!=e.profile?null:(0,bx.s)("ANTHROPIC_API_KEY")??null),void 0===c&&(c=null!=e.profile?null:(0,bx.s)("ANTHROPIC_AUTH_TOKEN")??null),null!=e.profile&&(null!=e.credentials||null!=e.config))throw TypeError("Pass at most one of `profile`, `credentials`, or `config`.");let f={apiKey:b,authToken:c,webhookKey:d,...e,baseURL:a||"https://api.anthropic.com"};if(!f.dangerouslyAllowBrowser&&"undefined"!=typeof window&&void 0!==window.document&&"undefined"!=typeof navigator)throw new bk.pJ("It looks like you're running in a browser-like environment.\n\nThis is disabled by default, as it risks exposing your secret API credentials to attackers.\nIf you understand the risks and have appropriate mitigations in place,\nyou can set the `dangerouslyAllowBrowser` option to `true`, e.g.,\n\nnew Anthropic({ apiKey, dangerouslyAllowBrowser: true });\n");this.baseURL=f.baseURL,this._baseURLIsExplicit=e.__baseURLIsExplicit??!!a,this.timeout=f.timeout??a2.DEFAULT_TIMEOUT,this.logger=f.logger??console,this.logLevel=bM.Ic,this.logLevel=(0,bM.ML)(f.logLevel,"ClientOptions.logLevel",(0,bM.WG)(this))??(0,bM.ML)((0,bx.s)("ANTHROPIC_LOG"),"process.env['ANTHROPIC_LOG']",(0,bM.WG)(this))??bM.Ic,this.fetchOptions=f.fetchOptions,this.maxRetries=f.maxRetries??2,this.fetch=f.fetch??function(){if("undefined"!=typeof fetch)return fetch;throw Error("`fetch` is not defined as a global; Either pass `fetch` to the client, `new Anthropic({ fetch })` or polyfill the global, `globalThis.fetch = fetch`")}(),(0,a5.G)(this,a3,bi,"f"),this.middleware=[...f.middleware??[]];let g=(0,bx.s)("ANTHROPIC_CUSTOM_HEADERS");if(g){let a={};for(let b of g.split("\n")){let c=b.indexOf(":");c>=0&&(a[b.substring(0,c).trim()]=b.substring(c+1).trim())}f.defaultHeaders={...a,...f.defaultHeaders}}let h=e.__auth;if(delete f.__auth,delete f.__baseURLIsExplicit,this._options=f,this.apiKey="string"==typeof b?b:null,this.authToken=c,this.webhookKey=d,h)this._authState=h,!this._baseURLIsExplicit&&h.baseURL&&(this.baseURL=h.baseURL);else if(this._authState={provider:null,tokenCache:null,resolution:null,error:null,extraHeaders:{}},null==this.apiKey&&null==this.authToken){let a=f.credentials??null;if(a)this._authState.provider=a,this._authState.tokenCache=this._makeTokenCache(a);else if(null!=f.config){let a=bH(f.config,this._credentialResolverOptions());this._authState.provider=a.provider,this._authState.tokenCache=this._makeTokenCache(a.provider),this._authState.extraHeaders=a.extraHeaders,this._applyCredentialBaseURL(a.baseURL)}else null!=f.profile?this._authState.resolution=this._resolveDefaultCredentials(f.profile):this._authState.resolution=this._resolveDefaultCredentials()}}_applyCredentialBaseURL(a){if(!a)return;let b=a.replace(/\/+$/,"");this._authState.baseURL=b,this._baseURLIsExplicit||(this.baseURL=b)}_credentialResolverOptions(){return{baseURL:this.baseURL,fetch:this._credentialsFetch(),userAgent:this.getUserAgent(),onCacheWriteError:a=>{(0,bM.WG)(this).debug("credential cache write failed (best-effort)",a)},onSafetyWarning:a=>{(0,bM.WG)(this).warn(a)}}}_credentialsFetch(){return bV(this.fetch,this.middleware,void 0,this)}_makeTokenCache(a){return new bw(a,a=>{(0,bM.WG)(this).debug("advisory token refresh failed; serving cached token",a)})}withOptions(a){let b="credentials"in a||"config"in a||"profile"in a,c="apiKey"in a||"authToken"in a||b,d={...this._options,...this._baseURLIsExplicit?{baseURL:this.baseURL}:{},maxRetries:this.maxRetries,timeout:this.timeout,logger:this.logger,logLevel:this.logLevel,fetch:this.fetch,fetchOptions:this.fetchOptions,middleware:this.middleware,apiKey:this.apiKey,authToken:this.authToken,webhookKey:this.webhookKey,credentials:this.credentials,...b?{credentials:void 0,config:void 0,profile:void 0}:{},...a,__auth:c?void 0:this._authState,__baseURLIsExplicit:"baseURL"in a||this._baseURLIsExplicit};return new this.constructor(d)}async _resolveDefaultCredentials(a){try{let b=await bI(this._credentialResolverOptions(),a);if(b)this._authState.provider=b.provider,this._authState.tokenCache=this._makeTokenCache(b.provider),this._authState.extraHeaders=b.extraHeaders,this._applyCredentialBaseURL(b.baseURL);else if(null!=a)throw new bk.pJ(`Profile "${a}" could not be resolved (no <config_dir>/configs/${a}.json found).`)}catch(a){this._authState.error=a}finally{this._authState.resolution=null}}defaultQuery(){return this._options.defaultQuery}validateHeaders({values:a,nulls:b}){if(!(a.get("x-api-key")||a.get("authorization"))){if(this._authState.error)throw this._authState.error;if(!(this._authState.tokenCache||this._authState.resolution||this.apiKey&&a.get("x-api-key")||b.has("x-api-key")||this.authToken&&a.get("authorization"))&&!b.has("authorization"))throw Error('Could not resolve authentication method. Expected one of apiKey, authToken, credentials, config, or profile to be set. Or for one of the "X-Api-Key" or "Authorization" headers to be explicitly omitted')}}_authFlags(a){let b=this._requestAuthFlags.get(a);return b||(b={usedTokenCache:!1,didRefreshFor401:!1},this._requestAuthFlags.set(a,b)),b}async authHeaders(a){if(this._authState.resolution&&await this._authState.resolution,!this._authState.error){if(this._authState.tokenCache&&null==this.apiKey){let b=await this._authState.tokenCache.getToken();return this._authFlags(a).usedTokenCache=!0,cf([{Authorization:`Bearer ${b}`}])}return cf([await this.apiKeyAuth(a),await this.bearerAuth(a)])}}async apiKeyAuth(a){if(null!=this.apiKey)return cf([{"X-Api-Key":this.apiKey}])}async bearerAuth(a){if(null!=this.authToken)return cf([{Authorization:`Bearer ${this.authToken}`}])}stringifyQuery(a){return(0,bj._)(a)}getUserAgent(){return`${this.constructor.name}/JS ${ba}`}defaultIdempotencyKey(){return`stainless-node-retry-${a6()}`}makeStatusError(a,b,c,d){return bk.LG.generate(a,b,c,d)}buildURL(a,b,c){let d=!(0,a5.g)(this,a1,"m",a4).call(this)&&c||this.baseURL,e=new URL((0,a7.nt)(a)?a:d+(d.endsWith("/")&&a.startsWith("/")?a.slice(1):a)),f=this.defaultQuery(),g=Object.fromEntries(e.searchParams);return(0,a7.ze)(f)&&(0,a7.ze)(g)||(b={...g,...f,...b}),"object"==typeof b&&b&&!Array.isArray(b)&&(e.search=this.stringifyQuery(b)),e.toString()}_calculateNonstreamingTimeout(a){if(3600*a/128e3>600)throw new bk.pJ("Streaming is required for operations that may take longer than 10 minutes. See https://github.com/anthropics/anthropic-sdk-typescript#streaming-responses for more details");return 6e5}async prepareOptions(a){}async prepareRequest(a,{url:b,options:c}){if(this._authState.tokenCache&&null==this.apiKey){let b=a.headers instanceof Headers?a.headers:new Headers(a.headers);for(let[a,c]of Object.entries(this._authState.extraHeaders))b.has(a)||b.set(a,c);let c=b.get("anthropic-beta")?.split(",").map(a=>a.trim());c?.includes(bm)||b.append("anthropic-beta",bm),a.headers=b}}backendMiddleware(){return[]}get(a,b){return this.methodRequest("get",a,b)}post(a,b){return this.methodRequest("post",a,b)}patch(a,b){return this.methodRequest("patch",a,b)}put(a,b){return this.methodRequest("put",a,b)}delete(a,b){return this.methodRequest("delete",a,b)}methodRequest(a,b,c){return this.request(Promise.resolve(c).then(c=>({method:a,path:b,...c})))}request(a,b=null){return new bX(this,this.makeRequest(a,b,void 0))}async makeRequest(a,b,c){let d=await a,e=d.maxRetries??this.maxRetries;null==b&&(b=e,this._requestAuthFlags.delete(d)),await this.prepareOptions(d);let{req:f,url:g,timeout:h}=await this.buildRequest(d,{retryCount:e-b}),i="log_"+(0x1000000*Math.random()|0).toString(16).padStart(6,"0"),j=void 0===c?"":`, retryOf: ${c}`,k=Date.now();if(d.signal?.aborted)throw new bk.cH;let l=new AbortController,m=await this.fetchWithTimeout(g,f,h,l,d,{requestLogID:i,retryOfRequestLogID:c}).catch(a9.r),n=Date.now();if(m instanceof globalThis.Error){let a=`retrying, ${b} attempts remaining`;if(d.signal?.aborted)throw new bk.cH;let e=(0,a9.z)(m)||/timed? ?out/i.test(String(m)+("cause"in m?String(m.cause):"")),f=this.middleware.length>0||!!d.middleware?.length||this.backendMiddleware().length>0;if(f&&!e&&!function(a){let b=new Set;for(;"object"==typeof a&&null!==a&&!b.has(a);){if(b.add(a),bU(a)||(0,a9.z)(a)||a instanceof bk.xX||a instanceof bk.dw)return!0;a=a.cause}return!1}(m))throw(0,bM.WG)(this).info(`[${i}] middleware error (not retryable)`),(0,bM.WG)(this).debug(`[${i}] middleware error (not retryable)`,(0,bM.xL)({retryOfRequestLogID:c,url:g,durationMs:n-k,message:m.message})),m;if(b)return(0,bM.WG)(this).info(`[${i}] connection ${e?"timed out":"failed"} - ${a}`),(0,bM.WG)(this).debug(`[${i}] connection ${e?"timed out":"failed"} (${a})`,(0,bM.xL)({retryOfRequestLogID:c,url:g,durationMs:n-k,message:m.message})),this.retryRequest(d,b,c??i);if((0,bM.WG)(this).info(`[${i}] connection ${e?"timed out":"failed"} - error; no more retries left`),(0,bM.WG)(this).debug(`[${i}] connection ${e?"timed out":"failed"} (error; no more retries left)`,(0,bM.xL)({retryOfRequestLogID:c,url:g,durationMs:n-k,message:m.message})),e)throw new bk.qA;if(f&&!bU(m))throw m;throw new bk.xX({cause:m})}let o=[...m.headers.entries()].filter(([a])=>"request-id"===a).map(([a,b])=>", "+a+": "+JSON.stringify(b)).join(""),p=`[${i}${j}${o}] ${f.method} ${g} ${m.ok?"succeeded":"failed"} with status ${m.status} in ${n-k}ms`;if(!m.ok){let a=await this.shouldRetry(m,d);if(b&&a){let a=`retrying, ${b} attempts remaining`;return await bh(m.body),(0,bM.WG)(this).info(`${p} - ${a}`),(0,bM.WG)(this).debug(`[${i}] response error (${a})`,(0,bM.xL)({retryOfRequestLogID:c,url:m.url,status:m.status,headers:m.headers,durationMs:n-k})),this.retryRequest(d,b,c??i,m.headers)}let e=a?"error; no more retries left":"error; not retryable";(0,bM.WG)(this).info(`${p} - ${e}`);let f=await m.text().catch(a=>(0,a9.r)(a).message),g=(0,a7.ml)(f),h=g?void 0:f;throw(0,bM.WG)(this).debug(`[${i}] response error (${e})`,(0,bM.xL)({retryOfRequestLogID:c,url:m.url,status:m.status,headers:m.headers,message:h,durationMs:Date.now()-k})),this.makeStatusError(m.status,g,h,m.headers)}return(0,bM.WG)(this).info(p),(0,bM.WG)(this).debug(`[${i}] response start`,(0,bM.xL)({retryOfRequestLogID:c,url:m.url,status:m.status,headers:m.headers,durationMs:n-k})),{response:m,options:d,controller:l,requestLogID:i,retryOfRequestLogID:c,startTime:k}}getAPIList(a,b,c){return this.requestAPIList(b,c&&"then"in c?c.then(b=>({method:"get",path:a,...b})):{method:"get",path:a,...c})}requestAPIList(a,b){return new bZ(this,this.makeRequest(b,null,void 0),a)}async fetchWithTimeout(a,b,c,d,e,f){let{signal:g,method:h,...i}=b||{},j=this._makeAbort(d);g&&g.addEventListener("abort",j,{once:!0});let k=globalThis.ReadableStream&&i.body instanceof globalThis.ReadableStream||"object"==typeof i.body&&null!==i.body&&Symbol.asyncIterator in i.body,l={signal:d.signal,...k?{duplex:"half"}:{},method:"GET",...i};h&&(l.method=h.toUpperCase());let m=this.fetch,n=async(a,b)=>{let d=setTimeout(j,c);try{return await m.call(void 0,a,b)}finally{clearTimeout(d)}},o=void 0===e?n:async(a,b={})=>{let c="string"==typeof a?a:a instanceof URL?a.href:a.url;return b.headers=b.headers instanceof Headers?b.headers:new Headers(b.headers),await this.prepareRequest(b,{url:c,options:e}),f&&(0,bM.WG)(this).debug(`[${f.requestLogID}] sending request`,(0,bM.xL)({retryOfRequestLogID:f.retryOfRequestLogID,method:b.method,url:c,options:e,headers:b.headers})),n(a,b)},p=e?.middleware,q=this.backendMiddleware(),r=p?.length||q.length?[...this.middleware,...p??[],...q]:this.middleware;return await bV(o,r,e,this)(a,l)}async shouldRetry(a,b){let c=this._authFlags(b);if(401===a.status&&this._authState.tokenCache&&c.usedTokenCache&&!c.didRefreshFor401)return c.didRefreshFor401=!0,this._authState.tokenCache.invalidate(),!0;let d=a.headers.get("x-should-retry");return"true"===d||"false"!==d&&(408===a.status||409===a.status||429===a.status||!!(a.status>=500))}async retryRequest(a,b,c,d){let e,f=d?.get("retry-after-ms");if(f){let a=parseFloat(f);Number.isNaN(a)||(e=a)}let g=d?.get("retry-after");if(g&&!e){let a=parseFloat(g);e=Number.isNaN(a)?Date.parse(g)-Date.now():1e3*a}if(void 0===e){let c=a.maxRetries??this.maxRetries;e=this.calculateDefaultRetryTimeoutMillis(b,c)}return await a8(e),this.makeRequest(a,b-1,c)}calculateDefaultRetryTimeoutMillis(a,b){return Math.min(.5*Math.pow(2,b-a),8)*(1-.25*Math.random())*1e3}calculateNonstreamingTimeout(a,b){if(36e5*a/128e3>6e5||null!=b&&a>b)throw new bk.pJ("Streaming is required for operations that may take longer than 10 minutes. See https://github.com/anthropics/anthropic-sdk-typescript#long-requests for more details");return 6e5}async buildRequest(a,{retryCount:b=0}={}){let c={...a},{method:d,path:e,query:f,defaultBaseURL:g}=c;this._authState.resolution&&await this._authState.resolution,!this._baseURLIsExplicit&&this._authState.baseURL&&this.baseURL!==this._authState.baseURL&&(this.baseURL=this._authState.baseURL);let h=this.buildURL(e,f,g);"timeout"in c&&(0,a7.wQ)("timeout",c.timeout),c.timeout=c.timeout??this.timeout;let{bodyHeaders:i,body:j}=this.buildBody({options:c}),k=await this.buildHeaders({options:a,method:d,bodyHeaders:i,retryCount:b});return{req:{method:d,headers:k,...c.signal&&{signal:c.signal},...globalThis.ReadableStream&&j instanceof globalThis.ReadableStream&&{duplex:"half"},...j&&{body:j},...this.fetchOptions??{},...c.fetchOptions??{}},url:h,timeout:c.timeout}}async buildHeaders({options:a,method:b,bodyHeaders:c,retryCount:d}){let e={};this.idempotencyHeader&&"get"!==b&&(a.idempotencyKey||(a.idempotencyKey=this.defaultIdempotencyKey()),e[this.idempotencyHeader]=a.idempotencyKey);let f=cf([e,{Accept:"application/json","User-Agent":this.getUserAgent(),"X-Stainless-Retry-Count":String(d),...a.timeout?{"X-Stainless-Timeout":String(Math.trunc(a.timeout/1e3))}:{},...bd(),...this._options.dangerouslyAllowBrowser?{"anthropic-dangerous-direct-browser-access":"true"}:void 0,"anthropic-version":"2023-06-01"},await this.authHeaders(a),this._options.defaultHeaders,c,a.headers]);return this.validateHeaders(f),f.values}_makeAbort(a){return()=>a.abort()}buildBody({options:{body:a,headers:b}}){if(!a)return{bodyHeaders:void 0,body:void 0};let c=cf([b]);return ArrayBuffer.isView(a)||a instanceof ArrayBuffer||a instanceof DataView||"string"==typeof a&&c.values.has("content-type")||globalThis.Blob&&a instanceof globalThis.Blob||a instanceof FormData||a instanceof URLSearchParams||globalThis.ReadableStream&&a instanceof globalThis.ReadableStream?{bodyHeaders:void 0,body:a}:"object"==typeof a&&(Symbol.asyncIterator in a||Symbol.iterator in a&&"next"in a&&"function"==typeof a.next)?{bodyHeaders:void 0,body:bf(a)}:"object"==typeof a&&"application/x-www-form-urlencoded"===c.values.get("content-type")?{bodyHeaders:{"content-type":"application/x-www-form-urlencoded"},body:this.stringifyQuery(a)}:(0,a5.g)(this,a3,"f").call(this,{body:a,headers:c})}}a2=ds,a3=new WeakMap,a1=new WeakSet,a4=function(){return"https://api.anthropic.com"!==this.baseURL},ds.Anthropic=a2,ds.HUMAN_PROMPT="\\n\\nHuman:",ds.AI_PROMPT="\\n\\nAssistant:",ds.DEFAULT_TIMEOUT=6e5,ds.AnthropicError=bk.pJ,ds.APIError=bk.LG,ds.APIConnectionError=bk.xX,ds.APIConnectionTimeoutError=bk.qA,ds.APIUserAbortError=bk.cH,ds.NotFoundError=bk.m_,ds.ConflictError=bk.fK,ds.RateLimitError=bk.OE,ds.BadRequestError=bk.v7,ds.AuthenticationError=bk.v3,ds.InternalServerError=bk.PO,ds.PermissionDeniedError=bk.Ll,ds.UnprocessableEntityError=bk.Is,ds.toFile=cb;class dt extends ds{constructor(){super(...arguments),this.completions=new dg(this),this.messages=new dn(this),this.models=new dr(this),this.beta=new df(this)}}dt.Completions=dg,dt.Messages=dn,dt.Models=dr,dt.Beta=df,new TextEncoder},80629:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});let d=c(97025),e=c(31849),f=c(83593),g=c(83593);b.default={keyword:"patternProperties",type:"object",schemaType:"object",code(a){let{gen:b,schema:c,data:h,parentSchema:i,it:j}=a,{opts:k}=j,l=(0,d.allSchemaProperties)(c),m=l.filter(a=>(0,f.alwaysValidSchema)(j,c[a]));if(0===l.length||m.length===l.length&&(!j.opts.unevaluated||!0===j.props))return;let n=k.strictSchema&&!k.allowMatchingProperties&&i.properties,o=b.name("valid");!0===j.props||j.props instanceof e.Name||(j.props=(0,g.evaluatedPropsToName)(b,j.props));let{props:p}=j;for(let a of l)n&&function(a){for(let b in n)new RegExp(a).test(b)&&(0,f.checkStrictMode)(j,`property ${b} matches pattern ${a} (use allowMatchingProperties)`)}(a),j.allErrors?q(a):(b.var(o,!0),q(a),b.if(o));function q(c){b.forIn("key",h,f=>{b.if((0,e._)`${(0,d.usePattern)(a,c)}.test(${f})`,()=>{let d=m.includes(c);d||a.subschema({keyword:"patternProperties",schemaProp:c,dataProp:f,dataPropType:g.Type.Str},o),j.opts.unevaluated&&!0!==p?b.assign((0,e._)`${p}[${f}]`,!0):d||j.allErrors||b.if((0,e.not)(o),()=>b.break())})})}}}},80693:(a,b,c)=>{"use strict";c.d(b,{Z:()=>i});var d,e,f=c(93704),g=function(a,b,c,d,e){if("m"===d)throw TypeError("Private method is not writable");if("a"===d&&!e)throw TypeError("Private accessor was defined without a setter");if("function"==typeof b?a!==b||!e:!b.has(a))throw TypeError("Cannot write private member to an object whose class did not declare it");return"a"===d?e.call(a,c):e?e.value=c:b.set(a,c),c},h=function(a,b,c,d){if("a"===c&&!d)throw TypeError("Private accessor was defined without a getter");if("function"==typeof b?a!==b||!d:!b.has(a))throw TypeError("Cannot read private member from an object whose class did not declare it");return"m"===c?d:"a"===c?d.call(a):d?d.value:b.get(a)};class i extends f.Y{constructor(a,b,c={}){if(super(a,c),d.set(this,void 0),e.set(this,0),arguments.length<2)throw TypeError(`Failed to construct 'File': 2 arguments required, but only ${arguments.length} present.`);g(this,d,String(b),"f");let f=void 0===c.lastModified?Date.now():Number(c.lastModified);Number.isNaN(f)||g(this,e,f,"f")}static[(d=new WeakMap,e=new WeakMap,Symbol.hasInstance)](a){return a instanceof f.Y&&"File"===a[Symbol.toStringTag]&&"string"==typeof a.name}get name(){return h(this,d,"f")}get lastModified(){return h(this,e,"f")}get webkitRelativePath(){return""}get[Symbol.toStringTag](){return"File"}}},80876:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.LoginTicket=void 0;class c{envelope;payload;constructor(a,b){this.envelope=a,this.payload=b}getEnvelope(){return this.envelope}getPayload(){return this.payload}getUserId(){let a=this.getPayload();return a&&a.sub?a.sub:null}getAttributes(){return{envelope:this.getEnvelope(),payload:this.getPayload()}}}b.LoginTicket=c},81231:function(a,b,c){"use strict";var d=this&&this.__importDefault||function(a){return a&&a.__esModule?a:{default:a}};Object.defineProperty(b,"__esModule",{value:!0}),b.GaxiosError=b.GAXIOS_ERROR_SYMBOL=void 0,b.defaultErrorRedactor=function a(b){let c="<<REDACTED> - See `errorRedactor` option in `gaxios` for configuration>.";function d(a){a&&a.forEach((b,d)=>{(/^authentication$/i.test(d)||/^authorization$/i.test(d)||/secret/i.test(d))&&a.set(d,c)})}function e(a,b){if("object"==typeof a&&null!==a&&"string"==typeof a[b]){let d=a[b];(/grant_type=/i.test(d)||/assertion=/i.test(d)||/secret/i.test(d))&&(a[b]=c)}}function f(a){a&&"object"==typeof a&&(a instanceof FormData||a instanceof URLSearchParams||"forEach"in a&&"set"in a?a.forEach((b,d)=>{(["grant_type","assertion"].includes(d)||/secret/.test(d))&&a.set(d,c)}):("grant_type"in a&&(a.grant_type=c),"assertion"in a&&(a.assertion=c),"client_secret"in a&&(a.client_secret=c)))}return b.config&&(d(b.config.headers),e(b.config,"data"),f(b.config.data),e(b.config,"body"),f(b.config.body),b.config.url.searchParams.has("token")&&b.config.url.searchParams.set("token",c),b.config.url.searchParams.has("client_secret")&&b.config.url.searchParams.set("client_secret",c)),b.response&&(a({config:b.response.config}),d(b.response.headers),b.response.bodyUsed&&(e(b.response,"data"),f(b.response.data))),b};let e=d(c(77874)),f=d(c(57649)).default.pkg;b.GAXIOS_ERROR_SYMBOL=Symbol.for(`${f.name}-gaxios-error`);class g extends Error{config;response;code;status;error;[b.GAXIOS_ERROR_SYMBOL]=f.version;static[Symbol.hasInstance](a){return!!a&&"object"==typeof a&&b.GAXIOS_ERROR_SYMBOL in a&&a[b.GAXIOS_ERROR_SYMBOL]===f.version||Function.prototype[Symbol.hasInstance].call(g,a)}constructor(a,b,c,d){if(super(a,{cause:d}),this.config=b,this.response=c,this.error=d instanceof Error?d:void 0,this.config=(0,e.default)(!0,{},b),this.response&&(this.response.config=(0,e.default)(!0,{},this.response.config)),this.response){try{this.response.data=function(a,b){switch(a){case"stream":default:return b;case"json":return JSON.parse(JSON.stringify(b));case"arraybuffer":return JSON.parse(Buffer.from(b).toString("utf8"));case"blob":return JSON.parse(b.text())}}(this.config.responseType,this.response?.bodyUsed?this.response?.data:void 0)}catch{}this.status=this.response.status}d instanceof DOMException?this.code=d.name:d&&"object"==typeof d&&"code"in d&&("string"==typeof d.code||"number"==typeof d.code)&&(this.code=d.code)}static extractAPIErrorFromResponse(a,b="The request failed"){let c=b;if("string"==typeof a.data&&(c=a.data),a.data&&"object"==typeof a.data&&"error"in a.data&&a.data.error&&!a.ok){if("string"==typeof a.data.error)return{message:a.data.error,code:a.status,status:a.statusText};if("object"==typeof a.data.error){c="message"in a.data.error&&"string"==typeof a.data.error.message?a.data.error.message:c;let b="status"in a.data.error&&"string"==typeof a.data.error.status?a.data.error.status:a.statusText,d="code"in a.data.error&&"number"==typeof a.data.error.code?a.data.error.code:a.status;if("errors"in a.data.error&&Array.isArray(a.data.error.errors)){let e=[];for(let b of a.data.error.errors)"object"==typeof b&&"message"in b&&"string"==typeof b.message&&e.push(b.message);return Object.assign({message:e.join("\n")||c,code:d,status:b},a.data.error)}return Object.assign({message:c,code:d,status:b},a.data.error)}}return{message:c,code:a.status,status:a.statusText}}}b.GaxiosError=g},81278:(a,b,c)=>{b.formatArgs=function(b){if(b[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+b[0]+(this.useColors?"%c ":" ")+"+"+a.exports.humanize(this.diff),!this.useColors)return;let c="color: "+this.color;b.splice(1,0,c,"color: inherit");let d=0,e=0;b[0].replace(/%[a-zA-Z%]/g,a=>{"%%"!==a&&(d++,"%c"===a&&(e=d))}),b.splice(e,0,c)},b.save=function(a){try{a?b.storage.setItem("debug",a):b.storage.removeItem("debug")}catch(a){}},b.load=function(){let a;try{a=b.storage.getItem("debug")||b.storage.getItem("DEBUG")}catch(a){}return!a&&"undefined"!=typeof process&&"env"in process&&(a=process.env.DEBUG),a},b.useColors=function(){let a;return"undefined"!=typeof window&&!!window.process&&("renderer"===window.process.type||!!window.process.__nwjs)||!("undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))&&("undefined"!=typeof document&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||"undefined"!=typeof window&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||"undefined"!=typeof navigator&&navigator.userAgent&&(a=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(a[1],10)>=31||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/))},b.storage=function(){try{return localStorage}catch(a){}}(),b.destroy=(()=>{let a=!1;return()=>{a||(a=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})(),b.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"],b.log=console.debug||console.log||(()=>{}),a.exports=c(52097)(b);let{formatters:d}=a.exports;d.j=function(a){try{return JSON.stringify(a)}catch(a){return"[UnexpectedJSONParseError]: "+a.message}}},81333:function(a,b,c){"use strict";var d;let e=(this&&this.__importDefault||function(a){return a&&a.__esModule?a:{default:a}})(c(47106));function f(a){return new e.default(a)}(d=f||(f={})).HttpsProxyAgent=e.default,d.prototype=e.default.prototype,a.exports=f},81502:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.CodeGen=b.Name=b.nil=b.stringify=b.str=b._=b.KeywordCxt=void 0;var d=c(31638);Object.defineProperty(b,"KeywordCxt",{enumerable:!0,get:function(){return d.KeywordCxt}});var e=c(31849);Object.defineProperty(b,"_",{enumerable:!0,get:function(){return e._}}),Object.defineProperty(b,"str",{enumerable:!0,get:function(){return e.str}}),Object.defineProperty(b,"stringify",{enumerable:!0,get:function(){return e.stringify}}),Object.defineProperty(b,"nil",{enumerable:!0,get:function(){return e.nil}}),Object.defineProperty(b,"Name",{enumerable:!0,get:function(){return e.Name}}),Object.defineProperty(b,"CodeGen",{enumerable:!0,get:function(){return e.CodeGen}});let f=c(39590),g=c(84687),h=c(6286),i=c(73315),j=c(31849),k=c(53707),l=c(60906),m=c(83593),n=c(82007),o=c(32742),p=(a,b)=>new RegExp(a,b);p.code="new RegExp";let q=["removeAdditional","useDefaults","coerceTypes"],r=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),s={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},t={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'};class u{constructor(a={}){this.schemas={},this.refs={},this.formats=Object.create(null),this._compilations=new Set,this._loading={},this._cache=new Map,a=this.opts={...a,...function(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,q,r,s,t,u,v,w,x,y,z,A,B;let C=a.strict,D=null==(b=a.code)?void 0:b.optimize,E=!0===D||void 0===D?1:D||0,F=null!=(d=null==(c=a.code)?void 0:c.regExp)?d:p,G=null!=(e=a.uriResolver)?e:o.default;return{strictSchema:null==(g=null!=(f=a.strictSchema)?f:C)||g,strictNumbers:null==(i=null!=(h=a.strictNumbers)?h:C)||i,strictTypes:null!=(k=null!=(j=a.strictTypes)?j:C)?k:"log",strictTuples:null!=(m=null!=(l=a.strictTuples)?l:C)?m:"log",strictRequired:null!=(q=null!=(n=a.strictRequired)?n:C)&&q,code:a.code?{...a.code,optimize:E,regExp:F}:{optimize:E,regExp:F},loopRequired:null!=(r=a.loopRequired)?r:200,loopEnum:null!=(s=a.loopEnum)?s:200,meta:null==(t=a.meta)||t,messages:null==(u=a.messages)||u,inlineRefs:null==(v=a.inlineRefs)||v,schemaId:null!=(w=a.schemaId)?w:"$id",addUsedSchema:null==(x=a.addUsedSchema)||x,validateSchema:null==(y=a.validateSchema)||y,validateFormats:null==(z=a.validateFormats)||z,unicodeRegExp:null==(A=a.unicodeRegExp)||A,int32range:null==(B=a.int32range)||B,uriResolver:G}}(a)};let{es5:b,lines:c}=this.opts.code;this.scope=new j.ValueScope({scope:{},prefixes:r,es5:b,lines:c}),this.logger=function(a){if(!1===a)return B;if(void 0===a)return console;if(a.log&&a.warn&&a.error)return a;throw Error("logger must implement log, warn and error methods")}(a.logger);let d=a.validateFormats;a.validateFormats=!1,this.RULES=(0,h.getRules)(),v.call(this,s,a,"NOT SUPPORTED"),v.call(this,t,a,"DEPRECATED","warn"),this._metaOpts=A.call(this),a.formats&&y.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),a.keywords&&z.call(this,a.keywords),"object"==typeof a.meta&&this.addMetaSchema(a.meta),x.call(this),a.validateFormats=d}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:a,meta:b,schemaId:c}=this.opts,d=n;"id"===c&&((d={...n}).id=d.$id,delete d.$id),b&&a&&this.addMetaSchema(d,d[c],!1)}defaultMeta(){let{meta:a,schemaId:b}=this.opts;return this.opts.defaultMeta="object"==typeof a?a[b]||a:void 0}validate(a,b){let c;if("string"==typeof a){if(!(c=this.getSchema(a)))throw Error(`no schema with key or ref "${a}"`)}else c=this.compile(a);let d=c(b);return"$async"in c||(this.errors=c.errors),d}compile(a,b){let c=this._addSchema(a,b);return c.validate||this._compileSchemaEnv(c)}compileAsync(a,b){if("function"!=typeof this.opts.loadSchema)throw Error("options.loadSchema should be a function");let{loadSchema:c}=this.opts;return d.call(this,a,b);async function d(a,b){await e.call(this,a.$schema);let c=this._addSchema(a,b);return c.validate||f.call(this,c)}async function e(a){a&&!this.getSchema(a)&&await d.call(this,{$ref:a},!0)}async function f(a){try{return this._compileSchemaEnv(a)}catch(b){if(!(b instanceof g.default))throw b;return h.call(this,b),await i.call(this,b.missingSchema),f.call(this,a)}}function h({missingSchema:a,missingRef:b}){if(this.refs[a])throw Error(`AnySchema ${a} is loaded but ${b} cannot be resolved`)}async function i(a){let c=await j.call(this,a);this.refs[a]||await e.call(this,c.$schema),this.refs[a]||this.addSchema(c,a,b)}async function j(a){let b=this._loading[a];if(b)return b;try{return await (this._loading[a]=c(a))}finally{delete this._loading[a]}}}addSchema(a,b,c,d=this.opts.validateSchema){let e;if(Array.isArray(a)){for(let b of a)this.addSchema(b,void 0,c,d);return this}if("object"==typeof a){let{schemaId:b}=this.opts;if(void 0!==(e=a[b])&&"string"!=typeof e)throw Error(`schema ${b} must be string`)}return b=(0,k.normalizeId)(b||e),this._checkUnique(b),this.schemas[b]=this._addSchema(a,c,b,d,!0),this}addMetaSchema(a,b,c=this.opts.validateSchema){return this.addSchema(a,b,!0,c),this}validateSchema(a,b){let c;if("boolean"==typeof a)return!0;if(void 0!==(c=a.$schema)&&"string"!=typeof c)throw Error("$schema must be a string");if(!(c=c||this.opts.defaultMeta||this.defaultMeta()))return this.logger.warn("meta-schema not available"),this.errors=null,!0;let d=this.validate(c,a);if(!d&&b){let a="schema is invalid: "+this.errorsText();if("log"===this.opts.validateSchema)this.logger.error(a);else throw Error(a)}return d}getSchema(a){let b;for(;"string"==typeof(b=w.call(this,a));)a=b;if(void 0===b){let{schemaId:c}=this.opts,d=new i.SchemaEnv({schema:{},schemaId:c});if(!(b=i.resolveSchema.call(this,d,a)))return;this.refs[a]=b}return b.validate||this._compileSchemaEnv(b)}removeSchema(a){if(a instanceof RegExp)return this._removeAllSchemas(this.schemas,a),this._removeAllSchemas(this.refs,a),this;switch(typeof a){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let b=w.call(this,a);return"object"==typeof b&&this._cache.delete(b.schema),delete this.schemas[a],delete this.refs[a],this}case"object":{this._cache.delete(a);let b=a[this.opts.schemaId];return b&&(b=(0,k.normalizeId)(b),delete this.schemas[b],delete this.refs[b]),this}default:throw Error("ajv.removeSchema: invalid parameter")}}addVocabulary(a){for(let b of a)this.addKeyword(b);return this}addKeyword(a,b){let c;if("string"==typeof a)c=a,"object"==typeof b&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),b.keyword=c);else if("object"==typeof a&&void 0===b){if(Array.isArray(c=(b=a).keyword)&&!c.length)throw Error("addKeywords: keyword must be string or non-empty array")}else throw Error("invalid addKeywords parameters");if(D.call(this,c,b),!b)return(0,m.eachItem)(c,a=>E.call(this,a)),this;G.call(this,b);let d={...b,type:(0,l.getJSONTypes)(b.type),schemaType:(0,l.getJSONTypes)(b.schemaType)};return(0,m.eachItem)(c,0===d.type.length?a=>E.call(this,a,d):a=>d.type.forEach(b=>E.call(this,a,d,b))),this}getKeyword(a){let b=this.RULES.all[a];return"object"==typeof b?b.definition:!!b}removeKeyword(a){let{RULES:b}=this;for(let c of(delete b.keywords[a],delete b.all[a],b.rules)){let b=c.rules.findIndex(b=>b.keyword===a);b>=0&&c.rules.splice(b,1)}return this}addFormat(a,b){return"string"==typeof b&&(b=new RegExp(b)),this.formats[a]=b,this}errorsText(a=this.errors,{separator:b=", ",dataVar:c="data"}={}){return a&&0!==a.length?a.map(a=>`${c}${a.instancePath} ${a.message}`).reduce((a,c)=>a+b+c):"No errors"}$dataMetaSchema(a,b){let c=this.RULES.all;for(let d of(a=JSON.parse(JSON.stringify(a)),b)){let b=d.split("/").slice(1),e=a;for(let a of b)e=e[a];for(let a in c){let b=c[a];if("object"!=typeof b)continue;let{$data:d}=b.definition,f=e[a];d&&f&&(e[a]=I(f))}}return a}_removeAllSchemas(a,b){for(let c in a){let d=a[c];(!b||b.test(c))&&("string"==typeof d?delete a[c]:d&&!d.meta&&(this._cache.delete(d.schema),delete a[c]))}}_addSchema(a,b,c,d=this.opts.validateSchema,e=this.opts.addUsedSchema){let f,{schemaId:g}=this.opts;if("object"==typeof a)f=a[g];else if(this.opts.jtd)throw Error("schema must be object");else if("boolean"!=typeof a)throw Error("schema must be object or boolean");let h=this._cache.get(a);if(void 0!==h)return h;c=(0,k.normalizeId)(f||c);let j=k.getSchemaRefs.call(this,a,c);return h=new i.SchemaEnv({schema:a,schemaId:g,meta:b,baseId:c,localRefs:j}),this._cache.set(h.schema,h),e&&!c.startsWith("#")&&(c&&this._checkUnique(c),this.refs[c]=h),d&&this.validateSchema(a,!0),h}_checkUnique(a){if(this.schemas[a]||this.refs[a])throw Error(`schema with key or id "${a}" already exists`)}_compileSchemaEnv(a){if(a.meta?this._compileMetaSchema(a):i.compileSchema.call(this,a),!a.validate)throw Error("ajv implementation error");return a.validate}_compileMetaSchema(a){let b=this.opts;this.opts=this._metaOpts;try{i.compileSchema.call(this,a)}finally{this.opts=b}}}function v(a,b,c,d="error"){for(let e in a)e in b&&this.logger[d](`${c}: option ${e}. ${a[e]}`)}function w(a){return a=(0,k.normalizeId)(a),this.schemas[a]||this.refs[a]}function x(){let a=this.opts.schemas;if(a)if(Array.isArray(a))this.addSchema(a);else for(let b in a)this.addSchema(a[b],b)}function y(){for(let a in this.opts.formats){let b=this.opts.formats[a];b&&this.addFormat(a,b)}}function z(a){if(Array.isArray(a))return void this.addVocabulary(a);for(let b in this.logger.warn("keywords option as map is deprecated, pass array"),a){let c=a[b];c.keyword||(c.keyword=b),this.addKeyword(c)}}function A(){let a={...this.opts};for(let b of q)delete a[b];return a}u.ValidationError=f.default,u.MissingRefError=g.default,b.default=u;let B={log(){},warn(){},error(){}},C=/^[a-z_$][a-z0-9_$:-]*$/i;function D(a,b){let{RULES:c}=this;if((0,m.eachItem)(a,a=>{if(c.keywords[a])throw Error(`Keyword ${a} is already defined`);if(!C.test(a))throw Error(`Keyword ${a} has invalid name`)}),b&&b.$data&&!("code"in b||"validate"in b))throw Error('$data keyword must have "code" or "validate" function')}function E(a,b,c){var d;let e=null==b?void 0:b.post;if(c&&e)throw Error('keyword with "post" flag cannot have "type"');let{RULES:f}=this,g=e?f.post:f.rules.find(({type:a})=>a===c);if(g||(g={type:c,rules:[]},f.rules.push(g)),f.keywords[a]=!0,!b)return;let h={keyword:a,definition:{...b,type:(0,l.getJSONTypes)(b.type),schemaType:(0,l.getJSONTypes)(b.schemaType)}};b.before?F.call(this,g,h,b.before):g.rules.push(h),f.all[a]=h,null==(d=b.implements)||d.forEach(a=>this.addKeyword(a))}function F(a,b,c){let d=a.rules.findIndex(a=>a.keyword===c);d>=0?a.rules.splice(d,0,b):(a.rules.push(b),this.logger.warn(`rule ${c} is not defined`))}function G(a){let{metaSchema:b}=a;void 0!==b&&(a.$data&&this.opts.$data&&(b=I(b)),a.validateSchema=this.compile(b,!0))}let H={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function I(a){return{anyOf:[a,H]}}},82007:a=>{"use strict";a.exports=JSON.parse('{"$id":"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#","description":"Meta-schema for $data reference (JSON AnySchema extension proposal)","type":"object","required":["$data"],"properties":{"$data":{"type":"string","anyOf":[{"format":"relative-json-pointer"},{"format":"json-pointer"}]}},"additionalProperties":false}')},82156:function(a,b,c){var d;d=c(67278),c(70522),d.pad.ZeroPadding={pad:function(a,b){var c=4*b;a.clamp(),a.sigBytes+=c-(a.sigBytes%c||c)},unpad:function(a){for(var b=a.words,c=a.sigBytes-1,c=a.sigBytes-1;c>=0;c--)if(b[c>>>2]>>>24-c%4*8&255){a.sigBytes=c+1;break}}},a.exports=d.pad.ZeroPadding},82464:(a,b,c)=>{"use strict";let d;c.r(b),c.d(b,{MCPService:()=>eP,mcpService:()=>eQ});var e=c(43746),f=c(1708),g=c(57075),h=c(54494),i=c(15970);let j="2025-11-25",k=[j,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],l="io.modelcontextprotocol/related-task",m=h.Ie(a=>null!==a&&("object"==typeof a||"function"==typeof a)),n=h.KC([h.Yj(),h.ai().int()]),o=h.Yj();h._H({ttl:h.ai().optional(),pollInterval:h.ai().optional()});let p=h.Ik({ttl:h.ai().optional()}),q=h.Ik({taskId:h.Yj()}),r=h._H({progressToken:n.optional(),[l]:q.optional()}),s=h.Ik({_meta:r.optional()}),t=s.extend({task:p.optional()}),u=h.Ik({method:h.Yj(),params:s.loose().optional()}),v=h.Ik({_meta:r.optional()}),w=h.Ik({method:h.Yj(),params:v.loose().optional()}),x=h._H({_meta:r.optional()}),y=h.KC([h.Yj(),h.ai().int()]),z=h.Ik({jsonrpc:h.eu("2.0"),id:y,...u.shape}).strict(),A=a=>z.safeParse(a).success,B=h.Ik({jsonrpc:h.eu("2.0"),...w.shape}).strict(),C=h.Ik({jsonrpc:h.eu("2.0"),id:y,result:x}).strict(),D=a=>C.safeParse(a).success;!function(a){a[a.ConnectionClosed=-32e3]="ConnectionClosed",a[a.RequestTimeout=-32001]="RequestTimeout",a[a.ParseError=-32700]="ParseError",a[a.InvalidRequest=-32600]="InvalidRequest",a[a.MethodNotFound=-32601]="MethodNotFound",a[a.InvalidParams=-32602]="InvalidParams",a[a.InternalError=-32603]="InternalError",a[a.UrlElicitationRequired=-32042]="UrlElicitationRequired"}(dS||(dS={}));let E=h.Ik({jsonrpc:h.eu("2.0"),id:y.optional(),error:h.Ik({code:h.ai().int(),message:h.Yj(),data:h.L5().optional()})}).strict(),F=h.KC([z,B,C,E]);h.KC([C,E]);let G=x.strict(),H=v.extend({requestId:y.optional(),reason:h.Yj().optional()}),I=w.extend({method:h.eu("notifications/cancelled"),params:H}),J=h.Ik({src:h.Yj(),mimeType:h.Yj().optional(),sizes:h.YO(h.Yj()).optional(),theme:h.k5(["light","dark"]).optional()}),K=h.Ik({icons:h.YO(J).optional()}),L=h.Ik({name:h.Yj(),title:h.Yj().optional()}),M=L.extend({...L.shape,...K.shape,version:h.Yj(),websiteUrl:h.Yj().optional(),description:h.Yj().optional()}),N=h.E$(h.Ik({applyDefaults:h.zM().optional()}),h.g1(h.Yj(),h.L5())),O=h.vk(a=>a&&"object"==typeof a&&!Array.isArray(a)&&0===Object.keys(a).length?{form:{}}:a,h.E$(h.Ik({form:N.optional(),url:m.optional()}),h.g1(h.Yj(),h.L5()).optional())),P=h._H({list:m.optional(),cancel:m.optional(),requests:h._H({sampling:h._H({createMessage:m.optional()}).optional(),elicitation:h._H({create:m.optional()}).optional()}).optional()}),Q=h._H({list:m.optional(),cancel:m.optional(),requests:h._H({tools:h._H({call:m.optional()}).optional()}).optional()}),R=h.Ik({experimental:h.g1(h.Yj(),m).optional(),sampling:h.Ik({context:m.optional(),tools:m.optional()}).optional(),elicitation:O.optional(),roots:h.Ik({listChanged:h.zM().optional()}).optional(),tasks:P.optional(),extensions:h.g1(h.Yj(),m).optional()}),S=s.extend({protocolVersion:h.Yj(),capabilities:R,clientInfo:M}),T=u.extend({method:h.eu("initialize"),params:S}),U=h.Ik({experimental:h.g1(h.Yj(),m).optional(),logging:m.optional(),completions:m.optional(),prompts:h.Ik({listChanged:h.zM().optional()}).optional(),resources:h.Ik({subscribe:h.zM().optional(),listChanged:h.zM().optional()}).optional(),tools:h.Ik({listChanged:h.zM().optional()}).optional(),tasks:Q.optional(),extensions:h.g1(h.Yj(),m).optional()}),V=x.extend({protocolVersion:h.Yj(),capabilities:U,serverInfo:M,instructions:h.Yj().optional()}),W=w.extend({method:h.eu("notifications/initialized"),params:v.optional()}),X=u.extend({method:h.eu("ping"),params:s.optional()}),Y=h.Ik({progress:h.ai(),total:h.lq(h.ai()),message:h.lq(h.Yj())}),Z=h.Ik({...v.shape,...Y.shape,progressToken:n}),$=w.extend({method:h.eu("notifications/progress"),params:Z}),_=s.extend({cursor:o.optional()}),aa=u.extend({params:_.optional()}),ab=x.extend({nextCursor:o.optional()}),ac=h.k5(["working","input_required","completed","failed","cancelled"]),ad=h.Ik({taskId:h.Yj(),status:ac,ttl:h.KC([h.ai(),h.ch()]),createdAt:h.Yj(),lastUpdatedAt:h.Yj(),pollInterval:h.lq(h.ai()),statusMessage:h.lq(h.Yj())}),ae=x.extend({task:ad}),af=v.merge(ad),ag=w.extend({method:h.eu("notifications/tasks/status"),params:af}),ah=u.extend({method:h.eu("tasks/get"),params:s.extend({taskId:h.Yj()})}),ai=x.merge(ad),aj=u.extend({method:h.eu("tasks/result"),params:s.extend({taskId:h.Yj()})});x.loose();let ak=aa.extend({method:h.eu("tasks/list")}),al=ab.extend({tasks:h.YO(ad)}),am=u.extend({method:h.eu("tasks/cancel"),params:s.extend({taskId:h.Yj()})}),an=x.merge(ad),ao=h.Ik({uri:h.Yj(),mimeType:h.lq(h.Yj()),_meta:h.g1(h.Yj(),h.L5()).optional()}),ap=ao.extend({text:h.Yj()}),aq=h.Yj().refine(a=>{try{return atob(a),!0}catch{return!1}},{message:"Invalid Base64 string"}),ar=ao.extend({blob:aq}),as=h.k5(["user","assistant"]),at=h.Ik({audience:h.YO(as).optional(),priority:h.ai().min(0).max(1).optional(),lastModified:i.w$({offset:!0}).optional()}),au=h.Ik({...L.shape,...K.shape,uri:h.Yj(),description:h.lq(h.Yj()),mimeType:h.lq(h.Yj()),size:h.lq(h.ai()),annotations:at.optional(),_meta:h.lq(h._H({}))}),av=h.Ik({...L.shape,...K.shape,uriTemplate:h.Yj(),description:h.lq(h.Yj()),mimeType:h.lq(h.Yj()),annotations:at.optional(),_meta:h.lq(h._H({}))}),aw=aa.extend({method:h.eu("resources/list")}),ax=ab.extend({resources:h.YO(au)}),ay=aa.extend({method:h.eu("resources/templates/list")}),az=ab.extend({resourceTemplates:h.YO(av)}),aA=s.extend({uri:h.Yj()}),aB=u.extend({method:h.eu("resources/read"),params:aA}),aC=x.extend({contents:h.YO(h.KC([ap,ar]))}),aD=w.extend({method:h.eu("notifications/resources/list_changed"),params:v.optional()}),aE=u.extend({method:h.eu("resources/subscribe"),params:aA}),aF=u.extend({method:h.eu("resources/unsubscribe"),params:aA}),aG=v.extend({uri:h.Yj()}),aH=w.extend({method:h.eu("notifications/resources/updated"),params:aG}),aI=h.Ik({name:h.Yj(),description:h.lq(h.Yj()),required:h.lq(h.zM())}),aJ=h.Ik({...L.shape,...K.shape,description:h.lq(h.Yj()),arguments:h.lq(h.YO(aI)),_meta:h.lq(h._H({}))}),aK=aa.extend({method:h.eu("prompts/list")}),aL=ab.extend({prompts:h.YO(aJ)}),aM=s.extend({name:h.Yj(),arguments:h.g1(h.Yj(),h.Yj()).optional()}),aN=u.extend({method:h.eu("prompts/get"),params:aM}),aO=h.Ik({type:h.eu("text"),text:h.Yj(),annotations:at.optional(),_meta:h.g1(h.Yj(),h.L5()).optional()}),aP=h.Ik({type:h.eu("image"),data:aq,mimeType:h.Yj(),annotations:at.optional(),_meta:h.g1(h.Yj(),h.L5()).optional()}),aQ=h.Ik({type:h.eu("audio"),data:aq,mimeType:h.Yj(),annotations:at.optional(),_meta:h.g1(h.Yj(),h.L5()).optional()}),aR=h.Ik({type:h.eu("tool_use"),name:h.Yj(),id:h.Yj(),input:h.g1(h.Yj(),h.L5()),_meta:h.g1(h.Yj(),h.L5()).optional()}),aS=h.Ik({type:h.eu("resource"),resource:h.KC([ap,ar]),annotations:at.optional(),_meta:h.g1(h.Yj(),h.L5()).optional()}),aT=au.extend({type:h.eu("resource_link")}),aU=h.KC([aO,aP,aQ,aT,aS]),aV=h.Ik({role:as,content:aU}),aW=x.extend({description:h.Yj().optional(),messages:h.YO(aV)}),aX=w.extend({method:h.eu("notifications/prompts/list_changed"),params:v.optional()}),aY=h.Ik({title:h.Yj().optional(),readOnlyHint:h.zM().optional(),destructiveHint:h.zM().optional(),idempotentHint:h.zM().optional(),openWorldHint:h.zM().optional()}),aZ=h.Ik({taskSupport:h.k5(["required","optional","forbidden"]).optional()}),a$=h.Ik({...L.shape,...K.shape,description:h.Yj().optional(),inputSchema:h.Ik({type:h.eu("object"),properties:h.g1(h.Yj(),m).optional(),required:h.YO(h.Yj()).optional()}).catchall(h.L5()),outputSchema:h.Ik({type:h.eu("object"),properties:h.g1(h.Yj(),m).optional(),required:h.YO(h.Yj()).optional()}).catchall(h.L5()).optional(),annotations:aY.optional(),execution:aZ.optional(),_meta:h.g1(h.Yj(),h.L5()).optional()}),a_=aa.extend({method:h.eu("tools/list")}),a0=ab.extend({tools:h.YO(a$)}),a1=x.extend({content:h.YO(aU).default([]),structuredContent:h.g1(h.Yj(),h.L5()).optional(),isError:h.zM().optional()});a1.or(x.extend({toolResult:h.L5()}));let a2=t.extend({name:h.Yj(),arguments:h.g1(h.Yj(),h.L5()).optional()}),a3=u.extend({method:h.eu("tools/call"),params:a2}),a4=w.extend({method:h.eu("notifications/tools/list_changed"),params:v.optional()}),a5=h.Ik({autoRefresh:h.zM().default(!0),debounceMs:h.ai().int().nonnegative().default(300)}),a6=h.k5(["debug","info","notice","warning","error","critical","alert","emergency"]),a7=s.extend({level:a6}),a8=u.extend({method:h.eu("logging/setLevel"),params:a7}),a9=v.extend({level:a6,logger:h.Yj().optional(),data:h.L5()}),ba=w.extend({method:h.eu("notifications/message"),params:a9}),bb=h.Ik({name:h.Yj().optional()}),bc=h.Ik({hints:h.YO(bb).optional(),costPriority:h.ai().min(0).max(1).optional(),speedPriority:h.ai().min(0).max(1).optional(),intelligencePriority:h.ai().min(0).max(1).optional()}),bd=h.Ik({mode:h.k5(["auto","required","none"]).optional()}),be=h.Ik({type:h.eu("tool_result"),toolUseId:h.Yj().describe("The unique identifier for the corresponding tool call."),content:h.YO(aU).default([]),structuredContent:h.Ik({}).loose().optional(),isError:h.zM().optional(),_meta:h.g1(h.Yj(),h.L5()).optional()}),bf=h.gM("type",[aO,aP,aQ]),bg=h.gM("type",[aO,aP,aQ,aR,be]),bh=h.Ik({role:as,content:h.KC([bg,h.YO(bg)]),_meta:h.g1(h.Yj(),h.L5()).optional()}),bi=t.extend({messages:h.YO(bh),modelPreferences:bc.optional(),systemPrompt:h.Yj().optional(),includeContext:h.k5(["none","thisServer","allServers"]).optional(),temperature:h.ai().optional(),maxTokens:h.ai().int(),stopSequences:h.YO(h.Yj()).optional(),metadata:m.optional(),tools:h.YO(a$).optional(),toolChoice:bd.optional()}),bj=u.extend({method:h.eu("sampling/createMessage"),params:bi}),bk=x.extend({model:h.Yj(),stopReason:h.lq(h.k5(["endTurn","stopSequence","maxTokens"]).or(h.Yj())),role:as,content:bf}),bl=x.extend({model:h.Yj(),stopReason:h.lq(h.k5(["endTurn","stopSequence","maxTokens","toolUse"]).or(h.Yj())),role:as,content:h.KC([bg,h.YO(bg)])}),bm=h.Ik({type:h.eu("boolean"),title:h.Yj().optional(),description:h.Yj().optional(),default:h.zM().optional()}),bn=h.Ik({type:h.eu("string"),title:h.Yj().optional(),description:h.Yj().optional(),minLength:h.ai().optional(),maxLength:h.ai().optional(),format:h.k5(["email","uri","date","date-time"]).optional(),default:h.Yj().optional()}),bo=h.Ik({type:h.k5(["number","integer"]),title:h.Yj().optional(),description:h.Yj().optional(),minimum:h.ai().optional(),maximum:h.ai().optional(),default:h.ai().optional()}),bp=h.Ik({type:h.eu("string"),title:h.Yj().optional(),description:h.Yj().optional(),enum:h.YO(h.Yj()),default:h.Yj().optional()}),bq=h.Ik({type:h.eu("string"),title:h.Yj().optional(),description:h.Yj().optional(),oneOf:h.YO(h.Ik({const:h.Yj(),title:h.Yj()})),default:h.Yj().optional()}),br=h.Ik({type:h.eu("string"),title:h.Yj().optional(),description:h.Yj().optional(),enum:h.YO(h.Yj()),enumNames:h.YO(h.Yj()).optional(),default:h.Yj().optional()}),bs=h.KC([bp,bq]),bt=h.Ik({type:h.eu("array"),title:h.Yj().optional(),description:h.Yj().optional(),minItems:h.ai().optional(),maxItems:h.ai().optional(),items:h.Ik({type:h.eu("string"),enum:h.YO(h.Yj())}),default:h.YO(h.Yj()).optional()}),bu=h.Ik({type:h.eu("array"),title:h.Yj().optional(),description:h.Yj().optional(),minItems:h.ai().optional(),maxItems:h.ai().optional(),items:h.Ik({anyOf:h.YO(h.Ik({const:h.Yj(),title:h.Yj()}))}),default:h.YO(h.Yj()).optional()}),bv=h.KC([bt,bu]),bw=h.KC([br,bs,bv]),bx=h.KC([bw,bm,bn,bo]),by=t.extend({mode:h.eu("form").optional(),message:h.Yj(),requestedSchema:h.Ik({type:h.eu("object"),properties:h.g1(h.Yj(),bx),required:h.YO(h.Yj()).optional()})}),bz=t.extend({mode:h.eu("url"),message:h.Yj(),elicitationId:h.Yj(),url:h.Yj().url()}),bA=h.KC([by,bz]),bB=u.extend({method:h.eu("elicitation/create"),params:bA}),bC=v.extend({elicitationId:h.Yj()}),bD=w.extend({method:h.eu("notifications/elicitation/complete"),params:bC}),bE=x.extend({action:h.k5(["accept","decline","cancel"]),content:h.vk(a=>null===a?void 0:a,h.g1(h.Yj(),h.KC([h.Yj(),h.ai(),h.zM(),h.YO(h.Yj())])).optional())}),bF=h.Ik({type:h.eu("ref/resource"),uri:h.Yj()}),bG=h.Ik({type:h.eu("ref/prompt"),name:h.Yj()}),bH=s.extend({ref:h.KC([bG,bF]),argument:h.Ik({name:h.Yj(),value:h.Yj()}),context:h.Ik({arguments:h.g1(h.Yj(),h.Yj()).optional()}).optional()}),bI=u.extend({method:h.eu("completion/complete"),params:bH}),bJ=x.extend({completion:h._H({values:h.YO(h.Yj()).max(100),total:h.lq(h.ai().int()),hasMore:h.lq(h.zM())})}),bK=h.Ik({uri:h.Yj().startsWith("file://"),name:h.Yj().optional(),_meta:h.g1(h.Yj(),h.L5()).optional()}),bL=u.extend({method:h.eu("roots/list"),params:s.optional()}),bM=x.extend({roots:h.YO(bK)}),bN=w.extend({method:h.eu("notifications/roots/list_changed"),params:v.optional()});h.KC([X,T,bI,a8,aN,aK,aw,ay,aB,aE,aF,a3,a_,ah,aj,ak,am]),h.KC([I,$,W,bN,ag]),h.KC([G,bk,bl,bE,bM,ai,al,ae]),h.KC([X,bj,bB,bL,ah,aj,ak,am]),h.KC([I,$,ba,aH,aD,a4,aX,ag,bD]),h.KC([G,V,bJ,aW,aL,ax,az,aC,a1,a0,ai,al,ae]);class bO extends Error{constructor(a,b,c){super(`MCP error ${a}: ${b}`),this.code=a,this.data=c,this.name="McpError"}static fromError(a,b,c){return a===dS.UrlElicitationRequired&&c&&c.elicitations?new bP(c.elicitations,b):new bO(a,b,c)}}class bP extends bO{constructor(a,b=`URL elicitation${a.length>1?"s":""} required`){super(dS.UrlElicitationRequired,b,{elicitations:a})}get elicitations(){return this.data?.elicitations??[]}}class bQ{append(a){this._buffer=this._buffer?Buffer.concat([this._buffer,a]):a}readMessage(){var a;if(!this._buffer)return null;let b=this._buffer.indexOf("\n");if(-1===b)return null;let c=this._buffer.toString("utf8",0,b).replace(/\r$/,"");return this._buffer=this._buffer.subarray(b+1),a=c,F.parse(JSON.parse(a))}clear(){this._buffer=void 0}}let bR="win32"===f.platform?["APPDATA","HOMEDRIVE","HOMEPATH","LOCALAPPDATA","PATH","PROCESSOR_ARCHITECTURE","SYSTEMDRIVE","SYSTEMROOT","TEMP","USERNAME","USERPROFILE","PROGRAMFILES"]:["HOME","LOGNAME","PATH","SHELL","TERM","USER"];class bS{constructor(a){this._readBuffer=new bQ,this._stderrStream=null,this._serverParams=a,("pipe"===a.stderr||"overlapped"===a.stderr)&&(this._stderrStream=new g.PassThrough)}async start(){if(this._process)throw Error("StdioClientTransport already started! If using Client class, note that connect() calls start() automatically.");return new Promise((a,b)=>{this._process=e(this._serverParams.command,this._serverParams.args??[],{env:{...function(){let a={};for(let b of bR){let c=f.env[b];void 0!==c&&(c.startsWith("()")||(a[b]=c))}return a}(),...this._serverParams.env},stdio:["pipe","pipe",this._serverParams.stderr??"inherit"],shell:!1,windowsHide:"win32"===f.platform,cwd:this._serverParams.cwd}),this._process.on("error",a=>{b(a),this.onerror?.(a)}),this._process.on("spawn",()=>{a()}),this._process.on("close",a=>{this._process=void 0,this.onclose?.()}),this._process.stdin?.on("error",a=>{this.onerror?.(a)}),this._process.stdout?.on("data",a=>{this._readBuffer.append(a),this.processReadBuffer()}),this._process.stdout?.on("error",a=>{this.onerror?.(a)}),this._stderrStream&&this._process.stderr&&this._process.stderr.pipe(this._stderrStream)})}get stderr(){return this._stderrStream?this._stderrStream:this._process?.stderr??null}get pid(){return this._process?.pid??null}processReadBuffer(){for(;;)try{let a=this._readBuffer.readMessage();if(null===a)break;this.onmessage?.(a)}catch(a){this.onerror?.(a)}}async close(){if(this._process){let a=this._process;this._process=void 0;let b=new Promise(b=>{a.once("close",()=>{b()})});try{a.stdin?.end()}catch{}if(await Promise.race([b,new Promise(a=>setTimeout(a,2e3).unref())]),null===a.exitCode){try{a.kill("SIGTERM")}catch{}await Promise.race([b,new Promise(a=>setTimeout(a,2e3).unref())])}if(null===a.exitCode)try{a.kill("SIGKILL")}catch{}}this._readBuffer.clear()}send(a){return new Promise(b=>{if(!this._process?.stdin)throw Error("Not connected");let c=JSON.stringify(a)+"\n";this._process.stdin.write(c)?b():this._process.stdin.once("drain",b)})}}var bT=c(89850),bU=c(79748),bV=c.n(bU),bW=c(33873),bX=c.n(bW),bY=c(18230),bZ=c(63129);async function b$(a,b,c){if(0===a.length)return;let d=0,e=async()=>{for(;;){let b=d++;if(b>=a.length)return;await c(a[b])}},f=Math.min(Math.max(1,Math.floor(b)||1),a.length);await Promise.all(Array.from({length:f},()=>e()))}var b_=c(6544),b0=c(87507);let b1=(0,bY.h)("backend/services/mcp/tools"),b2=0x80000000-1;async function b3(a,b){if(b1.debug("Entering listServerTools method"),!a)return b1.warn(`Server ${b} not connected`),{tools:[],error:"Server not connected"};try{b1.info(`Listing tools for server ${b}`);let c=await a.listTools();b1.verbose("Raw response from MCP server:",c);let d=(c.tools||[]).map(a=>({name:a.name,description:a.description||"",inputSchema:a.inputSchema||{}}));return b1.verbose("Processed tools:",d),{tools:d}}catch(c){b1.warn(`Failed to list tools for server ${b}:`,c);let a=c instanceof Error?c.message:"Unknown error";return{tools:[],error:a.includes("Connection timeout")?a:`Failed to list tools: ${a}`}}}async function b4(a,b,c,d,e,f){if(b1.debug("Entering callTool method"),!a)return b1.warn(`Server ${b} not found`),{success:!1,error:`Server ${b} not found`,statusCode:404};let g=void 0!==e&&e>0?Math.min(1e3*e,b2):b2;try{b1.debug(`Original args for tool ${c}:`,d);let b=await (0,b0.c)(d),e=function(a,b){if(!a)return{};let c={};for(let d in a){let e=a[d];null==e?(b1.debug(`Normalizing undefined/null value for parameter '${d}' in tool '${b}'`),d.includes("number")||d.endsWith("Count")||d.endsWith("Id")||d.endsWith("Limit")?(c[d]=0,b1.debug(`Using default value 0 for likely number parameter: ${d}`)):d.includes("bool")||d.startsWith("is")||d.startsWith("has")||d.startsWith("should")?(c[d]=!1,b1.debug(`Using default value false for likely boolean parameter: ${d}`)):d.includes("array")||d.endsWith("s")||d.endsWith("List")||d.endsWith("Items")?(c[d]=[],b1.debug(`Using empty array for likely array parameter: ${d}`)):d.includes("object")||d.endsWith("Options")||d.endsWith("Config")||d.endsWith("Settings")?(c[d]={},b1.debug(`Using empty object for likely object parameter: ${d}`)):(c[d]="",b1.debug(`Using empty string for parameter with unknown type: ${d}`))):c[d]=e}return c}("object"==typeof b&&null!==b?b:{},c);b1.debug(`Normalized args for tool ${c}:`,e),b1.debug(`Calling tool ${c} with SDK timeout ${g}ms`);let h=await a.callTool({name:c,arguments:e},void 0,{timeout:g,resetTimeoutOnProgress:!0,onprogress:a=>{b1.debug(`Progress for tool ${c}: ${a.progress}${void 0!==a.total?`/${a.total}`:""}${a.message?` — ${a.message}`:""}`),f?.(a)}});return{success:!0,data:h}}catch(e){b1.warn(`Failed to call tool ${c} on server ${b}:`,e);let a=e instanceof Error?e.message:"Unknown error",d=500;if(e instanceof bO&&e.code===dS.RequestTimeout){let a=Math.round(g/1e3);return b1.warn(`Tool ${c} execution timed out after ${a} seconds`),{success:!1,error:`Tool execution timed out after ${a} seconds`,errorType:"timeout",toolName:c,timeout:a,statusCode:408}}if(a.includes("401")||a.includes("Unauthorized")||a.includes("invalid_token")||a.includes("token_expired"))return b1.info(`OAuth authentication error detected for tool ${c} on server ${b}`),{success:!1,error:"OAuth authentication failed or tokens have expired. Please re-authenticate the server.",statusCode:401,requiresAuthentication:!0};return(a.includes("404")||a.includes("Not Found"))&&(b1.info(`404 error detected for tool ${c} on server ${b} - may indicate OAuth issues`),d=404,a="Tool endpoint not found (404). This may indicate OAuth authentication issues or the server may not be properly configured."),e instanceof bO?(a=`Failed to call tool: ${a} (Code: ${e.code})`,-32601===e.code?d=404:-32602===e.code?d=400:-32603===e.code&&(d=500)):a=`Failed to call tool: ${a}`,{success:!1,error:a,statusCode:d}}}let b5=(0,bY.h)("backend/services/mcp/resources");async function b6(a,b){if(b5.debug("Entering listServerResources method"),!a)return b5.warn(`Server ${b} not connected`),{resources:[],error:"Server not connected"};try{b5.info(`Listing resources for server ${b}`);let c=(await a.listResources()).resources||[];return b5.verbose("Processed resources:",c),{resources:c}}catch(c){if(c instanceof bO&&-32601===c.code)return b5.debug(`Server ${b} does not support resources/list`),{resources:[]};b5.warn(`Failed to list resources for server ${b}:`,c);let a=c instanceof Error?c.message:"Unknown error";return{resources:[],error:a.includes("Connection timeout")?a:`Failed to list resources: ${a}`}}}async function b7(a,b){if(b5.debug("Entering listServerResourceTemplates method"),!a)return b5.warn(`Server ${b} not connected`),{resourceTemplates:[],error:"Server not connected"};try{return b5.info(`Listing resource templates for server ${b}`),{resourceTemplates:(await a.listResourceTemplates()).resourceTemplates||[]}}catch(c){if(c instanceof bO&&-32601===c.code)return b5.debug(`Server ${b} does not support resources/templates/list`),{resourceTemplates:[]};b5.warn(`Failed to list resource templates for server ${b}:`,c);let a=c instanceof Error?c.message:"Unknown error";return{resourceTemplates:[],error:a.includes("Connection timeout")?a:`Failed to list resource templates: ${a}`}}}async function b8(a,b,c){if(b5.debug("Entering readResource method"),!a)return b5.warn(`Server ${b} not found`),{success:!1,error:`Server ${b} not found`,statusCode:404};try{let d=await (0,b0.c)(c);b5.info(`Reading resource ${d} from server ${b}`);let e=await a.readResource({uri:d});return{success:!0,data:e}}catch(e){b5.warn(`Failed to read resource ${c} on server ${b}:`,e);let a=e instanceof Error?e.message:"Unknown error",d=500;return e instanceof bO?(a=`Failed to read resource: ${a} (Code: ${e.code})`,-32601===e.code?d=404:-32602===e.code&&(d=400)):a=`Failed to read resource: ${a}`,{success:!1,error:a,statusCode:d}}}let b9=(0,bY.h)("backend/services/mcp/prompts");async function ca(a,b){if(b9.debug("Entering listServerPrompts method"),!a)return b9.warn(`Server ${b} not connected`),{prompts:[],error:"Server not connected"};try{return b9.info(`Listing prompts for server ${b}`),{prompts:(await a.listPrompts()).prompts||[]}}catch(c){if(c instanceof bO&&-32601===c.code)return b9.debug(`Server ${b} does not support prompts/list`),{prompts:[]};b9.warn(`Failed to list prompts for server ${b}:`,c);let a=c instanceof Error?c.message:"Unknown error";return{prompts:[],error:a.includes("Connection timeout")?a:`Failed to list prompts: ${a}`}}}async function cb(a,b,c,d){if(b9.debug("Entering getPrompt method"),!a)return b9.warn(`Server ${b} not found`),{success:!1,error:`Server ${b} not found`,statusCode:404};try{let e;if(d&&Object.keys(d).length>0){let a=await (0,b0.c)(d);e="object"==typeof a&&null!==a?a:void 0}b9.info(`Getting prompt ${c} from server ${b}`);let f=await a.getPrompt({name:c,arguments:e});return{success:!0,data:f}}catch(e){b9.warn(`Failed to get prompt ${c} on server ${b}:`,e);let a=e instanceof Error?e.message:"Unknown error",d=500;return e instanceof bO?(a=`Failed to get prompt: ${a} (Code: ${e.code})`,-32601===e.code?d=404:-32602===e.code&&(d=400)):a=`Failed to get prompt: ${a}`,{success:!1,error:a,statusCode:d}}}var cc=c(29021),cd=c(21820),ce=c(69088);let cf=(0,bY.h)("app/api/mcp/utils");function cg(a){let b=a.transport?._abortController;return b?.signal.aborted===!0}function ch(a){return cf.debug("Entering isLikelyFilePath method"),a.includes(".")&&(a.includes("/")||a.includes("\\")||/\.[a-zA-Z0-9]+$/.test(a))}let ci=new Set(["UNABLE_TO_VERIFY_LEAF_SIGNATURE","UNABLE_TO_GET_ISSUER_CERT_LOCALLY","UNABLE_TO_GET_ISSUER_CERT","SELF_SIGNED_CERT_IN_CHAIN","DEPTH_ZERO_SELF_SIGNED_CERT","CERT_HAS_EXPIRED","CERT_UNTRUSTED","ERR_TLS_CERT_ALTNAME_INVALID"]),cj=/unable to verify|self[- ]signed certificate|certificate has expired|altname|leaf signature|unable to get local issuer/i;function ck(a){let{messages:b,codes:c}=function(a){let b=[],c=[],d=a,e=0;for(;d&&e<10;){if(d instanceof Error){d.message&&b.push(d.message);let a=d.code;"string"==typeof a&&c.push(a)}else"string"==typeof d&&b.push(d);let a=d?.cause,f=d?.errors;if(a)d=a;else if(Array.isArray(f)&&f.length>0)d=f[0];else break;e++}return{messages:b,codes:c}}(a),d=Array.from(new Set(b.filter(Boolean))),e=d.join(": ");e||(e=a instanceof Error?a.message||a.name:String(a));let f=Array.from(new Set(c));return f.length>0&&!f.some(a=>e.includes(a))&&(e+=` (${f.join(", ")})`),(f.some(a=>ci.has(a))||d.some(a=>cj.test(a)))&&(e+=`
134
+ Please migrate to a newer model. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.`),dq.includes(a.model)&&a.thinking&&"enabled"===a.thinking.type&&console.warn(`Using Claude with ${a.model} and 'thinking.type=enabled' is deprecated. Use 'thinking.type=adaptive' instead which results in better model performance in our testing: https://platform.claude.com/docs/en/build-with-claude/adaptive-thinking`);let c=this._client._options.timeout;if(!a.stream&&null==c){let b=cR[a.model]??void 0;c=this._client.calculateNonstreamingTimeout(a.max_tokens,b)}let d=co(a.tools,a.messages);return this._client.post("/v1/messages",{body:a,timeout:c??6e5,...b,headers:cf([d,b?.headers]),stream:a.stream??!1})}parse(a,b){return this.create(a,b).then(b=>dj(b,a,{logger:this._client.logger??console}))}stream(a,b){return dl.createMessage(this,a,b,{logger:this._client.logger??console})}countTokens(a,b){return this._client.post("/v1/messages/count_tokens",{body:a,...b})}}let dp={"claude-1.3":"November 6th, 2024","claude-1.3-100k":"November 6th, 2024","claude-instant-1.1":"November 6th, 2024","claude-instant-1.1-100k":"November 6th, 2024","claude-instant-1.2":"November 6th, 2024","claude-3-sonnet-20240229":"July 21st, 2025","claude-3-opus-20240229":"January 5th, 2026","claude-2.1":"July 21st, 2025","claude-2.0":"July 21st, 2025","claude-3-7-sonnet-latest":"February 19th, 2026","claude-3-7-sonnet-20250219":"February 19th, 2026","claude-3-5-haiku-latest":"February 19th, 2026","claude-3-5-haiku-20241022":"February 19th, 2026","claude-opus-4-0":"June 15th, 2026","claude-opus-4-20250514":"June 15th, 2026","claude-sonnet-4-0":"June 15th, 2026","claude-sonnet-4-20250514":"June 15th, 2026","claude-opus-4-1":"August 5th, 2026","claude-opus-4-1-20250805":"August 5th, 2026","claude-mythos-preview":"June 30th, 2026"},dq=["claude-mythos-preview","claude-opus-4-6"];dn.Batches=dm;class dr extends cd{retrieve(a,b={},c){let{betas:d}=b??{};return this._client.get(ci`/v1/models/${a}`,{...c,headers:cf([{...d?.toString()!=null?{"anthropic-beta":d?.toString()}:void 0},c?.headers])})}list(a={},b){let{betas:c,...d}=a??{};return this._client.getAPIList("/v1/models",b$,{query:d,...b,headers:cf([{...c?.toString()!=null?{"anthropic-beta":c?.toString()}:void 0},b?.headers])})}}class ds{get credentials(){return this._authState.provider}constructor({baseURL:a=(0,bx.s)("ANTHROPIC_BASE_URL"),apiKey:b,authToken:c,webhookKey:d=(0,bx.s)("ANTHROPIC_WEBHOOK_SIGNING_KEY")??null,...e}={}){if(a1.add(this),this._requestAuthFlags=new WeakMap,a3.set(this,void 0),void 0===b&&(b=null!=e.profile?null:(0,bx.s)("ANTHROPIC_API_KEY")??null),void 0===c&&(c=null!=e.profile?null:(0,bx.s)("ANTHROPIC_AUTH_TOKEN")??null),null!=e.profile&&(null!=e.credentials||null!=e.config))throw TypeError("Pass at most one of `profile`, `credentials`, or `config`.");let f={apiKey:b,authToken:c,webhookKey:d,...e,baseURL:a||"https://api.anthropic.com"};if(!f.dangerouslyAllowBrowser&&"undefined"!=typeof window&&void 0!==window.document&&"undefined"!=typeof navigator)throw new bk.pJ("It looks like you're running in a browser-like environment.\n\nThis is disabled by default, as it risks exposing your secret API credentials to attackers.\nIf you understand the risks and have appropriate mitigations in place,\nyou can set the `dangerouslyAllowBrowser` option to `true`, e.g.,\n\nnew Anthropic({ apiKey, dangerouslyAllowBrowser: true });\n");this.baseURL=f.baseURL,this._baseURLIsExplicit=e.__baseURLIsExplicit??!!a,this.timeout=f.timeout??a2.DEFAULT_TIMEOUT,this.logger=f.logger??console,this.logLevel=bM.Ic,this.logLevel=(0,bM.ML)(f.logLevel,"ClientOptions.logLevel",(0,bM.WG)(this))??(0,bM.ML)((0,bx.s)("ANTHROPIC_LOG"),"process.env['ANTHROPIC_LOG']",(0,bM.WG)(this))??bM.Ic,this.fetchOptions=f.fetchOptions,this.maxRetries=f.maxRetries??2,this.fetch=f.fetch??function(){if("undefined"!=typeof fetch)return fetch;throw Error("`fetch` is not defined as a global; Either pass `fetch` to the client, `new Anthropic({ fetch })` or polyfill the global, `globalThis.fetch = fetch`")}(),(0,a5.G)(this,a3,bi,"f"),this.middleware=[...f.middleware??[]];let g=(0,bx.s)("ANTHROPIC_CUSTOM_HEADERS");if(g){let a={};for(let b of g.split("\n")){let c=b.indexOf(":");c>=0&&(a[b.substring(0,c).trim()]=b.substring(c+1).trim())}f.defaultHeaders={...a,...f.defaultHeaders}}let h=e.__auth;if(delete f.__auth,delete f.__baseURLIsExplicit,this._options=f,this.apiKey="string"==typeof b?b:null,this.authToken=c,this.webhookKey=d,h)this._authState=h,!this._baseURLIsExplicit&&h.baseURL&&(this.baseURL=h.baseURL);else if(this._authState={provider:null,tokenCache:null,resolution:null,error:null,extraHeaders:{}},null==this.apiKey&&null==this.authToken){let a=f.credentials??null;if(a)this._authState.provider=a,this._authState.tokenCache=this._makeTokenCache(a);else if(null!=f.config){let a=bH(f.config,this._credentialResolverOptions());this._authState.provider=a.provider,this._authState.tokenCache=this._makeTokenCache(a.provider),this._authState.extraHeaders=a.extraHeaders,this._applyCredentialBaseURL(a.baseURL)}else null!=f.profile?this._authState.resolution=this._resolveDefaultCredentials(f.profile):this._authState.resolution=this._resolveDefaultCredentials()}}_applyCredentialBaseURL(a){if(!a)return;let b=a.replace(/\/+$/,"");this._authState.baseURL=b,this._baseURLIsExplicit||(this.baseURL=b)}_credentialResolverOptions(){return{baseURL:this.baseURL,fetch:this._credentialsFetch(),userAgent:this.getUserAgent(),onCacheWriteError:a=>{(0,bM.WG)(this).debug("credential cache write failed (best-effort)",a)},onSafetyWarning:a=>{(0,bM.WG)(this).warn(a)}}}_credentialsFetch(){return bV(this.fetch,this.middleware,void 0,this)}_makeTokenCache(a){return new bw(a,a=>{(0,bM.WG)(this).debug("advisory token refresh failed; serving cached token",a)})}withOptions(a){let b="credentials"in a||"config"in a||"profile"in a,c="apiKey"in a||"authToken"in a||b,d={...this._options,...this._baseURLIsExplicit?{baseURL:this.baseURL}:{},maxRetries:this.maxRetries,timeout:this.timeout,logger:this.logger,logLevel:this.logLevel,fetch:this.fetch,fetchOptions:this.fetchOptions,middleware:this.middleware,apiKey:this.apiKey,authToken:this.authToken,webhookKey:this.webhookKey,credentials:this.credentials,...b?{credentials:void 0,config:void 0,profile:void 0}:{},...a,__auth:c?void 0:this._authState,__baseURLIsExplicit:"baseURL"in a||this._baseURLIsExplicit};return new this.constructor(d)}async _resolveDefaultCredentials(a){try{let b=await bI(this._credentialResolverOptions(),a);if(b)this._authState.provider=b.provider,this._authState.tokenCache=this._makeTokenCache(b.provider),this._authState.extraHeaders=b.extraHeaders,this._applyCredentialBaseURL(b.baseURL);else if(null!=a)throw new bk.pJ(`Profile "${a}" could not be resolved (no <config_dir>/configs/${a}.json found).`)}catch(a){this._authState.error=a}finally{this._authState.resolution=null}}defaultQuery(){return this._options.defaultQuery}validateHeaders({values:a,nulls:b}){if(!(a.get("x-api-key")||a.get("authorization"))){if(this._authState.error)throw this._authState.error;if(!(this._authState.tokenCache||this._authState.resolution||this.apiKey&&a.get("x-api-key")||b.has("x-api-key")||this.authToken&&a.get("authorization"))&&!b.has("authorization"))throw Error('Could not resolve authentication method. Expected one of apiKey, authToken, credentials, config, or profile to be set. Or for one of the "X-Api-Key" or "Authorization" headers to be explicitly omitted')}}_authFlags(a){let b=this._requestAuthFlags.get(a);return b||(b={usedTokenCache:!1,didRefreshFor401:!1},this._requestAuthFlags.set(a,b)),b}async authHeaders(a){if(this._authState.resolution&&await this._authState.resolution,!this._authState.error){if(this._authState.tokenCache&&null==this.apiKey){let b=await this._authState.tokenCache.getToken();return this._authFlags(a).usedTokenCache=!0,cf([{Authorization:`Bearer ${b}`}])}return cf([await this.apiKeyAuth(a),await this.bearerAuth(a)])}}async apiKeyAuth(a){if(null!=this.apiKey)return cf([{"X-Api-Key":this.apiKey}])}async bearerAuth(a){if(null!=this.authToken)return cf([{Authorization:`Bearer ${this.authToken}`}])}stringifyQuery(a){return(0,bj._)(a)}getUserAgent(){return`${this.constructor.name}/JS ${ba}`}defaultIdempotencyKey(){return`stainless-node-retry-${a6()}`}makeStatusError(a,b,c,d){return bk.LG.generate(a,b,c,d)}buildURL(a,b,c){let d=!(0,a5.g)(this,a1,"m",a4).call(this)&&c||this.baseURL,e=new URL((0,a7.nt)(a)?a:d+(d.endsWith("/")&&a.startsWith("/")?a.slice(1):a)),f=this.defaultQuery(),g=Object.fromEntries(e.searchParams);return(0,a7.ze)(f)&&(0,a7.ze)(g)||(b={...g,...f,...b}),"object"==typeof b&&b&&!Array.isArray(b)&&(e.search=this.stringifyQuery(b)),e.toString()}_calculateNonstreamingTimeout(a){if(3600*a/128e3>600)throw new bk.pJ("Streaming is required for operations that may take longer than 10 minutes. See https://github.com/anthropics/anthropic-sdk-typescript#streaming-responses for more details");return 6e5}async prepareOptions(a){}async prepareRequest(a,{url:b,options:c}){if(this._authState.tokenCache&&null==this.apiKey){let b=a.headers instanceof Headers?a.headers:new Headers(a.headers);for(let[a,c]of Object.entries(this._authState.extraHeaders))b.has(a)||b.set(a,c);let c=b.get("anthropic-beta")?.split(",").map(a=>a.trim());c?.includes(bm)||b.append("anthropic-beta",bm),a.headers=b}}backendMiddleware(){return[]}get(a,b){return this.methodRequest("get",a,b)}post(a,b){return this.methodRequest("post",a,b)}patch(a,b){return this.methodRequest("patch",a,b)}put(a,b){return this.methodRequest("put",a,b)}delete(a,b){return this.methodRequest("delete",a,b)}methodRequest(a,b,c){return this.request(Promise.resolve(c).then(c=>({method:a,path:b,...c})))}request(a,b=null){return new bX(this,this.makeRequest(a,b,void 0))}async makeRequest(a,b,c){let d=await a,e=d.maxRetries??this.maxRetries;null==b&&(b=e,this._requestAuthFlags.delete(d)),await this.prepareOptions(d);let{req:f,url:g,timeout:h}=await this.buildRequest(d,{retryCount:e-b}),i="log_"+(0x1000000*Math.random()|0).toString(16).padStart(6,"0"),j=void 0===c?"":`, retryOf: ${c}`,k=Date.now();if(d.signal?.aborted)throw new bk.cH;let l=new AbortController,m=await this.fetchWithTimeout(g,f,h,l,d,{requestLogID:i,retryOfRequestLogID:c}).catch(a9.r),n=Date.now();if(m instanceof globalThis.Error){let a=`retrying, ${b} attempts remaining`;if(d.signal?.aborted)throw new bk.cH;let e=(0,a9.z)(m)||/timed? ?out/i.test(String(m)+("cause"in m?String(m.cause):"")),f=this.middleware.length>0||!!d.middleware?.length||this.backendMiddleware().length>0;if(f&&!e&&!function(a){let b=new Set;for(;"object"==typeof a&&null!==a&&!b.has(a);){if(b.add(a),bU(a)||(0,a9.z)(a)||a instanceof bk.xX||a instanceof bk.dw)return!0;a=a.cause}return!1}(m))throw(0,bM.WG)(this).info(`[${i}] middleware error (not retryable)`),(0,bM.WG)(this).debug(`[${i}] middleware error (not retryable)`,(0,bM.xL)({retryOfRequestLogID:c,url:g,durationMs:n-k,message:m.message})),m;if(b)return(0,bM.WG)(this).info(`[${i}] connection ${e?"timed out":"failed"} - ${a}`),(0,bM.WG)(this).debug(`[${i}] connection ${e?"timed out":"failed"} (${a})`,(0,bM.xL)({retryOfRequestLogID:c,url:g,durationMs:n-k,message:m.message})),this.retryRequest(d,b,c??i);if((0,bM.WG)(this).info(`[${i}] connection ${e?"timed out":"failed"} - error; no more retries left`),(0,bM.WG)(this).debug(`[${i}] connection ${e?"timed out":"failed"} (error; no more retries left)`,(0,bM.xL)({retryOfRequestLogID:c,url:g,durationMs:n-k,message:m.message})),e)throw new bk.qA;if(f&&!bU(m))throw m;throw new bk.xX({cause:m})}let o=[...m.headers.entries()].filter(([a])=>"request-id"===a).map(([a,b])=>", "+a+": "+JSON.stringify(b)).join(""),p=`[${i}${j}${o}] ${f.method} ${g} ${m.ok?"succeeded":"failed"} with status ${m.status} in ${n-k}ms`;if(!m.ok){let a=await this.shouldRetry(m,d);if(b&&a){let a=`retrying, ${b} attempts remaining`;return await bh(m.body),(0,bM.WG)(this).info(`${p} - ${a}`),(0,bM.WG)(this).debug(`[${i}] response error (${a})`,(0,bM.xL)({retryOfRequestLogID:c,url:m.url,status:m.status,headers:m.headers,durationMs:n-k})),this.retryRequest(d,b,c??i,m.headers)}let e=a?"error; no more retries left":"error; not retryable";(0,bM.WG)(this).info(`${p} - ${e}`);let f=await m.text().catch(a=>(0,a9.r)(a).message),g=(0,a7.ml)(f),h=g?void 0:f;throw(0,bM.WG)(this).debug(`[${i}] response error (${e})`,(0,bM.xL)({retryOfRequestLogID:c,url:m.url,status:m.status,headers:m.headers,message:h,durationMs:Date.now()-k})),this.makeStatusError(m.status,g,h,m.headers)}return(0,bM.WG)(this).info(p),(0,bM.WG)(this).debug(`[${i}] response start`,(0,bM.xL)({retryOfRequestLogID:c,url:m.url,status:m.status,headers:m.headers,durationMs:n-k})),{response:m,options:d,controller:l,requestLogID:i,retryOfRequestLogID:c,startTime:k}}getAPIList(a,b,c){return this.requestAPIList(b,c&&"then"in c?c.then(b=>({method:"get",path:a,...b})):{method:"get",path:a,...c})}requestAPIList(a,b){return new bZ(this,this.makeRequest(b,null,void 0),a)}async fetchWithTimeout(a,b,c,d,e,f){let{signal:g,method:h,...i}=b||{},j=this._makeAbort(d);g&&g.addEventListener("abort",j,{once:!0});let k=globalThis.ReadableStream&&i.body instanceof globalThis.ReadableStream||"object"==typeof i.body&&null!==i.body&&Symbol.asyncIterator in i.body,l={signal:d.signal,...k?{duplex:"half"}:{},method:"GET",...i};h&&(l.method=h.toUpperCase());let m=this.fetch,n=async(a,b)=>{let d=setTimeout(j,c);try{return await m.call(void 0,a,b)}finally{clearTimeout(d)}},o=void 0===e?n:async(a,b={})=>{let c="string"==typeof a?a:a instanceof URL?a.href:a.url;return b.headers=b.headers instanceof Headers?b.headers:new Headers(b.headers),await this.prepareRequest(b,{url:c,options:e}),f&&(0,bM.WG)(this).debug(`[${f.requestLogID}] sending request`,(0,bM.xL)({retryOfRequestLogID:f.retryOfRequestLogID,method:b.method,url:c,options:e,headers:b.headers})),n(a,b)},p=e?.middleware,q=this.backendMiddleware(),r=p?.length||q.length?[...this.middleware,...p??[],...q]:this.middleware;return await bV(o,r,e,this)(a,l)}async shouldRetry(a,b){let c=this._authFlags(b);if(401===a.status&&this._authState.tokenCache&&c.usedTokenCache&&!c.didRefreshFor401)return c.didRefreshFor401=!0,this._authState.tokenCache.invalidate(),!0;let d=a.headers.get("x-should-retry");return"true"===d||"false"!==d&&(408===a.status||409===a.status||429===a.status||!!(a.status>=500))}async retryRequest(a,b,c,d){let e,f=d?.get("retry-after-ms");if(f){let a=parseFloat(f);Number.isNaN(a)||(e=a)}let g=d?.get("retry-after");if(g&&!e){let a=parseFloat(g);e=Number.isNaN(a)?Date.parse(g)-Date.now():1e3*a}if(void 0===e){let c=a.maxRetries??this.maxRetries;e=this.calculateDefaultRetryTimeoutMillis(b,c)}return await a8(e),this.makeRequest(a,b-1,c)}calculateDefaultRetryTimeoutMillis(a,b){return Math.min(.5*Math.pow(2,b-a),8)*(1-.25*Math.random())*1e3}calculateNonstreamingTimeout(a,b){if(36e5*a/128e3>6e5||null!=b&&a>b)throw new bk.pJ("Streaming is required for operations that may take longer than 10 minutes. See https://github.com/anthropics/anthropic-sdk-typescript#long-requests for more details");return 6e5}async buildRequest(a,{retryCount:b=0}={}){let c={...a},{method:d,path:e,query:f,defaultBaseURL:g}=c;this._authState.resolution&&await this._authState.resolution,!this._baseURLIsExplicit&&this._authState.baseURL&&this.baseURL!==this._authState.baseURL&&(this.baseURL=this._authState.baseURL);let h=this.buildURL(e,f,g);"timeout"in c&&(0,a7.wQ)("timeout",c.timeout),c.timeout=c.timeout??this.timeout;let{bodyHeaders:i,body:j}=this.buildBody({options:c}),k=await this.buildHeaders({options:a,method:d,bodyHeaders:i,retryCount:b});return{req:{method:d,headers:k,...c.signal&&{signal:c.signal},...globalThis.ReadableStream&&j instanceof globalThis.ReadableStream&&{duplex:"half"},...j&&{body:j},...this.fetchOptions??{},...c.fetchOptions??{}},url:h,timeout:c.timeout}}async buildHeaders({options:a,method:b,bodyHeaders:c,retryCount:d}){let e={};this.idempotencyHeader&&"get"!==b&&(a.idempotencyKey||(a.idempotencyKey=this.defaultIdempotencyKey()),e[this.idempotencyHeader]=a.idempotencyKey);let f=cf([e,{Accept:"application/json","User-Agent":this.getUserAgent(),"X-Stainless-Retry-Count":String(d),...a.timeout?{"X-Stainless-Timeout":String(Math.trunc(a.timeout/1e3))}:{},...bd(),...this._options.dangerouslyAllowBrowser?{"anthropic-dangerous-direct-browser-access":"true"}:void 0,"anthropic-version":"2023-06-01"},await this.authHeaders(a),this._options.defaultHeaders,c,a.headers]);return this.validateHeaders(f),f.values}_makeAbort(a){return()=>a.abort()}buildBody({options:{body:a,headers:b}}){if(!a)return{bodyHeaders:void 0,body:void 0};let c=cf([b]);return ArrayBuffer.isView(a)||a instanceof ArrayBuffer||a instanceof DataView||"string"==typeof a&&c.values.has("content-type")||globalThis.Blob&&a instanceof globalThis.Blob||a instanceof FormData||a instanceof URLSearchParams||globalThis.ReadableStream&&a instanceof globalThis.ReadableStream?{bodyHeaders:void 0,body:a}:"object"==typeof a&&(Symbol.asyncIterator in a||Symbol.iterator in a&&"next"in a&&"function"==typeof a.next)?{bodyHeaders:void 0,body:bf(a)}:"object"==typeof a&&"application/x-www-form-urlencoded"===c.values.get("content-type")?{bodyHeaders:{"content-type":"application/x-www-form-urlencoded"},body:this.stringifyQuery(a)}:(0,a5.g)(this,a3,"f").call(this,{body:a,headers:c})}}a2=ds,a3=new WeakMap,a1=new WeakSet,a4=function(){return"https://api.anthropic.com"!==this.baseURL},ds.Anthropic=a2,ds.HUMAN_PROMPT="\\n\\nHuman:",ds.AI_PROMPT="\\n\\nAssistant:",ds.DEFAULT_TIMEOUT=6e5,ds.AnthropicError=bk.pJ,ds.APIError=bk.LG,ds.APIConnectionError=bk.xX,ds.APIConnectionTimeoutError=bk.qA,ds.APIUserAbortError=bk.cH,ds.NotFoundError=bk.m_,ds.ConflictError=bk.fK,ds.RateLimitError=bk.OE,ds.BadRequestError=bk.v7,ds.AuthenticationError=bk.v3,ds.InternalServerError=bk.PO,ds.PermissionDeniedError=bk.Ll,ds.UnprocessableEntityError=bk.Is,ds.toFile=cb;class dt extends ds{constructor(){super(...arguments),this.completions=new dg(this),this.messages=new dn(this),this.models=new dr(this),this.beta=new df(this)}}dt.Completions=dg,dt.Messages=dn,dt.Models=dr,dt.Beta=df,new TextEncoder},80629:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});let d=c(97025),e=c(31849),f=c(83593),g=c(83593);b.default={keyword:"patternProperties",type:"object",schemaType:"object",code(a){let{gen:b,schema:c,data:h,parentSchema:i,it:j}=a,{opts:k}=j,l=(0,d.allSchemaProperties)(c),m=l.filter(a=>(0,f.alwaysValidSchema)(j,c[a]));if(0===l.length||m.length===l.length&&(!j.opts.unevaluated||!0===j.props))return;let n=k.strictSchema&&!k.allowMatchingProperties&&i.properties,o=b.name("valid");!0===j.props||j.props instanceof e.Name||(j.props=(0,g.evaluatedPropsToName)(b,j.props));let{props:p}=j;for(let a of l)n&&function(a){for(let b in n)new RegExp(a).test(b)&&(0,f.checkStrictMode)(j,`property ${b} matches pattern ${a} (use allowMatchingProperties)`)}(a),j.allErrors?q(a):(b.var(o,!0),q(a),b.if(o));function q(c){b.forIn("key",h,f=>{b.if((0,e._)`${(0,d.usePattern)(a,c)}.test(${f})`,()=>{let d=m.includes(c);d||a.subschema({keyword:"patternProperties",schemaProp:c,dataProp:f,dataPropType:g.Type.Str},o),j.opts.unevaluated&&!0!==p?b.assign((0,e._)`${p}[${f}]`,!0):d||j.allErrors||b.if((0,e.not)(o),()=>b.break())})})}}}},80693:(a,b,c)=>{"use strict";c.d(b,{Z:()=>i});var d,e,f=c(93704),g=function(a,b,c,d,e){if("m"===d)throw TypeError("Private method is not writable");if("a"===d&&!e)throw TypeError("Private accessor was defined without a setter");if("function"==typeof b?a!==b||!e:!b.has(a))throw TypeError("Cannot write private member to an object whose class did not declare it");return"a"===d?e.call(a,c):e?e.value=c:b.set(a,c),c},h=function(a,b,c,d){if("a"===c&&!d)throw TypeError("Private accessor was defined without a getter");if("function"==typeof b?a!==b||!d:!b.has(a))throw TypeError("Cannot read private member from an object whose class did not declare it");return"m"===c?d:"a"===c?d.call(a):d?d.value:b.get(a)};class i extends f.Y{constructor(a,b,c={}){if(super(a,c),d.set(this,void 0),e.set(this,0),arguments.length<2)throw TypeError(`Failed to construct 'File': 2 arguments required, but only ${arguments.length} present.`);g(this,d,String(b),"f");let f=void 0===c.lastModified?Date.now():Number(c.lastModified);Number.isNaN(f)||g(this,e,f,"f")}static[(d=new WeakMap,e=new WeakMap,Symbol.hasInstance)](a){return a instanceof f.Y&&"File"===a[Symbol.toStringTag]&&"string"==typeof a.name}get name(){return h(this,d,"f")}get lastModified(){return h(this,e,"f")}get webkitRelativePath(){return""}get[Symbol.toStringTag](){return"File"}}},80876:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.LoginTicket=void 0;class c{envelope;payload;constructor(a,b){this.envelope=a,this.payload=b}getEnvelope(){return this.envelope}getPayload(){return this.payload}getUserId(){let a=this.getPayload();return a&&a.sub?a.sub:null}getAttributes(){return{envelope:this.getEnvelope(),payload:this.getPayload()}}}b.LoginTicket=c},81231:function(a,b,c){"use strict";var d=this&&this.__importDefault||function(a){return a&&a.__esModule?a:{default:a}};Object.defineProperty(b,"__esModule",{value:!0}),b.GaxiosError=b.GAXIOS_ERROR_SYMBOL=void 0,b.defaultErrorRedactor=function a(b){let c="<<REDACTED> - See `errorRedactor` option in `gaxios` for configuration>.";function d(a){a&&a.forEach((b,d)=>{(/^authentication$/i.test(d)||/^authorization$/i.test(d)||/secret/i.test(d))&&a.set(d,c)})}function e(a,b){if("object"==typeof a&&null!==a&&"string"==typeof a[b]){let d=a[b];(/grant_type=/i.test(d)||/assertion=/i.test(d)||/secret/i.test(d))&&(a[b]=c)}}function f(a){a&&"object"==typeof a&&(a instanceof FormData||a instanceof URLSearchParams||"forEach"in a&&"set"in a?a.forEach((b,d)=>{(["grant_type","assertion"].includes(d)||/secret/.test(d))&&a.set(d,c)}):("grant_type"in a&&(a.grant_type=c),"assertion"in a&&(a.assertion=c),"client_secret"in a&&(a.client_secret=c)))}return b.config&&(d(b.config.headers),e(b.config,"data"),f(b.config.data),e(b.config,"body"),f(b.config.body),b.config.url.searchParams.has("token")&&b.config.url.searchParams.set("token",c),b.config.url.searchParams.has("client_secret")&&b.config.url.searchParams.set("client_secret",c)),b.response&&(a({config:b.response.config}),d(b.response.headers),b.response.bodyUsed&&(e(b.response,"data"),f(b.response.data))),b};let e=d(c(77874)),f=d(c(57649)).default.pkg;b.GAXIOS_ERROR_SYMBOL=Symbol.for(`${f.name}-gaxios-error`);class g extends Error{config;response;code;status;error;[b.GAXIOS_ERROR_SYMBOL]=f.version;static[Symbol.hasInstance](a){return!!a&&"object"==typeof a&&b.GAXIOS_ERROR_SYMBOL in a&&a[b.GAXIOS_ERROR_SYMBOL]===f.version||Function.prototype[Symbol.hasInstance].call(g,a)}constructor(a,b,c,d){if(super(a,{cause:d}),this.config=b,this.response=c,this.error=d instanceof Error?d:void 0,this.config=(0,e.default)(!0,{},b),this.response&&(this.response.config=(0,e.default)(!0,{},this.response.config)),this.response){try{this.response.data=function(a,b){switch(a){case"stream":default:return b;case"json":return JSON.parse(JSON.stringify(b));case"arraybuffer":return JSON.parse(Buffer.from(b).toString("utf8"));case"blob":return JSON.parse(b.text())}}(this.config.responseType,this.response?.bodyUsed?this.response?.data:void 0)}catch{}this.status=this.response.status}d instanceof DOMException?this.code=d.name:d&&"object"==typeof d&&"code"in d&&("string"==typeof d.code||"number"==typeof d.code)&&(this.code=d.code)}static extractAPIErrorFromResponse(a,b="The request failed"){let c=b;if("string"==typeof a.data&&(c=a.data),a.data&&"object"==typeof a.data&&"error"in a.data&&a.data.error&&!a.ok){if("string"==typeof a.data.error)return{message:a.data.error,code:a.status,status:a.statusText};if("object"==typeof a.data.error){c="message"in a.data.error&&"string"==typeof a.data.error.message?a.data.error.message:c;let b="status"in a.data.error&&"string"==typeof a.data.error.status?a.data.error.status:a.statusText,d="code"in a.data.error&&"number"==typeof a.data.error.code?a.data.error.code:a.status;if("errors"in a.data.error&&Array.isArray(a.data.error.errors)){let e=[];for(let b of a.data.error.errors)"object"==typeof b&&"message"in b&&"string"==typeof b.message&&e.push(b.message);return Object.assign({message:e.join("\n")||c,code:d,status:b},a.data.error)}return Object.assign({message:c,code:d,status:b},a.data.error)}}return{message:c,code:a.status,status:a.statusText}}}b.GaxiosError=g},81278:(a,b,c)=>{b.formatArgs=function(b){if(b[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+b[0]+(this.useColors?"%c ":" ")+"+"+a.exports.humanize(this.diff),!this.useColors)return;let c="color: "+this.color;b.splice(1,0,c,"color: inherit");let d=0,e=0;b[0].replace(/%[a-zA-Z%]/g,a=>{"%%"!==a&&(d++,"%c"===a&&(e=d))}),b.splice(e,0,c)},b.save=function(a){try{a?b.storage.setItem("debug",a):b.storage.removeItem("debug")}catch(a){}},b.load=function(){let a;try{a=b.storage.getItem("debug")||b.storage.getItem("DEBUG")}catch(a){}return!a&&"undefined"!=typeof process&&"env"in process&&(a=process.env.DEBUG),a},b.useColors=function(){let a;return"undefined"!=typeof window&&!!window.process&&("renderer"===window.process.type||!!window.process.__nwjs)||!("undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))&&("undefined"!=typeof document&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||"undefined"!=typeof window&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||"undefined"!=typeof navigator&&navigator.userAgent&&(a=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(a[1],10)>=31||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/))},b.storage=function(){try{return localStorage}catch(a){}}(),b.destroy=(()=>{let a=!1;return()=>{a||(a=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})(),b.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"],b.log=console.debug||console.log||(()=>{}),a.exports=c(52097)(b);let{formatters:d}=a.exports;d.j=function(a){try{return JSON.stringify(a)}catch(a){return"[UnexpectedJSONParseError]: "+a.message}}},81333:function(a,b,c){"use strict";var d;let e=(this&&this.__importDefault||function(a){return a&&a.__esModule?a:{default:a}})(c(47106));function f(a){return new e.default(a)}(d=f||(f={})).HttpsProxyAgent=e.default,d.prototype=e.default.prototype,a.exports=f},81502:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.CodeGen=b.Name=b.nil=b.stringify=b.str=b._=b.KeywordCxt=void 0;var d=c(31638);Object.defineProperty(b,"KeywordCxt",{enumerable:!0,get:function(){return d.KeywordCxt}});var e=c(31849);Object.defineProperty(b,"_",{enumerable:!0,get:function(){return e._}}),Object.defineProperty(b,"str",{enumerable:!0,get:function(){return e.str}}),Object.defineProperty(b,"stringify",{enumerable:!0,get:function(){return e.stringify}}),Object.defineProperty(b,"nil",{enumerable:!0,get:function(){return e.nil}}),Object.defineProperty(b,"Name",{enumerable:!0,get:function(){return e.Name}}),Object.defineProperty(b,"CodeGen",{enumerable:!0,get:function(){return e.CodeGen}});let f=c(39590),g=c(84687),h=c(6286),i=c(73315),j=c(31849),k=c(53707),l=c(60906),m=c(83593),n=c(82007),o=c(32742),p=(a,b)=>new RegExp(a,b);p.code="new RegExp";let q=["removeAdditional","useDefaults","coerceTypes"],r=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),s={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},t={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'};class u{constructor(a={}){this.schemas={},this.refs={},this.formats=Object.create(null),this._compilations=new Set,this._loading={},this._cache=new Map,a=this.opts={...a,...function(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,q,r,s,t,u,v,w,x,y,z,A,B;let C=a.strict,D=null==(b=a.code)?void 0:b.optimize,E=!0===D||void 0===D?1:D||0,F=null!=(d=null==(c=a.code)?void 0:c.regExp)?d:p,G=null!=(e=a.uriResolver)?e:o.default;return{strictSchema:null==(g=null!=(f=a.strictSchema)?f:C)||g,strictNumbers:null==(i=null!=(h=a.strictNumbers)?h:C)||i,strictTypes:null!=(k=null!=(j=a.strictTypes)?j:C)?k:"log",strictTuples:null!=(m=null!=(l=a.strictTuples)?l:C)?m:"log",strictRequired:null!=(q=null!=(n=a.strictRequired)?n:C)&&q,code:a.code?{...a.code,optimize:E,regExp:F}:{optimize:E,regExp:F},loopRequired:null!=(r=a.loopRequired)?r:200,loopEnum:null!=(s=a.loopEnum)?s:200,meta:null==(t=a.meta)||t,messages:null==(u=a.messages)||u,inlineRefs:null==(v=a.inlineRefs)||v,schemaId:null!=(w=a.schemaId)?w:"$id",addUsedSchema:null==(x=a.addUsedSchema)||x,validateSchema:null==(y=a.validateSchema)||y,validateFormats:null==(z=a.validateFormats)||z,unicodeRegExp:null==(A=a.unicodeRegExp)||A,int32range:null==(B=a.int32range)||B,uriResolver:G}}(a)};let{es5:b,lines:c}=this.opts.code;this.scope=new j.ValueScope({scope:{},prefixes:r,es5:b,lines:c}),this.logger=function(a){if(!1===a)return B;if(void 0===a)return console;if(a.log&&a.warn&&a.error)return a;throw Error("logger must implement log, warn and error methods")}(a.logger);let d=a.validateFormats;a.validateFormats=!1,this.RULES=(0,h.getRules)(),v.call(this,s,a,"NOT SUPPORTED"),v.call(this,t,a,"DEPRECATED","warn"),this._metaOpts=A.call(this),a.formats&&y.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),a.keywords&&z.call(this,a.keywords),"object"==typeof a.meta&&this.addMetaSchema(a.meta),x.call(this),a.validateFormats=d}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:a,meta:b,schemaId:c}=this.opts,d=n;"id"===c&&((d={...n}).id=d.$id,delete d.$id),b&&a&&this.addMetaSchema(d,d[c],!1)}defaultMeta(){let{meta:a,schemaId:b}=this.opts;return this.opts.defaultMeta="object"==typeof a?a[b]||a:void 0}validate(a,b){let c;if("string"==typeof a){if(!(c=this.getSchema(a)))throw Error(`no schema with key or ref "${a}"`)}else c=this.compile(a);let d=c(b);return"$async"in c||(this.errors=c.errors),d}compile(a,b){let c=this._addSchema(a,b);return c.validate||this._compileSchemaEnv(c)}compileAsync(a,b){if("function"!=typeof this.opts.loadSchema)throw Error("options.loadSchema should be a function");let{loadSchema:c}=this.opts;return d.call(this,a,b);async function d(a,b){await e.call(this,a.$schema);let c=this._addSchema(a,b);return c.validate||f.call(this,c)}async function e(a){a&&!this.getSchema(a)&&await d.call(this,{$ref:a},!0)}async function f(a){try{return this._compileSchemaEnv(a)}catch(b){if(!(b instanceof g.default))throw b;return h.call(this,b),await i.call(this,b.missingSchema),f.call(this,a)}}function h({missingSchema:a,missingRef:b}){if(this.refs[a])throw Error(`AnySchema ${a} is loaded but ${b} cannot be resolved`)}async function i(a){let c=await j.call(this,a);this.refs[a]||await e.call(this,c.$schema),this.refs[a]||this.addSchema(c,a,b)}async function j(a){let b=this._loading[a];if(b)return b;try{return await (this._loading[a]=c(a))}finally{delete this._loading[a]}}}addSchema(a,b,c,d=this.opts.validateSchema){let e;if(Array.isArray(a)){for(let b of a)this.addSchema(b,void 0,c,d);return this}if("object"==typeof a){let{schemaId:b}=this.opts;if(void 0!==(e=a[b])&&"string"!=typeof e)throw Error(`schema ${b} must be string`)}return b=(0,k.normalizeId)(b||e),this._checkUnique(b),this.schemas[b]=this._addSchema(a,c,b,d,!0),this}addMetaSchema(a,b,c=this.opts.validateSchema){return this.addSchema(a,b,!0,c),this}validateSchema(a,b){let c;if("boolean"==typeof a)return!0;if(void 0!==(c=a.$schema)&&"string"!=typeof c)throw Error("$schema must be a string");if(!(c=c||this.opts.defaultMeta||this.defaultMeta()))return this.logger.warn("meta-schema not available"),this.errors=null,!0;let d=this.validate(c,a);if(!d&&b){let a="schema is invalid: "+this.errorsText();if("log"===this.opts.validateSchema)this.logger.error(a);else throw Error(a)}return d}getSchema(a){let b;for(;"string"==typeof(b=w.call(this,a));)a=b;if(void 0===b){let{schemaId:c}=this.opts,d=new i.SchemaEnv({schema:{},schemaId:c});if(!(b=i.resolveSchema.call(this,d,a)))return;this.refs[a]=b}return b.validate||this._compileSchemaEnv(b)}removeSchema(a){if(a instanceof RegExp)return this._removeAllSchemas(this.schemas,a),this._removeAllSchemas(this.refs,a),this;switch(typeof a){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let b=w.call(this,a);return"object"==typeof b&&this._cache.delete(b.schema),delete this.schemas[a],delete this.refs[a],this}case"object":{this._cache.delete(a);let b=a[this.opts.schemaId];return b&&(b=(0,k.normalizeId)(b),delete this.schemas[b],delete this.refs[b]),this}default:throw Error("ajv.removeSchema: invalid parameter")}}addVocabulary(a){for(let b of a)this.addKeyword(b);return this}addKeyword(a,b){let c;if("string"==typeof a)c=a,"object"==typeof b&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),b.keyword=c);else if("object"==typeof a&&void 0===b){if(Array.isArray(c=(b=a).keyword)&&!c.length)throw Error("addKeywords: keyword must be string or non-empty array")}else throw Error("invalid addKeywords parameters");if(D.call(this,c,b),!b)return(0,m.eachItem)(c,a=>E.call(this,a)),this;G.call(this,b);let d={...b,type:(0,l.getJSONTypes)(b.type),schemaType:(0,l.getJSONTypes)(b.schemaType)};return(0,m.eachItem)(c,0===d.type.length?a=>E.call(this,a,d):a=>d.type.forEach(b=>E.call(this,a,d,b))),this}getKeyword(a){let b=this.RULES.all[a];return"object"==typeof b?b.definition:!!b}removeKeyword(a){let{RULES:b}=this;for(let c of(delete b.keywords[a],delete b.all[a],b.rules)){let b=c.rules.findIndex(b=>b.keyword===a);b>=0&&c.rules.splice(b,1)}return this}addFormat(a,b){return"string"==typeof b&&(b=new RegExp(b)),this.formats[a]=b,this}errorsText(a=this.errors,{separator:b=", ",dataVar:c="data"}={}){return a&&0!==a.length?a.map(a=>`${c}${a.instancePath} ${a.message}`).reduce((a,c)=>a+b+c):"No errors"}$dataMetaSchema(a,b){let c=this.RULES.all;for(let d of(a=JSON.parse(JSON.stringify(a)),b)){let b=d.split("/").slice(1),e=a;for(let a of b)e=e[a];for(let a in c){let b=c[a];if("object"!=typeof b)continue;let{$data:d}=b.definition,f=e[a];d&&f&&(e[a]=I(f))}}return a}_removeAllSchemas(a,b){for(let c in a){let d=a[c];(!b||b.test(c))&&("string"==typeof d?delete a[c]:d&&!d.meta&&(this._cache.delete(d.schema),delete a[c]))}}_addSchema(a,b,c,d=this.opts.validateSchema,e=this.opts.addUsedSchema){let f,{schemaId:g}=this.opts;if("object"==typeof a)f=a[g];else if(this.opts.jtd)throw Error("schema must be object");else if("boolean"!=typeof a)throw Error("schema must be object or boolean");let h=this._cache.get(a);if(void 0!==h)return h;c=(0,k.normalizeId)(f||c);let j=k.getSchemaRefs.call(this,a,c);return h=new i.SchemaEnv({schema:a,schemaId:g,meta:b,baseId:c,localRefs:j}),this._cache.set(h.schema,h),e&&!c.startsWith("#")&&(c&&this._checkUnique(c),this.refs[c]=h),d&&this.validateSchema(a,!0),h}_checkUnique(a){if(this.schemas[a]||this.refs[a])throw Error(`schema with key or id "${a}" already exists`)}_compileSchemaEnv(a){if(a.meta?this._compileMetaSchema(a):i.compileSchema.call(this,a),!a.validate)throw Error("ajv implementation error");return a.validate}_compileMetaSchema(a){let b=this.opts;this.opts=this._metaOpts;try{i.compileSchema.call(this,a)}finally{this.opts=b}}}function v(a,b,c,d="error"){for(let e in a)e in b&&this.logger[d](`${c}: option ${e}. ${a[e]}`)}function w(a){return a=(0,k.normalizeId)(a),this.schemas[a]||this.refs[a]}function x(){let a=this.opts.schemas;if(a)if(Array.isArray(a))this.addSchema(a);else for(let b in a)this.addSchema(a[b],b)}function y(){for(let a in this.opts.formats){let b=this.opts.formats[a];b&&this.addFormat(a,b)}}function z(a){if(Array.isArray(a))return void this.addVocabulary(a);for(let b in this.logger.warn("keywords option as map is deprecated, pass array"),a){let c=a[b];c.keyword||(c.keyword=b),this.addKeyword(c)}}function A(){let a={...this.opts};for(let b of q)delete a[b];return a}u.ValidationError=f.default,u.MissingRefError=g.default,b.default=u;let B={log(){},warn(){},error(){}},C=/^[a-z_$][a-z0-9_$:-]*$/i;function D(a,b){let{RULES:c}=this;if((0,m.eachItem)(a,a=>{if(c.keywords[a])throw Error(`Keyword ${a} is already defined`);if(!C.test(a))throw Error(`Keyword ${a} has invalid name`)}),b&&b.$data&&!("code"in b||"validate"in b))throw Error('$data keyword must have "code" or "validate" function')}function E(a,b,c){var d;let e=null==b?void 0:b.post;if(c&&e)throw Error('keyword with "post" flag cannot have "type"');let{RULES:f}=this,g=e?f.post:f.rules.find(({type:a})=>a===c);if(g||(g={type:c,rules:[]},f.rules.push(g)),f.keywords[a]=!0,!b)return;let h={keyword:a,definition:{...b,type:(0,l.getJSONTypes)(b.type),schemaType:(0,l.getJSONTypes)(b.schemaType)}};b.before?F.call(this,g,h,b.before):g.rules.push(h),f.all[a]=h,null==(d=b.implements)||d.forEach(a=>this.addKeyword(a))}function F(a,b,c){let d=a.rules.findIndex(a=>a.keyword===c);d>=0?a.rules.splice(d,0,b):(a.rules.push(b),this.logger.warn(`rule ${c} is not defined`))}function G(a){let{metaSchema:b}=a;void 0!==b&&(a.$data&&this.opts.$data&&(b=I(b)),a.validateSchema=this.compile(b,!0))}let H={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function I(a){return{anyOf:[a,H]}}},82007:a=>{"use strict";a.exports=JSON.parse('{"$id":"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#","description":"Meta-schema for $data reference (JSON AnySchema extension proposal)","type":"object","required":["$data"],"properties":{"$data":{"type":"string","anyOf":[{"format":"relative-json-pointer"},{"format":"json-pointer"}]}},"additionalProperties":false}')},82156:function(a,b,c){var d;d=c(67278),c(70522),d.pad.ZeroPadding={pad:function(a,b){var c=4*b;a.clamp(),a.sigBytes+=c-(a.sigBytes%c||c)},unpad:function(a){for(var b=a.words,c=a.sigBytes-1,c=a.sigBytes-1;c>=0;c--)if(b[c>>>2]>>>24-c%4*8&255){a.sigBytes=c+1;break}}},a.exports=d.pad.ZeroPadding},82464:(a,b,c)=>{"use strict";let d;c.r(b),c.d(b,{MCPService:()=>eQ,mcpService:()=>eR});var e=c(43746),f=c(1708),g=c(57075),h=c(54494),i=c(15970);let j="2025-11-25",k=[j,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],l="io.modelcontextprotocol/related-task",m=h.Ie(a=>null!==a&&("object"==typeof a||"function"==typeof a)),n=h.KC([h.Yj(),h.ai().int()]),o=h.Yj();h._H({ttl:h.ai().optional(),pollInterval:h.ai().optional()});let p=h.Ik({ttl:h.ai().optional()}),q=h.Ik({taskId:h.Yj()}),r=h._H({progressToken:n.optional(),[l]:q.optional()}),s=h.Ik({_meta:r.optional()}),t=s.extend({task:p.optional()}),u=h.Ik({method:h.Yj(),params:s.loose().optional()}),v=h.Ik({_meta:r.optional()}),w=h.Ik({method:h.Yj(),params:v.loose().optional()}),x=h._H({_meta:r.optional()}),y=h.KC([h.Yj(),h.ai().int()]),z=h.Ik({jsonrpc:h.eu("2.0"),id:y,...u.shape}).strict(),A=a=>z.safeParse(a).success,B=h.Ik({jsonrpc:h.eu("2.0"),...w.shape}).strict(),C=h.Ik({jsonrpc:h.eu("2.0"),id:y,result:x}).strict(),D=a=>C.safeParse(a).success;!function(a){a[a.ConnectionClosed=-32e3]="ConnectionClosed",a[a.RequestTimeout=-32001]="RequestTimeout",a[a.ParseError=-32700]="ParseError",a[a.InvalidRequest=-32600]="InvalidRequest",a[a.MethodNotFound=-32601]="MethodNotFound",a[a.InvalidParams=-32602]="InvalidParams",a[a.InternalError=-32603]="InternalError",a[a.UrlElicitationRequired=-32042]="UrlElicitationRequired"}(dT||(dT={}));let E=h.Ik({jsonrpc:h.eu("2.0"),id:y.optional(),error:h.Ik({code:h.ai().int(),message:h.Yj(),data:h.L5().optional()})}).strict(),F=h.KC([z,B,C,E]);h.KC([C,E]);let G=x.strict(),H=v.extend({requestId:y.optional(),reason:h.Yj().optional()}),I=w.extend({method:h.eu("notifications/cancelled"),params:H}),J=h.Ik({src:h.Yj(),mimeType:h.Yj().optional(),sizes:h.YO(h.Yj()).optional(),theme:h.k5(["light","dark"]).optional()}),K=h.Ik({icons:h.YO(J).optional()}),L=h.Ik({name:h.Yj(),title:h.Yj().optional()}),M=L.extend({...L.shape,...K.shape,version:h.Yj(),websiteUrl:h.Yj().optional(),description:h.Yj().optional()}),N=h.E$(h.Ik({applyDefaults:h.zM().optional()}),h.g1(h.Yj(),h.L5())),O=h.vk(a=>a&&"object"==typeof a&&!Array.isArray(a)&&0===Object.keys(a).length?{form:{}}:a,h.E$(h.Ik({form:N.optional(),url:m.optional()}),h.g1(h.Yj(),h.L5()).optional())),P=h._H({list:m.optional(),cancel:m.optional(),requests:h._H({sampling:h._H({createMessage:m.optional()}).optional(),elicitation:h._H({create:m.optional()}).optional()}).optional()}),Q=h._H({list:m.optional(),cancel:m.optional(),requests:h._H({tools:h._H({call:m.optional()}).optional()}).optional()}),R=h.Ik({experimental:h.g1(h.Yj(),m).optional(),sampling:h.Ik({context:m.optional(),tools:m.optional()}).optional(),elicitation:O.optional(),roots:h.Ik({listChanged:h.zM().optional()}).optional(),tasks:P.optional(),extensions:h.g1(h.Yj(),m).optional()}),S=s.extend({protocolVersion:h.Yj(),capabilities:R,clientInfo:M}),T=u.extend({method:h.eu("initialize"),params:S}),U=h.Ik({experimental:h.g1(h.Yj(),m).optional(),logging:m.optional(),completions:m.optional(),prompts:h.Ik({listChanged:h.zM().optional()}).optional(),resources:h.Ik({subscribe:h.zM().optional(),listChanged:h.zM().optional()}).optional(),tools:h.Ik({listChanged:h.zM().optional()}).optional(),tasks:Q.optional(),extensions:h.g1(h.Yj(),m).optional()}),V=x.extend({protocolVersion:h.Yj(),capabilities:U,serverInfo:M,instructions:h.Yj().optional()}),W=w.extend({method:h.eu("notifications/initialized"),params:v.optional()}),X=u.extend({method:h.eu("ping"),params:s.optional()}),Y=h.Ik({progress:h.ai(),total:h.lq(h.ai()),message:h.lq(h.Yj())}),Z=h.Ik({...v.shape,...Y.shape,progressToken:n}),$=w.extend({method:h.eu("notifications/progress"),params:Z}),_=s.extend({cursor:o.optional()}),aa=u.extend({params:_.optional()}),ab=x.extend({nextCursor:o.optional()}),ac=h.k5(["working","input_required","completed","failed","cancelled"]),ad=h.Ik({taskId:h.Yj(),status:ac,ttl:h.KC([h.ai(),h.ch()]),createdAt:h.Yj(),lastUpdatedAt:h.Yj(),pollInterval:h.lq(h.ai()),statusMessage:h.lq(h.Yj())}),ae=x.extend({task:ad}),af=v.merge(ad),ag=w.extend({method:h.eu("notifications/tasks/status"),params:af}),ah=u.extend({method:h.eu("tasks/get"),params:s.extend({taskId:h.Yj()})}),ai=x.merge(ad),aj=u.extend({method:h.eu("tasks/result"),params:s.extend({taskId:h.Yj()})});x.loose();let ak=aa.extend({method:h.eu("tasks/list")}),al=ab.extend({tasks:h.YO(ad)}),am=u.extend({method:h.eu("tasks/cancel"),params:s.extend({taskId:h.Yj()})}),an=x.merge(ad),ao=h.Ik({uri:h.Yj(),mimeType:h.lq(h.Yj()),_meta:h.g1(h.Yj(),h.L5()).optional()}),ap=ao.extend({text:h.Yj()}),aq=h.Yj().refine(a=>{try{return atob(a),!0}catch{return!1}},{message:"Invalid Base64 string"}),ar=ao.extend({blob:aq}),as=h.k5(["user","assistant"]),at=h.Ik({audience:h.YO(as).optional(),priority:h.ai().min(0).max(1).optional(),lastModified:i.w$({offset:!0}).optional()}),au=h.Ik({...L.shape,...K.shape,uri:h.Yj(),description:h.lq(h.Yj()),mimeType:h.lq(h.Yj()),size:h.lq(h.ai()),annotations:at.optional(),_meta:h.lq(h._H({}))}),av=h.Ik({...L.shape,...K.shape,uriTemplate:h.Yj(),description:h.lq(h.Yj()),mimeType:h.lq(h.Yj()),annotations:at.optional(),_meta:h.lq(h._H({}))}),aw=aa.extend({method:h.eu("resources/list")}),ax=ab.extend({resources:h.YO(au)}),ay=aa.extend({method:h.eu("resources/templates/list")}),az=ab.extend({resourceTemplates:h.YO(av)}),aA=s.extend({uri:h.Yj()}),aB=u.extend({method:h.eu("resources/read"),params:aA}),aC=x.extend({contents:h.YO(h.KC([ap,ar]))}),aD=w.extend({method:h.eu("notifications/resources/list_changed"),params:v.optional()}),aE=u.extend({method:h.eu("resources/subscribe"),params:aA}),aF=u.extend({method:h.eu("resources/unsubscribe"),params:aA}),aG=v.extend({uri:h.Yj()}),aH=w.extend({method:h.eu("notifications/resources/updated"),params:aG}),aI=h.Ik({name:h.Yj(),description:h.lq(h.Yj()),required:h.lq(h.zM())}),aJ=h.Ik({...L.shape,...K.shape,description:h.lq(h.Yj()),arguments:h.lq(h.YO(aI)),_meta:h.lq(h._H({}))}),aK=aa.extend({method:h.eu("prompts/list")}),aL=ab.extend({prompts:h.YO(aJ)}),aM=s.extend({name:h.Yj(),arguments:h.g1(h.Yj(),h.Yj()).optional()}),aN=u.extend({method:h.eu("prompts/get"),params:aM}),aO=h.Ik({type:h.eu("text"),text:h.Yj(),annotations:at.optional(),_meta:h.g1(h.Yj(),h.L5()).optional()}),aP=h.Ik({type:h.eu("image"),data:aq,mimeType:h.Yj(),annotations:at.optional(),_meta:h.g1(h.Yj(),h.L5()).optional()}),aQ=h.Ik({type:h.eu("audio"),data:aq,mimeType:h.Yj(),annotations:at.optional(),_meta:h.g1(h.Yj(),h.L5()).optional()}),aR=h.Ik({type:h.eu("tool_use"),name:h.Yj(),id:h.Yj(),input:h.g1(h.Yj(),h.L5()),_meta:h.g1(h.Yj(),h.L5()).optional()}),aS=h.Ik({type:h.eu("resource"),resource:h.KC([ap,ar]),annotations:at.optional(),_meta:h.g1(h.Yj(),h.L5()).optional()}),aT=au.extend({type:h.eu("resource_link")}),aU=h.KC([aO,aP,aQ,aT,aS]),aV=h.Ik({role:as,content:aU}),aW=x.extend({description:h.Yj().optional(),messages:h.YO(aV)}),aX=w.extend({method:h.eu("notifications/prompts/list_changed"),params:v.optional()}),aY=h.Ik({title:h.Yj().optional(),readOnlyHint:h.zM().optional(),destructiveHint:h.zM().optional(),idempotentHint:h.zM().optional(),openWorldHint:h.zM().optional()}),aZ=h.Ik({taskSupport:h.k5(["required","optional","forbidden"]).optional()}),a$=h.Ik({...L.shape,...K.shape,description:h.Yj().optional(),inputSchema:h.Ik({type:h.eu("object"),properties:h.g1(h.Yj(),m).optional(),required:h.YO(h.Yj()).optional()}).catchall(h.L5()),outputSchema:h.Ik({type:h.eu("object"),properties:h.g1(h.Yj(),m).optional(),required:h.YO(h.Yj()).optional()}).catchall(h.L5()).optional(),annotations:aY.optional(),execution:aZ.optional(),_meta:h.g1(h.Yj(),h.L5()).optional()}),a_=aa.extend({method:h.eu("tools/list")}),a0=ab.extend({tools:h.YO(a$)}),a1=x.extend({content:h.YO(aU).default([]),structuredContent:h.g1(h.Yj(),h.L5()).optional(),isError:h.zM().optional()});a1.or(x.extend({toolResult:h.L5()}));let a2=t.extend({name:h.Yj(),arguments:h.g1(h.Yj(),h.L5()).optional()}),a3=u.extend({method:h.eu("tools/call"),params:a2}),a4=w.extend({method:h.eu("notifications/tools/list_changed"),params:v.optional()}),a5=h.Ik({autoRefresh:h.zM().default(!0),debounceMs:h.ai().int().nonnegative().default(300)}),a6=h.k5(["debug","info","notice","warning","error","critical","alert","emergency"]),a7=s.extend({level:a6}),a8=u.extend({method:h.eu("logging/setLevel"),params:a7}),a9=v.extend({level:a6,logger:h.Yj().optional(),data:h.L5()}),ba=w.extend({method:h.eu("notifications/message"),params:a9}),bb=h.Ik({name:h.Yj().optional()}),bc=h.Ik({hints:h.YO(bb).optional(),costPriority:h.ai().min(0).max(1).optional(),speedPriority:h.ai().min(0).max(1).optional(),intelligencePriority:h.ai().min(0).max(1).optional()}),bd=h.Ik({mode:h.k5(["auto","required","none"]).optional()}),be=h.Ik({type:h.eu("tool_result"),toolUseId:h.Yj().describe("The unique identifier for the corresponding tool call."),content:h.YO(aU).default([]),structuredContent:h.Ik({}).loose().optional(),isError:h.zM().optional(),_meta:h.g1(h.Yj(),h.L5()).optional()}),bf=h.gM("type",[aO,aP,aQ]),bg=h.gM("type",[aO,aP,aQ,aR,be]),bh=h.Ik({role:as,content:h.KC([bg,h.YO(bg)]),_meta:h.g1(h.Yj(),h.L5()).optional()}),bi=t.extend({messages:h.YO(bh),modelPreferences:bc.optional(),systemPrompt:h.Yj().optional(),includeContext:h.k5(["none","thisServer","allServers"]).optional(),temperature:h.ai().optional(),maxTokens:h.ai().int(),stopSequences:h.YO(h.Yj()).optional(),metadata:m.optional(),tools:h.YO(a$).optional(),toolChoice:bd.optional()}),bj=u.extend({method:h.eu("sampling/createMessage"),params:bi}),bk=x.extend({model:h.Yj(),stopReason:h.lq(h.k5(["endTurn","stopSequence","maxTokens"]).or(h.Yj())),role:as,content:bf}),bl=x.extend({model:h.Yj(),stopReason:h.lq(h.k5(["endTurn","stopSequence","maxTokens","toolUse"]).or(h.Yj())),role:as,content:h.KC([bg,h.YO(bg)])}),bm=h.Ik({type:h.eu("boolean"),title:h.Yj().optional(),description:h.Yj().optional(),default:h.zM().optional()}),bn=h.Ik({type:h.eu("string"),title:h.Yj().optional(),description:h.Yj().optional(),minLength:h.ai().optional(),maxLength:h.ai().optional(),format:h.k5(["email","uri","date","date-time"]).optional(),default:h.Yj().optional()}),bo=h.Ik({type:h.k5(["number","integer"]),title:h.Yj().optional(),description:h.Yj().optional(),minimum:h.ai().optional(),maximum:h.ai().optional(),default:h.ai().optional()}),bp=h.Ik({type:h.eu("string"),title:h.Yj().optional(),description:h.Yj().optional(),enum:h.YO(h.Yj()),default:h.Yj().optional()}),bq=h.Ik({type:h.eu("string"),title:h.Yj().optional(),description:h.Yj().optional(),oneOf:h.YO(h.Ik({const:h.Yj(),title:h.Yj()})),default:h.Yj().optional()}),br=h.Ik({type:h.eu("string"),title:h.Yj().optional(),description:h.Yj().optional(),enum:h.YO(h.Yj()),enumNames:h.YO(h.Yj()).optional(),default:h.Yj().optional()}),bs=h.KC([bp,bq]),bt=h.Ik({type:h.eu("array"),title:h.Yj().optional(),description:h.Yj().optional(),minItems:h.ai().optional(),maxItems:h.ai().optional(),items:h.Ik({type:h.eu("string"),enum:h.YO(h.Yj())}),default:h.YO(h.Yj()).optional()}),bu=h.Ik({type:h.eu("array"),title:h.Yj().optional(),description:h.Yj().optional(),minItems:h.ai().optional(),maxItems:h.ai().optional(),items:h.Ik({anyOf:h.YO(h.Ik({const:h.Yj(),title:h.Yj()}))}),default:h.YO(h.Yj()).optional()}),bv=h.KC([bt,bu]),bw=h.KC([br,bs,bv]),bx=h.KC([bw,bm,bn,bo]),by=t.extend({mode:h.eu("form").optional(),message:h.Yj(),requestedSchema:h.Ik({type:h.eu("object"),properties:h.g1(h.Yj(),bx),required:h.YO(h.Yj()).optional()})}),bz=t.extend({mode:h.eu("url"),message:h.Yj(),elicitationId:h.Yj(),url:h.Yj().url()}),bA=h.KC([by,bz]),bB=u.extend({method:h.eu("elicitation/create"),params:bA}),bC=v.extend({elicitationId:h.Yj()}),bD=w.extend({method:h.eu("notifications/elicitation/complete"),params:bC}),bE=x.extend({action:h.k5(["accept","decline","cancel"]),content:h.vk(a=>null===a?void 0:a,h.g1(h.Yj(),h.KC([h.Yj(),h.ai(),h.zM(),h.YO(h.Yj())])).optional())}),bF=h.Ik({type:h.eu("ref/resource"),uri:h.Yj()}),bG=h.Ik({type:h.eu("ref/prompt"),name:h.Yj()}),bH=s.extend({ref:h.KC([bG,bF]),argument:h.Ik({name:h.Yj(),value:h.Yj()}),context:h.Ik({arguments:h.g1(h.Yj(),h.Yj()).optional()}).optional()}),bI=u.extend({method:h.eu("completion/complete"),params:bH}),bJ=x.extend({completion:h._H({values:h.YO(h.Yj()).max(100),total:h.lq(h.ai().int()),hasMore:h.lq(h.zM())})}),bK=h.Ik({uri:h.Yj().startsWith("file://"),name:h.Yj().optional(),_meta:h.g1(h.Yj(),h.L5()).optional()}),bL=u.extend({method:h.eu("roots/list"),params:s.optional()}),bM=x.extend({roots:h.YO(bK)}),bN=w.extend({method:h.eu("notifications/roots/list_changed"),params:v.optional()});h.KC([X,T,bI,a8,aN,aK,aw,ay,aB,aE,aF,a3,a_,ah,aj,ak,am]),h.KC([I,$,W,bN,ag]),h.KC([G,bk,bl,bE,bM,ai,al,ae]),h.KC([X,bj,bB,bL,ah,aj,ak,am]),h.KC([I,$,ba,aH,aD,a4,aX,ag,bD]),h.KC([G,V,bJ,aW,aL,ax,az,aC,a1,a0,ai,al,ae]);class bO extends Error{constructor(a,b,c){super(`MCP error ${a}: ${b}`),this.code=a,this.data=c,this.name="McpError"}static fromError(a,b,c){return a===dT.UrlElicitationRequired&&c&&c.elicitations?new bP(c.elicitations,b):new bO(a,b,c)}}class bP extends bO{constructor(a,b=`URL elicitation${a.length>1?"s":""} required`){super(dT.UrlElicitationRequired,b,{elicitations:a})}get elicitations(){return this.data?.elicitations??[]}}class bQ{append(a){this._buffer=this._buffer?Buffer.concat([this._buffer,a]):a}readMessage(){var a;if(!this._buffer)return null;let b=this._buffer.indexOf("\n");if(-1===b)return null;let c=this._buffer.toString("utf8",0,b).replace(/\r$/,"");return this._buffer=this._buffer.subarray(b+1),a=c,F.parse(JSON.parse(a))}clear(){this._buffer=void 0}}let bR="win32"===f.platform?["APPDATA","HOMEDRIVE","HOMEPATH","LOCALAPPDATA","PATH","PROCESSOR_ARCHITECTURE","SYSTEMDRIVE","SYSTEMROOT","TEMP","USERNAME","USERPROFILE","PROGRAMFILES"]:["HOME","LOGNAME","PATH","SHELL","TERM","USER"];class bS{constructor(a){this._readBuffer=new bQ,this._stderrStream=null,this._serverParams=a,("pipe"===a.stderr||"overlapped"===a.stderr)&&(this._stderrStream=new g.PassThrough)}async start(){if(this._process)throw Error("StdioClientTransport already started! If using Client class, note that connect() calls start() automatically.");return new Promise((a,b)=>{this._process=e(this._serverParams.command,this._serverParams.args??[],{env:{...function(){let a={};for(let b of bR){let c=f.env[b];void 0!==c&&(c.startsWith("()")||(a[b]=c))}return a}(),...this._serverParams.env},stdio:["pipe","pipe",this._serverParams.stderr??"inherit"],shell:!1,windowsHide:"win32"===f.platform,cwd:this._serverParams.cwd}),this._process.on("error",a=>{b(a),this.onerror?.(a)}),this._process.on("spawn",()=>{a()}),this._process.on("close",a=>{this._process=void 0,this.onclose?.()}),this._process.stdin?.on("error",a=>{this.onerror?.(a)}),this._process.stdout?.on("data",a=>{this._readBuffer.append(a),this.processReadBuffer()}),this._process.stdout?.on("error",a=>{this.onerror?.(a)}),this._stderrStream&&this._process.stderr&&this._process.stderr.pipe(this._stderrStream)})}get stderr(){return this._stderrStream?this._stderrStream:this._process?.stderr??null}get pid(){return this._process?.pid??null}processReadBuffer(){for(;;)try{let a=this._readBuffer.readMessage();if(null===a)break;this.onmessage?.(a)}catch(a){this.onerror?.(a)}}async close(){if(this._process){let a=this._process;this._process=void 0;let b=new Promise(b=>{a.once("close",()=>{b()})});try{a.stdin?.end()}catch{}if(await Promise.race([b,new Promise(a=>setTimeout(a,2e3).unref())]),null===a.exitCode){try{a.kill("SIGTERM")}catch{}await Promise.race([b,new Promise(a=>setTimeout(a,2e3).unref())])}if(null===a.exitCode)try{a.kill("SIGKILL")}catch{}}this._readBuffer.clear()}send(a){return new Promise(b=>{if(!this._process?.stdin)throw Error("Not connected");let c=JSON.stringify(a)+"\n";this._process.stdin.write(c)?b():this._process.stdin.once("drain",b)})}}var bT=c(89850),bU=c(79748),bV=c.n(bU),bW=c(33873),bX=c.n(bW),bY=c(18230),bZ=c(63129);async function b$(a,b,c){if(0===a.length)return;let d=0,e=async()=>{for(;;){let b=d++;if(b>=a.length)return;await c(a[b])}},f=Math.min(Math.max(1,Math.floor(b)||1),a.length);await Promise.all(Array.from({length:f},()=>e()))}var b_=c(6544),b0=c(87507);let b1=(0,bY.h)("backend/services/mcp/tools"),b2=0x80000000-1;async function b3(a,b){if(b1.debug("Entering listServerTools method"),!a)return b1.warn(`Server ${b} not connected`),{tools:[],error:"Server not connected"};try{b1.info(`Listing tools for server ${b}`);let c=await a.listTools();b1.verbose("Raw response from MCP server:",c);let d=(c.tools||[]).map(a=>({name:a.name,description:a.description||"",inputSchema:a.inputSchema||{}}));return b1.verbose("Processed tools:",d),{tools:d}}catch(c){b1.warn(`Failed to list tools for server ${b}:`,c);let a=c instanceof Error?c.message:"Unknown error";return{tools:[],error:a.includes("Connection timeout")?a:`Failed to list tools: ${a}`}}}async function b4(a,b,c,d,e,f){if(b1.debug("Entering callTool method"),!a)return b1.warn(`Server ${b} not found`),{success:!1,error:`Server ${b} not found`,statusCode:404};let g=void 0!==e&&e>0?Math.min(1e3*e,b2):b2;try{b1.debug(`Original args for tool ${c}:`,d);let b=await (0,b0.c)(d),e=function(a,b){if(!a)return{};let c={};for(let d in a){let e=a[d];null==e?(b1.debug(`Normalizing undefined/null value for parameter '${d}' in tool '${b}'`),d.includes("number")||d.endsWith("Count")||d.endsWith("Id")||d.endsWith("Limit")?(c[d]=0,b1.debug(`Using default value 0 for likely number parameter: ${d}`)):d.includes("bool")||d.startsWith("is")||d.startsWith("has")||d.startsWith("should")?(c[d]=!1,b1.debug(`Using default value false for likely boolean parameter: ${d}`)):d.includes("array")||d.endsWith("s")||d.endsWith("List")||d.endsWith("Items")?(c[d]=[],b1.debug(`Using empty array for likely array parameter: ${d}`)):d.includes("object")||d.endsWith("Options")||d.endsWith("Config")||d.endsWith("Settings")?(c[d]={},b1.debug(`Using empty object for likely object parameter: ${d}`)):(c[d]="",b1.debug(`Using empty string for parameter with unknown type: ${d}`))):c[d]=e}return c}("object"==typeof b&&null!==b?b:{},c);b1.debug(`Normalized args for tool ${c}:`,e),b1.debug(`Calling tool ${c} with SDK timeout ${g}ms`);let h=await a.callTool({name:c,arguments:e},void 0,{timeout:g,resetTimeoutOnProgress:!0,onprogress:a=>{b1.debug(`Progress for tool ${c}: ${a.progress}${void 0!==a.total?`/${a.total}`:""}${a.message?` — ${a.message}`:""}`),f?.(a)}});return{success:!0,data:h}}catch(e){b1.warn(`Failed to call tool ${c} on server ${b}:`,e);let a=e instanceof Error?e.message:"Unknown error",d=500;if(e instanceof bO&&e.code===dT.RequestTimeout){let a=Math.round(g/1e3);return b1.warn(`Tool ${c} execution timed out after ${a} seconds`),{success:!1,error:`Tool execution timed out after ${a} seconds`,errorType:"timeout",toolName:c,timeout:a,statusCode:408}}if(a.includes("401")||a.includes("Unauthorized")||a.includes("invalid_token")||a.includes("token_expired"))return b1.info(`OAuth authentication error detected for tool ${c} on server ${b}`),{success:!1,error:"OAuth authentication failed or tokens have expired. Please re-authenticate the server.",statusCode:401,requiresAuthentication:!0};return(a.includes("404")||a.includes("Not Found"))&&(b1.info(`404 error detected for tool ${c} on server ${b} - may indicate OAuth issues`),d=404,a="Tool endpoint not found (404). This may indicate OAuth authentication issues or the server may not be properly configured."),e instanceof bO?(a=`Failed to call tool: ${a} (Code: ${e.code})`,-32601===e.code?d=404:-32602===e.code?d=400:-32603===e.code&&(d=500)):a=`Failed to call tool: ${a}`,{success:!1,error:a,statusCode:d}}}let b5=(0,bY.h)("backend/services/mcp/resources");async function b6(a,b){if(b5.debug("Entering listServerResources method"),!a)return b5.warn(`Server ${b} not connected`),{resources:[],error:"Server not connected"};try{b5.info(`Listing resources for server ${b}`);let c=(await a.listResources()).resources||[];return b5.verbose("Processed resources:",c),{resources:c}}catch(c){if(c instanceof bO&&-32601===c.code)return b5.debug(`Server ${b} does not support resources/list`),{resources:[]};b5.warn(`Failed to list resources for server ${b}:`,c);let a=c instanceof Error?c.message:"Unknown error";return{resources:[],error:a.includes("Connection timeout")?a:`Failed to list resources: ${a}`}}}async function b7(a,b){if(b5.debug("Entering listServerResourceTemplates method"),!a)return b5.warn(`Server ${b} not connected`),{resourceTemplates:[],error:"Server not connected"};try{return b5.info(`Listing resource templates for server ${b}`),{resourceTemplates:(await a.listResourceTemplates()).resourceTemplates||[]}}catch(c){if(c instanceof bO&&-32601===c.code)return b5.debug(`Server ${b} does not support resources/templates/list`),{resourceTemplates:[]};b5.warn(`Failed to list resource templates for server ${b}:`,c);let a=c instanceof Error?c.message:"Unknown error";return{resourceTemplates:[],error:a.includes("Connection timeout")?a:`Failed to list resource templates: ${a}`}}}async function b8(a,b,c){if(b5.debug("Entering readResource method"),!a)return b5.warn(`Server ${b} not found`),{success:!1,error:`Server ${b} not found`,statusCode:404};try{let d=await (0,b0.c)(c);b5.info(`Reading resource ${d} from server ${b}`);let e=await a.readResource({uri:d});return{success:!0,data:e}}catch(e){b5.warn(`Failed to read resource ${c} on server ${b}:`,e);let a=e instanceof Error?e.message:"Unknown error",d=500;return e instanceof bO?(a=`Failed to read resource: ${a} (Code: ${e.code})`,-32601===e.code?d=404:-32602===e.code&&(d=400)):a=`Failed to read resource: ${a}`,{success:!1,error:a,statusCode:d}}}let b9=(0,bY.h)("backend/services/mcp/prompts");async function ca(a,b){if(b9.debug("Entering listServerPrompts method"),!a)return b9.warn(`Server ${b} not connected`),{prompts:[],error:"Server not connected"};try{return b9.info(`Listing prompts for server ${b}`),{prompts:(await a.listPrompts()).prompts||[]}}catch(c){if(c instanceof bO&&-32601===c.code)return b9.debug(`Server ${b} does not support prompts/list`),{prompts:[]};b9.warn(`Failed to list prompts for server ${b}:`,c);let a=c instanceof Error?c.message:"Unknown error";return{prompts:[],error:a.includes("Connection timeout")?a:`Failed to list prompts: ${a}`}}}async function cb(a,b,c,d){if(b9.debug("Entering getPrompt method"),!a)return b9.warn(`Server ${b} not found`),{success:!1,error:`Server ${b} not found`,statusCode:404};try{let e;if(d&&Object.keys(d).length>0){let a=await (0,b0.c)(d);e="object"==typeof a&&null!==a?a:void 0}b9.info(`Getting prompt ${c} from server ${b}`);let f=await a.getPrompt({name:c,arguments:e});return{success:!0,data:f}}catch(e){b9.warn(`Failed to get prompt ${c} on server ${b}:`,e);let a=e instanceof Error?e.message:"Unknown error",d=500;return e instanceof bO?(a=`Failed to get prompt: ${a} (Code: ${e.code})`,-32601===e.code?d=404:-32602===e.code&&(d=400)):a=`Failed to get prompt: ${a}`,{success:!1,error:a,statusCode:d}}}var cc=c(29021),cd=c(21820),ce=c(69088);let cf=(0,bY.h)("app/api/mcp/utils");function cg(a){let b=a.transport?._abortController;return b?.signal.aborted===!0}function ch(a){return cf.debug("Entering isLikelyFilePath method"),a.includes(".")&&(a.includes("/")||a.includes("\\")||/\.[a-zA-Z0-9]+$/.test(a))}let ci=new Set(["UNABLE_TO_VERIFY_LEAF_SIGNATURE","UNABLE_TO_GET_ISSUER_CERT_LOCALLY","UNABLE_TO_GET_ISSUER_CERT","SELF_SIGNED_CERT_IN_CHAIN","DEPTH_ZERO_SELF_SIGNED_CERT","CERT_HAS_EXPIRED","CERT_UNTRUSTED","ERR_TLS_CERT_ALTNAME_INVALID"]),cj=/unable to verify|self[- ]signed certificate|certificate has expired|altname|leaf signature|unable to get local issuer/i;function ck(a){let{messages:b,codes:c}=function(a){let b=[],c=[],d=a,e=0;for(;d&&e<10;){if(d instanceof Error){d.message&&b.push(d.message);let a=d.code;"string"==typeof a&&c.push(a)}else"string"==typeof d&&b.push(d);let a=d?.cause,f=d?.errors;if(a)d=a;else if(Array.isArray(f)&&f.length>0)d=f[0];else break;e++}return{messages:b,codes:c}}(a),d=Array.from(new Set(b.filter(Boolean))),e=d.join(": ");e||(e=a instanceof Error?a.message||a.name:String(a));let f=Array.from(new Set(c));return f.length>0&&!f.some(a=>e.includes(a))&&(e+=` (${f.join(", ")})`),(f.some(a=>ci.has(a))||d.some(a=>cj.test(a)))&&(e+=`
135
135
 
136
136
  This looks like a TLS certificate trust problem: the server presents a certificate signed by a custom/private CA that Node.js does not trust by default.
137
137
  To fix it, start FLUJO so Node trusts your CA:
138
138
  • Trust the OS certificate store (default in FLUJO): NODE_OPTIONS=--use-system-ca, or
139
139
  • Point Node at the CA file: set NODE_EXTRA_CA_CERTS=C:\\path\\to\\root-ca.crt (or FLUJO_EXTRA_CA_CERTS)
140
140
  then restart FLUJO. (curl works because it uses the OS trust store; Node does not unless told to.)`),e}function cl(a,b,c){cf.debug("Entering enhanceConnectionErrorMessage method"),cf.info(`Received ${c.length} stderr log entries for ${b.name}`),c.length>0&&cf.info(`Stderr logs for ${b.name}:
141
- ${c.join("\n")}`);let d=c.join("\n").trim();if(d)return cf.info(`Using stderr output as primary error information for ${b.name}: ${d}`),d;if(cf.warn(`No stderr output available for ${b.name}`),!(a instanceof Error))return ck(a);let e=a.message;if(cf.debug(`Enhancing error message for: ${e}`),e.includes("Connection timeout"))return e;if(a instanceof bO){if(cf.debug(`MCP Error code: ${a.code}`),a.code===dS.ConnectionClosed)try{let a=`${ce.VL}/${b.name}`;if("stdio"===b.transport){let c=b.command;if(cf.debug(`Server directory: ${a}`),cf.debug(`Executable path: ${c}`),"cmd.exe"===c&&b.args&&b.args.length>1&&"/c"===b.args[0]){let c=b.args[1];cf.debug(`Checking .bat file: ${c}`);let f=bW.isAbsolute(c)?c:bW.join((0,bZ.ok)(),a,c);cf.debug(`Full .bat file path: ${f}`);let g=cc.existsSync(f);if(cf.debug(`.bat file exists: ${g}`),!g)return`MCP connection closed: ${e}. The .bat file does not exist: ${f}${d?"\n\nStderr output:\n"+d:""}`}else if(ch(c)){cf.debug(`Checking if executable exists: ${c}`);let b=cc.existsSync(c);if(cf.debug(`Executable exists: ${b}`),!b){let b=bW.join((0,bZ.ok)(),a,c);cf.debug(`Checking in server directory: ${b}`);let f=cc.existsSync(b);if(cf.debug(`Executable exists in server directory: ${f}`),!f)return`MCP connection closed: ${e}. The executable file does not exist: ${c} or ${b}${d?"\n\nStderr output:\n"+d:""}`}}if(b.args&&b.args.length>0){let c=b.args[0];if(ch(c)){cf.debug(`Checking script file: ${c}`);let b=((cf.debug("Entering isAbsolutePath method"),"win32"===cd.platform())?/^[a-zA-Z]:[/\\]/.test(c)||c.startsWith("\\\\"):c.startsWith("/"))?c:bW.join((0,bZ.ok)(),a,c);cf.debug(`Full script path: ${b}`);let f=cc.existsSync(b);if(cf.debug(`Script exists: ${f}`),!f)return`MCP connection closed: ${e}. The script file does not exist: ${b}${d?"\n\nStderr output:\n"+d:""}`}}}else if("websocket"===b.transport)try{new URL(b.websocketUrl)}catch(a){return`MCP connection closed: ${e}. Invalid WebSocket URL: ${b.websocketUrl}${d?"\n\nStderr output:\n"+d:""}`}if(d)return`MCP connection closed: ${e}. Check if the server is running and accessible.
141
+ ${c.join("\n")}`);let d=c.join("\n").trim();if(d)return cf.info(`Using stderr output as primary error information for ${b.name}: ${d}`),d;if(cf.warn(`No stderr output available for ${b.name}`),!(a instanceof Error))return ck(a);let e=a.message;if(cf.debug(`Enhancing error message for: ${e}`),e.includes("Connection timeout"))return e;if(a instanceof bO){if(cf.debug(`MCP Error code: ${a.code}`),a.code===dT.ConnectionClosed)try{let a=`${ce.VL}/${b.name}`;if("stdio"===b.transport){let c=b.command;if(cf.debug(`Server directory: ${a}`),cf.debug(`Executable path: ${c}`),"cmd.exe"===c&&b.args&&b.args.length>1&&"/c"===b.args[0]){let c=b.args[1];cf.debug(`Checking .bat file: ${c}`);let f=bW.isAbsolute(c)?c:bW.join((0,bZ.ok)(),a,c);cf.debug(`Full .bat file path: ${f}`);let g=cc.existsSync(f);if(cf.debug(`.bat file exists: ${g}`),!g)return`MCP connection closed: ${e}. The .bat file does not exist: ${f}${d?"\n\nStderr output:\n"+d:""}`}else if(ch(c)){cf.debug(`Checking if executable exists: ${c}`);let b=cc.existsSync(c);if(cf.debug(`Executable exists: ${b}`),!b){let b=bW.join((0,bZ.ok)(),a,c);cf.debug(`Checking in server directory: ${b}`);let f=cc.existsSync(b);if(cf.debug(`Executable exists in server directory: ${f}`),!f)return`MCP connection closed: ${e}. The executable file does not exist: ${c} or ${b}${d?"\n\nStderr output:\n"+d:""}`}}if(b.args&&b.args.length>0){let c=b.args[0];if(ch(c)){cf.debug(`Checking script file: ${c}`);let b=((cf.debug("Entering isAbsolutePath method"),"win32"===cd.platform())?/^[a-zA-Z]:[/\\]/.test(c)||c.startsWith("\\\\"):c.startsWith("/"))?c:bW.join((0,bZ.ok)(),a,c);cf.debug(`Full script path: ${b}`);let f=cc.existsSync(b);if(cf.debug(`Script exists: ${f}`),!f)return`MCP connection closed: ${e}. The script file does not exist: ${b}${d?"\n\nStderr output:\n"+d:""}`}}}else if("websocket"===b.transport)try{new URL(b.websocketUrl)}catch(a){return`MCP connection closed: ${e}. Invalid WebSocket URL: ${b.websocketUrl}${d?"\n\nStderr output:\n"+d:""}`}if(d)return`MCP connection closed: ${e}. Check if the server is running and accessible.
142
142
 
143
143
  Stderr output:
144
144
  ${d}`;return`MCP connection closed: ${e}. Check if the server is running and accessible.`}catch(a){return cf.warn("Error checking file existence:",a),`MCP connection closed: ${e}. Error checking files: ${a instanceof Error?a.message:"Unknown error"}${d?"\n\nStderr output:\n"+d:""}`}return d?`MCP error ${a.code}: ${e}
@@ -147,8 +147,8 @@ Stderr output:
147
147
  ${d}`:`MCP error ${a.code}: ${e}`}let f=ck(a);return d?`${f}
148
148
 
149
149
  Stderr output:
150
- ${d}`:f}let cm=["OAuth authentication required","UnauthorizedError","invalid_token","token_expired","HTTP 401","HTTP 403","Missing Authorization header","Authorization header is required"];function cn(a){if(!(a instanceof Error))return!1;if("OAuthAuthenticationRequired"===a.name)return!0;let b=a.code;if(401===b||403===b)return!0;let c=a.errorCode;return"string"==typeof c&&c.length>0||cm.some(b=>a.message.includes(b))}var co=c(61800),cp=c(12190);let cq=["key","secret","token","password"];function cr(a,b){return a&&"object"==typeof a&&"value"in a?{value:a.value??"",isSecret:!!a.metadata?.isSecret}:{value:a??"",isSecret:cq.some(a=>b.toLowerCase().includes(a))||"authorization"===b.trim().toLowerCase()}}let cs=new Set(["npx","bunx","uvx","pipx","dlx"]),ct=new Set(["pnpm","yarn","bun","npm"]),cu=new Set(["dlx","exec","x"]);function cv(a,b=[]){let c=((a||"").split(/[\\/]/).filter(Boolean).pop()||"").toLowerCase().replace(/\.(cmd|exe|bat|ps1)$/i,"");if(cs.has(c))return!0;if(ct.has(c)){let a=(b[0]||"").toLowerCase();return cu.has(a)}return!1}function cw(a){return"stdio"===a.transport&&cv(a.command,a.args??[])}var cx=c(42885);function cy(a){return!!a._zod}function cz(a,b){return cy(a)?cx.xL(a,b):a.safeParse(b)}function cA(a){let b;if(a&&(b=cy(a)?a._zod?.def?.shape:a.shape)){if("function"==typeof b)try{return b()}catch{return}return b}}function cB(a){return"completed"===a||"failed"===a||"cancelled"===a}function cC(a){let b=cA(a),c=b?.method;if(!c)throw Error("Schema is missing a method literal");let d=function(a){if(cy(a)){let b=a._zod?.def;if(b){if(void 0!==b.value)return b.value;if(Array.isArray(b.values)&&b.values.length>0)return b.values[0]}}let b=a._def;if(b){if(void 0!==b.value)return b.value;if(Array.isArray(b.values)&&b.values.length>0)return b.values[0]}let c=a.value;if(void 0!==c)return c}(c);if("string"!=typeof d)throw Error("Schema method literal must be a string");return d}function cD(a,b){let c=cz(a,b);if(!c.success)throw c.error;return c.data}Symbol("Let zodToJsonSchema decide on which parser to use");class cE{constructor(a){this._options=a,this._requestMessageId=0,this._requestHandlers=new Map,this._requestHandlerAbortControllers=new Map,this._notificationHandlers=new Map,this._responseHandlers=new Map,this._progressHandlers=new Map,this._timeoutInfo=new Map,this._pendingDebouncedNotifications=new Set,this._taskProgressTokens=new Map,this._requestResolvers=new Map,this.setNotificationHandler(I,a=>{this._oncancel(a)}),this.setNotificationHandler($,a=>{this._onprogress(a)}),this.setRequestHandler(X,a=>({})),this._taskStore=a?.taskStore,this._taskMessageQueue=a?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(ah,async(a,b)=>{let c=await this._taskStore.getTask(a.params.taskId,b.sessionId);if(!c)throw new bO(dS.InvalidParams,"Failed to retrieve task: Task not found");return{...c}}),this.setRequestHandler(aj,async(a,b)=>{let c=async()=>{let d=a.params.taskId;if(this._taskMessageQueue){let a;for(;a=await this._taskMessageQueue.dequeue(d,b.sessionId);){if("response"===a.type||"error"===a.type){let b=a.message,c=b.id,d=this._requestResolvers.get(c);if(d)this._requestResolvers.delete(c),d("response"===a.type?b:new bO(b.error.code,b.error.message,b.error.data));else{let b="response"===a.type?"Response":"Error";this._onerror(Error(`${b} handler missing for request ${c}`))}continue}await this._transport?.send(a.message,{relatedRequestId:b.requestId})}}let e=await this._taskStore.getTask(d,b.sessionId);if(!e)throw new bO(dS.InvalidParams,`Task not found: ${d}`);if(!cB(e.status))return await this._waitForTaskUpdate(d,b.signal),await c();if(cB(e.status)){let a=await this._taskStore.getTaskResult(d,b.sessionId);return this._clearTaskQueue(d),{...a,_meta:{...a._meta,[l]:{taskId:d}}}}return await c()};return await c()}),this.setRequestHandler(ak,async(a,b)=>{try{let{tasks:c,nextCursor:d}=await this._taskStore.listTasks(a.params?.cursor,b.sessionId);return{tasks:c,nextCursor:d,_meta:{}}}catch(a){throw new bO(dS.InvalidParams,`Failed to list tasks: ${a instanceof Error?a.message:String(a)}`)}}),this.setRequestHandler(am,async(a,b)=>{try{let c=await this._taskStore.getTask(a.params.taskId,b.sessionId);if(!c)throw new bO(dS.InvalidParams,`Task not found: ${a.params.taskId}`);if(cB(c.status))throw new bO(dS.InvalidParams,`Cannot cancel task in terminal status: ${c.status}`);await this._taskStore.updateTaskStatus(a.params.taskId,"cancelled","Client cancelled task execution.",b.sessionId),this._clearTaskQueue(a.params.taskId);let d=await this._taskStore.getTask(a.params.taskId,b.sessionId);if(!d)throw new bO(dS.InvalidParams,`Task not found after cancellation: ${a.params.taskId}`);return{_meta:{},...d}}catch(a){if(a instanceof bO)throw a;throw new bO(dS.InvalidRequest,`Failed to cancel task: ${a instanceof Error?a.message:String(a)}`)}}))}async _oncancel(a){if(!a.params.requestId)return;let b=this._requestHandlerAbortControllers.get(a.params.requestId);b?.abort(a.params.reason)}_setupTimeout(a,b,c,d,e=!1){this._timeoutInfo.set(a,{timeoutId:setTimeout(d,b),startTime:Date.now(),timeout:b,maxTotalTimeout:c,resetTimeoutOnProgress:e,onTimeout:d})}_resetTimeout(a){let b=this._timeoutInfo.get(a);if(!b)return!1;let c=Date.now()-b.startTime;if(b.maxTotalTimeout&&c>=b.maxTotalTimeout)throw this._timeoutInfo.delete(a),bO.fromError(dS.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:b.maxTotalTimeout,totalElapsed:c});return clearTimeout(b.timeoutId),b.timeoutId=setTimeout(b.onTimeout,b.timeout),!0}_cleanupTimeout(a){let b=this._timeoutInfo.get(a);b&&(clearTimeout(b.timeoutId),this._timeoutInfo.delete(a))}async connect(a){if(this._transport)throw Error("Already connected to a transport. Call close() before connecting to a new transport, or use a separate Protocol instance per connection.");this._transport=a;let b=this.transport?.onclose;this._transport.onclose=()=>{b?.(),this._onclose()};let c=this.transport?.onerror;this._transport.onerror=a=>{c?.(a),this._onerror(a)};let d=this._transport?.onmessage;this._transport.onmessage=(a,b)=>{if(d?.(a,b),D(a)||E.safeParse(a).success)this._onresponse(a);else if(A(a))this._onrequest(a,b);else B.safeParse(a).success?this._onnotification(a):this._onerror(Error(`Unknown message type: ${JSON.stringify(a)}`))},await this._transport.start()}_onclose(){let a=this._responseHandlers;for(let a of(this._responseHandlers=new Map,this._progressHandlers.clear(),this._taskProgressTokens.clear(),this._pendingDebouncedNotifications.clear(),this._timeoutInfo.values()))clearTimeout(a.timeoutId);for(let a of(this._timeoutInfo.clear(),this._requestHandlerAbortControllers.values()))a.abort();this._requestHandlerAbortControllers.clear();let b=bO.fromError(dS.ConnectionClosed,"Connection closed");for(let c of(this._transport=void 0,this.onclose?.(),a.values()))c(b)}_onerror(a){this.onerror?.(a)}_onnotification(a){let b=this._notificationHandlers.get(a.method)??this.fallbackNotificationHandler;void 0!==b&&Promise.resolve().then(()=>b(a)).catch(a=>this._onerror(Error(`Uncaught error in notification handler: ${a}`)))}_onrequest(a,b){let c,d=this._requestHandlers.get(a.method)??this.fallbackRequestHandler,e=this._transport,f=a.params?._meta?.[l]?.taskId;if(void 0===d){let b={jsonrpc:"2.0",id:a.id,error:{code:dS.MethodNotFound,message:"Method not found"}};f&&this._taskMessageQueue?this._enqueueTaskMessage(f,{type:"error",message:b,timestamp:Date.now()},e?.sessionId).catch(a=>this._onerror(Error(`Failed to enqueue error response: ${a}`))):e?.send(b).catch(a=>this._onerror(Error(`Failed to send an error response: ${a}`)));return}let g=new AbortController;this._requestHandlerAbortControllers.set(a.id,g);let h=(c=a.params,t.safeParse(c).success)?a.params.task:void 0,i=this._taskStore?this.requestTaskStore(a,e?.sessionId):void 0,j={signal:g.signal,sessionId:e?.sessionId,_meta:a.params?._meta,sendNotification:async b=>{if(g.signal.aborted)return;let c={relatedRequestId:a.id};f&&(c.relatedTask={taskId:f}),await this.notification(b,c)},sendRequest:async(b,c,d)=>{if(g.signal.aborted)throw new bO(dS.ConnectionClosed,"Request was cancelled");let e={...d,relatedRequestId:a.id};f&&!e.relatedTask&&(e.relatedTask={taskId:f});let h=e.relatedTask?.taskId??f;return h&&i&&await i.updateTaskStatus(h,"input_required"),await this.request(b,c,e)},authInfo:b?.authInfo,requestId:a.id,requestInfo:b?.requestInfo,taskId:f,taskStore:i,taskRequestedTtl:h?.ttl,closeSSEStream:b?.closeSSEStream,closeStandaloneSSEStream:b?.closeStandaloneSSEStream};Promise.resolve().then(()=>{h&&this.assertTaskHandlerCapability(a.method)}).then(()=>d(a,j)).then(async b=>{if(g.signal.aborted)return;let c={result:b,jsonrpc:"2.0",id:a.id};f&&this._taskMessageQueue?await this._enqueueTaskMessage(f,{type:"response",message:c,timestamp:Date.now()},e?.sessionId):await e?.send(c)},async b=>{if(g.signal.aborted)return;let c={jsonrpc:"2.0",id:a.id,error:{code:Number.isSafeInteger(b.code)?b.code:dS.InternalError,message:b.message??"Internal error",...void 0!==b.data&&{data:b.data}}};f&&this._taskMessageQueue?await this._enqueueTaskMessage(f,{type:"error",message:c,timestamp:Date.now()},e?.sessionId):await e?.send(c)}).catch(a=>this._onerror(Error(`Failed to send response: ${a}`))).finally(()=>{this._requestHandlerAbortControllers.get(a.id)===g&&this._requestHandlerAbortControllers.delete(a.id)})}_onprogress(a){let{progressToken:b,...c}=a.params,d=Number(b),e=this._progressHandlers.get(d);if(!e)return void this._onerror(Error(`Received a progress notification for an unknown token: ${JSON.stringify(a)}`));let f=this._responseHandlers.get(d),g=this._timeoutInfo.get(d);if(g&&f&&g.resetTimeoutOnProgress)try{this._resetTimeout(d)}catch(a){this._responseHandlers.delete(d),this._progressHandlers.delete(d),this._cleanupTimeout(d),f(a);return}e(c)}_onresponse(a){let b=Number(a.id),c=this._requestResolvers.get(b);if(c){this._requestResolvers.delete(b),c(D(a)?a:new bO(a.error.code,a.error.message,a.error.data));return}let d=this._responseHandlers.get(b);if(void 0===d)return void this._onerror(Error(`Received a response for an unknown message ID: ${JSON.stringify(a)}`));this._responseHandlers.delete(b),this._cleanupTimeout(b);let e=!1;if(D(a)&&a.result&&"object"==typeof a.result){let c=a.result;if(c.task&&"object"==typeof c.task){let a=c.task;"string"==typeof a.taskId&&(e=!0,this._taskProgressTokens.set(a.taskId,b))}}e||this._progressHandlers.delete(b),d(D(a)?a:bO.fromError(a.error.code,a.error.message,a.error.data))}get transport(){return this._transport}async close(){await this._transport?.close()}async *requestStream(a,b,c){let d,{task:e}=c??{};if(!e){try{let d=await this.request(a,b,c);yield{type:"result",result:d}}catch(a){yield{type:"error",error:a instanceof bO?a:new bO(dS.InternalError,String(a))}}return}try{let e=await this.request(a,ae,c);if(e.task)d=e.task.taskId,yield{type:"taskCreated",task:e.task};else throw new bO(dS.InternalError,"Task creation did not return a task");for(;;){let a=await this.getTask({taskId:d},c);if(yield{type:"taskStatus",task:a},cB(a.status)){if("completed"===a.status){let a=await this.getTaskResult({taskId:d},b,c);yield{type:"result",result:a}}else"failed"===a.status?yield{type:"error",error:new bO(dS.InternalError,`Task ${d} failed`)}:"cancelled"===a.status&&(yield{type:"error",error:new bO(dS.InternalError,`Task ${d} was cancelled`)});return}if("input_required"===a.status){let a=await this.getTaskResult({taskId:d},b,c);yield{type:"result",result:a};return}let e=a.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(a=>setTimeout(a,e)),c?.signal?.throwIfAborted()}}catch(a){yield{type:"error",error:a instanceof bO?a:new bO(dS.InternalError,String(a))}}}request(a,b,c){let{relatedRequestId:d,resumptionToken:e,onresumptiontoken:f,task:g,relatedTask:h}=c??{};return new Promise((i,j)=>{let k=a=>{j(a)};if(!this._transport)return void k(Error("Not connected"));if(this._options?.enforceStrictCapabilities===!0)try{this.assertCapabilityForMethod(a.method),g&&this.assertTaskCapability(a.method)}catch(a){k(a);return}c?.signal?.throwIfAborted();let m=this._requestMessageId++,n={...a,jsonrpc:"2.0",id:m};c?.onprogress&&(this._progressHandlers.set(m,c.onprogress),n.params={...a.params,_meta:{...a.params?._meta||{},progressToken:m}}),g&&(n.params={...n.params,task:g}),h&&(n.params={...n.params,_meta:{...n.params?._meta||{},[l]:h}});let o=a=>{this._responseHandlers.delete(m),this._progressHandlers.delete(m),this._cleanupTimeout(m),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:m,reason:String(a)}},{relatedRequestId:d,resumptionToken:e,onresumptiontoken:f}).catch(a=>this._onerror(Error(`Failed to send cancellation: ${a}`))),j(a instanceof bO?a:new bO(dS.RequestTimeout,String(a)))};this._responseHandlers.set(m,a=>{if(!c?.signal?.aborted){if(a instanceof Error)return j(a);try{let c=cz(b,a.result);c.success?i(c.data):j(c.error)}catch(a){j(a)}}}),c?.signal?.addEventListener("abort",()=>{o(c?.signal?.reason)});let p=c?.timeout??6e4;this._setupTimeout(m,p,c?.maxTotalTimeout,()=>o(bO.fromError(dS.RequestTimeout,"Request timed out",{timeout:p})),c?.resetTimeoutOnProgress??!1);let q=h?.taskId;if(q){let a=a=>{let b=this._responseHandlers.get(m);b?b(a):this._onerror(Error(`Response handler missing for side-channeled request ${m}`))};this._requestResolvers.set(m,a),this._enqueueTaskMessage(q,{type:"request",message:n,timestamp:Date.now()}).catch(a=>{this._cleanupTimeout(m),j(a)})}else this._transport.send(n,{relatedRequestId:d,resumptionToken:e,onresumptiontoken:f}).catch(a=>{this._cleanupTimeout(m),j(a)})})}async getTask(a,b){return this.request({method:"tasks/get",params:a},ai,b)}async getTaskResult(a,b,c){return this.request({method:"tasks/result",params:a},b,c)}async listTasks(a,b){return this.request({method:"tasks/list",params:a},al,b)}async cancelTask(a,b){return this.request({method:"tasks/cancel",params:a},an,b)}async notification(a,b){if(!this._transport)throw Error("Not connected");this.assertNotificationCapability(a.method);let c=b?.relatedTask?.taskId;if(c){let d={...a,jsonrpc:"2.0",params:{...a.params,_meta:{...a.params?._meta||{},[l]:b.relatedTask}}};await this._enqueueTaskMessage(c,{type:"notification",message:d,timestamp:Date.now()});return}if((this._options?.debouncedNotificationMethods??[]).includes(a.method)&&!a.params&&!b?.relatedRequestId&&!b?.relatedTask){if(this._pendingDebouncedNotifications.has(a.method))return;this._pendingDebouncedNotifications.add(a.method),Promise.resolve().then(()=>{if(this._pendingDebouncedNotifications.delete(a.method),!this._transport)return;let c={...a,jsonrpc:"2.0"};b?.relatedTask&&(c={...c,params:{...c.params,_meta:{...c.params?._meta||{},[l]:b.relatedTask}}}),this._transport?.send(c,b).catch(a=>this._onerror(a))});return}let d={...a,jsonrpc:"2.0"};b?.relatedTask&&(d={...d,params:{...d.params,_meta:{...d.params?._meta||{},[l]:b.relatedTask}}}),await this._transport.send(d,b)}setRequestHandler(a,b){let c=cC(a);this.assertRequestHandlerCapability(c),this._requestHandlers.set(c,(c,d)=>Promise.resolve(b(cD(a,c),d)))}removeRequestHandler(a){this._requestHandlers.delete(a)}assertCanSetRequestHandler(a){if(this._requestHandlers.has(a))throw Error(`A request handler for ${a} already exists, which would be overridden`)}setNotificationHandler(a,b){let c=cC(a);this._notificationHandlers.set(c,c=>Promise.resolve(b(cD(a,c))))}removeNotificationHandler(a){this._notificationHandlers.delete(a)}_cleanupTaskProgressHandler(a){let b=this._taskProgressTokens.get(a);void 0!==b&&(this._progressHandlers.delete(b),this._taskProgressTokens.delete(a))}async _enqueueTaskMessage(a,b,c){if(!this._taskStore||!this._taskMessageQueue)throw Error("Cannot enqueue task message: taskStore and taskMessageQueue are not configured");let d=this._options?.maxTaskQueueSize;await this._taskMessageQueue.enqueue(a,b,c,d)}async _clearTaskQueue(a,b){if(this._taskMessageQueue){for(let c of(await this._taskMessageQueue.dequeueAll(a,b)))if("request"===c.type&&A(c.message)){let b=c.message.id,d=this._requestResolvers.get(b);d?(d(new bO(dS.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(b)):this._onerror(Error(`Resolver missing for request ${b} during task ${a} cleanup`))}}}async _waitForTaskUpdate(a,b){let c=this._options?.defaultTaskPollInterval??1e3;try{let b=await this._taskStore?.getTask(a);b?.pollInterval&&(c=b.pollInterval)}catch{}return new Promise((a,d)=>{if(b.aborted)return void d(new bO(dS.InvalidRequest,"Request cancelled"));let e=setTimeout(a,c);b.addEventListener("abort",()=>{clearTimeout(e),d(new bO(dS.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(a,b){let c=this._taskStore;if(!c)throw Error("No task store configured");return{createTask:async d=>{if(!a)throw Error("No request provided");return await c.createTask(d,a.id,{method:a.method,params:a.params},b)},getTask:async a=>{let d=await c.getTask(a,b);if(!d)throw new bO(dS.InvalidParams,"Failed to retrieve task: Task not found");return d},storeTaskResult:async(a,d,e)=>{await c.storeTaskResult(a,d,e,b);let f=await c.getTask(a,b);if(f){let b=ag.parse({method:"notifications/tasks/status",params:f});await this.notification(b),cB(f.status)&&this._cleanupTaskProgressHandler(a)}},getTaskResult:a=>c.getTaskResult(a,b),updateTaskStatus:async(a,d,e)=>{let f=await c.getTask(a,b);if(!f)throw new bO(dS.InvalidParams,`Task "${a}" not found - it may have been cleaned up`);if(cB(f.status))throw new bO(dS.InvalidParams,`Cannot update task "${a}" from terminal status "${f.status}" to "${d}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await c.updateTaskStatus(a,d,e,b);let g=await c.getTask(a,b);if(g){let b=ag.parse({method:"notifications/tasks/status",params:g});await this.notification(b),cB(g.status)&&this._cleanupTaskProgressHandler(a)}},listTasks:a=>c.listTasks(a,b)}}}function cF(a){return null!==a&&"object"==typeof a&&!Array.isArray(a)}var cG=c(86724),cH=c(72424);class cI{constructor(a){this._ajv=a??function(){let a=new cG({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return cH(a),a}()}getValidator(a){let b="$id"in a&&"string"==typeof a.$id?this._ajv.getSchema(a.$id)??this._ajv.compile(a):this._ajv.compile(a);return a=>b(a)?{valid:!0,data:a,errorMessage:void 0}:{valid:!1,data:void 0,errorMessage:this._ajv.errorsText(b.errors)}}}class cJ{constructor(a){this._client=a}async *callToolStream(a,b=a1,c){let d=this._client,e={...c,task:c?.task??(d.isToolTask(a.name)?{}:void 0)},f=d.requestStream({method:"tools/call",params:a},b,e),g=d.getToolOutputValidator(a.name);for await(let b of f){if("result"===b.type&&g){let c=b.result;if(!c.structuredContent&&!c.isError)return void(yield{type:"error",error:new bO(dS.InvalidRequest,`Tool ${a.name} has an output schema but did not return structured content`)});if(c.structuredContent)try{let a=g(c.structuredContent);if(!a.valid)return void(yield{type:"error",error:new bO(dS.InvalidParams,`Structured content does not match the tool's output schema: ${a.errorMessage}`)})}catch(a){if(a instanceof bO)return void(yield{type:"error",error:a});yield{type:"error",error:new bO(dS.InvalidParams,`Failed to validate structured content: ${a instanceof Error?a.message:String(a)}`)};return}}yield b}}async getTask(a,b){return this._client.getTask({taskId:a},b)}async getTaskResult(a,b,c){return this._client.getTaskResult({taskId:a},b,c)}async listTasks(a,b){return this._client.listTasks(a?{cursor:a}:void 0,b)}async cancelTask(a,b){return this._client.cancelTask({taskId:a},b)}requestStream(a,b,c){return this._client.requestStream(a,b,c)}}class cK extends cE{constructor(a,b){super(b),this._clientInfo=a,this._cachedToolOutputValidators=new Map,this._cachedKnownTaskTools=new Set,this._cachedRequiredTaskTools=new Set,this._listChangedDebounceTimers=new Map,this._capabilities=b?.capabilities??{},this._jsonSchemaValidator=b?.jsonSchemaValidator??new cI,b?.listChanged&&(this._pendingListChangedConfig=b.listChanged)}_setupListChangedHandlers(a){a.tools&&this._serverCapabilities?.tools?.listChanged&&this._setupListChangedHandler("tools",a4,a.tools,async()=>(await this.listTools()).tools),a.prompts&&this._serverCapabilities?.prompts?.listChanged&&this._setupListChangedHandler("prompts",aX,a.prompts,async()=>(await this.listPrompts()).prompts),a.resources&&this._serverCapabilities?.resources?.listChanged&&this._setupListChangedHandler("resources",aD,a.resources,async()=>(await this.listResources()).resources)}get experimental(){return this._experimental||(this._experimental={tasks:new cJ(this)}),this._experimental}registerCapabilities(a){if(this.transport)throw Error("Cannot register capabilities after connecting to transport");this._capabilities=function(a,b){let c={...a};for(let a in b){let d=b[a];if(void 0===d)continue;let e=c[a];cF(e)&&cF(d)?c[a]={...e,...d}:c[a]=d}return c}(this._capabilities,a)}setRequestHandler(a,b){let c,d=cA(a),e=d?.method;if(!e)throw Error("Schema is missing a method literal");if(cy(e)){let a=e._zod?.def;c=a?.value??e.value}else{let a=e._def;c=a?.value??e.value}if("string"!=typeof c)throw Error("Schema method literal must be a string");let f=c;if("elicitation/create"===f){let c=async(a,c)=>{let d=cz(bB,a);if(!d.success){let a=d.error instanceof Error?d.error.message:String(d.error);throw new bO(dS.InvalidParams,`Invalid elicitation request: ${a}`)}let{params:e}=d.data;e.mode=e.mode??"form";let{supportsFormMode:f,supportsUrlMode:g}=function(a){if(!a)return{supportsFormMode:!1,supportsUrlMode:!1};let b=void 0!==a.form,c=void 0!==a.url;return{supportsFormMode:b||!b&&!c,supportsUrlMode:c}}(this._capabilities.elicitation);if("form"===e.mode&&!f)throw new bO(dS.InvalidParams,"Client does not support form-mode elicitation requests");if("url"===e.mode&&!g)throw new bO(dS.InvalidParams,"Client does not support URL-mode elicitation requests");let h=await Promise.resolve(b(a,c));if(e.task){let a=cz(ae,h);if(!a.success){let b=a.error instanceof Error?a.error.message:String(a.error);throw new bO(dS.InvalidParams,`Invalid task creation result: ${b}`)}return a.data}let i=cz(bE,h);if(!i.success){let a=i.error instanceof Error?i.error.message:String(i.error);throw new bO(dS.InvalidParams,`Invalid elicitation result: ${a}`)}let j=i.data,k="form"===e.mode?e.requestedSchema:void 0;if("form"===e.mode&&"accept"===j.action&&j.content&&k&&this._capabilities.elicitation?.form?.applyDefaults)try{!function a(b,c){if(b&&null!==c&&"object"==typeof c){if("object"===b.type&&b.properties&&"object"==typeof b.properties){let d=b.properties;for(let b of Object.keys(d)){let e=d[b];void 0===c[b]&&Object.prototype.hasOwnProperty.call(e,"default")&&(c[b]=e.default),void 0!==c[b]&&a(e,c[b])}}if(Array.isArray(b.anyOf))for(let d of b.anyOf)"boolean"!=typeof d&&a(d,c);if(Array.isArray(b.oneOf))for(let d of b.oneOf)"boolean"!=typeof d&&a(d,c)}}(k,j.content)}catch{}return j};return super.setRequestHandler(a,c)}if("sampling/createMessage"===f){let c=async(a,c)=>{let d=cz(bj,a);if(!d.success){let a=d.error instanceof Error?d.error.message:String(d.error);throw new bO(dS.InvalidParams,`Invalid sampling request: ${a}`)}let{params:e}=d.data,f=await Promise.resolve(b(a,c));if(e.task){let a=cz(ae,f);if(!a.success){let b=a.error instanceof Error?a.error.message:String(a.error);throw new bO(dS.InvalidParams,`Invalid task creation result: ${b}`)}return a.data}let g=cz(e.tools||e.toolChoice?bl:bk,f);if(!g.success){let a=g.error instanceof Error?g.error.message:String(g.error);throw new bO(dS.InvalidParams,`Invalid sampling result: ${a}`)}return g.data};return super.setRequestHandler(a,c)}return super.setRequestHandler(a,b)}assertCapability(a,b){if(!this._serverCapabilities?.[a])throw Error(`Server does not support ${a} (required for ${b})`)}async connect(a,b){if(await super.connect(a),void 0===a.sessionId)try{let c=await this.request({method:"initialize",params:{protocolVersion:j,capabilities:this._capabilities,clientInfo:this._clientInfo}},V,b);if(void 0===c)throw Error(`Server sent invalid initialize result: ${c}`);if(!k.includes(c.protocolVersion))throw Error(`Server's protocol version is not supported: ${c.protocolVersion}`);this._serverCapabilities=c.capabilities,this._serverVersion=c.serverInfo,a.setProtocolVersion&&a.setProtocolVersion(c.protocolVersion),this._instructions=c.instructions,await this.notification({method:"notifications/initialized"}),this._pendingListChangedConfig&&(this._setupListChangedHandlers(this._pendingListChangedConfig),this._pendingListChangedConfig=void 0)}catch(a){throw this.close(),a}}getServerCapabilities(){return this._serverCapabilities}getServerVersion(){return this._serverVersion}getInstructions(){return this._instructions}assertCapabilityForMethod(a){switch(a){case"logging/setLevel":if(!this._serverCapabilities?.logging)throw Error(`Server does not support logging (required for ${a})`);break;case"prompts/get":case"prompts/list":if(!this._serverCapabilities?.prompts)throw Error(`Server does not support prompts (required for ${a})`);break;case"resources/list":case"resources/templates/list":case"resources/read":case"resources/subscribe":case"resources/unsubscribe":if(!this._serverCapabilities?.resources)throw Error(`Server does not support resources (required for ${a})`);if("resources/subscribe"===a&&!this._serverCapabilities.resources.subscribe)throw Error(`Server does not support resource subscriptions (required for ${a})`);break;case"tools/call":case"tools/list":if(!this._serverCapabilities?.tools)throw Error(`Server does not support tools (required for ${a})`);break;case"completion/complete":if(!this._serverCapabilities?.completions)throw Error(`Server does not support completions (required for ${a})`)}}assertNotificationCapability(a){if("notifications/roots/list_changed"===a&&!this._capabilities.roots?.listChanged)throw Error(`Client does not support roots list changed notifications (required for ${a})`)}assertRequestHandlerCapability(a){if(this._capabilities)switch(a){case"sampling/createMessage":if(!this._capabilities.sampling)throw Error(`Client does not support sampling capability (required for ${a})`);break;case"elicitation/create":if(!this._capabilities.elicitation)throw Error(`Client does not support elicitation capability (required for ${a})`);break;case"roots/list":if(!this._capabilities.roots)throw Error(`Client does not support roots capability (required for ${a})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw Error(`Client does not support tasks capability (required for ${a})`)}}assertTaskCapability(a){var b=this._serverCapabilities?.tasks?.requests,c="Server";if(!b)throw Error(`${c} does not support task creation (required for ${a})`);if("tools/call"===a&&!b.tools?.call)throw Error(`${c} does not support task creation for tools/call (required for ${a})`)}assertTaskHandlerCapability(a){if(this._capabilities){var b=this._capabilities.tasks?.requests,c="Client";if(!b)throw Error(`${c} does not support task creation (required for ${a})`);switch(a){case"sampling/createMessage":if(!b.sampling?.createMessage)throw Error(`${c} does not support task creation for sampling/createMessage (required for ${a})`);break;case"elicitation/create":if(!b.elicitation?.create)throw Error(`${c} does not support task creation for elicitation/create (required for ${a})`)}}}async ping(a){return this.request({method:"ping"},G,a)}async complete(a,b){return this.request({method:"completion/complete",params:a},bJ,b)}async setLoggingLevel(a,b){return this.request({method:"logging/setLevel",params:{level:a}},G,b)}async getPrompt(a,b){return this.request({method:"prompts/get",params:a},aW,b)}async listPrompts(a,b){return this.request({method:"prompts/list",params:a},aL,b)}async listResources(a,b){return this.request({method:"resources/list",params:a},ax,b)}async listResourceTemplates(a,b){return this.request({method:"resources/templates/list",params:a},az,b)}async readResource(a,b){return this.request({method:"resources/read",params:a},aC,b)}async subscribeResource(a,b){return this.request({method:"resources/subscribe",params:a},G,b)}async unsubscribeResource(a,b){return this.request({method:"resources/unsubscribe",params:a},G,b)}async callTool(a,b=a1,c){if(this.isToolTaskRequired(a.name))throw new bO(dS.InvalidRequest,`Tool "${a.name}" requires task-based execution. Use client.experimental.tasks.callToolStream() instead.`);let d=await this.request({method:"tools/call",params:a},b,c),e=this.getToolOutputValidator(a.name);if(e){if(!d.structuredContent&&!d.isError)throw new bO(dS.InvalidRequest,`Tool ${a.name} has an output schema but did not return structured content`);if(d.structuredContent)try{let a=e(d.structuredContent);if(!a.valid)throw new bO(dS.InvalidParams,`Structured content does not match the tool's output schema: ${a.errorMessage}`)}catch(a){if(a instanceof bO)throw a;throw new bO(dS.InvalidParams,`Failed to validate structured content: ${a instanceof Error?a.message:String(a)}`)}}return d}isToolTask(a){return!!this._serverCapabilities?.tasks?.requests?.tools?.call&&this._cachedKnownTaskTools.has(a)}isToolTaskRequired(a){return this._cachedRequiredTaskTools.has(a)}cacheToolMetadata(a){for(let b of(this._cachedToolOutputValidators.clear(),this._cachedKnownTaskTools.clear(),this._cachedRequiredTaskTools.clear(),a)){if(b.outputSchema){let a=this._jsonSchemaValidator.getValidator(b.outputSchema);this._cachedToolOutputValidators.set(b.name,a)}let a=b.execution?.taskSupport;("required"===a||"optional"===a)&&this._cachedKnownTaskTools.add(b.name),"required"===a&&this._cachedRequiredTaskTools.add(b.name)}}getToolOutputValidator(a){return this._cachedToolOutputValidators.get(a)}async listTools(a,b){let c=await this.request({method:"tools/list",params:a},a0,b);return this.cacheToolMetadata(c.tools),c}_setupListChangedHandler(a,b,c,d){let e=a5.safeParse(c);if(!e.success)throw Error(`Invalid ${a} listChanged options: ${e.error.message}`);if("function"!=typeof c.onChanged)throw Error(`Invalid ${a} listChanged options: onChanged must be a function`);let{autoRefresh:f,debounceMs:g}=e.data,{onChanged:h}=c,i=async()=>{if(!f)return void h(null,null);try{let a=await d();h(null,a)}catch(a){h(a instanceof Error?a:Error(String(a)),null)}},j=()=>{if(g){let b=this._listChangedDebounceTimers.get(a);b&&clearTimeout(b);let c=setTimeout(i,g);this._listChangedDebounceTimers.set(a,c)}else i()};this.setNotificationHandler(b,j)}async sendRootsListChanged(){return this.notification({method:"notifications/roots/list_changed"})}}class cL{constructor(a){this._url=a}start(){if(this._socket)throw Error("WebSocketClientTransport already started! If using Client class, note that connect() calls start() automatically.");return new Promise((a,b)=>{this._socket=new WebSocket(this._url,"mcp"),this._socket.onerror=a=>{let c="error"in a?a.error:Error(`WebSocket error: ${JSON.stringify(a)}`);b(c),this.onerror?.(c)},this._socket.onopen=()=>{a()},this._socket.onclose=()=>{this.onclose?.()},this._socket.onmessage=a=>{let b;try{b=F.parse(JSON.parse(a.data))}catch(a){this.onerror?.(a);return}this.onmessage?.(b)}})}async close(){this._socket?.close()}send(a){return new Promise((b,c)=>{if(!this._socket)return void c(Error("Not connected"));this._socket?.send(JSON.stringify(a)),b()})}}function cM(a){return a?a instanceof Headers?Object.fromEntries(a.entries()):Array.isArray(a)?Object.fromEntries(a):{...a}:{}}function cN(a=fetch,b){return b?async(c,d)=>a(c,{...b,...d,headers:d?.headers?{...cM(b.headers),...cM(d.headers)}:b.headers}):a}async function cO(a){return(await d).getRandomValues(new Uint8Array(a))}async function cP(a){let b="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-._~",c="",d=await cO(a);for(let e=0;e<a;e++){let a=d[e]%b.length;c+=b[a]}return c}async function cQ(a){return await cP(a)}async function cR(a){return btoa(String.fromCharCode(...new Uint8Array(await (await d).subtle.digest("SHA-256",new TextEncoder().encode(a))))).replace(/\//g,"_").replace(/\+/g,"-").replace(/=/g,"")}async function cS(a){if(a||(a=43),a<43||a>128)throw`Expected a length between 43 and 128. Received ${a}.`;let b=await cQ(a),c=await cR(b);return{code_verifier:b,code_challenge:c}}d=globalThis.crypto?.webcrypto??globalThis.crypto??Promise.resolve().then(c.t.bind(c,77598,19)).then(a=>a.webcrypto);let cT={custom:"custom"};dT||(dT={});var cU=c(86709),cV=c(72748);let cW=h.OZ().superRefine((a,b)=>{if(!URL.canParse(a))return b.addIssue({code:cT.custom,message:"URL must be parseable",fatal:!0}),cU.tm}).refine(a=>{let b=new URL(a);return"javascript:"!==b.protocol&&"data:"!==b.protocol&&"vbscript:"!==b.protocol},{message:"URL cannot use javascript:, data:, or vbscript: scheme"}),cX=h._H({resource:h.Yj().url(),authorization_servers:h.YO(cW).optional(),jwks_uri:h.Yj().url().optional(),scopes_supported:h.YO(h.Yj()).optional(),bearer_methods_supported:h.YO(h.Yj()).optional(),resource_signing_alg_values_supported:h.YO(h.Yj()).optional(),resource_name:h.Yj().optional(),resource_documentation:h.Yj().optional(),resource_policy_uri:h.Yj().url().optional(),resource_tos_uri:h.Yj().url().optional(),tls_client_certificate_bound_access_tokens:h.zM().optional(),authorization_details_types_supported:h.YO(h.Yj()).optional(),dpop_signing_alg_values_supported:h.YO(h.Yj()).optional(),dpop_bound_access_tokens_required:h.zM().optional()}),cY=h._H({issuer:h.Yj(),authorization_endpoint:cW,token_endpoint:cW,registration_endpoint:cW.optional(),scopes_supported:h.YO(h.Yj()).optional(),response_types_supported:h.YO(h.Yj()),response_modes_supported:h.YO(h.Yj()).optional(),grant_types_supported:h.YO(h.Yj()).optional(),token_endpoint_auth_methods_supported:h.YO(h.Yj()).optional(),token_endpoint_auth_signing_alg_values_supported:h.YO(h.Yj()).optional(),service_documentation:cW.optional(),revocation_endpoint:cW.optional(),revocation_endpoint_auth_methods_supported:h.YO(h.Yj()).optional(),revocation_endpoint_auth_signing_alg_values_supported:h.YO(h.Yj()).optional(),introspection_endpoint:h.Yj().optional(),introspection_endpoint_auth_methods_supported:h.YO(h.Yj()).optional(),introspection_endpoint_auth_signing_alg_values_supported:h.YO(h.Yj()).optional(),code_challenge_methods_supported:h.YO(h.Yj()).optional(),client_id_metadata_document_supported:h.zM().optional()}),cZ=h._H({issuer:h.Yj(),authorization_endpoint:cW,token_endpoint:cW,userinfo_endpoint:cW.optional(),jwks_uri:cW,registration_endpoint:cW.optional(),scopes_supported:h.YO(h.Yj()).optional(),response_types_supported:h.YO(h.Yj()),response_modes_supported:h.YO(h.Yj()).optional(),grant_types_supported:h.YO(h.Yj()).optional(),acr_values_supported:h.YO(h.Yj()).optional(),subject_types_supported:h.YO(h.Yj()),id_token_signing_alg_values_supported:h.YO(h.Yj()),id_token_encryption_alg_values_supported:h.YO(h.Yj()).optional(),id_token_encryption_enc_values_supported:h.YO(h.Yj()).optional(),userinfo_signing_alg_values_supported:h.YO(h.Yj()).optional(),userinfo_encryption_alg_values_supported:h.YO(h.Yj()).optional(),userinfo_encryption_enc_values_supported:h.YO(h.Yj()).optional(),request_object_signing_alg_values_supported:h.YO(h.Yj()).optional(),request_object_encryption_alg_values_supported:h.YO(h.Yj()).optional(),request_object_encryption_enc_values_supported:h.YO(h.Yj()).optional(),token_endpoint_auth_methods_supported:h.YO(h.Yj()).optional(),token_endpoint_auth_signing_alg_values_supported:h.YO(h.Yj()).optional(),display_values_supported:h.YO(h.Yj()).optional(),claim_types_supported:h.YO(h.Yj()).optional(),claims_supported:h.YO(h.Yj()).optional(),service_documentation:h.Yj().optional(),claims_locales_supported:h.YO(h.Yj()).optional(),ui_locales_supported:h.YO(h.Yj()).optional(),claims_parameter_supported:h.zM().optional(),request_parameter_supported:h.zM().optional(),request_uri_parameter_supported:h.zM().optional(),require_request_uri_registration:h.zM().optional(),op_policy_uri:cW.optional(),op_tos_uri:cW.optional(),client_id_metadata_document_supported:h.zM().optional()}),c$=h.Ik({...cZ.shape,...cY.pick({code_challenge_methods_supported:!0}).shape}),c_=h.Ik({access_token:h.Yj(),id_token:h.Yj().optional(),token_type:h.Yj(),expires_in:cV.qG(h.rS,void 0).optional(),scope:h.Yj().optional(),refresh_token:h.Yj().optional()}).strip(),c0=h.Ik({error:h.Yj(),error_description:h.Yj().optional(),error_uri:h.Yj().optional()}),c1=cW.optional().or(h.eu("").transform(()=>void 0)),c2=h.Ik({redirect_uris:h.YO(cW),token_endpoint_auth_method:h.Yj().optional(),grant_types:h.YO(h.Yj()).optional(),response_types:h.YO(h.Yj()).optional(),client_name:h.Yj().optional(),client_uri:cW.optional(),logo_uri:c1,scope:h.Yj().optional(),contacts:h.YO(h.Yj()).optional(),tos_uri:c1,policy_uri:h.Yj().optional(),jwks_uri:cW.optional(),jwks:h.bz().optional(),software_id:h.Yj().optional(),software_version:h.Yj().optional(),software_statement:h.Yj().optional()}).strip(),c3=h.Ik({client_id:h.Yj(),client_secret:h.Yj().optional(),client_id_issued_at:h.ai().optional(),client_secret_expires_at:h.ai().optional()}).strip(),c4=c2.merge(c3);h.Ik({error:h.Yj(),error_description:h.Yj().optional()}).strip(),h.Ik({token:h.Yj(),token_type_hint:h.Yj().optional()}).strip();class c5 extends Error{constructor(a,b){super(a),this.errorUri=b,this.name=this.constructor.name}toResponseObject(){let a={error:this.errorCode,error_description:this.message};return this.errorUri&&(a.error_uri=this.errorUri),a}get errorCode(){return this.constructor.errorCode}}class c6 extends c5{}c6.errorCode="invalid_request";class c7 extends c5{}c7.errorCode="invalid_client";class c8 extends c5{}c8.errorCode="invalid_grant";class c9 extends c5{}c9.errorCode="unauthorized_client";class da extends c5{}da.errorCode="unsupported_grant_type";class db extends c5{}db.errorCode="invalid_scope";class dc extends c5{}dc.errorCode="access_denied";class dd extends c5{}dd.errorCode="server_error";class de extends c5{}de.errorCode="temporarily_unavailable";class df extends c5{}df.errorCode="unsupported_response_type";class dg extends c5{}dg.errorCode="unsupported_token_type";class dh extends c5{}dh.errorCode="invalid_token";class di extends c5{}di.errorCode="method_not_allowed";class dj extends c5{}dj.errorCode="too_many_requests";class dk extends c5{}dk.errorCode="invalid_client_metadata";class dl extends c5{}dl.errorCode="insufficient_scope";class dm extends c5{}dm.errorCode="invalid_target";let dn={[c6.errorCode]:c6,[c7.errorCode]:c7,[c8.errorCode]:c8,[c9.errorCode]:c9,[da.errorCode]:da,[db.errorCode]:db,[dc.errorCode]:dc,[dd.errorCode]:dd,[de.errorCode]:de,[df.errorCode]:df,[dg.errorCode]:dg,[dh.errorCode]:dh,[di.errorCode]:di,[dj.errorCode]:dj,[dk.errorCode]:dk,[dl.errorCode]:dl,[dm.errorCode]:dm};class dp extends Error{constructor(a){super(a??"Unauthorized")}}let dq="code",dr="S256";async function ds(a){let b=a instanceof Response?a.status:void 0,c=a instanceof Response?await a.text():a;try{let{error:a,error_description:b,error_uri:d}=c0.parse(JSON.parse(c));return new(dn[a]||dd)(b||"",d)}catch(a){return new dd(`${b?`HTTP ${b}: `:""}Invalid OAuth error response: ${a}. Raw body: ${c}`)}}async function dt(a,b){try{return await du(a,b)}catch(c){if(c instanceof c7||c instanceof c9)return await a.invalidateCredentials?.("all"),await du(a,b);if(c instanceof c8)return await a.invalidateCredentials?.("tokens"),await du(a,b);throw c}}async function du(a,{serverUrl:b,authorizationCode:c,scope:d,resourceMetadataUrl:e,fetchFn:f}){let g,h,i,j=await a.discoveryState?.(),k=e;if(!k&&j?.resourceMetadataUrl&&(k=new URL(j.resourceMetadataUrl)),j?.authorizationServerUrl){if(h=j.authorizationServerUrl,g=j.resourceMetadata,i=j.authorizationServerMetadata??await dC(h,{fetchFn:f}),!g)try{g=await dy(b,{resourceMetadataUrl:k},f)}catch{}(i!==j.authorizationServerMetadata||g!==j.resourceMetadata)&&await a.saveDiscoveryState?.({authorizationServerUrl:String(h),resourceMetadataUrl:k?.toString(),resourceMetadata:g,authorizationServerMetadata:i})}else{let c=await dD(b,{resourceMetadataUrl:k,fetchFn:f});h=c.authorizationServerUrl,i=c.authorizationServerMetadata,g=c.resourceMetadata,await a.saveDiscoveryState?.({authorizationServerUrl:String(h),resourceMetadataUrl:k?.toString(),resourceMetadata:g,authorizationServerMetadata:i})}let l=await dv(b,a,g),m=d||g?.scopes_supported?.join(" ")||a.clientMetadata.scope,n=await Promise.resolve(a.clientInformation());if(!n){if(void 0!==c)throw Error("Existing OAuth client information is required when exchanging an authorization code");let b=i?.client_id_metadata_document_supported===!0,d=a.clientMetadataUrl;if(d&&!function(a){if(!a)return!1;try{let b=new URL(a);return"https:"===b.protocol&&"/"!==b.pathname}catch{return!1}}(d))throw new dk(`clientMetadataUrl must be a valid HTTPS URL with a non-root pathname, got: ${d}`);if(b&&d)n={client_id:d},await a.saveClientInformation?.(n);else{if(!a.saveClientInformation)throw Error("OAuth client information must be saveable for dynamic registration");let b=await dI(h,{metadata:i,clientMetadata:a.clientMetadata,scope:m,fetchFn:f});await a.saveClientInformation(b),n=b}}let o=!a.redirectUrl;if(void 0!==c||o){let b=await dH(a,h,{metadata:i,resource:l,authorizationCode:c,fetchFn:f});return await a.saveTokens(b),"AUTHORIZED"}let p=await a.tokens();if(p?.refresh_token)try{let b=await dG(h,{metadata:i,clientInformation:n,refreshToken:p.refresh_token,resource:l,addClientAuthentication:a.addClientAuthentication,fetchFn:f});return await a.saveTokens(b),"AUTHORIZED"}catch(a){if(!(a instanceof c5)||a instanceof dd);else throw a}let q=a.state?await a.state():void 0,{authorizationUrl:r,codeVerifier:s}=await dE(h,{metadata:i,clientInformation:n,state:q,redirectUrl:a.redirectUrl,scope:m,resource:l});return await a.saveCodeVerifier(s),await a.redirectToAuthorization(r),"REDIRECT"}async function dv(a,b,c){let d=function(a){let b=new URL("string"==typeof a?a:a.href);return b.hash="",b}(a);if(b.validateResourceURL)return await b.validateResourceURL(d,c?.resource);if(c){if(!function({requestedResource:a,configuredResource:b}){let c=new URL("string"==typeof a?a:a.href),d=new URL("string"==typeof b?b:b.href);if(c.origin!==d.origin||c.pathname.length<d.pathname.length)return!1;let e=c.pathname.endsWith("/")?c.pathname:c.pathname+"/",f=d.pathname.endsWith("/")?d.pathname:d.pathname+"/";return e.startsWith(f)}({requestedResource:d,configuredResource:c.resource}))throw Error(`Protected resource ${c.resource} does not match expected ${d} (or origin)`);return new URL(c.resource)}}function dw(a){let b,c=a.headers.get("WWW-Authenticate");if(!c)return{};let[d,e]=c.split(" ");if("bearer"!==d.toLowerCase()||!e)return{};let f=dx(a,"resource_metadata")||void 0;if(f)try{b=new URL(f)}catch{}return{resourceMetadataUrl:b,scope:dx(a,"scope")||void 0,error:dx(a,"error")||void 0}}function dx(a,b){let c=a.headers.get("WWW-Authenticate");if(!c)return null;let d=RegExp(`${b}=(?:"([^"]+)"|([^\\s,]+))`),e=c.match(d);return e?e[1]||e[2]:null}async function dy(a,b,c=fetch){let d=await dB(a,"oauth-protected-resource",c,{protocolVersion:b?.protocolVersion,metadataUrl:b?.resourceMetadataUrl});if(!d||404===d.status)throw await d?.body?.cancel(),Error("Resource server does not implement OAuth 2.0 Protected Resource Metadata.");if(!d.ok)throw await d.body?.cancel(),Error(`HTTP ${d.status} trying to load well-known OAuth protected resource metadata.`);return cX.parse(await d.json())}async function dz(a,b,c=fetch){try{return await c(a,{headers:b})}catch(d){if(d instanceof TypeError)if(b)return dz(a,void 0,c);else return;throw d}}async function dA(a,b,c=fetch){return await dz(a,{"MCP-Protocol-Version":b},c)}async function dB(a,b,c,d){var e,f;let g,h=new URL(a),i=d?.protocolVersion??j;d?.metadataUrl?g=new URL(d.metadataUrl):(g=new URL(function(a,b="",c={}){return b.endsWith("/")&&(b=b.slice(0,-1)),c.prependPathname?`${b}/.well-known/${a}`:`/.well-known/${a}${b}`}(b,h.pathname),d?.metadataServerUrl??h)).search=h.search;let k=await dA(g,i,c);if(!d?.metadataUrl&&(e=k,f=h.pathname,!e||e.status>=400&&e.status<500&&"/"!==f)){let a=new URL(`/.well-known/${b}`,h);k=await dA(a,i,c)}return k}async function dC(a,{fetchFn:b=fetch,protocolVersion:c=j}={}){let d={"MCP-Protocol-Version":c,Accept:"application/json"};for(let{url:c,type:e}of function(a){let b="string"==typeof a?new URL(a):a,c="/"!==b.pathname,d=[];if(!c)return d.push({url:new URL("/.well-known/oauth-authorization-server",b.origin),type:"oauth"}),d.push({url:new URL("/.well-known/openid-configuration",b.origin),type:"oidc"}),d;let e=b.pathname;return e.endsWith("/")&&(e=e.slice(0,-1)),d.push({url:new URL(`/.well-known/oauth-authorization-server${e}`,b.origin),type:"oauth"}),d.push({url:new URL(`/.well-known/openid-configuration${e}`,b.origin),type:"oidc"}),d.push({url:new URL(`${e}/.well-known/openid-configuration`,b.origin),type:"oidc"}),d}(a)){let a=await dz(c,d,b);if(a){if(!a.ok){if(await a.body?.cancel(),a.status>=400&&a.status<500)continue;throw Error(`HTTP ${a.status} trying to load ${"oauth"===e?"OAuth":"OpenID provider"} metadata from ${c}`)}if("oauth"===e)return cY.parse(await a.json());return c$.parse(await a.json())}}}async function dD(a,b){let c,d;try{(c=await dy(a,{resourceMetadataUrl:b?.resourceMetadataUrl},b?.fetchFn)).authorization_servers&&c.authorization_servers.length>0&&(d=c.authorization_servers[0])}catch{}d||(d=String(new URL("/",a)));let e=await dC(d,{fetchFn:b?.fetchFn});return{authorizationServerUrl:d,authorizationServerMetadata:e,resourceMetadata:c}}async function dE(a,{metadata:b,clientInformation:c,redirectUrl:d,scope:e,state:f,resource:g}){let h;if(b){if(h=new URL(b.authorization_endpoint),!b.response_types_supported.includes(dq))throw Error(`Incompatible auth server: does not support response type ${dq}`);if(b.code_challenge_methods_supported&&!b.code_challenge_methods_supported.includes(dr))throw Error(`Incompatible auth server: does not support code challenge method ${dr}`)}else h=new URL("/authorize",a);let i=await cS(),j=i.code_verifier,k=i.code_challenge;return h.searchParams.set("response_type",dq),h.searchParams.set("client_id",c.client_id),h.searchParams.set("code_challenge",k),h.searchParams.set("code_challenge_method",dr),h.searchParams.set("redirect_uri",String(d)),f&&h.searchParams.set("state",f),e&&h.searchParams.set("scope",e),e?.includes("offline_access")&&h.searchParams.append("prompt","consent"),g&&h.searchParams.set("resource",g.href),{authorizationUrl:h,codeVerifier:j}}async function dF(a,{metadata:b,tokenRequestParams:c,clientInformation:d,addClientAuthentication:e,resource:f,fetchFn:g}){let h=b?.token_endpoint?new URL(b.token_endpoint):new URL("/token",a),i=new Headers({"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"});f&&c.set("resource",f.href),e?await e(i,c,h,b):d&&function(a,b,c,d){let{client_id:e,client_secret:f}=b;switch(a){case"client_secret_basic":var g,h,i,j,k=e,l=f,m=c;if(!l)throw Error("client_secret_basic authentication requires a client_secret");let n=btoa(`${k}:${l}`);m.set("Authorization",`Basic ${n}`);return;case"client_secret_post":g=e,h=f,(i=d).set("client_id",g),h&&i.set("client_secret",h);return;case"none":j=e,d.set("client_id",j);return;default:throw Error(`Unsupported client authentication method: ${a}`)}}(function(a,b){let c=void 0!==a.client_secret;return"token_endpoint_auth_method"in a&&a.token_endpoint_auth_method&&["client_secret_basic","client_secret_post","none"].includes(a.token_endpoint_auth_method)&&(0===b.length||b.includes(a.token_endpoint_auth_method))?a.token_endpoint_auth_method:0===b.length?c?"client_secret_basic":"none":c&&b.includes("client_secret_basic")?"client_secret_basic":c&&b.includes("client_secret_post")?"client_secret_post":b.includes("none")?"none":c?"client_secret_post":"none"}(d,b?.token_endpoint_auth_methods_supported??[]),d,i,c);let j=await (g??fetch)(h,{method:"POST",headers:i,body:c});if(!j.ok)throw await ds(j);return c_.parse(await j.json())}async function dG(a,{metadata:b,clientInformation:c,refreshToken:d,resource:e,addClientAuthentication:f,fetchFn:g}){let h=new URLSearchParams({grant_type:"refresh_token",refresh_token:d});return{refresh_token:d,...await dF(a,{metadata:b,tokenRequestParams:h,clientInformation:c,addClientAuthentication:f,resource:e,fetchFn:g})}}async function dH(a,b,{metadata:c,resource:d,authorizationCode:e,fetchFn:f}={}){let g,h=a.clientMetadata.scope;if(a.prepareTokenRequest&&(g=await a.prepareTokenRequest(h)),!g){if(!e)throw Error("Either provider.prepareTokenRequest() or authorizationCode is required");if(!a.redirectUrl)throw Error("redirectUrl is required for authorization_code flow");g=new URLSearchParams({grant_type:"authorization_code",code:e,code_verifier:await a.codeVerifier(),redirect_uri:String(a.redirectUrl)})}return dF(b,{metadata:c,tokenRequestParams:g,clientInformation:await a.clientInformation()??void 0,addClientAuthentication:a.addClientAuthentication,resource:d,fetchFn:f})}async function dI(a,{metadata:b,clientMetadata:c,scope:d,fetchFn:e}){let f;if(b){if(!b.registration_endpoint)throw Error("Incompatible auth server: does not support dynamic client registration");f=new URL(b.registration_endpoint)}else f=new URL("/register",a);let g=await (e??fetch)(f,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...c,...void 0!==d?{scope:d}:{}})});if(!g.ok)throw await ds(g);return c4.parse(await g.json())}class dJ extends Error{constructor(a,b){super(a),this.name="ParseError",this.type=b.type,this.field=b.field,this.value=b.value,this.line=b.line}}function dK(a){}function dL(a){if("function"==typeof a)throw TypeError("`callbacks` must be an object, got a function instead. Did you mean `{onEvent: fn}`?");let{onEvent:b=dK,onError:c=dK,onRetry:d=dK,onComment:e}=a,f="",g=!0,h,i="",j="";function k(a){if(""===a)return void(i.length>0&&b({id:h,event:j||void 0,data:i.endsWith(`
150
+ ${d}`:f}let cm=["OAuth authentication required","UnauthorizedError","invalid_token","token_expired","HTTP 401","HTTP 403","Missing Authorization header","Authorization header is required"];function cn(a){if(!(a instanceof Error))return!1;if("OAuthAuthenticationRequired"===a.name)return!0;let b=a.code;if(401===b||403===b)return!0;let c=a.errorCode;return"string"==typeof c&&c.length>0||cm.some(b=>a.message.includes(b))}var co=c(61800),cp=c(12190);let cq=["key","secret","token","password"];function cr(a,b){return a&&"object"==typeof a&&"value"in a?{value:a.value??"",isSecret:!!a.metadata?.isSecret}:{value:a??"",isSecret:cq.some(a=>b.toLowerCase().includes(a))||"authorization"===b.trim().toLowerCase()}}function cs(a){return a===cp.RJ||a===cp.gF}let ct=new Set(["npx","bunx","uvx","pipx","dlx"]),cu=new Set(["pnpm","yarn","bun","npm"]),cv=new Set(["dlx","exec","x"]);function cw(a,b=[]){let c=((a||"").split(/[\\/]/).filter(Boolean).pop()||"").toLowerCase().replace(/\.(cmd|exe|bat|ps1)$/i,"");if(ct.has(c))return!0;if(cu.has(c)){let a=(b[0]||"").toLowerCase();return cv.has(a)}return!1}function cx(a){return"stdio"===a.transport&&cw(a.command,a.args??[])}var cy=c(42885);function cz(a){return!!a._zod}function cA(a,b){return cz(a)?cy.xL(a,b):a.safeParse(b)}function cB(a){let b;if(a&&(b=cz(a)?a._zod?.def?.shape:a.shape)){if("function"==typeof b)try{return b()}catch{return}return b}}function cC(a){return"completed"===a||"failed"===a||"cancelled"===a}function cD(a){let b=cB(a),c=b?.method;if(!c)throw Error("Schema is missing a method literal");let d=function(a){if(cz(a)){let b=a._zod?.def;if(b){if(void 0!==b.value)return b.value;if(Array.isArray(b.values)&&b.values.length>0)return b.values[0]}}let b=a._def;if(b){if(void 0!==b.value)return b.value;if(Array.isArray(b.values)&&b.values.length>0)return b.values[0]}let c=a.value;if(void 0!==c)return c}(c);if("string"!=typeof d)throw Error("Schema method literal must be a string");return d}function cE(a,b){let c=cA(a,b);if(!c.success)throw c.error;return c.data}Symbol("Let zodToJsonSchema decide on which parser to use");class cF{constructor(a){this._options=a,this._requestMessageId=0,this._requestHandlers=new Map,this._requestHandlerAbortControllers=new Map,this._notificationHandlers=new Map,this._responseHandlers=new Map,this._progressHandlers=new Map,this._timeoutInfo=new Map,this._pendingDebouncedNotifications=new Set,this._taskProgressTokens=new Map,this._requestResolvers=new Map,this.setNotificationHandler(I,a=>{this._oncancel(a)}),this.setNotificationHandler($,a=>{this._onprogress(a)}),this.setRequestHandler(X,a=>({})),this._taskStore=a?.taskStore,this._taskMessageQueue=a?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(ah,async(a,b)=>{let c=await this._taskStore.getTask(a.params.taskId,b.sessionId);if(!c)throw new bO(dT.InvalidParams,"Failed to retrieve task: Task not found");return{...c}}),this.setRequestHandler(aj,async(a,b)=>{let c=async()=>{let d=a.params.taskId;if(this._taskMessageQueue){let a;for(;a=await this._taskMessageQueue.dequeue(d,b.sessionId);){if("response"===a.type||"error"===a.type){let b=a.message,c=b.id,d=this._requestResolvers.get(c);if(d)this._requestResolvers.delete(c),d("response"===a.type?b:new bO(b.error.code,b.error.message,b.error.data));else{let b="response"===a.type?"Response":"Error";this._onerror(Error(`${b} handler missing for request ${c}`))}continue}await this._transport?.send(a.message,{relatedRequestId:b.requestId})}}let e=await this._taskStore.getTask(d,b.sessionId);if(!e)throw new bO(dT.InvalidParams,`Task not found: ${d}`);if(!cC(e.status))return await this._waitForTaskUpdate(d,b.signal),await c();if(cC(e.status)){let a=await this._taskStore.getTaskResult(d,b.sessionId);return this._clearTaskQueue(d),{...a,_meta:{...a._meta,[l]:{taskId:d}}}}return await c()};return await c()}),this.setRequestHandler(ak,async(a,b)=>{try{let{tasks:c,nextCursor:d}=await this._taskStore.listTasks(a.params?.cursor,b.sessionId);return{tasks:c,nextCursor:d,_meta:{}}}catch(a){throw new bO(dT.InvalidParams,`Failed to list tasks: ${a instanceof Error?a.message:String(a)}`)}}),this.setRequestHandler(am,async(a,b)=>{try{let c=await this._taskStore.getTask(a.params.taskId,b.sessionId);if(!c)throw new bO(dT.InvalidParams,`Task not found: ${a.params.taskId}`);if(cC(c.status))throw new bO(dT.InvalidParams,`Cannot cancel task in terminal status: ${c.status}`);await this._taskStore.updateTaskStatus(a.params.taskId,"cancelled","Client cancelled task execution.",b.sessionId),this._clearTaskQueue(a.params.taskId);let d=await this._taskStore.getTask(a.params.taskId,b.sessionId);if(!d)throw new bO(dT.InvalidParams,`Task not found after cancellation: ${a.params.taskId}`);return{_meta:{},...d}}catch(a){if(a instanceof bO)throw a;throw new bO(dT.InvalidRequest,`Failed to cancel task: ${a instanceof Error?a.message:String(a)}`)}}))}async _oncancel(a){if(!a.params.requestId)return;let b=this._requestHandlerAbortControllers.get(a.params.requestId);b?.abort(a.params.reason)}_setupTimeout(a,b,c,d,e=!1){this._timeoutInfo.set(a,{timeoutId:setTimeout(d,b),startTime:Date.now(),timeout:b,maxTotalTimeout:c,resetTimeoutOnProgress:e,onTimeout:d})}_resetTimeout(a){let b=this._timeoutInfo.get(a);if(!b)return!1;let c=Date.now()-b.startTime;if(b.maxTotalTimeout&&c>=b.maxTotalTimeout)throw this._timeoutInfo.delete(a),bO.fromError(dT.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:b.maxTotalTimeout,totalElapsed:c});return clearTimeout(b.timeoutId),b.timeoutId=setTimeout(b.onTimeout,b.timeout),!0}_cleanupTimeout(a){let b=this._timeoutInfo.get(a);b&&(clearTimeout(b.timeoutId),this._timeoutInfo.delete(a))}async connect(a){if(this._transport)throw Error("Already connected to a transport. Call close() before connecting to a new transport, or use a separate Protocol instance per connection.");this._transport=a;let b=this.transport?.onclose;this._transport.onclose=()=>{b?.(),this._onclose()};let c=this.transport?.onerror;this._transport.onerror=a=>{c?.(a),this._onerror(a)};let d=this._transport?.onmessage;this._transport.onmessage=(a,b)=>{if(d?.(a,b),D(a)||E.safeParse(a).success)this._onresponse(a);else if(A(a))this._onrequest(a,b);else B.safeParse(a).success?this._onnotification(a):this._onerror(Error(`Unknown message type: ${JSON.stringify(a)}`))},await this._transport.start()}_onclose(){let a=this._responseHandlers;for(let a of(this._responseHandlers=new Map,this._progressHandlers.clear(),this._taskProgressTokens.clear(),this._pendingDebouncedNotifications.clear(),this._timeoutInfo.values()))clearTimeout(a.timeoutId);for(let a of(this._timeoutInfo.clear(),this._requestHandlerAbortControllers.values()))a.abort();this._requestHandlerAbortControllers.clear();let b=bO.fromError(dT.ConnectionClosed,"Connection closed");for(let c of(this._transport=void 0,this.onclose?.(),a.values()))c(b)}_onerror(a){this.onerror?.(a)}_onnotification(a){let b=this._notificationHandlers.get(a.method)??this.fallbackNotificationHandler;void 0!==b&&Promise.resolve().then(()=>b(a)).catch(a=>this._onerror(Error(`Uncaught error in notification handler: ${a}`)))}_onrequest(a,b){let c,d=this._requestHandlers.get(a.method)??this.fallbackRequestHandler,e=this._transport,f=a.params?._meta?.[l]?.taskId;if(void 0===d){let b={jsonrpc:"2.0",id:a.id,error:{code:dT.MethodNotFound,message:"Method not found"}};f&&this._taskMessageQueue?this._enqueueTaskMessage(f,{type:"error",message:b,timestamp:Date.now()},e?.sessionId).catch(a=>this._onerror(Error(`Failed to enqueue error response: ${a}`))):e?.send(b).catch(a=>this._onerror(Error(`Failed to send an error response: ${a}`)));return}let g=new AbortController;this._requestHandlerAbortControllers.set(a.id,g);let h=(c=a.params,t.safeParse(c).success)?a.params.task:void 0,i=this._taskStore?this.requestTaskStore(a,e?.sessionId):void 0,j={signal:g.signal,sessionId:e?.sessionId,_meta:a.params?._meta,sendNotification:async b=>{if(g.signal.aborted)return;let c={relatedRequestId:a.id};f&&(c.relatedTask={taskId:f}),await this.notification(b,c)},sendRequest:async(b,c,d)=>{if(g.signal.aborted)throw new bO(dT.ConnectionClosed,"Request was cancelled");let e={...d,relatedRequestId:a.id};f&&!e.relatedTask&&(e.relatedTask={taskId:f});let h=e.relatedTask?.taskId??f;return h&&i&&await i.updateTaskStatus(h,"input_required"),await this.request(b,c,e)},authInfo:b?.authInfo,requestId:a.id,requestInfo:b?.requestInfo,taskId:f,taskStore:i,taskRequestedTtl:h?.ttl,closeSSEStream:b?.closeSSEStream,closeStandaloneSSEStream:b?.closeStandaloneSSEStream};Promise.resolve().then(()=>{h&&this.assertTaskHandlerCapability(a.method)}).then(()=>d(a,j)).then(async b=>{if(g.signal.aborted)return;let c={result:b,jsonrpc:"2.0",id:a.id};f&&this._taskMessageQueue?await this._enqueueTaskMessage(f,{type:"response",message:c,timestamp:Date.now()},e?.sessionId):await e?.send(c)},async b=>{if(g.signal.aborted)return;let c={jsonrpc:"2.0",id:a.id,error:{code:Number.isSafeInteger(b.code)?b.code:dT.InternalError,message:b.message??"Internal error",...void 0!==b.data&&{data:b.data}}};f&&this._taskMessageQueue?await this._enqueueTaskMessage(f,{type:"error",message:c,timestamp:Date.now()},e?.sessionId):await e?.send(c)}).catch(a=>this._onerror(Error(`Failed to send response: ${a}`))).finally(()=>{this._requestHandlerAbortControllers.get(a.id)===g&&this._requestHandlerAbortControllers.delete(a.id)})}_onprogress(a){let{progressToken:b,...c}=a.params,d=Number(b),e=this._progressHandlers.get(d);if(!e)return void this._onerror(Error(`Received a progress notification for an unknown token: ${JSON.stringify(a)}`));let f=this._responseHandlers.get(d),g=this._timeoutInfo.get(d);if(g&&f&&g.resetTimeoutOnProgress)try{this._resetTimeout(d)}catch(a){this._responseHandlers.delete(d),this._progressHandlers.delete(d),this._cleanupTimeout(d),f(a);return}e(c)}_onresponse(a){let b=Number(a.id),c=this._requestResolvers.get(b);if(c){this._requestResolvers.delete(b),c(D(a)?a:new bO(a.error.code,a.error.message,a.error.data));return}let d=this._responseHandlers.get(b);if(void 0===d)return void this._onerror(Error(`Received a response for an unknown message ID: ${JSON.stringify(a)}`));this._responseHandlers.delete(b),this._cleanupTimeout(b);let e=!1;if(D(a)&&a.result&&"object"==typeof a.result){let c=a.result;if(c.task&&"object"==typeof c.task){let a=c.task;"string"==typeof a.taskId&&(e=!0,this._taskProgressTokens.set(a.taskId,b))}}e||this._progressHandlers.delete(b),d(D(a)?a:bO.fromError(a.error.code,a.error.message,a.error.data))}get transport(){return this._transport}async close(){await this._transport?.close()}async *requestStream(a,b,c){let d,{task:e}=c??{};if(!e){try{let d=await this.request(a,b,c);yield{type:"result",result:d}}catch(a){yield{type:"error",error:a instanceof bO?a:new bO(dT.InternalError,String(a))}}return}try{let e=await this.request(a,ae,c);if(e.task)d=e.task.taskId,yield{type:"taskCreated",task:e.task};else throw new bO(dT.InternalError,"Task creation did not return a task");for(;;){let a=await this.getTask({taskId:d},c);if(yield{type:"taskStatus",task:a},cC(a.status)){if("completed"===a.status){let a=await this.getTaskResult({taskId:d},b,c);yield{type:"result",result:a}}else"failed"===a.status?yield{type:"error",error:new bO(dT.InternalError,`Task ${d} failed`)}:"cancelled"===a.status&&(yield{type:"error",error:new bO(dT.InternalError,`Task ${d} was cancelled`)});return}if("input_required"===a.status){let a=await this.getTaskResult({taskId:d},b,c);yield{type:"result",result:a};return}let e=a.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(a=>setTimeout(a,e)),c?.signal?.throwIfAborted()}}catch(a){yield{type:"error",error:a instanceof bO?a:new bO(dT.InternalError,String(a))}}}request(a,b,c){let{relatedRequestId:d,resumptionToken:e,onresumptiontoken:f,task:g,relatedTask:h}=c??{};return new Promise((i,j)=>{let k=a=>{j(a)};if(!this._transport)return void k(Error("Not connected"));if(this._options?.enforceStrictCapabilities===!0)try{this.assertCapabilityForMethod(a.method),g&&this.assertTaskCapability(a.method)}catch(a){k(a);return}c?.signal?.throwIfAborted();let m=this._requestMessageId++,n={...a,jsonrpc:"2.0",id:m};c?.onprogress&&(this._progressHandlers.set(m,c.onprogress),n.params={...a.params,_meta:{...a.params?._meta||{},progressToken:m}}),g&&(n.params={...n.params,task:g}),h&&(n.params={...n.params,_meta:{...n.params?._meta||{},[l]:h}});let o=a=>{this._responseHandlers.delete(m),this._progressHandlers.delete(m),this._cleanupTimeout(m),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:m,reason:String(a)}},{relatedRequestId:d,resumptionToken:e,onresumptiontoken:f}).catch(a=>this._onerror(Error(`Failed to send cancellation: ${a}`))),j(a instanceof bO?a:new bO(dT.RequestTimeout,String(a)))};this._responseHandlers.set(m,a=>{if(!c?.signal?.aborted){if(a instanceof Error)return j(a);try{let c=cA(b,a.result);c.success?i(c.data):j(c.error)}catch(a){j(a)}}}),c?.signal?.addEventListener("abort",()=>{o(c?.signal?.reason)});let p=c?.timeout??6e4;this._setupTimeout(m,p,c?.maxTotalTimeout,()=>o(bO.fromError(dT.RequestTimeout,"Request timed out",{timeout:p})),c?.resetTimeoutOnProgress??!1);let q=h?.taskId;if(q){let a=a=>{let b=this._responseHandlers.get(m);b?b(a):this._onerror(Error(`Response handler missing for side-channeled request ${m}`))};this._requestResolvers.set(m,a),this._enqueueTaskMessage(q,{type:"request",message:n,timestamp:Date.now()}).catch(a=>{this._cleanupTimeout(m),j(a)})}else this._transport.send(n,{relatedRequestId:d,resumptionToken:e,onresumptiontoken:f}).catch(a=>{this._cleanupTimeout(m),j(a)})})}async getTask(a,b){return this.request({method:"tasks/get",params:a},ai,b)}async getTaskResult(a,b,c){return this.request({method:"tasks/result",params:a},b,c)}async listTasks(a,b){return this.request({method:"tasks/list",params:a},al,b)}async cancelTask(a,b){return this.request({method:"tasks/cancel",params:a},an,b)}async notification(a,b){if(!this._transport)throw Error("Not connected");this.assertNotificationCapability(a.method);let c=b?.relatedTask?.taskId;if(c){let d={...a,jsonrpc:"2.0",params:{...a.params,_meta:{...a.params?._meta||{},[l]:b.relatedTask}}};await this._enqueueTaskMessage(c,{type:"notification",message:d,timestamp:Date.now()});return}if((this._options?.debouncedNotificationMethods??[]).includes(a.method)&&!a.params&&!b?.relatedRequestId&&!b?.relatedTask){if(this._pendingDebouncedNotifications.has(a.method))return;this._pendingDebouncedNotifications.add(a.method),Promise.resolve().then(()=>{if(this._pendingDebouncedNotifications.delete(a.method),!this._transport)return;let c={...a,jsonrpc:"2.0"};b?.relatedTask&&(c={...c,params:{...c.params,_meta:{...c.params?._meta||{},[l]:b.relatedTask}}}),this._transport?.send(c,b).catch(a=>this._onerror(a))});return}let d={...a,jsonrpc:"2.0"};b?.relatedTask&&(d={...d,params:{...d.params,_meta:{...d.params?._meta||{},[l]:b.relatedTask}}}),await this._transport.send(d,b)}setRequestHandler(a,b){let c=cD(a);this.assertRequestHandlerCapability(c),this._requestHandlers.set(c,(c,d)=>Promise.resolve(b(cE(a,c),d)))}removeRequestHandler(a){this._requestHandlers.delete(a)}assertCanSetRequestHandler(a){if(this._requestHandlers.has(a))throw Error(`A request handler for ${a} already exists, which would be overridden`)}setNotificationHandler(a,b){let c=cD(a);this._notificationHandlers.set(c,c=>Promise.resolve(b(cE(a,c))))}removeNotificationHandler(a){this._notificationHandlers.delete(a)}_cleanupTaskProgressHandler(a){let b=this._taskProgressTokens.get(a);void 0!==b&&(this._progressHandlers.delete(b),this._taskProgressTokens.delete(a))}async _enqueueTaskMessage(a,b,c){if(!this._taskStore||!this._taskMessageQueue)throw Error("Cannot enqueue task message: taskStore and taskMessageQueue are not configured");let d=this._options?.maxTaskQueueSize;await this._taskMessageQueue.enqueue(a,b,c,d)}async _clearTaskQueue(a,b){if(this._taskMessageQueue){for(let c of(await this._taskMessageQueue.dequeueAll(a,b)))if("request"===c.type&&A(c.message)){let b=c.message.id,d=this._requestResolvers.get(b);d?(d(new bO(dT.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(b)):this._onerror(Error(`Resolver missing for request ${b} during task ${a} cleanup`))}}}async _waitForTaskUpdate(a,b){let c=this._options?.defaultTaskPollInterval??1e3;try{let b=await this._taskStore?.getTask(a);b?.pollInterval&&(c=b.pollInterval)}catch{}return new Promise((a,d)=>{if(b.aborted)return void d(new bO(dT.InvalidRequest,"Request cancelled"));let e=setTimeout(a,c);b.addEventListener("abort",()=>{clearTimeout(e),d(new bO(dT.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(a,b){let c=this._taskStore;if(!c)throw Error("No task store configured");return{createTask:async d=>{if(!a)throw Error("No request provided");return await c.createTask(d,a.id,{method:a.method,params:a.params},b)},getTask:async a=>{let d=await c.getTask(a,b);if(!d)throw new bO(dT.InvalidParams,"Failed to retrieve task: Task not found");return d},storeTaskResult:async(a,d,e)=>{await c.storeTaskResult(a,d,e,b);let f=await c.getTask(a,b);if(f){let b=ag.parse({method:"notifications/tasks/status",params:f});await this.notification(b),cC(f.status)&&this._cleanupTaskProgressHandler(a)}},getTaskResult:a=>c.getTaskResult(a,b),updateTaskStatus:async(a,d,e)=>{let f=await c.getTask(a,b);if(!f)throw new bO(dT.InvalidParams,`Task "${a}" not found - it may have been cleaned up`);if(cC(f.status))throw new bO(dT.InvalidParams,`Cannot update task "${a}" from terminal status "${f.status}" to "${d}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await c.updateTaskStatus(a,d,e,b);let g=await c.getTask(a,b);if(g){let b=ag.parse({method:"notifications/tasks/status",params:g});await this.notification(b),cC(g.status)&&this._cleanupTaskProgressHandler(a)}},listTasks:a=>c.listTasks(a,b)}}}function cG(a){return null!==a&&"object"==typeof a&&!Array.isArray(a)}var cH=c(86724),cI=c(72424);class cJ{constructor(a){this._ajv=a??function(){let a=new cH({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return cI(a),a}()}getValidator(a){let b="$id"in a&&"string"==typeof a.$id?this._ajv.getSchema(a.$id)??this._ajv.compile(a):this._ajv.compile(a);return a=>b(a)?{valid:!0,data:a,errorMessage:void 0}:{valid:!1,data:void 0,errorMessage:this._ajv.errorsText(b.errors)}}}class cK{constructor(a){this._client=a}async *callToolStream(a,b=a1,c){let d=this._client,e={...c,task:c?.task??(d.isToolTask(a.name)?{}:void 0)},f=d.requestStream({method:"tools/call",params:a},b,e),g=d.getToolOutputValidator(a.name);for await(let b of f){if("result"===b.type&&g){let c=b.result;if(!c.structuredContent&&!c.isError)return void(yield{type:"error",error:new bO(dT.InvalidRequest,`Tool ${a.name} has an output schema but did not return structured content`)});if(c.structuredContent)try{let a=g(c.structuredContent);if(!a.valid)return void(yield{type:"error",error:new bO(dT.InvalidParams,`Structured content does not match the tool's output schema: ${a.errorMessage}`)})}catch(a){if(a instanceof bO)return void(yield{type:"error",error:a});yield{type:"error",error:new bO(dT.InvalidParams,`Failed to validate structured content: ${a instanceof Error?a.message:String(a)}`)};return}}yield b}}async getTask(a,b){return this._client.getTask({taskId:a},b)}async getTaskResult(a,b,c){return this._client.getTaskResult({taskId:a},b,c)}async listTasks(a,b){return this._client.listTasks(a?{cursor:a}:void 0,b)}async cancelTask(a,b){return this._client.cancelTask({taskId:a},b)}requestStream(a,b,c){return this._client.requestStream(a,b,c)}}class cL extends cF{constructor(a,b){super(b),this._clientInfo=a,this._cachedToolOutputValidators=new Map,this._cachedKnownTaskTools=new Set,this._cachedRequiredTaskTools=new Set,this._listChangedDebounceTimers=new Map,this._capabilities=b?.capabilities??{},this._jsonSchemaValidator=b?.jsonSchemaValidator??new cJ,b?.listChanged&&(this._pendingListChangedConfig=b.listChanged)}_setupListChangedHandlers(a){a.tools&&this._serverCapabilities?.tools?.listChanged&&this._setupListChangedHandler("tools",a4,a.tools,async()=>(await this.listTools()).tools),a.prompts&&this._serverCapabilities?.prompts?.listChanged&&this._setupListChangedHandler("prompts",aX,a.prompts,async()=>(await this.listPrompts()).prompts),a.resources&&this._serverCapabilities?.resources?.listChanged&&this._setupListChangedHandler("resources",aD,a.resources,async()=>(await this.listResources()).resources)}get experimental(){return this._experimental||(this._experimental={tasks:new cK(this)}),this._experimental}registerCapabilities(a){if(this.transport)throw Error("Cannot register capabilities after connecting to transport");this._capabilities=function(a,b){let c={...a};for(let a in b){let d=b[a];if(void 0===d)continue;let e=c[a];cG(e)&&cG(d)?c[a]={...e,...d}:c[a]=d}return c}(this._capabilities,a)}setRequestHandler(a,b){let c,d=cB(a),e=d?.method;if(!e)throw Error("Schema is missing a method literal");if(cz(e)){let a=e._zod?.def;c=a?.value??e.value}else{let a=e._def;c=a?.value??e.value}if("string"!=typeof c)throw Error("Schema method literal must be a string");let f=c;if("elicitation/create"===f){let c=async(a,c)=>{let d=cA(bB,a);if(!d.success){let a=d.error instanceof Error?d.error.message:String(d.error);throw new bO(dT.InvalidParams,`Invalid elicitation request: ${a}`)}let{params:e}=d.data;e.mode=e.mode??"form";let{supportsFormMode:f,supportsUrlMode:g}=function(a){if(!a)return{supportsFormMode:!1,supportsUrlMode:!1};let b=void 0!==a.form,c=void 0!==a.url;return{supportsFormMode:b||!b&&!c,supportsUrlMode:c}}(this._capabilities.elicitation);if("form"===e.mode&&!f)throw new bO(dT.InvalidParams,"Client does not support form-mode elicitation requests");if("url"===e.mode&&!g)throw new bO(dT.InvalidParams,"Client does not support URL-mode elicitation requests");let h=await Promise.resolve(b(a,c));if(e.task){let a=cA(ae,h);if(!a.success){let b=a.error instanceof Error?a.error.message:String(a.error);throw new bO(dT.InvalidParams,`Invalid task creation result: ${b}`)}return a.data}let i=cA(bE,h);if(!i.success){let a=i.error instanceof Error?i.error.message:String(i.error);throw new bO(dT.InvalidParams,`Invalid elicitation result: ${a}`)}let j=i.data,k="form"===e.mode?e.requestedSchema:void 0;if("form"===e.mode&&"accept"===j.action&&j.content&&k&&this._capabilities.elicitation?.form?.applyDefaults)try{!function a(b,c){if(b&&null!==c&&"object"==typeof c){if("object"===b.type&&b.properties&&"object"==typeof b.properties){let d=b.properties;for(let b of Object.keys(d)){let e=d[b];void 0===c[b]&&Object.prototype.hasOwnProperty.call(e,"default")&&(c[b]=e.default),void 0!==c[b]&&a(e,c[b])}}if(Array.isArray(b.anyOf))for(let d of b.anyOf)"boolean"!=typeof d&&a(d,c);if(Array.isArray(b.oneOf))for(let d of b.oneOf)"boolean"!=typeof d&&a(d,c)}}(k,j.content)}catch{}return j};return super.setRequestHandler(a,c)}if("sampling/createMessage"===f){let c=async(a,c)=>{let d=cA(bj,a);if(!d.success){let a=d.error instanceof Error?d.error.message:String(d.error);throw new bO(dT.InvalidParams,`Invalid sampling request: ${a}`)}let{params:e}=d.data,f=await Promise.resolve(b(a,c));if(e.task){let a=cA(ae,f);if(!a.success){let b=a.error instanceof Error?a.error.message:String(a.error);throw new bO(dT.InvalidParams,`Invalid task creation result: ${b}`)}return a.data}let g=cA(e.tools||e.toolChoice?bl:bk,f);if(!g.success){let a=g.error instanceof Error?g.error.message:String(g.error);throw new bO(dT.InvalidParams,`Invalid sampling result: ${a}`)}return g.data};return super.setRequestHandler(a,c)}return super.setRequestHandler(a,b)}assertCapability(a,b){if(!this._serverCapabilities?.[a])throw Error(`Server does not support ${a} (required for ${b})`)}async connect(a,b){if(await super.connect(a),void 0===a.sessionId)try{let c=await this.request({method:"initialize",params:{protocolVersion:j,capabilities:this._capabilities,clientInfo:this._clientInfo}},V,b);if(void 0===c)throw Error(`Server sent invalid initialize result: ${c}`);if(!k.includes(c.protocolVersion))throw Error(`Server's protocol version is not supported: ${c.protocolVersion}`);this._serverCapabilities=c.capabilities,this._serverVersion=c.serverInfo,a.setProtocolVersion&&a.setProtocolVersion(c.protocolVersion),this._instructions=c.instructions,await this.notification({method:"notifications/initialized"}),this._pendingListChangedConfig&&(this._setupListChangedHandlers(this._pendingListChangedConfig),this._pendingListChangedConfig=void 0)}catch(a){throw this.close(),a}}getServerCapabilities(){return this._serverCapabilities}getServerVersion(){return this._serverVersion}getInstructions(){return this._instructions}assertCapabilityForMethod(a){switch(a){case"logging/setLevel":if(!this._serverCapabilities?.logging)throw Error(`Server does not support logging (required for ${a})`);break;case"prompts/get":case"prompts/list":if(!this._serverCapabilities?.prompts)throw Error(`Server does not support prompts (required for ${a})`);break;case"resources/list":case"resources/templates/list":case"resources/read":case"resources/subscribe":case"resources/unsubscribe":if(!this._serverCapabilities?.resources)throw Error(`Server does not support resources (required for ${a})`);if("resources/subscribe"===a&&!this._serverCapabilities.resources.subscribe)throw Error(`Server does not support resource subscriptions (required for ${a})`);break;case"tools/call":case"tools/list":if(!this._serverCapabilities?.tools)throw Error(`Server does not support tools (required for ${a})`);break;case"completion/complete":if(!this._serverCapabilities?.completions)throw Error(`Server does not support completions (required for ${a})`)}}assertNotificationCapability(a){if("notifications/roots/list_changed"===a&&!this._capabilities.roots?.listChanged)throw Error(`Client does not support roots list changed notifications (required for ${a})`)}assertRequestHandlerCapability(a){if(this._capabilities)switch(a){case"sampling/createMessage":if(!this._capabilities.sampling)throw Error(`Client does not support sampling capability (required for ${a})`);break;case"elicitation/create":if(!this._capabilities.elicitation)throw Error(`Client does not support elicitation capability (required for ${a})`);break;case"roots/list":if(!this._capabilities.roots)throw Error(`Client does not support roots capability (required for ${a})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw Error(`Client does not support tasks capability (required for ${a})`)}}assertTaskCapability(a){var b=this._serverCapabilities?.tasks?.requests,c="Server";if(!b)throw Error(`${c} does not support task creation (required for ${a})`);if("tools/call"===a&&!b.tools?.call)throw Error(`${c} does not support task creation for tools/call (required for ${a})`)}assertTaskHandlerCapability(a){if(this._capabilities){var b=this._capabilities.tasks?.requests,c="Client";if(!b)throw Error(`${c} does not support task creation (required for ${a})`);switch(a){case"sampling/createMessage":if(!b.sampling?.createMessage)throw Error(`${c} does not support task creation for sampling/createMessage (required for ${a})`);break;case"elicitation/create":if(!b.elicitation?.create)throw Error(`${c} does not support task creation for elicitation/create (required for ${a})`)}}}async ping(a){return this.request({method:"ping"},G,a)}async complete(a,b){return this.request({method:"completion/complete",params:a},bJ,b)}async setLoggingLevel(a,b){return this.request({method:"logging/setLevel",params:{level:a}},G,b)}async getPrompt(a,b){return this.request({method:"prompts/get",params:a},aW,b)}async listPrompts(a,b){return this.request({method:"prompts/list",params:a},aL,b)}async listResources(a,b){return this.request({method:"resources/list",params:a},ax,b)}async listResourceTemplates(a,b){return this.request({method:"resources/templates/list",params:a},az,b)}async readResource(a,b){return this.request({method:"resources/read",params:a},aC,b)}async subscribeResource(a,b){return this.request({method:"resources/subscribe",params:a},G,b)}async unsubscribeResource(a,b){return this.request({method:"resources/unsubscribe",params:a},G,b)}async callTool(a,b=a1,c){if(this.isToolTaskRequired(a.name))throw new bO(dT.InvalidRequest,`Tool "${a.name}" requires task-based execution. Use client.experimental.tasks.callToolStream() instead.`);let d=await this.request({method:"tools/call",params:a},b,c),e=this.getToolOutputValidator(a.name);if(e){if(!d.structuredContent&&!d.isError)throw new bO(dT.InvalidRequest,`Tool ${a.name} has an output schema but did not return structured content`);if(d.structuredContent)try{let a=e(d.structuredContent);if(!a.valid)throw new bO(dT.InvalidParams,`Structured content does not match the tool's output schema: ${a.errorMessage}`)}catch(a){if(a instanceof bO)throw a;throw new bO(dT.InvalidParams,`Failed to validate structured content: ${a instanceof Error?a.message:String(a)}`)}}return d}isToolTask(a){return!!this._serverCapabilities?.tasks?.requests?.tools?.call&&this._cachedKnownTaskTools.has(a)}isToolTaskRequired(a){return this._cachedRequiredTaskTools.has(a)}cacheToolMetadata(a){for(let b of(this._cachedToolOutputValidators.clear(),this._cachedKnownTaskTools.clear(),this._cachedRequiredTaskTools.clear(),a)){if(b.outputSchema){let a=this._jsonSchemaValidator.getValidator(b.outputSchema);this._cachedToolOutputValidators.set(b.name,a)}let a=b.execution?.taskSupport;("required"===a||"optional"===a)&&this._cachedKnownTaskTools.add(b.name),"required"===a&&this._cachedRequiredTaskTools.add(b.name)}}getToolOutputValidator(a){return this._cachedToolOutputValidators.get(a)}async listTools(a,b){let c=await this.request({method:"tools/list",params:a},a0,b);return this.cacheToolMetadata(c.tools),c}_setupListChangedHandler(a,b,c,d){let e=a5.safeParse(c);if(!e.success)throw Error(`Invalid ${a} listChanged options: ${e.error.message}`);if("function"!=typeof c.onChanged)throw Error(`Invalid ${a} listChanged options: onChanged must be a function`);let{autoRefresh:f,debounceMs:g}=e.data,{onChanged:h}=c,i=async()=>{if(!f)return void h(null,null);try{let a=await d();h(null,a)}catch(a){h(a instanceof Error?a:Error(String(a)),null)}},j=()=>{if(g){let b=this._listChangedDebounceTimers.get(a);b&&clearTimeout(b);let c=setTimeout(i,g);this._listChangedDebounceTimers.set(a,c)}else i()};this.setNotificationHandler(b,j)}async sendRootsListChanged(){return this.notification({method:"notifications/roots/list_changed"})}}class cM{constructor(a){this._url=a}start(){if(this._socket)throw Error("WebSocketClientTransport already started! If using Client class, note that connect() calls start() automatically.");return new Promise((a,b)=>{this._socket=new WebSocket(this._url,"mcp"),this._socket.onerror=a=>{let c="error"in a?a.error:Error(`WebSocket error: ${JSON.stringify(a)}`);b(c),this.onerror?.(c)},this._socket.onopen=()=>{a()},this._socket.onclose=()=>{this.onclose?.()},this._socket.onmessage=a=>{let b;try{b=F.parse(JSON.parse(a.data))}catch(a){this.onerror?.(a);return}this.onmessage?.(b)}})}async close(){this._socket?.close()}send(a){return new Promise((b,c)=>{if(!this._socket)return void c(Error("Not connected"));this._socket?.send(JSON.stringify(a)),b()})}}function cN(a){return a?a instanceof Headers?Object.fromEntries(a.entries()):Array.isArray(a)?Object.fromEntries(a):{...a}:{}}function cO(a=fetch,b){return b?async(c,d)=>a(c,{...b,...d,headers:d?.headers?{...cN(b.headers),...cN(d.headers)}:b.headers}):a}async function cP(a){return(await d).getRandomValues(new Uint8Array(a))}async function cQ(a){let b="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-._~",c="",d=await cP(a);for(let e=0;e<a;e++){let a=d[e]%b.length;c+=b[a]}return c}async function cR(a){return await cQ(a)}async function cS(a){return btoa(String.fromCharCode(...new Uint8Array(await (await d).subtle.digest("SHA-256",new TextEncoder().encode(a))))).replace(/\//g,"_").replace(/\+/g,"-").replace(/=/g,"")}async function cT(a){if(a||(a=43),a<43||a>128)throw`Expected a length between 43 and 128. Received ${a}.`;let b=await cR(a),c=await cS(b);return{code_verifier:b,code_challenge:c}}d=globalThis.crypto?.webcrypto??globalThis.crypto??Promise.resolve().then(c.t.bind(c,77598,19)).then(a=>a.webcrypto);let cU={custom:"custom"};dU||(dU={});var cV=c(86709),cW=c(72748);let cX=h.OZ().superRefine((a,b)=>{if(!URL.canParse(a))return b.addIssue({code:cU.custom,message:"URL must be parseable",fatal:!0}),cV.tm}).refine(a=>{let b=new URL(a);return"javascript:"!==b.protocol&&"data:"!==b.protocol&&"vbscript:"!==b.protocol},{message:"URL cannot use javascript:, data:, or vbscript: scheme"}),cY=h._H({resource:h.Yj().url(),authorization_servers:h.YO(cX).optional(),jwks_uri:h.Yj().url().optional(),scopes_supported:h.YO(h.Yj()).optional(),bearer_methods_supported:h.YO(h.Yj()).optional(),resource_signing_alg_values_supported:h.YO(h.Yj()).optional(),resource_name:h.Yj().optional(),resource_documentation:h.Yj().optional(),resource_policy_uri:h.Yj().url().optional(),resource_tos_uri:h.Yj().url().optional(),tls_client_certificate_bound_access_tokens:h.zM().optional(),authorization_details_types_supported:h.YO(h.Yj()).optional(),dpop_signing_alg_values_supported:h.YO(h.Yj()).optional(),dpop_bound_access_tokens_required:h.zM().optional()}),cZ=h._H({issuer:h.Yj(),authorization_endpoint:cX,token_endpoint:cX,registration_endpoint:cX.optional(),scopes_supported:h.YO(h.Yj()).optional(),response_types_supported:h.YO(h.Yj()),response_modes_supported:h.YO(h.Yj()).optional(),grant_types_supported:h.YO(h.Yj()).optional(),token_endpoint_auth_methods_supported:h.YO(h.Yj()).optional(),token_endpoint_auth_signing_alg_values_supported:h.YO(h.Yj()).optional(),service_documentation:cX.optional(),revocation_endpoint:cX.optional(),revocation_endpoint_auth_methods_supported:h.YO(h.Yj()).optional(),revocation_endpoint_auth_signing_alg_values_supported:h.YO(h.Yj()).optional(),introspection_endpoint:h.Yj().optional(),introspection_endpoint_auth_methods_supported:h.YO(h.Yj()).optional(),introspection_endpoint_auth_signing_alg_values_supported:h.YO(h.Yj()).optional(),code_challenge_methods_supported:h.YO(h.Yj()).optional(),client_id_metadata_document_supported:h.zM().optional()}),c$=h._H({issuer:h.Yj(),authorization_endpoint:cX,token_endpoint:cX,userinfo_endpoint:cX.optional(),jwks_uri:cX,registration_endpoint:cX.optional(),scopes_supported:h.YO(h.Yj()).optional(),response_types_supported:h.YO(h.Yj()),response_modes_supported:h.YO(h.Yj()).optional(),grant_types_supported:h.YO(h.Yj()).optional(),acr_values_supported:h.YO(h.Yj()).optional(),subject_types_supported:h.YO(h.Yj()),id_token_signing_alg_values_supported:h.YO(h.Yj()),id_token_encryption_alg_values_supported:h.YO(h.Yj()).optional(),id_token_encryption_enc_values_supported:h.YO(h.Yj()).optional(),userinfo_signing_alg_values_supported:h.YO(h.Yj()).optional(),userinfo_encryption_alg_values_supported:h.YO(h.Yj()).optional(),userinfo_encryption_enc_values_supported:h.YO(h.Yj()).optional(),request_object_signing_alg_values_supported:h.YO(h.Yj()).optional(),request_object_encryption_alg_values_supported:h.YO(h.Yj()).optional(),request_object_encryption_enc_values_supported:h.YO(h.Yj()).optional(),token_endpoint_auth_methods_supported:h.YO(h.Yj()).optional(),token_endpoint_auth_signing_alg_values_supported:h.YO(h.Yj()).optional(),display_values_supported:h.YO(h.Yj()).optional(),claim_types_supported:h.YO(h.Yj()).optional(),claims_supported:h.YO(h.Yj()).optional(),service_documentation:h.Yj().optional(),claims_locales_supported:h.YO(h.Yj()).optional(),ui_locales_supported:h.YO(h.Yj()).optional(),claims_parameter_supported:h.zM().optional(),request_parameter_supported:h.zM().optional(),request_uri_parameter_supported:h.zM().optional(),require_request_uri_registration:h.zM().optional(),op_policy_uri:cX.optional(),op_tos_uri:cX.optional(),client_id_metadata_document_supported:h.zM().optional()}),c_=h.Ik({...c$.shape,...cZ.pick({code_challenge_methods_supported:!0}).shape}),c0=h.Ik({access_token:h.Yj(),id_token:h.Yj().optional(),token_type:h.Yj(),expires_in:cW.qG(h.rS,void 0).optional(),scope:h.Yj().optional(),refresh_token:h.Yj().optional()}).strip(),c1=h.Ik({error:h.Yj(),error_description:h.Yj().optional(),error_uri:h.Yj().optional()}),c2=cX.optional().or(h.eu("").transform(()=>void 0)),c3=h.Ik({redirect_uris:h.YO(cX),token_endpoint_auth_method:h.Yj().optional(),grant_types:h.YO(h.Yj()).optional(),response_types:h.YO(h.Yj()).optional(),client_name:h.Yj().optional(),client_uri:cX.optional(),logo_uri:c2,scope:h.Yj().optional(),contacts:h.YO(h.Yj()).optional(),tos_uri:c2,policy_uri:h.Yj().optional(),jwks_uri:cX.optional(),jwks:h.bz().optional(),software_id:h.Yj().optional(),software_version:h.Yj().optional(),software_statement:h.Yj().optional()}).strip(),c4=h.Ik({client_id:h.Yj(),client_secret:h.Yj().optional(),client_id_issued_at:h.ai().optional(),client_secret_expires_at:h.ai().optional()}).strip(),c5=c3.merge(c4);h.Ik({error:h.Yj(),error_description:h.Yj().optional()}).strip(),h.Ik({token:h.Yj(),token_type_hint:h.Yj().optional()}).strip();class c6 extends Error{constructor(a,b){super(a),this.errorUri=b,this.name=this.constructor.name}toResponseObject(){let a={error:this.errorCode,error_description:this.message};return this.errorUri&&(a.error_uri=this.errorUri),a}get errorCode(){return this.constructor.errorCode}}class c7 extends c6{}c7.errorCode="invalid_request";class c8 extends c6{}c8.errorCode="invalid_client";class c9 extends c6{}c9.errorCode="invalid_grant";class da extends c6{}da.errorCode="unauthorized_client";class db extends c6{}db.errorCode="unsupported_grant_type";class dc extends c6{}dc.errorCode="invalid_scope";class dd extends c6{}dd.errorCode="access_denied";class de extends c6{}de.errorCode="server_error";class df extends c6{}df.errorCode="temporarily_unavailable";class dg extends c6{}dg.errorCode="unsupported_response_type";class dh extends c6{}dh.errorCode="unsupported_token_type";class di extends c6{}di.errorCode="invalid_token";class dj extends c6{}dj.errorCode="method_not_allowed";class dk extends c6{}dk.errorCode="too_many_requests";class dl extends c6{}dl.errorCode="invalid_client_metadata";class dm extends c6{}dm.errorCode="insufficient_scope";class dn extends c6{}dn.errorCode="invalid_target";let dp={[c7.errorCode]:c7,[c8.errorCode]:c8,[c9.errorCode]:c9,[da.errorCode]:da,[db.errorCode]:db,[dc.errorCode]:dc,[dd.errorCode]:dd,[de.errorCode]:de,[df.errorCode]:df,[dg.errorCode]:dg,[dh.errorCode]:dh,[di.errorCode]:di,[dj.errorCode]:dj,[dk.errorCode]:dk,[dl.errorCode]:dl,[dm.errorCode]:dm,[dn.errorCode]:dn};class dq extends Error{constructor(a){super(a??"Unauthorized")}}let dr="code",ds="S256";async function dt(a){let b=a instanceof Response?a.status:void 0,c=a instanceof Response?await a.text():a;try{let{error:a,error_description:b,error_uri:d}=c1.parse(JSON.parse(c));return new(dp[a]||de)(b||"",d)}catch(a){return new de(`${b?`HTTP ${b}: `:""}Invalid OAuth error response: ${a}. Raw body: ${c}`)}}async function du(a,b){try{return await dv(a,b)}catch(c){if(c instanceof c8||c instanceof da)return await a.invalidateCredentials?.("all"),await dv(a,b);if(c instanceof c9)return await a.invalidateCredentials?.("tokens"),await dv(a,b);throw c}}async function dv(a,{serverUrl:b,authorizationCode:c,scope:d,resourceMetadataUrl:e,fetchFn:f}){let g,h,i,j=await a.discoveryState?.(),k=e;if(!k&&j?.resourceMetadataUrl&&(k=new URL(j.resourceMetadataUrl)),j?.authorizationServerUrl){if(h=j.authorizationServerUrl,g=j.resourceMetadata,i=j.authorizationServerMetadata??await dD(h,{fetchFn:f}),!g)try{g=await dz(b,{resourceMetadataUrl:k},f)}catch{}(i!==j.authorizationServerMetadata||g!==j.resourceMetadata)&&await a.saveDiscoveryState?.({authorizationServerUrl:String(h),resourceMetadataUrl:k?.toString(),resourceMetadata:g,authorizationServerMetadata:i})}else{let c=await dE(b,{resourceMetadataUrl:k,fetchFn:f});h=c.authorizationServerUrl,i=c.authorizationServerMetadata,g=c.resourceMetadata,await a.saveDiscoveryState?.({authorizationServerUrl:String(h),resourceMetadataUrl:k?.toString(),resourceMetadata:g,authorizationServerMetadata:i})}let l=await dw(b,a,g),m=d||g?.scopes_supported?.join(" ")||a.clientMetadata.scope,n=await Promise.resolve(a.clientInformation());if(!n){if(void 0!==c)throw Error("Existing OAuth client information is required when exchanging an authorization code");let b=i?.client_id_metadata_document_supported===!0,d=a.clientMetadataUrl;if(d&&!function(a){if(!a)return!1;try{let b=new URL(a);return"https:"===b.protocol&&"/"!==b.pathname}catch{return!1}}(d))throw new dl(`clientMetadataUrl must be a valid HTTPS URL with a non-root pathname, got: ${d}`);if(b&&d)n={client_id:d},await a.saveClientInformation?.(n);else{if(!a.saveClientInformation)throw Error("OAuth client information must be saveable for dynamic registration");let b=await dJ(h,{metadata:i,clientMetadata:a.clientMetadata,scope:m,fetchFn:f});await a.saveClientInformation(b),n=b}}let o=!a.redirectUrl;if(void 0!==c||o){let b=await dI(a,h,{metadata:i,resource:l,authorizationCode:c,fetchFn:f});return await a.saveTokens(b),"AUTHORIZED"}let p=await a.tokens();if(p?.refresh_token)try{let b=await dH(h,{metadata:i,clientInformation:n,refreshToken:p.refresh_token,resource:l,addClientAuthentication:a.addClientAuthentication,fetchFn:f});return await a.saveTokens(b),"AUTHORIZED"}catch(a){if(!(a instanceof c6)||a instanceof de);else throw a}let q=a.state?await a.state():void 0,{authorizationUrl:r,codeVerifier:s}=await dF(h,{metadata:i,clientInformation:n,state:q,redirectUrl:a.redirectUrl,scope:m,resource:l});return await a.saveCodeVerifier(s),await a.redirectToAuthorization(r),"REDIRECT"}async function dw(a,b,c){let d=function(a){let b=new URL("string"==typeof a?a:a.href);return b.hash="",b}(a);if(b.validateResourceURL)return await b.validateResourceURL(d,c?.resource);if(c){if(!function({requestedResource:a,configuredResource:b}){let c=new URL("string"==typeof a?a:a.href),d=new URL("string"==typeof b?b:b.href);if(c.origin!==d.origin||c.pathname.length<d.pathname.length)return!1;let e=c.pathname.endsWith("/")?c.pathname:c.pathname+"/",f=d.pathname.endsWith("/")?d.pathname:d.pathname+"/";return e.startsWith(f)}({requestedResource:d,configuredResource:c.resource}))throw Error(`Protected resource ${c.resource} does not match expected ${d} (or origin)`);return new URL(c.resource)}}function dx(a){let b,c=a.headers.get("WWW-Authenticate");if(!c)return{};let[d,e]=c.split(" ");if("bearer"!==d.toLowerCase()||!e)return{};let f=dy(a,"resource_metadata")||void 0;if(f)try{b=new URL(f)}catch{}return{resourceMetadataUrl:b,scope:dy(a,"scope")||void 0,error:dy(a,"error")||void 0}}function dy(a,b){let c=a.headers.get("WWW-Authenticate");if(!c)return null;let d=RegExp(`${b}=(?:"([^"]+)"|([^\\s,]+))`),e=c.match(d);return e?e[1]||e[2]:null}async function dz(a,b,c=fetch){let d=await dC(a,"oauth-protected-resource",c,{protocolVersion:b?.protocolVersion,metadataUrl:b?.resourceMetadataUrl});if(!d||404===d.status)throw await d?.body?.cancel(),Error("Resource server does not implement OAuth 2.0 Protected Resource Metadata.");if(!d.ok)throw await d.body?.cancel(),Error(`HTTP ${d.status} trying to load well-known OAuth protected resource metadata.`);return cY.parse(await d.json())}async function dA(a,b,c=fetch){try{return await c(a,{headers:b})}catch(d){if(d instanceof TypeError)if(b)return dA(a,void 0,c);else return;throw d}}async function dB(a,b,c=fetch){return await dA(a,{"MCP-Protocol-Version":b},c)}async function dC(a,b,c,d){var e,f;let g,h=new URL(a),i=d?.protocolVersion??j;d?.metadataUrl?g=new URL(d.metadataUrl):(g=new URL(function(a,b="",c={}){return b.endsWith("/")&&(b=b.slice(0,-1)),c.prependPathname?`${b}/.well-known/${a}`:`/.well-known/${a}${b}`}(b,h.pathname),d?.metadataServerUrl??h)).search=h.search;let k=await dB(g,i,c);if(!d?.metadataUrl&&(e=k,f=h.pathname,!e||e.status>=400&&e.status<500&&"/"!==f)){let a=new URL(`/.well-known/${b}`,h);k=await dB(a,i,c)}return k}async function dD(a,{fetchFn:b=fetch,protocolVersion:c=j}={}){let d={"MCP-Protocol-Version":c,Accept:"application/json"};for(let{url:c,type:e}of function(a){let b="string"==typeof a?new URL(a):a,c="/"!==b.pathname,d=[];if(!c)return d.push({url:new URL("/.well-known/oauth-authorization-server",b.origin),type:"oauth"}),d.push({url:new URL("/.well-known/openid-configuration",b.origin),type:"oidc"}),d;let e=b.pathname;return e.endsWith("/")&&(e=e.slice(0,-1)),d.push({url:new URL(`/.well-known/oauth-authorization-server${e}`,b.origin),type:"oauth"}),d.push({url:new URL(`/.well-known/openid-configuration${e}`,b.origin),type:"oidc"}),d.push({url:new URL(`${e}/.well-known/openid-configuration`,b.origin),type:"oidc"}),d}(a)){let a=await dA(c,d,b);if(a){if(!a.ok){if(await a.body?.cancel(),a.status>=400&&a.status<500)continue;throw Error(`HTTP ${a.status} trying to load ${"oauth"===e?"OAuth":"OpenID provider"} metadata from ${c}`)}if("oauth"===e)return cZ.parse(await a.json());return c_.parse(await a.json())}}}async function dE(a,b){let c,d;try{(c=await dz(a,{resourceMetadataUrl:b?.resourceMetadataUrl},b?.fetchFn)).authorization_servers&&c.authorization_servers.length>0&&(d=c.authorization_servers[0])}catch{}d||(d=String(new URL("/",a)));let e=await dD(d,{fetchFn:b?.fetchFn});return{authorizationServerUrl:d,authorizationServerMetadata:e,resourceMetadata:c}}async function dF(a,{metadata:b,clientInformation:c,redirectUrl:d,scope:e,state:f,resource:g}){let h;if(b){if(h=new URL(b.authorization_endpoint),!b.response_types_supported.includes(dr))throw Error(`Incompatible auth server: does not support response type ${dr}`);if(b.code_challenge_methods_supported&&!b.code_challenge_methods_supported.includes(ds))throw Error(`Incompatible auth server: does not support code challenge method ${ds}`)}else h=new URL("/authorize",a);let i=await cT(),j=i.code_verifier,k=i.code_challenge;return h.searchParams.set("response_type",dr),h.searchParams.set("client_id",c.client_id),h.searchParams.set("code_challenge",k),h.searchParams.set("code_challenge_method",ds),h.searchParams.set("redirect_uri",String(d)),f&&h.searchParams.set("state",f),e&&h.searchParams.set("scope",e),e?.includes("offline_access")&&h.searchParams.append("prompt","consent"),g&&h.searchParams.set("resource",g.href),{authorizationUrl:h,codeVerifier:j}}async function dG(a,{metadata:b,tokenRequestParams:c,clientInformation:d,addClientAuthentication:e,resource:f,fetchFn:g}){let h=b?.token_endpoint?new URL(b.token_endpoint):new URL("/token",a),i=new Headers({"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"});f&&c.set("resource",f.href),e?await e(i,c,h,b):d&&function(a,b,c,d){let{client_id:e,client_secret:f}=b;switch(a){case"client_secret_basic":var g,h,i,j,k=e,l=f,m=c;if(!l)throw Error("client_secret_basic authentication requires a client_secret");let n=btoa(`${k}:${l}`);m.set("Authorization",`Basic ${n}`);return;case"client_secret_post":g=e,h=f,(i=d).set("client_id",g),h&&i.set("client_secret",h);return;case"none":j=e,d.set("client_id",j);return;default:throw Error(`Unsupported client authentication method: ${a}`)}}(function(a,b){let c=void 0!==a.client_secret;return"token_endpoint_auth_method"in a&&a.token_endpoint_auth_method&&["client_secret_basic","client_secret_post","none"].includes(a.token_endpoint_auth_method)&&(0===b.length||b.includes(a.token_endpoint_auth_method))?a.token_endpoint_auth_method:0===b.length?c?"client_secret_basic":"none":c&&b.includes("client_secret_basic")?"client_secret_basic":c&&b.includes("client_secret_post")?"client_secret_post":b.includes("none")?"none":c?"client_secret_post":"none"}(d,b?.token_endpoint_auth_methods_supported??[]),d,i,c);let j=await (g??fetch)(h,{method:"POST",headers:i,body:c});if(!j.ok)throw await dt(j);return c0.parse(await j.json())}async function dH(a,{metadata:b,clientInformation:c,refreshToken:d,resource:e,addClientAuthentication:f,fetchFn:g}){let h=new URLSearchParams({grant_type:"refresh_token",refresh_token:d});return{refresh_token:d,...await dG(a,{metadata:b,tokenRequestParams:h,clientInformation:c,addClientAuthentication:f,resource:e,fetchFn:g})}}async function dI(a,b,{metadata:c,resource:d,authorizationCode:e,fetchFn:f}={}){let g,h=a.clientMetadata.scope;if(a.prepareTokenRequest&&(g=await a.prepareTokenRequest(h)),!g){if(!e)throw Error("Either provider.prepareTokenRequest() or authorizationCode is required");if(!a.redirectUrl)throw Error("redirectUrl is required for authorization_code flow");g=new URLSearchParams({grant_type:"authorization_code",code:e,code_verifier:await a.codeVerifier(),redirect_uri:String(a.redirectUrl)})}return dG(b,{metadata:c,tokenRequestParams:g,clientInformation:await a.clientInformation()??void 0,addClientAuthentication:a.addClientAuthentication,resource:d,fetchFn:f})}async function dJ(a,{metadata:b,clientMetadata:c,scope:d,fetchFn:e}){let f;if(b){if(!b.registration_endpoint)throw Error("Incompatible auth server: does not support dynamic client registration");f=new URL(b.registration_endpoint)}else f=new URL("/register",a);let g=await (e??fetch)(f,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...c,...void 0!==d?{scope:d}:{}})});if(!g.ok)throw await dt(g);return c5.parse(await g.json())}class dK extends Error{constructor(a,b){super(a),this.name="ParseError",this.type=b.type,this.field=b.field,this.value=b.value,this.line=b.line}}function dL(a){}function dM(a){if("function"==typeof a)throw TypeError("`callbacks` must be an object, got a function instead. Did you mean `{onEvent: fn}`?");let{onEvent:b=dL,onError:c=dL,onRetry:d=dL,onComment:e}=a,f="",g=!0,h,i="",j="";function k(a){if(""===a)return void(i.length>0&&b({id:h,event:j||void 0,data:i.endsWith(`
151
151
  `)?i.slice(0,-1):i}),h=void 0,i="",j="");if(a.startsWith(":")){e&&e(a.slice(a.startsWith(": ")?2:1));return}let c=a.indexOf(":");if(-1!==c){let b=a.slice(0,c),d=" "===a[c+1]?2:1;l(b,a.slice(c+d),a);return}l(a,"",a)}function l(a,b,e){switch(a){case"event":j=b;break;case"data":i=`${i}${b}
152
- `;break;case"id":h=b.includes("\0")?void 0:b;break;case"retry":/^\d+$/.test(b)?d(parseInt(b,10)):c(new dJ(`Invalid \`retry\` value: "${b}"`,{type:"invalid-retry",value:b,line:e}));break;default:c(new dJ(`Unknown field "${a.length>20?`${a.slice(0,20)}\u2026`:a}"`,{type:"unknown-field",field:a,value:b,line:e}))}}return{feed:function(a){let b=g?a.replace(/^\xEF\xBB\xBF/,""):a,[c,d]=function(a){let b=[],c="",d=0;for(;d<a.length;){let e=a.indexOf("\r",d),f=a.indexOf(`
152
+ `;break;case"id":h=b.includes("\0")?void 0:b;break;case"retry":/^\d+$/.test(b)?d(parseInt(b,10)):c(new dK(`Invalid \`retry\` value: "${b}"`,{type:"invalid-retry",value:b,line:e}));break;default:c(new dK(`Unknown field "${a.length>20?`${a.slice(0,20)}\u2026`:a}"`,{type:"unknown-field",field:a,value:b,line:e}))}}return{feed:function(a){let b=g?a.replace(/^\xEF\xBB\xBF/,""):a,[c,d]=function(a){let b=[],c="",d=0;for(;d<a.length;){let e=a.indexOf("\r",d),f=a.indexOf(`
153
153
  `,d),g=-1;if(-1!==e&&-1!==f?g=Math.min(e,f):-1!==e?g=e===a.length-1?-1:e:-1!==f&&(g=f),-1===g){c=a.slice(d);break}{let c=a.slice(d,g);b.push(c),"\r"===a[(d=g+1)-1]&&a[d]===`
154
- `&&d++}}return[b,c]}(`${f}${b}`);for(let a of c)k(a);f=d,g=!1},reset:function(a={}){f&&a.consume&&k(f),g=!0,h=void 0,i="",j="",f=""}}}class dM extends TransformStream{constructor({onError:a,onRetry:b,onComment:c}={}){let d;super({start(e){d=dL({onEvent:a=>{e.enqueue(a)},onError(b){"terminate"===a?e.error(b):"function"==typeof a&&a(b)},onRetry:b,onComment:c})},transform(a){d.feed(a)}})}}let dN={initialReconnectionDelay:1e3,maxReconnectionDelay:3e4,reconnectionDelayGrowFactor:1.5,maxRetries:2};class dO extends Error{constructor(a,b){super(`Streamable HTTP error: ${b}`),this.code=a}}class dP{constructor(a,b){this._hasCompletedAuthFlow=!1,this._url=a,this._resourceMetadataUrl=void 0,this._scope=void 0,this._requestInit=b?.requestInit,this._authProvider=b?.authProvider,this._fetch=b?.fetch,this._fetchWithInit=cN(b?.fetch,b?.requestInit),this._sessionId=b?.sessionId,this._reconnectionOptions=b?.reconnectionOptions??dN}async _authThenStart(){let a;if(!this._authProvider)throw new dp("No auth provider");try{a=await dt(this._authProvider,{serverUrl:this._url,resourceMetadataUrl:this._resourceMetadataUrl,scope:this._scope,fetchFn:this._fetchWithInit})}catch(a){throw this.onerror?.(a),a}if("AUTHORIZED"!==a)throw new dp;return await this._startOrAuthSse({resumptionToken:void 0})}async _commonHeaders(){let a={};if(this._authProvider){let b=await this._authProvider.tokens();b&&(a.Authorization=`Bearer ${b.access_token}`)}this._sessionId&&(a["mcp-session-id"]=this._sessionId),this._protocolVersion&&(a["mcp-protocol-version"]=this._protocolVersion);let b=cM(this._requestInit?.headers);return new Headers({...a,...b})}async _startOrAuthSse(a){let{resumptionToken:b}=a;try{let c=await this._commonHeaders();c.set("Accept","text/event-stream"),b&&c.set("last-event-id",b);let d=await (this._fetch??fetch)(this._url,{method:"GET",headers:c,signal:this._abortController?.signal});if(!d.ok){if(await d.body?.cancel(),401===d.status&&this._authProvider)return await this._authThenStart();if(405===d.status)return;throw new dO(d.status,`Failed to open SSE stream: ${d.statusText}`)}this._handleSseStream(d.body,a,!0)}catch(a){throw this.onerror?.(a),a}}_getNextReconnectionDelay(a){if(void 0!==this._serverRetryMs)return this._serverRetryMs;let b=this._reconnectionOptions.initialReconnectionDelay;return Math.min(b*Math.pow(this._reconnectionOptions.reconnectionDelayGrowFactor,a),this._reconnectionOptions.maxReconnectionDelay)}_scheduleReconnection(a,b=0){let c=this._reconnectionOptions.maxRetries;if(b>=c)return void this.onerror?.(Error(`Maximum reconnection attempts (${c}) exceeded.`));let d=this._getNextReconnectionDelay(b);this._reconnectionTimeout=setTimeout(()=>{this._startOrAuthSse(a).catch(c=>{this.onerror?.(Error(`Failed to reconnect SSE stream: ${c instanceof Error?c.message:String(c)}`)),this._scheduleReconnection(a,b+1)})},d)}_handleSseStream(a,b,c){let d;if(!a)return;let{onresumptiontoken:e,replayMessageId:f}=b,g=!1,h=!1;(async()=>{try{let b=a.pipeThrough(new TextDecoderStream).pipeThrough(new dM({onRetry:a=>{this._serverRetryMs=a}})).getReader();for(;;){let{value:a,done:c}=await b.read();if(c)break;if((a.id&&(d=a.id,g=!0,e?.(a.id)),a.data)&&(!a.event||"message"===a.event))try{let b=F.parse(JSON.parse(a.data));D(b)&&(h=!0,void 0!==f&&(b.id=f)),this.onmessage?.(b)}catch(a){this.onerror?.(a)}}(c||g)&&!h&&this._abortController&&!this._abortController.signal.aborted&&this._scheduleReconnection({resumptionToken:d,onresumptiontoken:e,replayMessageId:f},0)}catch(a){if(this.onerror?.(Error(`SSE stream disconnected: ${a}`)),(c||g)&&!h&&this._abortController&&!this._abortController.signal.aborted)try{this._scheduleReconnection({resumptionToken:d,onresumptiontoken:e,replayMessageId:f},0)}catch(a){this.onerror?.(Error(`Failed to reconnect: ${a instanceof Error?a.message:String(a)}`))}}})()}async start(){if(this._abortController)throw Error("StreamableHTTPClientTransport already started! If using Client class, note that connect() calls start() automatically.");this._abortController=new AbortController}async finishAuth(a){if(!this._authProvider)throw new dp("No auth provider");if("AUTHORIZED"!==await dt(this._authProvider,{serverUrl:this._url,authorizationCode:a,resourceMetadataUrl:this._resourceMetadataUrl,scope:this._scope,fetchFn:this._fetchWithInit}))throw new dp("Failed to authorize")}async close(){this._reconnectionTimeout&&(clearTimeout(this._reconnectionTimeout),this._reconnectionTimeout=void 0),this._abortController?.abort(),this.onclose?.()}async send(a,b){try{let{resumptionToken:c,onresumptiontoken:d}=b||{};if(c)return void this._startOrAuthSse({resumptionToken:c,replayMessageId:A(a)?a.id:void 0}).catch(a=>this.onerror?.(a));let e=await this._commonHeaders();e.set("content-type","application/json"),e.set("accept","application/json, text/event-stream");let f={...this._requestInit,method:"POST",headers:e,body:JSON.stringify(a),signal:this._abortController?.signal},g=await (this._fetch??fetch)(this._url,f),h=g.headers.get("mcp-session-id");if(h&&(this._sessionId=h),!g.ok){let b=await g.text().catch(()=>null);if(401===g.status&&this._authProvider){if(this._hasCompletedAuthFlow)throw new dO(401,"Server returned 401 after successful authentication");let{resourceMetadataUrl:b,scope:c}=dw(g);this._resourceMetadataUrl=b,this._scope=c;let d=await dt(this._authProvider,{serverUrl:this._url,resourceMetadataUrl:this._resourceMetadataUrl,scope:this._scope,fetchFn:this._fetchWithInit});if("AUTHORIZED"!==d)throw new dp;return this._hasCompletedAuthFlow=!0,this.send(a)}if(403===g.status&&this._authProvider){let{resourceMetadataUrl:b,scope:c,error:d}=dw(g);if("insufficient_scope"===d){let d=g.headers.get("WWW-Authenticate");if(this._lastUpscopingHeader===d)throw new dO(403,"Server returned 403 after trying upscoping");c&&(this._scope=c),b&&(this._resourceMetadataUrl=b),this._lastUpscopingHeader=d??void 0;let e=await dt(this._authProvider,{serverUrl:this._url,resourceMetadataUrl:this._resourceMetadataUrl,scope:this._scope,fetchFn:this._fetch});if("AUTHORIZED"!==e)throw new dp;return this.send(a)}}throw new dO(g.status,`Error POSTing to endpoint: ${b}`)}if(this._hasCompletedAuthFlow=!1,this._lastUpscopingHeader=void 0,202===g.status){await g.body?.cancel(),W.safeParse(a).success&&this._startOrAuthSse({resumptionToken:void 0}).catch(a=>this.onerror?.(a));return}let i=(Array.isArray(a)?a:[a]).filter(a=>"method"in a&&"id"in a&&void 0!==a.id).length>0,j=g.headers.get("content-type");if(i)if(j?.includes("text/event-stream"))this._handleSseStream(g.body,{onresumptiontoken:d},!1);else if(j?.includes("application/json")){let a=await g.json();for(let b of Array.isArray(a)?a.map(a=>F.parse(a)):[F.parse(a)])this.onmessage?.(b)}else throw await g.body?.cancel(),new dO(-1,`Unexpected content type: ${j}`);else await g.body?.cancel()}catch(a){throw this.onerror?.(a),a}}get sessionId(){return this._sessionId}async terminateSession(){if(this._sessionId)try{let a=await this._commonHeaders(),b={...this._requestInit,method:"DELETE",headers:a,signal:this._abortController?.signal},c=await (this._fetch??fetch)(this._url,b);if(await c.body?.cancel(),!c.ok&&405!==c.status)throw new dO(c.status,`Failed to terminate session: ${c.statusText}`);this._sessionId=void 0}catch(a){throw this.onerror?.(a),a}}setProtocolVersion(a){this._protocolVersion=a}get protocolVersion(){return this._protocolVersion}async resumeStream(a,b){await this._startOrAuthSse({resumptionToken:a,onresumptiontoken:b?.onresumptiontoken})}}class dQ extends Event{constructor(a,b){var c,d;super(a),this.code=null!=(c=null==b?void 0:b.code)?c:void 0,this.message=null!=(d=null==b?void 0:b.message)?d:void 0}[Symbol.for("nodejs.util.inspect.custom")](a,b,c){return c(dR(this),b)}[Symbol.for("Deno.customInspect")](a,b){return a(dR(this),b)}}function dR(a){return{type:a.type,message:a.message,code:a.code,defaultPrevented:a.defaultPrevented,cancelable:a.cancelable,timeStamp:a.timeStamp}}var dS,dT,dU,dV,dW,dX,dY,dZ,d$,d_,d0,d1,d2,d3,d4,d5,d6,d7,d8,d9,ea,eb,ec,ed,ee,ef=a=>{throw TypeError(a)},eg=(a,b,c)=>b.has(a)||ef("Cannot "+c),eh=(a,b,c)=>(eg(a,b,"read from private field"),c?c.call(a):b.get(a)),ei=(a,b,c)=>b.has(a)?ef("Cannot add the same private member more than once"):b instanceof WeakSet?b.add(a):b.set(a,c),ej=(a,b,c,d)=>(eg(a,b,"write to private field"),b.set(a,c),c),ek=(a,b,c)=>(eg(a,b,"access private method"),c);class el extends EventTarget{constructor(a,b){var c,d;super(),ei(this,d5),this.CONNECTING=0,this.OPEN=1,this.CLOSED=2,ei(this,dU),ei(this,dV),ei(this,dW),ei(this,dX),ei(this,dY),ei(this,dZ),ei(this,d$),ei(this,d_,null),ei(this,d0),ei(this,d1),ei(this,d2,null),ei(this,d3,null),ei(this,d4,null),ei(this,d7,async a=>{var b;eh(this,d1).reset();let{body:c,redirected:d,status:e,headers:f}=a;if(204===e){ek(this,d5,ec).call(this,"Server sent HTTP 204, not reconnecting",204),this.close();return}if(d?ej(this,dW,new URL(a.url)):ej(this,dW,void 0),200!==e)return void ek(this,d5,ec).call(this,`Non-200 status code (${e})`,e);if(!(f.get("content-type")||"").startsWith("text/event-stream"))return void ek(this,d5,ec).call(this,'Invalid content type, expected "text/event-stream"',e);if(eh(this,dU)===this.CLOSED)return;ej(this,dU,this.OPEN);let g=new Event("open");if(null==(b=eh(this,d4))||b.call(this,g),this.dispatchEvent(g),"object"!=typeof c||!c||!("getReader"in c)){ek(this,d5,ec).call(this,"Invalid response body, expected a web ReadableStream",e),this.close();return}let h=new TextDecoder,i=c.getReader(),j=!0;do{let{done:a,value:b}=await i.read();b&&eh(this,d1).feed(h.decode(b,{stream:!a})),a&&(j=!1,eh(this,d1).reset(),ek(this,d5,ed).call(this))}while(j)}),ei(this,d8,a=>{ej(this,d0,void 0),"AbortError"!==a.name&&"aborted"!==a.type&&ek(this,d5,ed).call(this,function a(b){return b instanceof Error?"errors"in b&&Array.isArray(b.errors)?b.errors.map(a).join(", "):"cause"in b&&b.cause instanceof Error?`${b}: ${a(b.cause)}`:b.message:`${b}`}(a))}),ei(this,ea,a=>{"string"==typeof a.id&&ej(this,d_,a.id);let b=new MessageEvent(a.event||"message",{data:a.data,origin:eh(this,dW)?eh(this,dW).origin:eh(this,dV).origin,lastEventId:a.id||""});eh(this,d3)&&(!a.event||"message"===a.event)&&eh(this,d3).call(this,b),this.dispatchEvent(b)}),ei(this,eb,a=>{ej(this,dZ,a)}),ei(this,ee,()=>{ej(this,d$,void 0),eh(this,dU)===this.CONNECTING&&ek(this,d5,d6).call(this)});try{if(a instanceof URL)ej(this,dV,a);else if("string"==typeof a)ej(this,dV,new URL(a,function(){let a="document"in globalThis?globalThis.document:void 0;return a&&"object"==typeof a&&"baseURI"in a&&"string"==typeof a.baseURI?a.baseURI:void 0}()));else throw Error("Invalid URL")}catch{throw function(a){let b=globalThis.DOMException;return"function"==typeof b?new b(a,"SyntaxError"):SyntaxError(a)}("An invalid or illegal string was specified")}ej(this,d1,dL({onEvent:eh(this,ea),onRetry:eh(this,eb)})),ej(this,dU,this.CONNECTING),ej(this,dZ,3e3),ej(this,dY,null!=(c=null==b?void 0:b.fetch)?c:globalThis.fetch),ej(this,dX,null!=(d=null==b?void 0:b.withCredentials)&&d),ek(this,d5,d6).call(this)}get readyState(){return eh(this,dU)}get url(){return eh(this,dV).href}get withCredentials(){return eh(this,dX)}get onerror(){return eh(this,d2)}set onerror(a){ej(this,d2,a)}get onmessage(){return eh(this,d3)}set onmessage(a){ej(this,d3,a)}get onopen(){return eh(this,d4)}set onopen(a){ej(this,d4,a)}addEventListener(a,b,c){super.addEventListener(a,b,c)}removeEventListener(a,b,c){super.removeEventListener(a,b,c)}close(){eh(this,d$)&&clearTimeout(eh(this,d$)),eh(this,dU)!==this.CLOSED&&(eh(this,d0)&&eh(this,d0).abort(),ej(this,dU,this.CLOSED),ej(this,d0,void 0))}}dU=new WeakMap,dV=new WeakMap,dW=new WeakMap,dX=new WeakMap,dY=new WeakMap,dZ=new WeakMap,d$=new WeakMap,d_=new WeakMap,d0=new WeakMap,d1=new WeakMap,d2=new WeakMap,d3=new WeakMap,d4=new WeakMap,d5=new WeakSet,d6=function(){ej(this,dU,this.CONNECTING),ej(this,d0,new AbortController),eh(this,dY)(eh(this,dV),ek(this,d5,d9).call(this)).then(eh(this,d7)).catch(eh(this,d8))},d7=new WeakMap,d8=new WeakMap,d9=function(){var a;let b={mode:"cors",redirect:"follow",headers:{Accept:"text/event-stream",...eh(this,d_)?{"Last-Event-ID":eh(this,d_)}:void 0},cache:"no-store",signal:null==(a=eh(this,d0))?void 0:a.signal};return"window"in globalThis&&(b.credentials=this.withCredentials?"include":"same-origin"),b},ea=new WeakMap,eb=new WeakMap,ec=function(a,b){var c;eh(this,dU)!==this.CLOSED&&ej(this,dU,this.CLOSED);let d=new dQ("error",{code:b,message:a});null==(c=eh(this,d2))||c.call(this,d),this.dispatchEvent(d)},ed=function(a,b){var c;if(eh(this,dU)===this.CLOSED)return;ej(this,dU,this.CONNECTING);let d=new dQ("error",{code:b,message:a});null==(c=eh(this,d2))||c.call(this,d),this.dispatchEvent(d),ej(this,d$,setTimeout(eh(this,ee),eh(this,dZ)))},ee=new WeakMap,el.CONNECTING=0,el.OPEN=1,el.CLOSED=2;class em extends Error{constructor(a,b,c){super(`SSE error: ${b}`),this.code=a,this.event=c}}class en{constructor(a,b){this._url=a,this._resourceMetadataUrl=void 0,this._scope=void 0,this._eventSourceInit=b?.eventSourceInit,this._requestInit=b?.requestInit,this._authProvider=b?.authProvider,this._fetch=b?.fetch,this._fetchWithInit=cN(b?.fetch,b?.requestInit)}async _authThenStart(){let a;if(!this._authProvider)throw new dp("No auth provider");try{a=await dt(this._authProvider,{serverUrl:this._url,resourceMetadataUrl:this._resourceMetadataUrl,scope:this._scope,fetchFn:this._fetchWithInit})}catch(a){throw this.onerror?.(a),a}if("AUTHORIZED"!==a)throw new dp;return await this._startOrAuth()}async _commonHeaders(){let a={};if(this._authProvider){let b=await this._authProvider.tokens();b&&(a.Authorization=`Bearer ${b.access_token}`)}this._protocolVersion&&(a["mcp-protocol-version"]=this._protocolVersion);let b=cM(this._requestInit?.headers);return new Headers({...a,...b})}_startOrAuth(){let a=this?._eventSourceInit?.fetch??this._fetch??fetch;return new Promise((b,c)=>{this._eventSource=new el(this._url.href,{...this._eventSourceInit,fetch:async(b,c)=>{let d=await this._commonHeaders();d.set("Accept","text/event-stream");let e=await a(b,{...c,headers:d});if(401===e.status&&e.headers.has("www-authenticate")){let{resourceMetadataUrl:a,scope:b}=dw(e);this._resourceMetadataUrl=a,this._scope=b}return e}}),this._abortController=new AbortController,this._eventSource.onerror=a=>{if(401===a.code&&this._authProvider)return void this._authThenStart().then(b,c);let d=new em(a.code,a.message,a);c(d),this.onerror?.(d)},this._eventSource.onopen=()=>{},this._eventSource.addEventListener("endpoint",a=>{try{if(this._endpoint=new URL(a.data,this._url),this._endpoint.origin!==this._url.origin)throw Error(`Endpoint origin does not match connection origin: ${this._endpoint.origin}`)}catch(a){c(a),this.onerror?.(a),this.close();return}b()}),this._eventSource.onmessage=a=>{let b;try{b=F.parse(JSON.parse(a.data))}catch(a){this.onerror?.(a);return}this.onmessage?.(b)}})}async start(){if(this._eventSource)throw Error("SSEClientTransport already started! If using Client class, note that connect() calls start() automatically.");return await this._startOrAuth()}async finishAuth(a){if(!this._authProvider)throw new dp("No auth provider");if("AUTHORIZED"!==await dt(this._authProvider,{serverUrl:this._url,authorizationCode:a,resourceMetadataUrl:this._resourceMetadataUrl,scope:this._scope,fetchFn:this._fetchWithInit}))throw new dp("Failed to authorize")}async close(){this._abortController?.abort(),this._eventSource?.close(),this.onclose?.()}async send(a){if(!this._endpoint)throw Error("Not connected");try{let b=await this._commonHeaders();b.set("content-type","application/json");let c={...this._requestInit,method:"POST",headers:b,body:JSON.stringify(a),signal:this._abortController?.signal},d=await (this._fetch??fetch)(this._endpoint,c);if(!d.ok){let b=await d.text().catch(()=>null);if(401===d.status&&this._authProvider){let{resourceMetadataUrl:b,scope:c}=dw(d);this._resourceMetadataUrl=b,this._scope=c;let e=await dt(this._authProvider,{serverUrl:this._url,resourceMetadataUrl:this._resourceMetadataUrl,scope:this._scope,fetchFn:this._fetchWithInit});if("AUTHORIZED"!==e)throw new dp;return this.send(a)}throw Error(`Error POSTing to endpoint (HTTP ${d.status}): ${b}`)}await d.body?.cancel()}catch(a){throw this.onerror?.(a),a}}setProtocolVersion(a){this._protocolVersion=a}}let eo=(0,bY.h)("backend/services/mcp/oauth");class ep{constructor(a,b){this.config=a,this._redirectUrl=b,this._clientMetadata={redirect_uris:[b],client_name:`FLUJO MCP Client - ${a.name}`,client_uri:"https://github.com/mario-andreschak/FLUJO",grant_types:["authorization_code","refresh_token"],response_types:["code"],token_endpoint_auth_method:"client_secret_post",scope:a.oauthScopes?.join(" ")||"read"},eo.info(`Created OAuth client provider for ${a.name}`),eo.verbose("OAuth client metadata",JSON.stringify(this._clientMetadata))}get redirectUrl(){return this._redirectUrl}get clientMetadata(){return this._clientMetadata}state(){return encodeURIComponent(JSON.stringify({serverName:this.config.name}))}async clientInformation(){if(this.config.oauthClientInformation)return eo.debug(`Returning stored client information for ${this.config.name}`),this.config.oauthClientInformation;if(this.config.oauthClientId){let a=this.config.oauthClientSecret?await (0,b0.G)(this.config.oauthClientSecret)??void 0:void 0;return eo.debug(`Created client information from config for ${this.config.name}`),{client_id:this.config.oauthClientId,client_secret:a}}eo.debug(`No client information available for ${this.config.name}`)}async persist(){let a=await (0,b_.loadServerConfigs)();if(!Array.isArray(a))return void eo.warn(`persist: failed to load server configs for ${this.config.name}, cannot persist OAuth state`);let b=new Map(a.map(a=>[a.name,a]));b.set(this.config.name,this.config);let c=await (0,b_.q)(b);c.success||eo.warn(`persist: failed to save OAuth state for ${this.config.name}: ${c.error}`)}async invalidateCredentials(a){eo.info(`Invalidating OAuth credentials for ${this.config.name} (scope: ${a})`),("all"===a||"tokens"===a)&&(this.config.oauthTokens=void 0),("all"===a||"client"===a)&&(this.config.oauthClientInformation=void 0,this.config.oauthClientMetadata=void 0),("all"===a||"verifier"===a)&&(this.config.oauthCodeVerifier=void 0),await this.persist()}async saveClientInformation(a){eo.info(`Saving client information for ${this.config.name}`),eo.verbose("Client information to save",JSON.stringify(a)),this.config.oauthClientInformation={client_id:a.client_id,client_secret:a.client_secret,client_id_issued_at:a.client_id_issued_at,client_secret_expires_at:a.client_secret_expires_at},this.config.oauthClientMetadata={redirect_uris:a.redirect_uris,client_name:a.client_name,client_uri:a.client_uri,grant_types:a.grant_types,response_types:a.response_types,token_endpoint_auth_method:a.token_endpoint_auth_method,scope:a.scope,contacts:a.contacts,tos_uri:a.tos_uri,policy_uri:a.policy_uri,jwks_uri:a.jwks_uri,jwks:a.jwks,software_id:a.software_id,software_version:a.software_version},await this.persist(),eo.info(`Client information saved for ${this.config.name}`)}async tokens(){if(this.config.oauthTokens){if(eo.debug(`Returning stored tokens for ${this.config.name}`),this.config.oauthTokens.expires_in&&this.config.oauthTokens.issued_at){let a=this.config.oauthTokens.issued_at,b=this.config.oauthTokens.expires_in,c=Math.floor(Date.now()/1e3),d=a+b;c>=d?eo.info(`Access token for ${this.config.name} has expired (issued: ${a}, expires: ${d}, current: ${c}); SDK will refresh via refresh_token`):eo.debug(`Tokens for ${this.config.name} are valid (expires in ${d-c} seconds)`)}return this.config.oauthTokens}eo.debug(`No tokens available for ${this.config.name}`)}async saveTokens(a){eo.info(`Saving OAuth tokens for ${this.config.name}`),eo.verbose("Tokens to save",JSON.stringify({...a,access_token:a.access_token?"[REDACTED]":void 0,refresh_token:a.refresh_token?"[REDACTED]":void 0}));let b={...a,issued_at:Math.floor(Date.now()/1e3)};this.config.oauthTokens=b,await this.persist(),eo.info(`OAuth tokens saved for ${this.config.name}`)}async redirectToAuthorization(a){eo.info(`Authorization required for ${this.config.name}`),eo.info(`Authorization URL: ${a.toString()}`),this.config.authorizationUrl=a.toString();let b=Error(`OAuth authentication required for ${this.config.name}. Please complete the OAuth flow.`);throw b.name="OAuthAuthenticationRequired",b}async saveCodeVerifier(a){eo.debug(`Saving code verifier for ${this.config.name}`),this.config.oauthCodeVerifier=a,await this.persist(),eo.debug(`Code verifier saved for ${this.config.name}`)}async codeVerifier(){if(!this.config.oauthCodeVerifier){let a=`No code verifier found for ${this.config.name}`;throw eo.error(a),Error(a)}return eo.debug(`Returning code verifier for ${this.config.name}`),this.config.oauthCodeVerifier}}let eq=new Set(["node","npm","npx"]);var er=c(79551);let es=(0,bY.h)("backend/services/mcp/roots");function et(){return global.__mcp_node_roots}function eu(a){let b=[];for(let c of et().values())if(c.serverName===a)for(let a of c.roots)b.includes(a)||b.push(a);return b}async function ev(a){let b=function(a){let b=a.trim();if(!b)return null;if(b.startsWith("file://"))return b;if(/^[a-zA-Z][a-zA-Z0-9+.-]*:\/\//.test(b))return es.warn(`Ignoring non-file root URI: ${b}`),null;try{return(0,er.pathToFileURL)(b).href}catch(a){return es.warn(`Could not convert root "${b}" to a file URI:`,a),null}}(await (0,b0.c)(a));return b?{uri:b,name:function(a){try{let b=new URL(a).pathname.replace(/\/+$/,"").split("/").pop();return b?decodeURIComponent(b):void 0}catch{return}}(b)}:null}async function ew(a){let b=a.roots,c=[...Array.isArray(b)?b:[],...eu(a.name)],d=[],e=new Set;for(let a of c){if("string"!=typeof a||!a.trim())continue;let b=await ev(a);b&&!e.has(b.uri)&&(e.add(b.uri),d.push(b))}if(0===d.length&&"string"==typeof a.rootPath&&a.rootPath.trim()){let b=await ev(a.rootPath);if(b)return[b]}return d}async function ex(a){try{let{loadServerConfigs:b}=await Promise.resolve().then(c.bind(c,6544)),d=await b();if(Array.isArray(d)){let b=d.find(b=>b.name===a.name);if(b)return b}}catch(b){es.warn(`Could not re-load config for ${a.name}, using connect-time config:`,b)}return a}void 0===global.__mcp_node_roots&&(global.__mcp_node_roots=new Map);var ey=c(12763),ez=c(25713);let eA=(0,bY.h)("backend/services/mcp/sampling");function eB(a){return a.sampling}function eC(a){let b=eB(a);return b?.enabled?JSON.stringify({m:b.modelId,t:b.maxTokens,r:b.maxCallsPerMinute}):""}let eD=(0,bY.h)("backend/services/mcp/connection");async function eE(a){if("streamable"!==a.transport&&"sse"!==a.transport||!a.headers||"object"!=typeof a.headers)return a;let b={};for(let[c,d]of Object.entries(a.headers)){if(!c)continue;let{value:a}=cr(d,c);if(!a)continue;let e=await (0,b0.G)(a);e&&(b[c]=e)}return{...a,headers:b}}function eF(a){let b={};for(let[c,d]of Object.entries(a)){if(!c)continue;let{value:a}=cr(d,c);"string"==typeof a&&a.length>0&&(b[c]=a)}return b}function eG(a){let b={};if(a)for(let[c,d]of Object.entries(a))d&&"object"==typeof d&&"value"in d?b[c]=d.value:b[c]=d;return b}function eH(a){return JSON.stringify({command:a.command,args:a.args??[],env:eG(a.env),cwd:String(a.cwd??""),rootPath:a.rootPath??""})}function eI(a){return JSON.stringify({transport:a.transport,url:a.serverUrl??"",headers:a.headers??{},requestInit:a.requestInit??{},eventSourceInit:a.eventSourceInit??{},reconnectionOptions:a.reconnectionOptions??{},sessionId:a.sessionId??"",oauthClientId:a.oauthClientId??"",oauthClientInformation:a.oauthClientInformation??{},oauthClientSecret:a.oauthClientSecret??"",oauthTokens:a.oauthTokens??{}})}function eJ(a){eD.debug("Entering createNewClient method");let b=function(a){let b=eB(a);return!!(b?.enabled&&b.modelId)}(a),c=new cK({name:`flujo-${a.name}-client`,version:"3.22.0"},{capabilities:{experimental:{},roots:{listChanged:!0},...b?{sampling:{}}:{}}});return c.setRequestHandler(bL,async()=>{let b=await ew(await ex(a));return es.debug(`roots/list for ${a.name}: ${b.length} root(s)`),{roots:b}}),b&&function(a,b){let c=[];a.setRequestHandler(bj,async a=>{let d=eB(b);if(!d?.enabled||!d.modelId)throw new bO(dS.InvalidRequest,"Sampling is not enabled for this server");let e=d.maxCallsPerMinute??10,f=Date.now(),g=f-6e4;for(;c.length>0&&c[0]<g;)c.shift();if(c.length>=e)throw eA.warn(`Sampling rate limit (${e}/min) hit for ${b.name}`),new bO(dS.InvalidRequest,`Sampling rate limit of ${e}/min exceeded`);c.push(f);let h=await ey.modelService.getModel(d.modelId);if(!h)throw new bO(dS.InternalError,`Sampling model not found: ${d.modelId}`);let i=await ey.modelService.resolveAndDecryptApiKey(h.ApiKey);if(!i)throw new bO(dS.InternalError,"Could not resolve the sampling model API key");let j=a.params,k=function(a){let b=[];for(let c of(a.systemPrompt&&b.push({role:"system",content:a.systemPrompt}),a.messages||[])){let a=c.content,d=a?.type==="text"&&"string"==typeof a.text?a.text:`[unsupported ${a?.type||"non-text"} content omitted]`;b.push({role:c.role,content:d})}return b}(j),l="number"==typeof j.temperature?j.temperature:.7;eA.info(`Sampling for ${b.name} via model ${h.name} (${k.length} messages)`);let m=(0,ez.getCompletionAdapter)(h),{completion:n}=await m.createCompletion({model:h,apiKey:i,messages:k,temperature:l}),o=n.choices?.[0]?.message?.content;return{role:"assistant",content:{type:"text",text:"string"==typeof o?o:""},model:h.name,stopReason:"endTurn"}})}(c,a),c.__flujoCapKey=eC(a),c}function eK(a){if(eD.debug("Entering createTransport method"),"streamable"===a.transport){eD.info(`Creating streamable http transport for server ${a.name} with URL ${a.serverUrl}`);let b={};if(a.requestInit&&"object"==typeof a.requestInit&&(b.requestInit=a.requestInit),a.reconnectionOptions&&"object"==typeof a.reconnectionOptions&&(b.reconnectionOptions=a.reconnectionOptions),"string"==typeof a.sessionId&&a.sessionId.length>0&&(b.sessionId=a.sessionId),a.headers&&"object"==typeof a.headers){let c=eF(a.headers);Object.keys(c).length>0&&(b.requestInit={...b.requestInit||{},headers:{...b.requestInit?.headers||{},...c}},eD.info(`Applied ${Object.keys(c).length} custom header(s) for ${a.name}: ${Object.keys(c).join(", ")}`))}a.oauthClientId||a.oauthClientInformation?(eD.info(`Setting up OAuth authentication for ${a.name}`),b.authProvider=function(a,b="http://localhost:4200/api/oauth/callback"){return new ep(a,b)}(a),a.oauthTokens?.access_token?(eD.debug(`OAuth provider configured for ${a.name} with existing tokens`),eD.debug(`Token expires in: ${a.oauthTokens.expires_in} seconds`)):eD.debug(`OAuth provider configured for ${a.name} - will initiate OAuth flow if needed`)):eD.debug(`No OAuth configuration found for ${a.name}`);let c=new dP(new URL(a.serverUrl),b);return c.__flujoHttpKey=eI(a),c}if("sse"===a.transport){eD.info(`Creating legacy sse transport for server ${a.name} with URL ${a.serverUrl}`);let b={};if(a.requestInit&&"object"==typeof a.requestInit&&(b.requestInit=a.requestInit),a.eventSourceInit&&"object"==typeof a.eventSourceInit&&(b.eventSourceInit=a.eventSourceInit),a.headers&&"object"==typeof a.headers){let c=eF(a.headers);Object.keys(c).length>0&&(b.requestInit={...b.requestInit||{},headers:{...b.requestInit?.headers||{},...c}},eD.info(`Applied ${Object.keys(c).length} custom header(s) for ${a.name}: ${Object.keys(c).join(", ")}`))}let c=new en(new URL(a.serverUrl),b);return c.__flujoHttpKey=eI(a),c}return"websocket"===a.transport?(eD.info(`Creating WebSocket transport for server ${a.name} with URL ${a.websocketUrl}`),new cL(new URL(a.websocketUrl))):function(a){if(eD.debug("Entering createStdioTransport method"),"stdio"!==a.transport)throw Error("Cannot create stdio transport for non-stdio config");let b=a.command,c=a.args?[...a.args]:[],d=`${ce.VL}/${a.name}`;eD.info(`Creating stdio transport for server ${a.name}`),eD.debug(`Original command: ${b}`),eD.debug(`Original args: ${JSON.stringify(c)}`),eD.debug(`Server directory: ${d}`);let e=!bW.isAbsolute(b)&&(b.includes("/")||b.includes("\\")),f=!b.includes("/")&&!b.includes("\\");if(eD.debug(`Is relative path: ${e}`),eD.debug(`Is just filename: ${f}`),"win32"===cd.platform()&&b.toLowerCase().endsWith(".bat"))if(eD.debug(`Detected .bat file on Windows: ${b}`),f){let a=bW.join((0,bZ.ok)(),d,b);eD.debug(`Checking if file exists at: ${a}`);let e=cc.existsSync(a);eD.debug(`File exists: ${e}`),e?(eD.debug(`Using full path to .bat file: ${a}`),c=["/c",a,...c]):(eD.warn(`WARNING: .bat file not found at ${a}`),c=["/c",b,...c]),b="cmd.exe"}else eD.debug(`Using cmd.exe with path as provided: ${b}`),c=["/c",b,...c],b="cmd.exe";let g=function(a,b){if(!a||!(!a.includes("/")&&!a.includes("\\")))return a;let c=a.toLowerCase();if(!eq.has(c))return a;if("node"===c)return b.execPath||a;if(!b.execPath)return a;let d=b.dirname(b.execPath);for(let a of"win32"===b.platform?[`${c}.cmd`,`${c}.exe`,c]:[c]){let c=b.joinPath(d,a);if(b.fileExists(c))return c}return a}(b,{execPath:process.execPath,platform:cd.platform(),dirname:bW.dirname,joinPath:bW.join,fileExists:cc.existsSync});g!==b&&(eD.debug(`Resolved Node toolchain command "${b}" to absolute path: ${g}`),b=g),eD.debug(`Final command: ${b}`),eD.debug(`Final args: ${JSON.stringify(c)}`);let h=function({command:a,args:b=[],rootPath:c,cwd:d,serverName:e,defaultCwd:f}){let g=c||d||f;return e&&cv(a,b)&&(g.split(/[\\/]/).filter(Boolean).pop()||"")===e&&function(a){let b=a.match(/^(.*[\\/])[^\\/]+[\\/]*$/);return b?b[1].replace(/[\\/]+$/,""):""}(g)||g}({command:a.command,args:a.args,rootPath:a.rootPath,cwd:a.cwd,serverName:a.name,defaultCwd:`${ce.VL}/${a.name}`}),i=bW.isAbsolute(h)?h:bW.join((0,bZ.ok)(),h);eD.debug(`cwd: ${i}`),eD.debug(`env: ${JSON.stringify(a.env)}`),eD.info(`Creating StdioClientTransport for ${a.name} with stderr: 'pipe'`);let j=eG(a.env);eD.verbose("Transformed environment variables",JSON.stringify(j));let k=new bS({command:b,args:c,env:j,cwd:i,stderr:"pipe"});return k.__flujoStdioKey=eH(a),k.stderr?eD.info(`Stderr stream is available for ${a.name}`):eD.warn(`Stderr stream is NOT available for ${a.name}`),k}(a)}function eL(a,b){return null!==a.exitCode||null!==a.signalCode?Promise.resolve(!0):new Promise(c=>{let d=()=>{clearTimeout(e),c(!0)},e=setTimeout(()=>{a.removeListener("exit",d),c(!1)},b);e.unref?.(),a.once("exit",d)})}async function eM(a,b,c,d){eD.debug("Entering safelyCloseClient method");let e=d?.gracePeriodMs??15e3,f=d?.killEscalationMs??5e3;try{if(a.transport instanceof bS){let c=a.transport._process;if(c&&null===c.exitCode&&null===c.signalCode){try{c.stdin&&!c.stdin.destroyed&&(c.stdin.end(),eD.debug(`Closed stdin for graceful shutdown for ${b}`))}catch(a){eD.warn(`Error closing stdin for ${b}:`,a)}let a=await eL(c,e);if(!a){eD.warn(`Process did not exit within ${e}ms after stdin close, sending SIGTERM for ${b}`);try{c.kill("SIGTERM")}catch(a){eD.error(`Error sending SIGTERM for ${b}:`,a)}a=await eL(c,f)}if(a)eD.info(`Process exited gracefully for ${b}`);else{eD.warn(`Process did not respond to SIGTERM, sending SIGKILL for ${b}`);try{c.kill("SIGKILL")}catch(a){eD.error(`Error sending SIGKILL for ${b}:`,a)}}}}await a.close(),eD.info(`Client closed successfully for ${b}`)}catch(a){eD.warn(`Error closing client for ${b}:`,a)}}var eN=c(92018);void 0===global.__mcp_clients&&(global.__mcp_clients=new Map),void 0===global.__mcp_connecting&&(global.__mcp_connecting=new Set),void 0===global.__mcp_starting_up&&(global.__mcp_starting_up=!0),void 0===global.__mcp_active_transports&&(global.__mcp_active_transports=new Map);let eO=(0,bY.h)("backend/services/mcp/index");class eP{get clients(){return global.__mcp_clients}get connectingServers(){return global.__mcp_connecting}get activeTransports(){return global.__mcp_active_transports}static{this.MAX_STDERR_LOG_ENTRIES=200}appendStderrLog(a,b){let c=this.stderrLogs.get(a)||[];c.push(b),c.length>eP.MAX_STDERR_LOG_ENTRIES&&c.splice(0,c.length-eP.MAX_STDERR_LOG_ENTRIES),this.stderrLogs.set(a,c)}deregisterClient(a){this.clients.delete(a),this.activeTransports.delete(a)}clearRetryTimer(a){let b=this.connectionRetryTimers.get(a);b&&(clearTimeout(b),this.connectionRetryTimers.delete(a),eO.debug(`Cleared retry timer for server ${a}`))}scheduleConnectionRetry(a,b){this.clearRetryTimer(a);let c=this.connectionRetryAttempts.get(a)||0;if(c>=5){eO.warn(`Maximum retry attempts (5) reached for server ${a}, stopping retries`),this.connectionRetryAttempts.delete(a);return}let d=Math.min(5e3*Math.pow(2,c),3e5);eO.info(`Scheduling connection retry for server ${a} in ${d}ms (attempt ${c+1}/5)`);let e=setTimeout(async()=>{eO.info(`Attempting to reconnect server ${a} (attempt ${c+1}/5)`);let b=await this.getServerConfig(a);if(!b){eO.info(`Server ${a} configuration not found, stopping retry attempts`),this.connectionRetryAttempts.delete(a);return}if(b.disabled){eO.info(`Server ${a} is now disabled, stopping retry attempts`),this.connectionRetryAttempts.delete(a);return}let d=this.getClient(a);if(d)try{await d.ping({timeout:5e3}),eO.info(`Server ${a} is already connected and responsive, cancelling retry`),this.connectionRetryAttempts.delete(a);return}catch(b){eO.warn(`Server ${a} has a registered client but ping failed (${b instanceof Error?b.message:String(b)}); reconnecting from scratch`)}this.connectionRetryAttempts.set(a,c+1);try{let e=d?await this.forceReconnect(a):await this.connectServer(b);if(e.success)eO.info(`Successfully reconnected server ${a} after ${c+1} attempts`),this.connectionRetryAttempts.delete(a);else{if(eO.warn(`Failed to reconnect server ${a}: ${e.error}`),e.requiresAuthentication){eO.info(`Server ${a} requires authentication, stopping retry attempts`),this.connectionRetryAttempts.delete(a);return}this.scheduleConnectionRetry(a,b)}}catch(c){eO.error(`Error during retry connection for server ${a}:`,c),this.scheduleConnectionRetry(a,b)}},d);this.connectionRetryTimers.set(a,e)}isStartingUp(){return!0===global.__mcp_starting_up}setStartingUp(a){global.__mcp_starting_up=a,eO.info(`Backend startup state set to: ${a?"starting":"complete"}`)}getClient(a){let b=this.clients.get(a);if(b&&cg(b)){eO.warn(`getClient: client for ${a} has a closed/aborted connection — evicting it`),this.clients.delete(a);return}return eO.debug(`getClient: Looking for client: ${a}`,b?"Found":"Not found"),b}async loadServerConfigs(){eO.debug("loadServerConfigs: Entering method");try{let a=await (0,b_.loadServerConfigs)();if(!Array.isArray(a))return eO.warn("loadServerConfigs: Received non-array response",a),a;return a.some(a=>a.name===eN._)?eO.warn(`loadServerConfigs: A stored server is named "${eN._}" — it shadows FLUJO's built-in server`):a.push((0,eN.z)()),eO.debug(`loadServerConfigs: Loaded ${a.length} server configs`),a}catch(a){return eO.warn("loadServerConfigs: Failed to load server configs:",a),{success:!1,error:`Failed to load server configs: ${a instanceof Error?a.message:"Unknown error"}`}}}async getServerConfig(a){eO.debug(`getServerConfig: Looking up config for server ${a}`);let b=await this.loadServerConfigs();if(!Array.isArray(b))return eO.warn(`getServerConfig: Failed to load configs for ${a}:`,b.error),null;let c=b.find(b=>b.name===a);return c||(eO.warn(`getServerConfig: Server ${a} not found in configs`),null)}async isServerDisabled(a){let b=await this.getServerConfig(a);return b?.disabled===!0}async isInternalServer(a){if(a!==eN._)return!1;let b=await (0,b_.loadServerConfigs)();return!Array.isArray(b)||!b.some(a=>a.name===eN._)}async connectServer(a){let b="string"==typeof a?a:a.name;if(b===eN._&&("string"!=typeof a?!0===a.builtIn:await this.isInternalServer(b)))return this.connectingServers.delete(b),{success:!0};let c=this.inFlightConnects.get(b);if(c)return eO.debug(`connectServer: reusing in-flight connection attempt for ${b}`),c;let d=this.connectServerInternal(a).finally(()=>{this.inFlightConnects.delete(b)});return this.inFlightConnects.set(b,d),d}async connectServerInternal(a){let b;if("string"==typeof a){eO.info(`connectServer: Looking up config for server ${a}`);let c=await this.getServerConfig(a);if(!c)return eO.warn(`connectServer: Server ${a} not found in configs`),{success:!1,error:`Server configuration for "${a}" not found. The server may have been deleted or not properly configured.`};b=c}else b=a;if((("string"==typeof a?b:await this.getServerConfig(b.name))??b).disabled)return eO.info(`connectServer: Server ${b.name} is disabled — refusing to create a client/transport`),this.clearRetryTimer(b.name),this.connectionRetryAttempts.delete(b.name),{success:!1,error:`Server '${b.name}' is disabled. Enable it on the MCP page to use it.`};let c=(0,bT.A)();eO.info(`connectServer: Starting connection for server ${b.name} [RequestID: ${c}]`),this.connectingServers.add(b.name);try{this.stderrLogs.set(b.name,[]),b=await eE(b);let a=this.clients.get(b.name);if(a){let{needsNewClient:c,reason:d}=function(a,b){if(eD.debug("Entering shouldRecreateClient method"),cg(a))return{needsNewClient:!0,reason:"Existing connection is closed"};if((a.__flujoCapKey??"")!==eC(b))return{needsNewClient:!0,reason:"Client capabilities (sampling) changed"};if("websocket"===b.transport){if(!(a.transport instanceof cL))return{needsNewClient:!0,reason:"Transport type changed to websocket"}}else if("streamable"===b.transport){if(!(a.transport instanceof dP))return{needsNewClient:!0,reason:"Transport type changed to streamable"};let c=a.transport,d=c._url?.toString();if(void 0!==d&&d!==new URL(b.serverUrl).toString())return{needsNewClient:!0,reason:"Streamable server URL changed"};let e=c.__flujoHttpKey;if(!e)return{needsNewClient:!0,reason:"Existing streamable transport has no config key"};if(e!==eI(b))return{needsNewClient:!0,reason:"Streamable auth/connection parameters changed"}}else if("sse"===b.transport){if(!(a.transport instanceof en))return{needsNewClient:!0,reason:"Transport type changed to sse"};let c=a.transport,d=c._url?.toString();if(void 0!==d&&d!==new URL(b.serverUrl).toString())return{needsNewClient:!0,reason:"SSE server URL changed"};let e=c.__flujoHttpKey;if(!e)return{needsNewClient:!0,reason:"Existing sse transport has no config key"};if(e!==eI(b))return{needsNewClient:!0,reason:"SSE auth/connection parameters changed"}}else{if(!(a.transport instanceof bS))return{needsNewClient:!0,reason:"Transport type changed to stdio"};if("stdio"!==b.transport)return{needsNewClient:!0,reason:"Transport type changed from stdio"};let c=a.transport.__flujoStdioKey;if(!c)return{needsNewClient:!0,reason:"Existing stdio transport has no config key"};if(c!==eH(b))return{needsNewClient:!0,reason:"Connection parameters changed"}}return{needsNewClient:!1}}(a,b);if(!c)return eO.info(`connectServer: Server ${b.name} is already connected`),this.lastConnectionError.delete(b.name),this.clearRetryTimer(b.name),this.connectionRetryAttempts.delete(b.name),{success:!0};eO.info(`connectServer: Existing client for ${b.name} is stale (${d}), recreating`),this.deregisterClient(b.name);try{await eM(a,b.name,b)}catch(a){eO.debug(`connectServer: error closing stale client for ${b.name}: ${a instanceof Error?a.message:String(a)}`)}a=void 0}a=eJ(b);let c=eK(b);if(c instanceof bS&&c.stderr){let a=b.name;c.stderr.on("data",b=>{let c=b.toString();eO.warn(`stderr: [${a}]: ${c}`),this.appendStderrLog(a,c)})}return c.onclose=()=>{if(this.activeTransports.get(b.name)!==c)return void eO.debug(`connectServer: ignoring close event from a stale/deregistered transport for ${b.name}`);eO.warn(`connectServer: Connection closed for server ${b.name}`),this.deregisterClient(b.name),this.getServerConfig(b.name).then(a=>{if(!a||a.disabled)return void eO.info(`Server ${b.name} is now disabled, skipping reconnection logic`);eO.info(`Connection closed for enabled server ${b.name}, scheduling reconnection`),this.scheduleConnectionRetry(b.name,a)}).catch(a=>{eO.warn(`Error checking server config for ${b.name} during onclose:`,a)})},c.onerror=a=>{if(function(a){let b=a instanceof Error?a.message:String(a);return b.includes("SSE stream disconnected")||b.includes("Failed to reconnect SSE stream")||b.includes("Maximum reconnection attempts")||/\bterminated\b/i.test(b)}(a))return void eO.debug(`connectServer: transient SSE stream disconnect for ${b.name} (self-healing, ignored): ${a instanceof Error?a.message:String(a)}`);if(this.activeTransports.get(b.name)!==c)return void eO.debug(`connectServer: ignoring error event from a stale/deregistered transport for ${b.name}`);if(eO.error(`connectServer: Transport error for server ${b.name}:`),a instanceof Error){eO.error(`Error name: ${a.name}`),eO.error(`Error message: ${a.message}`),eO.error(`Error stack: ${a.stack}`);let b=a.code;void 0!==b&&eO.error(`Error code: ${b}`),eO.error(`Error chain: ${ck(a)}`)}else if(a&&"object"==typeof a){eO.error(`Error type: ${typeof a}`),eO.error(`Error constructor: ${a.constructor?.name||"Unknown"}`);let b=Object.getOwnPropertyNames(a);b.length>0?(eO.error(`Error properties: ${b.join(", ")}`),b.forEach(b=>{try{let c=a[b];eO.error(` ${b}: ${"function"==typeof c?"[Function]":JSON.stringify(c)}`)}catch(a){eO.error(` ${b}: [Unable to serialize: ${a}]`)}})):eO.error("Error object has no enumerable properties");try{let b=JSON.stringify(a);eO.error(`JSON stringified error: ${b}`)}catch(a){eO.error(`Cannot JSON stringify error: ${a}`)}}else eO.error(`Error value: ${String(a)} (type: ${typeof a})`);this.appendStderrLog(b.name,`Transport error: ${ck(a)}`),this.deregisterClient(b.name),this.getServerConfig(b.name).then(a=>{if(!a||a.disabled)return void eO.info(`Server ${b.name} is now disabled, skipping reconnection after transport error`);eO.info(`Transport error for enabled server ${b.name}, scheduling reconnection`),this.scheduleConnectionRetry(b.name,a)}).catch(a=>{eO.warn(`Error checking server config for ${b.name} during onerror:`,a)})},await a.connect(c),this.clients.set(b.name,a),this.activeTransports.set(b.name,c),this.lastConnectionError.delete(b.name),this.clearRetryTimer(b.name),this.connectionRetryAttempts.delete(b.name),eO.info(`connectServer: Successfully connected to ${b.name}`),{success:!0}}catch(f){eO.error(`connectServer: Failed to connect to server ${b.name}:`,f);let a=f instanceof Error?f.message:String(f),c=f instanceof Error?f.name:"";if(a.includes("OAuth authentication required")||"OAuthAuthenticationRequired"===c){if(eO.info(`OAuth authentication required for server ${b.name}`),"streamable"===b.transport){let a=b;a.authorizationUrl&&eO.info(`Authorization URL available for ${b.name}: ${a.authorizationUrl}`)}return{success:!1,error:a,requiresAuthentication:!0}}if(cn(f)){if(eO.info(`OAuth authentication error detected for server ${b.name}: ${a}`),"streamable"===b.transport){let a=b;if(!a.oauthScopes||0===a.oauthScopes.length){eO.info(`Dynamically enabling OAuth for server ${b.name} due to authentication error`);try{let c={...a,oauthScopes:["read"]},d=await this.loadServerConfigs();if(Array.isArray(d)){let a=d.findIndex(a=>a.name===b.name);-1!==a&&(d[a]=c,await (0,b_.q)(new Map(d.map(a=>[a.name,a]))),eO.info(`Updated config for ${b.name} to enable OAuth`))}}catch(a){eO.warn(`Failed to update config for ${b.name} to enable OAuth:`,a)}}}return{success:!1,error:"OAuth authentication failed or tokens have expired. Please re-authenticate.",requiresAuthentication:!0}}let d=this.stderrLogs.get(b.name)||[],e=cl(f,b,d);return this.lastConnectionError.set(b.name,e),{success:!1,error:e}}finally{this.connectingServers.delete(b.name)}}async testConnection(a,b){eO.info(`testConnection: Testing connection to ${a.name||"(unnamed)"} via ${a.transport} transport`);let c=a=>{try{b?.(a)}catch{}},d=[],e=null,f=null;try{let b,g=await eE(a);e=eJ(g),(f=eK(g))instanceof bS&&f.stderr&&f.stderr.on("data",a=>{let b=a.toString();d.push(b),c({type:"stderr",data:b})}),f.onerror=a=>{let b=`Transport error: ${ck(a)}`;d.push(b),c({type:"stderr",data:b+"\n"})},c({type:"status",phase:"spawning",message:"Starting server / opening transport..."});let h=cw(a)?9e4:15e3,i=cw(a),j=new Promise((a,c)=>{b=setTimeout(()=>c(Error(`Connection timeout after ${h/1e3}s`+(i?" — the package may still be downloading via npx/uvx. Try running the Test again (the package is cached after the first download), or verify the command and network access.":""))),h)});c({type:"status",phase:"handshaking",message:"Performing MCP handshake..."});try{await Promise.race([e.connect(f),j])}finally{b&&clearTimeout(b)}c({type:"status",phase:"listing-tools",message:"Handshake OK — listing tools..."});let k=0;try{let a=await e.listTools();k=Array.isArray(a?.tools)?a.tools.length:0}catch(b){eO.debug(`testConnection: connected to ${a.name} but listTools failed: ${b instanceof Error?b.message:String(b)}`)}return eO.info(`testConnection: Successfully connected to ${a.name} (${k} tools)`),c({type:"result",success:!0,data:{toolCount:k}}),{success:!0,data:{toolCount:k}}}catch(f){eO.warn(`testConnection: Failed to connect to ${a.name}:`,f);let b=cn(f),e=cl(f,a,d);return c({type:"result",success:!1,error:e,requiresAuthentication:b}),{success:!1,error:e,requiresAuthentication:b}}finally{if(e)try{await eM(e,a.name,a,{gracePeriodMs:3e3,killEscalationMs:2e3})}catch(b){eO.debug(`testConnection: error closing test client for ${a.name}: ${b instanceof Error?b.message:String(b)}`)}}}setNodeRoots(a,b,c){for(let d of function(a,b,c){let d=(c??[]).filter(a=>"string"==typeof a&&a.trim().length>0),e=et().get(b),f=new Set([a]);e&&f.add(e.serverName);let g=new Map;for(let a of f)g.set(a,eu(a));0===d.length?et().delete(b)&&es.debug(`Cleared node roots for node ${b}`):(et().set(b,{serverName:a,roots:d}),es.debug(`Registered ${d.length} node root(s) for node ${b} on server ${a}`));let h=[];for(let a of f){let b=eu(a),c=g.get(a)??[];(b.length!==c.length||b.some((a,b)=>a!==c[b]))&&h.push(a)}return h}(a,b,c))this.notifyRootsChanged(d)}notifyRootsChanged(a){let b=this.getClient(a);if(!b)return void eO.debug(`notifyRootsChanged: ${a} not connected, skipping notification`);try{b.sendRootsListChanged().catch(b=>{eO.warn(`notifyRootsChanged: failed to notify ${a}:`,b)}),eO.debug(`notifyRootsChanged: sent roots/list_changed to ${a}`)}catch(b){eO.warn(`notifyRootsChanged: failed to notify ${a}:`,b)}}async disconnectServer(a){if(eO.debug(`disconnectServer: Entering method for server ${a}`),await this.isInternalServer(a))return{success:!0};this.clearRetryTimer(a),this.connectionRetryAttempts.delete(a);let b=this.getClient(a);if(!b)return eO.warn(`disconnectServer: Server ${a} not found in clients map`),this.deregisterClient(a),{success:!1,error:`Server ${a} not found`};this.deregisterClient(a);try{let c=await this.getServerConfig(a);return await eM(b,a,c||void 0),eO.info(`disconnectServer: Disconnected server ${a}`),{success:!0}}catch(b){return eO.warn(`disconnectServer: Failed to disconnect server ${a}:`,b),{success:!1,error:`Failed to disconnect server: ${b instanceof Error?b.message:"Unknown error"}`}}}async forceReconnect(a){if(eO.info(`forceReconnect: Forcing fresh connection for server ${a}`),await this.isInternalServer(a))return{success:!0};let b=this.clients.get(a);if(b){this.deregisterClient(a);let c=await this.getServerConfig(a);try{await eM(b,a,c||void 0)}catch(b){eO.debug(`forceReconnect: error closing stale client for ${a}: ${b instanceof Error?b.message:String(b)}`)}}return this.connectServer(a)}async listServerTools(a){if(eO.debug(`listServerTools: Entering method for server ${a}`),await this.isInternalServer(a)){let{internalToolDefinitions:a}=await Promise.all([c.e(3304),c.e(4561),c.e(1659),c.e(7463),c.e(4637)]).then(c.bind(c,74637));return{tools:a()}}if(await this.isServerDisabled(a)){let b=`Server '${a}' is disabled. Enable it on the MCP page to use it.`;return eO.warn(`listServerTools: ${b}`),{tools:[],error:b}}let b=this.getClient(a);b||eO.warn(`listServerTools: Client not found for ${a}`);let d=await b3(b,a);if(d.error){eO.warn(`listServerTools: Listing tools for ${a} failed (${d.error}); forcing reconnect and retrying once`);let c=await this.forceReconnect(a);if(!c.success)return eO.warn(`listServerTools: Reconnect for ${a} failed: ${c.error}`),{tools:[],error:c.error||d.error};b=this.clients.get(a),(d=await b3(b,a)).error?eO.warn(`listServerTools: Retry after reconnect still failed for ${a}:`,d.error):eO.info(`listServerTools: Recovered after reconnect for ${a}; listed ${d.tools.length} tools`)}else eO.info(`listServerTools: Listed ${d.tools.length} tools for ${a}`);return d}async callTool(a,b,d,e,f){if(eO.debug(`callTool: Entering method for server ${a}, tool ${b}`),await this.isInternalServer(a)){let{internalCallTool:a}=await Promise.all([c.e(3304),c.e(4561),c.e(1659),c.e(7463),c.e(4637)]).then(c.bind(c,74637)),e=await a(this,b,d);return eO.info(`callTool: Dispatched internal tool ${b}`),{success:!0,data:e}}if(await this.isServerDisabled(a)){let b=`Server '${a}' is disabled. Enable it on the MCP page to use it.`;return eO.warn(`callTool: ${b}`),{success:!1,error:b}}let g=this.getClient(a);if(!g){eO.warn(`callTool: No client for ${a}; forcing reconnect before calling ${b}`);let c=await this.forceReconnect(a);c.success?g=this.clients.get(a):eO.warn(`callTool: Reconnect for ${a} failed: ${c.error}`)}let h=await b4(g,a,b,d,e,f);return eO.info(`callTool: Called tool ${b} on ${a}`),h}async listWithReconnect(a,b,c){if(await this.isInternalServer(a))return c;if(await this.isServerDisabled(a)){let b=`Server '${a}' is disabled. Enable it on the MCP page to use it.`;return eO.warn(`listWithReconnect: ${b}`),{...c,error:b}}let d=this.getClient(a);d||eO.warn(`listWithReconnect: Client not found for ${a}`);let e=await b(d,a);if(!e.error)return e;eO.warn(`listWithReconnect: Listing for ${a} failed (${e.error}); forcing reconnect and retrying once`);let f=await this.forceReconnect(a);return f.success?(d=this.clients.get(a),(e=await b(d,a)).error?eO.warn(`listWithReconnect: Retry after reconnect still failed for ${a}:`,e.error):eO.info(`listWithReconnect: Recovered after reconnect for ${a}`),e):(eO.warn(`listWithReconnect: Reconnect for ${a} failed: ${f.error}`),{...c,error:f.error||e.error})}async listServerResources(a){if(eO.debug(`listServerResources: Entering method for server ${a}`),await this.isInternalServer(a)){let{internalListResources:a}=await Promise.all([c.e(3304),c.e(4561),c.e(1659),c.e(4436)]).then(c.bind(c,94436));return a()}return this.listWithReconnect(a,b6,{resources:[]})}async listServerResourceTemplates(a){if(eO.debug(`listServerResourceTemplates: Entering method for server ${a}`),await this.isInternalServer(a)){let{internalListResourceTemplates:a}=await Promise.all([c.e(3304),c.e(4561),c.e(1659),c.e(4436)]).then(c.bind(c,94436));return a()}return this.listWithReconnect(a,b7,{resourceTemplates:[]})}async readResource(a,b){if(eO.debug(`readResource: Entering method for server ${a}, uri ${b}`),await this.isInternalServer(a)){let{internalReadResource:a}=await Promise.all([c.e(3304),c.e(4561),c.e(1659),c.e(4436)]).then(c.bind(c,94436));return a(b)}let d=this.getClient(a);d||eO.warn(`readResource: Client not found for ${a}`);let e=await b8(d,a,b);return eO.info(`readResource: Read resource ${b} on ${a}`),e}async listServerPrompts(a){return eO.debug(`listServerPrompts: Entering method for server ${a}`),this.listWithReconnect(a,ca,{prompts:[]})}async getPrompt(a,b,c){eO.debug(`getPrompt: Entering method for server ${a}, prompt ${b}`);let d=this.getClient(a);d||eO.warn(`getPrompt: Client not found for ${a}`);let e=await cb(d,a,b,c);return eO.info(`getPrompt: Got prompt ${b} on ${a}`),e}async resolveOAuthSecretForSave(a,b){return a===cp.RJ?b??"":a?a.startsWith("${global:")||a.startsWith("encrypted:")||a.startsWith("encrypted_failed:")?a:await (0,co.Rs)(a):""}async resolveHeadersForSave(a,b){let c={};for(let[d,e]of Object.entries(a||{})){if(!d)continue;let{value:a,isSecret:f}=cr(e,d);if(!f){""!==a&&(c[d]={value:a,metadata:{isSecret:!1}});continue}if(a===cp.RJ||a===cp.gF){let a=b?.[d];void 0!==a&&(c[d]=a);continue}if(a){if("string"==typeof a&&a.startsWith("${global:")||a.startsWith("encrypted:")||a.startsWith("encrypted_failed:")){c[d]={value:a,metadata:{isSecret:!0}};continue}c[d]={value:await (0,co.Rs)(a),metadata:{isSecret:!0}}}}return c}async ensureRemoteServerRootDir(a){try{if(!["streamable","sse","websocket"].includes(a.transport))return;let b=(a.rootPath||"").trim();if(!b)return;let c=bX().resolve((0,bZ.ok)(),b);if(bX().dirname(c)===c)return;await bV().mkdir(c,{recursive:!0}),eO.debug(`ensureRemoteServerRootDir: ensured ${c} for ${a.name}`)}catch(b){eO.warn(`ensureRemoteServerRootDir: could not create root dir for ${a.name}:`,b)}}async updateServerConfig(a,b){if(eO.debug(`updateServerConfig: Entering method for server ${a}`),await this.isInternalServer(a))return{success:!1,error:`"${eN._}" is FLUJO's built-in server and cannot be created or edited.`};let c=await this.loadServerConfigs();if(!Array.isArray(c))return eO.warn("updateServerConfig: Failed to load configs:",c.error),c;let d=c.find(b=>b.name===a),e=!!d&&"string"==typeof b.name&&b.name!==a;if(e&&c.some(a=>a.name===b.name))return eO.warn(`updateServerConfig: Refusing to rename ${a} -> ${b.name}: name already in use`),{success:!1,error:`A server named "${b.name}" already exists`};if(!d&&b.name)eO.info(`updateServerConfig: Creating new server config for ${b.name}`),d={name:b.name,transport:"stdio",command:"",args:[],env:{},disabled:!1,autoApprove:[],_buildCommand:"",_installCommand:"",rootPath:""},c.push(d);else if(!d)return eO.warn(`updateServerConfig: Server ${a} not found`),{success:!1,error:`Server ${a} not found`};if(b.env){eO.debug(`updateServerConfig: Resolving global variables in env for ${a}`);try{eO.debug(`Original env variables for ${a}:`,JSON.stringify(b.env,null,2)),b.env=await (0,b0.c)(b.env),eO.debug(`Resolved env variables for ${a}:`,JSON.stringify(b.env,null,2)),eO.debug(`updateServerConfig: Successfully resolved global variables for ${a}`)}catch(b){eO.warn(`updateServerConfig: Error resolving global variables for ${a}:`,b)}}let f=b.oauthClientSecret;if(void 0!==f){let a=d.oauthClientSecret;b.oauthClientSecret=await this.resolveOAuthSecretForSave(f,a)}let g=b.headers;if(void 0!==g){let a=d.headers;b.headers=await this.resolveHeadersForSave(g,a)}let h={...d};h={...d,...b};let i=JSON.stringify(d.roots??[])!==JSON.stringify(h.roots??[])||(d.rootPath??"")!==(h.rootPath??""),j=c.findIndex(b=>b.name===a);-1!==j?c[j]=h:h.name&&c.push(h);let k=await (0,b_.q)(new Map(c.map(a=>[a.name,a])));return k.success?(await this.ensureRemoteServerRootDir(h),e?(this.clients.has(a)?await this.disconnectServer(a):(this.clearRetryTimer(a),this.connectionRetryAttempts.delete(a)),this.stderrLogs.delete(a),this.lastConnectionError.delete(a),await this.handleConnectionStateChange(h.name,h)):await this.handleConnectionStateChange(a,h),i&&this.notifyRootsChanged(h.name),eO.info(`updateServerConfig: Successfully updated config for ${a}${e?` (renamed to ${h.name})`:""}`),h):(eO.warn(`updateServerConfig: Failed to save config for ${a}:`,k.error),k)}async handleConnectionStateChange(a,b){eO.debug(`handleConnectionStateChange: Entering method for server ${a}`);let c=!!this.getClient(a),d=!b.disabled;if(c&&!d){eO.info(`handleConnectionStateChange: Disconnecting disabled server ${a}`);try{await this.disconnectServer(a)}catch(b){eO.warn(`handleConnectionStateChange: Failed to disconnect server ${a} during update:`,b)}}else!c&&d?(eO.info(`handleConnectionStateChange: Connecting previously disabled server ${a}`),await this.connectServer(b)):c&&d?(eO.info(`handleConnectionStateChange: Re-applying config to connected server ${a}`),await this.connectServer(b)):d||(eO.info(`handleConnectionStateChange: Clearing retry timers for disabled server ${a}`),this.clearRetryTimer(a),this.connectionRetryAttempts.delete(a))}async clearRetryTimersForDisabledServers(){eO.debug("clearRetryTimersForDisabledServers: Checking for disabled servers with active retry timers");try{let a=await this.loadServerConfigs();if(!Array.isArray(a))return void eO.warn("clearRetryTimersForDisabledServers: Failed to load server configs");for(let b of a.filter(a=>a.disabled))this.connectionRetryTimers.has(b.name)&&(eO.info(`clearRetryTimersForDisabledServers: Clearing retry timer for disabled server ${b.name}`),this.clearRetryTimer(b.name),this.connectionRetryAttempts.delete(b.name))}catch(a){eO.error("clearRetryTimersForDisabledServers: Error clearing retry timers:",a)}}async deleteServerConfig(a){if(eO.debug(`deleteServerConfig: Entering method for server ${a}`),await this.isInternalServer(a))return{success:!1,error:`"${eN._}" is FLUJO's built-in server and cannot be deleted.`};this.clients.has(a)&&(eO.info(`deleteServerConfig: Disconnecting server ${a} before deletion`),await this.disconnectServer(a));let b=await this.loadServerConfigs();if(!Array.isArray(b))return eO.warn("deleteServerConfig: Failed to load configs:",b.error),b;let c=b.findIndex(b=>b.name===a);if(-1===c)return eO.warn(`deleteServerConfig: Server ${a} not found in configs`),{success:!1,error:`Server ${a} not found`};b.splice(c,1),eO.debug(`deleteServerConfig: Saving updated configs after deleting ${a}`);let d=await (0,b_.q)(new Map(b.map(a=>[a.name,a])));return d.success?eO.info(`deleteServerConfig: Successfully deleted server ${a}`):eO.warn(`deleteServerConfig: Error saving configs after deleting ${a}:`,d.error),d}async getServerStatus(a){if(await this.isInternalServer(a))return{status:"connected"};let b=await this.getServerConfig(a);if(!b)return eO.warn(`getServerStatus: Server ${a} not found`),{status:"error",message:`Server ${a} configuration not found. The server may have been deleted or not properly configured.`};if(b.disabled)return eO.debug(`getServerStatus: Server ${a} is disabled`),{status:"disconnected"};if("streamable"===b.transport&&b.oauthScopes&&b.oauthScopes.length>0){if(!b.oauthTokens||!b.oauthTokens.access_token)return eO.info(`getServerStatus: Server ${a} requires OAuth authentication but has no valid tokens`),{status:"requires_authentication",message:"OAuth authentication required. Click the authenticate button to complete the OAuth flow."};if(!b.oauthTokens.refresh_token&&b.oauthTokens.expires_in&&b.oauthTokens.issued_at){let c=b.oauthTokens.issued_at,d=b.oauthTokens.expires_in;if(Math.floor(Date.now()/1e3)>=c+d)return eO.info(`getServerStatus: OAuth tokens for ${a} have expired and no refresh token is available`),{status:"requires_authentication",message:"OAuth tokens have expired. Please re-authenticate."}}}let c=(this.stderrLogs.get(a)||[]).join("\n").trim(),d=this.lastConnectionError.get(a);if(this.getClient(a))return eO.info(`getServerStatus: Server ${a} is connected`),{status:"connected",stderrOutput:c||void 0};{let b=this.isStartingUp()&&!this.lastConnectionError.has(a);if(this.connectingServers.has(a)||b)return eO.info(`getServerStatus: Server ${a} is still connecting`),{status:"connecting",message:"Server is starting up. This may take a few moments."};if(c&&(c.includes("OAuth authentication required")||c.includes("invalid_token")))return eO.info(`getServerStatus: OAuth authentication error detected for ${a}`),{status:"requires_authentication",message:"OAuth authentication required. Please complete the OAuth flow.",stderrOutput:c};let e=c||d;return e?(eO.info(`getServerStatus: Using ${c?"stderr output":"persisted connection error"} as error message for ${a}`),{status:"error",message:e,stderrOutput:c||void 0}):(eO.info(`getServerStatus: No specific error details available for ${a}`),{status:"error",message:`Server ${a} is configured but not connected. The server process may have crashed or been terminated.`,stderrOutput:void 0})}}async startEnabledServers(){eO.info("Starting all enabled servers"),this.setStartingUp(!0);try{await this.clearRetryTimersForDisabledServers();let a=await this.loadServerConfigs();if(!Array.isArray(a))return void eO.warn("Failed to load server configs, cannot start servers");let b=a.filter(a=>!a.disabled);eO.info(`Found ${b.length} enabled servers to start`),eO.debug(`${b}`),b.forEach(a=>this.connectingServers.add(a.name));let c=Math.max(1,Number(process.env.FLUJO_MCP_BOOT_CONCURRENCY)||2);eO.info(`Connecting ${b.length} enabled servers with boot concurrency ${c}`),await b$(b,c,async a=>{eO.info(`Starting server: ${a.name}`),await this.connectServer(a).catch(b=>{eO.error(`Failed to start server ${a.name}:`,b)})})}finally{this.setStartingUp(!1)}}async getAvailableClients(){try{let a=await this.loadServerConfigs();if(!a||"error"in a)return eO.warn("getAvailableClients: Failed to load server configs:",a?.error),[];return(await Promise.all(a.map(async a=>{try{let b=await this.getServerStatus(a.name);return{name:a.name,status:"string"==typeof b?b:b.status,connected:"string"==typeof b?"connected"===b:"connected"===b.status}}catch(b){return eO.warn(`getAvailableClients: Error getting status for ${a.name}:`,b),{name:a.name,status:"error",connected:!1}}}))).map(a=>`${a.name} (${a.status})`)}catch(a){return eO.error("getAvailableClients: Error getting available clients:",a),[]}}constructor(){this.stderrLogs=new Map,this.lastConnectionError=new Map,this.inFlightConnects=new Map,this.connectionRetryTimers=new Map,this.connectionRetryAttempts=new Map}}let eQ=new eP},82538:a=>{"use strict";a.exports=EvalError},83e3:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.Impersonated=b.IMPERSONATED_ACCOUNT_TYPE=void 0;let d=c(49633),e=c(79792),f=c(45388);b.IMPERSONATED_ACCOUNT_TYPE="impersonated_service_account";class g extends d.OAuth2Client{sourceClient;targetPrincipal;targetScopes;delegates;lifetime;endpoint;constructor(a={}){if(super(a),this.credentials={expiry_date:1,refresh_token:"impersonated-placeholder"},this.sourceClient=a.sourceClient??new d.OAuth2Client,this.targetPrincipal=a.targetPrincipal??"",this.delegates=a.delegates??[],this.targetScopes=a.targetScopes??[],this.lifetime=a.lifetime??3600,(0,f.originalOrCamelOptions)(a).get("universe_domain")){if(this.sourceClient.universeDomain!==this.universeDomain)throw RangeError(`Universe domain ${this.sourceClient.universeDomain} in source credentials does not match ${this.universeDomain} universe domain set for impersonated credentials.`)}else this.universeDomain=this.sourceClient.universeDomain;this.endpoint=a.endpoint??`https://iamcredentials.${this.universeDomain}`}async sign(a){await this.sourceClient.getAccessToken();let b=`projects/-/serviceAccounts/${this.targetPrincipal}`,c=`${this.endpoint}/v1/${b}:signBlob`,d={delegates:this.delegates,payload:Buffer.from(a).toString("base64")};return(await this.sourceClient.request({...g.RETRY_CONFIG,url:c,data:d,method:"POST"})).data}getTargetPrincipal(){return this.targetPrincipal}async refreshToken(){try{await this.sourceClient.getAccessToken();let a="projects/-/serviceAccounts/"+this.targetPrincipal,b=`${this.endpoint}/v1/${a}:generateAccessToken`,c={delegates:this.delegates,scope:this.targetScopes,lifetime:this.lifetime+"s"},d=await this.sourceClient.request({...g.RETRY_CONFIG,url:b,data:c,method:"POST"}),e=d.data;return this.credentials.access_token=e.accessToken,this.credentials.expiry_date=Date.parse(e.expireTime),{tokens:this.credentials,res:d}}catch(c){if(!(c instanceof Error))throw c;let a=0,b="";if(c instanceof e.GaxiosError&&(a=c?.response?.data?.error?.status,b=c?.response?.data?.error?.message),a&&b)throw c.message=`${a}: unable to impersonate: ${b}`,c;throw c.message=`unable to impersonate: ${c}`,c}}async fetchIdToken(a,b){await this.sourceClient.getAccessToken();let c=`projects/-/serviceAccounts/${this.targetPrincipal}`,d=`${this.endpoint}/v1/${c}:generateIdToken`,e={delegates:this.delegates,audience:a,includeEmail:b?.includeEmail??!0,useEmailAzp:b?.includeEmail??!0};return(await this.sourceClient.request({...g.RETRY_CONFIG,url:d,data:e,method:"POST"})).data.token}}b.Impersonated=g},83346:(a,b,c)=>{var d=c(55369).stringify,e=c(46671);a.exports=function(a){return{parse:e(a),stringify:d}},a.exports.parse=e(),a.exports.stringify=d},83529:a=>{"use strict";a.exports=JSON.parse('{"application/1d-interleaved-parityfec":{"source":"iana"},"application/3gpdash-qoe-report+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/3gpp-ims+xml":{"source":"iana","compressible":true},"application/3gpphal+json":{"source":"iana","compressible":true},"application/3gpphalforms+json":{"source":"iana","compressible":true},"application/a2l":{"source":"iana"},"application/ace+cbor":{"source":"iana"},"application/activemessage":{"source":"iana"},"application/activity+json":{"source":"iana","compressible":true},"application/alto-costmap+json":{"source":"iana","compressible":true},"application/alto-costmapfilter+json":{"source":"iana","compressible":true},"application/alto-directory+json":{"source":"iana","compressible":true},"application/alto-endpointcost+json":{"source":"iana","compressible":true},"application/alto-endpointcostparams+json":{"source":"iana","compressible":true},"application/alto-endpointprop+json":{"source":"iana","compressible":true},"application/alto-endpointpropparams+json":{"source":"iana","compressible":true},"application/alto-error+json":{"source":"iana","compressible":true},"application/alto-networkmap+json":{"source":"iana","compressible":true},"application/alto-networkmapfilter+json":{"source":"iana","compressible":true},"application/alto-updatestreamcontrol+json":{"source":"iana","compressible":true},"application/alto-updatestreamparams+json":{"source":"iana","compressible":true},"application/aml":{"source":"iana"},"application/andrew-inset":{"source":"iana","extensions":["ez"]},"application/applefile":{"source":"iana"},"application/applixware":{"source":"apache","extensions":["aw"]},"application/at+jwt":{"source":"iana"},"application/atf":{"source":"iana"},"application/atfx":{"source":"iana"},"application/atom+xml":{"source":"iana","compressible":true,"extensions":["atom"]},"application/atomcat+xml":{"source":"iana","compressible":true,"extensions":["atomcat"]},"application/atomdeleted+xml":{"source":"iana","compressible":true,"extensions":["atomdeleted"]},"application/atomicmail":{"source":"iana"},"application/atomsvc+xml":{"source":"iana","compressible":true,"extensions":["atomsvc"]},"application/atsc-dwd+xml":{"source":"iana","compressible":true,"extensions":["dwd"]},"application/atsc-dynamic-event-message":{"source":"iana"},"application/atsc-held+xml":{"source":"iana","compressible":true,"extensions":["held"]},"application/atsc-rdt+json":{"source":"iana","compressible":true},"application/atsc-rsat+xml":{"source":"iana","compressible":true,"extensions":["rsat"]},"application/atxml":{"source":"iana"},"application/auth-policy+xml":{"source":"iana","compressible":true},"application/bacnet-xdd+zip":{"source":"iana","compressible":false},"application/batch-smtp":{"source":"iana"},"application/bdoc":{"compressible":false,"extensions":["bdoc"]},"application/beep+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/calendar+json":{"source":"iana","compressible":true},"application/calendar+xml":{"source":"iana","compressible":true,"extensions":["xcs"]},"application/call-completion":{"source":"iana"},"application/cals-1840":{"source":"iana"},"application/captive+json":{"source":"iana","compressible":true},"application/cbor":{"source":"iana"},"application/cbor-seq":{"source":"iana"},"application/cccex":{"source":"iana"},"application/ccmp+xml":{"source":"iana","compressible":true},"application/ccxml+xml":{"source":"iana","compressible":true,"extensions":["ccxml"]},"application/cdfx+xml":{"source":"iana","compressible":true,"extensions":["cdfx"]},"application/cdmi-capability":{"source":"iana","extensions":["cdmia"]},"application/cdmi-container":{"source":"iana","extensions":["cdmic"]},"application/cdmi-domain":{"source":"iana","extensions":["cdmid"]},"application/cdmi-object":{"source":"iana","extensions":["cdmio"]},"application/cdmi-queue":{"source":"iana","extensions":["cdmiq"]},"application/cdni":{"source":"iana"},"application/cea":{"source":"iana"},"application/cea-2018+xml":{"source":"iana","compressible":true},"application/cellml+xml":{"source":"iana","compressible":true},"application/cfw":{"source":"iana"},"application/city+json":{"source":"iana","compressible":true},"application/clr":{"source":"iana"},"application/clue+xml":{"source":"iana","compressible":true},"application/clue_info+xml":{"source":"iana","compressible":true},"application/cms":{"source":"iana"},"application/cnrp+xml":{"source":"iana","compressible":true},"application/coap-group+json":{"source":"iana","compressible":true},"application/coap-payload":{"source":"iana"},"application/commonground":{"source":"iana"},"application/conference-info+xml":{"source":"iana","compressible":true},"application/cose":{"source":"iana"},"application/cose-key":{"source":"iana"},"application/cose-key-set":{"source":"iana"},"application/cpl+xml":{"source":"iana","compressible":true,"extensions":["cpl"]},"application/csrattrs":{"source":"iana"},"application/csta+xml":{"source":"iana","compressible":true},"application/cstadata+xml":{"source":"iana","compressible":true},"application/csvm+json":{"source":"iana","compressible":true},"application/cu-seeme":{"source":"apache","extensions":["cu"]},"application/cwt":{"source":"iana"},"application/cybercash":{"source":"iana"},"application/dart":{"compressible":true},"application/dash+xml":{"source":"iana","compressible":true,"extensions":["mpd"]},"application/dash-patch+xml":{"source":"iana","compressible":true,"extensions":["mpp"]},"application/dashdelta":{"source":"iana"},"application/davmount+xml":{"source":"iana","compressible":true,"extensions":["davmount"]},"application/dca-rft":{"source":"iana"},"application/dcd":{"source":"iana"},"application/dec-dx":{"source":"iana"},"application/dialog-info+xml":{"source":"iana","compressible":true},"application/dicom":{"source":"iana"},"application/dicom+json":{"source":"iana","compressible":true},"application/dicom+xml":{"source":"iana","compressible":true},"application/dii":{"source":"iana"},"application/dit":{"source":"iana"},"application/dns":{"source":"iana"},"application/dns+json":{"source":"iana","compressible":true},"application/dns-message":{"source":"iana"},"application/docbook+xml":{"source":"apache","compressible":true,"extensions":["dbk"]},"application/dots+cbor":{"source":"iana"},"application/dskpp+xml":{"source":"iana","compressible":true},"application/dssc+der":{"source":"iana","extensions":["dssc"]},"application/dssc+xml":{"source":"iana","compressible":true,"extensions":["xdssc"]},"application/dvcs":{"source":"iana"},"application/ecmascript":{"source":"iana","compressible":true,"extensions":["es","ecma"]},"application/edi-consent":{"source":"iana"},"application/edi-x12":{"source":"iana","compressible":false},"application/edifact":{"source":"iana","compressible":false},"application/efi":{"source":"iana"},"application/elm+json":{"source":"iana","charset":"UTF-8","compressible":true},"application/elm+xml":{"source":"iana","compressible":true},"application/emergencycalldata.cap+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/emergencycalldata.comment+xml":{"source":"iana","compressible":true},"application/emergencycalldata.control+xml":{"source":"iana","compressible":true},"application/emergencycalldata.deviceinfo+xml":{"source":"iana","compressible":true},"application/emergencycalldata.ecall.msd":{"source":"iana"},"application/emergencycalldata.providerinfo+xml":{"source":"iana","compressible":true},"application/emergencycalldata.serviceinfo+xml":{"source":"iana","compressible":true},"application/emergencycalldata.subscriberinfo+xml":{"source":"iana","compressible":true},"application/emergencycalldata.veds+xml":{"source":"iana","compressible":true},"application/emma+xml":{"source":"iana","compressible":true,"extensions":["emma"]},"application/emotionml+xml":{"source":"iana","compressible":true,"extensions":["emotionml"]},"application/encaprtp":{"source":"iana"},"application/epp+xml":{"source":"iana","compressible":true},"application/epub+zip":{"source":"iana","compressible":false,"extensions":["epub"]},"application/eshop":{"source":"iana"},"application/exi":{"source":"iana","extensions":["exi"]},"application/expect-ct-report+json":{"source":"iana","compressible":true},"application/express":{"source":"iana","extensions":["exp"]},"application/fastinfoset":{"source":"iana"},"application/fastsoap":{"source":"iana"},"application/fdt+xml":{"source":"iana","compressible":true,"extensions":["fdt"]},"application/fhir+json":{"source":"iana","charset":"UTF-8","compressible":true},"application/fhir+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/fido.trusted-apps+json":{"compressible":true},"application/fits":{"source":"iana"},"application/flexfec":{"source":"iana"},"application/font-sfnt":{"source":"iana"},"application/font-tdpfr":{"source":"iana","extensions":["pfr"]},"application/font-woff":{"source":"iana","compressible":false},"application/framework-attributes+xml":{"source":"iana","compressible":true},"application/geo+json":{"source":"iana","compressible":true,"extensions":["geojson"]},"application/geo+json-seq":{"source":"iana"},"application/geopackage+sqlite3":{"source":"iana"},"application/geoxacml+xml":{"source":"iana","compressible":true},"application/gltf-buffer":{"source":"iana"},"application/gml+xml":{"source":"iana","compressible":true,"extensions":["gml"]},"application/gpx+xml":{"source":"apache","compressible":true,"extensions":["gpx"]},"application/gxf":{"source":"apache","extensions":["gxf"]},"application/gzip":{"source":"iana","compressible":false,"extensions":["gz"]},"application/h224":{"source":"iana"},"application/held+xml":{"source":"iana","compressible":true},"application/hjson":{"extensions":["hjson"]},"application/http":{"source":"iana"},"application/hyperstudio":{"source":"iana","extensions":["stk"]},"application/ibe-key-request+xml":{"source":"iana","compressible":true},"application/ibe-pkg-reply+xml":{"source":"iana","compressible":true},"application/ibe-pp-data":{"source":"iana"},"application/iges":{"source":"iana"},"application/im-iscomposing+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/index":{"source":"iana"},"application/index.cmd":{"source":"iana"},"application/index.obj":{"source":"iana"},"application/index.response":{"source":"iana"},"application/index.vnd":{"source":"iana"},"application/inkml+xml":{"source":"iana","compressible":true,"extensions":["ink","inkml"]},"application/iotp":{"source":"iana"},"application/ipfix":{"source":"iana","extensions":["ipfix"]},"application/ipp":{"source":"iana"},"application/isup":{"source":"iana"},"application/its+xml":{"source":"iana","compressible":true,"extensions":["its"]},"application/java-archive":{"source":"apache","compressible":false,"extensions":["jar","war","ear"]},"application/java-serialized-object":{"source":"apache","compressible":false,"extensions":["ser"]},"application/java-vm":{"source":"apache","compressible":false,"extensions":["class"]},"application/javascript":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["js","mjs"]},"application/jf2feed+json":{"source":"iana","compressible":true},"application/jose":{"source":"iana"},"application/jose+json":{"source":"iana","compressible":true},"application/jrd+json":{"source":"iana","compressible":true},"application/jscalendar+json":{"source":"iana","compressible":true},"application/json":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["json","map"]},"application/json-patch+json":{"source":"iana","compressible":true},"application/json-seq":{"source":"iana"},"application/json5":{"extensions":["json5"]},"application/jsonml+json":{"source":"apache","compressible":true,"extensions":["jsonml"]},"application/jwk+json":{"source":"iana","compressible":true},"application/jwk-set+json":{"source":"iana","compressible":true},"application/jwt":{"source":"iana"},"application/kpml-request+xml":{"source":"iana","compressible":true},"application/kpml-response+xml":{"source":"iana","compressible":true},"application/ld+json":{"source":"iana","compressible":true,"extensions":["jsonld"]},"application/lgr+xml":{"source":"iana","compressible":true,"extensions":["lgr"]},"application/link-format":{"source":"iana"},"application/load-control+xml":{"source":"iana","compressible":true},"application/lost+xml":{"source":"iana","compressible":true,"extensions":["lostxml"]},"application/lostsync+xml":{"source":"iana","compressible":true},"application/lpf+zip":{"source":"iana","compressible":false},"application/lxf":{"source":"iana"},"application/mac-binhex40":{"source":"iana","extensions":["hqx"]},"application/mac-compactpro":{"source":"apache","extensions":["cpt"]},"application/macwriteii":{"source":"iana"},"application/mads+xml":{"source":"iana","compressible":true,"extensions":["mads"]},"application/manifest+json":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["webmanifest"]},"application/marc":{"source":"iana","extensions":["mrc"]},"application/marcxml+xml":{"source":"iana","compressible":true,"extensions":["mrcx"]},"application/mathematica":{"source":"iana","extensions":["ma","nb","mb"]},"application/mathml+xml":{"source":"iana","compressible":true,"extensions":["mathml"]},"application/mathml-content+xml":{"source":"iana","compressible":true},"application/mathml-presentation+xml":{"source":"iana","compressible":true},"application/mbms-associated-procedure-description+xml":{"source":"iana","compressible":true},"application/mbms-deregister+xml":{"source":"iana","compressible":true},"application/mbms-envelope+xml":{"source":"iana","compressible":true},"application/mbms-msk+xml":{"source":"iana","compressible":true},"application/mbms-msk-response+xml":{"source":"iana","compressible":true},"application/mbms-protection-description+xml":{"source":"iana","compressible":true},"application/mbms-reception-report+xml":{"source":"iana","compressible":true},"application/mbms-register+xml":{"source":"iana","compressible":true},"application/mbms-register-response+xml":{"source":"iana","compressible":true},"application/mbms-schedule+xml":{"source":"iana","compressible":true},"application/mbms-user-service-description+xml":{"source":"iana","compressible":true},"application/mbox":{"source":"iana","extensions":["mbox"]},"application/media-policy-dataset+xml":{"source":"iana","compressible":true,"extensions":["mpf"]},"application/media_control+xml":{"source":"iana","compressible":true},"application/mediaservercontrol+xml":{"source":"iana","compressible":true,"extensions":["mscml"]},"application/merge-patch+json":{"source":"iana","compressible":true},"application/metalink+xml":{"source":"apache","compressible":true,"extensions":["metalink"]},"application/metalink4+xml":{"source":"iana","compressible":true,"extensions":["meta4"]},"application/mets+xml":{"source":"iana","compressible":true,"extensions":["mets"]},"application/mf4":{"source":"iana"},"application/mikey":{"source":"iana"},"application/mipc":{"source":"iana"},"application/missing-blocks+cbor-seq":{"source":"iana"},"application/mmt-aei+xml":{"source":"iana","compressible":true,"extensions":["maei"]},"application/mmt-usd+xml":{"source":"iana","compressible":true,"extensions":["musd"]},"application/mods+xml":{"source":"iana","compressible":true,"extensions":["mods"]},"application/moss-keys":{"source":"iana"},"application/moss-signature":{"source":"iana"},"application/mosskey-data":{"source":"iana"},"application/mosskey-request":{"source":"iana"},"application/mp21":{"source":"iana","extensions":["m21","mp21"]},"application/mp4":{"source":"iana","extensions":["mp4s","m4p"]},"application/mpeg4-generic":{"source":"iana"},"application/mpeg4-iod":{"source":"iana"},"application/mpeg4-iod-xmt":{"source":"iana"},"application/mrb-consumer+xml":{"source":"iana","compressible":true},"application/mrb-publish+xml":{"source":"iana","compressible":true},"application/msc-ivr+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/msc-mixer+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/msword":{"source":"iana","compressible":false,"extensions":["doc","dot"]},"application/mud+json":{"source":"iana","compressible":true},"application/multipart-core":{"source":"iana"},"application/mxf":{"source":"iana","extensions":["mxf"]},"application/n-quads":{"source":"iana","extensions":["nq"]},"application/n-triples":{"source":"iana","extensions":["nt"]},"application/nasdata":{"source":"iana"},"application/news-checkgroups":{"source":"iana","charset":"US-ASCII"},"application/news-groupinfo":{"source":"iana","charset":"US-ASCII"},"application/news-transmission":{"source":"iana"},"application/nlsml+xml":{"source":"iana","compressible":true},"application/node":{"source":"iana","extensions":["cjs"]},"application/nss":{"source":"iana"},"application/oauth-authz-req+jwt":{"source":"iana"},"application/oblivious-dns-message":{"source":"iana"},"application/ocsp-request":{"source":"iana"},"application/ocsp-response":{"source":"iana"},"application/octet-stream":{"source":"iana","compressible":false,"extensions":["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"]},"application/oda":{"source":"iana","extensions":["oda"]},"application/odm+xml":{"source":"iana","compressible":true},"application/odx":{"source":"iana"},"application/oebps-package+xml":{"source":"iana","compressible":true,"extensions":["opf"]},"application/ogg":{"source":"iana","compressible":false,"extensions":["ogx"]},"application/omdoc+xml":{"source":"apache","compressible":true,"extensions":["omdoc"]},"application/onenote":{"source":"apache","extensions":["onetoc","onetoc2","onetmp","onepkg"]},"application/opc-nodeset+xml":{"source":"iana","compressible":true},"application/oscore":{"source":"iana"},"application/oxps":{"source":"iana","extensions":["oxps"]},"application/p21":{"source":"iana"},"application/p21+zip":{"source":"iana","compressible":false},"application/p2p-overlay+xml":{"source":"iana","compressible":true,"extensions":["relo"]},"application/parityfec":{"source":"iana"},"application/passport":{"source":"iana"},"application/patch-ops-error+xml":{"source":"iana","compressible":true,"extensions":["xer"]},"application/pdf":{"source":"iana","compressible":false,"extensions":["pdf"]},"application/pdx":{"source":"iana"},"application/pem-certificate-chain":{"source":"iana"},"application/pgp-encrypted":{"source":"iana","compressible":false,"extensions":["pgp"]},"application/pgp-keys":{"source":"iana","extensions":["asc"]},"application/pgp-signature":{"source":"iana","extensions":["asc","sig"]},"application/pics-rules":{"source":"apache","extensions":["prf"]},"application/pidf+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/pidf-diff+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/pkcs10":{"source":"iana","extensions":["p10"]},"application/pkcs12":{"source":"iana"},"application/pkcs7-mime":{"source":"iana","extensions":["p7m","p7c"]},"application/pkcs7-signature":{"source":"iana","extensions":["p7s"]},"application/pkcs8":{"source":"iana","extensions":["p8"]},"application/pkcs8-encrypted":{"source":"iana"},"application/pkix-attr-cert":{"source":"iana","extensions":["ac"]},"application/pkix-cert":{"source":"iana","extensions":["cer"]},"application/pkix-crl":{"source":"iana","extensions":["crl"]},"application/pkix-pkipath":{"source":"iana","extensions":["pkipath"]},"application/pkixcmp":{"source":"iana","extensions":["pki"]},"application/pls+xml":{"source":"iana","compressible":true,"extensions":["pls"]},"application/poc-settings+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/postscript":{"source":"iana","compressible":true,"extensions":["ai","eps","ps"]},"application/ppsp-tracker+json":{"source":"iana","compressible":true},"application/problem+json":{"source":"iana","compressible":true},"application/problem+xml":{"source":"iana","compressible":true},"application/provenance+xml":{"source":"iana","compressible":true,"extensions":["provx"]},"application/prs.alvestrand.titrax-sheet":{"source":"iana"},"application/prs.cww":{"source":"iana","extensions":["cww"]},"application/prs.cyn":{"source":"iana","charset":"7-BIT"},"application/prs.hpub+zip":{"source":"iana","compressible":false},"application/prs.nprend":{"source":"iana"},"application/prs.plucker":{"source":"iana"},"application/prs.rdf-xml-crypt":{"source":"iana"},"application/prs.xsf+xml":{"source":"iana","compressible":true},"application/pskc+xml":{"source":"iana","compressible":true,"extensions":["pskcxml"]},"application/pvd+json":{"source":"iana","compressible":true},"application/qsig":{"source":"iana"},"application/raml+yaml":{"compressible":true,"extensions":["raml"]},"application/raptorfec":{"source":"iana"},"application/rdap+json":{"source":"iana","compressible":true},"application/rdf+xml":{"source":"iana","compressible":true,"extensions":["rdf","owl"]},"application/reginfo+xml":{"source":"iana","compressible":true,"extensions":["rif"]},"application/relax-ng-compact-syntax":{"source":"iana","extensions":["rnc"]},"application/remote-printing":{"source":"iana"},"application/reputon+json":{"source":"iana","compressible":true},"application/resource-lists+xml":{"source":"iana","compressible":true,"extensions":["rl"]},"application/resource-lists-diff+xml":{"source":"iana","compressible":true,"extensions":["rld"]},"application/rfc+xml":{"source":"iana","compressible":true},"application/riscos":{"source":"iana"},"application/rlmi+xml":{"source":"iana","compressible":true},"application/rls-services+xml":{"source":"iana","compressible":true,"extensions":["rs"]},"application/route-apd+xml":{"source":"iana","compressible":true,"extensions":["rapd"]},"application/route-s-tsid+xml":{"source":"iana","compressible":true,"extensions":["sls"]},"application/route-usd+xml":{"source":"iana","compressible":true,"extensions":["rusd"]},"application/rpki-ghostbusters":{"source":"iana","extensions":["gbr"]},"application/rpki-manifest":{"source":"iana","extensions":["mft"]},"application/rpki-publication":{"source":"iana"},"application/rpki-roa":{"source":"iana","extensions":["roa"]},"application/rpki-updown":{"source":"iana"},"application/rsd+xml":{"source":"apache","compressible":true,"extensions":["rsd"]},"application/rss+xml":{"source":"apache","compressible":true,"extensions":["rss"]},"application/rtf":{"source":"iana","compressible":true,"extensions":["rtf"]},"application/rtploopback":{"source":"iana"},"application/rtx":{"source":"iana"},"application/samlassertion+xml":{"source":"iana","compressible":true},"application/samlmetadata+xml":{"source":"iana","compressible":true},"application/sarif+json":{"source":"iana","compressible":true},"application/sarif-external-properties+json":{"source":"iana","compressible":true},"application/sbe":{"source":"iana"},"application/sbml+xml":{"source":"iana","compressible":true,"extensions":["sbml"]},"application/scaip+xml":{"source":"iana","compressible":true},"application/scim+json":{"source":"iana","compressible":true},"application/scvp-cv-request":{"source":"iana","extensions":["scq"]},"application/scvp-cv-response":{"source":"iana","extensions":["scs"]},"application/scvp-vp-request":{"source":"iana","extensions":["spq"]},"application/scvp-vp-response":{"source":"iana","extensions":["spp"]},"application/sdp":{"source":"iana","extensions":["sdp"]},"application/secevent+jwt":{"source":"iana"},"application/senml+cbor":{"source":"iana"},"application/senml+json":{"source":"iana","compressible":true},"application/senml+xml":{"source":"iana","compressible":true,"extensions":["senmlx"]},"application/senml-etch+cbor":{"source":"iana"},"application/senml-etch+json":{"source":"iana","compressible":true},"application/senml-exi":{"source":"iana"},"application/sensml+cbor":{"source":"iana"},"application/sensml+json":{"source":"iana","compressible":true},"application/sensml+xml":{"source":"iana","compressible":true,"extensions":["sensmlx"]},"application/sensml-exi":{"source":"iana"},"application/sep+xml":{"source":"iana","compressible":true},"application/sep-exi":{"source":"iana"},"application/session-info":{"source":"iana"},"application/set-payment":{"source":"iana"},"application/set-payment-initiation":{"source":"iana","extensions":["setpay"]},"application/set-registration":{"source":"iana"},"application/set-registration-initiation":{"source":"iana","extensions":["setreg"]},"application/sgml":{"source":"iana"},"application/sgml-open-catalog":{"source":"iana"},"application/shf+xml":{"source":"iana","compressible":true,"extensions":["shf"]},"application/sieve":{"source":"iana","extensions":["siv","sieve"]},"application/simple-filter+xml":{"source":"iana","compressible":true},"application/simple-message-summary":{"source":"iana"},"application/simplesymbolcontainer":{"source":"iana"},"application/sipc":{"source":"iana"},"application/slate":{"source":"iana"},"application/smil":{"source":"iana"},"application/smil+xml":{"source":"iana","compressible":true,"extensions":["smi","smil"]},"application/smpte336m":{"source":"iana"},"application/soap+fastinfoset":{"source":"iana"},"application/soap+xml":{"source":"iana","compressible":true},"application/sparql-query":{"source":"iana","extensions":["rq"]},"application/sparql-results+xml":{"source":"iana","compressible":true,"extensions":["srx"]},"application/spdx+json":{"source":"iana","compressible":true},"application/spirits-event+xml":{"source":"iana","compressible":true},"application/sql":{"source":"iana"},"application/srgs":{"source":"iana","extensions":["gram"]},"application/srgs+xml":{"source":"iana","compressible":true,"extensions":["grxml"]},"application/sru+xml":{"source":"iana","compressible":true,"extensions":["sru"]},"application/ssdl+xml":{"source":"apache","compressible":true,"extensions":["ssdl"]},"application/ssml+xml":{"source":"iana","compressible":true,"extensions":["ssml"]},"application/stix+json":{"source":"iana","compressible":true},"application/swid+xml":{"source":"iana","compressible":true,"extensions":["swidtag"]},"application/tamp-apex-update":{"source":"iana"},"application/tamp-apex-update-confirm":{"source":"iana"},"application/tamp-community-update":{"source":"iana"},"application/tamp-community-update-confirm":{"source":"iana"},"application/tamp-error":{"source":"iana"},"application/tamp-sequence-adjust":{"source":"iana"},"application/tamp-sequence-adjust-confirm":{"source":"iana"},"application/tamp-status-query":{"source":"iana"},"application/tamp-status-response":{"source":"iana"},"application/tamp-update":{"source":"iana"},"application/tamp-update-confirm":{"source":"iana"},"application/tar":{"compressible":true},"application/taxii+json":{"source":"iana","compressible":true},"application/td+json":{"source":"iana","compressible":true},"application/tei+xml":{"source":"iana","compressible":true,"extensions":["tei","teicorpus"]},"application/tetra_isi":{"source":"iana"},"application/thraud+xml":{"source":"iana","compressible":true,"extensions":["tfi"]},"application/timestamp-query":{"source":"iana"},"application/timestamp-reply":{"source":"iana"},"application/timestamped-data":{"source":"iana","extensions":["tsd"]},"application/tlsrpt+gzip":{"source":"iana"},"application/tlsrpt+json":{"source":"iana","compressible":true},"application/tnauthlist":{"source":"iana"},"application/token-introspection+jwt":{"source":"iana"},"application/toml":{"compressible":true,"extensions":["toml"]},"application/trickle-ice-sdpfrag":{"source":"iana"},"application/trig":{"source":"iana","extensions":["trig"]},"application/ttml+xml":{"source":"iana","compressible":true,"extensions":["ttml"]},"application/tve-trigger":{"source":"iana"},"application/tzif":{"source":"iana"},"application/tzif-leap":{"source":"iana"},"application/ubjson":{"compressible":false,"extensions":["ubj"]},"application/ulpfec":{"source":"iana"},"application/urc-grpsheet+xml":{"source":"iana","compressible":true},"application/urc-ressheet+xml":{"source":"iana","compressible":true,"extensions":["rsheet"]},"application/urc-targetdesc+xml":{"source":"iana","compressible":true,"extensions":["td"]},"application/urc-uisocketdesc+xml":{"source":"iana","compressible":true},"application/vcard+json":{"source":"iana","compressible":true},"application/vcard+xml":{"source":"iana","compressible":true},"application/vemmi":{"source":"iana"},"application/vividence.scriptfile":{"source":"apache"},"application/vnd.1000minds.decision-model+xml":{"source":"iana","compressible":true,"extensions":["1km"]},"application/vnd.3gpp-prose+xml":{"source":"iana","compressible":true},"application/vnd.3gpp-prose-pc3ch+xml":{"source":"iana","compressible":true},"application/vnd.3gpp-v2x-local-service-information":{"source":"iana"},"application/vnd.3gpp.5gnas":{"source":"iana"},"application/vnd.3gpp.access-transfer-events+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.bsf+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.gmop+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.gtpc":{"source":"iana"},"application/vnd.3gpp.interworking-data":{"source":"iana"},"application/vnd.3gpp.lpp":{"source":"iana"},"application/vnd.3gpp.mc-signalling-ear":{"source":"iana"},"application/vnd.3gpp.mcdata-affiliation-command+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-payload":{"source":"iana"},"application/vnd.3gpp.mcdata-service-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-signalling":{"source":"iana"},"application/vnd.3gpp.mcdata-ue-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-user-profile+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-affiliation-command+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-floor-request+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-location-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-mbms-usage-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-service-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-signed+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-ue-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-ue-init-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-user-profile+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-affiliation-command+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-affiliation-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-location-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-mbms-usage-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-service-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-transmission-request+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-ue-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-user-profile+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mid-call+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.ngap":{"source":"iana"},"application/vnd.3gpp.pfcp":{"source":"iana"},"application/vnd.3gpp.pic-bw-large":{"source":"iana","extensions":["plb"]},"application/vnd.3gpp.pic-bw-small":{"source":"iana","extensions":["psb"]},"application/vnd.3gpp.pic-bw-var":{"source":"iana","extensions":["pvb"]},"application/vnd.3gpp.s1ap":{"source":"iana"},"application/vnd.3gpp.sms":{"source":"iana"},"application/vnd.3gpp.sms+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.srvcc-ext+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.srvcc-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.state-and-event-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.ussd+xml":{"source":"iana","compressible":true},"application/vnd.3gpp2.bcmcsinfo+xml":{"source":"iana","compressible":true},"application/vnd.3gpp2.sms":{"source":"iana"},"application/vnd.3gpp2.tcap":{"source":"iana","extensions":["tcap"]},"application/vnd.3lightssoftware.imagescal":{"source":"iana"},"application/vnd.3m.post-it-notes":{"source":"iana","extensions":["pwn"]},"application/vnd.accpac.simply.aso":{"source":"iana","extensions":["aso"]},"application/vnd.accpac.simply.imp":{"source":"iana","extensions":["imp"]},"application/vnd.acucobol":{"source":"iana","extensions":["acu"]},"application/vnd.acucorp":{"source":"iana","extensions":["atc","acutc"]},"application/vnd.adobe.air-application-installer-package+zip":{"source":"apache","compressible":false,"extensions":["air"]},"application/vnd.adobe.flash.movie":{"source":"iana"},"application/vnd.adobe.formscentral.fcdt":{"source":"iana","extensions":["fcdt"]},"application/vnd.adobe.fxp":{"source":"iana","extensions":["fxp","fxpl"]},"application/vnd.adobe.partial-upload":{"source":"iana"},"application/vnd.adobe.xdp+xml":{"source":"iana","compressible":true,"extensions":["xdp"]},"application/vnd.adobe.xfdf":{"source":"iana","extensions":["xfdf"]},"application/vnd.aether.imp":{"source":"iana"},"application/vnd.afpc.afplinedata":{"source":"iana"},"application/vnd.afpc.afplinedata-pagedef":{"source":"iana"},"application/vnd.afpc.cmoca-cmresource":{"source":"iana"},"application/vnd.afpc.foca-charset":{"source":"iana"},"application/vnd.afpc.foca-codedfont":{"source":"iana"},"application/vnd.afpc.foca-codepage":{"source":"iana"},"application/vnd.afpc.modca":{"source":"iana"},"application/vnd.afpc.modca-cmtable":{"source":"iana"},"application/vnd.afpc.modca-formdef":{"source":"iana"},"application/vnd.afpc.modca-mediummap":{"source":"iana"},"application/vnd.afpc.modca-objectcontainer":{"source":"iana"},"application/vnd.afpc.modca-overlay":{"source":"iana"},"application/vnd.afpc.modca-pagesegment":{"source":"iana"},"application/vnd.age":{"source":"iana","extensions":["age"]},"application/vnd.ah-barcode":{"source":"iana"},"application/vnd.ahead.space":{"source":"iana","extensions":["ahead"]},"application/vnd.airzip.filesecure.azf":{"source":"iana","extensions":["azf"]},"application/vnd.airzip.filesecure.azs":{"source":"iana","extensions":["azs"]},"application/vnd.amadeus+json":{"source":"iana","compressible":true},"application/vnd.amazon.ebook":{"source":"apache","extensions":["azw"]},"application/vnd.amazon.mobi8-ebook":{"source":"iana"},"application/vnd.americandynamics.acc":{"source":"iana","extensions":["acc"]},"application/vnd.amiga.ami":{"source":"iana","extensions":["ami"]},"application/vnd.amundsen.maze+xml":{"source":"iana","compressible":true},"application/vnd.android.ota":{"source":"iana"},"application/vnd.android.package-archive":{"source":"apache","compressible":false,"extensions":["apk"]},"application/vnd.anki":{"source":"iana"},"application/vnd.anser-web-certificate-issue-initiation":{"source":"iana","extensions":["cii"]},"application/vnd.anser-web-funds-transfer-initiation":{"source":"apache","extensions":["fti"]},"application/vnd.antix.game-component":{"source":"iana","extensions":["atx"]},"application/vnd.apache.arrow.file":{"source":"iana"},"application/vnd.apache.arrow.stream":{"source":"iana"},"application/vnd.apache.thrift.binary":{"source":"iana"},"application/vnd.apache.thrift.compact":{"source":"iana"},"application/vnd.apache.thrift.json":{"source":"iana"},"application/vnd.api+json":{"source":"iana","compressible":true},"application/vnd.aplextor.warrp+json":{"source":"iana","compressible":true},"application/vnd.apothekende.reservation+json":{"source":"iana","compressible":true},"application/vnd.apple.installer+xml":{"source":"iana","compressible":true,"extensions":["mpkg"]},"application/vnd.apple.keynote":{"source":"iana","extensions":["key"]},"application/vnd.apple.mpegurl":{"source":"iana","extensions":["m3u8"]},"application/vnd.apple.numbers":{"source":"iana","extensions":["numbers"]},"application/vnd.apple.pages":{"source":"iana","extensions":["pages"]},"application/vnd.apple.pkpass":{"compressible":false,"extensions":["pkpass"]},"application/vnd.arastra.swi":{"source":"iana"},"application/vnd.aristanetworks.swi":{"source":"iana","extensions":["swi"]},"application/vnd.artisan+json":{"source":"iana","compressible":true},"application/vnd.artsquare":{"source":"iana"},"application/vnd.astraea-software.iota":{"source":"iana","extensions":["iota"]},"application/vnd.audiograph":{"source":"iana","extensions":["aep"]},"application/vnd.autopackage":{"source":"iana"},"application/vnd.avalon+json":{"source":"iana","compressible":true},"application/vnd.avistar+xml":{"source":"iana","compressible":true},"application/vnd.balsamiq.bmml+xml":{"source":"iana","compressible":true,"extensions":["bmml"]},"application/vnd.balsamiq.bmpr":{"source":"iana"},"application/vnd.banana-accounting":{"source":"iana"},"application/vnd.bbf.usp.error":{"source":"iana"},"application/vnd.bbf.usp.msg":{"source":"iana"},"application/vnd.bbf.usp.msg+json":{"source":"iana","compressible":true},"application/vnd.bekitzur-stech+json":{"source":"iana","compressible":true},"application/vnd.bint.med-content":{"source":"iana"},"application/vnd.biopax.rdf+xml":{"source":"iana","compressible":true},"application/vnd.blink-idb-value-wrapper":{"source":"iana"},"application/vnd.blueice.multipass":{"source":"iana","extensions":["mpm"]},"application/vnd.bluetooth.ep.oob":{"source":"iana"},"application/vnd.bluetooth.le.oob":{"source":"iana"},"application/vnd.bmi":{"source":"iana","extensions":["bmi"]},"application/vnd.bpf":{"source":"iana"},"application/vnd.bpf3":{"source":"iana"},"application/vnd.businessobjects":{"source":"iana","extensions":["rep"]},"application/vnd.byu.uapi+json":{"source":"iana","compressible":true},"application/vnd.cab-jscript":{"source":"iana"},"application/vnd.canon-cpdl":{"source":"iana"},"application/vnd.canon-lips":{"source":"iana"},"application/vnd.capasystems-pg+json":{"source":"iana","compressible":true},"application/vnd.cendio.thinlinc.clientconf":{"source":"iana"},"application/vnd.century-systems.tcp_stream":{"source":"iana"},"application/vnd.chemdraw+xml":{"source":"iana","compressible":true,"extensions":["cdxml"]},"application/vnd.chess-pgn":{"source":"iana"},"application/vnd.chipnuts.karaoke-mmd":{"source":"iana","extensions":["mmd"]},"application/vnd.ciedi":{"source":"iana"},"application/vnd.cinderella":{"source":"iana","extensions":["cdy"]},"application/vnd.cirpack.isdn-ext":{"source":"iana"},"application/vnd.citationstyles.style+xml":{"source":"iana","compressible":true,"extensions":["csl"]},"application/vnd.claymore":{"source":"iana","extensions":["cla"]},"application/vnd.cloanto.rp9":{"source":"iana","extensions":["rp9"]},"application/vnd.clonk.c4group":{"source":"iana","extensions":["c4g","c4d","c4f","c4p","c4u"]},"application/vnd.cluetrust.cartomobile-config":{"source":"iana","extensions":["c11amc"]},"application/vnd.cluetrust.cartomobile-config-pkg":{"source":"iana","extensions":["c11amz"]},"application/vnd.coffeescript":{"source":"iana"},"application/vnd.collabio.xodocuments.document":{"source":"iana"},"application/vnd.collabio.xodocuments.document-template":{"source":"iana"},"application/vnd.collabio.xodocuments.presentation":{"source":"iana"},"application/vnd.collabio.xodocuments.presentation-template":{"source":"iana"},"application/vnd.collabio.xodocuments.spreadsheet":{"source":"iana"},"application/vnd.collabio.xodocuments.spreadsheet-template":{"source":"iana"},"application/vnd.collection+json":{"source":"iana","compressible":true},"application/vnd.collection.doc+json":{"source":"iana","compressible":true},"application/vnd.collection.next+json":{"source":"iana","compressible":true},"application/vnd.comicbook+zip":{"source":"iana","compressible":false},"application/vnd.comicbook-rar":{"source":"iana"},"application/vnd.commerce-battelle":{"source":"iana"},"application/vnd.commonspace":{"source":"iana","extensions":["csp"]},"application/vnd.contact.cmsg":{"source":"iana","extensions":["cdbcmsg"]},"application/vnd.coreos.ignition+json":{"source":"iana","compressible":true},"application/vnd.cosmocaller":{"source":"iana","extensions":["cmc"]},"application/vnd.crick.clicker":{"source":"iana","extensions":["clkx"]},"application/vnd.crick.clicker.keyboard":{"source":"iana","extensions":["clkk"]},"application/vnd.crick.clicker.palette":{"source":"iana","extensions":["clkp"]},"application/vnd.crick.clicker.template":{"source":"iana","extensions":["clkt"]},"application/vnd.crick.clicker.wordbank":{"source":"iana","extensions":["clkw"]},"application/vnd.criticaltools.wbs+xml":{"source":"iana","compressible":true,"extensions":["wbs"]},"application/vnd.cryptii.pipe+json":{"source":"iana","compressible":true},"application/vnd.crypto-shade-file":{"source":"iana"},"application/vnd.cryptomator.encrypted":{"source":"iana"},"application/vnd.cryptomator.vault":{"source":"iana"},"application/vnd.ctc-posml":{"source":"iana","extensions":["pml"]},"application/vnd.ctct.ws+xml":{"source":"iana","compressible":true},"application/vnd.cups-pdf":{"source":"iana"},"application/vnd.cups-postscript":{"source":"iana"},"application/vnd.cups-ppd":{"source":"iana","extensions":["ppd"]},"application/vnd.cups-raster":{"source":"iana"},"application/vnd.cups-raw":{"source":"iana"},"application/vnd.curl":{"source":"iana"},"application/vnd.curl.car":{"source":"apache","extensions":["car"]},"application/vnd.curl.pcurl":{"source":"apache","extensions":["pcurl"]},"application/vnd.cyan.dean.root+xml":{"source":"iana","compressible":true},"application/vnd.cybank":{"source":"iana"},"application/vnd.cyclonedx+json":{"source":"iana","compressible":true},"application/vnd.cyclonedx+xml":{"source":"iana","compressible":true},"application/vnd.d2l.coursepackage1p0+zip":{"source":"iana","compressible":false},"application/vnd.d3m-dataset":{"source":"iana"},"application/vnd.d3m-problem":{"source":"iana"},"application/vnd.dart":{"source":"iana","compressible":true,"extensions":["dart"]},"application/vnd.data-vision.rdz":{"source":"iana","extensions":["rdz"]},"application/vnd.datapackage+json":{"source":"iana","compressible":true},"application/vnd.dataresource+json":{"source":"iana","compressible":true},"application/vnd.dbf":{"source":"iana","extensions":["dbf"]},"application/vnd.debian.binary-package":{"source":"iana"},"application/vnd.dece.data":{"source":"iana","extensions":["uvf","uvvf","uvd","uvvd"]},"application/vnd.dece.ttml+xml":{"source":"iana","compressible":true,"extensions":["uvt","uvvt"]},"application/vnd.dece.unspecified":{"source":"iana","extensions":["uvx","uvvx"]},"application/vnd.dece.zip":{"source":"iana","extensions":["uvz","uvvz"]},"application/vnd.denovo.fcselayout-link":{"source":"iana","extensions":["fe_launch"]},"application/vnd.desmume.movie":{"source":"iana"},"application/vnd.dir-bi.plate-dl-nosuffix":{"source":"iana"},"application/vnd.dm.delegation+xml":{"source":"iana","compressible":true},"application/vnd.dna":{"source":"iana","extensions":["dna"]},"application/vnd.document+json":{"source":"iana","compressible":true},"application/vnd.dolby.mlp":{"source":"apache","extensions":["mlp"]},"application/vnd.dolby.mobile.1":{"source":"iana"},"application/vnd.dolby.mobile.2":{"source":"iana"},"application/vnd.doremir.scorecloud-binary-document":{"source":"iana"},"application/vnd.dpgraph":{"source":"iana","extensions":["dpg"]},"application/vnd.dreamfactory":{"source":"iana","extensions":["dfac"]},"application/vnd.drive+json":{"source":"iana","compressible":true},"application/vnd.ds-keypoint":{"source":"apache","extensions":["kpxx"]},"application/vnd.dtg.local":{"source":"iana"},"application/vnd.dtg.local.flash":{"source":"iana"},"application/vnd.dtg.local.html":{"source":"iana"},"application/vnd.dvb.ait":{"source":"iana","extensions":["ait"]},"application/vnd.dvb.dvbisl+xml":{"source":"iana","compressible":true},"application/vnd.dvb.dvbj":{"source":"iana"},"application/vnd.dvb.esgcontainer":{"source":"iana"},"application/vnd.dvb.ipdcdftnotifaccess":{"source":"iana"},"application/vnd.dvb.ipdcesgaccess":{"source":"iana"},"application/vnd.dvb.ipdcesgaccess2":{"source":"iana"},"application/vnd.dvb.ipdcesgpdd":{"source":"iana"},"application/vnd.dvb.ipdcroaming":{"source":"iana"},"application/vnd.dvb.iptv.alfec-base":{"source":"iana"},"application/vnd.dvb.iptv.alfec-enhancement":{"source":"iana"},"application/vnd.dvb.notif-aggregate-root+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-container+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-generic+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-ia-msglist+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-ia-registration-request+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-ia-registration-response+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-init+xml":{"source":"iana","compressible":true},"application/vnd.dvb.pfr":{"source":"iana"},"application/vnd.dvb.service":{"source":"iana","extensions":["svc"]},"application/vnd.dxr":{"source":"iana"},"application/vnd.dynageo":{"source":"iana","extensions":["geo"]},"application/vnd.dzr":{"source":"iana"},"application/vnd.easykaraoke.cdgdownload":{"source":"iana"},"application/vnd.ecdis-update":{"source":"iana"},"application/vnd.ecip.rlp":{"source":"iana"},"application/vnd.eclipse.ditto+json":{"source":"iana","compressible":true},"application/vnd.ecowin.chart":{"source":"iana","extensions":["mag"]},"application/vnd.ecowin.filerequest":{"source":"iana"},"application/vnd.ecowin.fileupdate":{"source":"iana"},"application/vnd.ecowin.series":{"source":"iana"},"application/vnd.ecowin.seriesrequest":{"source":"iana"},"application/vnd.ecowin.seriesupdate":{"source":"iana"},"application/vnd.efi.img":{"source":"iana"},"application/vnd.efi.iso":{"source":"iana"},"application/vnd.emclient.accessrequest+xml":{"source":"iana","compressible":true},"application/vnd.enliven":{"source":"iana","extensions":["nml"]},"application/vnd.enphase.envoy":{"source":"iana"},"application/vnd.eprints.data+xml":{"source":"iana","compressible":true},"application/vnd.epson.esf":{"source":"iana","extensions":["esf"]},"application/vnd.epson.msf":{"source":"iana","extensions":["msf"]},"application/vnd.epson.quickanime":{"source":"iana","extensions":["qam"]},"application/vnd.epson.salt":{"source":"iana","extensions":["slt"]},"application/vnd.epson.ssf":{"source":"iana","extensions":["ssf"]},"application/vnd.ericsson.quickcall":{"source":"iana"},"application/vnd.espass-espass+zip":{"source":"iana","compressible":false},"application/vnd.eszigno3+xml":{"source":"iana","compressible":true,"extensions":["es3","et3"]},"application/vnd.etsi.aoc+xml":{"source":"iana","compressible":true},"application/vnd.etsi.asic-e+zip":{"source":"iana","compressible":false},"application/vnd.etsi.asic-s+zip":{"source":"iana","compressible":false},"application/vnd.etsi.cug+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvcommand+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvdiscovery+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvprofile+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvsad-bc+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvsad-cod+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvsad-npvr+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvservice+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvsync+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvueprofile+xml":{"source":"iana","compressible":true},"application/vnd.etsi.mcid+xml":{"source":"iana","compressible":true},"application/vnd.etsi.mheg5":{"source":"iana"},"application/vnd.etsi.overload-control-policy-dataset+xml":{"source":"iana","compressible":true},"application/vnd.etsi.pstn+xml":{"source":"iana","compressible":true},"application/vnd.etsi.sci+xml":{"source":"iana","compressible":true},"application/vnd.etsi.simservs+xml":{"source":"iana","compressible":true},"application/vnd.etsi.timestamp-token":{"source":"iana"},"application/vnd.etsi.tsl+xml":{"source":"iana","compressible":true},"application/vnd.etsi.tsl.der":{"source":"iana"},"application/vnd.eu.kasparian.car+json":{"source":"iana","compressible":true},"application/vnd.eudora.data":{"source":"iana"},"application/vnd.evolv.ecig.profile":{"source":"iana"},"application/vnd.evolv.ecig.settings":{"source":"iana"},"application/vnd.evolv.ecig.theme":{"source":"iana"},"application/vnd.exstream-empower+zip":{"source":"iana","compressible":false},"application/vnd.exstream-package":{"source":"iana"},"application/vnd.ezpix-album":{"source":"iana","extensions":["ez2"]},"application/vnd.ezpix-package":{"source":"iana","extensions":["ez3"]},"application/vnd.f-secure.mobile":{"source":"iana"},"application/vnd.familysearch.gedcom+zip":{"source":"iana","compressible":false},"application/vnd.fastcopy-disk-image":{"source":"iana"},"application/vnd.fdf":{"source":"iana","extensions":["fdf"]},"application/vnd.fdsn.mseed":{"source":"iana","extensions":["mseed"]},"application/vnd.fdsn.seed":{"source":"iana","extensions":["seed","dataless"]},"application/vnd.ffsns":{"source":"iana"},"application/vnd.ficlab.flb+zip":{"source":"iana","compressible":false},"application/vnd.filmit.zfc":{"source":"iana"},"application/vnd.fints":{"source":"iana"},"application/vnd.firemonkeys.cloudcell":{"source":"iana"},"application/vnd.flographit":{"source":"iana","extensions":["gph"]},"application/vnd.fluxtime.clip":{"source":"iana","extensions":["ftc"]},"application/vnd.font-fontforge-sfd":{"source":"iana"},"application/vnd.framemaker":{"source":"iana","extensions":["fm","frame","maker","book"]},"application/vnd.frogans.fnc":{"source":"iana","extensions":["fnc"]},"application/vnd.frogans.ltf":{"source":"iana","extensions":["ltf"]},"application/vnd.fsc.weblaunch":{"source":"iana","extensions":["fsc"]},"application/vnd.fujifilm.fb.docuworks":{"source":"iana"},"application/vnd.fujifilm.fb.docuworks.binder":{"source":"iana"},"application/vnd.fujifilm.fb.docuworks.container":{"source":"iana"},"application/vnd.fujifilm.fb.jfi+xml":{"source":"iana","compressible":true},"application/vnd.fujitsu.oasys":{"source":"iana","extensions":["oas"]},"application/vnd.fujitsu.oasys2":{"source":"iana","extensions":["oa2"]},"application/vnd.fujitsu.oasys3":{"source":"iana","extensions":["oa3"]},"application/vnd.fujitsu.oasysgp":{"source":"iana","extensions":["fg5"]},"application/vnd.fujitsu.oasysprs":{"source":"iana","extensions":["bh2"]},"application/vnd.fujixerox.art-ex":{"source":"iana"},"application/vnd.fujixerox.art4":{"source":"iana"},"application/vnd.fujixerox.ddd":{"source":"iana","extensions":["ddd"]},"application/vnd.fujixerox.docuworks":{"source":"iana","extensions":["xdw"]},"application/vnd.fujixerox.docuworks.binder":{"source":"iana","extensions":["xbd"]},"application/vnd.fujixerox.docuworks.container":{"source":"iana"},"application/vnd.fujixerox.hbpl":{"source":"iana"},"application/vnd.fut-misnet":{"source":"iana"},"application/vnd.futoin+cbor":{"source":"iana"},"application/vnd.futoin+json":{"source":"iana","compressible":true},"application/vnd.fuzzysheet":{"source":"iana","extensions":["fzs"]},"application/vnd.genomatix.tuxedo":{"source":"iana","extensions":["txd"]},"application/vnd.gentics.grd+json":{"source":"iana","compressible":true},"application/vnd.geo+json":{"source":"iana","compressible":true},"application/vnd.geocube+xml":{"source":"iana","compressible":true},"application/vnd.geogebra.file":{"source":"iana","extensions":["ggb"]},"application/vnd.geogebra.slides":{"source":"iana"},"application/vnd.geogebra.tool":{"source":"iana","extensions":["ggt"]},"application/vnd.geometry-explorer":{"source":"iana","extensions":["gex","gre"]},"application/vnd.geonext":{"source":"iana","extensions":["gxt"]},"application/vnd.geoplan":{"source":"iana","extensions":["g2w"]},"application/vnd.geospace":{"source":"iana","extensions":["g3w"]},"application/vnd.gerber":{"source":"iana"},"application/vnd.globalplatform.card-content-mgt":{"source":"iana"},"application/vnd.globalplatform.card-content-mgt-response":{"source":"iana"},"application/vnd.gmx":{"source":"iana","extensions":["gmx"]},"application/vnd.google-apps.document":{"compressible":false,"extensions":["gdoc"]},"application/vnd.google-apps.presentation":{"compressible":false,"extensions":["gslides"]},"application/vnd.google-apps.spreadsheet":{"compressible":false,"extensions":["gsheet"]},"application/vnd.google-earth.kml+xml":{"source":"iana","compressible":true,"extensions":["kml"]},"application/vnd.google-earth.kmz":{"source":"iana","compressible":false,"extensions":["kmz"]},"application/vnd.gov.sk.e-form+xml":{"source":"iana","compressible":true},"application/vnd.gov.sk.e-form+zip":{"source":"iana","compressible":false},"application/vnd.gov.sk.xmldatacontainer+xml":{"source":"iana","compressible":true},"application/vnd.grafeq":{"source":"iana","extensions":["gqf","gqs"]},"application/vnd.gridmp":{"source":"iana"},"application/vnd.groove-account":{"source":"iana","extensions":["gac"]},"application/vnd.groove-help":{"source":"iana","extensions":["ghf"]},"application/vnd.groove-identity-message":{"source":"iana","extensions":["gim"]},"application/vnd.groove-injector":{"source":"iana","extensions":["grv"]},"application/vnd.groove-tool-message":{"source":"iana","extensions":["gtm"]},"application/vnd.groove-tool-template":{"source":"iana","extensions":["tpl"]},"application/vnd.groove-vcard":{"source":"iana","extensions":["vcg"]},"application/vnd.hal+json":{"source":"iana","compressible":true},"application/vnd.hal+xml":{"source":"iana","compressible":true,"extensions":["hal"]},"application/vnd.handheld-entertainment+xml":{"source":"iana","compressible":true,"extensions":["zmm"]},"application/vnd.hbci":{"source":"iana","extensions":["hbci"]},"application/vnd.hc+json":{"source":"iana","compressible":true},"application/vnd.hcl-bireports":{"source":"iana"},"application/vnd.hdt":{"source":"iana"},"application/vnd.heroku+json":{"source":"iana","compressible":true},"application/vnd.hhe.lesson-player":{"source":"iana","extensions":["les"]},"application/vnd.hl7cda+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.hl7v2+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.hp-hpgl":{"source":"iana","extensions":["hpgl"]},"application/vnd.hp-hpid":{"source":"iana","extensions":["hpid"]},"application/vnd.hp-hps":{"source":"iana","extensions":["hps"]},"application/vnd.hp-jlyt":{"source":"iana","extensions":["jlt"]},"application/vnd.hp-pcl":{"source":"iana","extensions":["pcl"]},"application/vnd.hp-pclxl":{"source":"iana","extensions":["pclxl"]},"application/vnd.httphone":{"source":"iana"},"application/vnd.hydrostatix.sof-data":{"source":"iana","extensions":["sfd-hdstx"]},"application/vnd.hyper+json":{"source":"iana","compressible":true},"application/vnd.hyper-item+json":{"source":"iana","compressible":true},"application/vnd.hyperdrive+json":{"source":"iana","compressible":true},"application/vnd.hzn-3d-crossword":{"source":"iana"},"application/vnd.ibm.afplinedata":{"source":"iana"},"application/vnd.ibm.electronic-media":{"source":"iana"},"application/vnd.ibm.minipay":{"source":"iana","extensions":["mpy"]},"application/vnd.ibm.modcap":{"source":"iana","extensions":["afp","listafp","list3820"]},"application/vnd.ibm.rights-management":{"source":"iana","extensions":["irm"]},"application/vnd.ibm.secure-container":{"source":"iana","extensions":["sc"]},"application/vnd.iccprofile":{"source":"iana","extensions":["icc","icm"]},"application/vnd.ieee.1905":{"source":"iana"},"application/vnd.igloader":{"source":"iana","extensions":["igl"]},"application/vnd.imagemeter.folder+zip":{"source":"iana","compressible":false},"application/vnd.imagemeter.image+zip":{"source":"iana","compressible":false},"application/vnd.immervision-ivp":{"source":"iana","extensions":["ivp"]},"application/vnd.immervision-ivu":{"source":"iana","extensions":["ivu"]},"application/vnd.ims.imsccv1p1":{"source":"iana"},"application/vnd.ims.imsccv1p2":{"source":"iana"},"application/vnd.ims.imsccv1p3":{"source":"iana"},"application/vnd.ims.lis.v2.result+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolconsumerprofile+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolproxy+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolproxy.id+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolsettings+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolsettings.simple+json":{"source":"iana","compressible":true},"application/vnd.informedcontrol.rms+xml":{"source":"iana","compressible":true},"application/vnd.informix-visionary":{"source":"iana"},"application/vnd.infotech.project":{"source":"iana"},"application/vnd.infotech.project+xml":{"source":"iana","compressible":true},"application/vnd.innopath.wamp.notification":{"source":"iana"},"application/vnd.insors.igm":{"source":"iana","extensions":["igm"]},"application/vnd.intercon.formnet":{"source":"iana","extensions":["xpw","xpx"]},"application/vnd.intergeo":{"source":"iana","extensions":["i2g"]},"application/vnd.intertrust.digibox":{"source":"iana"},"application/vnd.intertrust.nncp":{"source":"iana"},"application/vnd.intu.qbo":{"source":"iana","extensions":["qbo"]},"application/vnd.intu.qfx":{"source":"iana","extensions":["qfx"]},"application/vnd.iptc.g2.catalogitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.conceptitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.knowledgeitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.newsitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.newsmessage+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.packageitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.planningitem+xml":{"source":"iana","compressible":true},"application/vnd.ipunplugged.rcprofile":{"source":"iana","extensions":["rcprofile"]},"application/vnd.irepository.package+xml":{"source":"iana","compressible":true,"extensions":["irp"]},"application/vnd.is-xpr":{"source":"iana","extensions":["xpr"]},"application/vnd.isac.fcs":{"source":"iana","extensions":["fcs"]},"application/vnd.iso11783-10+zip":{"source":"iana","compressible":false},"application/vnd.jam":{"source":"iana","extensions":["jam"]},"application/vnd.japannet-directory-service":{"source":"iana"},"application/vnd.japannet-jpnstore-wakeup":{"source":"iana"},"application/vnd.japannet-payment-wakeup":{"source":"iana"},"application/vnd.japannet-registration":{"source":"iana"},"application/vnd.japannet-registration-wakeup":{"source":"iana"},"application/vnd.japannet-setstore-wakeup":{"source":"iana"},"application/vnd.japannet-verification":{"source":"iana"},"application/vnd.japannet-verification-wakeup":{"source":"iana"},"application/vnd.jcp.javame.midlet-rms":{"source":"iana","extensions":["rms"]},"application/vnd.jisp":{"source":"iana","extensions":["jisp"]},"application/vnd.joost.joda-archive":{"source":"iana","extensions":["joda"]},"application/vnd.jsk.isdn-ngn":{"source":"iana"},"application/vnd.kahootz":{"source":"iana","extensions":["ktz","ktr"]},"application/vnd.kde.karbon":{"source":"iana","extensions":["karbon"]},"application/vnd.kde.kchart":{"source":"iana","extensions":["chrt"]},"application/vnd.kde.kformula":{"source":"iana","extensions":["kfo"]},"application/vnd.kde.kivio":{"source":"iana","extensions":["flw"]},"application/vnd.kde.kontour":{"source":"iana","extensions":["kon"]},"application/vnd.kde.kpresenter":{"source":"iana","extensions":["kpr","kpt"]},"application/vnd.kde.kspread":{"source":"iana","extensions":["ksp"]},"application/vnd.kde.kword":{"source":"iana","extensions":["kwd","kwt"]},"application/vnd.kenameaapp":{"source":"iana","extensions":["htke"]},"application/vnd.kidspiration":{"source":"iana","extensions":["kia"]},"application/vnd.kinar":{"source":"iana","extensions":["kne","knp"]},"application/vnd.koan":{"source":"iana","extensions":["skp","skd","skt","skm"]},"application/vnd.kodak-descriptor":{"source":"iana","extensions":["sse"]},"application/vnd.las":{"source":"iana"},"application/vnd.las.las+json":{"source":"iana","compressible":true},"application/vnd.las.las+xml":{"source":"iana","compressible":true,"extensions":["lasxml"]},"application/vnd.laszip":{"source":"iana"},"application/vnd.leap+json":{"source":"iana","compressible":true},"application/vnd.liberty-request+xml":{"source":"iana","compressible":true},"application/vnd.llamagraphics.life-balance.desktop":{"source":"iana","extensions":["lbd"]},"application/vnd.llamagraphics.life-balance.exchange+xml":{"source":"iana","compressible":true,"extensions":["lbe"]},"application/vnd.logipipe.circuit+zip":{"source":"iana","compressible":false},"application/vnd.loom":{"source":"iana"},"application/vnd.lotus-1-2-3":{"source":"iana","extensions":["123"]},"application/vnd.lotus-approach":{"source":"iana","extensions":["apr"]},"application/vnd.lotus-freelance":{"source":"iana","extensions":["pre"]},"application/vnd.lotus-notes":{"source":"iana","extensions":["nsf"]},"application/vnd.lotus-organizer":{"source":"iana","extensions":["org"]},"application/vnd.lotus-screencam":{"source":"iana","extensions":["scm"]},"application/vnd.lotus-wordpro":{"source":"iana","extensions":["lwp"]},"application/vnd.macports.portpkg":{"source":"iana","extensions":["portpkg"]},"application/vnd.mapbox-vector-tile":{"source":"iana","extensions":["mvt"]},"application/vnd.marlin.drm.actiontoken+xml":{"source":"iana","compressible":true},"application/vnd.marlin.drm.conftoken+xml":{"source":"iana","compressible":true},"application/vnd.marlin.drm.license+xml":{"source":"iana","compressible":true},"application/vnd.marlin.drm.mdcf":{"source":"iana"},"application/vnd.mason+json":{"source":"iana","compressible":true},"application/vnd.maxar.archive.3tz+zip":{"source":"iana","compressible":false},"application/vnd.maxmind.maxmind-db":{"source":"iana"},"application/vnd.mcd":{"source":"iana","extensions":["mcd"]},"application/vnd.medcalcdata":{"source":"iana","extensions":["mc1"]},"application/vnd.mediastation.cdkey":{"source":"iana","extensions":["cdkey"]},"application/vnd.meridian-slingshot":{"source":"iana"},"application/vnd.mfer":{"source":"iana","extensions":["mwf"]},"application/vnd.mfmp":{"source":"iana","extensions":["mfm"]},"application/vnd.micro+json":{"source":"iana","compressible":true},"application/vnd.micrografx.flo":{"source":"iana","extensions":["flo"]},"application/vnd.micrografx.igx":{"source":"iana","extensions":["igx"]},"application/vnd.microsoft.portable-executable":{"source":"iana"},"application/vnd.microsoft.windows.thumbnail-cache":{"source":"iana"},"application/vnd.miele+json":{"source":"iana","compressible":true},"application/vnd.mif":{"source":"iana","extensions":["mif"]},"application/vnd.minisoft-hp3000-save":{"source":"iana"},"application/vnd.mitsubishi.misty-guard.trustweb":{"source":"iana"},"application/vnd.mobius.daf":{"source":"iana","extensions":["daf"]},"application/vnd.mobius.dis":{"source":"iana","extensions":["dis"]},"application/vnd.mobius.mbk":{"source":"iana","extensions":["mbk"]},"application/vnd.mobius.mqy":{"source":"iana","extensions":["mqy"]},"application/vnd.mobius.msl":{"source":"iana","extensions":["msl"]},"application/vnd.mobius.plc":{"source":"iana","extensions":["plc"]},"application/vnd.mobius.txf":{"source":"iana","extensions":["txf"]},"application/vnd.mophun.application":{"source":"iana","extensions":["mpn"]},"application/vnd.mophun.certificate":{"source":"iana","extensions":["mpc"]},"application/vnd.motorola.flexsuite":{"source":"iana"},"application/vnd.motorola.flexsuite.adsi":{"source":"iana"},"application/vnd.motorola.flexsuite.fis":{"source":"iana"},"application/vnd.motorola.flexsuite.gotap":{"source":"iana"},"application/vnd.motorola.flexsuite.kmr":{"source":"iana"},"application/vnd.motorola.flexsuite.ttc":{"source":"iana"},"application/vnd.motorola.flexsuite.wem":{"source":"iana"},"application/vnd.motorola.iprm":{"source":"iana"},"application/vnd.mozilla.xul+xml":{"source":"iana","compressible":true,"extensions":["xul"]},"application/vnd.ms-3mfdocument":{"source":"iana"},"application/vnd.ms-artgalry":{"source":"iana","extensions":["cil"]},"application/vnd.ms-asf":{"source":"iana"},"application/vnd.ms-cab-compressed":{"source":"iana","extensions":["cab"]},"application/vnd.ms-color.iccprofile":{"source":"apache"},"application/vnd.ms-excel":{"source":"iana","compressible":false,"extensions":["xls","xlm","xla","xlc","xlt","xlw"]},"application/vnd.ms-excel.addin.macroenabled.12":{"source":"iana","extensions":["xlam"]},"application/vnd.ms-excel.sheet.binary.macroenabled.12":{"source":"iana","extensions":["xlsb"]},"application/vnd.ms-excel.sheet.macroenabled.12":{"source":"iana","extensions":["xlsm"]},"application/vnd.ms-excel.template.macroenabled.12":{"source":"iana","extensions":["xltm"]},"application/vnd.ms-fontobject":{"source":"iana","compressible":true,"extensions":["eot"]},"application/vnd.ms-htmlhelp":{"source":"iana","extensions":["chm"]},"application/vnd.ms-ims":{"source":"iana","extensions":["ims"]},"application/vnd.ms-lrm":{"source":"iana","extensions":["lrm"]},"application/vnd.ms-office.activex+xml":{"source":"iana","compressible":true},"application/vnd.ms-officetheme":{"source":"iana","extensions":["thmx"]},"application/vnd.ms-opentype":{"source":"apache","compressible":true},"application/vnd.ms-outlook":{"compressible":false,"extensions":["msg"]},"application/vnd.ms-package.obfuscated-opentype":{"source":"apache"},"application/vnd.ms-pki.seccat":{"source":"apache","extensions":["cat"]},"application/vnd.ms-pki.stl":{"source":"apache","extensions":["stl"]},"application/vnd.ms-playready.initiator+xml":{"source":"iana","compressible":true},"application/vnd.ms-powerpoint":{"source":"iana","compressible":false,"extensions":["ppt","pps","pot"]},"application/vnd.ms-powerpoint.addin.macroenabled.12":{"source":"iana","extensions":["ppam"]},"application/vnd.ms-powerpoint.presentation.macroenabled.12":{"source":"iana","extensions":["pptm"]},"application/vnd.ms-powerpoint.slide.macroenabled.12":{"source":"iana","extensions":["sldm"]},"application/vnd.ms-powerpoint.slideshow.macroenabled.12":{"source":"iana","extensions":["ppsm"]},"application/vnd.ms-powerpoint.template.macroenabled.12":{"source":"iana","extensions":["potm"]},"application/vnd.ms-printdevicecapabilities+xml":{"source":"iana","compressible":true},"application/vnd.ms-printing.printticket+xml":{"source":"apache","compressible":true},"application/vnd.ms-printschematicket+xml":{"source":"iana","compressible":true},"application/vnd.ms-project":{"source":"iana","extensions":["mpp","mpt"]},"application/vnd.ms-tnef":{"source":"iana"},"application/vnd.ms-windows.devicepairing":{"source":"iana"},"application/vnd.ms-windows.nwprinting.oob":{"source":"iana"},"application/vnd.ms-windows.printerpairing":{"source":"iana"},"application/vnd.ms-windows.wsd.oob":{"source":"iana"},"application/vnd.ms-wmdrm.lic-chlg-req":{"source":"iana"},"application/vnd.ms-wmdrm.lic-resp":{"source":"iana"},"application/vnd.ms-wmdrm.meter-chlg-req":{"source":"iana"},"application/vnd.ms-wmdrm.meter-resp":{"source":"iana"},"application/vnd.ms-word.document.macroenabled.12":{"source":"iana","extensions":["docm"]},"application/vnd.ms-word.template.macroenabled.12":{"source":"iana","extensions":["dotm"]},"application/vnd.ms-works":{"source":"iana","extensions":["wps","wks","wcm","wdb"]},"application/vnd.ms-wpl":{"source":"iana","extensions":["wpl"]},"application/vnd.ms-xpsdocument":{"source":"iana","compressible":false,"extensions":["xps"]},"application/vnd.msa-disk-image":{"source":"iana"},"application/vnd.mseq":{"source":"iana","extensions":["mseq"]},"application/vnd.msign":{"source":"iana"},"application/vnd.multiad.creator":{"source":"iana"},"application/vnd.multiad.creator.cif":{"source":"iana"},"application/vnd.music-niff":{"source":"iana"},"application/vnd.musician":{"source":"iana","extensions":["mus"]},"application/vnd.muvee.style":{"source":"iana","extensions":["msty"]},"application/vnd.mynfc":{"source":"iana","extensions":["taglet"]},"application/vnd.nacamar.ybrid+json":{"source":"iana","compressible":true},"application/vnd.ncd.control":{"source":"iana"},"application/vnd.ncd.reference":{"source":"iana"},"application/vnd.nearst.inv+json":{"source":"iana","compressible":true},"application/vnd.nebumind.line":{"source":"iana"},"application/vnd.nervana":{"source":"iana"},"application/vnd.netfpx":{"source":"iana"},"application/vnd.neurolanguage.nlu":{"source":"iana","extensions":["nlu"]},"application/vnd.nimn":{"source":"iana"},"application/vnd.nintendo.nitro.rom":{"source":"iana"},"application/vnd.nintendo.snes.rom":{"source":"iana"},"application/vnd.nitf":{"source":"iana","extensions":["ntf","nitf"]},"application/vnd.noblenet-directory":{"source":"iana","extensions":["nnd"]},"application/vnd.noblenet-sealer":{"source":"iana","extensions":["nns"]},"application/vnd.noblenet-web":{"source":"iana","extensions":["nnw"]},"application/vnd.nokia.catalogs":{"source":"iana"},"application/vnd.nokia.conml+wbxml":{"source":"iana"},"application/vnd.nokia.conml+xml":{"source":"iana","compressible":true},"application/vnd.nokia.iptv.config+xml":{"source":"iana","compressible":true},"application/vnd.nokia.isds-radio-presets":{"source":"iana"},"application/vnd.nokia.landmark+wbxml":{"source":"iana"},"application/vnd.nokia.landmark+xml":{"source":"iana","compressible":true},"application/vnd.nokia.landmarkcollection+xml":{"source":"iana","compressible":true},"application/vnd.nokia.n-gage.ac+xml":{"source":"iana","compressible":true,"extensions":["ac"]},"application/vnd.nokia.n-gage.data":{"source":"iana","extensions":["ngdat"]},"application/vnd.nokia.n-gage.symbian.install":{"source":"iana","extensions":["n-gage"]},"application/vnd.nokia.ncd":{"source":"iana"},"application/vnd.nokia.pcd+wbxml":{"source":"iana"},"application/vnd.nokia.pcd+xml":{"source":"iana","compressible":true},"application/vnd.nokia.radio-preset":{"source":"iana","extensions":["rpst"]},"application/vnd.nokia.radio-presets":{"source":"iana","extensions":["rpss"]},"application/vnd.novadigm.edm":{"source":"iana","extensions":["edm"]},"application/vnd.novadigm.edx":{"source":"iana","extensions":["edx"]},"application/vnd.novadigm.ext":{"source":"iana","extensions":["ext"]},"application/vnd.ntt-local.content-share":{"source":"iana"},"application/vnd.ntt-local.file-transfer":{"source":"iana"},"application/vnd.ntt-local.ogw_remote-access":{"source":"iana"},"application/vnd.ntt-local.sip-ta_remote":{"source":"iana"},"application/vnd.ntt-local.sip-ta_tcp_stream":{"source":"iana"},"application/vnd.oasis.opendocument.chart":{"source":"iana","extensions":["odc"]},"application/vnd.oasis.opendocument.chart-template":{"source":"iana","extensions":["otc"]},"application/vnd.oasis.opendocument.database":{"source":"iana","extensions":["odb"]},"application/vnd.oasis.opendocument.formula":{"source":"iana","extensions":["odf"]},"application/vnd.oasis.opendocument.formula-template":{"source":"iana","extensions":["odft"]},"application/vnd.oasis.opendocument.graphics":{"source":"iana","compressible":false,"extensions":["odg"]},"application/vnd.oasis.opendocument.graphics-template":{"source":"iana","extensions":["otg"]},"application/vnd.oasis.opendocument.image":{"source":"iana","extensions":["odi"]},"application/vnd.oasis.opendocument.image-template":{"source":"iana","extensions":["oti"]},"application/vnd.oasis.opendocument.presentation":{"source":"iana","compressible":false,"extensions":["odp"]},"application/vnd.oasis.opendocument.presentation-template":{"source":"iana","extensions":["otp"]},"application/vnd.oasis.opendocument.spreadsheet":{"source":"iana","compressible":false,"extensions":["ods"]},"application/vnd.oasis.opendocument.spreadsheet-template":{"source":"iana","extensions":["ots"]},"application/vnd.oasis.opendocument.text":{"source":"iana","compressible":false,"extensions":["odt"]},"application/vnd.oasis.opendocument.text-master":{"source":"iana","extensions":["odm"]},"application/vnd.oasis.opendocument.text-template":{"source":"iana","extensions":["ott"]},"application/vnd.oasis.opendocument.text-web":{"source":"iana","extensions":["oth"]},"application/vnd.obn":{"source":"iana"},"application/vnd.ocf+cbor":{"source":"iana"},"application/vnd.oci.image.manifest.v1+json":{"source":"iana","compressible":true},"application/vnd.oftn.l10n+json":{"source":"iana","compressible":true},"application/vnd.oipf.contentaccessdownload+xml":{"source":"iana","compressible":true},"application/vnd.oipf.contentaccessstreaming+xml":{"source":"iana","compressible":true},"application/vnd.oipf.cspg-hexbinary":{"source":"iana"},"application/vnd.oipf.dae.svg+xml":{"source":"iana","compressible":true},"application/vnd.oipf.dae.xhtml+xml":{"source":"iana","compressible":true},"application/vnd.oipf.mippvcontrolmessage+xml":{"source":"iana","compressible":true},"application/vnd.oipf.pae.gem":{"source":"iana"},"application/vnd.oipf.spdiscovery+xml":{"source":"iana","compressible":true},"application/vnd.oipf.spdlist+xml":{"source":"iana","compressible":true},"application/vnd.oipf.ueprofile+xml":{"source":"iana","compressible":true},"application/vnd.oipf.userprofile+xml":{"source":"iana","compressible":true},"application/vnd.olpc-sugar":{"source":"iana","extensions":["xo"]},"application/vnd.oma-scws-config":{"source":"iana"},"application/vnd.oma-scws-http-request":{"source":"iana"},"application/vnd.oma-scws-http-response":{"source":"iana"},"application/vnd.oma.bcast.associated-procedure-parameter+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.drm-trigger+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.imd+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.ltkm":{"source":"iana"},"application/vnd.oma.bcast.notification+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.provisioningtrigger":{"source":"iana"},"application/vnd.oma.bcast.sgboot":{"source":"iana"},"application/vnd.oma.bcast.sgdd+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.sgdu":{"source":"iana"},"application/vnd.oma.bcast.simple-symbol-container":{"source":"iana"},"application/vnd.oma.bcast.smartcard-trigger+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.sprov+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.stkm":{"source":"iana"},"application/vnd.oma.cab-address-book+xml":{"source":"iana","compressible":true},"application/vnd.oma.cab-feature-handler+xml":{"source":"iana","compressible":true},"application/vnd.oma.cab-pcc+xml":{"source":"iana","compressible":true},"application/vnd.oma.cab-subs-invite+xml":{"source":"iana","compressible":true},"application/vnd.oma.cab-user-prefs+xml":{"source":"iana","compressible":true},"application/vnd.oma.dcd":{"source":"iana"},"application/vnd.oma.dcdc":{"source":"iana"},"application/vnd.oma.dd2+xml":{"source":"iana","compressible":true,"extensions":["dd2"]},"application/vnd.oma.drm.risd+xml":{"source":"iana","compressible":true},"application/vnd.oma.group-usage-list+xml":{"source":"iana","compressible":true},"application/vnd.oma.lwm2m+cbor":{"source":"iana"},"application/vnd.oma.lwm2m+json":{"source":"iana","compressible":true},"application/vnd.oma.lwm2m+tlv":{"source":"iana"},"application/vnd.oma.pal+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.detailed-progress-report+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.final-report+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.groups+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.invocation-descriptor+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.optimized-progress-report+xml":{"source":"iana","compressible":true},"application/vnd.oma.push":{"source":"iana"},"application/vnd.oma.scidm.messages+xml":{"source":"iana","compressible":true},"application/vnd.oma.xcap-directory+xml":{"source":"iana","compressible":true},"application/vnd.omads-email+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.omads-file+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.omads-folder+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.omaloc-supl-init":{"source":"iana"},"application/vnd.onepager":{"source":"iana"},"application/vnd.onepagertamp":{"source":"iana"},"application/vnd.onepagertamx":{"source":"iana"},"application/vnd.onepagertat":{"source":"iana"},"application/vnd.onepagertatp":{"source":"iana"},"application/vnd.onepagertatx":{"source":"iana"},"application/vnd.openblox.game+xml":{"source":"iana","compressible":true,"extensions":["obgx"]},"application/vnd.openblox.game-binary":{"source":"iana"},"application/vnd.openeye.oeb":{"source":"iana"},"application/vnd.openofficeorg.extension":{"source":"apache","extensions":["oxt"]},"application/vnd.openstreetmap.data+xml":{"source":"iana","compressible":true,"extensions":["osm"]},"application/vnd.opentimestamps.ots":{"source":"iana"},"application/vnd.openxmlformats-officedocument.custom-properties+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.customxmlproperties+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawing+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.chart+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.diagramcolors+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.diagramdata+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.diagramlayout+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.diagramstyle+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.extended-properties+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.commentauthors+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.comments+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.handoutmaster+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.notesmaster+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.notesslide+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.presentation":{"source":"iana","compressible":false,"extensions":["pptx"]},"application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.presprops+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slide":{"source":"iana","extensions":["sldx"]},"application/vnd.openxmlformats-officedocument.presentationml.slide+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slidelayout+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slidemaster+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slideshow":{"source":"iana","extensions":["ppsx"]},"application/vnd.openxmlformats-officedocument.presentationml.slideshow.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slideupdateinfo+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.tablestyles+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.tags+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.template":{"source":"iana","extensions":["potx"]},"application/vnd.openxmlformats-officedocument.presentationml.template.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.viewprops+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.calcchain+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.externallink+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcachedefinition+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcacherecords+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivottable+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.querytable+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionheaders+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionlog+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedstrings+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":{"source":"iana","compressible":false,"extensions":["xlsx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheetmetadata+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.tablesinglecells+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.template":{"source":"iana","extensions":["xltx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.usernames+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.volatiledependencies+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.theme+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.themeoverride+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.vmldrawing":{"source":"iana"},"application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.document":{"source":"iana","compressible":false,"extensions":["docx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.glossary+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.fonttable+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.template":{"source":"iana","extensions":["dotx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.template.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.websettings+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-package.core-properties+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-package.digital-signature-xmlsignature+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-package.relationships+xml":{"source":"iana","compressible":true},"application/vnd.oracle.resource+json":{"source":"iana","compressible":true},"application/vnd.orange.indata":{"source":"iana"},"application/vnd.osa.netdeploy":{"source":"iana"},"application/vnd.osgeo.mapguide.package":{"source":"iana","extensions":["mgp"]},"application/vnd.osgi.bundle":{"source":"iana"},"application/vnd.osgi.dp":{"source":"iana","extensions":["dp"]},"application/vnd.osgi.subsystem":{"source":"iana","extensions":["esa"]},"application/vnd.otps.ct-kip+xml":{"source":"iana","compressible":true},"application/vnd.oxli.countgraph":{"source":"iana"},"application/vnd.pagerduty+json":{"source":"iana","compressible":true},"application/vnd.palm":{"source":"iana","extensions":["pdb","pqa","oprc"]},"application/vnd.panoply":{"source":"iana"},"application/vnd.paos.xml":{"source":"iana"},"application/vnd.patentdive":{"source":"iana"},"application/vnd.patientecommsdoc":{"source":"iana"},"application/vnd.pawaafile":{"source":"iana","extensions":["paw"]},"application/vnd.pcos":{"source":"iana"},"application/vnd.pg.format":{"source":"iana","extensions":["str"]},"application/vnd.pg.osasli":{"source":"iana","extensions":["ei6"]},"application/vnd.piaccess.application-licence":{"source":"iana"},"application/vnd.picsel":{"source":"iana","extensions":["efif"]},"application/vnd.pmi.widget":{"source":"iana","extensions":["wg"]},"application/vnd.poc.group-advertisement+xml":{"source":"iana","compressible":true},"application/vnd.pocketlearn":{"source":"iana","extensions":["plf"]},"application/vnd.powerbuilder6":{"source":"iana","extensions":["pbd"]},"application/vnd.powerbuilder6-s":{"source":"iana"},"application/vnd.powerbuilder7":{"source":"iana"},"application/vnd.powerbuilder7-s":{"source":"iana"},"application/vnd.powerbuilder75":{"source":"iana"},"application/vnd.powerbuilder75-s":{"source":"iana"},"application/vnd.preminet":{"source":"iana"},"application/vnd.previewsystems.box":{"source":"iana","extensions":["box"]},"application/vnd.proteus.magazine":{"source":"iana","extensions":["mgz"]},"application/vnd.psfs":{"source":"iana"},"application/vnd.publishare-delta-tree":{"source":"iana","extensions":["qps"]},"application/vnd.pvi.ptid1":{"source":"iana","extensions":["ptid"]},"application/vnd.pwg-multiplexed":{"source":"iana"},"application/vnd.pwg-xhtml-print+xml":{"source":"iana","compressible":true},"application/vnd.qualcomm.brew-app-res":{"source":"iana"},"application/vnd.quarantainenet":{"source":"iana"},"application/vnd.quark.quarkxpress":{"source":"iana","extensions":["qxd","qxt","qwd","qwt","qxl","qxb"]},"application/vnd.quobject-quoxdocument":{"source":"iana"},"application/vnd.radisys.moml+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit-conf+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit-conn+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit-dialog+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit-stream+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-conf+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-base+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-fax-detect+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-fax-sendrecv+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-group+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-speech+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-transform+xml":{"source":"iana","compressible":true},"application/vnd.rainstor.data":{"source":"iana"},"application/vnd.rapid":{"source":"iana"},"application/vnd.rar":{"source":"iana","extensions":["rar"]},"application/vnd.realvnc.bed":{"source":"iana","extensions":["bed"]},"application/vnd.recordare.musicxml":{"source":"iana","extensions":["mxl"]},"application/vnd.recordare.musicxml+xml":{"source":"iana","compressible":true,"extensions":["musicxml"]},"application/vnd.renlearn.rlprint":{"source":"iana"},"application/vnd.resilient.logic":{"source":"iana"},"application/vnd.restful+json":{"source":"iana","compressible":true},"application/vnd.rig.cryptonote":{"source":"iana","extensions":["cryptonote"]},"application/vnd.rim.cod":{"source":"apache","extensions":["cod"]},"application/vnd.rn-realmedia":{"source":"apache","extensions":["rm"]},"application/vnd.rn-realmedia-vbr":{"source":"apache","extensions":["rmvb"]},"application/vnd.route66.link66+xml":{"source":"iana","compressible":true,"extensions":["link66"]},"application/vnd.rs-274x":{"source":"iana"},"application/vnd.ruckus.download":{"source":"iana"},"application/vnd.s3sms":{"source":"iana"},"application/vnd.sailingtracker.track":{"source":"iana","extensions":["st"]},"application/vnd.sar":{"source":"iana"},"application/vnd.sbm.cid":{"source":"iana"},"application/vnd.sbm.mid2":{"source":"iana"},"application/vnd.scribus":{"source":"iana"},"application/vnd.sealed.3df":{"source":"iana"},"application/vnd.sealed.csf":{"source":"iana"},"application/vnd.sealed.doc":{"source":"iana"},"application/vnd.sealed.eml":{"source":"iana"},"application/vnd.sealed.mht":{"source":"iana"},"application/vnd.sealed.net":{"source":"iana"},"application/vnd.sealed.ppt":{"source":"iana"},"application/vnd.sealed.tiff":{"source":"iana"},"application/vnd.sealed.xls":{"source":"iana"},"application/vnd.sealedmedia.softseal.html":{"source":"iana"},"application/vnd.sealedmedia.softseal.pdf":{"source":"iana"},"application/vnd.seemail":{"source":"iana","extensions":["see"]},"application/vnd.seis+json":{"source":"iana","compressible":true},"application/vnd.sema":{"source":"iana","extensions":["sema"]},"application/vnd.semd":{"source":"iana","extensions":["semd"]},"application/vnd.semf":{"source":"iana","extensions":["semf"]},"application/vnd.shade-save-file":{"source":"iana"},"application/vnd.shana.informed.formdata":{"source":"iana","extensions":["ifm"]},"application/vnd.shana.informed.formtemplate":{"source":"iana","extensions":["itp"]},"application/vnd.shana.informed.interchange":{"source":"iana","extensions":["iif"]},"application/vnd.shana.informed.package":{"source":"iana","extensions":["ipk"]},"application/vnd.shootproof+json":{"source":"iana","compressible":true},"application/vnd.shopkick+json":{"source":"iana","compressible":true},"application/vnd.shp":{"source":"iana"},"application/vnd.shx":{"source":"iana"},"application/vnd.sigrok.session":{"source":"iana"},"application/vnd.simtech-mindmapper":{"source":"iana","extensions":["twd","twds"]},"application/vnd.siren+json":{"source":"iana","compressible":true},"application/vnd.smaf":{"source":"iana","extensions":["mmf"]},"application/vnd.smart.notebook":{"source":"iana"},"application/vnd.smart.teacher":{"source":"iana","extensions":["teacher"]},"application/vnd.snesdev-page-table":{"source":"iana"},"application/vnd.software602.filler.form+xml":{"source":"iana","compressible":true,"extensions":["fo"]},"application/vnd.software602.filler.form-xml-zip":{"source":"iana"},"application/vnd.solent.sdkm+xml":{"source":"iana","compressible":true,"extensions":["sdkm","sdkd"]},"application/vnd.spotfire.dxp":{"source":"iana","extensions":["dxp"]},"application/vnd.spotfire.sfs":{"source":"iana","extensions":["sfs"]},"application/vnd.sqlite3":{"source":"iana"},"application/vnd.sss-cod":{"source":"iana"},"application/vnd.sss-dtf":{"source":"iana"},"application/vnd.sss-ntf":{"source":"iana"},"application/vnd.stardivision.calc":{"source":"apache","extensions":["sdc"]},"application/vnd.stardivision.draw":{"source":"apache","extensions":["sda"]},"application/vnd.stardivision.impress":{"source":"apache","extensions":["sdd"]},"application/vnd.stardivision.math":{"source":"apache","extensions":["smf"]},"application/vnd.stardivision.writer":{"source":"apache","extensions":["sdw","vor"]},"application/vnd.stardivision.writer-global":{"source":"apache","extensions":["sgl"]},"application/vnd.stepmania.package":{"source":"iana","extensions":["smzip"]},"application/vnd.stepmania.stepchart":{"source":"iana","extensions":["sm"]},"application/vnd.street-stream":{"source":"iana"},"application/vnd.sun.wadl+xml":{"source":"iana","compressible":true,"extensions":["wadl"]},"application/vnd.sun.xml.calc":{"source":"apache","extensions":["sxc"]},"application/vnd.sun.xml.calc.template":{"source":"apache","extensions":["stc"]},"application/vnd.sun.xml.draw":{"source":"apache","extensions":["sxd"]},"application/vnd.sun.xml.draw.template":{"source":"apache","extensions":["std"]},"application/vnd.sun.xml.impress":{"source":"apache","extensions":["sxi"]},"application/vnd.sun.xml.impress.template":{"source":"apache","extensions":["sti"]},"application/vnd.sun.xml.math":{"source":"apache","extensions":["sxm"]},"application/vnd.sun.xml.writer":{"source":"apache","extensions":["sxw"]},"application/vnd.sun.xml.writer.global":{"source":"apache","extensions":["sxg"]},"application/vnd.sun.xml.writer.template":{"source":"apache","extensions":["stw"]},"application/vnd.sus-calendar":{"source":"iana","extensions":["sus","susp"]},"application/vnd.svd":{"source":"iana","extensions":["svd"]},"application/vnd.swiftview-ics":{"source":"iana"},"application/vnd.sycle+xml":{"source":"iana","compressible":true},"application/vnd.syft+json":{"source":"iana","compressible":true},"application/vnd.symbian.install":{"source":"apache","extensions":["sis","sisx"]},"application/vnd.syncml+xml":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["xsm"]},"application/vnd.syncml.dm+wbxml":{"source":"iana","charset":"UTF-8","extensions":["bdm"]},"application/vnd.syncml.dm+xml":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["xdm"]},"application/vnd.syncml.dm.notification":{"source":"iana"},"application/vnd.syncml.dmddf+wbxml":{"source":"iana"},"application/vnd.syncml.dmddf+xml":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["ddf"]},"application/vnd.syncml.dmtnds+wbxml":{"source":"iana"},"application/vnd.syncml.dmtnds+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.syncml.ds.notification":{"source":"iana"},"application/vnd.tableschema+json":{"source":"iana","compressible":true},"application/vnd.tao.intent-module-archive":{"source":"iana","extensions":["tao"]},"application/vnd.tcpdump.pcap":{"source":"iana","extensions":["pcap","cap","dmp"]},"application/vnd.think-cell.ppttc+json":{"source":"iana","compressible":true},"application/vnd.tmd.mediaflex.api+xml":{"source":"iana","compressible":true},"application/vnd.tml":{"source":"iana"},"application/vnd.tmobile-livetv":{"source":"iana","extensions":["tmo"]},"application/vnd.tri.onesource":{"source":"iana"},"application/vnd.trid.tpt":{"source":"iana","extensions":["tpt"]},"application/vnd.triscape.mxs":{"source":"iana","extensions":["mxs"]},"application/vnd.trueapp":{"source":"iana","extensions":["tra"]},"application/vnd.truedoc":{"source":"iana"},"application/vnd.ubisoft.webplayer":{"source":"iana"},"application/vnd.ufdl":{"source":"iana","extensions":["ufd","ufdl"]},"application/vnd.uiq.theme":{"source":"iana","extensions":["utz"]},"application/vnd.umajin":{"source":"iana","extensions":["umj"]},"application/vnd.unity":{"source":"iana","extensions":["unityweb"]},"application/vnd.uoml+xml":{"source":"iana","compressible":true,"extensions":["uoml"]},"application/vnd.uplanet.alert":{"source":"iana"},"application/vnd.uplanet.alert-wbxml":{"source":"iana"},"application/vnd.uplanet.bearer-choice":{"source":"iana"},"application/vnd.uplanet.bearer-choice-wbxml":{"source":"iana"},"application/vnd.uplanet.cacheop":{"source":"iana"},"application/vnd.uplanet.cacheop-wbxml":{"source":"iana"},"application/vnd.uplanet.channel":{"source":"iana"},"application/vnd.uplanet.channel-wbxml":{"source":"iana"},"application/vnd.uplanet.list":{"source":"iana"},"application/vnd.uplanet.list-wbxml":{"source":"iana"},"application/vnd.uplanet.listcmd":{"source":"iana"},"application/vnd.uplanet.listcmd-wbxml":{"source":"iana"},"application/vnd.uplanet.signal":{"source":"iana"},"application/vnd.uri-map":{"source":"iana"},"application/vnd.valve.source.material":{"source":"iana"},"application/vnd.vcx":{"source":"iana","extensions":["vcx"]},"application/vnd.vd-study":{"source":"iana"},"application/vnd.vectorworks":{"source":"iana"},"application/vnd.vel+json":{"source":"iana","compressible":true},"application/vnd.verimatrix.vcas":{"source":"iana"},"application/vnd.veritone.aion+json":{"source":"iana","compressible":true},"application/vnd.veryant.thin":{"source":"iana"},"application/vnd.ves.encrypted":{"source":"iana"},"application/vnd.vidsoft.vidconference":{"source":"iana"},"application/vnd.visio":{"source":"iana","extensions":["vsd","vst","vss","vsw"]},"application/vnd.visionary":{"source":"iana","extensions":["vis"]},"application/vnd.vividence.scriptfile":{"source":"iana"},"application/vnd.vsf":{"source":"iana","extensions":["vsf"]},"application/vnd.wap.sic":{"source":"iana"},"application/vnd.wap.slc":{"source":"iana"},"application/vnd.wap.wbxml":{"source":"iana","charset":"UTF-8","extensions":["wbxml"]},"application/vnd.wap.wmlc":{"source":"iana","extensions":["wmlc"]},"application/vnd.wap.wmlscriptc":{"source":"iana","extensions":["wmlsc"]},"application/vnd.webturbo":{"source":"iana","extensions":["wtb"]},"application/vnd.wfa.dpp":{"source":"iana"},"application/vnd.wfa.p2p":{"source":"iana"},"application/vnd.wfa.wsc":{"source":"iana"},"application/vnd.windows.devicepairing":{"source":"iana"},"application/vnd.wmc":{"source":"iana"},"application/vnd.wmf.bootstrap":{"source":"iana"},"application/vnd.wolfram.mathematica":{"source":"iana"},"application/vnd.wolfram.mathematica.package":{"source":"iana"},"application/vnd.wolfram.player":{"source":"iana","extensions":["nbp"]},"application/vnd.wordperfect":{"source":"iana","extensions":["wpd"]},"application/vnd.wqd":{"source":"iana","extensions":["wqd"]},"application/vnd.wrq-hp3000-labelled":{"source":"iana"},"application/vnd.wt.stf":{"source":"iana","extensions":["stf"]},"application/vnd.wv.csp+wbxml":{"source":"iana"},"application/vnd.wv.csp+xml":{"source":"iana","compressible":true},"application/vnd.wv.ssp+xml":{"source":"iana","compressible":true},"application/vnd.xacml+json":{"source":"iana","compressible":true},"application/vnd.xara":{"source":"iana","extensions":["xar"]},"application/vnd.xfdl":{"source":"iana","extensions":["xfdl"]},"application/vnd.xfdl.webform":{"source":"iana"},"application/vnd.xmi+xml":{"source":"iana","compressible":true},"application/vnd.xmpie.cpkg":{"source":"iana"},"application/vnd.xmpie.dpkg":{"source":"iana"},"application/vnd.xmpie.plan":{"source":"iana"},"application/vnd.xmpie.ppkg":{"source":"iana"},"application/vnd.xmpie.xlim":{"source":"iana"},"application/vnd.yamaha.hv-dic":{"source":"iana","extensions":["hvd"]},"application/vnd.yamaha.hv-script":{"source":"iana","extensions":["hvs"]},"application/vnd.yamaha.hv-voice":{"source":"iana","extensions":["hvp"]},"application/vnd.yamaha.openscoreformat":{"source":"iana","extensions":["osf"]},"application/vnd.yamaha.openscoreformat.osfpvg+xml":{"source":"iana","compressible":true,"extensions":["osfpvg"]},"application/vnd.yamaha.remote-setup":{"source":"iana"},"application/vnd.yamaha.smaf-audio":{"source":"iana","extensions":["saf"]},"application/vnd.yamaha.smaf-phrase":{"source":"iana","extensions":["spf"]},"application/vnd.yamaha.through-ngn":{"source":"iana"},"application/vnd.yamaha.tunnel-udpencap":{"source":"iana"},"application/vnd.yaoweme":{"source":"iana"},"application/vnd.yellowriver-custom-menu":{"source":"iana","extensions":["cmp"]},"application/vnd.youtube.yt":{"source":"iana"},"application/vnd.zul":{"source":"iana","extensions":["zir","zirz"]},"application/vnd.zzazz.deck+xml":{"source":"iana","compressible":true,"extensions":["zaz"]},"application/voicexml+xml":{"source":"iana","compressible":true,"extensions":["vxml"]},"application/voucher-cms+json":{"source":"iana","compressible":true},"application/vq-rtcpxr":{"source":"iana"},"application/wasm":{"source":"iana","compressible":true,"extensions":["wasm"]},"application/watcherinfo+xml":{"source":"iana","compressible":true,"extensions":["wif"]},"application/webpush-options+json":{"source":"iana","compressible":true},"application/whoispp-query":{"source":"iana"},"application/whoispp-response":{"source":"iana"},"application/widget":{"source":"iana","extensions":["wgt"]},"application/winhlp":{"source":"apache","extensions":["hlp"]},"application/wita":{"source":"iana"},"application/wordperfect5.1":{"source":"iana"},"application/wsdl+xml":{"source":"iana","compressible":true,"extensions":["wsdl"]},"application/wspolicy+xml":{"source":"iana","compressible":true,"extensions":["wspolicy"]},"application/x-7z-compressed":{"source":"apache","compressible":false,"extensions":["7z"]},"application/x-abiword":{"source":"apache","extensions":["abw"]},"application/x-ace-compressed":{"source":"apache","extensions":["ace"]},"application/x-amf":{"source":"apache"},"application/x-apple-diskimage":{"source":"apache","extensions":["dmg"]},"application/x-arj":{"compressible":false,"extensions":["arj"]},"application/x-authorware-bin":{"source":"apache","extensions":["aab","x32","u32","vox"]},"application/x-authorware-map":{"source":"apache","extensions":["aam"]},"application/x-authorware-seg":{"source":"apache","extensions":["aas"]},"application/x-bcpio":{"source":"apache","extensions":["bcpio"]},"application/x-bdoc":{"compressible":false,"extensions":["bdoc"]},"application/x-bittorrent":{"source":"apache","extensions":["torrent"]},"application/x-blorb":{"source":"apache","extensions":["blb","blorb"]},"application/x-bzip":{"source":"apache","compressible":false,"extensions":["bz"]},"application/x-bzip2":{"source":"apache","compressible":false,"extensions":["bz2","boz"]},"application/x-cbr":{"source":"apache","extensions":["cbr","cba","cbt","cbz","cb7"]},"application/x-cdlink":{"source":"apache","extensions":["vcd"]},"application/x-cfs-compressed":{"source":"apache","extensions":["cfs"]},"application/x-chat":{"source":"apache","extensions":["chat"]},"application/x-chess-pgn":{"source":"apache","extensions":["pgn"]},"application/x-chrome-extension":{"extensions":["crx"]},"application/x-cocoa":{"source":"nginx","extensions":["cco"]},"application/x-compress":{"source":"apache"},"application/x-conference":{"source":"apache","extensions":["nsc"]},"application/x-cpio":{"source":"apache","extensions":["cpio"]},"application/x-csh":{"source":"apache","extensions":["csh"]},"application/x-deb":{"compressible":false},"application/x-debian-package":{"source":"apache","extensions":["deb","udeb"]},"application/x-dgc-compressed":{"source":"apache","extensions":["dgc"]},"application/x-director":{"source":"apache","extensions":["dir","dcr","dxr","cst","cct","cxt","w3d","fgd","swa"]},"application/x-doom":{"source":"apache","extensions":["wad"]},"application/x-dtbncx+xml":{"source":"apache","compressible":true,"extensions":["ncx"]},"application/x-dtbook+xml":{"source":"apache","compressible":true,"extensions":["dtb"]},"application/x-dtbresource+xml":{"source":"apache","compressible":true,"extensions":["res"]},"application/x-dvi":{"source":"apache","compressible":false,"extensions":["dvi"]},"application/x-envoy":{"source":"apache","extensions":["evy"]},"application/x-eva":{"source":"apache","extensions":["eva"]},"application/x-font-bdf":{"source":"apache","extensions":["bdf"]},"application/x-font-dos":{"source":"apache"},"application/x-font-framemaker":{"source":"apache"},"application/x-font-ghostscript":{"source":"apache","extensions":["gsf"]},"application/x-font-libgrx":{"source":"apache"},"application/x-font-linux-psf":{"source":"apache","extensions":["psf"]},"application/x-font-pcf":{"source":"apache","extensions":["pcf"]},"application/x-font-snf":{"source":"apache","extensions":["snf"]},"application/x-font-speedo":{"source":"apache"},"application/x-font-sunos-news":{"source":"apache"},"application/x-font-type1":{"source":"apache","extensions":["pfa","pfb","pfm","afm"]},"application/x-font-vfont":{"source":"apache"},"application/x-freearc":{"source":"apache","extensions":["arc"]},"application/x-futuresplash":{"source":"apache","extensions":["spl"]},"application/x-gca-compressed":{"source":"apache","extensions":["gca"]},"application/x-glulx":{"source":"apache","extensions":["ulx"]},"application/x-gnumeric":{"source":"apache","extensions":["gnumeric"]},"application/x-gramps-xml":{"source":"apache","extensions":["gramps"]},"application/x-gtar":{"source":"apache","extensions":["gtar"]},"application/x-gzip":{"source":"apache"},"application/x-hdf":{"source":"apache","extensions":["hdf"]},"application/x-httpd-php":{"compressible":true,"extensions":["php"]},"application/x-install-instructions":{"source":"apache","extensions":["install"]},"application/x-iso9660-image":{"source":"apache","extensions":["iso"]},"application/x-iwork-keynote-sffkey":{"extensions":["key"]},"application/x-iwork-numbers-sffnumbers":{"extensions":["numbers"]},"application/x-iwork-pages-sffpages":{"extensions":["pages"]},"application/x-java-archive-diff":{"source":"nginx","extensions":["jardiff"]},"application/x-java-jnlp-file":{"source":"apache","compressible":false,"extensions":["jnlp"]},"application/x-javascript":{"compressible":true},"application/x-keepass2":{"extensions":["kdbx"]},"application/x-latex":{"source":"apache","compressible":false,"extensions":["latex"]},"application/x-lua-bytecode":{"extensions":["luac"]},"application/x-lzh-compressed":{"source":"apache","extensions":["lzh","lha"]},"application/x-makeself":{"source":"nginx","extensions":["run"]},"application/x-mie":{"source":"apache","extensions":["mie"]},"application/x-mobipocket-ebook":{"source":"apache","extensions":["prc","mobi"]},"application/x-mpegurl":{"compressible":false},"application/x-ms-application":{"source":"apache","extensions":["application"]},"application/x-ms-shortcut":{"source":"apache","extensions":["lnk"]},"application/x-ms-wmd":{"source":"apache","extensions":["wmd"]},"application/x-ms-wmz":{"source":"apache","extensions":["wmz"]},"application/x-ms-xbap":{"source":"apache","extensions":["xbap"]},"application/x-msaccess":{"source":"apache","extensions":["mdb"]},"application/x-msbinder":{"source":"apache","extensions":["obd"]},"application/x-mscardfile":{"source":"apache","extensions":["crd"]},"application/x-msclip":{"source":"apache","extensions":["clp"]},"application/x-msdos-program":{"extensions":["exe"]},"application/x-msdownload":{"source":"apache","extensions":["exe","dll","com","bat","msi"]},"application/x-msmediaview":{"source":"apache","extensions":["mvb","m13","m14"]},"application/x-msmetafile":{"source":"apache","extensions":["wmf","wmz","emf","emz"]},"application/x-msmoney":{"source":"apache","extensions":["mny"]},"application/x-mspublisher":{"source":"apache","extensions":["pub"]},"application/x-msschedule":{"source":"apache","extensions":["scd"]},"application/x-msterminal":{"source":"apache","extensions":["trm"]},"application/x-mswrite":{"source":"apache","extensions":["wri"]},"application/x-netcdf":{"source":"apache","extensions":["nc","cdf"]},"application/x-ns-proxy-autoconfig":{"compressible":true,"extensions":["pac"]},"application/x-nzb":{"source":"apache","extensions":["nzb"]},"application/x-perl":{"source":"nginx","extensions":["pl","pm"]},"application/x-pilot":{"source":"nginx","extensions":["prc","pdb"]},"application/x-pkcs12":{"source":"apache","compressible":false,"extensions":["p12","pfx"]},"application/x-pkcs7-certificates":{"source":"apache","extensions":["p7b","spc"]},"application/x-pkcs7-certreqresp":{"source":"apache","extensions":["p7r"]},"application/x-pki-message":{"source":"iana"},"application/x-rar-compressed":{"source":"apache","compressible":false,"extensions":["rar"]},"application/x-redhat-package-manager":{"source":"nginx","extensions":["rpm"]},"application/x-research-info-systems":{"source":"apache","extensions":["ris"]},"application/x-sea":{"source":"nginx","extensions":["sea"]},"application/x-sh":{"source":"apache","compressible":true,"extensions":["sh"]},"application/x-shar":{"source":"apache","extensions":["shar"]},"application/x-shockwave-flash":{"source":"apache","compressible":false,"extensions":["swf"]},"application/x-silverlight-app":{"source":"apache","extensions":["xap"]},"application/x-sql":{"source":"apache","extensions":["sql"]},"application/x-stuffit":{"source":"apache","compressible":false,"extensions":["sit"]},"application/x-stuffitx":{"source":"apache","extensions":["sitx"]},"application/x-subrip":{"source":"apache","extensions":["srt"]},"application/x-sv4cpio":{"source":"apache","extensions":["sv4cpio"]},"application/x-sv4crc":{"source":"apache","extensions":["sv4crc"]},"application/x-t3vm-image":{"source":"apache","extensions":["t3"]},"application/x-tads":{"source":"apache","extensions":["gam"]},"application/x-tar":{"source":"apache","compressible":true,"extensions":["tar"]},"application/x-tcl":{"source":"apache","extensions":["tcl","tk"]},"application/x-tex":{"source":"apache","extensions":["tex"]},"application/x-tex-tfm":{"source":"apache","extensions":["tfm"]},"application/x-texinfo":{"source":"apache","extensions":["texinfo","texi"]},"application/x-tgif":{"source":"apache","extensions":["obj"]},"application/x-ustar":{"source":"apache","extensions":["ustar"]},"application/x-virtualbox-hdd":{"compressible":true,"extensions":["hdd"]},"application/x-virtualbox-ova":{"compressible":true,"extensions":["ova"]},"application/x-virtualbox-ovf":{"compressible":true,"extensions":["ovf"]},"application/x-virtualbox-vbox":{"compressible":true,"extensions":["vbox"]},"application/x-virtualbox-vbox-extpack":{"compressible":false,"extensions":["vbox-extpack"]},"application/x-virtualbox-vdi":{"compressible":true,"extensions":["vdi"]},"application/x-virtualbox-vhd":{"compressible":true,"extensions":["vhd"]},"application/x-virtualbox-vmdk":{"compressible":true,"extensions":["vmdk"]},"application/x-wais-source":{"source":"apache","extensions":["src"]},"application/x-web-app-manifest+json":{"compressible":true,"extensions":["webapp"]},"application/x-www-form-urlencoded":{"source":"iana","compressible":true},"application/x-x509-ca-cert":{"source":"iana","extensions":["der","crt","pem"]},"application/x-x509-ca-ra-cert":{"source":"iana"},"application/x-x509-next-ca-cert":{"source":"iana"},"application/x-xfig":{"source":"apache","extensions":["fig"]},"application/x-xliff+xml":{"source":"apache","compressible":true,"extensions":["xlf"]},"application/x-xpinstall":{"source":"apache","compressible":false,"extensions":["xpi"]},"application/x-xz":{"source":"apache","extensions":["xz"]},"application/x-zmachine":{"source":"apache","extensions":["z1","z2","z3","z4","z5","z6","z7","z8"]},"application/x400-bp":{"source":"iana"},"application/xacml+xml":{"source":"iana","compressible":true},"application/xaml+xml":{"source":"apache","compressible":true,"extensions":["xaml"]},"application/xcap-att+xml":{"source":"iana","compressible":true,"extensions":["xav"]},"application/xcap-caps+xml":{"source":"iana","compressible":true,"extensions":["xca"]},"application/xcap-diff+xml":{"source":"iana","compressible":true,"extensions":["xdf"]},"application/xcap-el+xml":{"source":"iana","compressible":true,"extensions":["xel"]},"application/xcap-error+xml":{"source":"iana","compressible":true},"application/xcap-ns+xml":{"source":"iana","compressible":true,"extensions":["xns"]},"application/xcon-conference-info+xml":{"source":"iana","compressible":true},"application/xcon-conference-info-diff+xml":{"source":"iana","compressible":true},"application/xenc+xml":{"source":"iana","compressible":true,"extensions":["xenc"]},"application/xhtml+xml":{"source":"iana","compressible":true,"extensions":["xhtml","xht"]},"application/xhtml-voice+xml":{"source":"apache","compressible":true},"application/xliff+xml":{"source":"iana","compressible":true,"extensions":["xlf"]},"application/xml":{"source":"iana","compressible":true,"extensions":["xml","xsl","xsd","rng"]},"application/xml-dtd":{"source":"iana","compressible":true,"extensions":["dtd"]},"application/xml-external-parsed-entity":{"source":"iana"},"application/xml-patch+xml":{"source":"iana","compressible":true},"application/xmpp+xml":{"source":"iana","compressible":true},"application/xop+xml":{"source":"iana","compressible":true,"extensions":["xop"]},"application/xproc+xml":{"source":"apache","compressible":true,"extensions":["xpl"]},"application/xslt+xml":{"source":"iana","compressible":true,"extensions":["xsl","xslt"]},"application/xspf+xml":{"source":"apache","compressible":true,"extensions":["xspf"]},"application/xv+xml":{"source":"iana","compressible":true,"extensions":["mxml","xhvml","xvml","xvm"]},"application/yang":{"source":"iana","extensions":["yang"]},"application/yang-data+json":{"source":"iana","compressible":true},"application/yang-data+xml":{"source":"iana","compressible":true},"application/yang-patch+json":{"source":"iana","compressible":true},"application/yang-patch+xml":{"source":"iana","compressible":true},"application/yin+xml":{"source":"iana","compressible":true,"extensions":["yin"]},"application/zip":{"source":"iana","compressible":false,"extensions":["zip"]},"application/zlib":{"source":"iana"},"application/zstd":{"source":"iana"},"audio/1d-interleaved-parityfec":{"source":"iana"},"audio/32kadpcm":{"source":"iana"},"audio/3gpp":{"source":"iana","compressible":false,"extensions":["3gpp"]},"audio/3gpp2":{"source":"iana"},"audio/aac":{"source":"iana"},"audio/ac3":{"source":"iana"},"audio/adpcm":{"source":"apache","extensions":["adp"]},"audio/amr":{"source":"iana","extensions":["amr"]},"audio/amr-wb":{"source":"iana"},"audio/amr-wb+":{"source":"iana"},"audio/aptx":{"source":"iana"},"audio/asc":{"source":"iana"},"audio/atrac-advanced-lossless":{"source":"iana"},"audio/atrac-x":{"source":"iana"},"audio/atrac3":{"source":"iana"},"audio/basic":{"source":"iana","compressible":false,"extensions":["au","snd"]},"audio/bv16":{"source":"iana"},"audio/bv32":{"source":"iana"},"audio/clearmode":{"source":"iana"},"audio/cn":{"source":"iana"},"audio/dat12":{"source":"iana"},"audio/dls":{"source":"iana"},"audio/dsr-es201108":{"source":"iana"},"audio/dsr-es202050":{"source":"iana"},"audio/dsr-es202211":{"source":"iana"},"audio/dsr-es202212":{"source":"iana"},"audio/dv":{"source":"iana"},"audio/dvi4":{"source":"iana"},"audio/eac3":{"source":"iana"},"audio/encaprtp":{"source":"iana"},"audio/evrc":{"source":"iana"},"audio/evrc-qcp":{"source":"iana"},"audio/evrc0":{"source":"iana"},"audio/evrc1":{"source":"iana"},"audio/evrcb":{"source":"iana"},"audio/evrcb0":{"source":"iana"},"audio/evrcb1":{"source":"iana"},"audio/evrcnw":{"source":"iana"},"audio/evrcnw0":{"source":"iana"},"audio/evrcnw1":{"source":"iana"},"audio/evrcwb":{"source":"iana"},"audio/evrcwb0":{"source":"iana"},"audio/evrcwb1":{"source":"iana"},"audio/evs":{"source":"iana"},"audio/flexfec":{"source":"iana"},"audio/fwdred":{"source":"iana"},"audio/g711-0":{"source":"iana"},"audio/g719":{"source":"iana"},"audio/g722":{"source":"iana"},"audio/g7221":{"source":"iana"},"audio/g723":{"source":"iana"},"audio/g726-16":{"source":"iana"},"audio/g726-24":{"source":"iana"},"audio/g726-32":{"source":"iana"},"audio/g726-40":{"source":"iana"},"audio/g728":{"source":"iana"},"audio/g729":{"source":"iana"},"audio/g7291":{"source":"iana"},"audio/g729d":{"source":"iana"},"audio/g729e":{"source":"iana"},"audio/gsm":{"source":"iana"},"audio/gsm-efr":{"source":"iana"},"audio/gsm-hr-08":{"source":"iana"},"audio/ilbc":{"source":"iana"},"audio/ip-mr_v2.5":{"source":"iana"},"audio/isac":{"source":"apache"},"audio/l16":{"source":"iana"},"audio/l20":{"source":"iana"},"audio/l24":{"source":"iana","compressible":false},"audio/l8":{"source":"iana"},"audio/lpc":{"source":"iana"},"audio/melp":{"source":"iana"},"audio/melp1200":{"source":"iana"},"audio/melp2400":{"source":"iana"},"audio/melp600":{"source":"iana"},"audio/mhas":{"source":"iana"},"audio/midi":{"source":"apache","extensions":["mid","midi","kar","rmi"]},"audio/mobile-xmf":{"source":"iana","extensions":["mxmf"]},"audio/mp3":{"compressible":false,"extensions":["mp3"]},"audio/mp4":{"source":"iana","compressible":false,"extensions":["m4a","mp4a"]},"audio/mp4a-latm":{"source":"iana"},"audio/mpa":{"source":"iana"},"audio/mpa-robust":{"source":"iana"},"audio/mpeg":{"source":"iana","compressible":false,"extensions":["mpga","mp2","mp2a","mp3","m2a","m3a"]},"audio/mpeg4-generic":{"source":"iana"},"audio/musepack":{"source":"apache"},"audio/ogg":{"source":"iana","compressible":false,"extensions":["oga","ogg","spx","opus"]},"audio/opus":{"source":"iana"},"audio/parityfec":{"source":"iana"},"audio/pcma":{"source":"iana"},"audio/pcma-wb":{"source":"iana"},"audio/pcmu":{"source":"iana"},"audio/pcmu-wb":{"source":"iana"},"audio/prs.sid":{"source":"iana"},"audio/qcelp":{"source":"iana"},"audio/raptorfec":{"source":"iana"},"audio/red":{"source":"iana"},"audio/rtp-enc-aescm128":{"source":"iana"},"audio/rtp-midi":{"source":"iana"},"audio/rtploopback":{"source":"iana"},"audio/rtx":{"source":"iana"},"audio/s3m":{"source":"apache","extensions":["s3m"]},"audio/scip":{"source":"iana"},"audio/silk":{"source":"apache","extensions":["sil"]},"audio/smv":{"source":"iana"},"audio/smv-qcp":{"source":"iana"},"audio/smv0":{"source":"iana"},"audio/sofa":{"source":"iana"},"audio/sp-midi":{"source":"iana"},"audio/speex":{"source":"iana"},"audio/t140c":{"source":"iana"},"audio/t38":{"source":"iana"},"audio/telephone-event":{"source":"iana"},"audio/tetra_acelp":{"source":"iana"},"audio/tetra_acelp_bb":{"source":"iana"},"audio/tone":{"source":"iana"},"audio/tsvcis":{"source":"iana"},"audio/uemclip":{"source":"iana"},"audio/ulpfec":{"source":"iana"},"audio/usac":{"source":"iana"},"audio/vdvi":{"source":"iana"},"audio/vmr-wb":{"source":"iana"},"audio/vnd.3gpp.iufp":{"source":"iana"},"audio/vnd.4sb":{"source":"iana"},"audio/vnd.audiokoz":{"source":"iana"},"audio/vnd.celp":{"source":"iana"},"audio/vnd.cisco.nse":{"source":"iana"},"audio/vnd.cmles.radio-events":{"source":"iana"},"audio/vnd.cns.anp1":{"source":"iana"},"audio/vnd.cns.inf1":{"source":"iana"},"audio/vnd.dece.audio":{"source":"iana","extensions":["uva","uvva"]},"audio/vnd.digital-winds":{"source":"iana","extensions":["eol"]},"audio/vnd.dlna.adts":{"source":"iana"},"audio/vnd.dolby.heaac.1":{"source":"iana"},"audio/vnd.dolby.heaac.2":{"source":"iana"},"audio/vnd.dolby.mlp":{"source":"iana"},"audio/vnd.dolby.mps":{"source":"iana"},"audio/vnd.dolby.pl2":{"source":"iana"},"audio/vnd.dolby.pl2x":{"source":"iana"},"audio/vnd.dolby.pl2z":{"source":"iana"},"audio/vnd.dolby.pulse.1":{"source":"iana"},"audio/vnd.dra":{"source":"iana","extensions":["dra"]},"audio/vnd.dts":{"source":"iana","extensions":["dts"]},"audio/vnd.dts.hd":{"source":"iana","extensions":["dtshd"]},"audio/vnd.dts.uhd":{"source":"iana"},"audio/vnd.dvb.file":{"source":"iana"},"audio/vnd.everad.plj":{"source":"iana"},"audio/vnd.hns.audio":{"source":"iana"},"audio/vnd.lucent.voice":{"source":"iana","extensions":["lvp"]},"audio/vnd.ms-playready.media.pya":{"source":"iana","extensions":["pya"]},"audio/vnd.nokia.mobile-xmf":{"source":"iana"},"audio/vnd.nortel.vbk":{"source":"iana"},"audio/vnd.nuera.ecelp4800":{"source":"iana","extensions":["ecelp4800"]},"audio/vnd.nuera.ecelp7470":{"source":"iana","extensions":["ecelp7470"]},"audio/vnd.nuera.ecelp9600":{"source":"iana","extensions":["ecelp9600"]},"audio/vnd.octel.sbc":{"source":"iana"},"audio/vnd.presonus.multitrack":{"source":"iana"},"audio/vnd.qcelp":{"source":"iana"},"audio/vnd.rhetorex.32kadpcm":{"source":"iana"},"audio/vnd.rip":{"source":"iana","extensions":["rip"]},"audio/vnd.rn-realaudio":{"compressible":false},"audio/vnd.sealedmedia.softseal.mpeg":{"source":"iana"},"audio/vnd.vmx.cvsd":{"source":"iana"},"audio/vnd.wave":{"compressible":false},"audio/vorbis":{"source":"iana","compressible":false},"audio/vorbis-config":{"source":"iana"},"audio/wav":{"compressible":false,"extensions":["wav"]},"audio/wave":{"compressible":false,"extensions":["wav"]},"audio/webm":{"source":"apache","compressible":false,"extensions":["weba"]},"audio/x-aac":{"source":"apache","compressible":false,"extensions":["aac"]},"audio/x-aiff":{"source":"apache","extensions":["aif","aiff","aifc"]},"audio/x-caf":{"source":"apache","compressible":false,"extensions":["caf"]},"audio/x-flac":{"source":"apache","extensions":["flac"]},"audio/x-m4a":{"source":"nginx","extensions":["m4a"]},"audio/x-matroska":{"source":"apache","extensions":["mka"]},"audio/x-mpegurl":{"source":"apache","extensions":["m3u"]},"audio/x-ms-wax":{"source":"apache","extensions":["wax"]},"audio/x-ms-wma":{"source":"apache","extensions":["wma"]},"audio/x-pn-realaudio":{"source":"apache","extensions":["ram","ra"]},"audio/x-pn-realaudio-plugin":{"source":"apache","extensions":["rmp"]},"audio/x-realaudio":{"source":"nginx","extensions":["ra"]},"audio/x-tta":{"source":"apache"},"audio/x-wav":{"source":"apache","extensions":["wav"]},"audio/xm":{"source":"apache","extensions":["xm"]},"chemical/x-cdx":{"source":"apache","extensions":["cdx"]},"chemical/x-cif":{"source":"apache","extensions":["cif"]},"chemical/x-cmdf":{"source":"apache","extensions":["cmdf"]},"chemical/x-cml":{"source":"apache","extensions":["cml"]},"chemical/x-csml":{"source":"apache","extensions":["csml"]},"chemical/x-pdb":{"source":"apache"},"chemical/x-xyz":{"source":"apache","extensions":["xyz"]},"font/collection":{"source":"iana","extensions":["ttc"]},"font/otf":{"source":"iana","compressible":true,"extensions":["otf"]},"font/sfnt":{"source":"iana"},"font/ttf":{"source":"iana","compressible":true,"extensions":["ttf"]},"font/woff":{"source":"iana","extensions":["woff"]},"font/woff2":{"source":"iana","extensions":["woff2"]},"image/aces":{"source":"iana","extensions":["exr"]},"image/apng":{"compressible":false,"extensions":["apng"]},"image/avci":{"source":"iana","extensions":["avci"]},"image/avcs":{"source":"iana","extensions":["avcs"]},"image/avif":{"source":"iana","compressible":false,"extensions":["avif"]},"image/bmp":{"source":"iana","compressible":true,"extensions":["bmp"]},"image/cgm":{"source":"iana","extensions":["cgm"]},"image/dicom-rle":{"source":"iana","extensions":["drle"]},"image/emf":{"source":"iana","extensions":["emf"]},"image/fits":{"source":"iana","extensions":["fits"]},"image/g3fax":{"source":"iana","extensions":["g3"]},"image/gif":{"source":"iana","compressible":false,"extensions":["gif"]},"image/heic":{"source":"iana","extensions":["heic"]},"image/heic-sequence":{"source":"iana","extensions":["heics"]},"image/heif":{"source":"iana","extensions":["heif"]},"image/heif-sequence":{"source":"iana","extensions":["heifs"]},"image/hej2k":{"source":"iana","extensions":["hej2"]},"image/hsj2":{"source":"iana","extensions":["hsj2"]},"image/ief":{"source":"iana","extensions":["ief"]},"image/jls":{"source":"iana","extensions":["jls"]},"image/jp2":{"source":"iana","compressible":false,"extensions":["jp2","jpg2"]},"image/jpeg":{"source":"iana","compressible":false,"extensions":["jpeg","jpg","jpe"]},"image/jph":{"source":"iana","extensions":["jph"]},"image/jphc":{"source":"iana","extensions":["jhc"]},"image/jpm":{"source":"iana","compressible":false,"extensions":["jpm"]},"image/jpx":{"source":"iana","compressible":false,"extensions":["jpx","jpf"]},"image/jxr":{"source":"iana","extensions":["jxr"]},"image/jxra":{"source":"iana","extensions":["jxra"]},"image/jxrs":{"source":"iana","extensions":["jxrs"]},"image/jxs":{"source":"iana","extensions":["jxs"]},"image/jxsc":{"source":"iana","extensions":["jxsc"]},"image/jxsi":{"source":"iana","extensions":["jxsi"]},"image/jxss":{"source":"iana","extensions":["jxss"]},"image/ktx":{"source":"iana","extensions":["ktx"]},"image/ktx2":{"source":"iana","extensions":["ktx2"]},"image/naplps":{"source":"iana"},"image/pjpeg":{"compressible":false},"image/png":{"source":"iana","compressible":false,"extensions":["png"]},"image/prs.btif":{"source":"iana","extensions":["btif"]},"image/prs.pti":{"source":"iana","extensions":["pti"]},"image/pwg-raster":{"source":"iana"},"image/sgi":{"source":"apache","extensions":["sgi"]},"image/svg+xml":{"source":"iana","compressible":true,"extensions":["svg","svgz"]},"image/t38":{"source":"iana","extensions":["t38"]},"image/tiff":{"source":"iana","compressible":false,"extensions":["tif","tiff"]},"image/tiff-fx":{"source":"iana","extensions":["tfx"]},"image/vnd.adobe.photoshop":{"source":"iana","compressible":true,"extensions":["psd"]},"image/vnd.airzip.accelerator.azv":{"source":"iana","extensions":["azv"]},"image/vnd.cns.inf2":{"source":"iana"},"image/vnd.dece.graphic":{"source":"iana","extensions":["uvi","uvvi","uvg","uvvg"]},"image/vnd.djvu":{"source":"iana","extensions":["djvu","djv"]},"image/vnd.dvb.subtitle":{"source":"iana","extensions":["sub"]},"image/vnd.dwg":{"source":"iana","extensions":["dwg"]},"image/vnd.dxf":{"source":"iana","extensions":["dxf"]},"image/vnd.fastbidsheet":{"source":"iana","extensions":["fbs"]},"image/vnd.fpx":{"source":"iana","extensions":["fpx"]},"image/vnd.fst":{"source":"iana","extensions":["fst"]},"image/vnd.fujixerox.edmics-mmr":{"source":"iana","extensions":["mmr"]},"image/vnd.fujixerox.edmics-rlc":{"source":"iana","extensions":["rlc"]},"image/vnd.globalgraphics.pgb":{"source":"iana"},"image/vnd.microsoft.icon":{"source":"iana","compressible":true,"extensions":["ico"]},"image/vnd.mix":{"source":"iana"},"image/vnd.mozilla.apng":{"source":"iana"},"image/vnd.ms-dds":{"compressible":true,"extensions":["dds"]},"image/vnd.ms-modi":{"source":"iana","extensions":["mdi"]},"image/vnd.ms-photo":{"source":"apache","extensions":["wdp"]},"image/vnd.net-fpx":{"source":"iana","extensions":["npx"]},"image/vnd.pco.b16":{"source":"iana","extensions":["b16"]},"image/vnd.radiance":{"source":"iana"},"image/vnd.sealed.png":{"source":"iana"},"image/vnd.sealedmedia.softseal.gif":{"source":"iana"},"image/vnd.sealedmedia.softseal.jpg":{"source":"iana"},"image/vnd.svf":{"source":"iana"},"image/vnd.tencent.tap":{"source":"iana","extensions":["tap"]},"image/vnd.valve.source.texture":{"source":"iana","extensions":["vtf"]},"image/vnd.wap.wbmp":{"source":"iana","extensions":["wbmp"]},"image/vnd.xiff":{"source":"iana","extensions":["xif"]},"image/vnd.zbrush.pcx":{"source":"iana","extensions":["pcx"]},"image/webp":{"source":"apache","extensions":["webp"]},"image/wmf":{"source":"iana","extensions":["wmf"]},"image/x-3ds":{"source":"apache","extensions":["3ds"]},"image/x-cmu-raster":{"source":"apache","extensions":["ras"]},"image/x-cmx":{"source":"apache","extensions":["cmx"]},"image/x-freehand":{"source":"apache","extensions":["fh","fhc","fh4","fh5","fh7"]},"image/x-icon":{"source":"apache","compressible":true,"extensions":["ico"]},"image/x-jng":{"source":"nginx","extensions":["jng"]},"image/x-mrsid-image":{"source":"apache","extensions":["sid"]},"image/x-ms-bmp":{"source":"nginx","compressible":true,"extensions":["bmp"]},"image/x-pcx":{"source":"apache","extensions":["pcx"]},"image/x-pict":{"source":"apache","extensions":["pic","pct"]},"image/x-portable-anymap":{"source":"apache","extensions":["pnm"]},"image/x-portable-bitmap":{"source":"apache","extensions":["pbm"]},"image/x-portable-graymap":{"source":"apache","extensions":["pgm"]},"image/x-portable-pixmap":{"source":"apache","extensions":["ppm"]},"image/x-rgb":{"source":"apache","extensions":["rgb"]},"image/x-tga":{"source":"apache","extensions":["tga"]},"image/x-xbitmap":{"source":"apache","extensions":["xbm"]},"image/x-xcf":{"compressible":false},"image/x-xpixmap":{"source":"apache","extensions":["xpm"]},"image/x-xwindowdump":{"source":"apache","extensions":["xwd"]},"message/cpim":{"source":"iana"},"message/delivery-status":{"source":"iana"},"message/disposition-notification":{"source":"iana","extensions":["disposition-notification"]},"message/external-body":{"source":"iana"},"message/feedback-report":{"source":"iana"},"message/global":{"source":"iana","extensions":["u8msg"]},"message/global-delivery-status":{"source":"iana","extensions":["u8dsn"]},"message/global-disposition-notification":{"source":"iana","extensions":["u8mdn"]},"message/global-headers":{"source":"iana","extensions":["u8hdr"]},"message/http":{"source":"iana","compressible":false},"message/imdn+xml":{"source":"iana","compressible":true},"message/news":{"source":"iana"},"message/partial":{"source":"iana","compressible":false},"message/rfc822":{"source":"iana","compressible":true,"extensions":["eml","mime"]},"message/s-http":{"source":"iana"},"message/sip":{"source":"iana"},"message/sipfrag":{"source":"iana"},"message/tracking-status":{"source":"iana"},"message/vnd.si.simp":{"source":"iana"},"message/vnd.wfa.wsc":{"source":"iana","extensions":["wsc"]},"model/3mf":{"source":"iana","extensions":["3mf"]},"model/e57":{"source":"iana"},"model/gltf+json":{"source":"iana","compressible":true,"extensions":["gltf"]},"model/gltf-binary":{"source":"iana","compressible":true,"extensions":["glb"]},"model/iges":{"source":"iana","compressible":false,"extensions":["igs","iges"]},"model/mesh":{"source":"iana","compressible":false,"extensions":["msh","mesh","silo"]},"model/mtl":{"source":"iana","extensions":["mtl"]},"model/obj":{"source":"iana","extensions":["obj"]},"model/step":{"source":"iana"},"model/step+xml":{"source":"iana","compressible":true,"extensions":["stpx"]},"model/step+zip":{"source":"iana","compressible":false,"extensions":["stpz"]},"model/step-xml+zip":{"source":"iana","compressible":false,"extensions":["stpxz"]},"model/stl":{"source":"iana","extensions":["stl"]},"model/vnd.collada+xml":{"source":"iana","compressible":true,"extensions":["dae"]},"model/vnd.dwf":{"source":"iana","extensions":["dwf"]},"model/vnd.flatland.3dml":{"source":"iana"},"model/vnd.gdl":{"source":"iana","extensions":["gdl"]},"model/vnd.gs-gdl":{"source":"apache"},"model/vnd.gs.gdl":{"source":"iana"},"model/vnd.gtw":{"source":"iana","extensions":["gtw"]},"model/vnd.moml+xml":{"source":"iana","compressible":true},"model/vnd.mts":{"source":"iana","extensions":["mts"]},"model/vnd.opengex":{"source":"iana","extensions":["ogex"]},"model/vnd.parasolid.transmit.binary":{"source":"iana","extensions":["x_b"]},"model/vnd.parasolid.transmit.text":{"source":"iana","extensions":["x_t"]},"model/vnd.pytha.pyox":{"source":"iana"},"model/vnd.rosette.annotated-data-model":{"source":"iana"},"model/vnd.sap.vds":{"source":"iana","extensions":["vds"]},"model/vnd.usdz+zip":{"source":"iana","compressible":false,"extensions":["usdz"]},"model/vnd.valve.source.compiled-map":{"source":"iana","extensions":["bsp"]},"model/vnd.vtu":{"source":"iana","extensions":["vtu"]},"model/vrml":{"source":"iana","compressible":false,"extensions":["wrl","vrml"]},"model/x3d+binary":{"source":"apache","compressible":false,"extensions":["x3db","x3dbz"]},"model/x3d+fastinfoset":{"source":"iana","extensions":["x3db"]},"model/x3d+vrml":{"source":"apache","compressible":false,"extensions":["x3dv","x3dvz"]},"model/x3d+xml":{"source":"iana","compressible":true,"extensions":["x3d","x3dz"]},"model/x3d-vrml":{"source":"iana","extensions":["x3dv"]},"multipart/alternative":{"source":"iana","compressible":false},"multipart/appledouble":{"source":"iana"},"multipart/byteranges":{"source":"iana"},"multipart/digest":{"source":"iana"},"multipart/encrypted":{"source":"iana","compressible":false},"multipart/form-data":{"source":"iana","compressible":false},"multipart/header-set":{"source":"iana"},"multipart/mixed":{"source":"iana"},"multipart/multilingual":{"source":"iana"},"multipart/parallel":{"source":"iana"},"multipart/related":{"source":"iana","compressible":false},"multipart/report":{"source":"iana"},"multipart/signed":{"source":"iana","compressible":false},"multipart/vnd.bint.med-plus":{"source":"iana"},"multipart/voice-message":{"source":"iana"},"multipart/x-mixed-replace":{"source":"iana"},"text/1d-interleaved-parityfec":{"source":"iana"},"text/cache-manifest":{"source":"iana","compressible":true,"extensions":["appcache","manifest"]},"text/calendar":{"source":"iana","extensions":["ics","ifb"]},"text/calender":{"compressible":true},"text/cmd":{"compressible":true},"text/coffeescript":{"extensions":["coffee","litcoffee"]},"text/cql":{"source":"iana"},"text/cql-expression":{"source":"iana"},"text/cql-identifier":{"source":"iana"},"text/css":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["css"]},"text/csv":{"source":"iana","compressible":true,"extensions":["csv"]},"text/csv-schema":{"source":"iana"},"text/directory":{"source":"iana"},"text/dns":{"source":"iana"},"text/ecmascript":{"source":"iana"},"text/encaprtp":{"source":"iana"},"text/enriched":{"source":"iana"},"text/fhirpath":{"source":"iana"},"text/flexfec":{"source":"iana"},"text/fwdred":{"source":"iana"},"text/gff3":{"source":"iana"},"text/grammar-ref-list":{"source":"iana"},"text/html":{"source":"iana","compressible":true,"extensions":["html","htm","shtml"]},"text/jade":{"extensions":["jade"]},"text/javascript":{"source":"iana","compressible":true},"text/jcr-cnd":{"source":"iana"},"text/jsx":{"compressible":true,"extensions":["jsx"]},"text/less":{"compressible":true,"extensions":["less"]},"text/markdown":{"source":"iana","compressible":true,"extensions":["markdown","md"]},"text/mathml":{"source":"nginx","extensions":["mml"]},"text/mdx":{"compressible":true,"extensions":["mdx"]},"text/mizar":{"source":"iana"},"text/n3":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["n3"]},"text/parameters":{"source":"iana","charset":"UTF-8"},"text/parityfec":{"source":"iana"},"text/plain":{"source":"iana","compressible":true,"extensions":["txt","text","conf","def","list","log","in","ini"]},"text/provenance-notation":{"source":"iana","charset":"UTF-8"},"text/prs.fallenstein.rst":{"source":"iana"},"text/prs.lines.tag":{"source":"iana","extensions":["dsc"]},"text/prs.prop.logic":{"source":"iana"},"text/raptorfec":{"source":"iana"},"text/red":{"source":"iana"},"text/rfc822-headers":{"source":"iana"},"text/richtext":{"source":"iana","compressible":true,"extensions":["rtx"]},"text/rtf":{"source":"iana","compressible":true,"extensions":["rtf"]},"text/rtp-enc-aescm128":{"source":"iana"},"text/rtploopback":{"source":"iana"},"text/rtx":{"source":"iana"},"text/sgml":{"source":"iana","extensions":["sgml","sgm"]},"text/shaclc":{"source":"iana"},"text/shex":{"source":"iana","extensions":["shex"]},"text/slim":{"extensions":["slim","slm"]},"text/spdx":{"source":"iana","extensions":["spdx"]},"text/strings":{"source":"iana"},"text/stylus":{"extensions":["stylus","styl"]},"text/t140":{"source":"iana"},"text/tab-separated-values":{"source":"iana","compressible":true,"extensions":["tsv"]},"text/troff":{"source":"iana","extensions":["t","tr","roff","man","me","ms"]},"text/turtle":{"source":"iana","charset":"UTF-8","extensions":["ttl"]},"text/ulpfec":{"source":"iana"},"text/uri-list":{"source":"iana","compressible":true,"extensions":["uri","uris","urls"]},"text/vcard":{"source":"iana","compressible":true,"extensions":["vcard"]},"text/vnd.a":{"source":"iana"},"text/vnd.abc":{"source":"iana"},"text/vnd.ascii-art":{"source":"iana"},"text/vnd.curl":{"source":"iana","extensions":["curl"]},"text/vnd.curl.dcurl":{"source":"apache","extensions":["dcurl"]},"text/vnd.curl.mcurl":{"source":"apache","extensions":["mcurl"]},"text/vnd.curl.scurl":{"source":"apache","extensions":["scurl"]},"text/vnd.debian.copyright":{"source":"iana","charset":"UTF-8"},"text/vnd.dmclientscript":{"source":"iana"},"text/vnd.dvb.subtitle":{"source":"iana","extensions":["sub"]},"text/vnd.esmertec.theme-descriptor":{"source":"iana","charset":"UTF-8"},"text/vnd.familysearch.gedcom":{"source":"iana","extensions":["ged"]},"text/vnd.ficlab.flt":{"source":"iana"},"text/vnd.fly":{"source":"iana","extensions":["fly"]},"text/vnd.fmi.flexstor":{"source":"iana","extensions":["flx"]},"text/vnd.gml":{"source":"iana"},"text/vnd.graphviz":{"source":"iana","extensions":["gv"]},"text/vnd.hans":{"source":"iana"},"text/vnd.hgl":{"source":"iana"},"text/vnd.in3d.3dml":{"source":"iana","extensions":["3dml"]},"text/vnd.in3d.spot":{"source":"iana","extensions":["spot"]},"text/vnd.iptc.newsml":{"source":"iana"},"text/vnd.iptc.nitf":{"source":"iana"},"text/vnd.latex-z":{"source":"iana"},"text/vnd.motorola.reflex":{"source":"iana"},"text/vnd.ms-mediapackage":{"source":"iana"},"text/vnd.net2phone.commcenter.command":{"source":"iana"},"text/vnd.radisys.msml-basic-layout":{"source":"iana"},"text/vnd.senx.warpscript":{"source":"iana"},"text/vnd.si.uricatalogue":{"source":"iana"},"text/vnd.sosi":{"source":"iana"},"text/vnd.sun.j2me.app-descriptor":{"source":"iana","charset":"UTF-8","extensions":["jad"]},"text/vnd.trolltech.linguist":{"source":"iana","charset":"UTF-8"},"text/vnd.wap.si":{"source":"iana"},"text/vnd.wap.sl":{"source":"iana"},"text/vnd.wap.wml":{"source":"iana","extensions":["wml"]},"text/vnd.wap.wmlscript":{"source":"iana","extensions":["wmls"]},"text/vtt":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["vtt"]},"text/x-asm":{"source":"apache","extensions":["s","asm"]},"text/x-c":{"source":"apache","extensions":["c","cc","cxx","cpp","h","hh","dic"]},"text/x-component":{"source":"nginx","extensions":["htc"]},"text/x-fortran":{"source":"apache","extensions":["f","for","f77","f90"]},"text/x-gwt-rpc":{"compressible":true},"text/x-handlebars-template":{"extensions":["hbs"]},"text/x-java-source":{"source":"apache","extensions":["java"]},"text/x-jquery-tmpl":{"compressible":true},"text/x-lua":{"extensions":["lua"]},"text/x-markdown":{"compressible":true,"extensions":["mkd"]},"text/x-nfo":{"source":"apache","extensions":["nfo"]},"text/x-opml":{"source":"apache","extensions":["opml"]},"text/x-org":{"compressible":true,"extensions":["org"]},"text/x-pascal":{"source":"apache","extensions":["p","pas"]},"text/x-processing":{"compressible":true,"extensions":["pde"]},"text/x-sass":{"extensions":["sass"]},"text/x-scss":{"extensions":["scss"]},"text/x-setext":{"source":"apache","extensions":["etx"]},"text/x-sfv":{"source":"apache","extensions":["sfv"]},"text/x-suse-ymp":{"compressible":true,"extensions":["ymp"]},"text/x-uuencode":{"source":"apache","extensions":["uu"]},"text/x-vcalendar":{"source":"apache","extensions":["vcs"]},"text/x-vcard":{"source":"apache","extensions":["vcf"]},"text/xml":{"source":"iana","compressible":true,"extensions":["xml"]},"text/xml-external-parsed-entity":{"source":"iana"},"text/yaml":{"compressible":true,"extensions":["yaml","yml"]},"video/1d-interleaved-parityfec":{"source":"iana"},"video/3gpp":{"source":"iana","extensions":["3gp","3gpp"]},"video/3gpp-tt":{"source":"iana"},"video/3gpp2":{"source":"iana","extensions":["3g2"]},"video/av1":{"source":"iana"},"video/bmpeg":{"source":"iana"},"video/bt656":{"source":"iana"},"video/celb":{"source":"iana"},"video/dv":{"source":"iana"},"video/encaprtp":{"source":"iana"},"video/ffv1":{"source":"iana"},"video/flexfec":{"source":"iana"},"video/h261":{"source":"iana","extensions":["h261"]},"video/h263":{"source":"iana","extensions":["h263"]},"video/h263-1998":{"source":"iana"},"video/h263-2000":{"source":"iana"},"video/h264":{"source":"iana","extensions":["h264"]},"video/h264-rcdo":{"source":"iana"},"video/h264-svc":{"source":"iana"},"video/h265":{"source":"iana"},"video/iso.segment":{"source":"iana","extensions":["m4s"]},"video/jpeg":{"source":"iana","extensions":["jpgv"]},"video/jpeg2000":{"source":"iana"},"video/jpm":{"source":"apache","extensions":["jpm","jpgm"]},"video/jxsv":{"source":"iana"},"video/mj2":{"source":"iana","extensions":["mj2","mjp2"]},"video/mp1s":{"source":"iana"},"video/mp2p":{"source":"iana"},"video/mp2t":{"source":"iana","extensions":["ts"]},"video/mp4":{"source":"iana","compressible":false,"extensions":["mp4","mp4v","mpg4"]},"video/mp4v-es":{"source":"iana"},"video/mpeg":{"source":"iana","compressible":false,"extensions":["mpeg","mpg","mpe","m1v","m2v"]},"video/mpeg4-generic":{"source":"iana"},"video/mpv":{"source":"iana"},"video/nv":{"source":"iana"},"video/ogg":{"source":"iana","compressible":false,"extensions":["ogv"]},"video/parityfec":{"source":"iana"},"video/pointer":{"source":"iana"},"video/quicktime":{"source":"iana","compressible":false,"extensions":["qt","mov"]},"video/raptorfec":{"source":"iana"},"video/raw":{"source":"iana"},"video/rtp-enc-aescm128":{"source":"iana"},"video/rtploopback":{"source":"iana"},"video/rtx":{"source":"iana"},"video/scip":{"source":"iana"},"video/smpte291":{"source":"iana"},"video/smpte292m":{"source":"iana"},"video/ulpfec":{"source":"iana"},"video/vc1":{"source":"iana"},"video/vc2":{"source":"iana"},"video/vnd.cctv":{"source":"iana"},"video/vnd.dece.hd":{"source":"iana","extensions":["uvh","uvvh"]},"video/vnd.dece.mobile":{"source":"iana","extensions":["uvm","uvvm"]},"video/vnd.dece.mp4":{"source":"iana"},"video/vnd.dece.pd":{"source":"iana","extensions":["uvp","uvvp"]},"video/vnd.dece.sd":{"source":"iana","extensions":["uvs","uvvs"]},"video/vnd.dece.video":{"source":"iana","extensions":["uvv","uvvv"]},"video/vnd.directv.mpeg":{"source":"iana"},"video/vnd.directv.mpeg-tts":{"source":"iana"},"video/vnd.dlna.mpeg-tts":{"source":"iana"},"video/vnd.dvb.file":{"source":"iana","extensions":["dvb"]},"video/vnd.fvt":{"source":"iana","extensions":["fvt"]},"video/vnd.hns.video":{"source":"iana"},"video/vnd.iptvforum.1dparityfec-1010":{"source":"iana"},"video/vnd.iptvforum.1dparityfec-2005":{"source":"iana"},"video/vnd.iptvforum.2dparityfec-1010":{"source":"iana"},"video/vnd.iptvforum.2dparityfec-2005":{"source":"iana"},"video/vnd.iptvforum.ttsavc":{"source":"iana"},"video/vnd.iptvforum.ttsmpeg2":{"source":"iana"},"video/vnd.motorola.video":{"source":"iana"},"video/vnd.motorola.videop":{"source":"iana"},"video/vnd.mpegurl":{"source":"iana","extensions":["mxu","m4u"]},"video/vnd.ms-playready.media.pyv":{"source":"iana","extensions":["pyv"]},"video/vnd.nokia.interleaved-multimedia":{"source":"iana"},"video/vnd.nokia.mp4vr":{"source":"iana"},"video/vnd.nokia.videovoip":{"source":"iana"},"video/vnd.objectvideo":{"source":"iana"},"video/vnd.radgamettools.bink":{"source":"iana"},"video/vnd.radgamettools.smacker":{"source":"iana"},"video/vnd.sealed.mpeg1":{"source":"iana"},"video/vnd.sealed.mpeg4":{"source":"iana"},"video/vnd.sealed.swf":{"source":"iana"},"video/vnd.sealedmedia.softseal.mov":{"source":"iana"},"video/vnd.uvvu.mp4":{"source":"iana","extensions":["uvu","uvvu"]},"video/vnd.vivo":{"source":"iana","extensions":["viv"]},"video/vnd.youtube.yt":{"source":"iana"},"video/vp8":{"source":"iana"},"video/vp9":{"source":"iana"},"video/webm":{"source":"apache","compressible":false,"extensions":["webm"]},"video/x-f4v":{"source":"apache","extensions":["f4v"]},"video/x-fli":{"source":"apache","extensions":["fli"]},"video/x-flv":{"source":"apache","compressible":false,"extensions":["flv"]},"video/x-m4v":{"source":"apache","extensions":["m4v"]},"video/x-matroska":{"source":"apache","compressible":false,"extensions":["mkv","mk3d","mks"]},"video/x-mng":{"source":"apache","extensions":["mng"]},"video/x-ms-asf":{"source":"apache","extensions":["asf","asx"]},"video/x-ms-vob":{"source":"apache","extensions":["vob"]},"video/x-ms-wm":{"source":"apache","extensions":["wm"]},"video/x-ms-wmv":{"source":"apache","compressible":false,"extensions":["wmv"]},"video/x-ms-wmx":{"source":"apache","extensions":["wmx"]},"video/x-ms-wvx":{"source":"apache","extensions":["wvx"]},"video/x-msvideo":{"source":"apache","extensions":["avi"]},"video/x-sgi-movie":{"source":"apache","extensions":["movie"]},"video/x-smv":{"source":"apache","extensions":["smv"]},"x-conference/x-cooltalk":{"source":"apache","extensions":["ice"]},"x-shader/x-fragment":{"compressible":true},"x-shader/x-vertex":{"compressible":true}}')},83593:(a,b,c)=>{"use strict";var d;Object.defineProperty(b,"__esModule",{value:!0}),b.checkStrictMode=b.getErrorPath=b.Type=b.useFunc=b.setEvaluated=b.evaluatedPropsToName=b.mergeEvaluated=b.eachItem=b.unescapeJsonPointer=b.escapeJsonPointer=b.escapeFragment=b.unescapeFragment=b.schemaRefOrVal=b.schemaHasRulesButRef=b.schemaHasRules=b.checkUnknownRules=b.alwaysValidSchema=b.toHash=void 0;let e=c(31849),f=c(84256);function g(a,b=a.schema){let{opts:c,self:d}=a;if(!c.strictSchema||"boolean"==typeof b)return;let e=d.RULES.keywords;for(let c in b)e[c]||o(a,`unknown keyword: "${c}"`)}function h(a,b){if("boolean"==typeof a)return!a;for(let c in a)if(b[c])return!0;return!1}function i(a){return"number"==typeof a?`${a}`:a.replace(/~/g,"~0").replace(/\//g,"~1")}function j(a){return a.replace(/~1/g,"/").replace(/~0/g,"~")}function k({mergeNames:a,mergeToName:b,mergeValues:c,resultToName:d}){return(f,g,h,i)=>{let j=void 0===h?g:h instanceof e.Name?(g instanceof e.Name?a(f,g,h):b(f,g,h),h):g instanceof e.Name?(b(f,h,g),g):c(g,h);return i!==e.Name||j instanceof e.Name?j:d(f,j)}}function l(a,b){if(!0===b)return a.var("props",!0);let c=a.var("props",(0,e._)`{}`);return void 0!==b&&m(a,c,b),c}function m(a,b,c){Object.keys(c).forEach(c=>a.assign((0,e._)`${b}${(0,e.getProperty)(c)}`,!0))}b.toHash=function(a){let b={};for(let c of a)b[c]=!0;return b},b.alwaysValidSchema=function(a,b){return"boolean"==typeof b?b:0===Object.keys(b).length||(g(a,b),!h(b,a.self.RULES.all))},b.checkUnknownRules=g,b.schemaHasRules=h,b.schemaHasRulesButRef=function(a,b){if("boolean"==typeof a)return!a;for(let c in a)if("$ref"!==c&&b.all[c])return!0;return!1},b.schemaRefOrVal=function({topSchemaRef:a,schemaPath:b},c,d,f){if(!f){if("number"==typeof c||"boolean"==typeof c)return c;if("string"==typeof c)return(0,e._)`${c}`}return(0,e._)`${a}${b}${(0,e.getProperty)(d)}`},b.unescapeFragment=function(a){return j(decodeURIComponent(a))},b.escapeFragment=function(a){return encodeURIComponent(i(a))},b.escapeJsonPointer=i,b.unescapeJsonPointer=j,b.eachItem=function(a,b){if(Array.isArray(a))for(let c of a)b(c);else b(a)},b.mergeEvaluated={props:k({mergeNames:(a,b,c)=>a.if((0,e._)`${c} !== true && ${b} !== undefined`,()=>{a.if((0,e._)`${b} === true`,()=>a.assign(c,!0),()=>a.assign(c,(0,e._)`${c} || {}`).code((0,e._)`Object.assign(${c}, ${b})`))}),mergeToName:(a,b,c)=>a.if((0,e._)`${c} !== true`,()=>{!0===b?a.assign(c,!0):(a.assign(c,(0,e._)`${c} || {}`),m(a,c,b))}),mergeValues:(a,b)=>!0===a||{...a,...b},resultToName:l}),items:k({mergeNames:(a,b,c)=>a.if((0,e._)`${c} !== true && ${b} !== undefined`,()=>a.assign(c,(0,e._)`${b} === true ? true : ${c} > ${b} ? ${c} : ${b}`)),mergeToName:(a,b,c)=>a.if((0,e._)`${c} !== true`,()=>a.assign(c,!0===b||(0,e._)`${c} > ${b} ? ${c} : ${b}`)),mergeValues:(a,b)=>!0===a||Math.max(a,b),resultToName:(a,b)=>a.var("items",b)})},b.evaluatedPropsToName=l,b.setEvaluated=m;let n={};function o(a,b,c=a.opts.strictSchema){if(c){if(b=`strict mode: ${b}`,!0===c)throw Error(b);a.self.logger.warn(b)}}b.useFunc=function(a,b){return a.scopeValue("func",{ref:b,code:n[b.code]||(n[b.code]=new f._Code(b.code))})},function(a){a[a.Num=0]="Num",a[a.Str=1]="Str"}(d||(b.Type=d={})),b.getErrorPath=function(a,b,c){if(a instanceof e.Name){let f=b===d.Num;return c?f?(0,e._)`"[" + ${a} + "]"`:(0,e._)`"['" + ${a} + "']"`:f?(0,e._)`"/" + ${a}`:(0,e._)`"/" + ${a}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return c?(0,e.getProperty)(a).toString():"/"+i(a)},b.checkStrictMode=o},84001:(a,b,c)=>{"use strict";let d,e;c.d(b,{Ic:()=>h,ML:()=>j,Um:()=>q,WG:()=>p,xL:()=>r});var f=c(31169),g=c(17592);let h="warn",i={off:0,error:200,warn:300,info:400,debug:500},j=(a,b,c)=>{if(a){if((0,f.$3)(i,a))return a;c.warn(`${b} was set to ${JSON.stringify(a)}, expected one of ${JSON.stringify(Object.keys(i))}`)}};function k(){}function l(a,b,c){return!b||i[a]>i[c]?k:b[a].bind(b)}let m={error:k,warn:k,info:k,debug:k},n=new WeakMap;function o(a,b){let c=n.get(a);if(c&&c[0]===b)return c[1];let d={error:l("error",a,b),warn:l("warn",a,b),info:l("info",a,b),debug:l("debug",a,b)};return n.set(a,[b,d]),d}function p(a){let b=a.logger,c=a.logLevel??"off";return b?o(b,c):m}function q(){let a=(0,g.s)("ANTHROPIC_LOG");return e&&a===d||(d=a,e=o(console,j(a,"process.env['ANTHROPIC_LOG']",o(console,h))??h)),e}let r=a=>(a.options&&(a.options={...a.options},delete a.options.headers),a.headers&&(a.headers=Object.fromEntries((a.headers instanceof Headers?[...a.headers]:Object.entries(a.headers)).map(([a,b])=>[a,"authorization"===a.toLowerCase()||"api-key"===a.toLowerCase()||"x-api-key"===a.toLowerCase()||"cookie"===a.toLowerCase()||"set-cookie"===a.toLowerCase()?"***":b]))),"retryOfRequestLogID"in a&&(a.retryOfRequestLogID&&(a.retryOf=a.retryOfRequestLogID),delete a.retryOfRequestLogID),a)},84172:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.assignDefaults=void 0;let d=c(31849),e=c(83593);function f(a,b,c){let{gen:f,compositeRule:g,data:h,opts:i}=a;if(void 0===c)return;let j=(0,d._)`${h}${(0,d.getProperty)(b)}`;if(g)return void(0,e.checkStrictMode)(a,`default is ignored for: ${j}`);let k=(0,d._)`${j} === undefined`;"empty"===i.useDefaults&&(k=(0,d._)`${k} || ${j} === null || ${j} === ""`),f.if(k,(0,d._)`${j} = ${(0,d.stringify)(c)}`)}b.assignDefaults=function(a,b){let{properties:c,items:d}=a.schema;if("object"===b&&c)for(let b in c)f(a,b,c[b].default);else"array"===b&&Array.isArray(d)&&d.forEach((b,c)=>f(a,c,b.default))}},84256:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.regexpCode=b.getEsmExportName=b.getProperty=b.safeStringify=b.stringify=b.strConcat=b.addCodeArg=b.str=b._=b.nil=b._Code=b.Name=b.IDENTIFIER=b._CodeOrName=void 0;class c{}b._CodeOrName=c,b.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;class d extends c{constructor(a){if(super(),!b.IDENTIFIER.test(a))throw Error("CodeGen: name must be a valid identifier");this.str=a}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}}b.Name=d;class e extends c{constructor(a){super(),this._items="string"==typeof a?[a]:a}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let a=this._items[0];return""===a||'""'===a}get str(){var a;return null!=(a=this._str)?a:this._str=this._items.reduce((a,b)=>`${a}${b}`,"")}get names(){var a;return null!=(a=this._names)?a:this._names=this._items.reduce((a,b)=>(b instanceof d&&(a[b.str]=(a[b.str]||0)+1),a),{})}}function f(a,...b){let c=[a[0]],d=0;for(;d<b.length;)i(c,b[d]),c.push(a[++d]);return new e(c)}b._Code=e,b.nil=new e(""),b._=f;let g=new e("+");function h(a,...b){let c=[j(a[0])],f=0;for(;f<b.length;)c.push(g),i(c,b[f]),c.push(g,j(a[++f]));return function(a){let b=1;for(;b<a.length-1;){if(a[b]===g){var c,e;let f=(c=a[b-1],'""'===(e=a[b+1])?c:'""'===c?e:"string"==typeof c?e instanceof d||'"'!==c[c.length-1]?void 0:"string"!=typeof e?`${c.slice(0,-1)}${e}"`:'"'===e[0]?c.slice(0,-1)+e.slice(1):void 0:"string"!=typeof e||'"'!==e[0]||c instanceof d?void 0:`"${c}${e.slice(1)}`);if(void 0!==f){a.splice(b-1,3,f);continue}a[b++]="+"}b++}}(c),new e(c)}function i(a,b){var c;b instanceof e?a.push(...b._items):b instanceof d?a.push(b):a.push("number"==typeof(c=b)||"boolean"==typeof c||null===c?c:j(Array.isArray(c)?c.join(","):c))}function j(a){return JSON.stringify(a).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}b.str=h,b.addCodeArg=i,b.strConcat=function(a,b){return b.emptyStr()?a:a.emptyStr()?b:h`${a}${b}`},b.stringify=function(a){return new e(j(a))},b.safeStringify=j,b.getProperty=function(a){return"string"==typeof a&&b.IDENTIFIER.test(a)?new e(`.${a}`):f`[${a}]`},b.getEsmExportName=function(a){if("string"==typeof a&&b.IDENTIFIER.test(a))return new e(`${a}`);throw Error(`CodeGen: invalid export name: ${a}, use explicit $id name mapping`)},b.regexpCode=function(a){return new e(a.toString())}},84296:a=>{"use strict";let b=Symbol("kDone"),c=Symbol("kRun");class d{constructor(a){this[b]=()=>{this.pending--,this[c]()},this.concurrency=a||1/0,this.jobs=[],this.pending=0}add(a){this.jobs.push(a),this[c]()}[c](){if(this.pending!==this.concurrency&&this.jobs.length){let a=this.jobs.shift();this.pending++,a(this[b])}}}a.exports=d},84687:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});let d=c(53707);class e extends Error{constructor(a,b,c,e){super(e||`can't resolve reference ${c} from id ${b}`),this.missingRef=(0,d.resolveUrl)(a,b,c),this.missingSchema=(0,d.normalizeId)((0,d.getFullPath)(a,this.missingRef))}}b.default=e},84817:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.validateAdditionalItems=void 0;let d=c(31849),e=c(83593);function f(a,b){let{gen:c,schema:f,data:g,keyword:h,it:i}=a;i.items=!0;let j=c.const("len",(0,d._)`${g}.length`);if(!1===f)a.setParams({len:b.length}),a.pass((0,d._)`${j} <= ${b.length}`);else if("object"==typeof f&&!(0,e.alwaysValidSchema)(i,f)){let f=c.var("valid",(0,d._)`${j} <= ${b.length}`);c.if((0,d.not)(f),()=>{var g;return g=f,void c.forRange("i",b.length,j,b=>{a.subschema({keyword:h,dataProp:b,dataPropType:e.Type.Num},g),i.allErrors||c.if((0,d.not)(g),()=>c.break())})}),a.ok(f)}}b.validateAdditionalItems=f,b.default={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:{message:({params:{len:a}})=>(0,d.str)`must NOT have more than ${a} items`,params:({params:{len:a}})=>(0,d._)`{limit: ${a}}`},code(a){let{parentSchema:b,it:c}=a,{items:d}=b;if(!Array.isArray(d))return void(0,e.checkStrictMode)(c,'"additionalItems" is ignored when "items" is not an array of schemas');f(a,d)}}},84833:a=>{a.exports=function(a,b){var c=!Array.isArray(a),d={index:0,keyedList:c||b?Object.keys(a):null,jobs:{},results:c?{}:[],size:c?Object.keys(a).length:a.length};return b&&d.keyedList.sort(c?b:function(c,d){return b(a[c],a[d])}),d}},85868:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.DownscopedClient=b.EXPIRATION_TIME_OFFSET=b.MAX_ACCESS_BOUNDARY_RULES_COUNT=void 0;let d=c(79792),e=c(27910),f=c(49502),g=c(86243);b.MAX_ACCESS_BOUNDARY_RULES_COUNT=10,b.EXPIRATION_TIME_OFFSET=3e5;class h extends f.AuthClient{authClient;credentialAccessBoundary;cachedDownscopedAccessToken;stsCredential;constructor(a,c={accessBoundary:{accessBoundaryRules:[]}}){if(super(a instanceof f.AuthClient?{}:a),a instanceof f.AuthClient?(this.authClient=a,this.credentialAccessBoundary=c):(this.authClient=a.authClient,this.credentialAccessBoundary=a.credentialAccessBoundary),0===this.credentialAccessBoundary.accessBoundary.accessBoundaryRules.length)throw Error("At least one access boundary rule needs to be defined.");if(this.credentialAccessBoundary.accessBoundary.accessBoundaryRules.length>b.MAX_ACCESS_BOUNDARY_RULES_COUNT)throw Error(`The provided access boundary has more than ${b.MAX_ACCESS_BOUNDARY_RULES_COUNT} access boundary rules.`);for(let a of this.credentialAccessBoundary.accessBoundary.accessBoundaryRules)if(0===a.availablePermissions.length)throw Error("At least one permission should be defined in access boundary rules.");this.stsCredential=new g.StsCredentials({tokenExchangeEndpoint:`https://sts.${this.universeDomain}/v1/token`}),this.cachedDownscopedAccessToken=null}setCredentials(a){if(!a.expiry_date)throw Error("The access token expiry_date field is missing in the provided credentials.");super.setCredentials(a),this.cachedDownscopedAccessToken=a}async getAccessToken(){return(!this.cachedDownscopedAccessToken||this.isExpired(this.cachedDownscopedAccessToken))&&await this.refreshAccessTokenAsync(),{token:this.cachedDownscopedAccessToken.access_token,expirationTime:this.cachedDownscopedAccessToken.expiry_date,res:this.cachedDownscopedAccessToken.res}}async getRequestHeaders(){let a=await this.getAccessToken(),b=new Headers({authorization:`Bearer ${a.token}`});return this.addSharedMetadataHeaders(b)}request(a,b){if(!b)return this.requestAsync(a);this.requestAsync(a).then(a=>b(null,a),a=>b(a,a.response))}async requestAsync(a,b=!1){let c;try{let b=await this.getRequestHeaders();a.headers=d.Gaxios.mergeHeaders(a.headers),this.addUserProjectAndAuthHeaders(a.headers,b),c=await this.transporter.request(a)}catch(d){let c=d.response;if(c){let d=c.status,f=c.config.data instanceof e.Readable;if(!b&&(401===d||403===d)&&!f&&this.forceRefreshOnFailure)return await this.refreshAccessTokenAsync(),await this.requestAsync(a,!0)}throw d}return c}async refreshAccessTokenAsync(){let a=(await this.authClient.getAccessToken()).token,b=await this.stsCredential.exchangeToken({grantType:"urn:ietf:params:oauth:grant-type:token-exchange",requestedTokenType:"urn:ietf:params:oauth:token-type:access_token",subjectToken:a,subjectTokenType:"urn:ietf:params:oauth:token-type:access_token"},void 0,this.credentialAccessBoundary),c=this.authClient.credentials?.expiry_date||null,d=b.expires_in?new Date().getTime()+1e3*b.expires_in:c;return this.cachedDownscopedAccessToken={access_token:b.access_token,expiry_date:d,res:b.res},this.credentials={},Object.assign(this.credentials,this.cachedDownscopedAccessToken),delete this.credentials.res,this.emit("tokens",{refresh_token:null,expiry_date:this.cachedDownscopedAccessToken.expiry_date,access_token:this.cachedDownscopedAccessToken.access_token,token_type:"Bearer",id_token:null}),this.cachedDownscopedAccessToken}isExpired(a){let b=new Date().getTime();return!!a.expiry_date&&b>=a.expiry_date-this.eagerRefreshThresholdMillis}}b.DownscopedClient=h},86028:(a,b,c)=>{"use strict";c.d(b,{G:()=>d});let d={LOG_LEVEL:3,INCLUDE_TOOL_CALLS_IN_RESPONSE:!0,ENABLE_EXECUTION_TRACKER:!1}},86080:(a,b,c)=>{var d=c(79428).Buffer;a.exports=function(a){return"string"==typeof a?a:"number"==typeof a||d.isBuffer(a)?a.toString():JSON.stringify(a)}},86243:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.StsCredentials=void 0;let d=c(79792),e=c(49502),f=c(35107),g=c(45388);class h extends f.OAuthClientAuthHandler{#B;constructor(a={tokenExchangeEndpoint:""},b){("object"!=typeof a||a instanceof URL)&&(a={tokenExchangeEndpoint:a,clientAuthentication:b}),super(a),this.#B=a.tokenExchangeEndpoint}async exchangeToken(a,b,c){let i={grant_type:a.grantType,resource:a.resource,audience:a.audience,scope:a.scope?.join(" "),requested_token_type:a.requestedTokenType,subject_token:a.subjectToken,subject_token_type:a.subjectTokenType,actor_token:a.actingParty?.actorToken,actor_token_type:a.actingParty?.actorTokenType,options:c&&JSON.stringify(c)},j={...h.RETRY_CONFIG,url:this.#B.toString(),method:"POST",headers:b,data:new URLSearchParams((0,g.removeUndefinedValuesInObject)(i)),responseType:"json"};e.AuthClient.setMethodName(j,"exchangeToken"),this.applyClientAuthenticationOptions(j);try{let a=await this.transporter.request(j),b=a.data;return b.res=a,b}catch(a){if(a instanceof d.GaxiosError&&a.response)throw(0,f.getErrorFromOAuthErrorResponse)(a.response.data,a);throw a}}}b.StsCredentials=h},86709:(a,b,c)=>{"use strict";var d;c.d(b,{$W:()=>j,GT:()=>g,cV:()=>h,cr:()=>i,tm:()=>e,xI:()=>f});let e=Object.freeze({status:"aborted"});function f(a,b,c){function d(c,d){if(c._zod||Object.defineProperty(c,"_zod",{value:{def:d,constr:g,traits:new Set},enumerable:!1}),c._zod.traits.has(a))return;c._zod.traits.add(a),b(c,d);let e=g.prototype,f=Object.keys(e);for(let a=0;a<f.length;a++){let b=f[a];b in c||(c[b]=e[b].bind(c))}}let e=c?.Parent??Object;class f extends e{}function g(a){var b;let e=c?.Parent?new f:this;for(let c of(d(e,a),(b=e._zod).deferred??(b.deferred=[]),e._zod.deferred))c();return e}return Object.defineProperty(f,"name",{value:a}),Object.defineProperty(g,"init",{value:d}),Object.defineProperty(g,Symbol.hasInstance,{value:b=>!!c?.Parent&&b instanceof c.Parent||b?._zod?.traits?.has(a)}),Object.defineProperty(g,"name",{value:a}),g}Symbol("zod_brand");class g extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class h extends Error{constructor(a){super(`Encountered unidirectional transform during encode: ${a}`),this.name="ZodEncodeError"}}(d=globalThis).__zod_globalConfig??(d.__zod_globalConfig={});let i=globalThis.__zod_globalConfig;function j(a){return a&&Object.assign(i,a),i}},86724:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.MissingRefError=b.ValidationError=b.CodeGen=b.Name=b.nil=b.stringify=b.str=b._=b.KeywordCxt=b.Ajv=void 0;let d=c(81502),e=c(40766),f=c(40571),g=c(32749),h=["/properties"],i="http://json-schema.org/draft-07/schema";class j extends d.default{_addVocabularies(){super._addVocabularies(),e.default.forEach(a=>this.addVocabulary(a)),this.opts.discriminator&&this.addKeyword(f.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let a=this.opts.$data?this.$dataMetaSchema(g,h):g;this.addMetaSchema(a,i,!1),this.refs["http://json-schema.org/schema"]=i}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(i)?i:void 0)}}b.Ajv=j,a.exports=b=j,a.exports.Ajv=j,Object.defineProperty(b,"__esModule",{value:!0}),b.default=j;var k=c(31638);Object.defineProperty(b,"KeywordCxt",{enumerable:!0,get:function(){return k.KeywordCxt}});var l=c(31849);Object.defineProperty(b,"_",{enumerable:!0,get:function(){return l._}}),Object.defineProperty(b,"str",{enumerable:!0,get:function(){return l.str}}),Object.defineProperty(b,"stringify",{enumerable:!0,get:function(){return l.stringify}}),Object.defineProperty(b,"nil",{enumerable:!0,get:function(){return l.nil}}),Object.defineProperty(b,"Name",{enumerable:!0,get:function(){return l.Name}}),Object.defineProperty(b,"CodeGen",{enumerable:!0,get:function(){return l.CodeGen}});var m=c(39590);Object.defineProperty(b,"ValidationError",{enumerable:!0,get:function(){return m.default}});var n=c(84687);Object.defineProperty(b,"MissingRefError",{enumerable:!0,get:function(){return n.default}})},86914:function(a,b,c){var d,e,f,g,h,i,j;d=c(67278),c(47973),c(4177),f=(e=d.x64).Word,g=e.WordArray,i=(h=d.algo).SHA512,j=h.SHA384=i.extend({_doReset:function(){this._hash=new g.init([new f.init(0xcbbb9d5d,0xc1059ed8),new f.init(0x629a292a,0x367cd507),new f.init(0x9159015a,0x3070dd17),new f.init(0x152fecd8,0xf70e5939),new f.init(0x67332667,0xffc00b31),new f.init(0x8eb44a87,0x68581511),new f.init(0xdb0c2e0d,0x64f98fa7),new f.init(0x47b5481d,0xbefa4fa4)])},_doFinalize:function(){var a=i._doFinalize.call(this);return a.sigBytes-=16,a}}),d.SHA384=i._createHelper(j),d.HmacSHA384=i._createHmacHelper(j),a.exports=d.SHA384},87138:a=>{"use strict";a.exports=/^#!(.*)/},87362:(a,b,c)=>{"use strict";var d=c(18230),e=c(79111),f=c(82464);let g=["https://registry.modelcontextprotocol.io/?q=ai.keenable%2Fweb-search","https://registry.modelcontextprotocol.io/v0.1/servers/io.github.mario-andreschak%2Fmcp-abap-adt/versions",{url:"https://registry.modelcontextprotocol.io/v0.1/servers/io.github.microsoft%2Fplaywright-mcp/versions",env:{PLAYWRIGHT_MCP_BROWSER:"msedge"}}];function h(a){return"string"==typeof a?{url:a}:a}var i=c(89392),j=c(79861),k=c(12700);let l=(0,d.h)("backend/services/spotlight");async function m(){return(0,e.YM)(i.Z.SPOTLIGHT_SERVERS,null)}async function n(){let a=g.map(h);l.info(`Refreshing spotlight servers (${a.length} entries)`);let b=[];for(let c of a){let{url:a,env:d}=c,e=(0,j.XQ)(a);if(!e){l.warn(`Unrecognized spotlight URL format: ${a}`),b.push({url:a,env:d,error:"Unrecognized spotlight URL format"});continue}try{let c=await (0,k.Ws)(new URL(k.jD+e),15e3),f=(0,j.zz)(c);f?b.push({url:a,env:d,result:f}):(l.warn(`Spotlight URL resolved to no server: ${a}`),b.push({url:a,env:d,error:"No matching server found in the registry"}))}catch(e){let c=e instanceof Error?e.message:"Unknown error";l.warn(`Failed to resolve spotlight URL ${a}: ${c}`),b.push({url:a,env:d,error:c})}await new Promise(a=>setTimeout(a,250))}let c={updatedAt:new Date().toISOString(),entries:b},d=await m();if(d){for(let a of c.entries)if(!a.result){let b=d.entries.find(b=>b.url===a.url&&b.result);b?.result&&(a.result=b.result)}}await (0,e.VH)(i.Z.SPOTLIGHT_SERVERS,c);let f=c.entries.filter(a=>a.result).length;return l.info(`Spotlight refresh complete: ${f}/${c.entries.length} entries resolved`),c}var o=c(50010),p=c(97832);let q=(0,d.h)("backend/init");async function r(){if(await (0,e.Pv)(),(!global.__flujo_spotlight_refresh&&(global.__flujo_spotlight_refresh=n().finally(()=>{global.__flujo_spotlight_refresh=void 0})),global.__flujo_spotlight_refresh).catch(a=>q.warn("Spotlight refresh failed at startup:",a)),await (0,p.C3)())return void q.info("Encryption locked — deferring MCP/scheduler startup until unlock");await (global.__flujo_secret_services_promise||(global.__flujo_secret_services_promise=(async()=>{q.info("Initializing MCP servers"),await f.mcpService.startEnabledServers().catch(a=>{q.error("Failed to start enabled servers:",a)}),await (0,o.z)().start().catch(a=>q.error("Failed to start scheduler:",a))})()),global.__flujo_secret_services_promise)}let s=(0,d.h)("instrumentation");s.info("Server startup: initializing backend (storage + MCP servers)"),(!global.__flujo_init_promise&&(global.__flujo_init_promise=r().catch(a=>{throw global.__flujo_init_promise=void 0,a})),global.__flujo_init_promise).then(()=>s.info("Server startup: backend initialization complete")).catch(a=>s.error("Server startup: backend initialization failed",a))},87507:(a,b,c)=>{"use strict";c.d(b,{G:()=>l,c:()=>k});var d=c(98402);c(3308);var e=c(18230),f=c(79111),g=c(89392),h=c(97832),i=c(48584);let j=(0,e.h)("backend/utils/resolveGlobalVars");async function k(a){j.debug("Entering resolveGlobalVars method");let b=await (0,f.YM)(g.Z.GLOBAL_ENV_VARS,{}),c=function(a){if(!a||"object"!=typeof a)return!1;let b=Object.keys(a);if(0===b.length)return!0;let c=a[b[0]];return c&&"object"==typeof c&&"value"in c&&"metadata"in c&&"object"==typeof c.metadata&&"isSecret"in c.metadata}(b);j.debug(`Loaded ${Object.keys(b).length} global environment variables (${c?"new":"old"} format)`);let d={};if(c)for(let[a,c]of Object.entries(b))d[a]=c.value;else d={...b};let e=async a=>{let b=a.match(/\$\{global:([^}]+)\}/g);if(!b)return a;let c=a;for(let a of b){let b=a.substring(9,a.length-1);if(void 0!==d[b]){let e=d[b];if(e.startsWith("encrypted:")){j.debug(`Decrypting encrypted global variable: ${b}`);try{let a=e.substring(10),c=await (0,h.Do)(a);if(c)e=c,j.debug(`Successfully decrypted global variable: ${b}`);else{j.warn(`Failed to decrypt global variable: ${b}`);continue}}catch(a){j.error(`Error decrypting global variable: ${b}`,a);continue}}else if(e.startsWith("encrypted_failed:")){j.warn(`Skipping failed encrypted global variable: ${b}`);continue}j.debug(`Resolved global variable: ${b}`),c=c.replace(a,e)}else j.warn(`Global variable not found: ${b}`)}return c},i=async a=>{if("string"==typeof a)return await e(a);if(Array.isArray(a))return await Promise.all(a.map(a=>i(a)));if(null!==a&&"object"==typeof a){let b={};for(let[c,d]of Object.entries(a))b[c]=await i(d);return b}return a},k=await i(a);return"object"==typeof a&&null!==a&&j.debug("Resolved global variables result:",JSON.stringify(k,null,2)),j.debug("Completed global variable resolution"),k}async function l(a,b=0){if(j.debug(`Entering resolveAndDecryptApiKey method (depth: ${b})`),!a)return j.warn("Empty value provided"),null;if(b>=10)return j.warn(`Maximum resolution depth reached (10) for value: ${a}`),a;let c=a;if(c.startsWith("encrypted:")){j.debug(`Decrypting encrypted value at depth ${b}`);try{let a=c.substring(10),d=await (0,h.Do)(a);if(!d)return j.warn(`Failed to decrypt value at depth ${b}`),null;j.debug(`Successfully decrypted value at depth ${b}`),j.verbose(d),c=d}catch(a){return j.error(`Error decrypting value at depth ${b}:`,a),null}}else c.startsWith("encrypted_failed:")&&(j.warn(`Skipping failed encrypted value at depth ${b}`),c=c.substring(17));if(c.includes("${global:")){j.debug(`Resolving global variables at depth ${b}`);try{let a=await k(c);if(j.verbose(a),a!==c)return j.debug(`Value changed after resolving globals at depth ${b}, processing recursively`),l(a,b+1);c=a}catch(a){return j.error(`Error resolving global variables at depth ${b}:`,a),null}}return j.debug(`Completed resolveAndDecryptApiKey at depth ${b}`),c}(0,i.D)([k,l]),(0,d.A)(k,"40ec842092ea232b6d4aa599a380d422184da5e1ca",null),(0,d.A)(l,"602ea7ca289a8eaa1000fb321a71e292e6c766b6bb",null)},87699:function(a,b,c){var d;d=c(67278),c(70522),d.pad.Iso97971={pad:function(a,b){a.concat(d.lib.WordArray.create([0x80000000],1)),d.pad.ZeroPadding.pad(a,b)},unpad:function(a){d.pad.ZeroPadding.unpad(a),a.sigBytes--}},a.exports=d.pad.Iso97971},87836:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.TokenHandler=void 0;let d=c(73214),e=c(28627);class f{token;tokenExpiresAt;inFlightRequest;tokenOptions;constructor(a){this.tokenOptions=a}async processCredentials(){if(!this.tokenOptions.key&&!this.tokenOptions.keyFile)throw Error("No key or keyFile set.");if(!this.tokenOptions.key&&this.tokenOptions.keyFile){let a=await (0,e.getCredentials)(this.tokenOptions.keyFile);this.tokenOptions.key=a.privateKey,this.tokenOptions.email=a.clientEmail}}isTokenExpiring(){if(!this.token||!this.tokenExpiresAt)return!0;let a=new Date().getTime(),b=this.tokenOptions.eagerRefreshThresholdMillis??0;return this.tokenExpiresAt<=a+b}hasExpired(){return new Date().getTime(),!this.token||!this.tokenExpiresAt||new Date().getTime()>=this.tokenExpiresAt}async getToken(a){if(await this.processCredentials(),this.inFlightRequest&&!a)return this.inFlightRequest;if(this.token&&!this.isTokenExpiring()&&!a)return this.token;try{this.inFlightRequest=(0,d.getToken)(this.tokenOptions);let a=await this.inFlightRequest;return this.token=a,this.tokenExpiresAt=new Date().getTime()+(a.expires_in??0)*1e3,a}finally{this.inFlightRequest=void 0}}}b.TokenHandler=f},88593:function(a,b,c){"use strict";var d=this&&this.__createBinding||(Object.create?function(a,b,c,d){void 0===d&&(d=c);var e=Object.getOwnPropertyDescriptor(b,c);(!e||("get"in e?!b.__esModule:e.writable||e.configurable))&&(e={enumerable:!0,get:function(){return b[c]}}),Object.defineProperty(a,d,e)}:function(a,b,c,d){void 0===d&&(d=c),a[d]=b[c]}),e=this&&this.__exportStar||function(a,b){for(var c in a)"default"===c||Object.prototype.hasOwnProperty.call(b,c)||d(b,a,c)};Object.defineProperty(b,"__esModule",{value:!0}),b.createCrypto=function(){return h()?new f.BrowserCrypto:new g.NodeCrypto},b.hasBrowserCrypto=h;let f=c(11486),g=c(64098);function h(){return"undefined"!=typeof window&&void 0!==window.crypto&&void 0!==window.crypto.subtle}e(c(89629),b)},88634:(a,b,c)=>{"use strict";var d=c(91378),e=c(28354),f=c(33873),g=c(81630),h=c(55591),i=c(79551).parse,j=c(29021),k=c(27910).Stream,l=c(55511),m=c(88659),n=c(19814),o=c(79522),p=c(75786),q=c(2007);function r(a){return String(a).replace(/\r/g,"%0D").replace(/\n/g,"%0A").replace(/"/g,"%22")}function s(a){if(!(this instanceof s))return new s(a);for(var b in this._overheadLength=0,this._valueLength=0,this._valuesToMeasure=[],d.call(this),a=a||{})this[b]=a[b]}e.inherits(s,d),s.LINE_BREAK="\r\n",s.DEFAULT_CONTENT_TYPE="application/octet-stream",s.prototype.append=function(a,b,c){"string"==typeof(c=c||{})&&(c={filename:c});var e=d.prototype.append.bind(this);if(("number"==typeof b||null==b)&&(b=String(b)),Array.isArray(b))return void this._error(Error("Arrays are not supported."));var f=this._multiPartHeader(a,b,c),g=this._multiPartFooter();e(f),e(b),e(g),this._trackLength(f,b,c)},s.prototype._trackLength=function(a,b,c){var d=0;null!=c.knownLength?d+=Number(c.knownLength):Buffer.isBuffer(b)?d=b.length:"string"==typeof b&&(d=Buffer.byteLength(b)),this._valueLength+=d,this._overheadLength+=Buffer.byteLength(a)+s.LINE_BREAK.length,b&&(b.path||b.readable&&p(b,"httpVersion")||b instanceof k)&&(c.knownLength||this._valuesToMeasure.push(b))},s.prototype._lengthRetriever=function(a,b){p(a,"fd")?void 0!=a.end&&a.end!=1/0&&void 0!=a.start?b(null,a.end+1-(a.start?a.start:0)):j.stat(a.path,function(c,d){if(c)return void b(c);b(null,d.size-(a.start?a.start:0))}):p(a,"httpVersion")?b(null,Number(a.headers["content-length"])):p(a,"httpModule")?(a.on("response",function(c){a.pause(),b(null,Number(c.headers["content-length"]))}),a.resume()):b("Unknown stream")},s.prototype._multiPartHeader=function(a,b,c){if("string"==typeof c.header)return c.header;var d,e=this._getContentDisposition(b,c),f=this._getContentType(b,c),g="",h={"Content-Disposition":["form-data",'name="'+r(a)+'"'].concat(e||[]),"Content-Type":[].concat(f||[])};for(var i in"object"==typeof c.header&&q(h,c.header),h)if(p(h,i)){if(null==(d=h[i]))continue;Array.isArray(d)||(d=[d]),d.length&&(g+=i+": "+d.join("; ")+s.LINE_BREAK)}return"--"+this.getBoundary()+s.LINE_BREAK+g+s.LINE_BREAK},s.prototype._getContentDisposition=function(a,b){var c;if("string"==typeof b.filepath?c=f.normalize(b.filepath).replace(/\\/g,"/"):b.filename||a&&(a.name||a.path)?c=f.basename(b.filename||a&&(a.name||a.path)):a&&a.readable&&p(a,"httpVersion")&&(c=f.basename(a.client._httpMessage.path||"")),c)return'filename="'+r(c)+'"'},s.prototype._getContentType=function(a,b){var c=b.contentType;return!c&&a&&a.name&&(c=m.lookup(a.name)),!c&&a&&a.path&&(c=m.lookup(a.path)),!c&&a&&a.readable&&p(a,"httpVersion")&&(c=a.headers["content-type"]),!c&&(b.filepath||b.filename)&&(c=m.lookup(b.filepath||b.filename)),!c&&a&&"object"==typeof a&&(c=s.DEFAULT_CONTENT_TYPE),c},s.prototype._multiPartFooter=function(){return(function(a){var b=s.LINE_BREAK;0===this._streams.length&&(b+=this._lastBoundary()),a(b)}).bind(this)},s.prototype._lastBoundary=function(){return"--"+this.getBoundary()+"--"+s.LINE_BREAK},s.prototype.getHeaders=function(a){var b,c={"content-type":"multipart/form-data; boundary="+this.getBoundary()};for(b in a)p(a,b)&&(c[b.toLowerCase()]=a[b]);return c},s.prototype.setBoundary=function(a){if("string"!=typeof a)throw TypeError("FormData boundary must be a string");this._boundary=a},s.prototype.getBoundary=function(){return this._boundary||this._generateBoundary(),this._boundary},s.prototype.getBuffer=function(){for(var a=new Buffer.alloc(0),b=this.getBoundary(),c=0,d=this._streams.length;c<d;c++)"function"!=typeof this._streams[c]&&(a=Buffer.isBuffer(this._streams[c])?Buffer.concat([a,this._streams[c]]):Buffer.concat([a,Buffer.from(this._streams[c])]),("string"!=typeof this._streams[c]||this._streams[c].substring(2,b.length+2)!==b)&&(a=Buffer.concat([a,Buffer.from(s.LINE_BREAK)])));return Buffer.concat([a,Buffer.from(this._lastBoundary())])},s.prototype._generateBoundary=function(){this._boundary="--------------------------"+l.randomBytes(12).toString("hex")},s.prototype.getLengthSync=function(){var a=this._overheadLength+this._valueLength;return this._streams.length&&(a+=this._lastBoundary().length),this.hasKnownLength()||this._error(Error("Cannot calculate proper length in synchronous way.")),a},s.prototype.hasKnownLength=function(){var a=!0;return this._valuesToMeasure.length&&(a=!1),a},s.prototype.getLength=function(a){var b=this._overheadLength+this._valueLength;if(this._streams.length&&(b+=this._lastBoundary().length),!this._valuesToMeasure.length)return void process.nextTick(a.bind(this,null,b));n.parallel(this._valuesToMeasure,this._lengthRetriever,function(c,d){if(c)return void a(c);d.forEach(function(a){b+=a}),a(null,b)})},s.prototype.submit=function(a,b){var c,d,e={method:"post"};return"string"==typeof a?d=q({port:(a=i(a)).port,path:a.pathname,host:a.hostname,protocol:a.protocol},e):(d=q(a,e)).port||(d.port="https:"===d.protocol?443:80),d.headers=this.getHeaders(a.headers),c="https:"===d.protocol?h.request(d):g.request(d),this.getLength((function(a,d){if(a&&"Unknown stream"!==a)return void this._error(a);if(d&&c.setHeader("Content-Length",d),this.pipe(c),b){var e,f=function(a,d){return c.removeListener("error",f),c.removeListener("response",e),b.call(this,a,d)};e=f.bind(this,null),c.on("error",f),c.on("response",e)}}).bind(this)),c},s.prototype._error=function(a){this.error||(this.error=a,this.pause(),this.emit("error",a))},s.prototype.toString=function(){return"[object FormData]"},o(s.prototype,"FormData"),a.exports=s},88659:(a,b,c)=>{"use strict";var d=c(42696),e=c(33873).extname,f=/^\s*([^;\s]*)(?:;|\s|$)/,g=/^text\//i;function h(a){if(!a||"string"!=typeof a)return!1;var b=f.exec(a),c=b&&d[b[1].toLowerCase()];return c&&c.charset?c.charset:!!(b&&g.test(b[1]))&&"UTF-8"}b.charset=h,b.charsets={lookup:h},b.contentType=function(a){if(!a||"string"!=typeof a)return!1;var c=-1===a.indexOf("/")?b.lookup(a):a;if(!c)return!1;if(-1===c.indexOf("charset")){var d=b.charset(c);d&&(c+="; charset="+d.toLowerCase())}return c},b.extension=function(a){if(!a||"string"!=typeof a)return!1;var c=f.exec(a),d=c&&b.extensions[c[1].toLowerCase()];return!!d&&!!d.length&&d[0]},b.extensions=Object.create(null),b.lookup=function(a){if(!a||"string"!=typeof a)return!1;var c=e("x."+a).toLowerCase().substr(1);return!!c&&(b.types[c]||!1)},b.types=Object.create(null),function(a,b){var c=["nginx","apache",void 0,"iana"];Object.keys(d).forEach(function(e){var f=d[e],g=f.extensions;if(g&&g.length){a[e]=g;for(var h=0;h<g.length;h++){var i=g[h];if(b[i]){var j=c.indexOf(d[b[i]].source),k=c.indexOf(f.source);if("application/octet-stream"!==b[i]&&(j>k||j===k&&"application/"===b[i].substr(0,12)))continue}b[i]=e}}})}(b.extensions,b.types)},89392:(a,b,c)=>{"use strict";c.d(b,{Z:()=>d});var d=function(a){return a.MODELS="models",a.FLOWS="flows",a.CHAT_HISTORY="history",a.THEME="theme",a.ENCRYPTION_KEY="encryption_key",a.MCP_SERVERS="mcp_servers",a.GLOBAL_ENV_VARS="global_env_vars",a.CURRENT_CONVERSATION_ID="current_conversation_id",a.SELECTED_FLOW_ID="selected_flow_id",a.SPEECH_SETTINGS="speech_settings",a.SPOTLIGHT_SERVERS="spotlight_servers",a.PLANNED_EXECUTIONS="planned_executions",a.MCP_AUTO_INSTALL_SETTINGS="mcp_auto_install_settings",a.MCP_QUALITY_SETTINGS="mcp_quality_settings",a.RUN_RESOURCE_SETTINGS="run_resource_settings",a.KV_STORE_SETTINGS="kv_store_settings",a.PENDING_APPROVALS="pending_approvals",a}({})},89629:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.fromArrayBufferToHex=function(a){return Array.from(new Uint8Array(a)).map(a=>a.toString(16).padStart(2,"0")).join("")}},89850:(a,b,c)=>{"use strict";c.d(b,{A:()=>i});var d=c(55511);let e={randomUUID:d.randomUUID},f=new Uint8Array(256),g=f.length,h=[];for(let a=0;a<256;++a)h.push((a+256).toString(16).slice(1));let i=function(a,b,c){if(e.randomUUID&&!b&&!a)return e.randomUUID();let i=(a=a||{}).random??a.rng?.()??(g>f.length-16&&((0,d.randomFillSync)(f),g=0),f.slice(g,g+=16));if(i.length<16)throw Error("Random bytes length must be >= 16");if(i[6]=15&i[6]|64,i[8]=63&i[8]|128,b){if((c=c||0)<0||c+16>b.length)throw RangeError(`UUID byte range ${c}:${c+15} is out of buffer bounds`);for(let a=0;a<16;++a)b[c+a]=i[a];return b}return function(a,b=0){return(h[a[b+0]]+h[a[b+1]]+h[a[b+2]]+h[a[b+3]]+"-"+h[a[b+4]]+h[a[b+5]]+"-"+h[a[b+6]]+h[a[b+7]]+"-"+h[a[b+8]]+h[a[b+9]]+"-"+h[a[b+10]]+h[a[b+11]]+h[a[b+12]]+h[a[b+13]]+h[a[b+14]]+h[a[b+15]]).toLowerCase()}(i)}},90126:(a,b,c)=>{var d=c(23150);a.exports=function(a){var b=!1;return d(function(){b=!0}),function(c,e){b?a(c,e):d(function(){a(c,e)})}}},91233:(a,b,c)=>{"use strict";var d,e=c(39247),f=c(33324);try{d=[].__proto__===Array.prototype}catch(a){if(!a||"object"!=typeof a||!("code"in a)||"ERR_PROTO_ACCESS"!==a.code)throw a}var g=!!d&&f&&f(Object.prototype,"__proto__"),h=Object,i=h.getPrototypeOf;a.exports=g&&"function"==typeof g.get?e([g.get]):"function"==typeof i&&function(a){return i(null==a?a:h(a))}},91378:(a,b,c)=>{var d=c(28354),e=c(27910).Stream,f=c(14702);function g(){this.writable=!1,this.readable=!0,this.dataSize=0,this.maxDataSize=2097152,this.pauseStreams=!0,this._released=!1,this._streams=[],this._currentStream=null,this._insideLoop=!1,this._pendingNext=!1}a.exports=g,d.inherits(g,e),g.create=function(a){var b=new this;for(var c in a=a||{})b[c]=a[c];return b},g.isStreamLike=function(a){return"function"!=typeof a&&"string"!=typeof a&&"boolean"!=typeof a&&"number"!=typeof a&&!Buffer.isBuffer(a)},g.prototype.append=function(a){if(g.isStreamLike(a)){if(!(a instanceof f)){var b=f.create(a,{maxDataSize:1/0,pauseStream:this.pauseStreams});a.on("data",this._checkDataSize.bind(this)),a=b}this._handleErrors(a),this.pauseStreams&&a.pause()}return this._streams.push(a),this},g.prototype.pipe=function(a,b){return e.prototype.pipe.call(this,a,b),this.resume(),a},g.prototype._getNext=function(){if(this._currentStream=null,this._insideLoop){this._pendingNext=!0;return}this._insideLoop=!0;try{do this._pendingNext=!1,this._realGetNext();while(this._pendingNext)}finally{this._insideLoop=!1}},g.prototype._realGetNext=function(){var a=this._streams.shift();return void 0===a?void this.end():"function"!=typeof a?void this._pipeNext(a):void a((function(a){g.isStreamLike(a)&&(a.on("data",this._checkDataSize.bind(this)),this._handleErrors(a)),this._pipeNext(a)}).bind(this))},g.prototype._pipeNext=function(a){if(this._currentStream=a,g.isStreamLike(a)){a.on("end",this._getNext.bind(this)),a.pipe(this,{end:!1});return}this.write(a),this._getNext()},g.prototype._handleErrors=function(a){var b=this;a.on("error",function(a){b._emitError(a)})},g.prototype.write=function(a){this.emit("data",a)},g.prototype.pause=function(){this.pauseStreams&&(this.pauseStreams&&this._currentStream&&"function"==typeof this._currentStream.pause&&this._currentStream.pause(),this.emit("pause"))},g.prototype.resume=function(){this._released||(this._released=!0,this.writable=!0,this._getNext()),this.pauseStreams&&this._currentStream&&"function"==typeof this._currentStream.resume&&this._currentStream.resume(),this.emit("resume")},g.prototype.end=function(){this._reset(),this.emit("end")},g.prototype.destroy=function(){this._reset(),this.emit("close")},g.prototype._reset=function(){this.writable=!1,this._streams=[],this._currentStream=null},g.prototype._checkDataSize=function(){if(this._updateDataSize(),!(this.dataSize<=this.maxDataSize)){var a="DelayedStream#maxDataSize of "+this.maxDataSize+" bytes exceeded.";this._emitError(Error(a))}},g.prototype._updateDataSize=function(){this.dataSize=0;var a=this;this._streams.forEach(function(b){b.dataSize&&(a.dataSize+=b.dataSize)}),this._currentStream&&this._currentStream.dataSize&&(this.dataSize+=this._currentStream.dataSize)},g.prototype._emitError=function(a){this._reset(),this.emit("error",a)}},91480:a=>{"use strict";let b=/([()\][%!^"`<>&|;, *?])/g;a.exports.command=function(a){return a.replace(b,"^$1")},a.exports.argument=function(a,c){return a=(a=(a=`${a}`).replace(/(?=(\\+?)?)\1"/g,'$1$1\\"')).replace(/(?=(\\+?)?)\1$/,"$1$1"),a=(a=`"${a}"`).replace(b,"^$1"),c&&(a=a.replace(b,"^$1")),a}},91527:(a,b,c)=>{"use strict";c.d(b,{T:()=>d});let d=a=>"function"==typeof a},91781:(a,b,c)=>{var d=c(92878).Buffer,e=c(27910);function f(a){if(this.buffer=null,this.writable=!0,this.readable=!0,!a)return this.buffer=d.alloc(0),this;if("function"==typeof a.pipe)return this.buffer=d.alloc(0),a.pipe(this),this;if(a.length||"object"==typeof a)return this.buffer=a,this.writable=!1,process.nextTick((function(){this.emit("end",a),this.readable=!1,this.emit("close")}).bind(this)),this;throw TypeError("Unexpected data type ("+typeof a+")")}c(28354).inherits(f,e),f.prototype.write=function(a){this.buffer=d.concat([this.buffer,d.from(a)]),this.emit("data",a)},f.prototype.end=function(a){a&&this.write(a),this.emit("end",a),this.emit("close"),this.writable=!1,this.readable=!1},a.exports=f},92018:(a,b,c)=>{"use strict";c.d(b,{_:()=>d,z:()=>e});let d="flujo";function e(){return{name:d,transport:"stdio",command:"",args:[],env:{},disabled:!1,autoApprove:[],rootPath:"",_buildCommand:"",_installCommand:"",builtIn:!0,exposeAsMcpServer:!0}}},92111:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});let d=c(31638),e=c(97025),f=c(83593),g=c(68300);b.default={keyword:"properties",type:"object",schemaType:"object",code(a){let{gen:b,schema:c,parentSchema:h,data:i,it:j}=a;"all"===j.opts.removeAdditional&&void 0===h.additionalProperties&&g.default.code(new d.KeywordCxt(j,g.default,"additionalProperties"));let k=(0,e.allSchemaProperties)(c);for(let a of k)j.definedProperties.add(a);j.opts.unevaluated&&k.length&&!0!==j.props&&(j.props=f.mergeEvaluated.props(b,(0,f.toHash)(k),j.props));let l=k.filter(a=>!(0,f.alwaysValidSchema)(j,c[a]));if(0===l.length)return;let m=b.name("valid");for(let d of l){var n;(n=d,j.opts.useDefaults&&!j.compositeRule&&void 0!==c[n].default)?o(d):(b.if((0,e.propertyInData)(b,i,d,j.opts.ownProperties)),o(d),j.allErrors||b.else().var(m,!0),b.endIf()),a.it.definedProperties.add(d),a.ok(m)}function o(b){a.subschema({keyword:"properties",schemaProp:b,dataProp:b},m)}}}},92878:(a,b,c)=>{var d=c(79428),e=d.Buffer;function f(a,b){for(var c in a)b[c]=a[c]}function g(a,b,c){return e(a,b,c)}e.from&&e.alloc&&e.allocUnsafe&&e.allocUnsafeSlow?a.exports=d:(f(d,b),b.Buffer=g),g.prototype=Object.create(e.prototype),f(e,g),g.from=function(a,b,c){if("number"==typeof a)throw TypeError("Argument must not be a number");return e(a,b,c)},g.alloc=function(a,b,c){if("number"!=typeof a)throw TypeError("Argument must be a number");var d=e(a);return void 0!==b?"string"==typeof c?d.fill(b,c):d.fill(b):d.fill(0),d},g.allocUnsafe=function(a){if("number"!=typeof a)throw TypeError("Argument must be a number");return e(a)},g.allocUnsafeSlow=function(a){if("number"!=typeof a)throw TypeError("Argument must be a number");return d.SlowBuffer(a)}},93111:(a,b,c)=>{"use strict";let d,{Duplex:e}=c(27910),{randomFillSync:f}=c(55511),{types:{isUint8Array:g}}=c(28354),h=c(74240),{EMPTY_BUFFER:i,kWebSocket:j,NOOP:k}=c(32995),{isBlob:l,isValidStatusCode:m}=c(26649),{mask:n,toBuffer:o}=c(27047),p=Symbol("kByteLength"),q=Buffer.alloc(4),r=8192;class s{constructor(a,b,c){this._extensions=b||{},c&&(this._generateMask=c,this._maskBuffer=Buffer.alloc(4)),this._socket=a,this._firstFragment=!0,this._compress=!1,this._bufferedBytes=0,this._queue=[],this._state=0,this.onerror=k,this[j]=void 0}static frame(a,b){let c,e,g=!1,h=2,i=!1;b.mask&&(c=b.maskBuffer||q,b.generateMask?b.generateMask(c):(8192===r&&(void 0===d&&(d=Buffer.alloc(8192)),f(d,0,8192),r=0),c[0]=d[r++],c[1]=d[r++],c[2]=d[r++],c[3]=d[r++]),i=(c[0]|c[1]|c[2]|c[3])==0,h=6),"string"==typeof a?e=(!b.mask||i)&&void 0!==b[p]?b[p]:(a=Buffer.from(a)).length:(e=a.length,g=b.mask&&b.readOnly&&!i);let j=e;e>=65536?(h+=8,j=127):e>125&&(h+=2,j=126);let k=Buffer.allocUnsafe(g?e+h:h);return(k[0]=b.fin?128|b.opcode:b.opcode,b.rsv1&&(k[0]|=64),k[1]=j,126===j?k.writeUInt16BE(e,2):127===j&&(k[2]=k[3]=0,k.writeUIntBE(e,4,6)),b.mask)?(k[1]|=128,k[h-4]=c[0],k[h-3]=c[1],k[h-2]=c[2],k[h-1]=c[3],i)?[k,a]:g?(n(a,c,k,h,e),[k]):(n(a,c,a,0,e),[k,a]):[k,a]}close(a,b,c,d){let e;if(void 0===a)e=i;else if("number"==typeof a&&m(a))if(void 0!==b&&b.length){let c=Buffer.byteLength(b);if(c>123)throw RangeError("The message must not be greater than 123 bytes");if((e=Buffer.allocUnsafe(2+c)).writeUInt16BE(a,0),"string"==typeof b)e.write(b,2);else if(g(b))e.set(b,2);else throw TypeError("Second argument must be a string or a Uint8Array")}else(e=Buffer.allocUnsafe(2)).writeUInt16BE(a,0);else throw TypeError("First argument must be a valid error code number");let f={[p]:e.length,fin:!0,generateMask:this._generateMask,mask:c,maskBuffer:this._maskBuffer,opcode:8,readOnly:!1,rsv1:!1};0!==this._state?this.enqueue([this.dispatch,e,!1,f,d]):this.sendFrame(s.frame(e,f),d)}ping(a,b,c){let d,e;if("string"==typeof a?(d=Buffer.byteLength(a),e=!1):l(a)?(d=a.size,e=!1):(d=(a=o(a)).length,e=o.readOnly),d>125)throw RangeError("The data size must not be greater than 125 bytes");let f={[p]:d,fin:!0,generateMask:this._generateMask,mask:b,maskBuffer:this._maskBuffer,opcode:9,readOnly:e,rsv1:!1};l(a)?0!==this._state?this.enqueue([this.getBlobData,a,!1,f,c]):this.getBlobData(a,!1,f,c):0!==this._state?this.enqueue([this.dispatch,a,!1,f,c]):this.sendFrame(s.frame(a,f),c)}pong(a,b,c){let d,e;if("string"==typeof a?(d=Buffer.byteLength(a),e=!1):l(a)?(d=a.size,e=!1):(d=(a=o(a)).length,e=o.readOnly),d>125)throw RangeError("The data size must not be greater than 125 bytes");let f={[p]:d,fin:!0,generateMask:this._generateMask,mask:b,maskBuffer:this._maskBuffer,opcode:10,readOnly:e,rsv1:!1};l(a)?0!==this._state?this.enqueue([this.getBlobData,a,!1,f,c]):this.getBlobData(a,!1,f,c):0!==this._state?this.enqueue([this.dispatch,a,!1,f,c]):this.sendFrame(s.frame(a,f),c)}send(a,b,c){let d,e,f=this._extensions[h.extensionName],g=b.binary?2:1,i=b.compress;"string"==typeof a?(d=Buffer.byteLength(a),e=!1):l(a)?(d=a.size,e=!1):(d=(a=o(a)).length,e=o.readOnly),this._firstFragment?(this._firstFragment=!1,i&&f&&f.params[f._isServer?"server_no_context_takeover":"client_no_context_takeover"]&&(i=d>=f._threshold),this._compress=i):(i=!1,g=0),b.fin&&(this._firstFragment=!0);let j={[p]:d,fin:b.fin,generateMask:this._generateMask,mask:b.mask,maskBuffer:this._maskBuffer,opcode:g,readOnly:e,rsv1:i};l(a)?0!==this._state?this.enqueue([this.getBlobData,a,this._compress,j,c]):this.getBlobData(a,this._compress,j,c):0!==this._state?this.enqueue([this.dispatch,a,this._compress,j,c]):this.dispatch(a,this._compress,j,c)}getBlobData(a,b,c,d){this._bufferedBytes+=c[p],this._state=2,a.arrayBuffer().then(a=>{if(this._socket.destroyed){let a=Error("The socket was closed while the blob was being read");process.nextTick(t,this,a,d);return}this._bufferedBytes-=c[p];let e=o(a);b?this.dispatch(e,b,c,d):(this._state=0,this.sendFrame(s.frame(e,c),d),this.dequeue())}).catch(a=>{process.nextTick(u,this,a,d)})}dispatch(a,b,c,d){if(!b)return void this.sendFrame(s.frame(a,c),d);let e=this._extensions[h.extensionName];this._bufferedBytes+=c[p],this._state=1,e.compress(a,c.fin,(a,b)=>{if(this._socket.destroyed)return void t(this,Error("The socket was closed while data was being compressed"),d);this._bufferedBytes-=c[p],this._state=0,c.readOnly=!1,this.sendFrame(s.frame(b,c),d),this.dequeue()})}dequeue(){for(;0===this._state&&this._queue.length;){let a=this._queue.shift();this._bufferedBytes-=a[3][p],Reflect.apply(a[0],this,a.slice(1))}}enqueue(a){this._bufferedBytes+=a[3][p],this._queue.push(a)}sendFrame(a,b){2===a.length?(this._socket.cork(),this._socket.write(a[0]),this._socket.write(a[1],b),this._socket.uncork()):this._socket.write(a[0],b)}}function t(a,b,c){"function"==typeof c&&c(b);for(let c=0;c<a._queue.length;c++){let d=a._queue[c],e=d[d.length-1];"function"==typeof e&&e(b)}}function u(a,b,c){t(a,b,c),a.onerror(b)}a.exports=s},93209:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.ExternalAccountClient=void 0;let d=c(35294),e=c(62888),f=c(73925),g=c(27305);class h{constructor(){throw Error("ExternalAccountClients should be initialized via: ExternalAccountClient.fromJSON(), directly via explicit constructors, eg. new AwsClient(options), new IdentityPoolClient(options), newPluggableAuthClientOptions, or via new GoogleAuth(options).getClient()")}static fromJSON(a){return a&&a.type===d.EXTERNAL_ACCOUNT_TYPE?a.credential_source?.environment_id?new f.AwsClient(a):a.credential_source?.executable?new g.PluggableAuthClient(a):new e.IdentityPoolClient(a):null}}b.ExternalAccountClient=h},93704:(a,b,c)=>{"use strict";c.d(b,{Y:()=>ce});let d="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?Symbol:a=>`Symbol(${a})`;function e(){}function f(a){return"object"==typeof a&&null!==a||"function"==typeof a}function g(a,b){try{Object.defineProperty(a,"name",{value:b,configurable:!0})}catch(a){}}let h=Promise,i=Promise.prototype.then,j=Promise.resolve.bind(h),k=Promise.reject.bind(h);function l(a){return new h(a)}function m(a,b,c){return i.call(a,b,c)}function n(a,b,c){m(m(a,b,c),void 0,e)}function o(a){m(a,void 0,e)}let p=a=>{if("function"==typeof queueMicrotask)p=queueMicrotask;else{let a=j(void 0);p=b=>m(a,b)}return p(a)};function q(a,b,c){if("function"!=typeof a)throw TypeError("Argument is not a function");return Function.prototype.apply.call(a,b,c)}function r(a,b,c){try{var d;return d=q(a,b,c),j(d)}catch(a){return k(a)}}class s{constructor(){this._cursor=0,this._size=0,this._front={_elements:[],_next:void 0},this._back=this._front,this._cursor=0,this._size=0}get length(){return this._size}push(a){let b=this._back,c=b;16383===b._elements.length&&(c={_elements:[],_next:void 0}),b._elements.push(a),c!==b&&(this._back=c,b._next=c),++this._size}shift(){let a=this._front,b=a,c=this._cursor,d=c+1,e=a._elements,f=e[c];return 16384===d&&(b=a._next,d=0),--this._size,this._cursor=d,a!==b&&(this._front=b),e[c]=void 0,f}forEach(a){let b=this._cursor,c=this._front,d=c._elements;for(;!(b===d.length&&void 0===c._next||b===d.length&&(d=(c=c._next)._elements,b=0,0===d.length));)a(d[b]),++b}peek(){let a=this._front,b=this._cursor;return a._elements[b]}}let t=d("[[AbortSteps]]"),u=d("[[ErrorSteps]]"),v=d("[[CancelSteps]]"),w=d("[[PullSteps]]"),x=d("[[ReleaseSteps]]");function y(a,b){var c,d;a._ownerReadableStream=b,b._reader=a,"readable"===b._state?C(a):"closed"===b._state?(C(a),E(a)):(c=a,d=b._storedError,C(c),D(c,d))}function z(a,b){return bA(a._ownerReadableStream,b)}function A(a){var b,c;let d=a._ownerReadableStream;"readable"===d._state?D(a,TypeError("Reader was released and can no longer be used to monitor the stream's closedness")):(b=a,c=TypeError("Reader was released and can no longer be used to monitor the stream's closedness"),C(b),D(b,c)),d._readableStreamController[x](),d._reader=void 0,a._ownerReadableStream=void 0}function B(a){return TypeError("Cannot "+a+" a stream using a released reader")}function C(a){a._closedPromise=l((b,c)=>{a._closedPromise_resolve=b,a._closedPromise_reject=c})}function D(a,b){void 0!==a._closedPromise_reject&&(o(a._closedPromise),a._closedPromise_reject(b),a._closedPromise_resolve=void 0,a._closedPromise_reject=void 0)}function E(a){void 0!==a._closedPromise_resolve&&(a._closedPromise_resolve(void 0),a._closedPromise_resolve=void 0,a._closedPromise_reject=void 0)}let F=Number.isFinite||function(a){return"number"==typeof a&&isFinite(a)},G=Math.trunc||function(a){return a<0?Math.ceil(a):Math.floor(a)};function H(a,b){if(void 0!==a&&"object"!=typeof a&&"function"!=typeof a)throw TypeError(`${b} is not an object.`)}function I(a,b){if("function"!=typeof a)throw TypeError(`${b} is not a function.`)}function J(a,b){if(("object"!=typeof a||null===a)&&"function"!=typeof a)throw TypeError(`${b} is not an object.`)}function K(a,b,c){if(void 0===a)throw TypeError(`Parameter ${b} is required in '${c}'.`)}function L(a,b,c){if(void 0===a)throw TypeError(`${b} is required in '${c}'.`)}function M(a){return Number(a)}function N(a,b){var c,d;let e=Number.MAX_SAFE_INTEGER,f=Number(a);if(!F(f=0===(c=f)?0:c))throw TypeError(`${b} is not a finite number`);if((f=0===(d=G(f))?0:d)<0||f>e)throw TypeError(`${b} is outside the accepted range of 0 to ${e}, inclusive`);return F(f)&&0!==f?f:0}function O(a){if(!f(a)||"function"!=typeof a.getReader)return!1;try{return"boolean"==typeof a.locked}catch(a){return!1}}function P(a){if(!f(a)||"function"!=typeof a.getWriter)return!1;try{return"boolean"==typeof a.locked}catch(a){return!1}}function Q(a,b){if(!by(a))throw TypeError(`${b} is not a ReadableStream.`)}function R(a,b){a._reader._readRequests.push(b)}function S(a,b,c){let d=a._reader._readRequests.shift();c?d._closeSteps():d._chunkSteps(b)}function T(a){return a._reader._readRequests.length}function U(a){let b=a._reader;return void 0!==b&&!!W(b)}class V{constructor(a){if(K(a,1,"ReadableStreamDefaultReader"),Q(a,"First parameter"),bz(a))throw TypeError("This stream has already been locked for exclusive reading by another reader");y(this,a),this._readRequests=new s}get closed(){return W(this)?this._closedPromise:k(Y("closed"))}cancel(a){return W(this)?void 0===this._ownerReadableStream?k(B("cancel")):z(this,a):k(Y("cancel"))}read(){let a,b;if(!W(this))return k(Y("read"));if(void 0===this._ownerReadableStream)return k(B("read from"));let c=l((c,d)=>{a=c,b=d});return function(a,b){let c=a._ownerReadableStream;c._disturbed=!0,"closed"===c._state?b._closeSteps():"errored"===c._state?b._errorSteps(c._storedError):c._readableStreamController[w](b)}(this,{_chunkSteps:b=>a({value:b,done:!1}),_closeSteps:()=>a({value:void 0,done:!0}),_errorSteps:a=>b(a)}),c}releaseLock(){if(!W(this))throw Y("releaseLock");void 0!==this._ownerReadableStream&&(A(this),X(this,TypeError("Reader was released")))}}function W(a){return!!f(a)&&!!Object.prototype.hasOwnProperty.call(a,"_readRequests")&&a instanceof V}function X(a,b){let c=a._readRequests;a._readRequests=new s,c.forEach(a=>{a._errorSteps(b)})}function Y(a){return TypeError(`ReadableStreamDefaultReader.prototype.${a} can only be used on a ReadableStreamDefaultReader`)}Object.defineProperties(V.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),g(V.prototype.cancel,"cancel"),g(V.prototype.read,"read"),g(V.prototype.releaseLock,"releaseLock"),"symbol"==typeof d.toStringTag&&Object.defineProperty(V.prototype,d.toStringTag,{value:"ReadableStreamDefaultReader",configurable:!0});class Z{constructor(a,b){this._ongoingPromise=void 0,this._isFinished=!1,this._reader=a,this._preventCancel=b}next(){let a=()=>this._nextSteps();return this._ongoingPromise=this._ongoingPromise?m(this._ongoingPromise,a,a):a(),this._ongoingPromise}return(a){let b=()=>this._returnSteps(a);return this._ongoingPromise?m(this._ongoingPromise,b,b):b()}_nextSteps(){if(this._isFinished)return Promise.resolve({value:void 0,done:!0});let a=this._reader;return void 0===a?k(B("iterate")):m(a.read(),a=>{var b;return this._ongoingPromise=void 0,a.done&&(this._isFinished=!0,null==(b=this._reader)||b.releaseLock(),this._reader=void 0),a},a=>{var b;throw this._ongoingPromise=void 0,this._isFinished=!0,null==(b=this._reader)||b.releaseLock(),this._reader=void 0,a})}_returnSteps(a){if(this._isFinished)return Promise.resolve({value:a,done:!0});this._isFinished=!0;let b=this._reader;if(void 0===b)return k(B("finish iterating"));if(this._reader=void 0,!this._preventCancel){let c=b.cancel(a);return b.releaseLock(),m(c,()=>({value:a,done:!0}),void 0)}return b.releaseLock(),j({value:a,done:!0})}}let $={next(){return _(this)?this._asyncIteratorImpl.next():k(aa("next"))},return(a){return _(this)?this._asyncIteratorImpl.return(a):k(aa("return"))}};function _(a){if(!f(a)||!Object.prototype.hasOwnProperty.call(a,"_asyncIteratorImpl"))return!1;try{return a._asyncIteratorImpl instanceof Z}catch(a){return!1}}function aa(a){return TypeError(`ReadableStreamAsyncIterator.${a} can only be used on a ReadableSteamAsyncIterator`)}"symbol"==typeof d.asyncIterator&&Object.defineProperty($,d.asyncIterator,{value(){return this},writable:!0,configurable:!0});let ab=Number.isNaN||function(a){return a!=a};function ac(a,b,c,d,e){new Uint8Array(a).set(new Uint8Array(c,d,e),b)}function ad(a){return new Uint8Array(function(a,b,c){if(a.slice)return a.slice(b,c);let d=c-b,e=new ArrayBuffer(d);return ac(e,0,a,b,d),e}(a.buffer,a.byteOffset,a.byteOffset+a.byteLength))}function ae(a){let b=a._queue.shift();return a._queueTotalSize-=b.size,a._queueTotalSize<0&&(a._queueTotalSize=0),b.value}function af(a,b,c){if("number"!=typeof c||ab(c)||c<0||c===1/0)throw RangeError("Size must be a finite, non-NaN, non-negative number.");a._queue.push({value:b,size:c}),a._queueTotalSize+=c}function ag(a){a._queue=new s,a._queueTotalSize=0}class ah{constructor(){throw TypeError("Illegal constructor")}get view(){if(!ak(this))throw aD("view");return this._view}respond(a){if(!ak(this))throw aD("respond");if(K(a,1,"respond"),a=N(a,"First parameter"),void 0===this._associatedReadableByteStreamController)throw TypeError("This BYOB request has been invalidated");this._view.buffer,function(a,b){let c=a._pendingPullIntos.peek();if("closed"===a._controlledReadableByteStream._state){if(0!==b)throw TypeError("bytesWritten must be 0 when calling respond() on a closed stream")}else{if(0===b)throw TypeError("bytesWritten must be greater than 0 when calling respond() on a readable stream");if(c.bytesFilled+b>c.byteLength)throw RangeError("bytesWritten out of range")}c.buffer=c.buffer,ax(a,b)}(this._associatedReadableByteStreamController,a)}respondWithNewView(a){if(!ak(this))throw aD("respondWithNewView");if(K(a,1,"respondWithNewView"),!ArrayBuffer.isView(a))throw TypeError("You can only respond with array buffer views");if(void 0===this._associatedReadableByteStreamController)throw TypeError("This BYOB request has been invalidated");a.buffer,function(a,b){let c=a._pendingPullIntos.peek();if("closed"===a._controlledReadableByteStream._state){if(0!==b.byteLength)throw TypeError("The view's length must be 0 when calling respondWithNewView() on a closed stream")}else if(0===b.byteLength)throw TypeError("The view's length must be greater than 0 when calling respondWithNewView() on a readable stream");if(c.byteOffset+c.bytesFilled!==b.byteOffset)throw RangeError("The region specified by view does not match byobRequest");if(c.bufferByteLength!==b.buffer.byteLength)throw RangeError("The buffer of view has different capacity than byobRequest");if(c.bytesFilled+b.byteLength>c.byteLength)throw RangeError("The region specified by view is larger than byobRequest");let d=b.byteLength;c.buffer=b.buffer,ax(a,d)}(this._associatedReadableByteStreamController,a)}}Object.defineProperties(ah.prototype,{respond:{enumerable:!0},respondWithNewView:{enumerable:!0},view:{enumerable:!0}}),g(ah.prototype.respond,"respond"),g(ah.prototype.respondWithNewView,"respondWithNewView"),"symbol"==typeof d.toStringTag&&Object.defineProperty(ah.prototype,d.toStringTag,{value:"ReadableStreamBYOBRequest",configurable:!0});class ai{constructor(){throw TypeError("Illegal constructor")}get byobRequest(){if(!aj(this))throw aE("byobRequest");return function(a){if(null===a._byobRequest&&a._pendingPullIntos.length>0){let b=a._pendingPullIntos.peek(),c=new Uint8Array(b.buffer,b.byteOffset+b.bytesFilled,b.byteLength-b.bytesFilled),d=Object.create(ah.prototype);d._associatedReadableByteStreamController=a,d._view=c,a._byobRequest=d}return a._byobRequest}(this)}get desiredSize(){if(!aj(this))throw aE("desiredSize");return aC(this)}close(){if(!aj(this))throw aE("close");if(this._closeRequested)throw TypeError("The stream has already been closed; do not close it again!");let a=this._controlledReadableByteStream._state;if("readable"!==a)throw TypeError(`The stream (in ${a} state) is not in the readable state and cannot be closed`);!function(a){let b=a._controlledReadableByteStream;if(!a._closeRequested&&"readable"===b._state){if(a._queueTotalSize>0)return a._closeRequested=!0;if(a._pendingPullIntos.length>0&&a._pendingPullIntos.peek().bytesFilled>0){let b=TypeError("Insufficient bytes to fill elements in the given buffer");throw aA(a,b),b}az(a),bB(b)}}(this)}enqueue(a){if(!aj(this))throw aE("enqueue");if(K(a,1,"enqueue"),!ArrayBuffer.isView(a))throw TypeError("chunk must be an array buffer view");if(0===a.byteLength)throw TypeError("chunk must have non-zero byteLength");if(0===a.buffer.byteLength)throw TypeError("chunk's buffer must have non-zero byteLength");if(this._closeRequested)throw TypeError("stream is closed or draining");let b=this._controlledReadableByteStream._state;if("readable"!==b)throw TypeError(`The stream (in ${b} state) is not in the readable state and cannot be enqueued to`);!function(a,b){let c=a._controlledReadableByteStream;if(a._closeRequested||"readable"!==c._state)return;let d=b.buffer,e=b.byteOffset,f=b.byteLength;if(a._pendingPullIntos.length>0){let b=a._pendingPullIntos.peek();b.buffer,av(a),b.buffer=b.buffer,"none"===b.readerType&&ar(a,b)}U(c)?(function(a){let b=a._controlledReadableByteStream._reader;for(;b._readRequests.length>0;){if(0===a._queueTotalSize)return;aB(a,b._readRequests.shift())}}(a),0===T(c))?ap(a,d,e,f):(a._pendingPullIntos.length>0&&ay(a),S(c,new Uint8Array(d,e,f),!1)):aH(c)?(ap(a,d,e,f),aw(a)):ap(a,d,e,f),al(a)}(this,a)}error(a){if(!aj(this))throw aE("error");aA(this,a)}[v](a){am(this),ag(this);let b=this._cancelAlgorithm(a);return az(this),b}[w](a){let b=this._controlledReadableByteStream;if(this._queueTotalSize>0)return void aB(this,a);let c=this._autoAllocateChunkSize;if(void 0!==c){let b;try{b=new ArrayBuffer(c)}catch(b){return void a._errorSteps(b)}let d={buffer:b,bufferByteLength:c,byteOffset:0,byteLength:c,bytesFilled:0,elementSize:1,viewConstructor:Uint8Array,readerType:"default"};this._pendingPullIntos.push(d)}R(b,a),al(this)}[x](){if(this._pendingPullIntos.length>0){let a=this._pendingPullIntos.peek();a.readerType="none",this._pendingPullIntos=new s,this._pendingPullIntos.push(a)}}}function aj(a){return!!f(a)&&!!Object.prototype.hasOwnProperty.call(a,"_controlledReadableByteStream")&&a instanceof ai}function ak(a){return!!f(a)&&!!Object.prototype.hasOwnProperty.call(a,"_associatedReadableByteStreamController")&&a instanceof ah}function al(a){if(function(a){let b=a._controlledReadableByteStream;return"readable"===b._state&&!a._closeRequested&&!!a._started&&!!(U(b)&&T(b)>0||aH(b)&&aG(b)>0||aC(a)>0)}(a)){if(a._pulling)return void(a._pullAgain=!0);a._pulling=!0,n(a._pullAlgorithm(),()=>(a._pulling=!1,a._pullAgain&&(a._pullAgain=!1,al(a)),null),b=>(aA(a,b),null))}}function am(a){av(a),a._pendingPullIntos=new s}function an(a,b){let c=!1;"closed"===a._state&&(c=!0);let d=ao(b);"default"===b.readerType?S(a,d,c):function(a,b,c){let d=a._reader._readIntoRequests.shift();c?d._closeSteps(b):d._chunkSteps(b)}(a,d,c)}function ao(a){let b=a.bytesFilled,c=a.elementSize;return new a.viewConstructor(a.buffer,a.byteOffset,b/c)}function ap(a,b,c,d){a._queue.push({buffer:b,byteOffset:c,byteLength:d}),a._queueTotalSize+=d}function aq(a,b,c,d){let e;try{e=b.slice(c,c+d)}catch(b){throw aA(a,b),b}ap(a,e,0,d)}function ar(a,b){b.bytesFilled>0&&aq(a,b.buffer,b.byteOffset,b.bytesFilled),ay(a)}function as(a,b){let c=b.elementSize,d=b.bytesFilled-b.bytesFilled%c,e=Math.min(a._queueTotalSize,b.byteLength-b.bytesFilled),f=b.bytesFilled+e,g=f-f%c,h=e,i=!1;g>d&&(h=g-b.bytesFilled,i=!0);let j=a._queue;for(;h>0;){let c=j.peek(),d=Math.min(h,c.byteLength),e=b.byteOffset+b.bytesFilled;ac(b.buffer,e,c.buffer,c.byteOffset,d),c.byteLength===d?j.shift():(c.byteOffset+=d,c.byteLength-=d),a._queueTotalSize-=d,at(a,d,b),h-=d}return i}function at(a,b,c){c.bytesFilled+=b}function au(a){0===a._queueTotalSize&&a._closeRequested?(az(a),bB(a._controlledReadableByteStream)):al(a)}function av(a){null!==a._byobRequest&&(a._byobRequest._associatedReadableByteStreamController=void 0,a._byobRequest._view=null,a._byobRequest=null)}function aw(a){for(;a._pendingPullIntos.length>0;){if(0===a._queueTotalSize)return;let b=a._pendingPullIntos.peek();as(a,b)&&(ay(a),an(a._controlledReadableByteStream,b))}}function ax(a,b){let c=a._pendingPullIntos.peek();av(a),"closed"===a._controlledReadableByteStream._state?function(a,b){"none"===b.readerType&&ay(a);let c=a._controlledReadableByteStream;if(aH(c))for(;aG(c)>0;)an(c,ay(a))}(a,c):function(a,b,c){if(at(0,b,c),"none"===c.readerType)return ar(a,c),aw(a);if(c.bytesFilled<c.elementSize)return;ay(a);let d=c.bytesFilled%c.elementSize;if(d>0){let b=c.byteOffset+c.bytesFilled;aq(a,c.buffer,b-d,d)}c.bytesFilled-=d,an(a._controlledReadableByteStream,c),aw(a)}(a,b,c),al(a)}function ay(a){return a._pendingPullIntos.shift()}function az(a){a._pullAlgorithm=void 0,a._cancelAlgorithm=void 0}function aA(a,b){let c=a._controlledReadableByteStream;"readable"===c._state&&(am(a),ag(a),az(a),bC(c,b))}function aB(a,b){let c=a._queue.shift();a._queueTotalSize-=c.byteLength,au(a);let d=new Uint8Array(c.buffer,c.byteOffset,c.byteLength);b._chunkSteps(d)}function aC(a){let b=a._controlledReadableByteStream._state;return"errored"===b?null:"closed"===b?0:a._strategyHWM-a._queueTotalSize}function aD(a){return TypeError(`ReadableStreamBYOBRequest.prototype.${a} can only be used on a ReadableStreamBYOBRequest`)}function aE(a){return TypeError(`ReadableByteStreamController.prototype.${a} can only be used on a ReadableByteStreamController`)}function aF(a,b){a._reader._readIntoRequests.push(b)}function aG(a){return a._reader._readIntoRequests.length}function aH(a){let b=a._reader;return void 0!==b&&!!aJ(b)}Object.defineProperties(ai.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},byobRequest:{enumerable:!0},desiredSize:{enumerable:!0}}),g(ai.prototype.close,"close"),g(ai.prototype.enqueue,"enqueue"),g(ai.prototype.error,"error"),"symbol"==typeof d.toStringTag&&Object.defineProperty(ai.prototype,d.toStringTag,{value:"ReadableByteStreamController",configurable:!0});class aI{constructor(a){if(K(a,1,"ReadableStreamBYOBReader"),Q(a,"First parameter"),bz(a))throw TypeError("This stream has already been locked for exclusive reading by another reader");if(!aj(a._readableStreamController))throw TypeError("Cannot construct a ReadableStreamBYOBReader for a stream not constructed with a byte source");y(this,a),this._readIntoRequests=new s}get closed(){return aJ(this)?this._closedPromise:k(aL("closed"))}cancel(a){return aJ(this)?void 0===this._ownerReadableStream?k(B("cancel")):z(this,a):k(aL("cancel"))}read(a){let b,c;if(!aJ(this))return k(aL("read"));if(!ArrayBuffer.isView(a))return k(TypeError("view must be an array buffer view"));if(0===a.byteLength)return k(TypeError("view must have non-zero byteLength"));if(0===a.buffer.byteLength)return k(TypeError("view's buffer must have non-zero byteLength"));if(a.buffer,void 0===this._ownerReadableStream)return k(B("read from"));let d=l((a,d)=>{b=a,c=d});return function(a,b,c){let d=a._ownerReadableStream;d._disturbed=!0,"errored"===d._state?c._errorSteps(d._storedError):function(a,b,c){let d=a._controlledReadableByteStream,e=1;b.constructor!==DataView&&(e=b.constructor.BYTES_PER_ELEMENT);let f=b.constructor,g=b.buffer,h={buffer:g,bufferByteLength:g.byteLength,byteOffset:b.byteOffset,byteLength:b.byteLength,bytesFilled:0,elementSize:e,viewConstructor:f,readerType:"byob"};if(a._pendingPullIntos.length>0)return a._pendingPullIntos.push(h),aF(d,c);if("closed"!==d._state){if(a._queueTotalSize>0){if(as(a,h)){let b=ao(h);return au(a),c._chunkSteps(b)}if(a._closeRequested){let b=TypeError("Insufficient bytes to fill elements in the given buffer");return aA(a,b),c._errorSteps(b)}}a._pendingPullIntos.push(h),aF(d,c),al(a)}else{let a=new f(h.buffer,h.byteOffset,0);c._closeSteps(a)}}(d._readableStreamController,b,c)}(this,a,{_chunkSteps:a=>b({value:a,done:!1}),_closeSteps:a=>b({value:a,done:!0}),_errorSteps:a=>c(a)}),d}releaseLock(){if(!aJ(this))throw aL("releaseLock");void 0!==this._ownerReadableStream&&(A(this),aK(this,TypeError("Reader was released")))}}function aJ(a){return!!f(a)&&!!Object.prototype.hasOwnProperty.call(a,"_readIntoRequests")&&a instanceof aI}function aK(a,b){let c=a._readIntoRequests;a._readIntoRequests=new s,c.forEach(a=>{a._errorSteps(b)})}function aL(a){return TypeError(`ReadableStreamBYOBReader.prototype.${a} can only be used on a ReadableStreamBYOBReader`)}function aM(a,b){let{highWaterMark:c}=a;if(void 0===c)return b;if(ab(c)||c<0)throw RangeError("Invalid highWaterMark");return c}function aN(a){let{size:b}=a;return b||(()=>1)}function aO(a,b){var c;H(a,b);let d=null==a?void 0:a.highWaterMark,e=null==a?void 0:a.size;return{highWaterMark:void 0===d?void 0:M(d),size:void 0===e?void 0:(I(c=e,`${b} has member 'size' that`),a=>M(c(a)))}}Object.defineProperties(aI.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),g(aI.prototype.cancel,"cancel"),g(aI.prototype.read,"read"),g(aI.prototype.releaseLock,"releaseLock"),"symbol"==typeof d.toStringTag&&Object.defineProperty(aI.prototype,d.toStringTag,{value:"ReadableStreamBYOBReader",configurable:!0});let aP="function"==typeof AbortController;class aQ{constructor(a={},b={}){void 0===a?a=null:J(a,"First parameter");let c=aO(b,"Second parameter"),d=function(a,b){H(a,b);let c=null==a?void 0:a.abort,d=null==a?void 0:a.close,e=null==a?void 0:a.start,f=null==a?void 0:a.type,g=null==a?void 0:a.write;return{abort:void 0===c?void 0:(I(c,`${b} has member 'abort' that`),b=>r(c,a,[b])),close:void 0===d?void 0:(I(d,`${b} has member 'close' that`),()=>r(d,a,[])),start:void 0===e?void 0:(I(e,`${b} has member 'start' that`),b=>q(e,a,[b])),write:void 0===g?void 0:(I(g,`${b} has member 'write' that`),(b,c)=>r(g,a,[b,c])),type:f}}(a,"First parameter");if(this._state="writable",this._storedError=void 0,this._writer=void 0,this._writableStreamController=void 0,this._writeRequests=new s,this._inFlightWriteRequest=void 0,this._closeRequest=void 0,this._inFlightCloseRequest=void 0,this._pendingAbortRequest=void 0,this._backpressure=!1,void 0!==d.type)throw RangeError("Invalid type is specified");let e=aN(c);!function(a,b,c,d){let e,f,g,h,i=Object.create(a3.prototype);e=void 0!==b.start?()=>b.start(i):()=>{},f=void 0!==b.write?a=>b.write(a,i):()=>j(void 0),g=void 0!==b.close?()=>b.close():()=>j(void 0),h=void 0!==b.abort?a=>b.abort(a):()=>j(void 0),i._controlledWritableStream=a,a._writableStreamController=i,i._queue=void 0,i._queueTotalSize=void 0,ag(i),i._abortReason=void 0,i._abortController=function(){if(aP)return new AbortController}(),i._started=!1,i._strategySizeAlgorithm=d,i._strategyHWM=c,i._writeAlgorithm=f,i._closeAlgorithm=g,i._abortAlgorithm=h,a$(a,0>=a6(i)),n(j(e()),()=>(i._started=!0,a7(i),null),b=>(i._started=!0,aV(a,b),null))}(this,d,aM(c,1),e)}get locked(){if(!aR(this))throw ba("locked");return aS(this)}abort(a){return aR(this)?aS(this)?k(TypeError("Cannot abort a stream that already has a writer")):aT(this,a):k(ba("abort"))}close(){return aR(this)?aS(this)?k(TypeError("Cannot close a stream that already has a writer")):aY(this)?k(TypeError("Cannot close an already-closing stream")):aU(this):k(ba("close"))}getWriter(){if(!aR(this))throw ba("getWriter");return new a_(this)}}function aR(a){return!!f(a)&&!!Object.prototype.hasOwnProperty.call(a,"_writableStreamController")&&a instanceof aQ}function aS(a){return void 0!==a._writer}function aT(a,b){var c;if("closed"===a._state||"errored"===a._state)return j(void 0);a._writableStreamController._abortReason=b,null==(c=a._writableStreamController._abortController)||c.abort(b);let d=a._state;if("closed"===d||"errored"===d)return j(void 0);if(void 0!==a._pendingAbortRequest)return a._pendingAbortRequest._promise;let e=!1;"erroring"===d&&(e=!0,b=void 0);let f=l((c,d)=>{a._pendingAbortRequest={_promise:void 0,_resolve:c,_reject:d,_reason:b,_wasAlreadyErroring:e}});return a._pendingAbortRequest._promise=f,e||aW(a,b),f}function aU(a){var b;let c=a._state;if("closed"===c||"errored"===c)return k(TypeError(`The stream (in ${c} state) is not in the writable state and cannot be closed`));let d=l((b,c)=>{a._closeRequest={_resolve:b,_reject:c}}),e=a._writer;return void 0!==e&&a._backpressure&&"writable"===c&&bk(e),af(b=a._writableStreamController,a2,0),a7(b),d}function aV(a,b){"writable"!==a._state?aX(a):aW(a,b)}function aW(a,b){let c=a._writableStreamController;a._state="erroring",a._storedError=b;let d=a._writer;void 0!==d&&a1(d,b),void 0===a._inFlightWriteRequest&&void 0===a._inFlightCloseRequest&&c._started&&aX(a)}function aX(a){a._state="errored",a._writableStreamController[u]();let b=a._storedError;if(a._writeRequests.forEach(a=>{a._reject(b)}),a._writeRequests=new s,void 0===a._pendingAbortRequest)return void aZ(a);let c=a._pendingAbortRequest;if(a._pendingAbortRequest=void 0,c._wasAlreadyErroring)return c._reject(b),void aZ(a);n(a._writableStreamController[t](c._reason),()=>(c._resolve(),aZ(a),null),b=>(c._reject(b),aZ(a),null))}function aY(a){return void 0!==a._closeRequest||void 0!==a._inFlightCloseRequest}function aZ(a){void 0!==a._closeRequest&&(a._closeRequest._reject(a._storedError),a._closeRequest=void 0);let b=a._writer;void 0!==b&&bf(b,a._storedError)}function a$(a,b){let c=a._writer;void 0!==c&&b!==a._backpressure&&(b?bh(c):bk(c)),a._backpressure=b}Object.defineProperties(aQ.prototype,{abort:{enumerable:!0},close:{enumerable:!0},getWriter:{enumerable:!0},locked:{enumerable:!0}}),g(aQ.prototype.abort,"abort"),g(aQ.prototype.close,"close"),g(aQ.prototype.getWriter,"getWriter"),"symbol"==typeof d.toStringTag&&Object.defineProperty(aQ.prototype,d.toStringTag,{value:"WritableStream",configurable:!0});class a_{constructor(a){if(K(a,1,"WritableStreamDefaultWriter"),function(a,b){if(!aR(a))throw TypeError(`${b} is not a WritableStream.`)}(a,"First parameter"),aS(a))throw TypeError("This stream has already been locked for exclusive writing by another writer");this._ownerWritableStream=a,a._writer=this;let b=a._state;if("writable"===b)!aY(a)&&a._backpressure?bh(this):function(a){bh(a),bk(a)}(this),be(this);else if("erroring"===b)bi(this,a._storedError),be(this);else if("closed"===b)(function(a){bh(a),bk(a)})(this),be(this),bg(this);else{let b=a._storedError;bi(this,b),function(a,b){be(a),bf(a,b)}(this,b)}}get closed(){return a0(this)?this._closedPromise:k(bc("closed"))}get desiredSize(){if(!a0(this))throw bc("desiredSize");if(void 0===this._ownerWritableStream)throw bd("desiredSize");let a=this._ownerWritableStream,b=a._state;return"errored"===b||"erroring"===b?null:"closed"===b?0:a6(a._writableStreamController)}get ready(){return a0(this)?this._readyPromise:k(bc("ready"))}abort(a){return a0(this)?void 0===this._ownerWritableStream?k(bd("abort")):aT(this._ownerWritableStream,a):k(bc("abort"))}close(){if(!a0(this))return k(bc("close"));let a=this._ownerWritableStream;return void 0===a?k(bd("close")):aY(a)?k(TypeError("Cannot close an already-closing stream")):aU(this._ownerWritableStream)}releaseLock(){if(!a0(this))throw bc("releaseLock");void 0!==this._ownerWritableStream&&function(a){var b,c;let d=a._ownerWritableStream,e=TypeError("Writer was released and can no longer be used to monitor the stream's closedness");a1(a,e),"pending"===a._closedPromiseState?bf(a,e):(b=a,c=e,be(b),bf(b,c)),d._writer=void 0,a._ownerWritableStream=void 0}(this)}write(a){return a0(this)?void 0===this._ownerWritableStream?k(bd("write to")):function(a,b){let c=a._ownerWritableStream,d=c._writableStreamController,e=function(a,b){try{return a._strategySizeAlgorithm(b)}catch(b){return a8(a,b),1}}(d,b);if(c!==a._ownerWritableStream)return k(bd("write to"));let f=c._state;if("errored"===f)return k(c._storedError);if(aY(c)||"closed"===f)return k(TypeError("The stream is closing or closed and cannot be written to"));if("erroring"===f)return k(c._storedError);let g=l((a,b)=>{c._writeRequests.push({_resolve:a,_reject:b})});return function(a,b,c){try{af(a,b,c)}catch(b){return void a8(a,b)}let d=a._controlledWritableStream;aY(d)||"writable"!==d._state||a$(d,0>=a6(a)),a7(a)}(d,b,e),g}(this,a):k(bc("write"))}}function a0(a){return!!f(a)&&!!Object.prototype.hasOwnProperty.call(a,"_ownerWritableStream")&&a instanceof a_}function a1(a,b){"pending"===a._readyPromiseState?bj(a,b):bi(a,b)}Object.defineProperties(a_.prototype,{abort:{enumerable:!0},close:{enumerable:!0},releaseLock:{enumerable:!0},write:{enumerable:!0},closed:{enumerable:!0},desiredSize:{enumerable:!0},ready:{enumerable:!0}}),g(a_.prototype.abort,"abort"),g(a_.prototype.close,"close"),g(a_.prototype.releaseLock,"releaseLock"),g(a_.prototype.write,"write"),"symbol"==typeof d.toStringTag&&Object.defineProperty(a_.prototype,d.toStringTag,{value:"WritableStreamDefaultWriter",configurable:!0});let a2={};class a3{constructor(){throw TypeError("Illegal constructor")}get abortReason(){if(!a4(this))throw bb("abortReason");return this._abortReason}get signal(){if(!a4(this))throw bb("signal");if(void 0===this._abortController)throw TypeError("WritableStreamDefaultController.prototype.signal is not supported");return this._abortController.signal}error(a){if(!a4(this))throw bb("error");"writable"===this._controlledWritableStream._state&&a9(this,a)}[t](a){let b=this._abortAlgorithm(a);return a5(this),b}[u](){ag(this)}}function a4(a){return!!f(a)&&!!Object.prototype.hasOwnProperty.call(a,"_controlledWritableStream")&&a instanceof a3}function a5(a){a._writeAlgorithm=void 0,a._closeAlgorithm=void 0,a._abortAlgorithm=void 0,a._strategySizeAlgorithm=void 0}function a6(a){return a._strategyHWM-a._queueTotalSize}function a7(a){let b=a._controlledWritableStream;if(!a._started||void 0!==b._inFlightWriteRequest)return;if("erroring"===b._state)return void aX(b);if(0===a._queue.length)return;let c=a._queue.peek().value;c===a2?function(a){let b=a._controlledWritableStream;b._inFlightCloseRequest=b._closeRequest,b._closeRequest=void 0,ae(a);let c=a._closeAlgorithm();a5(a),n(c,()=>((function(a){a._inFlightCloseRequest._resolve(void 0),a._inFlightCloseRequest=void 0,"erroring"===a._state&&(a._storedError=void 0,void 0!==a._pendingAbortRequest&&(a._pendingAbortRequest._resolve(),a._pendingAbortRequest=void 0)),a._state="closed";let b=a._writer;void 0!==b&&bg(b)})(b),null),a=>(b._inFlightCloseRequest._reject(a),b._inFlightCloseRequest=void 0,void 0!==b._pendingAbortRequest&&(b._pendingAbortRequest._reject(a),b._pendingAbortRequest=void 0),aV(b,a),null))}(a):function(a,b){let c=a._controlledWritableStream;c._inFlightWriteRequest=c._writeRequests.shift(),n(a._writeAlgorithm(b),()=>{c._inFlightWriteRequest._resolve(void 0),c._inFlightWriteRequest=void 0;let b=c._state;return ae(a),aY(c)||"writable"!==b||a$(c,0>=a6(a)),a7(a),null},b=>("writable"===c._state&&a5(a),c._inFlightWriteRequest._reject(b),c._inFlightWriteRequest=void 0,aV(c,b),null))}(a,c)}function a8(a,b){"writable"===a._controlledWritableStream._state&&a9(a,b)}function a9(a,b){let c=a._controlledWritableStream;a5(a),aW(c,b)}function ba(a){return TypeError(`WritableStream.prototype.${a} can only be used on a WritableStream`)}function bb(a){return TypeError(`WritableStreamDefaultController.prototype.${a} can only be used on a WritableStreamDefaultController`)}function bc(a){return TypeError(`WritableStreamDefaultWriter.prototype.${a} can only be used on a WritableStreamDefaultWriter`)}function bd(a){return TypeError("Cannot "+a+" a stream using a released writer")}function be(a){a._closedPromise=l((b,c)=>{a._closedPromise_resolve=b,a._closedPromise_reject=c,a._closedPromiseState="pending"})}function bf(a,b){void 0!==a._closedPromise_reject&&(o(a._closedPromise),a._closedPromise_reject(b),a._closedPromise_resolve=void 0,a._closedPromise_reject=void 0,a._closedPromiseState="rejected")}function bg(a){void 0!==a._closedPromise_resolve&&(a._closedPromise_resolve(void 0),a._closedPromise_resolve=void 0,a._closedPromise_reject=void 0,a._closedPromiseState="resolved")}function bh(a){a._readyPromise=l((b,c)=>{a._readyPromise_resolve=b,a._readyPromise_reject=c}),a._readyPromiseState="pending"}function bi(a,b){bh(a),bj(a,b)}function bj(a,b){void 0!==a._readyPromise_reject&&(o(a._readyPromise),a._readyPromise_reject(b),a._readyPromise_resolve=void 0,a._readyPromise_reject=void 0,a._readyPromiseState="rejected")}function bk(a){void 0!==a._readyPromise_resolve&&(a._readyPromise_resolve(void 0),a._readyPromise_resolve=void 0,a._readyPromise_reject=void 0,a._readyPromiseState="fulfilled")}Object.defineProperties(a3.prototype,{abortReason:{enumerable:!0},signal:{enumerable:!0},error:{enumerable:!0}}),"symbol"==typeof d.toStringTag&&Object.defineProperty(a3.prototype,d.toStringTag,{value:"WritableStreamDefaultController",configurable:!0});let bl="undefined"!=typeof DOMException?DOMException:void 0,bm=!function(a){if("function"!=typeof a&&"object"!=typeof a)return!1;try{return new a,!0}catch(a){return!1}}(bl)?function(){let a=function(a,b){this.message=a||"",this.name=b||"Error",Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)};return a.prototype=Object.create(Error.prototype),Object.defineProperty(a.prototype,"constructor",{value:a,writable:!0,configurable:!0}),a}():bl;function bn(a,b,c,d,e,f){let g=a.getReader(),h=b.getWriter();by(a)&&(a._disturbed=!0);let i,q,r,s=!1,t=!1,u="readable",v="writable",w=!1,x=!1,y=l(a=>{r=a}),z=Promise.resolve(void 0);return l((A,B)=>{let C;function D(){if(s)return;let a=l((a,b)=>{!function c(d){d?a():m(s?j(!0):m(h.ready,()=>m(g.read(),a=>!!a.done||(o(z=h.write(a.value)),!1))),c,b)}(!1)});o(a)}function E(){return u="closed",c?I():H(()=>(aR(b)&&(w=aY(b),v=b._state),w||"closed"===v?j(void 0):"erroring"===v||"errored"===v?k(q):(w=!0,h.close())),!1,void 0),null}function F(a){return s||(u="errored",i=a,d?I(!0,a):H(()=>h.abort(a),!0,a)),null}function G(a){return t||(v="errored",q=a,e?I(!0,a):H(()=>g.cancel(a),!0,a)),null}if(void 0!==f&&(C=()=>{let a=void 0!==f.reason?f.reason:new bm("Aborted","AbortError"),b=[];d||b.push(()=>"writable"===v?h.abort(a):j(void 0)),e||b.push(()=>"readable"===u?g.cancel(a):j(void 0)),H(()=>Promise.all(b.map(a=>a())),!0,a)},f.aborted?C():f.addEventListener("abort",C)),by(a)&&(u=a._state,i=a._storedError),aR(b)&&(v=b._state,q=b._storedError,w=aY(b)),by(a)&&aR(b)&&(x=!0,r()),"errored"===u)F(i);else if("erroring"===v||"errored"===v)G(q);else if("closed"===u)E();else if(w||"closed"===v){let a=TypeError("the destination writable stream closed before all data could be piped to it");e?I(!0,a):H(()=>g.cancel(a),!0,a)}function H(a,b,c){function d(){let a;return"writable"!==v||w?e():n(j(function b(){if(a!==z)return a=z,m(z,b,b)}()),e),null}function e(){return a?n(a(),()=>J(b,c),a=>J(!0,a)):J(b,c),null}s||(s=!0,x?d():n(y,d))}function I(a,b){H(void 0,a,b)}function J(a,b){return t=!0,h.releaseLock(),g.releaseLock(),void 0!==f&&f.removeEventListener("abort",C),a?B(b):A(void 0),null}s||(n(g.closed,E,F),n(h.closed,function(){return t||(v="closed"),null},G)),x?D():p(()=>{x=!0,r(),D()})})}class bo{constructor(){throw TypeError("Illegal constructor")}get desiredSize(){if(!bp(this))throw bv("desiredSize");return bt(this)}close(){if(!bp(this))throw bv("close");if(!bu(this))throw TypeError("The stream is not in a state that permits close");!function(a){if(!bu(a))return;let b=a._controlledReadableStream;a._closeRequested=!0,0===a._queue.length&&(br(a),bB(b))}(this)}enqueue(a){if(!bp(this))throw bv("enqueue");if(!bu(this))throw TypeError("The stream is not in a state that permits enqueue");if(!bu(this))return;let b=this._controlledReadableStream;if(bz(b)&&T(b)>0)S(b,a,!1);else{let b;try{b=this._strategySizeAlgorithm(a)}catch(a){throw bs(this,a),a}try{af(this,a,b)}catch(a){throw bs(this,a),a}}bq(this)}error(a){if(!bp(this))throw bv("error");bs(this,a)}[v](a){ag(this);let b=this._cancelAlgorithm(a);return br(this),b}[w](a){let b=this._controlledReadableStream;if(this._queue.length>0){let c=ae(this);this._closeRequested&&0===this._queue.length?(br(this),bB(b)):bq(this),a._chunkSteps(c)}else R(b,a),bq(this)}[x](){}}function bp(a){return!!f(a)&&!!Object.prototype.hasOwnProperty.call(a,"_controlledReadableStream")&&a instanceof bo}function bq(a){if(function(a){let b=a._controlledReadableStream;return!!bu(a)&&!!a._started&&!!(bz(b)&&T(b)>0||bt(a)>0)}(a)){if(a._pulling)return void(a._pullAgain=!0);a._pulling=!0,n(a._pullAlgorithm(),()=>(a._pulling=!1,a._pullAgain&&(a._pullAgain=!1,bq(a)),null),b=>(bs(a,b),null))}}function br(a){a._pullAlgorithm=void 0,a._cancelAlgorithm=void 0,a._strategySizeAlgorithm=void 0}function bs(a,b){let c=a._controlledReadableStream;"readable"===c._state&&(ag(a),br(a),bC(c,b))}function bt(a){let b=a._controlledReadableStream._state;return"errored"===b?null:"closed"===b?0:a._strategyHWM-a._queueTotalSize}function bu(a){return!a._closeRequested&&"readable"===a._controlledReadableStream._state}function bv(a){return TypeError(`ReadableStreamDefaultController.prototype.${a} can only be used on a ReadableStreamDefaultController`)}function bw(a,b){H(a,b);let c=null==a?void 0:a.preventAbort,d=null==a?void 0:a.preventCancel,e=null==a?void 0:a.preventClose,f=null==a?void 0:a.signal;return void 0!==f&&function(a,b){if(!function(a){if("object"!=typeof a||null===a)return!1;try{return"boolean"==typeof a.aborted}catch(a){return!1}}(a))throw TypeError(`${b} is not an AbortSignal.`)}(f,`${b} has member 'signal' that`),{preventAbort:!!c,preventCancel:!!d,preventClose:!!e,signal:f}}Object.defineProperties(bo.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},desiredSize:{enumerable:!0}}),g(bo.prototype.close,"close"),g(bo.prototype.enqueue,"enqueue"),g(bo.prototype.error,"error"),"symbol"==typeof d.toStringTag&&Object.defineProperty(bo.prototype,d.toStringTag,{value:"ReadableStreamDefaultController",configurable:!0});class bx{constructor(a={},b={}){void 0===a?a=null:J(a,"First parameter");let c=aO(b,"Second parameter"),d=function(a,b){H(a,b);let c=null==a?void 0:a.autoAllocateChunkSize,d=null==a?void 0:a.cancel,e=null==a?void 0:a.pull,f=null==a?void 0:a.start,g=null==a?void 0:a.type;return{autoAllocateChunkSize:void 0===c?void 0:N(c,`${b} has member 'autoAllocateChunkSize' that`),cancel:void 0===d?void 0:(I(d,`${b} has member 'cancel' that`),b=>r(d,a,[b])),pull:void 0===e?void 0:(I(e,`${b} has member 'pull' that`),b=>r(e,a,[b])),start:void 0===f?void 0:(I(f,`${b} has member 'start' that`),b=>q(f,a,[b])),type:void 0===g?void 0:function(a,b){if("bytes"!=(a=`${a}`))throw TypeError(`${b} '${a}' is not a valid enumeration value for ReadableStreamType`);return a}(g,`${b} has member 'type' that`)}}(a,"First parameter");if(this._state="readable",this._reader=void 0,this._storedError=void 0,this._disturbed=!1,"bytes"===d.type){if(void 0!==c.size)throw RangeError("The strategy for a byte stream cannot have a size function");!function(a,b,c){let d,e,f,g=Object.create(ai.prototype);d=void 0!==b.start?()=>b.start(g):()=>{},e=void 0!==b.pull?()=>b.pull(g):()=>j(void 0),f=void 0!==b.cancel?a=>b.cancel(a):()=>j(void 0);let h=b.autoAllocateChunkSize;if(0===h)throw TypeError("autoAllocateChunkSize must be greater than 0");g._controlledReadableByteStream=a,g._pullAgain=!1,g._pulling=!1,g._byobRequest=null,g._queue=g._queueTotalSize=void 0,ag(g),g._closeRequested=!1,g._started=!1,g._strategyHWM=c,g._pullAlgorithm=e,g._cancelAlgorithm=f,g._autoAllocateChunkSize=h,g._pendingPullIntos=new s,a._readableStreamController=g,n(j(d()),()=>(g._started=!0,al(g),null),a=>(aA(g,a),null))}(this,d,aM(c,0))}else{let a=aN(c);!function(a,b,c,d){let e,f,g,h=Object.create(bo.prototype);e=void 0!==b.start?()=>b.start(h):()=>{},f=void 0!==b.pull?()=>b.pull(h):()=>j(void 0),g=void 0!==b.cancel?a=>b.cancel(a):()=>j(void 0),h._controlledReadableStream=a,h._queue=void 0,h._queueTotalSize=void 0,ag(h),h._started=!1,h._closeRequested=!1,h._pullAgain=!1,h._pulling=!1,h._strategySizeAlgorithm=d,h._strategyHWM=c,h._pullAlgorithm=f,h._cancelAlgorithm=g,a._readableStreamController=h,n(j(e()),()=>(h._started=!0,bq(h),null),a=>(bs(h,a),null))}(this,d,aM(c,1),a)}}get locked(){if(!by(this))throw bD("locked");return bz(this)}cancel(a){return by(this)?bz(this)?k(TypeError("Cannot cancel a stream that already has a reader")):bA(this,a):k(bD("cancel"))}getReader(a){if(!by(this))throw bD("getReader");return void 0===function(a,b){H(a,b);let c=null==a?void 0:a.mode;return{mode:void 0===c?void 0:function(a,b){if("byob"!=(a=`${a}`))throw TypeError(`${b} '${a}' is not a valid enumeration value for ReadableStreamReaderMode`);return a}(c,`${b} has member 'mode' that`)}}(a,"First parameter").mode?new V(this):new aI(this)}pipeThrough(a,b={}){if(!O(this))throw bD("pipeThrough");K(a,1,"pipeThrough");let c=function(a,b){H(a,b);let c=null==a?void 0:a.readable;L(c,"readable","ReadableWritablePair"),function(a,b){if(!O(a))throw TypeError(`${b} is not a ReadableStream.`)}(c,`${b} has member 'readable' that`);let d=null==a?void 0:a.writable;return L(d,"writable","ReadableWritablePair"),function(a,b){if(!P(a))throw TypeError(`${b} is not a WritableStream.`)}(d,`${b} has member 'writable' that`),{readable:c,writable:d}}(a,"First parameter"),d=bw(b,"Second parameter");if(this.locked)throw TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked ReadableStream");if(c.writable.locked)throw TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked WritableStream");return o(bn(this,c.writable,d.preventClose,d.preventAbort,d.preventCancel,d.signal)),c.readable}pipeTo(a,b={}){let c;if(!O(this))return k(bD("pipeTo"));if(void 0===a)return k("Parameter 1 is required in 'pipeTo'.");if(!P(a))return k(TypeError("ReadableStream.prototype.pipeTo's first argument must be a WritableStream"));try{c=bw(b,"Second parameter")}catch(a){return k(a)}return this.locked?k(TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked ReadableStream")):a.locked?k(TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked WritableStream")):bn(this,a,c.preventClose,c.preventAbort,c.preventCancel,c.signal)}tee(){if(!O(this))throw bD("tee");if(this.locked)throw TypeError("Cannot tee a stream that already has a reader");return!function(a){try{return a.getReader({mode:"byob"}).releaseLock(),!0}catch(a){return!1}}(this)?function(a,b){let c=a.getReader(),d,e,f,g,h,i=!1,k=!1,m=!1,o=!1,p=l(a=>{h=a});function q(){return i?k=!0:(i=!0,n(c.read(),a=>{if(k=!1,a.done)return m||f.close(),o||g.close(),m&&o||h(void 0),null;let b=a.value;return m||f.enqueue(b),o||g.enqueue(b),i=!1,k&&q(),null},()=>(i=!1,null))),j(void 0)}let r=new bx({start(a){f=a},pull:q,cancel:function(a){if(m=!0,d=a,o){let a=[d,e],b=c.cancel(a);h(b)}return p}}),s=new bx({start(a){g=a},pull:q,cancel:function(a){if(o=!0,e=a,m){let a=[d,e],b=c.cancel(a);h(b)}return p}});return n(c.closed,void 0,a=>(f.error(a),g.error(a),m&&o||h(void 0),null)),[r,s]}(this):function(a){let b,c,d,e,f,g=a.getReader(),h=!1,i=!1,k=!1,m=!1,o=!1,p=!1,q=l(a=>{f=a});function r(a){n(a.closed,void 0,b=>(a!==g||(d.error(b),e.error(b),o&&p||f(void 0)),null))}function s(){h&&(g.releaseLock(),r(g=a.getReader()),h=!1),n(g.read(),a=>{var b,c;if(k=!1,m=!1,a.done)return o||d.close(),p||e.close(),null==(b=d.byobRequest)||b.respond(0),null==(c=e.byobRequest)||c.respond(0),o&&p||f(void 0),null;let h=a.value,j=h;if(!o&&!p)try{j=ad(h)}catch(a){return d.error(a),e.error(a),f(g.cancel(a)),null}return o||d.enqueue(h),p||e.enqueue(j),i=!1,k?u():m&&v(),null},()=>(i=!1,null))}function t(b,c){h||(g.releaseLock(),r(g=a.getReader({mode:"byob"})),h=!0);let j=c?e:d,l=c?d:e;n(g.read(b),a=>{var b;k=!1,m=!1;let d=c?p:o,e=c?o:p;if(a.done){d||j.close(),e||l.close();let c=a.value;return void 0!==c&&(d||j.byobRequest.respondWithNewView(c),e||null==(b=l.byobRequest)||b.respond(0)),d&&e||f(void 0),null}let h=a.value;if(e)d||j.byobRequest.respondWithNewView(h);else{let a;try{a=ad(h)}catch(a){return j.error(a),l.error(a),f(g.cancel(a)),null}d||j.byobRequest.respondWithNewView(h),l.enqueue(a)}return i=!1,k?u():m&&v(),null},()=>(i=!1,null))}function u(){if(i)return k=!0,j(void 0);i=!0;let a=d.byobRequest;return null===a?s():t(a.view,!1),j(void 0)}function v(){if(i)return m=!0,j(void 0);i=!0;let a=e.byobRequest;return null===a?s():t(a.view,!0),j(void 0)}let w=new bx({type:"bytes",start(a){d=a},pull:u,cancel:function(a){if(o=!0,b=a,p){let a=[b,c],d=g.cancel(a);f(d)}return q}}),x=new bx({type:"bytes",start(a){e=a},pull:v,cancel:function(a){if(p=!0,c=a,o){let a=[b,c],d=g.cancel(a);f(d)}return q}});return r(g),[w,x]}(this)}values(a){if(!O(this))throw bD("values");return function(a,b){let c=new Z(a.getReader(),b),d=Object.create($);return d._asyncIteratorImpl=c,d}(this,(H(a,"First parameter"),{preventCancel:!!(null==a?void 0:a.preventCancel)}).preventCancel)}}function by(a){return!!f(a)&&!!Object.prototype.hasOwnProperty.call(a,"_readableStreamController")&&a instanceof bx}function bz(a){return void 0!==a._reader}function bA(a,b){if(a._disturbed=!0,"closed"===a._state)return j(void 0);if("errored"===a._state)return k(a._storedError);bB(a);let c=a._reader;if(void 0!==c&&aJ(c)){let a=c._readIntoRequests;c._readIntoRequests=new s,a.forEach(a=>{a._closeSteps(void 0)})}return m(a._readableStreamController[v](b),e,void 0)}function bB(a){a._state="closed";let b=a._reader;if(void 0!==b&&(E(b),W(b))){let a=b._readRequests;b._readRequests=new s,a.forEach(a=>{a._closeSteps()})}}function bC(a,b){a._state="errored",a._storedError=b;let c=a._reader;void 0!==c&&(D(c,b),W(c)?X(c,b):aK(c,b))}function bD(a){return TypeError(`ReadableStream.prototype.${a} can only be used on a ReadableStream`)}function bE(a,b){H(a,b);let c=null==a?void 0:a.highWaterMark;return L(c,"highWaterMark","QueuingStrategyInit"),{highWaterMark:M(c)}}Object.defineProperties(bx.prototype,{cancel:{enumerable:!0},getReader:{enumerable:!0},pipeThrough:{enumerable:!0},pipeTo:{enumerable:!0},tee:{enumerable:!0},values:{enumerable:!0},locked:{enumerable:!0}}),g(bx.prototype.cancel,"cancel"),g(bx.prototype.getReader,"getReader"),g(bx.prototype.pipeThrough,"pipeThrough"),g(bx.prototype.pipeTo,"pipeTo"),g(bx.prototype.tee,"tee"),g(bx.prototype.values,"values"),"symbol"==typeof d.toStringTag&&Object.defineProperty(bx.prototype,d.toStringTag,{value:"ReadableStream",configurable:!0}),"symbol"==typeof d.asyncIterator&&Object.defineProperty(bx.prototype,d.asyncIterator,{value:bx.prototype.values,writable:!0,configurable:!0});let bF=a=>a.byteLength;g(bF,"size");class bG{constructor(a){K(a,1,"ByteLengthQueuingStrategy"),a=bE(a,"First parameter"),this._byteLengthQueuingStrategyHighWaterMark=a.highWaterMark}get highWaterMark(){if(!bI(this))throw bH("highWaterMark");return this._byteLengthQueuingStrategyHighWaterMark}get size(){if(!bI(this))throw bH("size");return bF}}function bH(a){return TypeError(`ByteLengthQueuingStrategy.prototype.${a} can only be used on a ByteLengthQueuingStrategy`)}function bI(a){return!!f(a)&&!!Object.prototype.hasOwnProperty.call(a,"_byteLengthQueuingStrategyHighWaterMark")&&a instanceof bG}Object.defineProperties(bG.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),"symbol"==typeof d.toStringTag&&Object.defineProperty(bG.prototype,d.toStringTag,{value:"ByteLengthQueuingStrategy",configurable:!0});let bJ=()=>1;g(bJ,"size");class bK{constructor(a){K(a,1,"CountQueuingStrategy"),a=bE(a,"First parameter"),this._countQueuingStrategyHighWaterMark=a.highWaterMark}get highWaterMark(){if(!bM(this))throw bL("highWaterMark");return this._countQueuingStrategyHighWaterMark}get size(){if(!bM(this))throw bL("size");return bJ}}function bL(a){return TypeError(`CountQueuingStrategy.prototype.${a} can only be used on a CountQueuingStrategy`)}function bM(a){return!!f(a)&&!!Object.prototype.hasOwnProperty.call(a,"_countQueuingStrategyHighWaterMark")&&a instanceof bK}Object.defineProperties(bK.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),"symbol"==typeof d.toStringTag&&Object.defineProperty(bK.prototype,d.toStringTag,{value:"CountQueuingStrategy",configurable:!0});class bN{constructor(a={},b={},c={}){let d;void 0===a&&(a=null);let e=aO(b,"Second parameter"),f=aO(c,"Third parameter"),g=function(a,b){H(a,b);let c=null==a?void 0:a.flush,d=null==a?void 0:a.readableType,e=null==a?void 0:a.start,f=null==a?void 0:a.transform,g=null==a?void 0:a.writableType;return{flush:void 0===c?void 0:(I(c,`${b} has member 'flush' that`),b=>r(c,a,[b])),readableType:d,start:void 0===e?void 0:(I(e,`${b} has member 'start' that`),b=>q(e,a,[b])),transform:void 0===f?void 0:(I(f,`${b} has member 'transform' that`),(b,c)=>r(f,a,[b,c])),writableType:g}}(a,"First parameter");if(void 0!==g.readableType)throw RangeError("Invalid readableType specified");if(void 0!==g.writableType)throw RangeError("Invalid writableType specified");let h=aM(f,0),i=aN(f),n=aM(e,1),o=aN(e);!function(a,b,c,d,e,f){var g,h,i;function k(){return b}a._writableState="writable",a._writableStoredError=void 0,a._writableHasInFlightOperation=!1,a._writableStarted=!1,g=function(b){let c=a._transformStreamController;return a._backpressure?m(a._backpressureChangePromise,()=>{if("erroring"===(aR(a._writable)?a._writable._state:a._writableState))throw aR(a._writable)?a._writable._storedError:a._writableStoredError;return bW(c,b)},void 0):bW(c,b)},h=function(){var b=a;let c=b._transformStreamController,d=c._flushAlgorithm();return bU(c),m(d,()=>{if("errored"===b._readableState)throw b._readableStoredError;bZ(b)&&b$(b)},a=>{throw bP(b,a),b._readableStoredError})},a._writable=new aQ({start(b){a._writableController=b;try{let c=b.signal;void 0!==c&&c.addEventListener("abort",()=>{"writable"===a._writableState&&(a._writableState="erroring",c.reason&&(a._writableStoredError=c.reason))})}catch(a){}return m(k(),()=>(a._writableStarted=!0,b4(a),null),b=>{throw a._writableStarted=!0,b1(a,b),b})},write:b=>(a._writableHasInFlightOperation=!0,m(g(b),()=>(a._writableHasInFlightOperation=!1,b4(a),null),b=>{throw a._writableHasInFlightOperation=!1,b1(a,b),b})),close:()=>(a._writableHasInFlightOperation=!0,m(h(),()=>(a._writableHasInFlightOperation=!1,"erroring"===a._writableState&&(a._writableStoredError=void 0),a._writableState="closed",null),b=>{throw a._writableHasInFlightOperation=!1,a._writableState,b1(a,b),b})),abort:b=>(a._writableState="errored",a._writableStoredError=b,function(b){return bP(a,b),j(void 0)}(b))},{highWaterMark:c,size:d}),a._readableState="readable",a._readableStoredError=void 0,a._readableCloseRequested=!1,a._readablePulling=!1,i=function(){return bR(a,!1),a._backpressureChangePromise},a._readable=new bx({start:b=>(a._readableController=b,k().catch(b=>{b_(a,b)})),pull:()=>(a._readablePulling=!0,i().catch(b=>{b_(a,b)})),cancel:b=>(a._readableState="closed",function(b){return bQ(a,b),j(void 0)}(b))},{highWaterMark:e,size:f}),a._backpressure=void 0,a._backpressureChangePromise=void 0,a._backpressureChangePromise_resolve=void 0,bR(a,!0),a._transformStreamController=void 0}(this,l(a=>{d=a}),n,o,h,i),function(a,b){let c,d,e=Object.create(bS.prototype);c=void 0!==b.transform?a=>b.transform(a,e):a=>{try{var b;return bV(e,a),b=void 0,j(b)}catch(a){return k(a)}},d=void 0!==b.flush?()=>b.flush(e):()=>j(void 0),e._controlledTransformStream=a,a._transformStreamController=e,e._transformAlgorithm=c,e._flushAlgorithm=d}(this,g),void 0!==g.start?d(g.start(this._transformStreamController)):d(void 0)}get readable(){if(!bO(this))throw bY("readable");return this._readable}get writable(){if(!bO(this))throw bY("writable");return this._writable}}function bO(a){return!!f(a)&&!!Object.prototype.hasOwnProperty.call(a,"_transformStreamController")&&a instanceof bN}function bP(a,b){b_(a,b),bQ(a,b)}function bQ(a,b){bU(a._transformStreamController),a._writableController.error(b),"writable"===a._writableState&&b2(a,b),a._backpressure&&bR(a,!1)}function bR(a,b){void 0!==a._backpressureChangePromise&&a._backpressureChangePromise_resolve(),a._backpressureChangePromise=l(b=>{a._backpressureChangePromise_resolve=b}),a._backpressure=b}Object.defineProperties(bN.prototype,{readable:{enumerable:!0},writable:{enumerable:!0}}),"symbol"==typeof d.toStringTag&&Object.defineProperty(bN.prototype,d.toStringTag,{value:"TransformStream",configurable:!0});class bS{constructor(){throw TypeError("Illegal constructor")}get desiredSize(){if(!bT(this))throw bX("desiredSize");return b0(this._controlledTransformStream)}enqueue(a){if(!bT(this))throw bX("enqueue");bV(this,a)}error(a){if(!bT(this))throw bX("error");bP(this._controlledTransformStream,a)}terminate(){if(!bT(this))throw bX("terminate");let a=this._controlledTransformStream;bZ(a)&&b$(a),bQ(a,TypeError("TransformStream terminated"))}}function bT(a){return!!f(a)&&!!Object.prototype.hasOwnProperty.call(a,"_controlledTransformStream")&&a instanceof bS}function bU(a){a._transformAlgorithm=void 0,a._flushAlgorithm=void 0}function bV(a,b){let c=a._controlledTransformStream;if(!bZ(c))throw TypeError("Readable side is not in a state that permits enqueue");try{c._readablePulling=!1;try{c._readableController.enqueue(b)}catch(a){throw b_(c,a),a}}catch(a){throw bQ(c,a),c._readableStoredError}!(bZ(c)&&(c._readablePulling||b0(c)>0))!==c._backpressure&&bR(c,!0)}function bW(a,b){return m(a._transformAlgorithm(b),void 0,b=>{throw bP(a._controlledTransformStream,b),b})}function bX(a){return TypeError(`TransformStreamDefaultController.prototype.${a} can only be used on a TransformStreamDefaultController`)}function bY(a){return TypeError(`TransformStream.prototype.${a} can only be used on a TransformStream`)}function bZ(a){return!a._readableCloseRequested&&"readable"===a._readableState}function b$(a){a._readableState="closed",a._readableCloseRequested=!0,a._readableController.close()}function b_(a,b){"readable"===a._readableState&&(a._readableState="errored",a._readableStoredError=b),a._readableController.error(b)}function b0(a){return a._readableController.desiredSize}function b1(a,b){"writable"!==a._writableState?b3(a):b2(a,b)}function b2(a,b){a._writableState="erroring",a._writableStoredError=b,!a._writableHasInFlightOperation&&a._writableStarted&&b3(a)}function b3(a){a._writableState="errored"}function b4(a){"erroring"===a._writableState&&b3(a)}Object.defineProperties(bS.prototype,{enqueue:{enumerable:!0},error:{enumerable:!0},terminate:{enumerable:!0},desiredSize:{enumerable:!0}}),g(bS.prototype.enqueue,"enqueue"),g(bS.prototype.error,"error"),g(bS.prototype.terminate,"terminate"),"symbol"==typeof d.toStringTag&&Object.defineProperty(bS.prototype,d.toStringTag,{value:"TransformStreamDefaultController",configurable:!0});var b5,b6,b7,b8=c(91527);async function*b9(a){let b=a.byteOffset+a.byteLength,c=a.byteOffset;for(;c!==b;){let d=Math.min(b-c,65536),e=a.buffer.slice(c,c+d);c+=e.byteLength,yield new Uint8Array(e)}}async function*ca(a){let b=0;for(;b!==a.size;){let c=a.slice(b,Math.min(a.size,b+65536)),d=await c.arrayBuffer();b+=d.byteLength,yield new Uint8Array(d)}}async function*cb(a,b=!1){for(let c of a)ArrayBuffer.isView(c)?b?yield*b9(c):yield c:(0,b8.T)(c.stream)?yield*c.stream():yield*ca(c)}var cc=function(a,b,c,d){if("a"===c&&!d)throw TypeError("Private accessor was defined without a getter");if("function"==typeof b?a!==b||!d:!b.has(a))throw TypeError("Cannot read private member from an object whose class did not declare it");return"m"===c?d:"a"===c?d.call(a):d?d.value:b.get(a)},cd=function(a,b,c,d,e){if("m"===d)throw TypeError("Private method is not writable");if("a"===d&&!e)throw TypeError("Private accessor was defined without a setter");if("function"==typeof b?a!==b||!e:!b.has(a))throw TypeError("Cannot write private member to an object whose class did not declare it");return"a"===d?e.call(a,c):e?e.value=c:b.set(a,c),c};class ce{constructor(a=[],b={}){if(b5.set(this,[]),b6.set(this,""),b7.set(this,0),null!=b||(b={}),"object"!=typeof a||null===a)throw TypeError("Failed to construct 'Blob': The provided value cannot be converted to a sequence.");if(!(0,b8.T)(a[Symbol.iterator]))throw TypeError("Failed to construct 'Blob': The object must have a callable @@iterator property.");if("object"!=typeof b&&!(0,b8.T)(b))throw TypeError("Failed to construct 'Blob': parameter 2 cannot convert to dictionary.");let c=new TextEncoder;for(let b of a){let a;a=ArrayBuffer.isView(b)?new Uint8Array(b.buffer.slice(b.byteOffset,b.byteOffset+b.byteLength)):b instanceof ArrayBuffer?new Uint8Array(b.slice(0)):b instanceof ce?b:c.encode(String(b)),cd(this,b7,cc(this,b7,"f")+(ArrayBuffer.isView(a)?a.byteLength:a.size),"f"),cc(this,b5,"f").push(a)}let d=void 0===b.type?"":String(b.type);cd(this,b6,/^[\x20-\x7E]*$/.test(d)?d:"","f")}static[(b5=new WeakMap,b6=new WeakMap,b7=new WeakMap,Symbol.hasInstance)](a){return!!(a&&"object"==typeof a&&(0,b8.T)(a.constructor)&&((0,b8.T)(a.stream)||(0,b8.T)(a.arrayBuffer))&&/^(Blob|File)$/.test(a[Symbol.toStringTag]))}get type(){return cc(this,b6,"f")}get size(){return cc(this,b7,"f")}slice(a,b,c){return new ce(function*(a,b,c=0,d){null!=d||(d=b);let e=c<0?Math.max(b+c,0):Math.min(c,b),f=d<0?Math.max(b+d,0):Math.min(d,b),g=Math.max(f-e,0),h=0;for(let b of a){if(h>=g)break;let a=ArrayBuffer.isView(b)?b.byteLength:b.size;if(e&&a<=e)e-=a,f-=a;else{let c;ArrayBuffer.isView(b)?h+=(c=b.subarray(e,Math.min(a,f))).byteLength:h+=(c=b.slice(e,Math.min(a,f))).size,f-=a,e=0,yield c}}}(cc(this,b5,"f"),this.size,a,b),{type:c})}async text(){let a=new TextDecoder,b="";for await(let c of cb(cc(this,b5,"f")))b+=a.decode(c,{stream:!0});return b+a.decode()}async arrayBuffer(){let a=new Uint8Array(this.size),b=0;for await(let c of cb(cc(this,b5,"f")))a.set(c,b),b+=c.length;return a.buffer}stream(){let a=cb(cc(this,b5,"f"),!0);return new bx({async pull(b){let{value:c,done:d}=await a.next();if(d)return queueMicrotask(()=>b.close());b.enqueue(c)},async cancel(){await a.return()}})}get[Symbol.toStringTag](){return"Blob"}}Object.defineProperties(ce.prototype,{type:{enumerable:!0},size:{enumerable:!0},slice:{enumerable:!0},stream:{enumerable:!0},text:{enumerable:!0},arrayBuffer:{enumerable:!0}})},94672:(a,b,c)=>{"use strict";var d="undefined"!=typeof Symbol&&Symbol,e=c(11870);a.exports=function(){return"function"==typeof d&&"function"==typeof Symbol&&"symbol"==typeof d("foo")&&"symbol"==typeof Symbol("bar")&&e()}},96239:(a,b,c)=>{"use strict";let{Writable:d}=c(27910),e=c(74240),{BINARY_TYPES:f,EMPTY_BUFFER:g,kStatusCode:h,kWebSocket:i}=c(32995),{concat:j,toArrayBuffer:k,unmask:l}=c(27047),{isValidStatusCode:m,isValidUTF8:n}=c(26649),o=Buffer[Symbol.species];class p extends d{constructor(a={}){super(),this._allowSynchronousEvents=void 0===a.allowSynchronousEvents||a.allowSynchronousEvents,this._binaryType=a.binaryType||f[0],this._extensions=a.extensions||{},this._isServer=!!a.isServer,this._maxBufferedChunks=0|a.maxBufferedChunks,this._maxFragments=0|a.maxFragments,this._maxPayload=0|a.maxPayload,this._skipUTF8Validation=!!a.skipUTF8Validation,this[i]=void 0,this._bufferedBytes=0,this._buffers=[],this._compressed=!1,this._payloadLength=0,this._mask=void 0,this._fragmented=0,this._masked=!1,this._fin=!1,this._opcode=0,this._totalPayloadLength=0,this._messageLength=0,this._fragments=[],this._errored=!1,this._loop=!1,this._state=0}_write(a,b,c){return 8===this._opcode&&0==this._state?c():this._maxBufferedChunks>0&&this._buffers.length>=this._maxBufferedChunks?void c(this.createError(RangeError,"Too many buffered chunks",!1,1008,"WS_ERR_TOO_MANY_BUFFERED_PARTS")):void(this._bufferedBytes+=a.length,this._buffers.push(a),this.startLoop(c))}consume(a){if(this._bufferedBytes-=a,a===this._buffers[0].length)return this._buffers.shift();if(a<this._buffers[0].length){let b=this._buffers[0];return this._buffers[0]=new o(b.buffer,b.byteOffset+a,b.length-a),new o(b.buffer,b.byteOffset,a)}let b=Buffer.allocUnsafe(a);do{let c=this._buffers[0],d=b.length-a;a>=c.length?b.set(this._buffers.shift(),d):(b.set(new Uint8Array(c.buffer,c.byteOffset,a),d),this._buffers[0]=new o(c.buffer,c.byteOffset+a,c.length-a)),a-=c.length}while(a>0);return b}startLoop(a){this._loop=!0;do switch(this._state){case 0:this.getInfo(a);break;case 1:this.getPayloadLength16(a);break;case 2:this.getPayloadLength64(a);break;case 3:this.getMask();break;case 4:this.getData(a);break;case 5:case 6:this._loop=!1;return}while(this._loop);this._errored||a()}getInfo(a){if(this._bufferedBytes<2){this._loop=!1;return}let b=this.consume(2);if((48&b[0])!=0)return void a(this.createError(RangeError,"RSV2 and RSV3 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_2_3"));let c=(64&b[0])==64;if(c&&!this._extensions[e.extensionName])return void a(this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1"));if(this._fin=(128&b[0])==128,this._opcode=15&b[0],this._payloadLength=127&b[1],0===this._opcode){if(c)return void a(this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1"));if(!this._fragmented)return void a(this.createError(RangeError,"invalid opcode 0",!0,1002,"WS_ERR_INVALID_OPCODE"));this._opcode=this._fragmented}else if(1===this._opcode||2===this._opcode){if(this._fragmented)return void a(this.createError(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE"));this._compressed=c}else{if(!(this._opcode>7)||!(this._opcode<11))return void a(this.createError(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE"));if(!this._fin)return void a(this.createError(RangeError,"FIN must be set",!0,1002,"WS_ERR_EXPECTED_FIN"));if(c)return void a(this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1"));if(this._payloadLength>125||8===this._opcode&&1===this._payloadLength)return void a(this.createError(RangeError,`invalid payload length ${this._payloadLength}`,!0,1002,"WS_ERR_INVALID_CONTROL_PAYLOAD_LENGTH"))}if(this._fin||this._fragmented||(this._fragmented=this._opcode),this._masked=(128&b[1])==128,this._isServer){if(!this._masked)return void a(this.createError(RangeError,"MASK must be set",!0,1002,"WS_ERR_EXPECTED_MASK"))}else if(this._masked)return void a(this.createError(RangeError,"MASK must be clear",!0,1002,"WS_ERR_UNEXPECTED_MASK"));126===this._payloadLength?this._state=1:127===this._payloadLength?this._state=2:this.haveLength(a)}getPayloadLength16(a){if(this._bufferedBytes<2){this._loop=!1;return}this._payloadLength=this.consume(2).readUInt16BE(0),this.haveLength(a)}getPayloadLength64(a){if(this._bufferedBytes<8){this._loop=!1;return}let b=this.consume(8),c=b.readUInt32BE(0);if(c>2097151)return void a(this.createError(RangeError,"Unsupported WebSocket frame: payload length > 2^53 - 1",!1,1009,"WS_ERR_UNSUPPORTED_DATA_PAYLOAD_LENGTH"));this._payloadLength=0x100000000*c+b.readUInt32BE(4),this.haveLength(a)}haveLength(a){if(this._payloadLength&&this._opcode<8&&(this._totalPayloadLength+=this._payloadLength,this._totalPayloadLength>this._maxPayload&&this._maxPayload>0))return void a(this.createError(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH"));this._masked?this._state=3:this._state=4}getMask(){if(this._bufferedBytes<4){this._loop=!1;return}this._mask=this.consume(4),this._state=4}getData(a){let b=g;if(this._payloadLength){if(this._bufferedBytes<this._payloadLength){this._loop=!1;return}b=this.consume(this._payloadLength),this._masked&&(this._mask[0]|this._mask[1]|this._mask[2]|this._mask[3])!=0&&l(b,this._mask)}if(this._opcode>7)return void this.controlMessage(b,a);if(this._compressed){this._state=5,this.decompress(b,a);return}if(b.length){if(this._maxFragments>0&&this._fragments.length>=this._maxFragments)return void a(this.createError(RangeError,"Too many message fragments",!1,1008,"WS_ERR_TOO_MANY_BUFFERED_PARTS"));this._messageLength=this._totalPayloadLength,this._fragments.push(b)}this.dataMessage(a)}decompress(a,b){this._extensions[e.extensionName].decompress(a,this._fin,(a,c)=>{if(a)return b(a);if(c.length){if(this._messageLength+=c.length,this._messageLength>this._maxPayload&&this._maxPayload>0)return void b(this.createError(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH"));if(this._maxFragments>0&&this._fragments.length>=this._maxFragments)return void b(this.createError(RangeError,"Too many message fragments",!1,1008,"WS_ERR_TOO_MANY_BUFFERED_PARTS"));this._fragments.push(c)}this.dataMessage(b),0===this._state&&this.startLoop(b)})}dataMessage(a){if(!this._fin){this._state=0;return}let b=this._messageLength,c=this._fragments;if(this._totalPayloadLength=0,this._messageLength=0,this._fragmented=0,this._fragments=[],2===this._opcode){let d;d="nodebuffer"===this._binaryType?j(c,b):"arraybuffer"===this._binaryType?k(j(c,b)):"blob"===this._binaryType?new Blob(c):c,this._allowSynchronousEvents?(this.emit("message",d,!0),this._state=0):(this._state=6,setImmediate(()=>{this.emit("message",d,!0),this._state=0,this.startLoop(a)}))}else{let d=j(c,b);if(!this._skipUTF8Validation&&!n(d))return void a(this.createError(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8"));5===this._state||this._allowSynchronousEvents?(this.emit("message",d,!1),this._state=0):(this._state=6,setImmediate(()=>{this.emit("message",d,!1),this._state=0,this.startLoop(a)}))}}controlMessage(a,b){if(8===this._opcode){if(0===a.length)this._loop=!1,this.emit("conclude",1005,g),this.end();else{let c=a.readUInt16BE(0);if(!m(c))return void b(this.createError(RangeError,`invalid status code ${c}`,!0,1002,"WS_ERR_INVALID_CLOSE_CODE"));let d=new o(a.buffer,a.byteOffset+2,a.length-2);if(!this._skipUTF8Validation&&!n(d))return void b(this.createError(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8"));this._loop=!1,this.emit("conclude",c,d),this.end()}this._state=0;return}this._allowSynchronousEvents?(this.emit(9===this._opcode?"ping":"pong",a),this._state=0):(this._state=6,setImmediate(()=>{this.emit(9===this._opcode?"ping":"pong",a),this._state=0,this.startLoop(b)}))}createError(a,b,c,d,e){this._loop=!1,this._errored=!0;let f=new a(c?`Invalid WebSocket frame: ${b}`:b);return Error.captureStackTrace(f,this.createError),f.code=e,f[h]=d,f}}a.exports=p},96655:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"MISSING_ROOT_TAGS_ERROR",{enumerable:!0,get:function(){return c}});let c="NEXT_MISSING_ROOT_TAGS";("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},96698:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.GoogleAuth=b.GoogleAuthExceptionMessages=void 0;let d=c(79646),e=c(29021),f=c(79792),g=c(70916),h=c(21820),i=c(33873),j=c(88593),k=c(745),l=c(58500),m=c(25203),n=c(74829),o=c(31995),p=c(83e3),q=c(93209),r=c(35294),s=c(49502),t=c(29694),u=c(24420),v=c(45388);b.GoogleAuthExceptionMessages={API_KEY_WITH_CREDENTIALS:"API Keys and Credentials are mutually exclusive authentication methods and cannot be used together.",NO_PROJECT_ID_FOUND:"Unable to detect a Project Id in the current environment. \nTo learn more about authentication and Google APIs, visit: \nhttps://cloud.google.com/docs/authentication/getting-started",NO_CREDENTIALS_FOUND:"Unable to find credentials in current environment. \nTo learn more about authentication and Google APIs, visit: \nhttps://cloud.google.com/docs/authentication/getting-started",NO_ADC_FOUND:"Could not load the default credentials. Browse to https://cloud.google.com/docs/authentication/getting-started for more information.",NO_UNIVERSE_DOMAIN_FOUND:"Unable to detect a Universe Domain in the current environment.\nTo learn more about Universe Domain retrieval, visit: \nhttps://cloud.google.com/compute/docs/metadata/predefined-metadata-keys"};class w{checkIsGCE=void 0;useJWTAccessWithScope;defaultServicePath;get isGCE(){return this.checkIsGCE}_findProjectIdPromise;_cachedProjectId;jsonContent=null;apiKey;cachedCredential=null;#C=null;defaultScopes;keyFilename;scopes;clientOptions={};constructor(a={}){if(this._cachedProjectId=a.projectId||null,this.cachedCredential=a.authClient||null,this.keyFilename=a.keyFilename||a.keyFile,this.scopes=a.scopes,this.clientOptions=a.clientOptions||{},this.jsonContent=a.credentials||null,this.apiKey=a.apiKey||this.clientOptions.apiKey||null,this.apiKey&&(this.jsonContent||this.clientOptions.credentials))throw RangeError(b.GoogleAuthExceptionMessages.API_KEY_WITH_CREDENTIALS);a.universeDomain&&(this.clientOptions.universeDomain=a.universeDomain)}setGapicJWTValues(a){a.defaultServicePath=this.defaultServicePath,a.useJWTAccessWithScope=this.useJWTAccessWithScope,a.defaultScopes=this.defaultScopes}getProjectId(a){if(!a)return this.getProjectIdAsync();this.getProjectIdAsync().then(b=>a(null,b),a)}async getProjectIdOptional(){try{return await this.getProjectId()}catch(a){if(a instanceof Error&&a.message===b.GoogleAuthExceptionMessages.NO_PROJECT_ID_FOUND)return null;throw a}}async findAndCacheProjectId(){let a=null;if(a||=await this.getProductionProjectId(),a||=await this.getFileProjectId(),a||=await this.getDefaultServiceProjectId(),a||=await this.getGCEProjectId(),a||=await this.getExternalAccountClientProjectId())return this._cachedProjectId=a,a;throw Error(b.GoogleAuthExceptionMessages.NO_PROJECT_ID_FOUND)}async getProjectIdAsync(){return this._cachedProjectId?this._cachedProjectId:(this._findProjectIdPromise||(this._findProjectIdPromise=this.findAndCacheProjectId()),this._findProjectIdPromise)}async getUniverseDomainFromMetadataServer(){let a;try{a=await g.universe("universe-domain"),a||=s.DEFAULT_UNIVERSE}catch(b){if(b&&b?.response?.status===404)a=s.DEFAULT_UNIVERSE;else throw b}return a}async getUniverseDomain(){let a=(0,v.originalOrCamelOptions)(this.clientOptions).get("universe_domain");try{a??=(await this.getClient()).universeDomain}catch{a??=s.DEFAULT_UNIVERSE}return a}getAnyScopes(){return this.scopes||this.defaultScopes}getApplicationDefault(a={},b){let c;if("function"==typeof a?b=a:c=a,!b)return this.getApplicationDefaultAsync(c);this.getApplicationDefaultAsync(c).then(a=>b(null,a.credential,a.projectId),b)}async getApplicationDefaultAsync(a={}){let c;if(this.cachedCredential)return await this.#D(this.cachedCredential,null);if((c=await this._tryGetApplicationCredentialsFromEnvironmentVariable(a))||(c=await this._tryGetApplicationCredentialsFromWellKnownFile(a)))return c instanceof n.JWT?c.scopes=this.scopes:c instanceof r.BaseExternalAccountClient&&(c.scopes=this.getAnyScopes()),await this.#D(c);if(await this._checkIsGCE())return a.scopes=this.getAnyScopes(),await this.#D(new k.Compute(a));throw Error(b.GoogleAuthExceptionMessages.NO_ADC_FOUND)}async #D(a,b=process.env.GOOGLE_CLOUD_QUOTA_PROJECT||null){let c=await this.getProjectIdOptional();return b&&(a.quotaProjectId=b),this.cachedCredential=a,{credential:a,projectId:c}}async _checkIsGCE(){return void 0===this.checkIsGCE&&(this.checkIsGCE=g.getGCPResidency()||await g.isAvailable()),this.checkIsGCE}async _tryGetApplicationCredentialsFromEnvironmentVariable(a){let b=process.env.GOOGLE_APPLICATION_CREDENTIALS||process.env.google_application_credentials;if(!b||0===b.length)return null;try{return this._getApplicationCredentialsFromFilePath(b,a)}catch(a){throw a instanceof Error&&(a.message=`Unable to read the credential file specified by the GOOGLE_APPLICATION_CREDENTIALS environment variable: ${a.message}`),a}}async _tryGetApplicationCredentialsFromWellKnownFile(a){let b=null;if(this._isWindows())b=process.env.APPDATA;else{let a=process.env.HOME;a&&(b=i.join(a,".config"))}return(b&&(b=i.join(b,"gcloud","application_default_credentials.json"),e.existsSync(b)||(b=null)),b)?await this._getApplicationCredentialsFromFilePath(b,a):null}async _getApplicationCredentialsFromFilePath(a,b={}){if(!a||0===a.length)throw Error("The file path is invalid.");try{if(a=e.realpathSync(a),!e.lstatSync(a).isFile())throw Error()}catch(b){throw b instanceof Error&&(b.message=`The file at ${a} does not exist, or it is not a file. ${b.message}`),b}let c=e.createReadStream(a);return this.fromStream(c,b)}fromImpersonatedJSON(a){if(!a)throw Error("Must pass in a JSON object containing an impersonated refresh token");if(a.type!==p.IMPERSONATED_ACCOUNT_TYPE)throw Error(`The incoming JSON object does not have the "${p.IMPERSONATED_ACCOUNT_TYPE}" type`);if(!a.source_credentials)throw Error("The incoming JSON object does not contain a source_credentials field");if(!a.service_account_impersonation_url)throw Error("The incoming JSON object does not contain a service_account_impersonation_url field");let b=this.fromJSON(a.source_credentials);if(a.service_account_impersonation_url?.length>256)throw RangeError(`Target principal is too long: ${a.service_account_impersonation_url}`);let c=/(?<target>[^/]+):(generateAccessToken|generateIdToken)$/.exec(a.service_account_impersonation_url)?.groups?.target;if(!c)throw RangeError(`Cannot extract target principal from ${a.service_account_impersonation_url}`);let d=(this.scopes||a.scopes||this.defaultScopes)??[];return new p.Impersonated({...a,sourceClient:b,targetPrincipal:c,targetScopes:Array.isArray(d)?d:[d]})}fromJSON(a,b={}){let c,d=(0,v.originalOrCamelOptions)(b).get("universe_domain");return a.type===o.USER_REFRESH_ACCOUNT_TYPE?(c=new o.UserRefreshClient(b)).fromJSON(a):a.type===p.IMPERSONATED_ACCOUNT_TYPE?c=this.fromImpersonatedJSON(a):a.type===r.EXTERNAL_ACCOUNT_TYPE?(c=q.ExternalAccountClient.fromJSON({...a,...b})).scopes=this.getAnyScopes():a.type===t.EXTERNAL_ACCOUNT_AUTHORIZED_USER_TYPE?c=new t.ExternalAccountAuthorizedUserClient({...a,...b}):a.type===u.GDCH_SERVICE_ACCOUNT_TYPE?(c=new u.GdchClient(b)).fromJSON(a):(b.scopes=this.scopes,c=new n.JWT(b),this.setGapicJWTValues(c),c.fromJSON(a)),d&&(c.universeDomain=d),c}_cacheClientFromJSON(a,b){let c=this.fromJSON(a,b);return this.jsonContent=a,this.cachedCredential=c,c}fromStream(a,b={},c){let d={};if("function"==typeof b?c=b:d=b,!c)return this.fromStreamAsync(a,d);this.fromStreamAsync(a,d).then(a=>c(null,a),c)}fromStreamAsync(a,b){return new Promise((c,d)=>{if(!a)throw Error("Must pass in a stream containing the Google auth settings.");let e=[];a.setEncoding("utf8").on("error",d).on("data",a=>e.push(a)).on("end",()=>{try{try{let a=JSON.parse(e.join("")),d=this._cacheClientFromJSON(a,b);return c(d)}catch(b){if(!this.keyFilename)throw b;let a=new n.JWT({...this.clientOptions,keyFile:this.keyFilename});return this.cachedCredential=a,this.setGapicJWTValues(a),c(a)}}catch(a){return d(a)}})})}fromAPIKey(a,b={}){return new n.JWT({...b,apiKey:a})}_isWindows(){let a=h.platform();return!!a&&!!(a.length>=3)&&"win"===a.substring(0,3).toLowerCase()}async getDefaultServiceProjectId(){return new Promise(a=>{(0,d.exec)("gcloud config config-helper --format json",(b,c)=>{if(!b&&c)try{let b=JSON.parse(c).configuration.properties.core.project;a(b);return}catch(a){}a(null)})})}getProductionProjectId(){return process.env.GCLOUD_PROJECT||process.env.GOOGLE_CLOUD_PROJECT||process.env.gcloud_project||process.env.google_cloud_project}async getFileProjectId(){if(this.cachedCredential)return this.cachedCredential.projectId;if(this.keyFilename){let a=await this.getClient();if(a&&a.projectId)return a.projectId}let a=await this._tryGetApplicationCredentialsFromEnvironmentVariable();return a?a.projectId:null}async getExternalAccountClientProjectId(){if(!this.jsonContent||this.jsonContent.type!==r.EXTERNAL_ACCOUNT_TYPE)return null;let a=await this.getClient();return await a.getProjectId()}async getGCEProjectId(){try{return await g.project("project-id")}catch(a){return null}}getCredentials(a){if(!a)return this.getCredentialsAsync();this.getCredentialsAsync().then(b=>a(null,b),a)}async getCredentialsAsync(){let a=await this.getClient();if(a instanceof p.Impersonated)return{client_email:a.getTargetPrincipal()};if(a instanceof r.BaseExternalAccountClient){let b=a.getServiceAccountEmail();if(b)return{client_email:b,universe_domain:a.universeDomain}}if(this.jsonContent)return{client_email:this.jsonContent.client_email,private_key:this.jsonContent.private_key,universe_domain:this.jsonContent.universe_domain};if(await this._checkIsGCE()){let[a,b]=await Promise.all([g.instance("service-accounts/default/email"),this.getUniverseDomain()]);return{client_email:a,universe_domain:b}}throw Error(b.GoogleAuthExceptionMessages.NO_CREDENTIALS_FOUND)}async getClient(){if(this.cachedCredential)return this.cachedCredential;this.#C=this.#C||this.#E();try{let a=await this.#C;if(a instanceof u.GdchClient&&!a.apiAudience){let b=this.clientOptions,c=b.apiEndpoint||b.servicePath;if(c){let b=c.startsWith("http")?"":"https://",d=`${b}${c}/`.replace(/\/+$/,"/"),e=a.createWithGdchAudience(d);return this.cachedCredential=e,e}}return a}finally{this.#C=null}}async #E(){if(this.jsonContent)return this._cacheClientFromJSON(this.jsonContent,this.clientOptions);if(this.keyFilename){let a=i.resolve(this.keyFilename),b=e.createReadStream(a);return await this.fromStreamAsync(b,this.clientOptions)}if(this.apiKey){let a=await this.fromAPIKey(this.apiKey,this.clientOptions);a.scopes=this.scopes;let{credential:b}=await this.#D(a);return b}{let{credential:a}=await this.getApplicationDefaultAsync(this.clientOptions);return a}}async getIdTokenClient(a){let b=await this.getClient();if(!("fetchIdToken"in b))throw Error("Cannot fetch ID token in this environment, use GCE or set the GOOGLE_APPLICATION_CREDENTIALS environment variable to a service account credentials JSON file.");return new l.IdTokenClient({targetAudience:a,idTokenProvider:b})}async getAccessToken(){let a=await this.getClient();return(await a.getAccessToken()).token}async getRequestHeaders(a){return(await this.getClient()).getRequestHeaders(a)}async authorizeRequest(a={}){let b=a.url,c=await this.getClient(),d=await c.getRequestHeaders(b);return a.headers=f.Gaxios.mergeHeaders(a.headers,d),a}async fetch(...a){return(await this.getClient()).fetch(...a)}async request(a){return(await this.getClient()).request(a)}getEnv(){return(0,m.getEnv)()}async sign(a,b){let c=await this.getClient(),d=await this.getUniverseDomain();if(b=b||`https://iamcredentials.${d}/v1/projects/-/serviceAccounts/`,c instanceof p.Impersonated)return(await c.sign(a)).signedBlob;let e=(0,j.createCrypto)();if(c instanceof n.JWT&&c.key)return await e.sign(c.key,a);let f=await this.getCredentials();if(!f.client_email)throw Error("Cannot sign data without `client_email`.");return this.signBlob(e,f.client_email,a,b)}async signBlob(a,b,c,d){let e=new URL(d+`${b}:signBlob`);return(await this.request({method:"POST",url:e.href,data:{payload:a.encodeBase64StringUtf8(c)},retry:!0,retryConfig:{httpMethodsToRetry:["POST"]}})).data.signedBlob}}b.GoogleAuth=w},97025:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.validateUnion=b.validateArray=b.usePattern=b.callValidateCode=b.schemaProperties=b.allSchemaProperties=b.noPropertyInData=b.propertyInData=b.isOwnProperty=b.hasPropFunc=b.reportMissingProp=b.checkMissingProp=b.checkReportMissingProp=void 0;let d=c(31849),e=c(83593),f=c(60359),g=c(83593);function h(a){return a.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,d._)`Object.prototype.hasOwnProperty`})}function i(a,b,c){return(0,d._)`${h(a)}.call(${b}, ${c})`}function j(a,b,c,e){let f=(0,d._)`${b}${(0,d.getProperty)(c)} === undefined`;return e?(0,d.or)(f,(0,d.not)(i(a,b,c))):f}function k(a){return a?Object.keys(a).filter(a=>"__proto__"!==a):[]}b.checkReportMissingProp=function(a,b){let{gen:c,data:e,it:f}=a;c.if(j(c,e,b,f.opts.ownProperties),()=>{a.setParams({missingProperty:(0,d._)`${b}`},!0),a.error()})},b.checkMissingProp=function({gen:a,data:b,it:{opts:c}},e,f){return(0,d.or)(...e.map(e=>(0,d.and)(j(a,b,e,c.ownProperties),(0,d._)`${f} = ${e}`)))},b.reportMissingProp=function(a,b){a.setParams({missingProperty:b},!0),a.error()},b.hasPropFunc=h,b.isOwnProperty=i,b.propertyInData=function(a,b,c,e){let f=(0,d._)`${b}${(0,d.getProperty)(c)} !== undefined`;return e?(0,d._)`${f} && ${i(a,b,c)}`:f},b.noPropertyInData=j,b.allSchemaProperties=k,b.schemaProperties=function(a,b){return k(b).filter(c=>!(0,e.alwaysValidSchema)(a,b[c]))},b.callValidateCode=function({schemaCode:a,data:b,it:{gen:c,topSchemaRef:e,schemaPath:g,errorPath:h},it:i},j,k,l){let m=l?(0,d._)`${a}, ${b}, ${e}${g}`:b,n=[[f.default.instancePath,(0,d.strConcat)(f.default.instancePath,h)],[f.default.parentData,i.parentData],[f.default.parentDataProperty,i.parentDataProperty],[f.default.rootData,f.default.rootData]];i.opts.dynamicRef&&n.push([f.default.dynamicAnchors,f.default.dynamicAnchors]);let o=(0,d._)`${m}, ${c.object(...n)}`;return k!==d.nil?(0,d._)`${j}.call(${k}, ${o})`:(0,d._)`${j}(${o})`};let l=(0,d._)`new RegExp`;b.usePattern=function({gen:a,it:{opts:b}},c){let e=b.unicodeRegExp?"u":"",{regExp:f}=b.code,h=f(c,e);return a.scopeValue("pattern",{key:h.toString(),ref:h,code:(0,d._)`${"new RegExp"===f.code?l:(0,g.useFunc)(a,f)}(${c}, ${e})`})},b.validateArray=function(a){let{gen:b,data:c,keyword:f,it:g}=a,h=b.name("valid");if(g.allErrors){let a=b.let("valid",!0);return i(()=>b.assign(a,!1)),a}return b.var(h,!0),i(()=>b.break()),h;function i(g){let i=b.const("len",(0,d._)`${c}.length`);b.forRange("i",0,i,c=>{a.subschema({keyword:f,dataProp:c,dataPropType:e.Type.Num},h),b.if((0,d.not)(h),g)})}},b.validateUnion=function(a){let{gen:b,schema:c,keyword:f,it:g}=a;if(!Array.isArray(c))throw Error("ajv implementation error");if(c.some(a=>(0,e.alwaysValidSchema)(g,a))&&!g.opts.unevaluated)return;let h=b.let("valid",!1),i=b.name("_valid");b.block(()=>c.forEach((c,e)=>{let g=a.subschema({keyword:f,schemaProp:e,compositeRule:!0},i);b.assign(h,(0,d._)`${h} || ${i}`),a.mergeValidEvaluated(g,i)||b.if((0,d.not)(h))})),a.result(h,()=>a.reset(),()=>a.error(!0))}},97161:a=>{"use strict";a.exports.mixin=function(a,b){let c=Object.getOwnPropertyNames(b);for(let d=0;d<c.length;++d)Object.defineProperty(a,c[d],Object.getOwnPropertyDescriptor(b,c[d]))},a.exports.wrapperSymbol=Symbol("wrapper"),a.exports.implSymbol=Symbol("impl"),a.exports.wrapperForImpl=function(b){return b[a.exports.wrapperSymbol]},a.exports.implForWrapper=function(b){return b[a.exports.implSymbol]}},97236:a=>{"use strict";a.exports="undefined"!=typeof Reflect&&Reflect&&Reflect.apply},97250:(a,b,c)=>{"undefined"==typeof process||"renderer"===process.type||process.__nwjs?a.exports=c(81278):a.exports=c(35730)},97832:(a,b,c)=>{"use strict";c.d(b,{Do:()=>x,pF:()=>w,hO:()=>s,Gz:()=>y,C3:()=>A,eS:()=>z});var d=c(16977),e=c.n(d),f=c(79111),g=c(89392),h=c(18230);let i=(0,h.h)("utils/encryption/session"),j=global.__flujo_encryption_sessions??(global.__flujo_encryption_sessions=new Map),k=(0,h.h)("utils/encryption/secure");class l extends Error{constructor(a="Encryption is locked: user password required to access secrets"){super(a),this.name="EncryptionLockedError",Object.setPrototypeOf(this,l.prototype)}}let m="data_encryption_key",n="data_encryption_iv",o="data_encryption_salt",p="encryption_type";var q=function(a){return a.DEFAULT="default",a.USER="user",a}(q||{});function r(){let a=e().enc.Utf8.parse("flujo_fixed_salt_v1");return e().PBKDF2("FLUJO~",a,{keySize:8,iterations:1e5})}async function s(){k.debug("initializeDefaultEncryption: Entering method");try{if(await y())return!0;let a=r(),b=e().lib.WordArray.random(8),c=e().lib.WordArray.random(16),d=e().AES.encrypt(b.toString(),a,{iv:c,mode:e().mode.CBC,padding:e().pad.Pkcs7}),h=e().enc.Utf8.parse("flujo_fixed_salt_v1"),i={[m]:d.toString(),[n]:c.toString(),[o]:h.toString(),encryption_version:1,[p]:"default"};return await (0,f.VH)(g.Z.ENCRYPTION_KEY,i),!0}catch(a){return k.error("initializeDefaultEncryption: Failed to initialize default encryption:",a),!1}}async function t(){k.debug("getDefaultDEK: Entering method");try{let a=await (0,f.YM)(g.Z.ENCRYPTION_KEY,null);if(!a){if(!await s())return k.error("getDefaultDEK: Failed to initialize default encryption"),null;return await t()}if("default"!==a[p])return k.error("getDefaultDEK: Not using default encryption"),null;let b=a[m],c=e().enc.Hex.parse(a[n]),d=r(),h=e().AES.decrypt(b,d,{iv:c,mode:e().mode.CBC,padding:e().pad.Pkcs7});if(!h.toString())return k.error("getDefaultDEK: Failed to decrypt DEK with default key"),null;return e().enc.Hex.parse(h.toString())}catch(a){return k.error("getDefaultDEK: Failed to get default DEK:",a),null}}async function u(a){k.debug("getUserDEK: Entering method");try{let b=await (0,f.YM)(g.Z.ENCRYPTION_KEY,null);if(!b)return k.error("getUserDEK: No encryption metadata found"),null;if("user"!==b[p])return k.error("getUserDEK: Not using user encryption"),null;let c=b[m],d=e().enc.Hex.parse(b[n]),h=e().enc.Hex.parse(b[o]),i=e().PBKDF2(a,h,{keySize:8,iterations:1e5}),j=e().AES.decrypt(c,i,{iv:d,mode:e().mode.CBC,padding:e().pad.Pkcs7});if(!j.toString())return k.error("getUserDEK: Failed to decrypt DEK with provided password"),null;return e().enc.Hex.parse(j.toString())}catch(a){return k.error("getUserDEK: Failed to get user DEK:",a),null}}async function v(a,b=!1){k.debug("getDEK: Entering method");try{if(b&&a){k.debug("getDEK: Using session token");let b=function(a){let b=j.get(a);if(!b)return i.warn(`Session not found: ${a}`),null;let c=Date.now();return c-b.createdAt>72e5?(i.warn(`Session expired: ${a}`),j.delete(a),null):(b.lastUsed=c,b.dek)}(a);if(b)return e().enc.Hex.parse(b);k.warn("getDEK: Invalid or expired session token, falling back to default encryption")}let c=await (0,f.YM)(g.Z.ENCRYPTION_KEY,null);if(!c){if(k.info("getDEK: No encryption metadata found, initializing default encryption"),!await s())return k.error("getDEK: Failed to initialize default encryption"),null;return await v(a,b)}if("user"!==c[p])return await t();{let c=global.__flujo_server_dek??null;if(c)return k.debug("getDEK: Using server unlock state for user encryption"),e().enc.Hex.parse(c);if(a&&!b){let b=await u(a);if(b)return b;k.warn("getDEK: Provided password did not yield a valid user DEK")}throw k.warn("getDEK: User encryption is locked (no unlock state or valid credential)"),new l}}catch(a){if(a instanceof l)throw a;k.error("getDEK: Failed to get DEK:",a);try{if(k.warn("getDEK: Attempting to initialize default encryption as error recovery"),await s())return await t()}catch(a){k.error("getDEK: Failed to initialize default encryption as error recovery:",a)}return null}}async function w(a,b,c=!1){k.debug("encryptWithPassword: Entering method");try{let d=await v(b,c);if(!d)return null;let f=e().lib.WordArray.random(16),g=e().AES.encrypt(a,d,{iv:f,mode:e().mode.CBC,padding:e().pad.Pkcs7});return f.toString()+":"+g.toString()}catch(a){if(a instanceof l)throw a;return k.error("encryptWithPassword: Failed to encrypt data:",a),null}}async function x(a,b,c=!1){k.debug("decryptWithPassword: Entering method");try{let d=await v(b,c);if(!d)return null;let f=a.split(":");if(2!==f.length)return k.error("decryptWithPassword: Invalid ciphertext format"),null;let g=e().enc.Hex.parse(f[0]),h=f[1];return e().AES.decrypt(h,d,{iv:g,mode:e().mode.CBC,padding:e().pad.Pkcs7}).toString(e().enc.Utf8)}catch(a){if(a instanceof l)throw a;return k.error("decryptWithPassword: Failed to decrypt data:",a),null}}async function y(){return k.debug("isEncryptionInitialized: Entering method"),null!==await (0,f.YM)(g.Z.ENCRYPTION_KEY,null)}async function z(){k.debug("isUserEncryptionEnabled: Entering method");let a=await (0,f.YM)(g.Z.ENCRYPTION_KEY,null);return null!=a&&"user"===a[p]}async function A(){return await z()&&!global.__flujo_server_dek}},97887:(a,b,c)=>{"use strict";let d=c(33873),e=c(3258),f=c(91480),g=c(53859),h="win32"===process.platform,i=/\.(?:com|exe)$/i,j=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;a.exports=function(a,b,c){b&&!Array.isArray(b)&&(c=b,b=null);let k={command:a,args:b=b?b.slice(0):[],options:c=Object.assign({},c),file:void 0,original:{command:a,args:b}};return c.shell?k:function(a){if(!h)return a;let b=function(a){a.file=e(a);let b=a.file&&g(a.file);return b?(a.args.unshift(a.file),a.command=b,e(a)):a.file}(a),c=!i.test(b);if(a.options.forceShell||c){let c=j.test(b);a.command=d.normalize(a.command),a.command=f.command(a.command),a.args=a.args.map(a=>f.argument(a,c));let e=[a.command].concat(a.args).join(" ");a.args=["/d","/s","/c",`"${e}"`],a.command=process.env.comspec||"cmd.exe",a.options.windowsVerbatimArguments=!0}return a}(k)}},98229:a=>{"use strict";a.exports=Math.pow},98402:(a,b,c)=>{"use strict";Object.defineProperty(b,"A",{enumerable:!0,get:function(){return d.registerServerReference}});let d=c(29005)},99139:(a,b,c)=>{var d=c(44724),e=c(84833),f=c(68041);a.exports=function(a,b,c){for(var g=e(a);g.index<(g.keyedList||a).length;)d(a,b,g,function(a,b){return a?void c(a,b):0===Object.keys(g.jobs).length?void c(null,g.results):void 0}),g.index++;return f.bind(g,c)}},99276:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});let d=c(31849),e=c(83593),f=c(97025),g=c(84817);b.default={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:{message:({params:{len:a}})=>(0,d.str)`must NOT have more than ${a} items`,params:({params:{len:a}})=>(0,d._)`{limit: ${a}}`},code(a){let{schema:b,parentSchema:c,it:d}=a,{prefixItems:h}=c;d.items=!0,(0,e.alwaysValidSchema)(d,b)||(h?(0,g.validateAdditionalItems)(a,h):a.ok((0,f.validateArray)(a)))}}},99925:(a,b,c)=>{"use strict";let d=c(67729),e=c(97161),f=c(24860),g=e.implSymbol;function h(b){if(!this||this[g]||!(this instanceof h))throw TypeError("Failed to construct 'URL': Please use the 'new' operator, this DOM object constructor cannot be called as a function.");if(arguments.length<1)throw TypeError("Failed to construct 'URL': 1 argument required, but only "+arguments.length+" present.");let c=[];for(let a=0;a<arguments.length&&a<2;++a)c[a]=arguments[a];c[0]=d.USVString(c[0]),void 0!==c[1]&&(c[1]=d.USVString(c[1])),a.exports.setup(this,c)}h.prototype.toJSON=function(){if(!this||!a.exports.is(this))throw TypeError("Illegal invocation");let b=[];for(let a=0;a<arguments.length&&a<0;++a)b[a]=arguments[a];return this[g].toJSON.apply(this[g],b)},Object.defineProperty(h.prototype,"href",{get(){return this[g].href},set(a){a=d.USVString(a),this[g].href=a},enumerable:!0,configurable:!0}),h.prototype.toString=function(){if(!this||!a.exports.is(this))throw TypeError("Illegal invocation");return this.href},Object.defineProperty(h.prototype,"origin",{get(){return this[g].origin},enumerable:!0,configurable:!0}),Object.defineProperty(h.prototype,"protocol",{get(){return this[g].protocol},set(a){a=d.USVString(a),this[g].protocol=a},enumerable:!0,configurable:!0}),Object.defineProperty(h.prototype,"username",{get(){return this[g].username},set(a){a=d.USVString(a),this[g].username=a},enumerable:!0,configurable:!0}),Object.defineProperty(h.prototype,"password",{get(){return this[g].password},set(a){a=d.USVString(a),this[g].password=a},enumerable:!0,configurable:!0}),Object.defineProperty(h.prototype,"host",{get(){return this[g].host},set(a){a=d.USVString(a),this[g].host=a},enumerable:!0,configurable:!0}),Object.defineProperty(h.prototype,"hostname",{get(){return this[g].hostname},set(a){a=d.USVString(a),this[g].hostname=a},enumerable:!0,configurable:!0}),Object.defineProperty(h.prototype,"port",{get(){return this[g].port},set(a){a=d.USVString(a),this[g].port=a},enumerable:!0,configurable:!0}),Object.defineProperty(h.prototype,"pathname",{get(){return this[g].pathname},set(a){a=d.USVString(a),this[g].pathname=a},enumerable:!0,configurable:!0}),Object.defineProperty(h.prototype,"search",{get(){return this[g].search},set(a){a=d.USVString(a),this[g].search=a},enumerable:!0,configurable:!0}),Object.defineProperty(h.prototype,"hash",{get(){return this[g].hash},set(a){a=d.USVString(a),this[g].hash=a},enumerable:!0,configurable:!0}),a.exports={is:a=>!!a&&a[g]instanceof f.implementation,create(a,b){let c=Object.create(h.prototype);return this.setup(c,a,b),c},setup(a,b,c){c||(c={}),c.wrapper=a,a[g]=new f.implementation(b,c),a[g][e.wrapperSymbol]=a},interface:h,expose:{Window:{URL:h},Worker:{URL:h}}}}};
154
+ `&&d++}}return[b,c]}(`${f}${b}`);for(let a of c)k(a);f=d,g=!1},reset:function(a={}){f&&a.consume&&k(f),g=!0,h=void 0,i="",j="",f=""}}}class dN extends TransformStream{constructor({onError:a,onRetry:b,onComment:c}={}){let d;super({start(e){d=dM({onEvent:a=>{e.enqueue(a)},onError(b){"terminate"===a?e.error(b):"function"==typeof a&&a(b)},onRetry:b,onComment:c})},transform(a){d.feed(a)}})}}let dO={initialReconnectionDelay:1e3,maxReconnectionDelay:3e4,reconnectionDelayGrowFactor:1.5,maxRetries:2};class dP extends Error{constructor(a,b){super(`Streamable HTTP error: ${b}`),this.code=a}}class dQ{constructor(a,b){this._hasCompletedAuthFlow=!1,this._url=a,this._resourceMetadataUrl=void 0,this._scope=void 0,this._requestInit=b?.requestInit,this._authProvider=b?.authProvider,this._fetch=b?.fetch,this._fetchWithInit=cO(b?.fetch,b?.requestInit),this._sessionId=b?.sessionId,this._reconnectionOptions=b?.reconnectionOptions??dO}async _authThenStart(){let a;if(!this._authProvider)throw new dq("No auth provider");try{a=await du(this._authProvider,{serverUrl:this._url,resourceMetadataUrl:this._resourceMetadataUrl,scope:this._scope,fetchFn:this._fetchWithInit})}catch(a){throw this.onerror?.(a),a}if("AUTHORIZED"!==a)throw new dq;return await this._startOrAuthSse({resumptionToken:void 0})}async _commonHeaders(){let a={};if(this._authProvider){let b=await this._authProvider.tokens();b&&(a.Authorization=`Bearer ${b.access_token}`)}this._sessionId&&(a["mcp-session-id"]=this._sessionId),this._protocolVersion&&(a["mcp-protocol-version"]=this._protocolVersion);let b=cN(this._requestInit?.headers);return new Headers({...a,...b})}async _startOrAuthSse(a){let{resumptionToken:b}=a;try{let c=await this._commonHeaders();c.set("Accept","text/event-stream"),b&&c.set("last-event-id",b);let d=await (this._fetch??fetch)(this._url,{method:"GET",headers:c,signal:this._abortController?.signal});if(!d.ok){if(await d.body?.cancel(),401===d.status&&this._authProvider)return await this._authThenStart();if(405===d.status)return;throw new dP(d.status,`Failed to open SSE stream: ${d.statusText}`)}this._handleSseStream(d.body,a,!0)}catch(a){throw this.onerror?.(a),a}}_getNextReconnectionDelay(a){if(void 0!==this._serverRetryMs)return this._serverRetryMs;let b=this._reconnectionOptions.initialReconnectionDelay;return Math.min(b*Math.pow(this._reconnectionOptions.reconnectionDelayGrowFactor,a),this._reconnectionOptions.maxReconnectionDelay)}_scheduleReconnection(a,b=0){let c=this._reconnectionOptions.maxRetries;if(b>=c)return void this.onerror?.(Error(`Maximum reconnection attempts (${c}) exceeded.`));let d=this._getNextReconnectionDelay(b);this._reconnectionTimeout=setTimeout(()=>{this._startOrAuthSse(a).catch(c=>{this.onerror?.(Error(`Failed to reconnect SSE stream: ${c instanceof Error?c.message:String(c)}`)),this._scheduleReconnection(a,b+1)})},d)}_handleSseStream(a,b,c){let d;if(!a)return;let{onresumptiontoken:e,replayMessageId:f}=b,g=!1,h=!1;(async()=>{try{let b=a.pipeThrough(new TextDecoderStream).pipeThrough(new dN({onRetry:a=>{this._serverRetryMs=a}})).getReader();for(;;){let{value:a,done:c}=await b.read();if(c)break;if((a.id&&(d=a.id,g=!0,e?.(a.id)),a.data)&&(!a.event||"message"===a.event))try{let b=F.parse(JSON.parse(a.data));D(b)&&(h=!0,void 0!==f&&(b.id=f)),this.onmessage?.(b)}catch(a){this.onerror?.(a)}}(c||g)&&!h&&this._abortController&&!this._abortController.signal.aborted&&this._scheduleReconnection({resumptionToken:d,onresumptiontoken:e,replayMessageId:f},0)}catch(a){if(this.onerror?.(Error(`SSE stream disconnected: ${a}`)),(c||g)&&!h&&this._abortController&&!this._abortController.signal.aborted)try{this._scheduleReconnection({resumptionToken:d,onresumptiontoken:e,replayMessageId:f},0)}catch(a){this.onerror?.(Error(`Failed to reconnect: ${a instanceof Error?a.message:String(a)}`))}}})()}async start(){if(this._abortController)throw Error("StreamableHTTPClientTransport already started! If using Client class, note that connect() calls start() automatically.");this._abortController=new AbortController}async finishAuth(a){if(!this._authProvider)throw new dq("No auth provider");if("AUTHORIZED"!==await du(this._authProvider,{serverUrl:this._url,authorizationCode:a,resourceMetadataUrl:this._resourceMetadataUrl,scope:this._scope,fetchFn:this._fetchWithInit}))throw new dq("Failed to authorize")}async close(){this._reconnectionTimeout&&(clearTimeout(this._reconnectionTimeout),this._reconnectionTimeout=void 0),this._abortController?.abort(),this.onclose?.()}async send(a,b){try{let{resumptionToken:c,onresumptiontoken:d}=b||{};if(c)return void this._startOrAuthSse({resumptionToken:c,replayMessageId:A(a)?a.id:void 0}).catch(a=>this.onerror?.(a));let e=await this._commonHeaders();e.set("content-type","application/json"),e.set("accept","application/json, text/event-stream");let f={...this._requestInit,method:"POST",headers:e,body:JSON.stringify(a),signal:this._abortController?.signal},g=await (this._fetch??fetch)(this._url,f),h=g.headers.get("mcp-session-id");if(h&&(this._sessionId=h),!g.ok){let b=await g.text().catch(()=>null);if(401===g.status&&this._authProvider){if(this._hasCompletedAuthFlow)throw new dP(401,"Server returned 401 after successful authentication");let{resourceMetadataUrl:b,scope:c}=dx(g);this._resourceMetadataUrl=b,this._scope=c;let d=await du(this._authProvider,{serverUrl:this._url,resourceMetadataUrl:this._resourceMetadataUrl,scope:this._scope,fetchFn:this._fetchWithInit});if("AUTHORIZED"!==d)throw new dq;return this._hasCompletedAuthFlow=!0,this.send(a)}if(403===g.status&&this._authProvider){let{resourceMetadataUrl:b,scope:c,error:d}=dx(g);if("insufficient_scope"===d){let d=g.headers.get("WWW-Authenticate");if(this._lastUpscopingHeader===d)throw new dP(403,"Server returned 403 after trying upscoping");c&&(this._scope=c),b&&(this._resourceMetadataUrl=b),this._lastUpscopingHeader=d??void 0;let e=await du(this._authProvider,{serverUrl:this._url,resourceMetadataUrl:this._resourceMetadataUrl,scope:this._scope,fetchFn:this._fetch});if("AUTHORIZED"!==e)throw new dq;return this.send(a)}}throw new dP(g.status,`Error POSTing to endpoint: ${b}`)}if(this._hasCompletedAuthFlow=!1,this._lastUpscopingHeader=void 0,202===g.status){await g.body?.cancel(),W.safeParse(a).success&&this._startOrAuthSse({resumptionToken:void 0}).catch(a=>this.onerror?.(a));return}let i=(Array.isArray(a)?a:[a]).filter(a=>"method"in a&&"id"in a&&void 0!==a.id).length>0,j=g.headers.get("content-type");if(i)if(j?.includes("text/event-stream"))this._handleSseStream(g.body,{onresumptiontoken:d},!1);else if(j?.includes("application/json")){let a=await g.json();for(let b of Array.isArray(a)?a.map(a=>F.parse(a)):[F.parse(a)])this.onmessage?.(b)}else throw await g.body?.cancel(),new dP(-1,`Unexpected content type: ${j}`);else await g.body?.cancel()}catch(a){throw this.onerror?.(a),a}}get sessionId(){return this._sessionId}async terminateSession(){if(this._sessionId)try{let a=await this._commonHeaders(),b={...this._requestInit,method:"DELETE",headers:a,signal:this._abortController?.signal},c=await (this._fetch??fetch)(this._url,b);if(await c.body?.cancel(),!c.ok&&405!==c.status)throw new dP(c.status,`Failed to terminate session: ${c.statusText}`);this._sessionId=void 0}catch(a){throw this.onerror?.(a),a}}setProtocolVersion(a){this._protocolVersion=a}get protocolVersion(){return this._protocolVersion}async resumeStream(a,b){await this._startOrAuthSse({resumptionToken:a,onresumptiontoken:b?.onresumptiontoken})}}class dR extends Event{constructor(a,b){var c,d;super(a),this.code=null!=(c=null==b?void 0:b.code)?c:void 0,this.message=null!=(d=null==b?void 0:b.message)?d:void 0}[Symbol.for("nodejs.util.inspect.custom")](a,b,c){return c(dS(this),b)}[Symbol.for("Deno.customInspect")](a,b){return a(dS(this),b)}}function dS(a){return{type:a.type,message:a.message,code:a.code,defaultPrevented:a.defaultPrevented,cancelable:a.cancelable,timeStamp:a.timeStamp}}var dT,dU,dV,dW,dX,dY,dZ,d$,d_,d0,d1,d2,d3,d4,d5,d6,d7,d8,d9,ea,eb,ec,ed,ee,ef,eg=a=>{throw TypeError(a)},eh=(a,b,c)=>b.has(a)||eg("Cannot "+c),ei=(a,b,c)=>(eh(a,b,"read from private field"),c?c.call(a):b.get(a)),ej=(a,b,c)=>b.has(a)?eg("Cannot add the same private member more than once"):b instanceof WeakSet?b.add(a):b.set(a,c),ek=(a,b,c,d)=>(eh(a,b,"write to private field"),b.set(a,c),c),el=(a,b,c)=>(eh(a,b,"access private method"),c);class em extends EventTarget{constructor(a,b){var c,d;super(),ej(this,d6),this.CONNECTING=0,this.OPEN=1,this.CLOSED=2,ej(this,dV),ej(this,dW),ej(this,dX),ej(this,dY),ej(this,dZ),ej(this,d$),ej(this,d_),ej(this,d0,null),ej(this,d1),ej(this,d2),ej(this,d3,null),ej(this,d4,null),ej(this,d5,null),ej(this,d8,async a=>{var b;ei(this,d2).reset();let{body:c,redirected:d,status:e,headers:f}=a;if(204===e){el(this,d6,ed).call(this,"Server sent HTTP 204, not reconnecting",204),this.close();return}if(d?ek(this,dX,new URL(a.url)):ek(this,dX,void 0),200!==e)return void el(this,d6,ed).call(this,`Non-200 status code (${e})`,e);if(!(f.get("content-type")||"").startsWith("text/event-stream"))return void el(this,d6,ed).call(this,'Invalid content type, expected "text/event-stream"',e);if(ei(this,dV)===this.CLOSED)return;ek(this,dV,this.OPEN);let g=new Event("open");if(null==(b=ei(this,d5))||b.call(this,g),this.dispatchEvent(g),"object"!=typeof c||!c||!("getReader"in c)){el(this,d6,ed).call(this,"Invalid response body, expected a web ReadableStream",e),this.close();return}let h=new TextDecoder,i=c.getReader(),j=!0;do{let{done:a,value:b}=await i.read();b&&ei(this,d2).feed(h.decode(b,{stream:!a})),a&&(j=!1,ei(this,d2).reset(),el(this,d6,ee).call(this))}while(j)}),ej(this,d9,a=>{ek(this,d1,void 0),"AbortError"!==a.name&&"aborted"!==a.type&&el(this,d6,ee).call(this,function a(b){return b instanceof Error?"errors"in b&&Array.isArray(b.errors)?b.errors.map(a).join(", "):"cause"in b&&b.cause instanceof Error?`${b}: ${a(b.cause)}`:b.message:`${b}`}(a))}),ej(this,eb,a=>{"string"==typeof a.id&&ek(this,d0,a.id);let b=new MessageEvent(a.event||"message",{data:a.data,origin:ei(this,dX)?ei(this,dX).origin:ei(this,dW).origin,lastEventId:a.id||""});ei(this,d4)&&(!a.event||"message"===a.event)&&ei(this,d4).call(this,b),this.dispatchEvent(b)}),ej(this,ec,a=>{ek(this,d$,a)}),ej(this,ef,()=>{ek(this,d_,void 0),ei(this,dV)===this.CONNECTING&&el(this,d6,d7).call(this)});try{if(a instanceof URL)ek(this,dW,a);else if("string"==typeof a)ek(this,dW,new URL(a,function(){let a="document"in globalThis?globalThis.document:void 0;return a&&"object"==typeof a&&"baseURI"in a&&"string"==typeof a.baseURI?a.baseURI:void 0}()));else throw Error("Invalid URL")}catch{throw function(a){let b=globalThis.DOMException;return"function"==typeof b?new b(a,"SyntaxError"):SyntaxError(a)}("An invalid or illegal string was specified")}ek(this,d2,dM({onEvent:ei(this,eb),onRetry:ei(this,ec)})),ek(this,dV,this.CONNECTING),ek(this,d$,3e3),ek(this,dZ,null!=(c=null==b?void 0:b.fetch)?c:globalThis.fetch),ek(this,dY,null!=(d=null==b?void 0:b.withCredentials)&&d),el(this,d6,d7).call(this)}get readyState(){return ei(this,dV)}get url(){return ei(this,dW).href}get withCredentials(){return ei(this,dY)}get onerror(){return ei(this,d3)}set onerror(a){ek(this,d3,a)}get onmessage(){return ei(this,d4)}set onmessage(a){ek(this,d4,a)}get onopen(){return ei(this,d5)}set onopen(a){ek(this,d5,a)}addEventListener(a,b,c){super.addEventListener(a,b,c)}removeEventListener(a,b,c){super.removeEventListener(a,b,c)}close(){ei(this,d_)&&clearTimeout(ei(this,d_)),ei(this,dV)!==this.CLOSED&&(ei(this,d1)&&ei(this,d1).abort(),ek(this,dV,this.CLOSED),ek(this,d1,void 0))}}dV=new WeakMap,dW=new WeakMap,dX=new WeakMap,dY=new WeakMap,dZ=new WeakMap,d$=new WeakMap,d_=new WeakMap,d0=new WeakMap,d1=new WeakMap,d2=new WeakMap,d3=new WeakMap,d4=new WeakMap,d5=new WeakMap,d6=new WeakSet,d7=function(){ek(this,dV,this.CONNECTING),ek(this,d1,new AbortController),ei(this,dZ)(ei(this,dW),el(this,d6,ea).call(this)).then(ei(this,d8)).catch(ei(this,d9))},d8=new WeakMap,d9=new WeakMap,ea=function(){var a;let b={mode:"cors",redirect:"follow",headers:{Accept:"text/event-stream",...ei(this,d0)?{"Last-Event-ID":ei(this,d0)}:void 0},cache:"no-store",signal:null==(a=ei(this,d1))?void 0:a.signal};return"window"in globalThis&&(b.credentials=this.withCredentials?"include":"same-origin"),b},eb=new WeakMap,ec=new WeakMap,ed=function(a,b){var c;ei(this,dV)!==this.CLOSED&&ek(this,dV,this.CLOSED);let d=new dR("error",{code:b,message:a});null==(c=ei(this,d3))||c.call(this,d),this.dispatchEvent(d)},ee=function(a,b){var c;if(ei(this,dV)===this.CLOSED)return;ek(this,dV,this.CONNECTING);let d=new dR("error",{code:b,message:a});null==(c=ei(this,d3))||c.call(this,d),this.dispatchEvent(d),ek(this,d_,setTimeout(ei(this,ef),ei(this,d$)))},ef=new WeakMap,em.CONNECTING=0,em.OPEN=1,em.CLOSED=2;class en extends Error{constructor(a,b,c){super(`SSE error: ${b}`),this.code=a,this.event=c}}class eo{constructor(a,b){this._url=a,this._resourceMetadataUrl=void 0,this._scope=void 0,this._eventSourceInit=b?.eventSourceInit,this._requestInit=b?.requestInit,this._authProvider=b?.authProvider,this._fetch=b?.fetch,this._fetchWithInit=cO(b?.fetch,b?.requestInit)}async _authThenStart(){let a;if(!this._authProvider)throw new dq("No auth provider");try{a=await du(this._authProvider,{serverUrl:this._url,resourceMetadataUrl:this._resourceMetadataUrl,scope:this._scope,fetchFn:this._fetchWithInit})}catch(a){throw this.onerror?.(a),a}if("AUTHORIZED"!==a)throw new dq;return await this._startOrAuth()}async _commonHeaders(){let a={};if(this._authProvider){let b=await this._authProvider.tokens();b&&(a.Authorization=`Bearer ${b.access_token}`)}this._protocolVersion&&(a["mcp-protocol-version"]=this._protocolVersion);let b=cN(this._requestInit?.headers);return new Headers({...a,...b})}_startOrAuth(){let a=this?._eventSourceInit?.fetch??this._fetch??fetch;return new Promise((b,c)=>{this._eventSource=new em(this._url.href,{...this._eventSourceInit,fetch:async(b,c)=>{let d=await this._commonHeaders();d.set("Accept","text/event-stream");let e=await a(b,{...c,headers:d});if(401===e.status&&e.headers.has("www-authenticate")){let{resourceMetadataUrl:a,scope:b}=dx(e);this._resourceMetadataUrl=a,this._scope=b}return e}}),this._abortController=new AbortController,this._eventSource.onerror=a=>{if(401===a.code&&this._authProvider)return void this._authThenStart().then(b,c);let d=new en(a.code,a.message,a);c(d),this.onerror?.(d)},this._eventSource.onopen=()=>{},this._eventSource.addEventListener("endpoint",a=>{try{if(this._endpoint=new URL(a.data,this._url),this._endpoint.origin!==this._url.origin)throw Error(`Endpoint origin does not match connection origin: ${this._endpoint.origin}`)}catch(a){c(a),this.onerror?.(a),this.close();return}b()}),this._eventSource.onmessage=a=>{let b;try{b=F.parse(JSON.parse(a.data))}catch(a){this.onerror?.(a);return}this.onmessage?.(b)}})}async start(){if(this._eventSource)throw Error("SSEClientTransport already started! If using Client class, note that connect() calls start() automatically.");return await this._startOrAuth()}async finishAuth(a){if(!this._authProvider)throw new dq("No auth provider");if("AUTHORIZED"!==await du(this._authProvider,{serverUrl:this._url,authorizationCode:a,resourceMetadataUrl:this._resourceMetadataUrl,scope:this._scope,fetchFn:this._fetchWithInit}))throw new dq("Failed to authorize")}async close(){this._abortController?.abort(),this._eventSource?.close(),this.onclose?.()}async send(a){if(!this._endpoint)throw Error("Not connected");try{let b=await this._commonHeaders();b.set("content-type","application/json");let c={...this._requestInit,method:"POST",headers:b,body:JSON.stringify(a),signal:this._abortController?.signal},d=await (this._fetch??fetch)(this._endpoint,c);if(!d.ok){let b=await d.text().catch(()=>null);if(401===d.status&&this._authProvider){let{resourceMetadataUrl:b,scope:c}=dx(d);this._resourceMetadataUrl=b,this._scope=c;let e=await du(this._authProvider,{serverUrl:this._url,resourceMetadataUrl:this._resourceMetadataUrl,scope:this._scope,fetchFn:this._fetchWithInit});if("AUTHORIZED"!==e)throw new dq;return this.send(a)}throw Error(`Error POSTing to endpoint (HTTP ${d.status}): ${b}`)}await d.body?.cancel()}catch(a){throw this.onerror?.(a),a}}setProtocolVersion(a){this._protocolVersion=a}}let ep=(0,bY.h)("backend/services/mcp/oauth");class eq{constructor(a,b){this.config=a,this._redirectUrl=b,this._clientMetadata={redirect_uris:[b],client_name:`FLUJO MCP Client - ${a.name}`,client_uri:"https://github.com/mario-andreschak/FLUJO",grant_types:["authorization_code","refresh_token"],response_types:["code"],token_endpoint_auth_method:"client_secret_post",scope:a.oauthScopes?.join(" ")||"read"},ep.info(`Created OAuth client provider for ${a.name}`),ep.verbose("OAuth client metadata",JSON.stringify(this._clientMetadata))}get redirectUrl(){return this._redirectUrl}get clientMetadata(){return this._clientMetadata}state(){return encodeURIComponent(JSON.stringify({serverName:this.config.name}))}async clientInformation(){if(this.config.oauthClientInformation)return ep.debug(`Returning stored client information for ${this.config.name}`),this.config.oauthClientInformation;if(this.config.oauthClientId){let a=this.config.oauthClientSecret?await (0,b0.G)(this.config.oauthClientSecret)??void 0:void 0;return ep.debug(`Created client information from config for ${this.config.name}`),{client_id:this.config.oauthClientId,client_secret:a}}ep.debug(`No client information available for ${this.config.name}`)}async persist(){let a=await (0,b_.loadServerConfigs)();if(!Array.isArray(a))return void ep.warn(`persist: failed to load server configs for ${this.config.name}, cannot persist OAuth state`);let b=new Map(a.map(a=>[a.name,a]));b.set(this.config.name,this.config);let c=await (0,b_.q)(b);c.success||ep.warn(`persist: failed to save OAuth state for ${this.config.name}: ${c.error}`)}async invalidateCredentials(a){ep.info(`Invalidating OAuth credentials for ${this.config.name} (scope: ${a})`),("all"===a||"tokens"===a)&&(this.config.oauthTokens=void 0),("all"===a||"client"===a)&&(this.config.oauthClientInformation=void 0,this.config.oauthClientMetadata=void 0),("all"===a||"verifier"===a)&&(this.config.oauthCodeVerifier=void 0),await this.persist()}async saveClientInformation(a){ep.info(`Saving client information for ${this.config.name}`),ep.verbose("Client information to save",JSON.stringify(a)),this.config.oauthClientInformation={client_id:a.client_id,client_secret:a.client_secret,client_id_issued_at:a.client_id_issued_at,client_secret_expires_at:a.client_secret_expires_at},this.config.oauthClientMetadata={redirect_uris:a.redirect_uris,client_name:a.client_name,client_uri:a.client_uri,grant_types:a.grant_types,response_types:a.response_types,token_endpoint_auth_method:a.token_endpoint_auth_method,scope:a.scope,contacts:a.contacts,tos_uri:a.tos_uri,policy_uri:a.policy_uri,jwks_uri:a.jwks_uri,jwks:a.jwks,software_id:a.software_id,software_version:a.software_version},await this.persist(),ep.info(`Client information saved for ${this.config.name}`)}async tokens(){if(this.config.oauthTokens){if(ep.debug(`Returning stored tokens for ${this.config.name}`),this.config.oauthTokens.expires_in&&this.config.oauthTokens.issued_at){let a=this.config.oauthTokens.issued_at,b=this.config.oauthTokens.expires_in,c=Math.floor(Date.now()/1e3),d=a+b;c>=d?ep.info(`Access token for ${this.config.name} has expired (issued: ${a}, expires: ${d}, current: ${c}); SDK will refresh via refresh_token`):ep.debug(`Tokens for ${this.config.name} are valid (expires in ${d-c} seconds)`)}return this.config.oauthTokens}ep.debug(`No tokens available for ${this.config.name}`)}async saveTokens(a){ep.info(`Saving OAuth tokens for ${this.config.name}`),ep.verbose("Tokens to save",JSON.stringify({...a,access_token:a.access_token?"[REDACTED]":void 0,refresh_token:a.refresh_token?"[REDACTED]":void 0}));let b={...a,issued_at:Math.floor(Date.now()/1e3)};this.config.oauthTokens=b,await this.persist(),ep.info(`OAuth tokens saved for ${this.config.name}`)}async redirectToAuthorization(a){ep.info(`Authorization required for ${this.config.name}`),ep.info(`Authorization URL: ${a.toString()}`),this.config.authorizationUrl=a.toString();let b=Error(`OAuth authentication required for ${this.config.name}. Please complete the OAuth flow.`);throw b.name="OAuthAuthenticationRequired",b}async saveCodeVerifier(a){ep.debug(`Saving code verifier for ${this.config.name}`),this.config.oauthCodeVerifier=a,await this.persist(),ep.debug(`Code verifier saved for ${this.config.name}`)}async codeVerifier(){if(!this.config.oauthCodeVerifier){let a=`No code verifier found for ${this.config.name}`;throw ep.error(a),Error(a)}return ep.debug(`Returning code verifier for ${this.config.name}`),this.config.oauthCodeVerifier}}let er=new Set(["node","npm","npx"]);var es=c(79551);let et=(0,bY.h)("backend/services/mcp/roots");function eu(){return global.__mcp_node_roots}function ev(a){let b=[];for(let c of eu().values())if(c.serverName===a)for(let a of c.roots)b.includes(a)||b.push(a);return b}async function ew(a){let b=function(a){let b=a.trim();if(!b)return null;if(b.startsWith("file://"))return b;if(/^[a-zA-Z][a-zA-Z0-9+.-]*:\/\//.test(b))return et.warn(`Ignoring non-file root URI: ${b}`),null;try{return(0,es.pathToFileURL)(b).href}catch(a){return et.warn(`Could not convert root "${b}" to a file URI:`,a),null}}(await (0,b0.c)(a));return b?{uri:b,name:function(a){try{let b=new URL(a).pathname.replace(/\/+$/,"").split("/").pop();return b?decodeURIComponent(b):void 0}catch{return}}(b)}:null}async function ex(a){let b=a.roots,c=[...Array.isArray(b)?b:[],...ev(a.name)],d=[],e=new Set;for(let a of c){if("string"!=typeof a||!a.trim())continue;let b=await ew(a);b&&!e.has(b.uri)&&(e.add(b.uri),d.push(b))}if(0===d.length&&"string"==typeof a.rootPath&&a.rootPath.trim()){let b=await ew(a.rootPath);if(b)return[b]}return d}async function ey(a){try{let{loadServerConfigs:b}=await Promise.resolve().then(c.bind(c,6544)),d=await b();if(Array.isArray(d)){let b=d.find(b=>b.name===a.name);if(b)return b}}catch(b){et.warn(`Could not re-load config for ${a.name}, using connect-time config:`,b)}return a}void 0===global.__mcp_node_roots&&(global.__mcp_node_roots=new Map);var ez=c(12763),eA=c(25713);let eB=(0,bY.h)("backend/services/mcp/sampling");function eC(a){return a.sampling}function eD(a){let b=eC(a);return b?.enabled?JSON.stringify({m:b.modelId,t:b.maxTokens,r:b.maxCallsPerMinute}):""}let eE=(0,bY.h)("backend/services/mcp/connection");async function eF(a){if("streamable"!==a.transport&&"sse"!==a.transport||!a.headers||"object"!=typeof a.headers)return a;let b={};for(let[c,d]of Object.entries(a.headers)){if(!c)continue;let{value:a}=cr(d,c);if(!a||cs(a))continue;let e=await (0,b0.G)(a);e&&(b[c]=e)}return{...a,headers:b}}function eG(a){let b={};for(let[c,d]of Object.entries(a)){if(!c)continue;let{value:a}=cr(d,c);"string"==typeof a&&a.length>0&&(b[c]=a)}return b}function eH(a){let b={};if(a)for(let[c,d]of Object.entries(a))d&&"object"==typeof d&&"value"in d?b[c]=d.value:b[c]=d;return b}function eI(a){return JSON.stringify({command:a.command,args:a.args??[],env:eH(a.env),cwd:String(a.cwd??""),rootPath:a.rootPath??""})}function eJ(a){return JSON.stringify({transport:a.transport,url:a.serverUrl??"",headers:a.headers??{},requestInit:a.requestInit??{},eventSourceInit:a.eventSourceInit??{},reconnectionOptions:a.reconnectionOptions??{},sessionId:a.sessionId??"",oauthClientId:a.oauthClientId??"",oauthClientInformation:a.oauthClientInformation??{},oauthClientSecret:a.oauthClientSecret??"",oauthTokens:a.oauthTokens??{}})}function eK(a){eE.debug("Entering createNewClient method");let b=function(a){let b=eC(a);return!!(b?.enabled&&b.modelId)}(a),c=new cL({name:`flujo-${a.name}-client`,version:"3.23.0"},{capabilities:{experimental:{},roots:{listChanged:!0},...b?{sampling:{}}:{}}});return c.setRequestHandler(bL,async()=>{let b=await ex(await ey(a));return et.debug(`roots/list for ${a.name}: ${b.length} root(s)`),{roots:b}}),b&&function(a,b){let c=[];a.setRequestHandler(bj,async a=>{let d=eC(b);if(!d?.enabled||!d.modelId)throw new bO(dT.InvalidRequest,"Sampling is not enabled for this server");let e=d.maxCallsPerMinute??10,f=Date.now(),g=f-6e4;for(;c.length>0&&c[0]<g;)c.shift();if(c.length>=e)throw eB.warn(`Sampling rate limit (${e}/min) hit for ${b.name}`),new bO(dT.InvalidRequest,`Sampling rate limit of ${e}/min exceeded`);c.push(f);let h=await ez.modelService.getModel(d.modelId);if(!h)throw new bO(dT.InternalError,`Sampling model not found: ${d.modelId}`);let i=await ez.modelService.resolveAndDecryptApiKey(h.ApiKey);if(!i)throw new bO(dT.InternalError,"Could not resolve the sampling model API key");let j=a.params,k=function(a){let b=[];for(let c of(a.systemPrompt&&b.push({role:"system",content:a.systemPrompt}),a.messages||[])){let a=c.content,d=a?.type==="text"&&"string"==typeof a.text?a.text:`[unsupported ${a?.type||"non-text"} content omitted]`;b.push({role:c.role,content:d})}return b}(j),l="number"==typeof j.temperature?j.temperature:.7;eB.info(`Sampling for ${b.name} via model ${h.name} (${k.length} messages)`);let m=(0,eA.getCompletionAdapter)(h),{completion:n}=await m.createCompletion({model:h,apiKey:i,messages:k,temperature:l}),o=n.choices?.[0]?.message?.content;return{role:"assistant",content:{type:"text",text:"string"==typeof o?o:""},model:h.name,stopReason:"endTurn"}})}(c,a),c.__flujoCapKey=eD(a),c}function eL(a){if(eE.debug("Entering createTransport method"),"streamable"===a.transport){eE.info(`Creating streamable http transport for server ${a.name} with URL ${a.serverUrl}`);let b={};if(a.requestInit&&"object"==typeof a.requestInit&&(b.requestInit=a.requestInit),a.reconnectionOptions&&"object"==typeof a.reconnectionOptions&&(b.reconnectionOptions=a.reconnectionOptions),"string"==typeof a.sessionId&&a.sessionId.length>0&&(b.sessionId=a.sessionId),a.headers&&"object"==typeof a.headers){let c=eG(a.headers);Object.keys(c).length>0&&(b.requestInit={...b.requestInit||{},headers:{...b.requestInit?.headers||{},...c}},eE.info(`Applied ${Object.keys(c).length} custom header(s) for ${a.name}: ${Object.keys(c).join(", ")}`))}a.oauthClientId||a.oauthClientInformation?(eE.info(`Setting up OAuth authentication for ${a.name}`),b.authProvider=function(a,b="http://localhost:4200/api/oauth/callback"){return new eq(a,b)}(a),a.oauthTokens?.access_token?(eE.debug(`OAuth provider configured for ${a.name} with existing tokens`),eE.debug(`Token expires in: ${a.oauthTokens.expires_in} seconds`)):eE.debug(`OAuth provider configured for ${a.name} - will initiate OAuth flow if needed`)):eE.debug(`No OAuth configuration found for ${a.name}`);let c=new dQ(new URL(a.serverUrl),b);return c.__flujoHttpKey=eJ(a),c}if("sse"===a.transport){eE.info(`Creating legacy sse transport for server ${a.name} with URL ${a.serverUrl}`);let b={};if(a.requestInit&&"object"==typeof a.requestInit&&(b.requestInit=a.requestInit),a.eventSourceInit&&"object"==typeof a.eventSourceInit&&(b.eventSourceInit=a.eventSourceInit),a.headers&&"object"==typeof a.headers){let c=eG(a.headers);Object.keys(c).length>0&&(b.requestInit={...b.requestInit||{},headers:{...b.requestInit?.headers||{},...c}},eE.info(`Applied ${Object.keys(c).length} custom header(s) for ${a.name}: ${Object.keys(c).join(", ")}`))}let c=new eo(new URL(a.serverUrl),b);return c.__flujoHttpKey=eJ(a),c}return"websocket"===a.transport?(eE.info(`Creating WebSocket transport for server ${a.name} with URL ${a.websocketUrl}`),new cM(new URL(a.websocketUrl))):function(a){if(eE.debug("Entering createStdioTransport method"),"stdio"!==a.transport)throw Error("Cannot create stdio transport for non-stdio config");let b=a.command,c=a.args?[...a.args]:[],d=`${ce.VL}/${a.name}`;eE.info(`Creating stdio transport for server ${a.name}`),eE.debug(`Original command: ${b}`),eE.debug(`Original args: ${JSON.stringify(c)}`),eE.debug(`Server directory: ${d}`);let e=!bW.isAbsolute(b)&&(b.includes("/")||b.includes("\\")),f=!b.includes("/")&&!b.includes("\\");if(eE.debug(`Is relative path: ${e}`),eE.debug(`Is just filename: ${f}`),"win32"===cd.platform()&&b.toLowerCase().endsWith(".bat"))if(eE.debug(`Detected .bat file on Windows: ${b}`),f){let a=bW.join((0,bZ.ok)(),d,b);eE.debug(`Checking if file exists at: ${a}`);let e=cc.existsSync(a);eE.debug(`File exists: ${e}`),e?(eE.debug(`Using full path to .bat file: ${a}`),c=["/c",a,...c]):(eE.warn(`WARNING: .bat file not found at ${a}`),c=["/c",b,...c]),b="cmd.exe"}else eE.debug(`Using cmd.exe with path as provided: ${b}`),c=["/c",b,...c],b="cmd.exe";let g=function(a,b){if(!a||!(!a.includes("/")&&!a.includes("\\")))return a;let c=a.toLowerCase();if(!er.has(c))return a;if("node"===c)return b.execPath||a;if(!b.execPath)return a;let d=b.dirname(b.execPath);for(let a of"win32"===b.platform?[`${c}.cmd`,`${c}.exe`,c]:[c]){let c=b.joinPath(d,a);if(b.fileExists(c))return c}return a}(b,{execPath:process.execPath,platform:cd.platform(),dirname:bW.dirname,joinPath:bW.join,fileExists:cc.existsSync});g!==b&&(eE.debug(`Resolved Node toolchain command "${b}" to absolute path: ${g}`),b=g),eE.debug(`Final command: ${b}`),eE.debug(`Final args: ${JSON.stringify(c)}`);let h=function({command:a,args:b=[],rootPath:c,cwd:d,serverName:e,defaultCwd:f}){let g=c||d||f;return e&&cw(a,b)&&(g.split(/[\\/]/).filter(Boolean).pop()||"")===e&&function(a){let b=a.match(/^(.*[\\/])[^\\/]+[\\/]*$/);return b?b[1].replace(/[\\/]+$/,""):""}(g)||g}({command:a.command,args:a.args,rootPath:a.rootPath,cwd:a.cwd,serverName:a.name,defaultCwd:`${ce.VL}/${a.name}`}),i=bW.isAbsolute(h)?h:bW.join((0,bZ.ok)(),h);eE.debug(`cwd: ${i}`),eE.debug(`env: ${JSON.stringify(a.env)}`),eE.info(`Creating StdioClientTransport for ${a.name} with stderr: 'pipe'`);let j=eH(a.env);eE.verbose("Transformed environment variables",JSON.stringify(j));let k=new bS({command:b,args:c,env:j,cwd:i,stderr:"pipe"});return k.__flujoStdioKey=eI(a),k.stderr?eE.info(`Stderr stream is available for ${a.name}`):eE.warn(`Stderr stream is NOT available for ${a.name}`),k}(a)}function eM(a,b){return null!==a.exitCode||null!==a.signalCode?Promise.resolve(!0):new Promise(c=>{let d=()=>{clearTimeout(e),c(!0)},e=setTimeout(()=>{a.removeListener("exit",d),c(!1)},b);e.unref?.(),a.once("exit",d)})}async function eN(a,b,c,d){eE.debug("Entering safelyCloseClient method");let e=d?.gracePeriodMs??15e3,f=d?.killEscalationMs??5e3;try{if(a.transport instanceof bS){let c=a.transport._process;if(c&&null===c.exitCode&&null===c.signalCode){try{c.stdin&&!c.stdin.destroyed&&(c.stdin.end(),eE.debug(`Closed stdin for graceful shutdown for ${b}`))}catch(a){eE.warn(`Error closing stdin for ${b}:`,a)}let a=await eM(c,e);if(!a){eE.warn(`Process did not exit within ${e}ms after stdin close, sending SIGTERM for ${b}`);try{c.kill("SIGTERM")}catch(a){eE.error(`Error sending SIGTERM for ${b}:`,a)}a=await eM(c,f)}if(a)eE.info(`Process exited gracefully for ${b}`);else{eE.warn(`Process did not respond to SIGTERM, sending SIGKILL for ${b}`);try{c.kill("SIGKILL")}catch(a){eE.error(`Error sending SIGKILL for ${b}:`,a)}}}}await a.close(),eE.info(`Client closed successfully for ${b}`)}catch(a){eE.warn(`Error closing client for ${b}:`,a)}}var eO=c(92018);void 0===global.__mcp_clients&&(global.__mcp_clients=new Map),void 0===global.__mcp_connecting&&(global.__mcp_connecting=new Set),void 0===global.__mcp_starting_up&&(global.__mcp_starting_up=!0),void 0===global.__mcp_active_transports&&(global.__mcp_active_transports=new Map);let eP=(0,bY.h)("backend/services/mcp/index");class eQ{get clients(){return global.__mcp_clients}get connectingServers(){return global.__mcp_connecting}get activeTransports(){return global.__mcp_active_transports}static{this.MAX_STDERR_LOG_ENTRIES=200}appendStderrLog(a,b){let c=this.stderrLogs.get(a)||[];c.push(b),c.length>eQ.MAX_STDERR_LOG_ENTRIES&&c.splice(0,c.length-eQ.MAX_STDERR_LOG_ENTRIES),this.stderrLogs.set(a,c)}deregisterClient(a){this.clients.delete(a),this.activeTransports.delete(a)}clearRetryTimer(a){let b=this.connectionRetryTimers.get(a);b&&(clearTimeout(b),this.connectionRetryTimers.delete(a),eP.debug(`Cleared retry timer for server ${a}`))}scheduleConnectionRetry(a,b){this.clearRetryTimer(a);let c=this.connectionRetryAttempts.get(a)||0;if(c>=5){eP.warn(`Maximum retry attempts (5) reached for server ${a}, stopping retries`),this.connectionRetryAttempts.delete(a);return}let d=Math.min(5e3*Math.pow(2,c),3e5);eP.info(`Scheduling connection retry for server ${a} in ${d}ms (attempt ${c+1}/5)`);let e=setTimeout(async()=>{eP.info(`Attempting to reconnect server ${a} (attempt ${c+1}/5)`);let b=await this.getServerConfig(a);if(!b){eP.info(`Server ${a} configuration not found, stopping retry attempts`),this.connectionRetryAttempts.delete(a);return}if(b.disabled){eP.info(`Server ${a} is now disabled, stopping retry attempts`),this.connectionRetryAttempts.delete(a);return}let d=this.getClient(a);if(d)try{await d.ping({timeout:5e3}),eP.info(`Server ${a} is already connected and responsive, cancelling retry`),this.connectionRetryAttempts.delete(a);return}catch(b){eP.warn(`Server ${a} has a registered client but ping failed (${b instanceof Error?b.message:String(b)}); reconnecting from scratch`)}this.connectionRetryAttempts.set(a,c+1);try{let e=d?await this.forceReconnect(a):await this.connectServer(b);if(e.success)eP.info(`Successfully reconnected server ${a} after ${c+1} attempts`),this.connectionRetryAttempts.delete(a);else{if(eP.warn(`Failed to reconnect server ${a}: ${e.error}`),e.requiresAuthentication){eP.info(`Server ${a} requires authentication, stopping retry attempts`),this.connectionRetryAttempts.delete(a);return}this.scheduleConnectionRetry(a,b)}}catch(c){eP.error(`Error during retry connection for server ${a}:`,c),this.scheduleConnectionRetry(a,b)}},d);this.connectionRetryTimers.set(a,e)}isStartingUp(){return!0===global.__mcp_starting_up}setStartingUp(a){global.__mcp_starting_up=a,eP.info(`Backend startup state set to: ${a?"starting":"complete"}`)}getClient(a){let b=this.clients.get(a);if(b&&cg(b)){eP.warn(`getClient: client for ${a} has a closed/aborted connection — evicting it`),this.clients.delete(a);return}return eP.debug(`getClient: Looking for client: ${a}`,b?"Found":"Not found"),b}async loadServerConfigs(){eP.debug("loadServerConfigs: Entering method");try{let a=await (0,b_.loadServerConfigs)();if(!Array.isArray(a))return eP.warn("loadServerConfigs: Received non-array response",a),a;return a.some(a=>a.name===eO._)?eP.warn(`loadServerConfigs: A stored server is named "${eO._}" — it shadows FLUJO's built-in server`):a.push((0,eO.z)()),eP.debug(`loadServerConfigs: Loaded ${a.length} server configs`),a}catch(a){return eP.warn("loadServerConfigs: Failed to load server configs:",a),{success:!1,error:`Failed to load server configs: ${a instanceof Error?a.message:"Unknown error"}`}}}async getServerConfig(a){eP.debug(`getServerConfig: Looking up config for server ${a}`);let b=await this.loadServerConfigs();if(!Array.isArray(b))return eP.warn(`getServerConfig: Failed to load configs for ${a}:`,b.error),null;let c=b.find(b=>b.name===a);return c||(eP.warn(`getServerConfig: Server ${a} not found in configs`),null)}async isServerDisabled(a){let b=await this.getServerConfig(a);return b?.disabled===!0}async isInternalServer(a){if(a!==eO._)return!1;let b=await (0,b_.loadServerConfigs)();return!Array.isArray(b)||!b.some(a=>a.name===eO._)}async connectServer(a){let b="string"==typeof a?a:a.name;if(b===eO._&&("string"!=typeof a?!0===a.builtIn:await this.isInternalServer(b)))return this.connectingServers.delete(b),{success:!0};let c=this.inFlightConnects.get(b);if(c)return eP.debug(`connectServer: reusing in-flight connection attempt for ${b}`),c;let d=this.connectServerInternal(a).finally(()=>{this.inFlightConnects.delete(b)});return this.inFlightConnects.set(b,d),d}async connectServerInternal(a){let b;if("string"==typeof a){eP.info(`connectServer: Looking up config for server ${a}`);let c=await this.getServerConfig(a);if(!c)return eP.warn(`connectServer: Server ${a} not found in configs`),{success:!1,error:`Server configuration for "${a}" not found. The server may have been deleted or not properly configured.`};b=c}else b=a;if((("string"==typeof a?b:await this.getServerConfig(b.name))??b).disabled)return eP.info(`connectServer: Server ${b.name} is disabled — refusing to create a client/transport`),this.clearRetryTimer(b.name),this.connectionRetryAttempts.delete(b.name),{success:!1,error:`Server '${b.name}' is disabled. Enable it on the MCP page to use it.`};let c=(0,bT.A)();eP.info(`connectServer: Starting connection for server ${b.name} [RequestID: ${c}]`),this.connectingServers.add(b.name);try{this.stderrLogs.set(b.name,[]),b=await eF(b);let a=this.clients.get(b.name);if(a){let{needsNewClient:c,reason:d}=function(a,b){if(eE.debug("Entering shouldRecreateClient method"),cg(a))return{needsNewClient:!0,reason:"Existing connection is closed"};if((a.__flujoCapKey??"")!==eD(b))return{needsNewClient:!0,reason:"Client capabilities (sampling) changed"};if("websocket"===b.transport){if(!(a.transport instanceof cM))return{needsNewClient:!0,reason:"Transport type changed to websocket"}}else if("streamable"===b.transport){if(!(a.transport instanceof dQ))return{needsNewClient:!0,reason:"Transport type changed to streamable"};let c=a.transport,d=c._url?.toString();if(void 0!==d&&d!==new URL(b.serverUrl).toString())return{needsNewClient:!0,reason:"Streamable server URL changed"};let e=c.__flujoHttpKey;if(!e)return{needsNewClient:!0,reason:"Existing streamable transport has no config key"};if(e!==eJ(b))return{needsNewClient:!0,reason:"Streamable auth/connection parameters changed"}}else if("sse"===b.transport){if(!(a.transport instanceof eo))return{needsNewClient:!0,reason:"Transport type changed to sse"};let c=a.transport,d=c._url?.toString();if(void 0!==d&&d!==new URL(b.serverUrl).toString())return{needsNewClient:!0,reason:"SSE server URL changed"};let e=c.__flujoHttpKey;if(!e)return{needsNewClient:!0,reason:"Existing sse transport has no config key"};if(e!==eJ(b))return{needsNewClient:!0,reason:"SSE auth/connection parameters changed"}}else{if(!(a.transport instanceof bS))return{needsNewClient:!0,reason:"Transport type changed to stdio"};if("stdio"!==b.transport)return{needsNewClient:!0,reason:"Transport type changed from stdio"};let c=a.transport.__flujoStdioKey;if(!c)return{needsNewClient:!0,reason:"Existing stdio transport has no config key"};if(c!==eI(b))return{needsNewClient:!0,reason:"Connection parameters changed"}}return{needsNewClient:!1}}(a,b);if(!c)return eP.info(`connectServer: Server ${b.name} is already connected`),this.lastConnectionError.delete(b.name),this.clearRetryTimer(b.name),this.connectionRetryAttempts.delete(b.name),{success:!0};eP.info(`connectServer: Existing client for ${b.name} is stale (${d}), recreating`),this.deregisterClient(b.name);try{await eN(a,b.name,b)}catch(a){eP.debug(`connectServer: error closing stale client for ${b.name}: ${a instanceof Error?a.message:String(a)}`)}a=void 0}a=eK(b);let c=eL(b);if(c instanceof bS&&c.stderr){let a=b.name;c.stderr.on("data",b=>{let c=b.toString();eP.warn(`stderr: [${a}]: ${c}`),this.appendStderrLog(a,c)})}return c.onclose=()=>{if(this.activeTransports.get(b.name)!==c)return void eP.debug(`connectServer: ignoring close event from a stale/deregistered transport for ${b.name}`);eP.warn(`connectServer: Connection closed for server ${b.name}`),this.deregisterClient(b.name),this.getServerConfig(b.name).then(a=>{if(!a||a.disabled)return void eP.info(`Server ${b.name} is now disabled, skipping reconnection logic`);eP.info(`Connection closed for enabled server ${b.name}, scheduling reconnection`),this.scheduleConnectionRetry(b.name,a)}).catch(a=>{eP.warn(`Error checking server config for ${b.name} during onclose:`,a)})},c.onerror=a=>{if(function(a){let b=a instanceof Error?a.message:String(a);return b.includes("SSE stream disconnected")||b.includes("Failed to reconnect SSE stream")||b.includes("Maximum reconnection attempts")||/\bterminated\b/i.test(b)}(a))return void eP.debug(`connectServer: transient SSE stream disconnect for ${b.name} (self-healing, ignored): ${a instanceof Error?a.message:String(a)}`);if(this.activeTransports.get(b.name)!==c)return void eP.debug(`connectServer: ignoring error event from a stale/deregistered transport for ${b.name}`);if(eP.error(`connectServer: Transport error for server ${b.name}:`),a instanceof Error){eP.error(`Error name: ${a.name}`),eP.error(`Error message: ${a.message}`),eP.error(`Error stack: ${a.stack}`);let b=a.code;void 0!==b&&eP.error(`Error code: ${b}`),eP.error(`Error chain: ${ck(a)}`)}else if(a&&"object"==typeof a){eP.error(`Error type: ${typeof a}`),eP.error(`Error constructor: ${a.constructor?.name||"Unknown"}`);let b=Object.getOwnPropertyNames(a);b.length>0?(eP.error(`Error properties: ${b.join(", ")}`),b.forEach(b=>{try{let c=a[b];eP.error(` ${b}: ${"function"==typeof c?"[Function]":JSON.stringify(c)}`)}catch(a){eP.error(` ${b}: [Unable to serialize: ${a}]`)}})):eP.error("Error object has no enumerable properties");try{let b=JSON.stringify(a);eP.error(`JSON stringified error: ${b}`)}catch(a){eP.error(`Cannot JSON stringify error: ${a}`)}}else eP.error(`Error value: ${String(a)} (type: ${typeof a})`);this.appendStderrLog(b.name,`Transport error: ${ck(a)}`),this.deregisterClient(b.name),this.getServerConfig(b.name).then(a=>{if(!a||a.disabled)return void eP.info(`Server ${b.name} is now disabled, skipping reconnection after transport error`);eP.info(`Transport error for enabled server ${b.name}, scheduling reconnection`),this.scheduleConnectionRetry(b.name,a)}).catch(a=>{eP.warn(`Error checking server config for ${b.name} during onerror:`,a)})},await a.connect(c),this.clients.set(b.name,a),this.activeTransports.set(b.name,c),this.lastConnectionError.delete(b.name),this.clearRetryTimer(b.name),this.connectionRetryAttempts.delete(b.name),eP.info(`connectServer: Successfully connected to ${b.name}`),{success:!0}}catch(f){eP.error(`connectServer: Failed to connect to server ${b.name}:`,f);let a=f instanceof Error?f.message:String(f),c=f instanceof Error?f.name:"";if(a.includes("OAuth authentication required")||"OAuthAuthenticationRequired"===c){if(eP.info(`OAuth authentication required for server ${b.name}`),"streamable"===b.transport){let a=b;a.authorizationUrl&&eP.info(`Authorization URL available for ${b.name}: ${a.authorizationUrl}`)}return{success:!1,error:a,requiresAuthentication:!0}}if(cn(f)){if(eP.info(`OAuth authentication error detected for server ${b.name}: ${a}`),"streamable"===b.transport){let a=b;if(!a.oauthScopes||0===a.oauthScopes.length){eP.info(`Dynamically enabling OAuth for server ${b.name} due to authentication error`);try{let c={...a,oauthScopes:["read"]},d=await this.loadServerConfigs();if(Array.isArray(d)){let a=d.findIndex(a=>a.name===b.name);-1!==a&&(d[a]=c,await (0,b_.q)(new Map(d.map(a=>[a.name,a]))),eP.info(`Updated config for ${b.name} to enable OAuth`))}}catch(a){eP.warn(`Failed to update config for ${b.name} to enable OAuth:`,a)}}}return{success:!1,error:"OAuth authentication failed or tokens have expired. Please re-authenticate.",requiresAuthentication:!0}}let d=this.stderrLogs.get(b.name)||[],e=cl(f,b,d);return this.lastConnectionError.set(b.name,e),{success:!1,error:e}}finally{this.connectingServers.delete(b.name)}}async testConnection(a,b,c){eP.info(`testConnection: Testing connection to ${a.name||"(unnamed)"} via ${a.transport} transport`);let d=a=>{try{b?.(a)}catch{}},e=[],f=null,g=null;try{let b,h=a,i=c?.storedName||a.name;if(("streamable"===a.transport||"sse"===a.transport)&&i){let b=await this.loadServerConfigs(),c=Array.isArray(b)?b.find(a=>a.name===i):void 0,d=c?.headers,e=a.headers;h={...a,headers:function(a,b){if(!a)return a;let c={};for(let[d,e]of Object.entries(a)){if(!d)continue;let{value:a,isSecret:f}=cr(e,d);if(f&&cs(a)){let a=b?.[d];void 0!==a&&(c[d]=a);continue}c[d]=e}return c}(e,d)}}let j=await eF(h);f=eK(j),(g=eL(j))instanceof bS&&g.stderr&&g.stderr.on("data",a=>{let b=a.toString();e.push(b),d({type:"stderr",data:b})}),g.onerror=a=>{let b=`Transport error: ${ck(a)}`;e.push(b),d({type:"stderr",data:b+"\n"})},d({type:"status",phase:"spawning",message:"Starting server / opening transport..."});let k=cx(a)?9e4:15e3,l=cx(a),m=new Promise((a,c)=>{b=setTimeout(()=>c(Error(`Connection timeout after ${k/1e3}s`+(l?" — the package may still be downloading via npx/uvx. Try running the Test again (the package is cached after the first download), or verify the command and network access.":""))),k)});d({type:"status",phase:"handshaking",message:"Performing MCP handshake..."});try{await Promise.race([f.connect(g),m])}finally{b&&clearTimeout(b)}d({type:"status",phase:"listing-tools",message:"Handshake OK — listing tools..."});let n=0;try{let a=await f.listTools();n=Array.isArray(a?.tools)?a.tools.length:0}catch(b){eP.debug(`testConnection: connected to ${a.name} but listTools failed: ${b instanceof Error?b.message:String(b)}`)}return eP.info(`testConnection: Successfully connected to ${a.name} (${n} tools)`),d({type:"result",success:!0,data:{toolCount:n}}),{success:!0,data:{toolCount:n}}}catch(f){eP.warn(`testConnection: Failed to connect to ${a.name}:`,f);let b=cn(f),c=cl(f,a,e);return d({type:"result",success:!1,error:c,requiresAuthentication:b}),{success:!1,error:c,requiresAuthentication:b}}finally{if(f)try{await eN(f,a.name,a,{gracePeriodMs:3e3,killEscalationMs:2e3})}catch(b){eP.debug(`testConnection: error closing test client for ${a.name}: ${b instanceof Error?b.message:String(b)}`)}}}setNodeRoots(a,b,c){for(let d of function(a,b,c){let d=(c??[]).filter(a=>"string"==typeof a&&a.trim().length>0),e=eu().get(b),f=new Set([a]);e&&f.add(e.serverName);let g=new Map;for(let a of f)g.set(a,ev(a));0===d.length?eu().delete(b)&&et.debug(`Cleared node roots for node ${b}`):(eu().set(b,{serverName:a,roots:d}),et.debug(`Registered ${d.length} node root(s) for node ${b} on server ${a}`));let h=[];for(let a of f){let b=ev(a),c=g.get(a)??[];(b.length!==c.length||b.some((a,b)=>a!==c[b]))&&h.push(a)}return h}(a,b,c))this.notifyRootsChanged(d)}notifyRootsChanged(a){let b=this.getClient(a);if(!b)return void eP.debug(`notifyRootsChanged: ${a} not connected, skipping notification`);try{b.sendRootsListChanged().catch(b=>{eP.warn(`notifyRootsChanged: failed to notify ${a}:`,b)}),eP.debug(`notifyRootsChanged: sent roots/list_changed to ${a}`)}catch(b){eP.warn(`notifyRootsChanged: failed to notify ${a}:`,b)}}async disconnectServer(a){if(eP.debug(`disconnectServer: Entering method for server ${a}`),await this.isInternalServer(a))return{success:!0};this.clearRetryTimer(a),this.connectionRetryAttempts.delete(a);let b=this.getClient(a);if(!b)return eP.warn(`disconnectServer: Server ${a} not found in clients map`),this.deregisterClient(a),{success:!1,error:`Server ${a} not found`};this.deregisterClient(a);try{let c=await this.getServerConfig(a);return await eN(b,a,c||void 0),eP.info(`disconnectServer: Disconnected server ${a}`),{success:!0}}catch(b){return eP.warn(`disconnectServer: Failed to disconnect server ${a}:`,b),{success:!1,error:`Failed to disconnect server: ${b instanceof Error?b.message:"Unknown error"}`}}}async forceReconnect(a){if(eP.info(`forceReconnect: Forcing fresh connection for server ${a}`),await this.isInternalServer(a))return{success:!0};let b=this.clients.get(a);if(b){this.deregisterClient(a);let c=await this.getServerConfig(a);try{await eN(b,a,c||void 0)}catch(b){eP.debug(`forceReconnect: error closing stale client for ${a}: ${b instanceof Error?b.message:String(b)}`)}}return this.connectServer(a)}async listServerTools(a){if(eP.debug(`listServerTools: Entering method for server ${a}`),await this.isInternalServer(a)){let{internalToolDefinitions:a}=await Promise.all([c.e(3304),c.e(4561),c.e(1659),c.e(2823),c.e(4637)]).then(c.bind(c,74637));return{tools:a()}}if(await this.isServerDisabled(a)){let b=`Server '${a}' is disabled. Enable it on the MCP page to use it.`;return eP.warn(`listServerTools: ${b}`),{tools:[],error:b}}let b=this.getClient(a);b||eP.warn(`listServerTools: Client not found for ${a}`);let d=await b3(b,a);if(d.error){eP.warn(`listServerTools: Listing tools for ${a} failed (${d.error}); forcing reconnect and retrying once`);let c=await this.forceReconnect(a);if(!c.success)return eP.warn(`listServerTools: Reconnect for ${a} failed: ${c.error}`),{tools:[],error:c.error||d.error};b=this.clients.get(a),(d=await b3(b,a)).error?eP.warn(`listServerTools: Retry after reconnect still failed for ${a}:`,d.error):eP.info(`listServerTools: Recovered after reconnect for ${a}; listed ${d.tools.length} tools`)}else eP.info(`listServerTools: Listed ${d.tools.length} tools for ${a}`);return d}async callTool(a,b,d,e,f){if(eP.debug(`callTool: Entering method for server ${a}, tool ${b}`),await this.isInternalServer(a)){let{internalCallTool:a}=await Promise.all([c.e(3304),c.e(4561),c.e(1659),c.e(2823),c.e(4637)]).then(c.bind(c,74637)),e=await a(this,b,d);return eP.info(`callTool: Dispatched internal tool ${b}`),{success:!0,data:e}}if(await this.isServerDisabled(a)){let b=`Server '${a}' is disabled. Enable it on the MCP page to use it.`;return eP.warn(`callTool: ${b}`),{success:!1,error:b}}let g=this.getClient(a);if(!g){eP.warn(`callTool: No client for ${a}; forcing reconnect before calling ${b}`);let c=await this.forceReconnect(a);c.success?g=this.clients.get(a):eP.warn(`callTool: Reconnect for ${a} failed: ${c.error}`)}let h=await b4(g,a,b,d,e,f);return eP.info(`callTool: Called tool ${b} on ${a}`),h}async listWithReconnect(a,b,c){if(await this.isInternalServer(a))return c;if(await this.isServerDisabled(a)){let b=`Server '${a}' is disabled. Enable it on the MCP page to use it.`;return eP.warn(`listWithReconnect: ${b}`),{...c,error:b}}let d=this.getClient(a);d||eP.warn(`listWithReconnect: Client not found for ${a}`);let e=await b(d,a);if(!e.error)return e;eP.warn(`listWithReconnect: Listing for ${a} failed (${e.error}); forcing reconnect and retrying once`);let f=await this.forceReconnect(a);return f.success?(d=this.clients.get(a),(e=await b(d,a)).error?eP.warn(`listWithReconnect: Retry after reconnect still failed for ${a}:`,e.error):eP.info(`listWithReconnect: Recovered after reconnect for ${a}`),e):(eP.warn(`listWithReconnect: Reconnect for ${a} failed: ${f.error}`),{...c,error:f.error||e.error})}async listServerResources(a){if(eP.debug(`listServerResources: Entering method for server ${a}`),await this.isInternalServer(a)){let{internalListResources:a}=await Promise.all([c.e(3304),c.e(4561),c.e(1659),c.e(4436)]).then(c.bind(c,94436));return a()}return this.listWithReconnect(a,b6,{resources:[]})}async listServerResourceTemplates(a){if(eP.debug(`listServerResourceTemplates: Entering method for server ${a}`),await this.isInternalServer(a)){let{internalListResourceTemplates:a}=await Promise.all([c.e(3304),c.e(4561),c.e(1659),c.e(4436)]).then(c.bind(c,94436));return a()}return this.listWithReconnect(a,b7,{resourceTemplates:[]})}async readResource(a,b){if(eP.debug(`readResource: Entering method for server ${a}, uri ${b}`),await this.isInternalServer(a)){let{internalReadResource:a}=await Promise.all([c.e(3304),c.e(4561),c.e(1659),c.e(4436)]).then(c.bind(c,94436));return a(b)}let d=this.getClient(a);d||eP.warn(`readResource: Client not found for ${a}`);let e=await b8(d,a,b);return eP.info(`readResource: Read resource ${b} on ${a}`),e}async listServerPrompts(a){return eP.debug(`listServerPrompts: Entering method for server ${a}`),this.listWithReconnect(a,ca,{prompts:[]})}async getPrompt(a,b,c){eP.debug(`getPrompt: Entering method for server ${a}, prompt ${b}`);let d=this.getClient(a);d||eP.warn(`getPrompt: Client not found for ${a}`);let e=await cb(d,a,b,c);return eP.info(`getPrompt: Got prompt ${b} on ${a}`),e}async resolveOAuthSecretForSave(a,b){return a===cp.RJ?b??"":a?a.startsWith("${global:")||a.startsWith("encrypted:")||a.startsWith("encrypted_failed:")?a:await (0,co.Rs)(a):""}async resolveHeadersForSave(a,b){let c={};for(let[d,e]of Object.entries(a||{})){if(!d)continue;let{value:a,isSecret:f}=cr(e,d);if(!f){""!==a&&(c[d]={value:a,metadata:{isSecret:!1}});continue}if(cs(a)){let a=b?.[d];void 0!==a&&(c[d]=a);continue}if(a){if("string"==typeof a&&a.startsWith("${global:")||a.startsWith("encrypted:")||a.startsWith("encrypted_failed:")){c[d]={value:a,metadata:{isSecret:!0}};continue}c[d]={value:await (0,co.Rs)(a),metadata:{isSecret:!0}}}}return c}async ensureRemoteServerRootDir(a){try{if(!["streamable","sse","websocket"].includes(a.transport))return;let b=(a.rootPath||"").trim();if(!b)return;let c=bX().resolve((0,bZ.ok)(),b);if(bX().dirname(c)===c)return;await bV().mkdir(c,{recursive:!0}),eP.debug(`ensureRemoteServerRootDir: ensured ${c} for ${a.name}`)}catch(b){eP.warn(`ensureRemoteServerRootDir: could not create root dir for ${a.name}:`,b)}}async updateServerConfig(a,b){if(eP.debug(`updateServerConfig: Entering method for server ${a}`),await this.isInternalServer(a))return{success:!1,error:`"${eO._}" is FLUJO's built-in server and cannot be created or edited.`};let c=await this.loadServerConfigs();if(!Array.isArray(c))return eP.warn("updateServerConfig: Failed to load configs:",c.error),c;let d=c.find(b=>b.name===a),e=!!d&&"string"==typeof b.name&&b.name!==a;if(e&&c.some(a=>a.name===b.name))return eP.warn(`updateServerConfig: Refusing to rename ${a} -> ${b.name}: name already in use`),{success:!1,error:`A server named "${b.name}" already exists`};if(!d&&b.name)eP.info(`updateServerConfig: Creating new server config for ${b.name}`),d={name:b.name,transport:"stdio",command:"",args:[],env:{},disabled:!1,autoApprove:[],_buildCommand:"",_installCommand:"",rootPath:""},c.push(d);else if(!d)return eP.warn(`updateServerConfig: Server ${a} not found`),{success:!1,error:`Server ${a} not found`};if(b.env){eP.debug(`updateServerConfig: Resolving global variables in env for ${a}`);try{eP.debug(`Original env variables for ${a}:`,JSON.stringify(b.env,null,2)),b.env=await (0,b0.c)(b.env),eP.debug(`Resolved env variables for ${a}:`,JSON.stringify(b.env,null,2)),eP.debug(`updateServerConfig: Successfully resolved global variables for ${a}`)}catch(b){eP.warn(`updateServerConfig: Error resolving global variables for ${a}:`,b)}}let f=b.oauthClientSecret;if(void 0!==f){let a=d.oauthClientSecret;b.oauthClientSecret=await this.resolveOAuthSecretForSave(f,a)}let g=b.headers;if(void 0!==g){let a=d.headers;b.headers=await this.resolveHeadersForSave(g,a)}let h={...d};h={...d,...b};let i=JSON.stringify(d.roots??[])!==JSON.stringify(h.roots??[])||(d.rootPath??"")!==(h.rootPath??""),j=c.findIndex(b=>b.name===a);-1!==j?c[j]=h:h.name&&c.push(h);let k=await (0,b_.q)(new Map(c.map(a=>[a.name,a])));return k.success?(await this.ensureRemoteServerRootDir(h),e?(this.clients.has(a)?await this.disconnectServer(a):(this.clearRetryTimer(a),this.connectionRetryAttempts.delete(a)),this.stderrLogs.delete(a),this.lastConnectionError.delete(a),await this.handleConnectionStateChange(h.name,h)):await this.handleConnectionStateChange(a,h),i&&this.notifyRootsChanged(h.name),eP.info(`updateServerConfig: Successfully updated config for ${a}${e?` (renamed to ${h.name})`:""}`),h):(eP.warn(`updateServerConfig: Failed to save config for ${a}:`,k.error),k)}async handleConnectionStateChange(a,b){eP.debug(`handleConnectionStateChange: Entering method for server ${a}`);let c=!!this.getClient(a),d=!b.disabled;if(c&&!d){eP.info(`handleConnectionStateChange: Disconnecting disabled server ${a}`);try{await this.disconnectServer(a)}catch(b){eP.warn(`handleConnectionStateChange: Failed to disconnect server ${a} during update:`,b)}}else!c&&d?(eP.info(`handleConnectionStateChange: Connecting previously disabled server ${a}`),await this.connectServer(b)):c&&d?(eP.info(`handleConnectionStateChange: Re-applying config to connected server ${a}`),await this.connectServer(b)):d||(eP.info(`handleConnectionStateChange: Clearing retry timers for disabled server ${a}`),this.clearRetryTimer(a),this.connectionRetryAttempts.delete(a))}async clearRetryTimersForDisabledServers(){eP.debug("clearRetryTimersForDisabledServers: Checking for disabled servers with active retry timers");try{let a=await this.loadServerConfigs();if(!Array.isArray(a))return void eP.warn("clearRetryTimersForDisabledServers: Failed to load server configs");for(let b of a.filter(a=>a.disabled))this.connectionRetryTimers.has(b.name)&&(eP.info(`clearRetryTimersForDisabledServers: Clearing retry timer for disabled server ${b.name}`),this.clearRetryTimer(b.name),this.connectionRetryAttempts.delete(b.name))}catch(a){eP.error("clearRetryTimersForDisabledServers: Error clearing retry timers:",a)}}async deleteServerConfig(a){if(eP.debug(`deleteServerConfig: Entering method for server ${a}`),await this.isInternalServer(a))return{success:!1,error:`"${eO._}" is FLUJO's built-in server and cannot be deleted.`};this.clients.has(a)&&(eP.info(`deleteServerConfig: Disconnecting server ${a} before deletion`),await this.disconnectServer(a));let b=await this.loadServerConfigs();if(!Array.isArray(b))return eP.warn("deleteServerConfig: Failed to load configs:",b.error),b;let c=b.findIndex(b=>b.name===a);if(-1===c)return eP.warn(`deleteServerConfig: Server ${a} not found in configs`),{success:!1,error:`Server ${a} not found`};b.splice(c,1),eP.debug(`deleteServerConfig: Saving updated configs after deleting ${a}`);let d=await (0,b_.q)(new Map(b.map(a=>[a.name,a])));return d.success?eP.info(`deleteServerConfig: Successfully deleted server ${a}`):eP.warn(`deleteServerConfig: Error saving configs after deleting ${a}:`,d.error),d}async getServerStatus(a){if(await this.isInternalServer(a))return{status:"connected"};let b=await this.getServerConfig(a);if(!b)return eP.warn(`getServerStatus: Server ${a} not found`),{status:"error",message:`Server ${a} configuration not found. The server may have been deleted or not properly configured.`};if(b.disabled)return eP.debug(`getServerStatus: Server ${a} is disabled`),{status:"disconnected"};if("streamable"===b.transport&&b.oauthScopes&&b.oauthScopes.length>0){if(!b.oauthTokens||!b.oauthTokens.access_token)return eP.info(`getServerStatus: Server ${a} requires OAuth authentication but has no valid tokens`),{status:"requires_authentication",message:"OAuth authentication required. Click the authenticate button to complete the OAuth flow."};if(!b.oauthTokens.refresh_token&&b.oauthTokens.expires_in&&b.oauthTokens.issued_at){let c=b.oauthTokens.issued_at,d=b.oauthTokens.expires_in;if(Math.floor(Date.now()/1e3)>=c+d)return eP.info(`getServerStatus: OAuth tokens for ${a} have expired and no refresh token is available`),{status:"requires_authentication",message:"OAuth tokens have expired. Please re-authenticate."}}}let c=(this.stderrLogs.get(a)||[]).join("\n").trim(),d=this.lastConnectionError.get(a);if(this.getClient(a))return eP.info(`getServerStatus: Server ${a} is connected`),{status:"connected",stderrOutput:c||void 0};{let b=this.isStartingUp()&&!this.lastConnectionError.has(a);if(this.connectingServers.has(a)||b)return eP.info(`getServerStatus: Server ${a} is still connecting`),{status:"connecting",message:"Server is starting up. This may take a few moments."};if(c&&(c.includes("OAuth authentication required")||c.includes("invalid_token")))return eP.info(`getServerStatus: OAuth authentication error detected for ${a}`),{status:"requires_authentication",message:"OAuth authentication required. Please complete the OAuth flow.",stderrOutput:c};let e=c||d;return e?(eP.info(`getServerStatus: Using ${c?"stderr output":"persisted connection error"} as error message for ${a}`),{status:"error",message:e,stderrOutput:c||void 0}):(eP.info(`getServerStatus: No specific error details available for ${a}`),{status:"error",message:`Server ${a} is configured but not connected. The server process may have crashed or been terminated.`,stderrOutput:void 0})}}async startEnabledServers(){eP.info("Starting all enabled servers"),this.setStartingUp(!0);try{await this.clearRetryTimersForDisabledServers();let a=await this.loadServerConfigs();if(!Array.isArray(a))return void eP.warn("Failed to load server configs, cannot start servers");let b=a.filter(a=>!a.disabled);eP.info(`Found ${b.length} enabled servers to start`),eP.debug(`${b}`),b.forEach(a=>this.connectingServers.add(a.name));let c=Math.max(1,Number(process.env.FLUJO_MCP_BOOT_CONCURRENCY)||2);eP.info(`Connecting ${b.length} enabled servers with boot concurrency ${c}`),await b$(b,c,async a=>{eP.info(`Starting server: ${a.name}`),await this.connectServer(a).catch(b=>{eP.error(`Failed to start server ${a.name}:`,b)})})}finally{this.setStartingUp(!1)}}async getAvailableClients(){try{let a=await this.loadServerConfigs();if(!a||"error"in a)return eP.warn("getAvailableClients: Failed to load server configs:",a?.error),[];return(await Promise.all(a.map(async a=>{try{let b=await this.getServerStatus(a.name);return{name:a.name,status:"string"==typeof b?b:b.status,connected:"string"==typeof b?"connected"===b:"connected"===b.status}}catch(b){return eP.warn(`getAvailableClients: Error getting status for ${a.name}:`,b),{name:a.name,status:"error",connected:!1}}}))).map(a=>`${a.name} (${a.status})`)}catch(a){return eP.error("getAvailableClients: Error getting available clients:",a),[]}}constructor(){this.stderrLogs=new Map,this.lastConnectionError=new Map,this.inFlightConnects=new Map,this.connectionRetryTimers=new Map,this.connectionRetryAttempts=new Map}}let eR=new eQ},82538:a=>{"use strict";a.exports=EvalError},83e3:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.Impersonated=b.IMPERSONATED_ACCOUNT_TYPE=void 0;let d=c(49633),e=c(79792),f=c(45388);b.IMPERSONATED_ACCOUNT_TYPE="impersonated_service_account";class g extends d.OAuth2Client{sourceClient;targetPrincipal;targetScopes;delegates;lifetime;endpoint;constructor(a={}){if(super(a),this.credentials={expiry_date:1,refresh_token:"impersonated-placeholder"},this.sourceClient=a.sourceClient??new d.OAuth2Client,this.targetPrincipal=a.targetPrincipal??"",this.delegates=a.delegates??[],this.targetScopes=a.targetScopes??[],this.lifetime=a.lifetime??3600,(0,f.originalOrCamelOptions)(a).get("universe_domain")){if(this.sourceClient.universeDomain!==this.universeDomain)throw RangeError(`Universe domain ${this.sourceClient.universeDomain} in source credentials does not match ${this.universeDomain} universe domain set for impersonated credentials.`)}else this.universeDomain=this.sourceClient.universeDomain;this.endpoint=a.endpoint??`https://iamcredentials.${this.universeDomain}`}async sign(a){await this.sourceClient.getAccessToken();let b=`projects/-/serviceAccounts/${this.targetPrincipal}`,c=`${this.endpoint}/v1/${b}:signBlob`,d={delegates:this.delegates,payload:Buffer.from(a).toString("base64")};return(await this.sourceClient.request({...g.RETRY_CONFIG,url:c,data:d,method:"POST"})).data}getTargetPrincipal(){return this.targetPrincipal}async refreshToken(){try{await this.sourceClient.getAccessToken();let a="projects/-/serviceAccounts/"+this.targetPrincipal,b=`${this.endpoint}/v1/${a}:generateAccessToken`,c={delegates:this.delegates,scope:this.targetScopes,lifetime:this.lifetime+"s"},d=await this.sourceClient.request({...g.RETRY_CONFIG,url:b,data:c,method:"POST"}),e=d.data;return this.credentials.access_token=e.accessToken,this.credentials.expiry_date=Date.parse(e.expireTime),{tokens:this.credentials,res:d}}catch(c){if(!(c instanceof Error))throw c;let a=0,b="";if(c instanceof e.GaxiosError&&(a=c?.response?.data?.error?.status,b=c?.response?.data?.error?.message),a&&b)throw c.message=`${a}: unable to impersonate: ${b}`,c;throw c.message=`unable to impersonate: ${c}`,c}}async fetchIdToken(a,b){await this.sourceClient.getAccessToken();let c=`projects/-/serviceAccounts/${this.targetPrincipal}`,d=`${this.endpoint}/v1/${c}:generateIdToken`,e={delegates:this.delegates,audience:a,includeEmail:b?.includeEmail??!0,useEmailAzp:b?.includeEmail??!0};return(await this.sourceClient.request({...g.RETRY_CONFIG,url:d,data:e,method:"POST"})).data.token}}b.Impersonated=g},83346:(a,b,c)=>{var d=c(55369).stringify,e=c(46671);a.exports=function(a){return{parse:e(a),stringify:d}},a.exports.parse=e(),a.exports.stringify=d},83529:a=>{"use strict";a.exports=JSON.parse('{"application/1d-interleaved-parityfec":{"source":"iana"},"application/3gpdash-qoe-report+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/3gpp-ims+xml":{"source":"iana","compressible":true},"application/3gpphal+json":{"source":"iana","compressible":true},"application/3gpphalforms+json":{"source":"iana","compressible":true},"application/a2l":{"source":"iana"},"application/ace+cbor":{"source":"iana"},"application/activemessage":{"source":"iana"},"application/activity+json":{"source":"iana","compressible":true},"application/alto-costmap+json":{"source":"iana","compressible":true},"application/alto-costmapfilter+json":{"source":"iana","compressible":true},"application/alto-directory+json":{"source":"iana","compressible":true},"application/alto-endpointcost+json":{"source":"iana","compressible":true},"application/alto-endpointcostparams+json":{"source":"iana","compressible":true},"application/alto-endpointprop+json":{"source":"iana","compressible":true},"application/alto-endpointpropparams+json":{"source":"iana","compressible":true},"application/alto-error+json":{"source":"iana","compressible":true},"application/alto-networkmap+json":{"source":"iana","compressible":true},"application/alto-networkmapfilter+json":{"source":"iana","compressible":true},"application/alto-updatestreamcontrol+json":{"source":"iana","compressible":true},"application/alto-updatestreamparams+json":{"source":"iana","compressible":true},"application/aml":{"source":"iana"},"application/andrew-inset":{"source":"iana","extensions":["ez"]},"application/applefile":{"source":"iana"},"application/applixware":{"source":"apache","extensions":["aw"]},"application/at+jwt":{"source":"iana"},"application/atf":{"source":"iana"},"application/atfx":{"source":"iana"},"application/atom+xml":{"source":"iana","compressible":true,"extensions":["atom"]},"application/atomcat+xml":{"source":"iana","compressible":true,"extensions":["atomcat"]},"application/atomdeleted+xml":{"source":"iana","compressible":true,"extensions":["atomdeleted"]},"application/atomicmail":{"source":"iana"},"application/atomsvc+xml":{"source":"iana","compressible":true,"extensions":["atomsvc"]},"application/atsc-dwd+xml":{"source":"iana","compressible":true,"extensions":["dwd"]},"application/atsc-dynamic-event-message":{"source":"iana"},"application/atsc-held+xml":{"source":"iana","compressible":true,"extensions":["held"]},"application/atsc-rdt+json":{"source":"iana","compressible":true},"application/atsc-rsat+xml":{"source":"iana","compressible":true,"extensions":["rsat"]},"application/atxml":{"source":"iana"},"application/auth-policy+xml":{"source":"iana","compressible":true},"application/bacnet-xdd+zip":{"source":"iana","compressible":false},"application/batch-smtp":{"source":"iana"},"application/bdoc":{"compressible":false,"extensions":["bdoc"]},"application/beep+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/calendar+json":{"source":"iana","compressible":true},"application/calendar+xml":{"source":"iana","compressible":true,"extensions":["xcs"]},"application/call-completion":{"source":"iana"},"application/cals-1840":{"source":"iana"},"application/captive+json":{"source":"iana","compressible":true},"application/cbor":{"source":"iana"},"application/cbor-seq":{"source":"iana"},"application/cccex":{"source":"iana"},"application/ccmp+xml":{"source":"iana","compressible":true},"application/ccxml+xml":{"source":"iana","compressible":true,"extensions":["ccxml"]},"application/cdfx+xml":{"source":"iana","compressible":true,"extensions":["cdfx"]},"application/cdmi-capability":{"source":"iana","extensions":["cdmia"]},"application/cdmi-container":{"source":"iana","extensions":["cdmic"]},"application/cdmi-domain":{"source":"iana","extensions":["cdmid"]},"application/cdmi-object":{"source":"iana","extensions":["cdmio"]},"application/cdmi-queue":{"source":"iana","extensions":["cdmiq"]},"application/cdni":{"source":"iana"},"application/cea":{"source":"iana"},"application/cea-2018+xml":{"source":"iana","compressible":true},"application/cellml+xml":{"source":"iana","compressible":true},"application/cfw":{"source":"iana"},"application/city+json":{"source":"iana","compressible":true},"application/clr":{"source":"iana"},"application/clue+xml":{"source":"iana","compressible":true},"application/clue_info+xml":{"source":"iana","compressible":true},"application/cms":{"source":"iana"},"application/cnrp+xml":{"source":"iana","compressible":true},"application/coap-group+json":{"source":"iana","compressible":true},"application/coap-payload":{"source":"iana"},"application/commonground":{"source":"iana"},"application/conference-info+xml":{"source":"iana","compressible":true},"application/cose":{"source":"iana"},"application/cose-key":{"source":"iana"},"application/cose-key-set":{"source":"iana"},"application/cpl+xml":{"source":"iana","compressible":true,"extensions":["cpl"]},"application/csrattrs":{"source":"iana"},"application/csta+xml":{"source":"iana","compressible":true},"application/cstadata+xml":{"source":"iana","compressible":true},"application/csvm+json":{"source":"iana","compressible":true},"application/cu-seeme":{"source":"apache","extensions":["cu"]},"application/cwt":{"source":"iana"},"application/cybercash":{"source":"iana"},"application/dart":{"compressible":true},"application/dash+xml":{"source":"iana","compressible":true,"extensions":["mpd"]},"application/dash-patch+xml":{"source":"iana","compressible":true,"extensions":["mpp"]},"application/dashdelta":{"source":"iana"},"application/davmount+xml":{"source":"iana","compressible":true,"extensions":["davmount"]},"application/dca-rft":{"source":"iana"},"application/dcd":{"source":"iana"},"application/dec-dx":{"source":"iana"},"application/dialog-info+xml":{"source":"iana","compressible":true},"application/dicom":{"source":"iana"},"application/dicom+json":{"source":"iana","compressible":true},"application/dicom+xml":{"source":"iana","compressible":true},"application/dii":{"source":"iana"},"application/dit":{"source":"iana"},"application/dns":{"source":"iana"},"application/dns+json":{"source":"iana","compressible":true},"application/dns-message":{"source":"iana"},"application/docbook+xml":{"source":"apache","compressible":true,"extensions":["dbk"]},"application/dots+cbor":{"source":"iana"},"application/dskpp+xml":{"source":"iana","compressible":true},"application/dssc+der":{"source":"iana","extensions":["dssc"]},"application/dssc+xml":{"source":"iana","compressible":true,"extensions":["xdssc"]},"application/dvcs":{"source":"iana"},"application/ecmascript":{"source":"iana","compressible":true,"extensions":["es","ecma"]},"application/edi-consent":{"source":"iana"},"application/edi-x12":{"source":"iana","compressible":false},"application/edifact":{"source":"iana","compressible":false},"application/efi":{"source":"iana"},"application/elm+json":{"source":"iana","charset":"UTF-8","compressible":true},"application/elm+xml":{"source":"iana","compressible":true},"application/emergencycalldata.cap+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/emergencycalldata.comment+xml":{"source":"iana","compressible":true},"application/emergencycalldata.control+xml":{"source":"iana","compressible":true},"application/emergencycalldata.deviceinfo+xml":{"source":"iana","compressible":true},"application/emergencycalldata.ecall.msd":{"source":"iana"},"application/emergencycalldata.providerinfo+xml":{"source":"iana","compressible":true},"application/emergencycalldata.serviceinfo+xml":{"source":"iana","compressible":true},"application/emergencycalldata.subscriberinfo+xml":{"source":"iana","compressible":true},"application/emergencycalldata.veds+xml":{"source":"iana","compressible":true},"application/emma+xml":{"source":"iana","compressible":true,"extensions":["emma"]},"application/emotionml+xml":{"source":"iana","compressible":true,"extensions":["emotionml"]},"application/encaprtp":{"source":"iana"},"application/epp+xml":{"source":"iana","compressible":true},"application/epub+zip":{"source":"iana","compressible":false,"extensions":["epub"]},"application/eshop":{"source":"iana"},"application/exi":{"source":"iana","extensions":["exi"]},"application/expect-ct-report+json":{"source":"iana","compressible":true},"application/express":{"source":"iana","extensions":["exp"]},"application/fastinfoset":{"source":"iana"},"application/fastsoap":{"source":"iana"},"application/fdt+xml":{"source":"iana","compressible":true,"extensions":["fdt"]},"application/fhir+json":{"source":"iana","charset":"UTF-8","compressible":true},"application/fhir+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/fido.trusted-apps+json":{"compressible":true},"application/fits":{"source":"iana"},"application/flexfec":{"source":"iana"},"application/font-sfnt":{"source":"iana"},"application/font-tdpfr":{"source":"iana","extensions":["pfr"]},"application/font-woff":{"source":"iana","compressible":false},"application/framework-attributes+xml":{"source":"iana","compressible":true},"application/geo+json":{"source":"iana","compressible":true,"extensions":["geojson"]},"application/geo+json-seq":{"source":"iana"},"application/geopackage+sqlite3":{"source":"iana"},"application/geoxacml+xml":{"source":"iana","compressible":true},"application/gltf-buffer":{"source":"iana"},"application/gml+xml":{"source":"iana","compressible":true,"extensions":["gml"]},"application/gpx+xml":{"source":"apache","compressible":true,"extensions":["gpx"]},"application/gxf":{"source":"apache","extensions":["gxf"]},"application/gzip":{"source":"iana","compressible":false,"extensions":["gz"]},"application/h224":{"source":"iana"},"application/held+xml":{"source":"iana","compressible":true},"application/hjson":{"extensions":["hjson"]},"application/http":{"source":"iana"},"application/hyperstudio":{"source":"iana","extensions":["stk"]},"application/ibe-key-request+xml":{"source":"iana","compressible":true},"application/ibe-pkg-reply+xml":{"source":"iana","compressible":true},"application/ibe-pp-data":{"source":"iana"},"application/iges":{"source":"iana"},"application/im-iscomposing+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/index":{"source":"iana"},"application/index.cmd":{"source":"iana"},"application/index.obj":{"source":"iana"},"application/index.response":{"source":"iana"},"application/index.vnd":{"source":"iana"},"application/inkml+xml":{"source":"iana","compressible":true,"extensions":["ink","inkml"]},"application/iotp":{"source":"iana"},"application/ipfix":{"source":"iana","extensions":["ipfix"]},"application/ipp":{"source":"iana"},"application/isup":{"source":"iana"},"application/its+xml":{"source":"iana","compressible":true,"extensions":["its"]},"application/java-archive":{"source":"apache","compressible":false,"extensions":["jar","war","ear"]},"application/java-serialized-object":{"source":"apache","compressible":false,"extensions":["ser"]},"application/java-vm":{"source":"apache","compressible":false,"extensions":["class"]},"application/javascript":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["js","mjs"]},"application/jf2feed+json":{"source":"iana","compressible":true},"application/jose":{"source":"iana"},"application/jose+json":{"source":"iana","compressible":true},"application/jrd+json":{"source":"iana","compressible":true},"application/jscalendar+json":{"source":"iana","compressible":true},"application/json":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["json","map"]},"application/json-patch+json":{"source":"iana","compressible":true},"application/json-seq":{"source":"iana"},"application/json5":{"extensions":["json5"]},"application/jsonml+json":{"source":"apache","compressible":true,"extensions":["jsonml"]},"application/jwk+json":{"source":"iana","compressible":true},"application/jwk-set+json":{"source":"iana","compressible":true},"application/jwt":{"source":"iana"},"application/kpml-request+xml":{"source":"iana","compressible":true},"application/kpml-response+xml":{"source":"iana","compressible":true},"application/ld+json":{"source":"iana","compressible":true,"extensions":["jsonld"]},"application/lgr+xml":{"source":"iana","compressible":true,"extensions":["lgr"]},"application/link-format":{"source":"iana"},"application/load-control+xml":{"source":"iana","compressible":true},"application/lost+xml":{"source":"iana","compressible":true,"extensions":["lostxml"]},"application/lostsync+xml":{"source":"iana","compressible":true},"application/lpf+zip":{"source":"iana","compressible":false},"application/lxf":{"source":"iana"},"application/mac-binhex40":{"source":"iana","extensions":["hqx"]},"application/mac-compactpro":{"source":"apache","extensions":["cpt"]},"application/macwriteii":{"source":"iana"},"application/mads+xml":{"source":"iana","compressible":true,"extensions":["mads"]},"application/manifest+json":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["webmanifest"]},"application/marc":{"source":"iana","extensions":["mrc"]},"application/marcxml+xml":{"source":"iana","compressible":true,"extensions":["mrcx"]},"application/mathematica":{"source":"iana","extensions":["ma","nb","mb"]},"application/mathml+xml":{"source":"iana","compressible":true,"extensions":["mathml"]},"application/mathml-content+xml":{"source":"iana","compressible":true},"application/mathml-presentation+xml":{"source":"iana","compressible":true},"application/mbms-associated-procedure-description+xml":{"source":"iana","compressible":true},"application/mbms-deregister+xml":{"source":"iana","compressible":true},"application/mbms-envelope+xml":{"source":"iana","compressible":true},"application/mbms-msk+xml":{"source":"iana","compressible":true},"application/mbms-msk-response+xml":{"source":"iana","compressible":true},"application/mbms-protection-description+xml":{"source":"iana","compressible":true},"application/mbms-reception-report+xml":{"source":"iana","compressible":true},"application/mbms-register+xml":{"source":"iana","compressible":true},"application/mbms-register-response+xml":{"source":"iana","compressible":true},"application/mbms-schedule+xml":{"source":"iana","compressible":true},"application/mbms-user-service-description+xml":{"source":"iana","compressible":true},"application/mbox":{"source":"iana","extensions":["mbox"]},"application/media-policy-dataset+xml":{"source":"iana","compressible":true,"extensions":["mpf"]},"application/media_control+xml":{"source":"iana","compressible":true},"application/mediaservercontrol+xml":{"source":"iana","compressible":true,"extensions":["mscml"]},"application/merge-patch+json":{"source":"iana","compressible":true},"application/metalink+xml":{"source":"apache","compressible":true,"extensions":["metalink"]},"application/metalink4+xml":{"source":"iana","compressible":true,"extensions":["meta4"]},"application/mets+xml":{"source":"iana","compressible":true,"extensions":["mets"]},"application/mf4":{"source":"iana"},"application/mikey":{"source":"iana"},"application/mipc":{"source":"iana"},"application/missing-blocks+cbor-seq":{"source":"iana"},"application/mmt-aei+xml":{"source":"iana","compressible":true,"extensions":["maei"]},"application/mmt-usd+xml":{"source":"iana","compressible":true,"extensions":["musd"]},"application/mods+xml":{"source":"iana","compressible":true,"extensions":["mods"]},"application/moss-keys":{"source":"iana"},"application/moss-signature":{"source":"iana"},"application/mosskey-data":{"source":"iana"},"application/mosskey-request":{"source":"iana"},"application/mp21":{"source":"iana","extensions":["m21","mp21"]},"application/mp4":{"source":"iana","extensions":["mp4s","m4p"]},"application/mpeg4-generic":{"source":"iana"},"application/mpeg4-iod":{"source":"iana"},"application/mpeg4-iod-xmt":{"source":"iana"},"application/mrb-consumer+xml":{"source":"iana","compressible":true},"application/mrb-publish+xml":{"source":"iana","compressible":true},"application/msc-ivr+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/msc-mixer+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/msword":{"source":"iana","compressible":false,"extensions":["doc","dot"]},"application/mud+json":{"source":"iana","compressible":true},"application/multipart-core":{"source":"iana"},"application/mxf":{"source":"iana","extensions":["mxf"]},"application/n-quads":{"source":"iana","extensions":["nq"]},"application/n-triples":{"source":"iana","extensions":["nt"]},"application/nasdata":{"source":"iana"},"application/news-checkgroups":{"source":"iana","charset":"US-ASCII"},"application/news-groupinfo":{"source":"iana","charset":"US-ASCII"},"application/news-transmission":{"source":"iana"},"application/nlsml+xml":{"source":"iana","compressible":true},"application/node":{"source":"iana","extensions":["cjs"]},"application/nss":{"source":"iana"},"application/oauth-authz-req+jwt":{"source":"iana"},"application/oblivious-dns-message":{"source":"iana"},"application/ocsp-request":{"source":"iana"},"application/ocsp-response":{"source":"iana"},"application/octet-stream":{"source":"iana","compressible":false,"extensions":["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"]},"application/oda":{"source":"iana","extensions":["oda"]},"application/odm+xml":{"source":"iana","compressible":true},"application/odx":{"source":"iana"},"application/oebps-package+xml":{"source":"iana","compressible":true,"extensions":["opf"]},"application/ogg":{"source":"iana","compressible":false,"extensions":["ogx"]},"application/omdoc+xml":{"source":"apache","compressible":true,"extensions":["omdoc"]},"application/onenote":{"source":"apache","extensions":["onetoc","onetoc2","onetmp","onepkg"]},"application/opc-nodeset+xml":{"source":"iana","compressible":true},"application/oscore":{"source":"iana"},"application/oxps":{"source":"iana","extensions":["oxps"]},"application/p21":{"source":"iana"},"application/p21+zip":{"source":"iana","compressible":false},"application/p2p-overlay+xml":{"source":"iana","compressible":true,"extensions":["relo"]},"application/parityfec":{"source":"iana"},"application/passport":{"source":"iana"},"application/patch-ops-error+xml":{"source":"iana","compressible":true,"extensions":["xer"]},"application/pdf":{"source":"iana","compressible":false,"extensions":["pdf"]},"application/pdx":{"source":"iana"},"application/pem-certificate-chain":{"source":"iana"},"application/pgp-encrypted":{"source":"iana","compressible":false,"extensions":["pgp"]},"application/pgp-keys":{"source":"iana","extensions":["asc"]},"application/pgp-signature":{"source":"iana","extensions":["asc","sig"]},"application/pics-rules":{"source":"apache","extensions":["prf"]},"application/pidf+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/pidf-diff+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/pkcs10":{"source":"iana","extensions":["p10"]},"application/pkcs12":{"source":"iana"},"application/pkcs7-mime":{"source":"iana","extensions":["p7m","p7c"]},"application/pkcs7-signature":{"source":"iana","extensions":["p7s"]},"application/pkcs8":{"source":"iana","extensions":["p8"]},"application/pkcs8-encrypted":{"source":"iana"},"application/pkix-attr-cert":{"source":"iana","extensions":["ac"]},"application/pkix-cert":{"source":"iana","extensions":["cer"]},"application/pkix-crl":{"source":"iana","extensions":["crl"]},"application/pkix-pkipath":{"source":"iana","extensions":["pkipath"]},"application/pkixcmp":{"source":"iana","extensions":["pki"]},"application/pls+xml":{"source":"iana","compressible":true,"extensions":["pls"]},"application/poc-settings+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/postscript":{"source":"iana","compressible":true,"extensions":["ai","eps","ps"]},"application/ppsp-tracker+json":{"source":"iana","compressible":true},"application/problem+json":{"source":"iana","compressible":true},"application/problem+xml":{"source":"iana","compressible":true},"application/provenance+xml":{"source":"iana","compressible":true,"extensions":["provx"]},"application/prs.alvestrand.titrax-sheet":{"source":"iana"},"application/prs.cww":{"source":"iana","extensions":["cww"]},"application/prs.cyn":{"source":"iana","charset":"7-BIT"},"application/prs.hpub+zip":{"source":"iana","compressible":false},"application/prs.nprend":{"source":"iana"},"application/prs.plucker":{"source":"iana"},"application/prs.rdf-xml-crypt":{"source":"iana"},"application/prs.xsf+xml":{"source":"iana","compressible":true},"application/pskc+xml":{"source":"iana","compressible":true,"extensions":["pskcxml"]},"application/pvd+json":{"source":"iana","compressible":true},"application/qsig":{"source":"iana"},"application/raml+yaml":{"compressible":true,"extensions":["raml"]},"application/raptorfec":{"source":"iana"},"application/rdap+json":{"source":"iana","compressible":true},"application/rdf+xml":{"source":"iana","compressible":true,"extensions":["rdf","owl"]},"application/reginfo+xml":{"source":"iana","compressible":true,"extensions":["rif"]},"application/relax-ng-compact-syntax":{"source":"iana","extensions":["rnc"]},"application/remote-printing":{"source":"iana"},"application/reputon+json":{"source":"iana","compressible":true},"application/resource-lists+xml":{"source":"iana","compressible":true,"extensions":["rl"]},"application/resource-lists-diff+xml":{"source":"iana","compressible":true,"extensions":["rld"]},"application/rfc+xml":{"source":"iana","compressible":true},"application/riscos":{"source":"iana"},"application/rlmi+xml":{"source":"iana","compressible":true},"application/rls-services+xml":{"source":"iana","compressible":true,"extensions":["rs"]},"application/route-apd+xml":{"source":"iana","compressible":true,"extensions":["rapd"]},"application/route-s-tsid+xml":{"source":"iana","compressible":true,"extensions":["sls"]},"application/route-usd+xml":{"source":"iana","compressible":true,"extensions":["rusd"]},"application/rpki-ghostbusters":{"source":"iana","extensions":["gbr"]},"application/rpki-manifest":{"source":"iana","extensions":["mft"]},"application/rpki-publication":{"source":"iana"},"application/rpki-roa":{"source":"iana","extensions":["roa"]},"application/rpki-updown":{"source":"iana"},"application/rsd+xml":{"source":"apache","compressible":true,"extensions":["rsd"]},"application/rss+xml":{"source":"apache","compressible":true,"extensions":["rss"]},"application/rtf":{"source":"iana","compressible":true,"extensions":["rtf"]},"application/rtploopback":{"source":"iana"},"application/rtx":{"source":"iana"},"application/samlassertion+xml":{"source":"iana","compressible":true},"application/samlmetadata+xml":{"source":"iana","compressible":true},"application/sarif+json":{"source":"iana","compressible":true},"application/sarif-external-properties+json":{"source":"iana","compressible":true},"application/sbe":{"source":"iana"},"application/sbml+xml":{"source":"iana","compressible":true,"extensions":["sbml"]},"application/scaip+xml":{"source":"iana","compressible":true},"application/scim+json":{"source":"iana","compressible":true},"application/scvp-cv-request":{"source":"iana","extensions":["scq"]},"application/scvp-cv-response":{"source":"iana","extensions":["scs"]},"application/scvp-vp-request":{"source":"iana","extensions":["spq"]},"application/scvp-vp-response":{"source":"iana","extensions":["spp"]},"application/sdp":{"source":"iana","extensions":["sdp"]},"application/secevent+jwt":{"source":"iana"},"application/senml+cbor":{"source":"iana"},"application/senml+json":{"source":"iana","compressible":true},"application/senml+xml":{"source":"iana","compressible":true,"extensions":["senmlx"]},"application/senml-etch+cbor":{"source":"iana"},"application/senml-etch+json":{"source":"iana","compressible":true},"application/senml-exi":{"source":"iana"},"application/sensml+cbor":{"source":"iana"},"application/sensml+json":{"source":"iana","compressible":true},"application/sensml+xml":{"source":"iana","compressible":true,"extensions":["sensmlx"]},"application/sensml-exi":{"source":"iana"},"application/sep+xml":{"source":"iana","compressible":true},"application/sep-exi":{"source":"iana"},"application/session-info":{"source":"iana"},"application/set-payment":{"source":"iana"},"application/set-payment-initiation":{"source":"iana","extensions":["setpay"]},"application/set-registration":{"source":"iana"},"application/set-registration-initiation":{"source":"iana","extensions":["setreg"]},"application/sgml":{"source":"iana"},"application/sgml-open-catalog":{"source":"iana"},"application/shf+xml":{"source":"iana","compressible":true,"extensions":["shf"]},"application/sieve":{"source":"iana","extensions":["siv","sieve"]},"application/simple-filter+xml":{"source":"iana","compressible":true},"application/simple-message-summary":{"source":"iana"},"application/simplesymbolcontainer":{"source":"iana"},"application/sipc":{"source":"iana"},"application/slate":{"source":"iana"},"application/smil":{"source":"iana"},"application/smil+xml":{"source":"iana","compressible":true,"extensions":["smi","smil"]},"application/smpte336m":{"source":"iana"},"application/soap+fastinfoset":{"source":"iana"},"application/soap+xml":{"source":"iana","compressible":true},"application/sparql-query":{"source":"iana","extensions":["rq"]},"application/sparql-results+xml":{"source":"iana","compressible":true,"extensions":["srx"]},"application/spdx+json":{"source":"iana","compressible":true},"application/spirits-event+xml":{"source":"iana","compressible":true},"application/sql":{"source":"iana"},"application/srgs":{"source":"iana","extensions":["gram"]},"application/srgs+xml":{"source":"iana","compressible":true,"extensions":["grxml"]},"application/sru+xml":{"source":"iana","compressible":true,"extensions":["sru"]},"application/ssdl+xml":{"source":"apache","compressible":true,"extensions":["ssdl"]},"application/ssml+xml":{"source":"iana","compressible":true,"extensions":["ssml"]},"application/stix+json":{"source":"iana","compressible":true},"application/swid+xml":{"source":"iana","compressible":true,"extensions":["swidtag"]},"application/tamp-apex-update":{"source":"iana"},"application/tamp-apex-update-confirm":{"source":"iana"},"application/tamp-community-update":{"source":"iana"},"application/tamp-community-update-confirm":{"source":"iana"},"application/tamp-error":{"source":"iana"},"application/tamp-sequence-adjust":{"source":"iana"},"application/tamp-sequence-adjust-confirm":{"source":"iana"},"application/tamp-status-query":{"source":"iana"},"application/tamp-status-response":{"source":"iana"},"application/tamp-update":{"source":"iana"},"application/tamp-update-confirm":{"source":"iana"},"application/tar":{"compressible":true},"application/taxii+json":{"source":"iana","compressible":true},"application/td+json":{"source":"iana","compressible":true},"application/tei+xml":{"source":"iana","compressible":true,"extensions":["tei","teicorpus"]},"application/tetra_isi":{"source":"iana"},"application/thraud+xml":{"source":"iana","compressible":true,"extensions":["tfi"]},"application/timestamp-query":{"source":"iana"},"application/timestamp-reply":{"source":"iana"},"application/timestamped-data":{"source":"iana","extensions":["tsd"]},"application/tlsrpt+gzip":{"source":"iana"},"application/tlsrpt+json":{"source":"iana","compressible":true},"application/tnauthlist":{"source":"iana"},"application/token-introspection+jwt":{"source":"iana"},"application/toml":{"compressible":true,"extensions":["toml"]},"application/trickle-ice-sdpfrag":{"source":"iana"},"application/trig":{"source":"iana","extensions":["trig"]},"application/ttml+xml":{"source":"iana","compressible":true,"extensions":["ttml"]},"application/tve-trigger":{"source":"iana"},"application/tzif":{"source":"iana"},"application/tzif-leap":{"source":"iana"},"application/ubjson":{"compressible":false,"extensions":["ubj"]},"application/ulpfec":{"source":"iana"},"application/urc-grpsheet+xml":{"source":"iana","compressible":true},"application/urc-ressheet+xml":{"source":"iana","compressible":true,"extensions":["rsheet"]},"application/urc-targetdesc+xml":{"source":"iana","compressible":true,"extensions":["td"]},"application/urc-uisocketdesc+xml":{"source":"iana","compressible":true},"application/vcard+json":{"source":"iana","compressible":true},"application/vcard+xml":{"source":"iana","compressible":true},"application/vemmi":{"source":"iana"},"application/vividence.scriptfile":{"source":"apache"},"application/vnd.1000minds.decision-model+xml":{"source":"iana","compressible":true,"extensions":["1km"]},"application/vnd.3gpp-prose+xml":{"source":"iana","compressible":true},"application/vnd.3gpp-prose-pc3ch+xml":{"source":"iana","compressible":true},"application/vnd.3gpp-v2x-local-service-information":{"source":"iana"},"application/vnd.3gpp.5gnas":{"source":"iana"},"application/vnd.3gpp.access-transfer-events+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.bsf+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.gmop+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.gtpc":{"source":"iana"},"application/vnd.3gpp.interworking-data":{"source":"iana"},"application/vnd.3gpp.lpp":{"source":"iana"},"application/vnd.3gpp.mc-signalling-ear":{"source":"iana"},"application/vnd.3gpp.mcdata-affiliation-command+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-payload":{"source":"iana"},"application/vnd.3gpp.mcdata-service-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-signalling":{"source":"iana"},"application/vnd.3gpp.mcdata-ue-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-user-profile+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-affiliation-command+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-floor-request+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-location-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-mbms-usage-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-service-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-signed+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-ue-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-ue-init-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-user-profile+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-affiliation-command+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-affiliation-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-location-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-mbms-usage-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-service-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-transmission-request+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-ue-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-user-profile+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mid-call+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.ngap":{"source":"iana"},"application/vnd.3gpp.pfcp":{"source":"iana"},"application/vnd.3gpp.pic-bw-large":{"source":"iana","extensions":["plb"]},"application/vnd.3gpp.pic-bw-small":{"source":"iana","extensions":["psb"]},"application/vnd.3gpp.pic-bw-var":{"source":"iana","extensions":["pvb"]},"application/vnd.3gpp.s1ap":{"source":"iana"},"application/vnd.3gpp.sms":{"source":"iana"},"application/vnd.3gpp.sms+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.srvcc-ext+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.srvcc-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.state-and-event-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.ussd+xml":{"source":"iana","compressible":true},"application/vnd.3gpp2.bcmcsinfo+xml":{"source":"iana","compressible":true},"application/vnd.3gpp2.sms":{"source":"iana"},"application/vnd.3gpp2.tcap":{"source":"iana","extensions":["tcap"]},"application/vnd.3lightssoftware.imagescal":{"source":"iana"},"application/vnd.3m.post-it-notes":{"source":"iana","extensions":["pwn"]},"application/vnd.accpac.simply.aso":{"source":"iana","extensions":["aso"]},"application/vnd.accpac.simply.imp":{"source":"iana","extensions":["imp"]},"application/vnd.acucobol":{"source":"iana","extensions":["acu"]},"application/vnd.acucorp":{"source":"iana","extensions":["atc","acutc"]},"application/vnd.adobe.air-application-installer-package+zip":{"source":"apache","compressible":false,"extensions":["air"]},"application/vnd.adobe.flash.movie":{"source":"iana"},"application/vnd.adobe.formscentral.fcdt":{"source":"iana","extensions":["fcdt"]},"application/vnd.adobe.fxp":{"source":"iana","extensions":["fxp","fxpl"]},"application/vnd.adobe.partial-upload":{"source":"iana"},"application/vnd.adobe.xdp+xml":{"source":"iana","compressible":true,"extensions":["xdp"]},"application/vnd.adobe.xfdf":{"source":"iana","extensions":["xfdf"]},"application/vnd.aether.imp":{"source":"iana"},"application/vnd.afpc.afplinedata":{"source":"iana"},"application/vnd.afpc.afplinedata-pagedef":{"source":"iana"},"application/vnd.afpc.cmoca-cmresource":{"source":"iana"},"application/vnd.afpc.foca-charset":{"source":"iana"},"application/vnd.afpc.foca-codedfont":{"source":"iana"},"application/vnd.afpc.foca-codepage":{"source":"iana"},"application/vnd.afpc.modca":{"source":"iana"},"application/vnd.afpc.modca-cmtable":{"source":"iana"},"application/vnd.afpc.modca-formdef":{"source":"iana"},"application/vnd.afpc.modca-mediummap":{"source":"iana"},"application/vnd.afpc.modca-objectcontainer":{"source":"iana"},"application/vnd.afpc.modca-overlay":{"source":"iana"},"application/vnd.afpc.modca-pagesegment":{"source":"iana"},"application/vnd.age":{"source":"iana","extensions":["age"]},"application/vnd.ah-barcode":{"source":"iana"},"application/vnd.ahead.space":{"source":"iana","extensions":["ahead"]},"application/vnd.airzip.filesecure.azf":{"source":"iana","extensions":["azf"]},"application/vnd.airzip.filesecure.azs":{"source":"iana","extensions":["azs"]},"application/vnd.amadeus+json":{"source":"iana","compressible":true},"application/vnd.amazon.ebook":{"source":"apache","extensions":["azw"]},"application/vnd.amazon.mobi8-ebook":{"source":"iana"},"application/vnd.americandynamics.acc":{"source":"iana","extensions":["acc"]},"application/vnd.amiga.ami":{"source":"iana","extensions":["ami"]},"application/vnd.amundsen.maze+xml":{"source":"iana","compressible":true},"application/vnd.android.ota":{"source":"iana"},"application/vnd.android.package-archive":{"source":"apache","compressible":false,"extensions":["apk"]},"application/vnd.anki":{"source":"iana"},"application/vnd.anser-web-certificate-issue-initiation":{"source":"iana","extensions":["cii"]},"application/vnd.anser-web-funds-transfer-initiation":{"source":"apache","extensions":["fti"]},"application/vnd.antix.game-component":{"source":"iana","extensions":["atx"]},"application/vnd.apache.arrow.file":{"source":"iana"},"application/vnd.apache.arrow.stream":{"source":"iana"},"application/vnd.apache.thrift.binary":{"source":"iana"},"application/vnd.apache.thrift.compact":{"source":"iana"},"application/vnd.apache.thrift.json":{"source":"iana"},"application/vnd.api+json":{"source":"iana","compressible":true},"application/vnd.aplextor.warrp+json":{"source":"iana","compressible":true},"application/vnd.apothekende.reservation+json":{"source":"iana","compressible":true},"application/vnd.apple.installer+xml":{"source":"iana","compressible":true,"extensions":["mpkg"]},"application/vnd.apple.keynote":{"source":"iana","extensions":["key"]},"application/vnd.apple.mpegurl":{"source":"iana","extensions":["m3u8"]},"application/vnd.apple.numbers":{"source":"iana","extensions":["numbers"]},"application/vnd.apple.pages":{"source":"iana","extensions":["pages"]},"application/vnd.apple.pkpass":{"compressible":false,"extensions":["pkpass"]},"application/vnd.arastra.swi":{"source":"iana"},"application/vnd.aristanetworks.swi":{"source":"iana","extensions":["swi"]},"application/vnd.artisan+json":{"source":"iana","compressible":true},"application/vnd.artsquare":{"source":"iana"},"application/vnd.astraea-software.iota":{"source":"iana","extensions":["iota"]},"application/vnd.audiograph":{"source":"iana","extensions":["aep"]},"application/vnd.autopackage":{"source":"iana"},"application/vnd.avalon+json":{"source":"iana","compressible":true},"application/vnd.avistar+xml":{"source":"iana","compressible":true},"application/vnd.balsamiq.bmml+xml":{"source":"iana","compressible":true,"extensions":["bmml"]},"application/vnd.balsamiq.bmpr":{"source":"iana"},"application/vnd.banana-accounting":{"source":"iana"},"application/vnd.bbf.usp.error":{"source":"iana"},"application/vnd.bbf.usp.msg":{"source":"iana"},"application/vnd.bbf.usp.msg+json":{"source":"iana","compressible":true},"application/vnd.bekitzur-stech+json":{"source":"iana","compressible":true},"application/vnd.bint.med-content":{"source":"iana"},"application/vnd.biopax.rdf+xml":{"source":"iana","compressible":true},"application/vnd.blink-idb-value-wrapper":{"source":"iana"},"application/vnd.blueice.multipass":{"source":"iana","extensions":["mpm"]},"application/vnd.bluetooth.ep.oob":{"source":"iana"},"application/vnd.bluetooth.le.oob":{"source":"iana"},"application/vnd.bmi":{"source":"iana","extensions":["bmi"]},"application/vnd.bpf":{"source":"iana"},"application/vnd.bpf3":{"source":"iana"},"application/vnd.businessobjects":{"source":"iana","extensions":["rep"]},"application/vnd.byu.uapi+json":{"source":"iana","compressible":true},"application/vnd.cab-jscript":{"source":"iana"},"application/vnd.canon-cpdl":{"source":"iana"},"application/vnd.canon-lips":{"source":"iana"},"application/vnd.capasystems-pg+json":{"source":"iana","compressible":true},"application/vnd.cendio.thinlinc.clientconf":{"source":"iana"},"application/vnd.century-systems.tcp_stream":{"source":"iana"},"application/vnd.chemdraw+xml":{"source":"iana","compressible":true,"extensions":["cdxml"]},"application/vnd.chess-pgn":{"source":"iana"},"application/vnd.chipnuts.karaoke-mmd":{"source":"iana","extensions":["mmd"]},"application/vnd.ciedi":{"source":"iana"},"application/vnd.cinderella":{"source":"iana","extensions":["cdy"]},"application/vnd.cirpack.isdn-ext":{"source":"iana"},"application/vnd.citationstyles.style+xml":{"source":"iana","compressible":true,"extensions":["csl"]},"application/vnd.claymore":{"source":"iana","extensions":["cla"]},"application/vnd.cloanto.rp9":{"source":"iana","extensions":["rp9"]},"application/vnd.clonk.c4group":{"source":"iana","extensions":["c4g","c4d","c4f","c4p","c4u"]},"application/vnd.cluetrust.cartomobile-config":{"source":"iana","extensions":["c11amc"]},"application/vnd.cluetrust.cartomobile-config-pkg":{"source":"iana","extensions":["c11amz"]},"application/vnd.coffeescript":{"source":"iana"},"application/vnd.collabio.xodocuments.document":{"source":"iana"},"application/vnd.collabio.xodocuments.document-template":{"source":"iana"},"application/vnd.collabio.xodocuments.presentation":{"source":"iana"},"application/vnd.collabio.xodocuments.presentation-template":{"source":"iana"},"application/vnd.collabio.xodocuments.spreadsheet":{"source":"iana"},"application/vnd.collabio.xodocuments.spreadsheet-template":{"source":"iana"},"application/vnd.collection+json":{"source":"iana","compressible":true},"application/vnd.collection.doc+json":{"source":"iana","compressible":true},"application/vnd.collection.next+json":{"source":"iana","compressible":true},"application/vnd.comicbook+zip":{"source":"iana","compressible":false},"application/vnd.comicbook-rar":{"source":"iana"},"application/vnd.commerce-battelle":{"source":"iana"},"application/vnd.commonspace":{"source":"iana","extensions":["csp"]},"application/vnd.contact.cmsg":{"source":"iana","extensions":["cdbcmsg"]},"application/vnd.coreos.ignition+json":{"source":"iana","compressible":true},"application/vnd.cosmocaller":{"source":"iana","extensions":["cmc"]},"application/vnd.crick.clicker":{"source":"iana","extensions":["clkx"]},"application/vnd.crick.clicker.keyboard":{"source":"iana","extensions":["clkk"]},"application/vnd.crick.clicker.palette":{"source":"iana","extensions":["clkp"]},"application/vnd.crick.clicker.template":{"source":"iana","extensions":["clkt"]},"application/vnd.crick.clicker.wordbank":{"source":"iana","extensions":["clkw"]},"application/vnd.criticaltools.wbs+xml":{"source":"iana","compressible":true,"extensions":["wbs"]},"application/vnd.cryptii.pipe+json":{"source":"iana","compressible":true},"application/vnd.crypto-shade-file":{"source":"iana"},"application/vnd.cryptomator.encrypted":{"source":"iana"},"application/vnd.cryptomator.vault":{"source":"iana"},"application/vnd.ctc-posml":{"source":"iana","extensions":["pml"]},"application/vnd.ctct.ws+xml":{"source":"iana","compressible":true},"application/vnd.cups-pdf":{"source":"iana"},"application/vnd.cups-postscript":{"source":"iana"},"application/vnd.cups-ppd":{"source":"iana","extensions":["ppd"]},"application/vnd.cups-raster":{"source":"iana"},"application/vnd.cups-raw":{"source":"iana"},"application/vnd.curl":{"source":"iana"},"application/vnd.curl.car":{"source":"apache","extensions":["car"]},"application/vnd.curl.pcurl":{"source":"apache","extensions":["pcurl"]},"application/vnd.cyan.dean.root+xml":{"source":"iana","compressible":true},"application/vnd.cybank":{"source":"iana"},"application/vnd.cyclonedx+json":{"source":"iana","compressible":true},"application/vnd.cyclonedx+xml":{"source":"iana","compressible":true},"application/vnd.d2l.coursepackage1p0+zip":{"source":"iana","compressible":false},"application/vnd.d3m-dataset":{"source":"iana"},"application/vnd.d3m-problem":{"source":"iana"},"application/vnd.dart":{"source":"iana","compressible":true,"extensions":["dart"]},"application/vnd.data-vision.rdz":{"source":"iana","extensions":["rdz"]},"application/vnd.datapackage+json":{"source":"iana","compressible":true},"application/vnd.dataresource+json":{"source":"iana","compressible":true},"application/vnd.dbf":{"source":"iana","extensions":["dbf"]},"application/vnd.debian.binary-package":{"source":"iana"},"application/vnd.dece.data":{"source":"iana","extensions":["uvf","uvvf","uvd","uvvd"]},"application/vnd.dece.ttml+xml":{"source":"iana","compressible":true,"extensions":["uvt","uvvt"]},"application/vnd.dece.unspecified":{"source":"iana","extensions":["uvx","uvvx"]},"application/vnd.dece.zip":{"source":"iana","extensions":["uvz","uvvz"]},"application/vnd.denovo.fcselayout-link":{"source":"iana","extensions":["fe_launch"]},"application/vnd.desmume.movie":{"source":"iana"},"application/vnd.dir-bi.plate-dl-nosuffix":{"source":"iana"},"application/vnd.dm.delegation+xml":{"source":"iana","compressible":true},"application/vnd.dna":{"source":"iana","extensions":["dna"]},"application/vnd.document+json":{"source":"iana","compressible":true},"application/vnd.dolby.mlp":{"source":"apache","extensions":["mlp"]},"application/vnd.dolby.mobile.1":{"source":"iana"},"application/vnd.dolby.mobile.2":{"source":"iana"},"application/vnd.doremir.scorecloud-binary-document":{"source":"iana"},"application/vnd.dpgraph":{"source":"iana","extensions":["dpg"]},"application/vnd.dreamfactory":{"source":"iana","extensions":["dfac"]},"application/vnd.drive+json":{"source":"iana","compressible":true},"application/vnd.ds-keypoint":{"source":"apache","extensions":["kpxx"]},"application/vnd.dtg.local":{"source":"iana"},"application/vnd.dtg.local.flash":{"source":"iana"},"application/vnd.dtg.local.html":{"source":"iana"},"application/vnd.dvb.ait":{"source":"iana","extensions":["ait"]},"application/vnd.dvb.dvbisl+xml":{"source":"iana","compressible":true},"application/vnd.dvb.dvbj":{"source":"iana"},"application/vnd.dvb.esgcontainer":{"source":"iana"},"application/vnd.dvb.ipdcdftnotifaccess":{"source":"iana"},"application/vnd.dvb.ipdcesgaccess":{"source":"iana"},"application/vnd.dvb.ipdcesgaccess2":{"source":"iana"},"application/vnd.dvb.ipdcesgpdd":{"source":"iana"},"application/vnd.dvb.ipdcroaming":{"source":"iana"},"application/vnd.dvb.iptv.alfec-base":{"source":"iana"},"application/vnd.dvb.iptv.alfec-enhancement":{"source":"iana"},"application/vnd.dvb.notif-aggregate-root+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-container+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-generic+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-ia-msglist+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-ia-registration-request+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-ia-registration-response+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-init+xml":{"source":"iana","compressible":true},"application/vnd.dvb.pfr":{"source":"iana"},"application/vnd.dvb.service":{"source":"iana","extensions":["svc"]},"application/vnd.dxr":{"source":"iana"},"application/vnd.dynageo":{"source":"iana","extensions":["geo"]},"application/vnd.dzr":{"source":"iana"},"application/vnd.easykaraoke.cdgdownload":{"source":"iana"},"application/vnd.ecdis-update":{"source":"iana"},"application/vnd.ecip.rlp":{"source":"iana"},"application/vnd.eclipse.ditto+json":{"source":"iana","compressible":true},"application/vnd.ecowin.chart":{"source":"iana","extensions":["mag"]},"application/vnd.ecowin.filerequest":{"source":"iana"},"application/vnd.ecowin.fileupdate":{"source":"iana"},"application/vnd.ecowin.series":{"source":"iana"},"application/vnd.ecowin.seriesrequest":{"source":"iana"},"application/vnd.ecowin.seriesupdate":{"source":"iana"},"application/vnd.efi.img":{"source":"iana"},"application/vnd.efi.iso":{"source":"iana"},"application/vnd.emclient.accessrequest+xml":{"source":"iana","compressible":true},"application/vnd.enliven":{"source":"iana","extensions":["nml"]},"application/vnd.enphase.envoy":{"source":"iana"},"application/vnd.eprints.data+xml":{"source":"iana","compressible":true},"application/vnd.epson.esf":{"source":"iana","extensions":["esf"]},"application/vnd.epson.msf":{"source":"iana","extensions":["msf"]},"application/vnd.epson.quickanime":{"source":"iana","extensions":["qam"]},"application/vnd.epson.salt":{"source":"iana","extensions":["slt"]},"application/vnd.epson.ssf":{"source":"iana","extensions":["ssf"]},"application/vnd.ericsson.quickcall":{"source":"iana"},"application/vnd.espass-espass+zip":{"source":"iana","compressible":false},"application/vnd.eszigno3+xml":{"source":"iana","compressible":true,"extensions":["es3","et3"]},"application/vnd.etsi.aoc+xml":{"source":"iana","compressible":true},"application/vnd.etsi.asic-e+zip":{"source":"iana","compressible":false},"application/vnd.etsi.asic-s+zip":{"source":"iana","compressible":false},"application/vnd.etsi.cug+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvcommand+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvdiscovery+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvprofile+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvsad-bc+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvsad-cod+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvsad-npvr+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvservice+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvsync+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvueprofile+xml":{"source":"iana","compressible":true},"application/vnd.etsi.mcid+xml":{"source":"iana","compressible":true},"application/vnd.etsi.mheg5":{"source":"iana"},"application/vnd.etsi.overload-control-policy-dataset+xml":{"source":"iana","compressible":true},"application/vnd.etsi.pstn+xml":{"source":"iana","compressible":true},"application/vnd.etsi.sci+xml":{"source":"iana","compressible":true},"application/vnd.etsi.simservs+xml":{"source":"iana","compressible":true},"application/vnd.etsi.timestamp-token":{"source":"iana"},"application/vnd.etsi.tsl+xml":{"source":"iana","compressible":true},"application/vnd.etsi.tsl.der":{"source":"iana"},"application/vnd.eu.kasparian.car+json":{"source":"iana","compressible":true},"application/vnd.eudora.data":{"source":"iana"},"application/vnd.evolv.ecig.profile":{"source":"iana"},"application/vnd.evolv.ecig.settings":{"source":"iana"},"application/vnd.evolv.ecig.theme":{"source":"iana"},"application/vnd.exstream-empower+zip":{"source":"iana","compressible":false},"application/vnd.exstream-package":{"source":"iana"},"application/vnd.ezpix-album":{"source":"iana","extensions":["ez2"]},"application/vnd.ezpix-package":{"source":"iana","extensions":["ez3"]},"application/vnd.f-secure.mobile":{"source":"iana"},"application/vnd.familysearch.gedcom+zip":{"source":"iana","compressible":false},"application/vnd.fastcopy-disk-image":{"source":"iana"},"application/vnd.fdf":{"source":"iana","extensions":["fdf"]},"application/vnd.fdsn.mseed":{"source":"iana","extensions":["mseed"]},"application/vnd.fdsn.seed":{"source":"iana","extensions":["seed","dataless"]},"application/vnd.ffsns":{"source":"iana"},"application/vnd.ficlab.flb+zip":{"source":"iana","compressible":false},"application/vnd.filmit.zfc":{"source":"iana"},"application/vnd.fints":{"source":"iana"},"application/vnd.firemonkeys.cloudcell":{"source":"iana"},"application/vnd.flographit":{"source":"iana","extensions":["gph"]},"application/vnd.fluxtime.clip":{"source":"iana","extensions":["ftc"]},"application/vnd.font-fontforge-sfd":{"source":"iana"},"application/vnd.framemaker":{"source":"iana","extensions":["fm","frame","maker","book"]},"application/vnd.frogans.fnc":{"source":"iana","extensions":["fnc"]},"application/vnd.frogans.ltf":{"source":"iana","extensions":["ltf"]},"application/vnd.fsc.weblaunch":{"source":"iana","extensions":["fsc"]},"application/vnd.fujifilm.fb.docuworks":{"source":"iana"},"application/vnd.fujifilm.fb.docuworks.binder":{"source":"iana"},"application/vnd.fujifilm.fb.docuworks.container":{"source":"iana"},"application/vnd.fujifilm.fb.jfi+xml":{"source":"iana","compressible":true},"application/vnd.fujitsu.oasys":{"source":"iana","extensions":["oas"]},"application/vnd.fujitsu.oasys2":{"source":"iana","extensions":["oa2"]},"application/vnd.fujitsu.oasys3":{"source":"iana","extensions":["oa3"]},"application/vnd.fujitsu.oasysgp":{"source":"iana","extensions":["fg5"]},"application/vnd.fujitsu.oasysprs":{"source":"iana","extensions":["bh2"]},"application/vnd.fujixerox.art-ex":{"source":"iana"},"application/vnd.fujixerox.art4":{"source":"iana"},"application/vnd.fujixerox.ddd":{"source":"iana","extensions":["ddd"]},"application/vnd.fujixerox.docuworks":{"source":"iana","extensions":["xdw"]},"application/vnd.fujixerox.docuworks.binder":{"source":"iana","extensions":["xbd"]},"application/vnd.fujixerox.docuworks.container":{"source":"iana"},"application/vnd.fujixerox.hbpl":{"source":"iana"},"application/vnd.fut-misnet":{"source":"iana"},"application/vnd.futoin+cbor":{"source":"iana"},"application/vnd.futoin+json":{"source":"iana","compressible":true},"application/vnd.fuzzysheet":{"source":"iana","extensions":["fzs"]},"application/vnd.genomatix.tuxedo":{"source":"iana","extensions":["txd"]},"application/vnd.gentics.grd+json":{"source":"iana","compressible":true},"application/vnd.geo+json":{"source":"iana","compressible":true},"application/vnd.geocube+xml":{"source":"iana","compressible":true},"application/vnd.geogebra.file":{"source":"iana","extensions":["ggb"]},"application/vnd.geogebra.slides":{"source":"iana"},"application/vnd.geogebra.tool":{"source":"iana","extensions":["ggt"]},"application/vnd.geometry-explorer":{"source":"iana","extensions":["gex","gre"]},"application/vnd.geonext":{"source":"iana","extensions":["gxt"]},"application/vnd.geoplan":{"source":"iana","extensions":["g2w"]},"application/vnd.geospace":{"source":"iana","extensions":["g3w"]},"application/vnd.gerber":{"source":"iana"},"application/vnd.globalplatform.card-content-mgt":{"source":"iana"},"application/vnd.globalplatform.card-content-mgt-response":{"source":"iana"},"application/vnd.gmx":{"source":"iana","extensions":["gmx"]},"application/vnd.google-apps.document":{"compressible":false,"extensions":["gdoc"]},"application/vnd.google-apps.presentation":{"compressible":false,"extensions":["gslides"]},"application/vnd.google-apps.spreadsheet":{"compressible":false,"extensions":["gsheet"]},"application/vnd.google-earth.kml+xml":{"source":"iana","compressible":true,"extensions":["kml"]},"application/vnd.google-earth.kmz":{"source":"iana","compressible":false,"extensions":["kmz"]},"application/vnd.gov.sk.e-form+xml":{"source":"iana","compressible":true},"application/vnd.gov.sk.e-form+zip":{"source":"iana","compressible":false},"application/vnd.gov.sk.xmldatacontainer+xml":{"source":"iana","compressible":true},"application/vnd.grafeq":{"source":"iana","extensions":["gqf","gqs"]},"application/vnd.gridmp":{"source":"iana"},"application/vnd.groove-account":{"source":"iana","extensions":["gac"]},"application/vnd.groove-help":{"source":"iana","extensions":["ghf"]},"application/vnd.groove-identity-message":{"source":"iana","extensions":["gim"]},"application/vnd.groove-injector":{"source":"iana","extensions":["grv"]},"application/vnd.groove-tool-message":{"source":"iana","extensions":["gtm"]},"application/vnd.groove-tool-template":{"source":"iana","extensions":["tpl"]},"application/vnd.groove-vcard":{"source":"iana","extensions":["vcg"]},"application/vnd.hal+json":{"source":"iana","compressible":true},"application/vnd.hal+xml":{"source":"iana","compressible":true,"extensions":["hal"]},"application/vnd.handheld-entertainment+xml":{"source":"iana","compressible":true,"extensions":["zmm"]},"application/vnd.hbci":{"source":"iana","extensions":["hbci"]},"application/vnd.hc+json":{"source":"iana","compressible":true},"application/vnd.hcl-bireports":{"source":"iana"},"application/vnd.hdt":{"source":"iana"},"application/vnd.heroku+json":{"source":"iana","compressible":true},"application/vnd.hhe.lesson-player":{"source":"iana","extensions":["les"]},"application/vnd.hl7cda+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.hl7v2+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.hp-hpgl":{"source":"iana","extensions":["hpgl"]},"application/vnd.hp-hpid":{"source":"iana","extensions":["hpid"]},"application/vnd.hp-hps":{"source":"iana","extensions":["hps"]},"application/vnd.hp-jlyt":{"source":"iana","extensions":["jlt"]},"application/vnd.hp-pcl":{"source":"iana","extensions":["pcl"]},"application/vnd.hp-pclxl":{"source":"iana","extensions":["pclxl"]},"application/vnd.httphone":{"source":"iana"},"application/vnd.hydrostatix.sof-data":{"source":"iana","extensions":["sfd-hdstx"]},"application/vnd.hyper+json":{"source":"iana","compressible":true},"application/vnd.hyper-item+json":{"source":"iana","compressible":true},"application/vnd.hyperdrive+json":{"source":"iana","compressible":true},"application/vnd.hzn-3d-crossword":{"source":"iana"},"application/vnd.ibm.afplinedata":{"source":"iana"},"application/vnd.ibm.electronic-media":{"source":"iana"},"application/vnd.ibm.minipay":{"source":"iana","extensions":["mpy"]},"application/vnd.ibm.modcap":{"source":"iana","extensions":["afp","listafp","list3820"]},"application/vnd.ibm.rights-management":{"source":"iana","extensions":["irm"]},"application/vnd.ibm.secure-container":{"source":"iana","extensions":["sc"]},"application/vnd.iccprofile":{"source":"iana","extensions":["icc","icm"]},"application/vnd.ieee.1905":{"source":"iana"},"application/vnd.igloader":{"source":"iana","extensions":["igl"]},"application/vnd.imagemeter.folder+zip":{"source":"iana","compressible":false},"application/vnd.imagemeter.image+zip":{"source":"iana","compressible":false},"application/vnd.immervision-ivp":{"source":"iana","extensions":["ivp"]},"application/vnd.immervision-ivu":{"source":"iana","extensions":["ivu"]},"application/vnd.ims.imsccv1p1":{"source":"iana"},"application/vnd.ims.imsccv1p2":{"source":"iana"},"application/vnd.ims.imsccv1p3":{"source":"iana"},"application/vnd.ims.lis.v2.result+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolconsumerprofile+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolproxy+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolproxy.id+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolsettings+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolsettings.simple+json":{"source":"iana","compressible":true},"application/vnd.informedcontrol.rms+xml":{"source":"iana","compressible":true},"application/vnd.informix-visionary":{"source":"iana"},"application/vnd.infotech.project":{"source":"iana"},"application/vnd.infotech.project+xml":{"source":"iana","compressible":true},"application/vnd.innopath.wamp.notification":{"source":"iana"},"application/vnd.insors.igm":{"source":"iana","extensions":["igm"]},"application/vnd.intercon.formnet":{"source":"iana","extensions":["xpw","xpx"]},"application/vnd.intergeo":{"source":"iana","extensions":["i2g"]},"application/vnd.intertrust.digibox":{"source":"iana"},"application/vnd.intertrust.nncp":{"source":"iana"},"application/vnd.intu.qbo":{"source":"iana","extensions":["qbo"]},"application/vnd.intu.qfx":{"source":"iana","extensions":["qfx"]},"application/vnd.iptc.g2.catalogitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.conceptitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.knowledgeitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.newsitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.newsmessage+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.packageitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.planningitem+xml":{"source":"iana","compressible":true},"application/vnd.ipunplugged.rcprofile":{"source":"iana","extensions":["rcprofile"]},"application/vnd.irepository.package+xml":{"source":"iana","compressible":true,"extensions":["irp"]},"application/vnd.is-xpr":{"source":"iana","extensions":["xpr"]},"application/vnd.isac.fcs":{"source":"iana","extensions":["fcs"]},"application/vnd.iso11783-10+zip":{"source":"iana","compressible":false},"application/vnd.jam":{"source":"iana","extensions":["jam"]},"application/vnd.japannet-directory-service":{"source":"iana"},"application/vnd.japannet-jpnstore-wakeup":{"source":"iana"},"application/vnd.japannet-payment-wakeup":{"source":"iana"},"application/vnd.japannet-registration":{"source":"iana"},"application/vnd.japannet-registration-wakeup":{"source":"iana"},"application/vnd.japannet-setstore-wakeup":{"source":"iana"},"application/vnd.japannet-verification":{"source":"iana"},"application/vnd.japannet-verification-wakeup":{"source":"iana"},"application/vnd.jcp.javame.midlet-rms":{"source":"iana","extensions":["rms"]},"application/vnd.jisp":{"source":"iana","extensions":["jisp"]},"application/vnd.joost.joda-archive":{"source":"iana","extensions":["joda"]},"application/vnd.jsk.isdn-ngn":{"source":"iana"},"application/vnd.kahootz":{"source":"iana","extensions":["ktz","ktr"]},"application/vnd.kde.karbon":{"source":"iana","extensions":["karbon"]},"application/vnd.kde.kchart":{"source":"iana","extensions":["chrt"]},"application/vnd.kde.kformula":{"source":"iana","extensions":["kfo"]},"application/vnd.kde.kivio":{"source":"iana","extensions":["flw"]},"application/vnd.kde.kontour":{"source":"iana","extensions":["kon"]},"application/vnd.kde.kpresenter":{"source":"iana","extensions":["kpr","kpt"]},"application/vnd.kde.kspread":{"source":"iana","extensions":["ksp"]},"application/vnd.kde.kword":{"source":"iana","extensions":["kwd","kwt"]},"application/vnd.kenameaapp":{"source":"iana","extensions":["htke"]},"application/vnd.kidspiration":{"source":"iana","extensions":["kia"]},"application/vnd.kinar":{"source":"iana","extensions":["kne","knp"]},"application/vnd.koan":{"source":"iana","extensions":["skp","skd","skt","skm"]},"application/vnd.kodak-descriptor":{"source":"iana","extensions":["sse"]},"application/vnd.las":{"source":"iana"},"application/vnd.las.las+json":{"source":"iana","compressible":true},"application/vnd.las.las+xml":{"source":"iana","compressible":true,"extensions":["lasxml"]},"application/vnd.laszip":{"source":"iana"},"application/vnd.leap+json":{"source":"iana","compressible":true},"application/vnd.liberty-request+xml":{"source":"iana","compressible":true},"application/vnd.llamagraphics.life-balance.desktop":{"source":"iana","extensions":["lbd"]},"application/vnd.llamagraphics.life-balance.exchange+xml":{"source":"iana","compressible":true,"extensions":["lbe"]},"application/vnd.logipipe.circuit+zip":{"source":"iana","compressible":false},"application/vnd.loom":{"source":"iana"},"application/vnd.lotus-1-2-3":{"source":"iana","extensions":["123"]},"application/vnd.lotus-approach":{"source":"iana","extensions":["apr"]},"application/vnd.lotus-freelance":{"source":"iana","extensions":["pre"]},"application/vnd.lotus-notes":{"source":"iana","extensions":["nsf"]},"application/vnd.lotus-organizer":{"source":"iana","extensions":["org"]},"application/vnd.lotus-screencam":{"source":"iana","extensions":["scm"]},"application/vnd.lotus-wordpro":{"source":"iana","extensions":["lwp"]},"application/vnd.macports.portpkg":{"source":"iana","extensions":["portpkg"]},"application/vnd.mapbox-vector-tile":{"source":"iana","extensions":["mvt"]},"application/vnd.marlin.drm.actiontoken+xml":{"source":"iana","compressible":true},"application/vnd.marlin.drm.conftoken+xml":{"source":"iana","compressible":true},"application/vnd.marlin.drm.license+xml":{"source":"iana","compressible":true},"application/vnd.marlin.drm.mdcf":{"source":"iana"},"application/vnd.mason+json":{"source":"iana","compressible":true},"application/vnd.maxar.archive.3tz+zip":{"source":"iana","compressible":false},"application/vnd.maxmind.maxmind-db":{"source":"iana"},"application/vnd.mcd":{"source":"iana","extensions":["mcd"]},"application/vnd.medcalcdata":{"source":"iana","extensions":["mc1"]},"application/vnd.mediastation.cdkey":{"source":"iana","extensions":["cdkey"]},"application/vnd.meridian-slingshot":{"source":"iana"},"application/vnd.mfer":{"source":"iana","extensions":["mwf"]},"application/vnd.mfmp":{"source":"iana","extensions":["mfm"]},"application/vnd.micro+json":{"source":"iana","compressible":true},"application/vnd.micrografx.flo":{"source":"iana","extensions":["flo"]},"application/vnd.micrografx.igx":{"source":"iana","extensions":["igx"]},"application/vnd.microsoft.portable-executable":{"source":"iana"},"application/vnd.microsoft.windows.thumbnail-cache":{"source":"iana"},"application/vnd.miele+json":{"source":"iana","compressible":true},"application/vnd.mif":{"source":"iana","extensions":["mif"]},"application/vnd.minisoft-hp3000-save":{"source":"iana"},"application/vnd.mitsubishi.misty-guard.trustweb":{"source":"iana"},"application/vnd.mobius.daf":{"source":"iana","extensions":["daf"]},"application/vnd.mobius.dis":{"source":"iana","extensions":["dis"]},"application/vnd.mobius.mbk":{"source":"iana","extensions":["mbk"]},"application/vnd.mobius.mqy":{"source":"iana","extensions":["mqy"]},"application/vnd.mobius.msl":{"source":"iana","extensions":["msl"]},"application/vnd.mobius.plc":{"source":"iana","extensions":["plc"]},"application/vnd.mobius.txf":{"source":"iana","extensions":["txf"]},"application/vnd.mophun.application":{"source":"iana","extensions":["mpn"]},"application/vnd.mophun.certificate":{"source":"iana","extensions":["mpc"]},"application/vnd.motorola.flexsuite":{"source":"iana"},"application/vnd.motorola.flexsuite.adsi":{"source":"iana"},"application/vnd.motorola.flexsuite.fis":{"source":"iana"},"application/vnd.motorola.flexsuite.gotap":{"source":"iana"},"application/vnd.motorola.flexsuite.kmr":{"source":"iana"},"application/vnd.motorola.flexsuite.ttc":{"source":"iana"},"application/vnd.motorola.flexsuite.wem":{"source":"iana"},"application/vnd.motorola.iprm":{"source":"iana"},"application/vnd.mozilla.xul+xml":{"source":"iana","compressible":true,"extensions":["xul"]},"application/vnd.ms-3mfdocument":{"source":"iana"},"application/vnd.ms-artgalry":{"source":"iana","extensions":["cil"]},"application/vnd.ms-asf":{"source":"iana"},"application/vnd.ms-cab-compressed":{"source":"iana","extensions":["cab"]},"application/vnd.ms-color.iccprofile":{"source":"apache"},"application/vnd.ms-excel":{"source":"iana","compressible":false,"extensions":["xls","xlm","xla","xlc","xlt","xlw"]},"application/vnd.ms-excel.addin.macroenabled.12":{"source":"iana","extensions":["xlam"]},"application/vnd.ms-excel.sheet.binary.macroenabled.12":{"source":"iana","extensions":["xlsb"]},"application/vnd.ms-excel.sheet.macroenabled.12":{"source":"iana","extensions":["xlsm"]},"application/vnd.ms-excel.template.macroenabled.12":{"source":"iana","extensions":["xltm"]},"application/vnd.ms-fontobject":{"source":"iana","compressible":true,"extensions":["eot"]},"application/vnd.ms-htmlhelp":{"source":"iana","extensions":["chm"]},"application/vnd.ms-ims":{"source":"iana","extensions":["ims"]},"application/vnd.ms-lrm":{"source":"iana","extensions":["lrm"]},"application/vnd.ms-office.activex+xml":{"source":"iana","compressible":true},"application/vnd.ms-officetheme":{"source":"iana","extensions":["thmx"]},"application/vnd.ms-opentype":{"source":"apache","compressible":true},"application/vnd.ms-outlook":{"compressible":false,"extensions":["msg"]},"application/vnd.ms-package.obfuscated-opentype":{"source":"apache"},"application/vnd.ms-pki.seccat":{"source":"apache","extensions":["cat"]},"application/vnd.ms-pki.stl":{"source":"apache","extensions":["stl"]},"application/vnd.ms-playready.initiator+xml":{"source":"iana","compressible":true},"application/vnd.ms-powerpoint":{"source":"iana","compressible":false,"extensions":["ppt","pps","pot"]},"application/vnd.ms-powerpoint.addin.macroenabled.12":{"source":"iana","extensions":["ppam"]},"application/vnd.ms-powerpoint.presentation.macroenabled.12":{"source":"iana","extensions":["pptm"]},"application/vnd.ms-powerpoint.slide.macroenabled.12":{"source":"iana","extensions":["sldm"]},"application/vnd.ms-powerpoint.slideshow.macroenabled.12":{"source":"iana","extensions":["ppsm"]},"application/vnd.ms-powerpoint.template.macroenabled.12":{"source":"iana","extensions":["potm"]},"application/vnd.ms-printdevicecapabilities+xml":{"source":"iana","compressible":true},"application/vnd.ms-printing.printticket+xml":{"source":"apache","compressible":true},"application/vnd.ms-printschematicket+xml":{"source":"iana","compressible":true},"application/vnd.ms-project":{"source":"iana","extensions":["mpp","mpt"]},"application/vnd.ms-tnef":{"source":"iana"},"application/vnd.ms-windows.devicepairing":{"source":"iana"},"application/vnd.ms-windows.nwprinting.oob":{"source":"iana"},"application/vnd.ms-windows.printerpairing":{"source":"iana"},"application/vnd.ms-windows.wsd.oob":{"source":"iana"},"application/vnd.ms-wmdrm.lic-chlg-req":{"source":"iana"},"application/vnd.ms-wmdrm.lic-resp":{"source":"iana"},"application/vnd.ms-wmdrm.meter-chlg-req":{"source":"iana"},"application/vnd.ms-wmdrm.meter-resp":{"source":"iana"},"application/vnd.ms-word.document.macroenabled.12":{"source":"iana","extensions":["docm"]},"application/vnd.ms-word.template.macroenabled.12":{"source":"iana","extensions":["dotm"]},"application/vnd.ms-works":{"source":"iana","extensions":["wps","wks","wcm","wdb"]},"application/vnd.ms-wpl":{"source":"iana","extensions":["wpl"]},"application/vnd.ms-xpsdocument":{"source":"iana","compressible":false,"extensions":["xps"]},"application/vnd.msa-disk-image":{"source":"iana"},"application/vnd.mseq":{"source":"iana","extensions":["mseq"]},"application/vnd.msign":{"source":"iana"},"application/vnd.multiad.creator":{"source":"iana"},"application/vnd.multiad.creator.cif":{"source":"iana"},"application/vnd.music-niff":{"source":"iana"},"application/vnd.musician":{"source":"iana","extensions":["mus"]},"application/vnd.muvee.style":{"source":"iana","extensions":["msty"]},"application/vnd.mynfc":{"source":"iana","extensions":["taglet"]},"application/vnd.nacamar.ybrid+json":{"source":"iana","compressible":true},"application/vnd.ncd.control":{"source":"iana"},"application/vnd.ncd.reference":{"source":"iana"},"application/vnd.nearst.inv+json":{"source":"iana","compressible":true},"application/vnd.nebumind.line":{"source":"iana"},"application/vnd.nervana":{"source":"iana"},"application/vnd.netfpx":{"source":"iana"},"application/vnd.neurolanguage.nlu":{"source":"iana","extensions":["nlu"]},"application/vnd.nimn":{"source":"iana"},"application/vnd.nintendo.nitro.rom":{"source":"iana"},"application/vnd.nintendo.snes.rom":{"source":"iana"},"application/vnd.nitf":{"source":"iana","extensions":["ntf","nitf"]},"application/vnd.noblenet-directory":{"source":"iana","extensions":["nnd"]},"application/vnd.noblenet-sealer":{"source":"iana","extensions":["nns"]},"application/vnd.noblenet-web":{"source":"iana","extensions":["nnw"]},"application/vnd.nokia.catalogs":{"source":"iana"},"application/vnd.nokia.conml+wbxml":{"source":"iana"},"application/vnd.nokia.conml+xml":{"source":"iana","compressible":true},"application/vnd.nokia.iptv.config+xml":{"source":"iana","compressible":true},"application/vnd.nokia.isds-radio-presets":{"source":"iana"},"application/vnd.nokia.landmark+wbxml":{"source":"iana"},"application/vnd.nokia.landmark+xml":{"source":"iana","compressible":true},"application/vnd.nokia.landmarkcollection+xml":{"source":"iana","compressible":true},"application/vnd.nokia.n-gage.ac+xml":{"source":"iana","compressible":true,"extensions":["ac"]},"application/vnd.nokia.n-gage.data":{"source":"iana","extensions":["ngdat"]},"application/vnd.nokia.n-gage.symbian.install":{"source":"iana","extensions":["n-gage"]},"application/vnd.nokia.ncd":{"source":"iana"},"application/vnd.nokia.pcd+wbxml":{"source":"iana"},"application/vnd.nokia.pcd+xml":{"source":"iana","compressible":true},"application/vnd.nokia.radio-preset":{"source":"iana","extensions":["rpst"]},"application/vnd.nokia.radio-presets":{"source":"iana","extensions":["rpss"]},"application/vnd.novadigm.edm":{"source":"iana","extensions":["edm"]},"application/vnd.novadigm.edx":{"source":"iana","extensions":["edx"]},"application/vnd.novadigm.ext":{"source":"iana","extensions":["ext"]},"application/vnd.ntt-local.content-share":{"source":"iana"},"application/vnd.ntt-local.file-transfer":{"source":"iana"},"application/vnd.ntt-local.ogw_remote-access":{"source":"iana"},"application/vnd.ntt-local.sip-ta_remote":{"source":"iana"},"application/vnd.ntt-local.sip-ta_tcp_stream":{"source":"iana"},"application/vnd.oasis.opendocument.chart":{"source":"iana","extensions":["odc"]},"application/vnd.oasis.opendocument.chart-template":{"source":"iana","extensions":["otc"]},"application/vnd.oasis.opendocument.database":{"source":"iana","extensions":["odb"]},"application/vnd.oasis.opendocument.formula":{"source":"iana","extensions":["odf"]},"application/vnd.oasis.opendocument.formula-template":{"source":"iana","extensions":["odft"]},"application/vnd.oasis.opendocument.graphics":{"source":"iana","compressible":false,"extensions":["odg"]},"application/vnd.oasis.opendocument.graphics-template":{"source":"iana","extensions":["otg"]},"application/vnd.oasis.opendocument.image":{"source":"iana","extensions":["odi"]},"application/vnd.oasis.opendocument.image-template":{"source":"iana","extensions":["oti"]},"application/vnd.oasis.opendocument.presentation":{"source":"iana","compressible":false,"extensions":["odp"]},"application/vnd.oasis.opendocument.presentation-template":{"source":"iana","extensions":["otp"]},"application/vnd.oasis.opendocument.spreadsheet":{"source":"iana","compressible":false,"extensions":["ods"]},"application/vnd.oasis.opendocument.spreadsheet-template":{"source":"iana","extensions":["ots"]},"application/vnd.oasis.opendocument.text":{"source":"iana","compressible":false,"extensions":["odt"]},"application/vnd.oasis.opendocument.text-master":{"source":"iana","extensions":["odm"]},"application/vnd.oasis.opendocument.text-template":{"source":"iana","extensions":["ott"]},"application/vnd.oasis.opendocument.text-web":{"source":"iana","extensions":["oth"]},"application/vnd.obn":{"source":"iana"},"application/vnd.ocf+cbor":{"source":"iana"},"application/vnd.oci.image.manifest.v1+json":{"source":"iana","compressible":true},"application/vnd.oftn.l10n+json":{"source":"iana","compressible":true},"application/vnd.oipf.contentaccessdownload+xml":{"source":"iana","compressible":true},"application/vnd.oipf.contentaccessstreaming+xml":{"source":"iana","compressible":true},"application/vnd.oipf.cspg-hexbinary":{"source":"iana"},"application/vnd.oipf.dae.svg+xml":{"source":"iana","compressible":true},"application/vnd.oipf.dae.xhtml+xml":{"source":"iana","compressible":true},"application/vnd.oipf.mippvcontrolmessage+xml":{"source":"iana","compressible":true},"application/vnd.oipf.pae.gem":{"source":"iana"},"application/vnd.oipf.spdiscovery+xml":{"source":"iana","compressible":true},"application/vnd.oipf.spdlist+xml":{"source":"iana","compressible":true},"application/vnd.oipf.ueprofile+xml":{"source":"iana","compressible":true},"application/vnd.oipf.userprofile+xml":{"source":"iana","compressible":true},"application/vnd.olpc-sugar":{"source":"iana","extensions":["xo"]},"application/vnd.oma-scws-config":{"source":"iana"},"application/vnd.oma-scws-http-request":{"source":"iana"},"application/vnd.oma-scws-http-response":{"source":"iana"},"application/vnd.oma.bcast.associated-procedure-parameter+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.drm-trigger+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.imd+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.ltkm":{"source":"iana"},"application/vnd.oma.bcast.notification+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.provisioningtrigger":{"source":"iana"},"application/vnd.oma.bcast.sgboot":{"source":"iana"},"application/vnd.oma.bcast.sgdd+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.sgdu":{"source":"iana"},"application/vnd.oma.bcast.simple-symbol-container":{"source":"iana"},"application/vnd.oma.bcast.smartcard-trigger+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.sprov+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.stkm":{"source":"iana"},"application/vnd.oma.cab-address-book+xml":{"source":"iana","compressible":true},"application/vnd.oma.cab-feature-handler+xml":{"source":"iana","compressible":true},"application/vnd.oma.cab-pcc+xml":{"source":"iana","compressible":true},"application/vnd.oma.cab-subs-invite+xml":{"source":"iana","compressible":true},"application/vnd.oma.cab-user-prefs+xml":{"source":"iana","compressible":true},"application/vnd.oma.dcd":{"source":"iana"},"application/vnd.oma.dcdc":{"source":"iana"},"application/vnd.oma.dd2+xml":{"source":"iana","compressible":true,"extensions":["dd2"]},"application/vnd.oma.drm.risd+xml":{"source":"iana","compressible":true},"application/vnd.oma.group-usage-list+xml":{"source":"iana","compressible":true},"application/vnd.oma.lwm2m+cbor":{"source":"iana"},"application/vnd.oma.lwm2m+json":{"source":"iana","compressible":true},"application/vnd.oma.lwm2m+tlv":{"source":"iana"},"application/vnd.oma.pal+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.detailed-progress-report+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.final-report+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.groups+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.invocation-descriptor+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.optimized-progress-report+xml":{"source":"iana","compressible":true},"application/vnd.oma.push":{"source":"iana"},"application/vnd.oma.scidm.messages+xml":{"source":"iana","compressible":true},"application/vnd.oma.xcap-directory+xml":{"source":"iana","compressible":true},"application/vnd.omads-email+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.omads-file+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.omads-folder+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.omaloc-supl-init":{"source":"iana"},"application/vnd.onepager":{"source":"iana"},"application/vnd.onepagertamp":{"source":"iana"},"application/vnd.onepagertamx":{"source":"iana"},"application/vnd.onepagertat":{"source":"iana"},"application/vnd.onepagertatp":{"source":"iana"},"application/vnd.onepagertatx":{"source":"iana"},"application/vnd.openblox.game+xml":{"source":"iana","compressible":true,"extensions":["obgx"]},"application/vnd.openblox.game-binary":{"source":"iana"},"application/vnd.openeye.oeb":{"source":"iana"},"application/vnd.openofficeorg.extension":{"source":"apache","extensions":["oxt"]},"application/vnd.openstreetmap.data+xml":{"source":"iana","compressible":true,"extensions":["osm"]},"application/vnd.opentimestamps.ots":{"source":"iana"},"application/vnd.openxmlformats-officedocument.custom-properties+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.customxmlproperties+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawing+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.chart+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.diagramcolors+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.diagramdata+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.diagramlayout+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.diagramstyle+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.extended-properties+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.commentauthors+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.comments+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.handoutmaster+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.notesmaster+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.notesslide+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.presentation":{"source":"iana","compressible":false,"extensions":["pptx"]},"application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.presprops+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slide":{"source":"iana","extensions":["sldx"]},"application/vnd.openxmlformats-officedocument.presentationml.slide+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slidelayout+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slidemaster+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slideshow":{"source":"iana","extensions":["ppsx"]},"application/vnd.openxmlformats-officedocument.presentationml.slideshow.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slideupdateinfo+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.tablestyles+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.tags+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.template":{"source":"iana","extensions":["potx"]},"application/vnd.openxmlformats-officedocument.presentationml.template.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.viewprops+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.calcchain+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.externallink+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcachedefinition+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcacherecords+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivottable+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.querytable+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionheaders+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionlog+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedstrings+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":{"source":"iana","compressible":false,"extensions":["xlsx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheetmetadata+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.tablesinglecells+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.template":{"source":"iana","extensions":["xltx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.usernames+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.volatiledependencies+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.theme+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.themeoverride+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.vmldrawing":{"source":"iana"},"application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.document":{"source":"iana","compressible":false,"extensions":["docx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.glossary+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.fonttable+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.template":{"source":"iana","extensions":["dotx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.template.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.websettings+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-package.core-properties+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-package.digital-signature-xmlsignature+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-package.relationships+xml":{"source":"iana","compressible":true},"application/vnd.oracle.resource+json":{"source":"iana","compressible":true},"application/vnd.orange.indata":{"source":"iana"},"application/vnd.osa.netdeploy":{"source":"iana"},"application/vnd.osgeo.mapguide.package":{"source":"iana","extensions":["mgp"]},"application/vnd.osgi.bundle":{"source":"iana"},"application/vnd.osgi.dp":{"source":"iana","extensions":["dp"]},"application/vnd.osgi.subsystem":{"source":"iana","extensions":["esa"]},"application/vnd.otps.ct-kip+xml":{"source":"iana","compressible":true},"application/vnd.oxli.countgraph":{"source":"iana"},"application/vnd.pagerduty+json":{"source":"iana","compressible":true},"application/vnd.palm":{"source":"iana","extensions":["pdb","pqa","oprc"]},"application/vnd.panoply":{"source":"iana"},"application/vnd.paos.xml":{"source":"iana"},"application/vnd.patentdive":{"source":"iana"},"application/vnd.patientecommsdoc":{"source":"iana"},"application/vnd.pawaafile":{"source":"iana","extensions":["paw"]},"application/vnd.pcos":{"source":"iana"},"application/vnd.pg.format":{"source":"iana","extensions":["str"]},"application/vnd.pg.osasli":{"source":"iana","extensions":["ei6"]},"application/vnd.piaccess.application-licence":{"source":"iana"},"application/vnd.picsel":{"source":"iana","extensions":["efif"]},"application/vnd.pmi.widget":{"source":"iana","extensions":["wg"]},"application/vnd.poc.group-advertisement+xml":{"source":"iana","compressible":true},"application/vnd.pocketlearn":{"source":"iana","extensions":["plf"]},"application/vnd.powerbuilder6":{"source":"iana","extensions":["pbd"]},"application/vnd.powerbuilder6-s":{"source":"iana"},"application/vnd.powerbuilder7":{"source":"iana"},"application/vnd.powerbuilder7-s":{"source":"iana"},"application/vnd.powerbuilder75":{"source":"iana"},"application/vnd.powerbuilder75-s":{"source":"iana"},"application/vnd.preminet":{"source":"iana"},"application/vnd.previewsystems.box":{"source":"iana","extensions":["box"]},"application/vnd.proteus.magazine":{"source":"iana","extensions":["mgz"]},"application/vnd.psfs":{"source":"iana"},"application/vnd.publishare-delta-tree":{"source":"iana","extensions":["qps"]},"application/vnd.pvi.ptid1":{"source":"iana","extensions":["ptid"]},"application/vnd.pwg-multiplexed":{"source":"iana"},"application/vnd.pwg-xhtml-print+xml":{"source":"iana","compressible":true},"application/vnd.qualcomm.brew-app-res":{"source":"iana"},"application/vnd.quarantainenet":{"source":"iana"},"application/vnd.quark.quarkxpress":{"source":"iana","extensions":["qxd","qxt","qwd","qwt","qxl","qxb"]},"application/vnd.quobject-quoxdocument":{"source":"iana"},"application/vnd.radisys.moml+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit-conf+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit-conn+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit-dialog+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit-stream+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-conf+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-base+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-fax-detect+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-fax-sendrecv+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-group+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-speech+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-transform+xml":{"source":"iana","compressible":true},"application/vnd.rainstor.data":{"source":"iana"},"application/vnd.rapid":{"source":"iana"},"application/vnd.rar":{"source":"iana","extensions":["rar"]},"application/vnd.realvnc.bed":{"source":"iana","extensions":["bed"]},"application/vnd.recordare.musicxml":{"source":"iana","extensions":["mxl"]},"application/vnd.recordare.musicxml+xml":{"source":"iana","compressible":true,"extensions":["musicxml"]},"application/vnd.renlearn.rlprint":{"source":"iana"},"application/vnd.resilient.logic":{"source":"iana"},"application/vnd.restful+json":{"source":"iana","compressible":true},"application/vnd.rig.cryptonote":{"source":"iana","extensions":["cryptonote"]},"application/vnd.rim.cod":{"source":"apache","extensions":["cod"]},"application/vnd.rn-realmedia":{"source":"apache","extensions":["rm"]},"application/vnd.rn-realmedia-vbr":{"source":"apache","extensions":["rmvb"]},"application/vnd.route66.link66+xml":{"source":"iana","compressible":true,"extensions":["link66"]},"application/vnd.rs-274x":{"source":"iana"},"application/vnd.ruckus.download":{"source":"iana"},"application/vnd.s3sms":{"source":"iana"},"application/vnd.sailingtracker.track":{"source":"iana","extensions":["st"]},"application/vnd.sar":{"source":"iana"},"application/vnd.sbm.cid":{"source":"iana"},"application/vnd.sbm.mid2":{"source":"iana"},"application/vnd.scribus":{"source":"iana"},"application/vnd.sealed.3df":{"source":"iana"},"application/vnd.sealed.csf":{"source":"iana"},"application/vnd.sealed.doc":{"source":"iana"},"application/vnd.sealed.eml":{"source":"iana"},"application/vnd.sealed.mht":{"source":"iana"},"application/vnd.sealed.net":{"source":"iana"},"application/vnd.sealed.ppt":{"source":"iana"},"application/vnd.sealed.tiff":{"source":"iana"},"application/vnd.sealed.xls":{"source":"iana"},"application/vnd.sealedmedia.softseal.html":{"source":"iana"},"application/vnd.sealedmedia.softseal.pdf":{"source":"iana"},"application/vnd.seemail":{"source":"iana","extensions":["see"]},"application/vnd.seis+json":{"source":"iana","compressible":true},"application/vnd.sema":{"source":"iana","extensions":["sema"]},"application/vnd.semd":{"source":"iana","extensions":["semd"]},"application/vnd.semf":{"source":"iana","extensions":["semf"]},"application/vnd.shade-save-file":{"source":"iana"},"application/vnd.shana.informed.formdata":{"source":"iana","extensions":["ifm"]},"application/vnd.shana.informed.formtemplate":{"source":"iana","extensions":["itp"]},"application/vnd.shana.informed.interchange":{"source":"iana","extensions":["iif"]},"application/vnd.shana.informed.package":{"source":"iana","extensions":["ipk"]},"application/vnd.shootproof+json":{"source":"iana","compressible":true},"application/vnd.shopkick+json":{"source":"iana","compressible":true},"application/vnd.shp":{"source":"iana"},"application/vnd.shx":{"source":"iana"},"application/vnd.sigrok.session":{"source":"iana"},"application/vnd.simtech-mindmapper":{"source":"iana","extensions":["twd","twds"]},"application/vnd.siren+json":{"source":"iana","compressible":true},"application/vnd.smaf":{"source":"iana","extensions":["mmf"]},"application/vnd.smart.notebook":{"source":"iana"},"application/vnd.smart.teacher":{"source":"iana","extensions":["teacher"]},"application/vnd.snesdev-page-table":{"source":"iana"},"application/vnd.software602.filler.form+xml":{"source":"iana","compressible":true,"extensions":["fo"]},"application/vnd.software602.filler.form-xml-zip":{"source":"iana"},"application/vnd.solent.sdkm+xml":{"source":"iana","compressible":true,"extensions":["sdkm","sdkd"]},"application/vnd.spotfire.dxp":{"source":"iana","extensions":["dxp"]},"application/vnd.spotfire.sfs":{"source":"iana","extensions":["sfs"]},"application/vnd.sqlite3":{"source":"iana"},"application/vnd.sss-cod":{"source":"iana"},"application/vnd.sss-dtf":{"source":"iana"},"application/vnd.sss-ntf":{"source":"iana"},"application/vnd.stardivision.calc":{"source":"apache","extensions":["sdc"]},"application/vnd.stardivision.draw":{"source":"apache","extensions":["sda"]},"application/vnd.stardivision.impress":{"source":"apache","extensions":["sdd"]},"application/vnd.stardivision.math":{"source":"apache","extensions":["smf"]},"application/vnd.stardivision.writer":{"source":"apache","extensions":["sdw","vor"]},"application/vnd.stardivision.writer-global":{"source":"apache","extensions":["sgl"]},"application/vnd.stepmania.package":{"source":"iana","extensions":["smzip"]},"application/vnd.stepmania.stepchart":{"source":"iana","extensions":["sm"]},"application/vnd.street-stream":{"source":"iana"},"application/vnd.sun.wadl+xml":{"source":"iana","compressible":true,"extensions":["wadl"]},"application/vnd.sun.xml.calc":{"source":"apache","extensions":["sxc"]},"application/vnd.sun.xml.calc.template":{"source":"apache","extensions":["stc"]},"application/vnd.sun.xml.draw":{"source":"apache","extensions":["sxd"]},"application/vnd.sun.xml.draw.template":{"source":"apache","extensions":["std"]},"application/vnd.sun.xml.impress":{"source":"apache","extensions":["sxi"]},"application/vnd.sun.xml.impress.template":{"source":"apache","extensions":["sti"]},"application/vnd.sun.xml.math":{"source":"apache","extensions":["sxm"]},"application/vnd.sun.xml.writer":{"source":"apache","extensions":["sxw"]},"application/vnd.sun.xml.writer.global":{"source":"apache","extensions":["sxg"]},"application/vnd.sun.xml.writer.template":{"source":"apache","extensions":["stw"]},"application/vnd.sus-calendar":{"source":"iana","extensions":["sus","susp"]},"application/vnd.svd":{"source":"iana","extensions":["svd"]},"application/vnd.swiftview-ics":{"source":"iana"},"application/vnd.sycle+xml":{"source":"iana","compressible":true},"application/vnd.syft+json":{"source":"iana","compressible":true},"application/vnd.symbian.install":{"source":"apache","extensions":["sis","sisx"]},"application/vnd.syncml+xml":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["xsm"]},"application/vnd.syncml.dm+wbxml":{"source":"iana","charset":"UTF-8","extensions":["bdm"]},"application/vnd.syncml.dm+xml":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["xdm"]},"application/vnd.syncml.dm.notification":{"source":"iana"},"application/vnd.syncml.dmddf+wbxml":{"source":"iana"},"application/vnd.syncml.dmddf+xml":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["ddf"]},"application/vnd.syncml.dmtnds+wbxml":{"source":"iana"},"application/vnd.syncml.dmtnds+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.syncml.ds.notification":{"source":"iana"},"application/vnd.tableschema+json":{"source":"iana","compressible":true},"application/vnd.tao.intent-module-archive":{"source":"iana","extensions":["tao"]},"application/vnd.tcpdump.pcap":{"source":"iana","extensions":["pcap","cap","dmp"]},"application/vnd.think-cell.ppttc+json":{"source":"iana","compressible":true},"application/vnd.tmd.mediaflex.api+xml":{"source":"iana","compressible":true},"application/vnd.tml":{"source":"iana"},"application/vnd.tmobile-livetv":{"source":"iana","extensions":["tmo"]},"application/vnd.tri.onesource":{"source":"iana"},"application/vnd.trid.tpt":{"source":"iana","extensions":["tpt"]},"application/vnd.triscape.mxs":{"source":"iana","extensions":["mxs"]},"application/vnd.trueapp":{"source":"iana","extensions":["tra"]},"application/vnd.truedoc":{"source":"iana"},"application/vnd.ubisoft.webplayer":{"source":"iana"},"application/vnd.ufdl":{"source":"iana","extensions":["ufd","ufdl"]},"application/vnd.uiq.theme":{"source":"iana","extensions":["utz"]},"application/vnd.umajin":{"source":"iana","extensions":["umj"]},"application/vnd.unity":{"source":"iana","extensions":["unityweb"]},"application/vnd.uoml+xml":{"source":"iana","compressible":true,"extensions":["uoml"]},"application/vnd.uplanet.alert":{"source":"iana"},"application/vnd.uplanet.alert-wbxml":{"source":"iana"},"application/vnd.uplanet.bearer-choice":{"source":"iana"},"application/vnd.uplanet.bearer-choice-wbxml":{"source":"iana"},"application/vnd.uplanet.cacheop":{"source":"iana"},"application/vnd.uplanet.cacheop-wbxml":{"source":"iana"},"application/vnd.uplanet.channel":{"source":"iana"},"application/vnd.uplanet.channel-wbxml":{"source":"iana"},"application/vnd.uplanet.list":{"source":"iana"},"application/vnd.uplanet.list-wbxml":{"source":"iana"},"application/vnd.uplanet.listcmd":{"source":"iana"},"application/vnd.uplanet.listcmd-wbxml":{"source":"iana"},"application/vnd.uplanet.signal":{"source":"iana"},"application/vnd.uri-map":{"source":"iana"},"application/vnd.valve.source.material":{"source":"iana"},"application/vnd.vcx":{"source":"iana","extensions":["vcx"]},"application/vnd.vd-study":{"source":"iana"},"application/vnd.vectorworks":{"source":"iana"},"application/vnd.vel+json":{"source":"iana","compressible":true},"application/vnd.verimatrix.vcas":{"source":"iana"},"application/vnd.veritone.aion+json":{"source":"iana","compressible":true},"application/vnd.veryant.thin":{"source":"iana"},"application/vnd.ves.encrypted":{"source":"iana"},"application/vnd.vidsoft.vidconference":{"source":"iana"},"application/vnd.visio":{"source":"iana","extensions":["vsd","vst","vss","vsw"]},"application/vnd.visionary":{"source":"iana","extensions":["vis"]},"application/vnd.vividence.scriptfile":{"source":"iana"},"application/vnd.vsf":{"source":"iana","extensions":["vsf"]},"application/vnd.wap.sic":{"source":"iana"},"application/vnd.wap.slc":{"source":"iana"},"application/vnd.wap.wbxml":{"source":"iana","charset":"UTF-8","extensions":["wbxml"]},"application/vnd.wap.wmlc":{"source":"iana","extensions":["wmlc"]},"application/vnd.wap.wmlscriptc":{"source":"iana","extensions":["wmlsc"]},"application/vnd.webturbo":{"source":"iana","extensions":["wtb"]},"application/vnd.wfa.dpp":{"source":"iana"},"application/vnd.wfa.p2p":{"source":"iana"},"application/vnd.wfa.wsc":{"source":"iana"},"application/vnd.windows.devicepairing":{"source":"iana"},"application/vnd.wmc":{"source":"iana"},"application/vnd.wmf.bootstrap":{"source":"iana"},"application/vnd.wolfram.mathematica":{"source":"iana"},"application/vnd.wolfram.mathematica.package":{"source":"iana"},"application/vnd.wolfram.player":{"source":"iana","extensions":["nbp"]},"application/vnd.wordperfect":{"source":"iana","extensions":["wpd"]},"application/vnd.wqd":{"source":"iana","extensions":["wqd"]},"application/vnd.wrq-hp3000-labelled":{"source":"iana"},"application/vnd.wt.stf":{"source":"iana","extensions":["stf"]},"application/vnd.wv.csp+wbxml":{"source":"iana"},"application/vnd.wv.csp+xml":{"source":"iana","compressible":true},"application/vnd.wv.ssp+xml":{"source":"iana","compressible":true},"application/vnd.xacml+json":{"source":"iana","compressible":true},"application/vnd.xara":{"source":"iana","extensions":["xar"]},"application/vnd.xfdl":{"source":"iana","extensions":["xfdl"]},"application/vnd.xfdl.webform":{"source":"iana"},"application/vnd.xmi+xml":{"source":"iana","compressible":true},"application/vnd.xmpie.cpkg":{"source":"iana"},"application/vnd.xmpie.dpkg":{"source":"iana"},"application/vnd.xmpie.plan":{"source":"iana"},"application/vnd.xmpie.ppkg":{"source":"iana"},"application/vnd.xmpie.xlim":{"source":"iana"},"application/vnd.yamaha.hv-dic":{"source":"iana","extensions":["hvd"]},"application/vnd.yamaha.hv-script":{"source":"iana","extensions":["hvs"]},"application/vnd.yamaha.hv-voice":{"source":"iana","extensions":["hvp"]},"application/vnd.yamaha.openscoreformat":{"source":"iana","extensions":["osf"]},"application/vnd.yamaha.openscoreformat.osfpvg+xml":{"source":"iana","compressible":true,"extensions":["osfpvg"]},"application/vnd.yamaha.remote-setup":{"source":"iana"},"application/vnd.yamaha.smaf-audio":{"source":"iana","extensions":["saf"]},"application/vnd.yamaha.smaf-phrase":{"source":"iana","extensions":["spf"]},"application/vnd.yamaha.through-ngn":{"source":"iana"},"application/vnd.yamaha.tunnel-udpencap":{"source":"iana"},"application/vnd.yaoweme":{"source":"iana"},"application/vnd.yellowriver-custom-menu":{"source":"iana","extensions":["cmp"]},"application/vnd.youtube.yt":{"source":"iana"},"application/vnd.zul":{"source":"iana","extensions":["zir","zirz"]},"application/vnd.zzazz.deck+xml":{"source":"iana","compressible":true,"extensions":["zaz"]},"application/voicexml+xml":{"source":"iana","compressible":true,"extensions":["vxml"]},"application/voucher-cms+json":{"source":"iana","compressible":true},"application/vq-rtcpxr":{"source":"iana"},"application/wasm":{"source":"iana","compressible":true,"extensions":["wasm"]},"application/watcherinfo+xml":{"source":"iana","compressible":true,"extensions":["wif"]},"application/webpush-options+json":{"source":"iana","compressible":true},"application/whoispp-query":{"source":"iana"},"application/whoispp-response":{"source":"iana"},"application/widget":{"source":"iana","extensions":["wgt"]},"application/winhlp":{"source":"apache","extensions":["hlp"]},"application/wita":{"source":"iana"},"application/wordperfect5.1":{"source":"iana"},"application/wsdl+xml":{"source":"iana","compressible":true,"extensions":["wsdl"]},"application/wspolicy+xml":{"source":"iana","compressible":true,"extensions":["wspolicy"]},"application/x-7z-compressed":{"source":"apache","compressible":false,"extensions":["7z"]},"application/x-abiword":{"source":"apache","extensions":["abw"]},"application/x-ace-compressed":{"source":"apache","extensions":["ace"]},"application/x-amf":{"source":"apache"},"application/x-apple-diskimage":{"source":"apache","extensions":["dmg"]},"application/x-arj":{"compressible":false,"extensions":["arj"]},"application/x-authorware-bin":{"source":"apache","extensions":["aab","x32","u32","vox"]},"application/x-authorware-map":{"source":"apache","extensions":["aam"]},"application/x-authorware-seg":{"source":"apache","extensions":["aas"]},"application/x-bcpio":{"source":"apache","extensions":["bcpio"]},"application/x-bdoc":{"compressible":false,"extensions":["bdoc"]},"application/x-bittorrent":{"source":"apache","extensions":["torrent"]},"application/x-blorb":{"source":"apache","extensions":["blb","blorb"]},"application/x-bzip":{"source":"apache","compressible":false,"extensions":["bz"]},"application/x-bzip2":{"source":"apache","compressible":false,"extensions":["bz2","boz"]},"application/x-cbr":{"source":"apache","extensions":["cbr","cba","cbt","cbz","cb7"]},"application/x-cdlink":{"source":"apache","extensions":["vcd"]},"application/x-cfs-compressed":{"source":"apache","extensions":["cfs"]},"application/x-chat":{"source":"apache","extensions":["chat"]},"application/x-chess-pgn":{"source":"apache","extensions":["pgn"]},"application/x-chrome-extension":{"extensions":["crx"]},"application/x-cocoa":{"source":"nginx","extensions":["cco"]},"application/x-compress":{"source":"apache"},"application/x-conference":{"source":"apache","extensions":["nsc"]},"application/x-cpio":{"source":"apache","extensions":["cpio"]},"application/x-csh":{"source":"apache","extensions":["csh"]},"application/x-deb":{"compressible":false},"application/x-debian-package":{"source":"apache","extensions":["deb","udeb"]},"application/x-dgc-compressed":{"source":"apache","extensions":["dgc"]},"application/x-director":{"source":"apache","extensions":["dir","dcr","dxr","cst","cct","cxt","w3d","fgd","swa"]},"application/x-doom":{"source":"apache","extensions":["wad"]},"application/x-dtbncx+xml":{"source":"apache","compressible":true,"extensions":["ncx"]},"application/x-dtbook+xml":{"source":"apache","compressible":true,"extensions":["dtb"]},"application/x-dtbresource+xml":{"source":"apache","compressible":true,"extensions":["res"]},"application/x-dvi":{"source":"apache","compressible":false,"extensions":["dvi"]},"application/x-envoy":{"source":"apache","extensions":["evy"]},"application/x-eva":{"source":"apache","extensions":["eva"]},"application/x-font-bdf":{"source":"apache","extensions":["bdf"]},"application/x-font-dos":{"source":"apache"},"application/x-font-framemaker":{"source":"apache"},"application/x-font-ghostscript":{"source":"apache","extensions":["gsf"]},"application/x-font-libgrx":{"source":"apache"},"application/x-font-linux-psf":{"source":"apache","extensions":["psf"]},"application/x-font-pcf":{"source":"apache","extensions":["pcf"]},"application/x-font-snf":{"source":"apache","extensions":["snf"]},"application/x-font-speedo":{"source":"apache"},"application/x-font-sunos-news":{"source":"apache"},"application/x-font-type1":{"source":"apache","extensions":["pfa","pfb","pfm","afm"]},"application/x-font-vfont":{"source":"apache"},"application/x-freearc":{"source":"apache","extensions":["arc"]},"application/x-futuresplash":{"source":"apache","extensions":["spl"]},"application/x-gca-compressed":{"source":"apache","extensions":["gca"]},"application/x-glulx":{"source":"apache","extensions":["ulx"]},"application/x-gnumeric":{"source":"apache","extensions":["gnumeric"]},"application/x-gramps-xml":{"source":"apache","extensions":["gramps"]},"application/x-gtar":{"source":"apache","extensions":["gtar"]},"application/x-gzip":{"source":"apache"},"application/x-hdf":{"source":"apache","extensions":["hdf"]},"application/x-httpd-php":{"compressible":true,"extensions":["php"]},"application/x-install-instructions":{"source":"apache","extensions":["install"]},"application/x-iso9660-image":{"source":"apache","extensions":["iso"]},"application/x-iwork-keynote-sffkey":{"extensions":["key"]},"application/x-iwork-numbers-sffnumbers":{"extensions":["numbers"]},"application/x-iwork-pages-sffpages":{"extensions":["pages"]},"application/x-java-archive-diff":{"source":"nginx","extensions":["jardiff"]},"application/x-java-jnlp-file":{"source":"apache","compressible":false,"extensions":["jnlp"]},"application/x-javascript":{"compressible":true},"application/x-keepass2":{"extensions":["kdbx"]},"application/x-latex":{"source":"apache","compressible":false,"extensions":["latex"]},"application/x-lua-bytecode":{"extensions":["luac"]},"application/x-lzh-compressed":{"source":"apache","extensions":["lzh","lha"]},"application/x-makeself":{"source":"nginx","extensions":["run"]},"application/x-mie":{"source":"apache","extensions":["mie"]},"application/x-mobipocket-ebook":{"source":"apache","extensions":["prc","mobi"]},"application/x-mpegurl":{"compressible":false},"application/x-ms-application":{"source":"apache","extensions":["application"]},"application/x-ms-shortcut":{"source":"apache","extensions":["lnk"]},"application/x-ms-wmd":{"source":"apache","extensions":["wmd"]},"application/x-ms-wmz":{"source":"apache","extensions":["wmz"]},"application/x-ms-xbap":{"source":"apache","extensions":["xbap"]},"application/x-msaccess":{"source":"apache","extensions":["mdb"]},"application/x-msbinder":{"source":"apache","extensions":["obd"]},"application/x-mscardfile":{"source":"apache","extensions":["crd"]},"application/x-msclip":{"source":"apache","extensions":["clp"]},"application/x-msdos-program":{"extensions":["exe"]},"application/x-msdownload":{"source":"apache","extensions":["exe","dll","com","bat","msi"]},"application/x-msmediaview":{"source":"apache","extensions":["mvb","m13","m14"]},"application/x-msmetafile":{"source":"apache","extensions":["wmf","wmz","emf","emz"]},"application/x-msmoney":{"source":"apache","extensions":["mny"]},"application/x-mspublisher":{"source":"apache","extensions":["pub"]},"application/x-msschedule":{"source":"apache","extensions":["scd"]},"application/x-msterminal":{"source":"apache","extensions":["trm"]},"application/x-mswrite":{"source":"apache","extensions":["wri"]},"application/x-netcdf":{"source":"apache","extensions":["nc","cdf"]},"application/x-ns-proxy-autoconfig":{"compressible":true,"extensions":["pac"]},"application/x-nzb":{"source":"apache","extensions":["nzb"]},"application/x-perl":{"source":"nginx","extensions":["pl","pm"]},"application/x-pilot":{"source":"nginx","extensions":["prc","pdb"]},"application/x-pkcs12":{"source":"apache","compressible":false,"extensions":["p12","pfx"]},"application/x-pkcs7-certificates":{"source":"apache","extensions":["p7b","spc"]},"application/x-pkcs7-certreqresp":{"source":"apache","extensions":["p7r"]},"application/x-pki-message":{"source":"iana"},"application/x-rar-compressed":{"source":"apache","compressible":false,"extensions":["rar"]},"application/x-redhat-package-manager":{"source":"nginx","extensions":["rpm"]},"application/x-research-info-systems":{"source":"apache","extensions":["ris"]},"application/x-sea":{"source":"nginx","extensions":["sea"]},"application/x-sh":{"source":"apache","compressible":true,"extensions":["sh"]},"application/x-shar":{"source":"apache","extensions":["shar"]},"application/x-shockwave-flash":{"source":"apache","compressible":false,"extensions":["swf"]},"application/x-silverlight-app":{"source":"apache","extensions":["xap"]},"application/x-sql":{"source":"apache","extensions":["sql"]},"application/x-stuffit":{"source":"apache","compressible":false,"extensions":["sit"]},"application/x-stuffitx":{"source":"apache","extensions":["sitx"]},"application/x-subrip":{"source":"apache","extensions":["srt"]},"application/x-sv4cpio":{"source":"apache","extensions":["sv4cpio"]},"application/x-sv4crc":{"source":"apache","extensions":["sv4crc"]},"application/x-t3vm-image":{"source":"apache","extensions":["t3"]},"application/x-tads":{"source":"apache","extensions":["gam"]},"application/x-tar":{"source":"apache","compressible":true,"extensions":["tar"]},"application/x-tcl":{"source":"apache","extensions":["tcl","tk"]},"application/x-tex":{"source":"apache","extensions":["tex"]},"application/x-tex-tfm":{"source":"apache","extensions":["tfm"]},"application/x-texinfo":{"source":"apache","extensions":["texinfo","texi"]},"application/x-tgif":{"source":"apache","extensions":["obj"]},"application/x-ustar":{"source":"apache","extensions":["ustar"]},"application/x-virtualbox-hdd":{"compressible":true,"extensions":["hdd"]},"application/x-virtualbox-ova":{"compressible":true,"extensions":["ova"]},"application/x-virtualbox-ovf":{"compressible":true,"extensions":["ovf"]},"application/x-virtualbox-vbox":{"compressible":true,"extensions":["vbox"]},"application/x-virtualbox-vbox-extpack":{"compressible":false,"extensions":["vbox-extpack"]},"application/x-virtualbox-vdi":{"compressible":true,"extensions":["vdi"]},"application/x-virtualbox-vhd":{"compressible":true,"extensions":["vhd"]},"application/x-virtualbox-vmdk":{"compressible":true,"extensions":["vmdk"]},"application/x-wais-source":{"source":"apache","extensions":["src"]},"application/x-web-app-manifest+json":{"compressible":true,"extensions":["webapp"]},"application/x-www-form-urlencoded":{"source":"iana","compressible":true},"application/x-x509-ca-cert":{"source":"iana","extensions":["der","crt","pem"]},"application/x-x509-ca-ra-cert":{"source":"iana"},"application/x-x509-next-ca-cert":{"source":"iana"},"application/x-xfig":{"source":"apache","extensions":["fig"]},"application/x-xliff+xml":{"source":"apache","compressible":true,"extensions":["xlf"]},"application/x-xpinstall":{"source":"apache","compressible":false,"extensions":["xpi"]},"application/x-xz":{"source":"apache","extensions":["xz"]},"application/x-zmachine":{"source":"apache","extensions":["z1","z2","z3","z4","z5","z6","z7","z8"]},"application/x400-bp":{"source":"iana"},"application/xacml+xml":{"source":"iana","compressible":true},"application/xaml+xml":{"source":"apache","compressible":true,"extensions":["xaml"]},"application/xcap-att+xml":{"source":"iana","compressible":true,"extensions":["xav"]},"application/xcap-caps+xml":{"source":"iana","compressible":true,"extensions":["xca"]},"application/xcap-diff+xml":{"source":"iana","compressible":true,"extensions":["xdf"]},"application/xcap-el+xml":{"source":"iana","compressible":true,"extensions":["xel"]},"application/xcap-error+xml":{"source":"iana","compressible":true},"application/xcap-ns+xml":{"source":"iana","compressible":true,"extensions":["xns"]},"application/xcon-conference-info+xml":{"source":"iana","compressible":true},"application/xcon-conference-info-diff+xml":{"source":"iana","compressible":true},"application/xenc+xml":{"source":"iana","compressible":true,"extensions":["xenc"]},"application/xhtml+xml":{"source":"iana","compressible":true,"extensions":["xhtml","xht"]},"application/xhtml-voice+xml":{"source":"apache","compressible":true},"application/xliff+xml":{"source":"iana","compressible":true,"extensions":["xlf"]},"application/xml":{"source":"iana","compressible":true,"extensions":["xml","xsl","xsd","rng"]},"application/xml-dtd":{"source":"iana","compressible":true,"extensions":["dtd"]},"application/xml-external-parsed-entity":{"source":"iana"},"application/xml-patch+xml":{"source":"iana","compressible":true},"application/xmpp+xml":{"source":"iana","compressible":true},"application/xop+xml":{"source":"iana","compressible":true,"extensions":["xop"]},"application/xproc+xml":{"source":"apache","compressible":true,"extensions":["xpl"]},"application/xslt+xml":{"source":"iana","compressible":true,"extensions":["xsl","xslt"]},"application/xspf+xml":{"source":"apache","compressible":true,"extensions":["xspf"]},"application/xv+xml":{"source":"iana","compressible":true,"extensions":["mxml","xhvml","xvml","xvm"]},"application/yang":{"source":"iana","extensions":["yang"]},"application/yang-data+json":{"source":"iana","compressible":true},"application/yang-data+xml":{"source":"iana","compressible":true},"application/yang-patch+json":{"source":"iana","compressible":true},"application/yang-patch+xml":{"source":"iana","compressible":true},"application/yin+xml":{"source":"iana","compressible":true,"extensions":["yin"]},"application/zip":{"source":"iana","compressible":false,"extensions":["zip"]},"application/zlib":{"source":"iana"},"application/zstd":{"source":"iana"},"audio/1d-interleaved-parityfec":{"source":"iana"},"audio/32kadpcm":{"source":"iana"},"audio/3gpp":{"source":"iana","compressible":false,"extensions":["3gpp"]},"audio/3gpp2":{"source":"iana"},"audio/aac":{"source":"iana"},"audio/ac3":{"source":"iana"},"audio/adpcm":{"source":"apache","extensions":["adp"]},"audio/amr":{"source":"iana","extensions":["amr"]},"audio/amr-wb":{"source":"iana"},"audio/amr-wb+":{"source":"iana"},"audio/aptx":{"source":"iana"},"audio/asc":{"source":"iana"},"audio/atrac-advanced-lossless":{"source":"iana"},"audio/atrac-x":{"source":"iana"},"audio/atrac3":{"source":"iana"},"audio/basic":{"source":"iana","compressible":false,"extensions":["au","snd"]},"audio/bv16":{"source":"iana"},"audio/bv32":{"source":"iana"},"audio/clearmode":{"source":"iana"},"audio/cn":{"source":"iana"},"audio/dat12":{"source":"iana"},"audio/dls":{"source":"iana"},"audio/dsr-es201108":{"source":"iana"},"audio/dsr-es202050":{"source":"iana"},"audio/dsr-es202211":{"source":"iana"},"audio/dsr-es202212":{"source":"iana"},"audio/dv":{"source":"iana"},"audio/dvi4":{"source":"iana"},"audio/eac3":{"source":"iana"},"audio/encaprtp":{"source":"iana"},"audio/evrc":{"source":"iana"},"audio/evrc-qcp":{"source":"iana"},"audio/evrc0":{"source":"iana"},"audio/evrc1":{"source":"iana"},"audio/evrcb":{"source":"iana"},"audio/evrcb0":{"source":"iana"},"audio/evrcb1":{"source":"iana"},"audio/evrcnw":{"source":"iana"},"audio/evrcnw0":{"source":"iana"},"audio/evrcnw1":{"source":"iana"},"audio/evrcwb":{"source":"iana"},"audio/evrcwb0":{"source":"iana"},"audio/evrcwb1":{"source":"iana"},"audio/evs":{"source":"iana"},"audio/flexfec":{"source":"iana"},"audio/fwdred":{"source":"iana"},"audio/g711-0":{"source":"iana"},"audio/g719":{"source":"iana"},"audio/g722":{"source":"iana"},"audio/g7221":{"source":"iana"},"audio/g723":{"source":"iana"},"audio/g726-16":{"source":"iana"},"audio/g726-24":{"source":"iana"},"audio/g726-32":{"source":"iana"},"audio/g726-40":{"source":"iana"},"audio/g728":{"source":"iana"},"audio/g729":{"source":"iana"},"audio/g7291":{"source":"iana"},"audio/g729d":{"source":"iana"},"audio/g729e":{"source":"iana"},"audio/gsm":{"source":"iana"},"audio/gsm-efr":{"source":"iana"},"audio/gsm-hr-08":{"source":"iana"},"audio/ilbc":{"source":"iana"},"audio/ip-mr_v2.5":{"source":"iana"},"audio/isac":{"source":"apache"},"audio/l16":{"source":"iana"},"audio/l20":{"source":"iana"},"audio/l24":{"source":"iana","compressible":false},"audio/l8":{"source":"iana"},"audio/lpc":{"source":"iana"},"audio/melp":{"source":"iana"},"audio/melp1200":{"source":"iana"},"audio/melp2400":{"source":"iana"},"audio/melp600":{"source":"iana"},"audio/mhas":{"source":"iana"},"audio/midi":{"source":"apache","extensions":["mid","midi","kar","rmi"]},"audio/mobile-xmf":{"source":"iana","extensions":["mxmf"]},"audio/mp3":{"compressible":false,"extensions":["mp3"]},"audio/mp4":{"source":"iana","compressible":false,"extensions":["m4a","mp4a"]},"audio/mp4a-latm":{"source":"iana"},"audio/mpa":{"source":"iana"},"audio/mpa-robust":{"source":"iana"},"audio/mpeg":{"source":"iana","compressible":false,"extensions":["mpga","mp2","mp2a","mp3","m2a","m3a"]},"audio/mpeg4-generic":{"source":"iana"},"audio/musepack":{"source":"apache"},"audio/ogg":{"source":"iana","compressible":false,"extensions":["oga","ogg","spx","opus"]},"audio/opus":{"source":"iana"},"audio/parityfec":{"source":"iana"},"audio/pcma":{"source":"iana"},"audio/pcma-wb":{"source":"iana"},"audio/pcmu":{"source":"iana"},"audio/pcmu-wb":{"source":"iana"},"audio/prs.sid":{"source":"iana"},"audio/qcelp":{"source":"iana"},"audio/raptorfec":{"source":"iana"},"audio/red":{"source":"iana"},"audio/rtp-enc-aescm128":{"source":"iana"},"audio/rtp-midi":{"source":"iana"},"audio/rtploopback":{"source":"iana"},"audio/rtx":{"source":"iana"},"audio/s3m":{"source":"apache","extensions":["s3m"]},"audio/scip":{"source":"iana"},"audio/silk":{"source":"apache","extensions":["sil"]},"audio/smv":{"source":"iana"},"audio/smv-qcp":{"source":"iana"},"audio/smv0":{"source":"iana"},"audio/sofa":{"source":"iana"},"audio/sp-midi":{"source":"iana"},"audio/speex":{"source":"iana"},"audio/t140c":{"source":"iana"},"audio/t38":{"source":"iana"},"audio/telephone-event":{"source":"iana"},"audio/tetra_acelp":{"source":"iana"},"audio/tetra_acelp_bb":{"source":"iana"},"audio/tone":{"source":"iana"},"audio/tsvcis":{"source":"iana"},"audio/uemclip":{"source":"iana"},"audio/ulpfec":{"source":"iana"},"audio/usac":{"source":"iana"},"audio/vdvi":{"source":"iana"},"audio/vmr-wb":{"source":"iana"},"audio/vnd.3gpp.iufp":{"source":"iana"},"audio/vnd.4sb":{"source":"iana"},"audio/vnd.audiokoz":{"source":"iana"},"audio/vnd.celp":{"source":"iana"},"audio/vnd.cisco.nse":{"source":"iana"},"audio/vnd.cmles.radio-events":{"source":"iana"},"audio/vnd.cns.anp1":{"source":"iana"},"audio/vnd.cns.inf1":{"source":"iana"},"audio/vnd.dece.audio":{"source":"iana","extensions":["uva","uvva"]},"audio/vnd.digital-winds":{"source":"iana","extensions":["eol"]},"audio/vnd.dlna.adts":{"source":"iana"},"audio/vnd.dolby.heaac.1":{"source":"iana"},"audio/vnd.dolby.heaac.2":{"source":"iana"},"audio/vnd.dolby.mlp":{"source":"iana"},"audio/vnd.dolby.mps":{"source":"iana"},"audio/vnd.dolby.pl2":{"source":"iana"},"audio/vnd.dolby.pl2x":{"source":"iana"},"audio/vnd.dolby.pl2z":{"source":"iana"},"audio/vnd.dolby.pulse.1":{"source":"iana"},"audio/vnd.dra":{"source":"iana","extensions":["dra"]},"audio/vnd.dts":{"source":"iana","extensions":["dts"]},"audio/vnd.dts.hd":{"source":"iana","extensions":["dtshd"]},"audio/vnd.dts.uhd":{"source":"iana"},"audio/vnd.dvb.file":{"source":"iana"},"audio/vnd.everad.plj":{"source":"iana"},"audio/vnd.hns.audio":{"source":"iana"},"audio/vnd.lucent.voice":{"source":"iana","extensions":["lvp"]},"audio/vnd.ms-playready.media.pya":{"source":"iana","extensions":["pya"]},"audio/vnd.nokia.mobile-xmf":{"source":"iana"},"audio/vnd.nortel.vbk":{"source":"iana"},"audio/vnd.nuera.ecelp4800":{"source":"iana","extensions":["ecelp4800"]},"audio/vnd.nuera.ecelp7470":{"source":"iana","extensions":["ecelp7470"]},"audio/vnd.nuera.ecelp9600":{"source":"iana","extensions":["ecelp9600"]},"audio/vnd.octel.sbc":{"source":"iana"},"audio/vnd.presonus.multitrack":{"source":"iana"},"audio/vnd.qcelp":{"source":"iana"},"audio/vnd.rhetorex.32kadpcm":{"source":"iana"},"audio/vnd.rip":{"source":"iana","extensions":["rip"]},"audio/vnd.rn-realaudio":{"compressible":false},"audio/vnd.sealedmedia.softseal.mpeg":{"source":"iana"},"audio/vnd.vmx.cvsd":{"source":"iana"},"audio/vnd.wave":{"compressible":false},"audio/vorbis":{"source":"iana","compressible":false},"audio/vorbis-config":{"source":"iana"},"audio/wav":{"compressible":false,"extensions":["wav"]},"audio/wave":{"compressible":false,"extensions":["wav"]},"audio/webm":{"source":"apache","compressible":false,"extensions":["weba"]},"audio/x-aac":{"source":"apache","compressible":false,"extensions":["aac"]},"audio/x-aiff":{"source":"apache","extensions":["aif","aiff","aifc"]},"audio/x-caf":{"source":"apache","compressible":false,"extensions":["caf"]},"audio/x-flac":{"source":"apache","extensions":["flac"]},"audio/x-m4a":{"source":"nginx","extensions":["m4a"]},"audio/x-matroska":{"source":"apache","extensions":["mka"]},"audio/x-mpegurl":{"source":"apache","extensions":["m3u"]},"audio/x-ms-wax":{"source":"apache","extensions":["wax"]},"audio/x-ms-wma":{"source":"apache","extensions":["wma"]},"audio/x-pn-realaudio":{"source":"apache","extensions":["ram","ra"]},"audio/x-pn-realaudio-plugin":{"source":"apache","extensions":["rmp"]},"audio/x-realaudio":{"source":"nginx","extensions":["ra"]},"audio/x-tta":{"source":"apache"},"audio/x-wav":{"source":"apache","extensions":["wav"]},"audio/xm":{"source":"apache","extensions":["xm"]},"chemical/x-cdx":{"source":"apache","extensions":["cdx"]},"chemical/x-cif":{"source":"apache","extensions":["cif"]},"chemical/x-cmdf":{"source":"apache","extensions":["cmdf"]},"chemical/x-cml":{"source":"apache","extensions":["cml"]},"chemical/x-csml":{"source":"apache","extensions":["csml"]},"chemical/x-pdb":{"source":"apache"},"chemical/x-xyz":{"source":"apache","extensions":["xyz"]},"font/collection":{"source":"iana","extensions":["ttc"]},"font/otf":{"source":"iana","compressible":true,"extensions":["otf"]},"font/sfnt":{"source":"iana"},"font/ttf":{"source":"iana","compressible":true,"extensions":["ttf"]},"font/woff":{"source":"iana","extensions":["woff"]},"font/woff2":{"source":"iana","extensions":["woff2"]},"image/aces":{"source":"iana","extensions":["exr"]},"image/apng":{"compressible":false,"extensions":["apng"]},"image/avci":{"source":"iana","extensions":["avci"]},"image/avcs":{"source":"iana","extensions":["avcs"]},"image/avif":{"source":"iana","compressible":false,"extensions":["avif"]},"image/bmp":{"source":"iana","compressible":true,"extensions":["bmp"]},"image/cgm":{"source":"iana","extensions":["cgm"]},"image/dicom-rle":{"source":"iana","extensions":["drle"]},"image/emf":{"source":"iana","extensions":["emf"]},"image/fits":{"source":"iana","extensions":["fits"]},"image/g3fax":{"source":"iana","extensions":["g3"]},"image/gif":{"source":"iana","compressible":false,"extensions":["gif"]},"image/heic":{"source":"iana","extensions":["heic"]},"image/heic-sequence":{"source":"iana","extensions":["heics"]},"image/heif":{"source":"iana","extensions":["heif"]},"image/heif-sequence":{"source":"iana","extensions":["heifs"]},"image/hej2k":{"source":"iana","extensions":["hej2"]},"image/hsj2":{"source":"iana","extensions":["hsj2"]},"image/ief":{"source":"iana","extensions":["ief"]},"image/jls":{"source":"iana","extensions":["jls"]},"image/jp2":{"source":"iana","compressible":false,"extensions":["jp2","jpg2"]},"image/jpeg":{"source":"iana","compressible":false,"extensions":["jpeg","jpg","jpe"]},"image/jph":{"source":"iana","extensions":["jph"]},"image/jphc":{"source":"iana","extensions":["jhc"]},"image/jpm":{"source":"iana","compressible":false,"extensions":["jpm"]},"image/jpx":{"source":"iana","compressible":false,"extensions":["jpx","jpf"]},"image/jxr":{"source":"iana","extensions":["jxr"]},"image/jxra":{"source":"iana","extensions":["jxra"]},"image/jxrs":{"source":"iana","extensions":["jxrs"]},"image/jxs":{"source":"iana","extensions":["jxs"]},"image/jxsc":{"source":"iana","extensions":["jxsc"]},"image/jxsi":{"source":"iana","extensions":["jxsi"]},"image/jxss":{"source":"iana","extensions":["jxss"]},"image/ktx":{"source":"iana","extensions":["ktx"]},"image/ktx2":{"source":"iana","extensions":["ktx2"]},"image/naplps":{"source":"iana"},"image/pjpeg":{"compressible":false},"image/png":{"source":"iana","compressible":false,"extensions":["png"]},"image/prs.btif":{"source":"iana","extensions":["btif"]},"image/prs.pti":{"source":"iana","extensions":["pti"]},"image/pwg-raster":{"source":"iana"},"image/sgi":{"source":"apache","extensions":["sgi"]},"image/svg+xml":{"source":"iana","compressible":true,"extensions":["svg","svgz"]},"image/t38":{"source":"iana","extensions":["t38"]},"image/tiff":{"source":"iana","compressible":false,"extensions":["tif","tiff"]},"image/tiff-fx":{"source":"iana","extensions":["tfx"]},"image/vnd.adobe.photoshop":{"source":"iana","compressible":true,"extensions":["psd"]},"image/vnd.airzip.accelerator.azv":{"source":"iana","extensions":["azv"]},"image/vnd.cns.inf2":{"source":"iana"},"image/vnd.dece.graphic":{"source":"iana","extensions":["uvi","uvvi","uvg","uvvg"]},"image/vnd.djvu":{"source":"iana","extensions":["djvu","djv"]},"image/vnd.dvb.subtitle":{"source":"iana","extensions":["sub"]},"image/vnd.dwg":{"source":"iana","extensions":["dwg"]},"image/vnd.dxf":{"source":"iana","extensions":["dxf"]},"image/vnd.fastbidsheet":{"source":"iana","extensions":["fbs"]},"image/vnd.fpx":{"source":"iana","extensions":["fpx"]},"image/vnd.fst":{"source":"iana","extensions":["fst"]},"image/vnd.fujixerox.edmics-mmr":{"source":"iana","extensions":["mmr"]},"image/vnd.fujixerox.edmics-rlc":{"source":"iana","extensions":["rlc"]},"image/vnd.globalgraphics.pgb":{"source":"iana"},"image/vnd.microsoft.icon":{"source":"iana","compressible":true,"extensions":["ico"]},"image/vnd.mix":{"source":"iana"},"image/vnd.mozilla.apng":{"source":"iana"},"image/vnd.ms-dds":{"compressible":true,"extensions":["dds"]},"image/vnd.ms-modi":{"source":"iana","extensions":["mdi"]},"image/vnd.ms-photo":{"source":"apache","extensions":["wdp"]},"image/vnd.net-fpx":{"source":"iana","extensions":["npx"]},"image/vnd.pco.b16":{"source":"iana","extensions":["b16"]},"image/vnd.radiance":{"source":"iana"},"image/vnd.sealed.png":{"source":"iana"},"image/vnd.sealedmedia.softseal.gif":{"source":"iana"},"image/vnd.sealedmedia.softseal.jpg":{"source":"iana"},"image/vnd.svf":{"source":"iana"},"image/vnd.tencent.tap":{"source":"iana","extensions":["tap"]},"image/vnd.valve.source.texture":{"source":"iana","extensions":["vtf"]},"image/vnd.wap.wbmp":{"source":"iana","extensions":["wbmp"]},"image/vnd.xiff":{"source":"iana","extensions":["xif"]},"image/vnd.zbrush.pcx":{"source":"iana","extensions":["pcx"]},"image/webp":{"source":"apache","extensions":["webp"]},"image/wmf":{"source":"iana","extensions":["wmf"]},"image/x-3ds":{"source":"apache","extensions":["3ds"]},"image/x-cmu-raster":{"source":"apache","extensions":["ras"]},"image/x-cmx":{"source":"apache","extensions":["cmx"]},"image/x-freehand":{"source":"apache","extensions":["fh","fhc","fh4","fh5","fh7"]},"image/x-icon":{"source":"apache","compressible":true,"extensions":["ico"]},"image/x-jng":{"source":"nginx","extensions":["jng"]},"image/x-mrsid-image":{"source":"apache","extensions":["sid"]},"image/x-ms-bmp":{"source":"nginx","compressible":true,"extensions":["bmp"]},"image/x-pcx":{"source":"apache","extensions":["pcx"]},"image/x-pict":{"source":"apache","extensions":["pic","pct"]},"image/x-portable-anymap":{"source":"apache","extensions":["pnm"]},"image/x-portable-bitmap":{"source":"apache","extensions":["pbm"]},"image/x-portable-graymap":{"source":"apache","extensions":["pgm"]},"image/x-portable-pixmap":{"source":"apache","extensions":["ppm"]},"image/x-rgb":{"source":"apache","extensions":["rgb"]},"image/x-tga":{"source":"apache","extensions":["tga"]},"image/x-xbitmap":{"source":"apache","extensions":["xbm"]},"image/x-xcf":{"compressible":false},"image/x-xpixmap":{"source":"apache","extensions":["xpm"]},"image/x-xwindowdump":{"source":"apache","extensions":["xwd"]},"message/cpim":{"source":"iana"},"message/delivery-status":{"source":"iana"},"message/disposition-notification":{"source":"iana","extensions":["disposition-notification"]},"message/external-body":{"source":"iana"},"message/feedback-report":{"source":"iana"},"message/global":{"source":"iana","extensions":["u8msg"]},"message/global-delivery-status":{"source":"iana","extensions":["u8dsn"]},"message/global-disposition-notification":{"source":"iana","extensions":["u8mdn"]},"message/global-headers":{"source":"iana","extensions":["u8hdr"]},"message/http":{"source":"iana","compressible":false},"message/imdn+xml":{"source":"iana","compressible":true},"message/news":{"source":"iana"},"message/partial":{"source":"iana","compressible":false},"message/rfc822":{"source":"iana","compressible":true,"extensions":["eml","mime"]},"message/s-http":{"source":"iana"},"message/sip":{"source":"iana"},"message/sipfrag":{"source":"iana"},"message/tracking-status":{"source":"iana"},"message/vnd.si.simp":{"source":"iana"},"message/vnd.wfa.wsc":{"source":"iana","extensions":["wsc"]},"model/3mf":{"source":"iana","extensions":["3mf"]},"model/e57":{"source":"iana"},"model/gltf+json":{"source":"iana","compressible":true,"extensions":["gltf"]},"model/gltf-binary":{"source":"iana","compressible":true,"extensions":["glb"]},"model/iges":{"source":"iana","compressible":false,"extensions":["igs","iges"]},"model/mesh":{"source":"iana","compressible":false,"extensions":["msh","mesh","silo"]},"model/mtl":{"source":"iana","extensions":["mtl"]},"model/obj":{"source":"iana","extensions":["obj"]},"model/step":{"source":"iana"},"model/step+xml":{"source":"iana","compressible":true,"extensions":["stpx"]},"model/step+zip":{"source":"iana","compressible":false,"extensions":["stpz"]},"model/step-xml+zip":{"source":"iana","compressible":false,"extensions":["stpxz"]},"model/stl":{"source":"iana","extensions":["stl"]},"model/vnd.collada+xml":{"source":"iana","compressible":true,"extensions":["dae"]},"model/vnd.dwf":{"source":"iana","extensions":["dwf"]},"model/vnd.flatland.3dml":{"source":"iana"},"model/vnd.gdl":{"source":"iana","extensions":["gdl"]},"model/vnd.gs-gdl":{"source":"apache"},"model/vnd.gs.gdl":{"source":"iana"},"model/vnd.gtw":{"source":"iana","extensions":["gtw"]},"model/vnd.moml+xml":{"source":"iana","compressible":true},"model/vnd.mts":{"source":"iana","extensions":["mts"]},"model/vnd.opengex":{"source":"iana","extensions":["ogex"]},"model/vnd.parasolid.transmit.binary":{"source":"iana","extensions":["x_b"]},"model/vnd.parasolid.transmit.text":{"source":"iana","extensions":["x_t"]},"model/vnd.pytha.pyox":{"source":"iana"},"model/vnd.rosette.annotated-data-model":{"source":"iana"},"model/vnd.sap.vds":{"source":"iana","extensions":["vds"]},"model/vnd.usdz+zip":{"source":"iana","compressible":false,"extensions":["usdz"]},"model/vnd.valve.source.compiled-map":{"source":"iana","extensions":["bsp"]},"model/vnd.vtu":{"source":"iana","extensions":["vtu"]},"model/vrml":{"source":"iana","compressible":false,"extensions":["wrl","vrml"]},"model/x3d+binary":{"source":"apache","compressible":false,"extensions":["x3db","x3dbz"]},"model/x3d+fastinfoset":{"source":"iana","extensions":["x3db"]},"model/x3d+vrml":{"source":"apache","compressible":false,"extensions":["x3dv","x3dvz"]},"model/x3d+xml":{"source":"iana","compressible":true,"extensions":["x3d","x3dz"]},"model/x3d-vrml":{"source":"iana","extensions":["x3dv"]},"multipart/alternative":{"source":"iana","compressible":false},"multipart/appledouble":{"source":"iana"},"multipart/byteranges":{"source":"iana"},"multipart/digest":{"source":"iana"},"multipart/encrypted":{"source":"iana","compressible":false},"multipart/form-data":{"source":"iana","compressible":false},"multipart/header-set":{"source":"iana"},"multipart/mixed":{"source":"iana"},"multipart/multilingual":{"source":"iana"},"multipart/parallel":{"source":"iana"},"multipart/related":{"source":"iana","compressible":false},"multipart/report":{"source":"iana"},"multipart/signed":{"source":"iana","compressible":false},"multipart/vnd.bint.med-plus":{"source":"iana"},"multipart/voice-message":{"source":"iana"},"multipart/x-mixed-replace":{"source":"iana"},"text/1d-interleaved-parityfec":{"source":"iana"},"text/cache-manifest":{"source":"iana","compressible":true,"extensions":["appcache","manifest"]},"text/calendar":{"source":"iana","extensions":["ics","ifb"]},"text/calender":{"compressible":true},"text/cmd":{"compressible":true},"text/coffeescript":{"extensions":["coffee","litcoffee"]},"text/cql":{"source":"iana"},"text/cql-expression":{"source":"iana"},"text/cql-identifier":{"source":"iana"},"text/css":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["css"]},"text/csv":{"source":"iana","compressible":true,"extensions":["csv"]},"text/csv-schema":{"source":"iana"},"text/directory":{"source":"iana"},"text/dns":{"source":"iana"},"text/ecmascript":{"source":"iana"},"text/encaprtp":{"source":"iana"},"text/enriched":{"source":"iana"},"text/fhirpath":{"source":"iana"},"text/flexfec":{"source":"iana"},"text/fwdred":{"source":"iana"},"text/gff3":{"source":"iana"},"text/grammar-ref-list":{"source":"iana"},"text/html":{"source":"iana","compressible":true,"extensions":["html","htm","shtml"]},"text/jade":{"extensions":["jade"]},"text/javascript":{"source":"iana","compressible":true},"text/jcr-cnd":{"source":"iana"},"text/jsx":{"compressible":true,"extensions":["jsx"]},"text/less":{"compressible":true,"extensions":["less"]},"text/markdown":{"source":"iana","compressible":true,"extensions":["markdown","md"]},"text/mathml":{"source":"nginx","extensions":["mml"]},"text/mdx":{"compressible":true,"extensions":["mdx"]},"text/mizar":{"source":"iana"},"text/n3":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["n3"]},"text/parameters":{"source":"iana","charset":"UTF-8"},"text/parityfec":{"source":"iana"},"text/plain":{"source":"iana","compressible":true,"extensions":["txt","text","conf","def","list","log","in","ini"]},"text/provenance-notation":{"source":"iana","charset":"UTF-8"},"text/prs.fallenstein.rst":{"source":"iana"},"text/prs.lines.tag":{"source":"iana","extensions":["dsc"]},"text/prs.prop.logic":{"source":"iana"},"text/raptorfec":{"source":"iana"},"text/red":{"source":"iana"},"text/rfc822-headers":{"source":"iana"},"text/richtext":{"source":"iana","compressible":true,"extensions":["rtx"]},"text/rtf":{"source":"iana","compressible":true,"extensions":["rtf"]},"text/rtp-enc-aescm128":{"source":"iana"},"text/rtploopback":{"source":"iana"},"text/rtx":{"source":"iana"},"text/sgml":{"source":"iana","extensions":["sgml","sgm"]},"text/shaclc":{"source":"iana"},"text/shex":{"source":"iana","extensions":["shex"]},"text/slim":{"extensions":["slim","slm"]},"text/spdx":{"source":"iana","extensions":["spdx"]},"text/strings":{"source":"iana"},"text/stylus":{"extensions":["stylus","styl"]},"text/t140":{"source":"iana"},"text/tab-separated-values":{"source":"iana","compressible":true,"extensions":["tsv"]},"text/troff":{"source":"iana","extensions":["t","tr","roff","man","me","ms"]},"text/turtle":{"source":"iana","charset":"UTF-8","extensions":["ttl"]},"text/ulpfec":{"source":"iana"},"text/uri-list":{"source":"iana","compressible":true,"extensions":["uri","uris","urls"]},"text/vcard":{"source":"iana","compressible":true,"extensions":["vcard"]},"text/vnd.a":{"source":"iana"},"text/vnd.abc":{"source":"iana"},"text/vnd.ascii-art":{"source":"iana"},"text/vnd.curl":{"source":"iana","extensions":["curl"]},"text/vnd.curl.dcurl":{"source":"apache","extensions":["dcurl"]},"text/vnd.curl.mcurl":{"source":"apache","extensions":["mcurl"]},"text/vnd.curl.scurl":{"source":"apache","extensions":["scurl"]},"text/vnd.debian.copyright":{"source":"iana","charset":"UTF-8"},"text/vnd.dmclientscript":{"source":"iana"},"text/vnd.dvb.subtitle":{"source":"iana","extensions":["sub"]},"text/vnd.esmertec.theme-descriptor":{"source":"iana","charset":"UTF-8"},"text/vnd.familysearch.gedcom":{"source":"iana","extensions":["ged"]},"text/vnd.ficlab.flt":{"source":"iana"},"text/vnd.fly":{"source":"iana","extensions":["fly"]},"text/vnd.fmi.flexstor":{"source":"iana","extensions":["flx"]},"text/vnd.gml":{"source":"iana"},"text/vnd.graphviz":{"source":"iana","extensions":["gv"]},"text/vnd.hans":{"source":"iana"},"text/vnd.hgl":{"source":"iana"},"text/vnd.in3d.3dml":{"source":"iana","extensions":["3dml"]},"text/vnd.in3d.spot":{"source":"iana","extensions":["spot"]},"text/vnd.iptc.newsml":{"source":"iana"},"text/vnd.iptc.nitf":{"source":"iana"},"text/vnd.latex-z":{"source":"iana"},"text/vnd.motorola.reflex":{"source":"iana"},"text/vnd.ms-mediapackage":{"source":"iana"},"text/vnd.net2phone.commcenter.command":{"source":"iana"},"text/vnd.radisys.msml-basic-layout":{"source":"iana"},"text/vnd.senx.warpscript":{"source":"iana"},"text/vnd.si.uricatalogue":{"source":"iana"},"text/vnd.sosi":{"source":"iana"},"text/vnd.sun.j2me.app-descriptor":{"source":"iana","charset":"UTF-8","extensions":["jad"]},"text/vnd.trolltech.linguist":{"source":"iana","charset":"UTF-8"},"text/vnd.wap.si":{"source":"iana"},"text/vnd.wap.sl":{"source":"iana"},"text/vnd.wap.wml":{"source":"iana","extensions":["wml"]},"text/vnd.wap.wmlscript":{"source":"iana","extensions":["wmls"]},"text/vtt":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["vtt"]},"text/x-asm":{"source":"apache","extensions":["s","asm"]},"text/x-c":{"source":"apache","extensions":["c","cc","cxx","cpp","h","hh","dic"]},"text/x-component":{"source":"nginx","extensions":["htc"]},"text/x-fortran":{"source":"apache","extensions":["f","for","f77","f90"]},"text/x-gwt-rpc":{"compressible":true},"text/x-handlebars-template":{"extensions":["hbs"]},"text/x-java-source":{"source":"apache","extensions":["java"]},"text/x-jquery-tmpl":{"compressible":true},"text/x-lua":{"extensions":["lua"]},"text/x-markdown":{"compressible":true,"extensions":["mkd"]},"text/x-nfo":{"source":"apache","extensions":["nfo"]},"text/x-opml":{"source":"apache","extensions":["opml"]},"text/x-org":{"compressible":true,"extensions":["org"]},"text/x-pascal":{"source":"apache","extensions":["p","pas"]},"text/x-processing":{"compressible":true,"extensions":["pde"]},"text/x-sass":{"extensions":["sass"]},"text/x-scss":{"extensions":["scss"]},"text/x-setext":{"source":"apache","extensions":["etx"]},"text/x-sfv":{"source":"apache","extensions":["sfv"]},"text/x-suse-ymp":{"compressible":true,"extensions":["ymp"]},"text/x-uuencode":{"source":"apache","extensions":["uu"]},"text/x-vcalendar":{"source":"apache","extensions":["vcs"]},"text/x-vcard":{"source":"apache","extensions":["vcf"]},"text/xml":{"source":"iana","compressible":true,"extensions":["xml"]},"text/xml-external-parsed-entity":{"source":"iana"},"text/yaml":{"compressible":true,"extensions":["yaml","yml"]},"video/1d-interleaved-parityfec":{"source":"iana"},"video/3gpp":{"source":"iana","extensions":["3gp","3gpp"]},"video/3gpp-tt":{"source":"iana"},"video/3gpp2":{"source":"iana","extensions":["3g2"]},"video/av1":{"source":"iana"},"video/bmpeg":{"source":"iana"},"video/bt656":{"source":"iana"},"video/celb":{"source":"iana"},"video/dv":{"source":"iana"},"video/encaprtp":{"source":"iana"},"video/ffv1":{"source":"iana"},"video/flexfec":{"source":"iana"},"video/h261":{"source":"iana","extensions":["h261"]},"video/h263":{"source":"iana","extensions":["h263"]},"video/h263-1998":{"source":"iana"},"video/h263-2000":{"source":"iana"},"video/h264":{"source":"iana","extensions":["h264"]},"video/h264-rcdo":{"source":"iana"},"video/h264-svc":{"source":"iana"},"video/h265":{"source":"iana"},"video/iso.segment":{"source":"iana","extensions":["m4s"]},"video/jpeg":{"source":"iana","extensions":["jpgv"]},"video/jpeg2000":{"source":"iana"},"video/jpm":{"source":"apache","extensions":["jpm","jpgm"]},"video/jxsv":{"source":"iana"},"video/mj2":{"source":"iana","extensions":["mj2","mjp2"]},"video/mp1s":{"source":"iana"},"video/mp2p":{"source":"iana"},"video/mp2t":{"source":"iana","extensions":["ts"]},"video/mp4":{"source":"iana","compressible":false,"extensions":["mp4","mp4v","mpg4"]},"video/mp4v-es":{"source":"iana"},"video/mpeg":{"source":"iana","compressible":false,"extensions":["mpeg","mpg","mpe","m1v","m2v"]},"video/mpeg4-generic":{"source":"iana"},"video/mpv":{"source":"iana"},"video/nv":{"source":"iana"},"video/ogg":{"source":"iana","compressible":false,"extensions":["ogv"]},"video/parityfec":{"source":"iana"},"video/pointer":{"source":"iana"},"video/quicktime":{"source":"iana","compressible":false,"extensions":["qt","mov"]},"video/raptorfec":{"source":"iana"},"video/raw":{"source":"iana"},"video/rtp-enc-aescm128":{"source":"iana"},"video/rtploopback":{"source":"iana"},"video/rtx":{"source":"iana"},"video/scip":{"source":"iana"},"video/smpte291":{"source":"iana"},"video/smpte292m":{"source":"iana"},"video/ulpfec":{"source":"iana"},"video/vc1":{"source":"iana"},"video/vc2":{"source":"iana"},"video/vnd.cctv":{"source":"iana"},"video/vnd.dece.hd":{"source":"iana","extensions":["uvh","uvvh"]},"video/vnd.dece.mobile":{"source":"iana","extensions":["uvm","uvvm"]},"video/vnd.dece.mp4":{"source":"iana"},"video/vnd.dece.pd":{"source":"iana","extensions":["uvp","uvvp"]},"video/vnd.dece.sd":{"source":"iana","extensions":["uvs","uvvs"]},"video/vnd.dece.video":{"source":"iana","extensions":["uvv","uvvv"]},"video/vnd.directv.mpeg":{"source":"iana"},"video/vnd.directv.mpeg-tts":{"source":"iana"},"video/vnd.dlna.mpeg-tts":{"source":"iana"},"video/vnd.dvb.file":{"source":"iana","extensions":["dvb"]},"video/vnd.fvt":{"source":"iana","extensions":["fvt"]},"video/vnd.hns.video":{"source":"iana"},"video/vnd.iptvforum.1dparityfec-1010":{"source":"iana"},"video/vnd.iptvforum.1dparityfec-2005":{"source":"iana"},"video/vnd.iptvforum.2dparityfec-1010":{"source":"iana"},"video/vnd.iptvforum.2dparityfec-2005":{"source":"iana"},"video/vnd.iptvforum.ttsavc":{"source":"iana"},"video/vnd.iptvforum.ttsmpeg2":{"source":"iana"},"video/vnd.motorola.video":{"source":"iana"},"video/vnd.motorola.videop":{"source":"iana"},"video/vnd.mpegurl":{"source":"iana","extensions":["mxu","m4u"]},"video/vnd.ms-playready.media.pyv":{"source":"iana","extensions":["pyv"]},"video/vnd.nokia.interleaved-multimedia":{"source":"iana"},"video/vnd.nokia.mp4vr":{"source":"iana"},"video/vnd.nokia.videovoip":{"source":"iana"},"video/vnd.objectvideo":{"source":"iana"},"video/vnd.radgamettools.bink":{"source":"iana"},"video/vnd.radgamettools.smacker":{"source":"iana"},"video/vnd.sealed.mpeg1":{"source":"iana"},"video/vnd.sealed.mpeg4":{"source":"iana"},"video/vnd.sealed.swf":{"source":"iana"},"video/vnd.sealedmedia.softseal.mov":{"source":"iana"},"video/vnd.uvvu.mp4":{"source":"iana","extensions":["uvu","uvvu"]},"video/vnd.vivo":{"source":"iana","extensions":["viv"]},"video/vnd.youtube.yt":{"source":"iana"},"video/vp8":{"source":"iana"},"video/vp9":{"source":"iana"},"video/webm":{"source":"apache","compressible":false,"extensions":["webm"]},"video/x-f4v":{"source":"apache","extensions":["f4v"]},"video/x-fli":{"source":"apache","extensions":["fli"]},"video/x-flv":{"source":"apache","compressible":false,"extensions":["flv"]},"video/x-m4v":{"source":"apache","extensions":["m4v"]},"video/x-matroska":{"source":"apache","compressible":false,"extensions":["mkv","mk3d","mks"]},"video/x-mng":{"source":"apache","extensions":["mng"]},"video/x-ms-asf":{"source":"apache","extensions":["asf","asx"]},"video/x-ms-vob":{"source":"apache","extensions":["vob"]},"video/x-ms-wm":{"source":"apache","extensions":["wm"]},"video/x-ms-wmv":{"source":"apache","compressible":false,"extensions":["wmv"]},"video/x-ms-wmx":{"source":"apache","extensions":["wmx"]},"video/x-ms-wvx":{"source":"apache","extensions":["wvx"]},"video/x-msvideo":{"source":"apache","extensions":["avi"]},"video/x-sgi-movie":{"source":"apache","extensions":["movie"]},"video/x-smv":{"source":"apache","extensions":["smv"]},"x-conference/x-cooltalk":{"source":"apache","extensions":["ice"]},"x-shader/x-fragment":{"compressible":true},"x-shader/x-vertex":{"compressible":true}}')},83593:(a,b,c)=>{"use strict";var d;Object.defineProperty(b,"__esModule",{value:!0}),b.checkStrictMode=b.getErrorPath=b.Type=b.useFunc=b.setEvaluated=b.evaluatedPropsToName=b.mergeEvaluated=b.eachItem=b.unescapeJsonPointer=b.escapeJsonPointer=b.escapeFragment=b.unescapeFragment=b.schemaRefOrVal=b.schemaHasRulesButRef=b.schemaHasRules=b.checkUnknownRules=b.alwaysValidSchema=b.toHash=void 0;let e=c(31849),f=c(84256);function g(a,b=a.schema){let{opts:c,self:d}=a;if(!c.strictSchema||"boolean"==typeof b)return;let e=d.RULES.keywords;for(let c in b)e[c]||o(a,`unknown keyword: "${c}"`)}function h(a,b){if("boolean"==typeof a)return!a;for(let c in a)if(b[c])return!0;return!1}function i(a){return"number"==typeof a?`${a}`:a.replace(/~/g,"~0").replace(/\//g,"~1")}function j(a){return a.replace(/~1/g,"/").replace(/~0/g,"~")}function k({mergeNames:a,mergeToName:b,mergeValues:c,resultToName:d}){return(f,g,h,i)=>{let j=void 0===h?g:h instanceof e.Name?(g instanceof e.Name?a(f,g,h):b(f,g,h),h):g instanceof e.Name?(b(f,h,g),g):c(g,h);return i!==e.Name||j instanceof e.Name?j:d(f,j)}}function l(a,b){if(!0===b)return a.var("props",!0);let c=a.var("props",(0,e._)`{}`);return void 0!==b&&m(a,c,b),c}function m(a,b,c){Object.keys(c).forEach(c=>a.assign((0,e._)`${b}${(0,e.getProperty)(c)}`,!0))}b.toHash=function(a){let b={};for(let c of a)b[c]=!0;return b},b.alwaysValidSchema=function(a,b){return"boolean"==typeof b?b:0===Object.keys(b).length||(g(a,b),!h(b,a.self.RULES.all))},b.checkUnknownRules=g,b.schemaHasRules=h,b.schemaHasRulesButRef=function(a,b){if("boolean"==typeof a)return!a;for(let c in a)if("$ref"!==c&&b.all[c])return!0;return!1},b.schemaRefOrVal=function({topSchemaRef:a,schemaPath:b},c,d,f){if(!f){if("number"==typeof c||"boolean"==typeof c)return c;if("string"==typeof c)return(0,e._)`${c}`}return(0,e._)`${a}${b}${(0,e.getProperty)(d)}`},b.unescapeFragment=function(a){return j(decodeURIComponent(a))},b.escapeFragment=function(a){return encodeURIComponent(i(a))},b.escapeJsonPointer=i,b.unescapeJsonPointer=j,b.eachItem=function(a,b){if(Array.isArray(a))for(let c of a)b(c);else b(a)},b.mergeEvaluated={props:k({mergeNames:(a,b,c)=>a.if((0,e._)`${c} !== true && ${b} !== undefined`,()=>{a.if((0,e._)`${b} === true`,()=>a.assign(c,!0),()=>a.assign(c,(0,e._)`${c} || {}`).code((0,e._)`Object.assign(${c}, ${b})`))}),mergeToName:(a,b,c)=>a.if((0,e._)`${c} !== true`,()=>{!0===b?a.assign(c,!0):(a.assign(c,(0,e._)`${c} || {}`),m(a,c,b))}),mergeValues:(a,b)=>!0===a||{...a,...b},resultToName:l}),items:k({mergeNames:(a,b,c)=>a.if((0,e._)`${c} !== true && ${b} !== undefined`,()=>a.assign(c,(0,e._)`${b} === true ? true : ${c} > ${b} ? ${c} : ${b}`)),mergeToName:(a,b,c)=>a.if((0,e._)`${c} !== true`,()=>a.assign(c,!0===b||(0,e._)`${c} > ${b} ? ${c} : ${b}`)),mergeValues:(a,b)=>!0===a||Math.max(a,b),resultToName:(a,b)=>a.var("items",b)})},b.evaluatedPropsToName=l,b.setEvaluated=m;let n={};function o(a,b,c=a.opts.strictSchema){if(c){if(b=`strict mode: ${b}`,!0===c)throw Error(b);a.self.logger.warn(b)}}b.useFunc=function(a,b){return a.scopeValue("func",{ref:b,code:n[b.code]||(n[b.code]=new f._Code(b.code))})},function(a){a[a.Num=0]="Num",a[a.Str=1]="Str"}(d||(b.Type=d={})),b.getErrorPath=function(a,b,c){if(a instanceof e.Name){let f=b===d.Num;return c?f?(0,e._)`"[" + ${a} + "]"`:(0,e._)`"['" + ${a} + "']"`:f?(0,e._)`"/" + ${a}`:(0,e._)`"/" + ${a}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return c?(0,e.getProperty)(a).toString():"/"+i(a)},b.checkStrictMode=o},84001:(a,b,c)=>{"use strict";let d,e;c.d(b,{Ic:()=>h,ML:()=>j,Um:()=>q,WG:()=>p,xL:()=>r});var f=c(31169),g=c(17592);let h="warn",i={off:0,error:200,warn:300,info:400,debug:500},j=(a,b,c)=>{if(a){if((0,f.$3)(i,a))return a;c.warn(`${b} was set to ${JSON.stringify(a)}, expected one of ${JSON.stringify(Object.keys(i))}`)}};function k(){}function l(a,b,c){return!b||i[a]>i[c]?k:b[a].bind(b)}let m={error:k,warn:k,info:k,debug:k},n=new WeakMap;function o(a,b){let c=n.get(a);if(c&&c[0]===b)return c[1];let d={error:l("error",a,b),warn:l("warn",a,b),info:l("info",a,b),debug:l("debug",a,b)};return n.set(a,[b,d]),d}function p(a){let b=a.logger,c=a.logLevel??"off";return b?o(b,c):m}function q(){let a=(0,g.s)("ANTHROPIC_LOG");return e&&a===d||(d=a,e=o(console,j(a,"process.env['ANTHROPIC_LOG']",o(console,h))??h)),e}let r=a=>(a.options&&(a.options={...a.options},delete a.options.headers),a.headers&&(a.headers=Object.fromEntries((a.headers instanceof Headers?[...a.headers]:Object.entries(a.headers)).map(([a,b])=>[a,"authorization"===a.toLowerCase()||"api-key"===a.toLowerCase()||"x-api-key"===a.toLowerCase()||"cookie"===a.toLowerCase()||"set-cookie"===a.toLowerCase()?"***":b]))),"retryOfRequestLogID"in a&&(a.retryOfRequestLogID&&(a.retryOf=a.retryOfRequestLogID),delete a.retryOfRequestLogID),a)},84172:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.assignDefaults=void 0;let d=c(31849),e=c(83593);function f(a,b,c){let{gen:f,compositeRule:g,data:h,opts:i}=a;if(void 0===c)return;let j=(0,d._)`${h}${(0,d.getProperty)(b)}`;if(g)return void(0,e.checkStrictMode)(a,`default is ignored for: ${j}`);let k=(0,d._)`${j} === undefined`;"empty"===i.useDefaults&&(k=(0,d._)`${k} || ${j} === null || ${j} === ""`),f.if(k,(0,d._)`${j} = ${(0,d.stringify)(c)}`)}b.assignDefaults=function(a,b){let{properties:c,items:d}=a.schema;if("object"===b&&c)for(let b in c)f(a,b,c[b].default);else"array"===b&&Array.isArray(d)&&d.forEach((b,c)=>f(a,c,b.default))}},84256:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.regexpCode=b.getEsmExportName=b.getProperty=b.safeStringify=b.stringify=b.strConcat=b.addCodeArg=b.str=b._=b.nil=b._Code=b.Name=b.IDENTIFIER=b._CodeOrName=void 0;class c{}b._CodeOrName=c,b.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;class d extends c{constructor(a){if(super(),!b.IDENTIFIER.test(a))throw Error("CodeGen: name must be a valid identifier");this.str=a}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}}b.Name=d;class e extends c{constructor(a){super(),this._items="string"==typeof a?[a]:a}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let a=this._items[0];return""===a||'""'===a}get str(){var a;return null!=(a=this._str)?a:this._str=this._items.reduce((a,b)=>`${a}${b}`,"")}get names(){var a;return null!=(a=this._names)?a:this._names=this._items.reduce((a,b)=>(b instanceof d&&(a[b.str]=(a[b.str]||0)+1),a),{})}}function f(a,...b){let c=[a[0]],d=0;for(;d<b.length;)i(c,b[d]),c.push(a[++d]);return new e(c)}b._Code=e,b.nil=new e(""),b._=f;let g=new e("+");function h(a,...b){let c=[j(a[0])],f=0;for(;f<b.length;)c.push(g),i(c,b[f]),c.push(g,j(a[++f]));return function(a){let b=1;for(;b<a.length-1;){if(a[b]===g){var c,e;let f=(c=a[b-1],'""'===(e=a[b+1])?c:'""'===c?e:"string"==typeof c?e instanceof d||'"'!==c[c.length-1]?void 0:"string"!=typeof e?`${c.slice(0,-1)}${e}"`:'"'===e[0]?c.slice(0,-1)+e.slice(1):void 0:"string"!=typeof e||'"'!==e[0]||c instanceof d?void 0:`"${c}${e.slice(1)}`);if(void 0!==f){a.splice(b-1,3,f);continue}a[b++]="+"}b++}}(c),new e(c)}function i(a,b){var c;b instanceof e?a.push(...b._items):b instanceof d?a.push(b):a.push("number"==typeof(c=b)||"boolean"==typeof c||null===c?c:j(Array.isArray(c)?c.join(","):c))}function j(a){return JSON.stringify(a).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}b.str=h,b.addCodeArg=i,b.strConcat=function(a,b){return b.emptyStr()?a:a.emptyStr()?b:h`${a}${b}`},b.stringify=function(a){return new e(j(a))},b.safeStringify=j,b.getProperty=function(a){return"string"==typeof a&&b.IDENTIFIER.test(a)?new e(`.${a}`):f`[${a}]`},b.getEsmExportName=function(a){if("string"==typeof a&&b.IDENTIFIER.test(a))return new e(`${a}`);throw Error(`CodeGen: invalid export name: ${a}, use explicit $id name mapping`)},b.regexpCode=function(a){return new e(a.toString())}},84296:a=>{"use strict";let b=Symbol("kDone"),c=Symbol("kRun");class d{constructor(a){this[b]=()=>{this.pending--,this[c]()},this.concurrency=a||1/0,this.jobs=[],this.pending=0}add(a){this.jobs.push(a),this[c]()}[c](){if(this.pending!==this.concurrency&&this.jobs.length){let a=this.jobs.shift();this.pending++,a(this[b])}}}a.exports=d},84687:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});let d=c(53707);class e extends Error{constructor(a,b,c,e){super(e||`can't resolve reference ${c} from id ${b}`),this.missingRef=(0,d.resolveUrl)(a,b,c),this.missingSchema=(0,d.normalizeId)((0,d.getFullPath)(a,this.missingRef))}}b.default=e},84817:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.validateAdditionalItems=void 0;let d=c(31849),e=c(83593);function f(a,b){let{gen:c,schema:f,data:g,keyword:h,it:i}=a;i.items=!0;let j=c.const("len",(0,d._)`${g}.length`);if(!1===f)a.setParams({len:b.length}),a.pass((0,d._)`${j} <= ${b.length}`);else if("object"==typeof f&&!(0,e.alwaysValidSchema)(i,f)){let f=c.var("valid",(0,d._)`${j} <= ${b.length}`);c.if((0,d.not)(f),()=>{var g;return g=f,void c.forRange("i",b.length,j,b=>{a.subschema({keyword:h,dataProp:b,dataPropType:e.Type.Num},g),i.allErrors||c.if((0,d.not)(g),()=>c.break())})}),a.ok(f)}}b.validateAdditionalItems=f,b.default={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:{message:({params:{len:a}})=>(0,d.str)`must NOT have more than ${a} items`,params:({params:{len:a}})=>(0,d._)`{limit: ${a}}`},code(a){let{parentSchema:b,it:c}=a,{items:d}=b;if(!Array.isArray(d))return void(0,e.checkStrictMode)(c,'"additionalItems" is ignored when "items" is not an array of schemas');f(a,d)}}},84833:a=>{a.exports=function(a,b){var c=!Array.isArray(a),d={index:0,keyedList:c||b?Object.keys(a):null,jobs:{},results:c?{}:[],size:c?Object.keys(a).length:a.length};return b&&d.keyedList.sort(c?b:function(c,d){return b(a[c],a[d])}),d}},85868:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.DownscopedClient=b.EXPIRATION_TIME_OFFSET=b.MAX_ACCESS_BOUNDARY_RULES_COUNT=void 0;let d=c(79792),e=c(27910),f=c(49502),g=c(86243);b.MAX_ACCESS_BOUNDARY_RULES_COUNT=10,b.EXPIRATION_TIME_OFFSET=3e5;class h extends f.AuthClient{authClient;credentialAccessBoundary;cachedDownscopedAccessToken;stsCredential;constructor(a,c={accessBoundary:{accessBoundaryRules:[]}}){if(super(a instanceof f.AuthClient?{}:a),a instanceof f.AuthClient?(this.authClient=a,this.credentialAccessBoundary=c):(this.authClient=a.authClient,this.credentialAccessBoundary=a.credentialAccessBoundary),0===this.credentialAccessBoundary.accessBoundary.accessBoundaryRules.length)throw Error("At least one access boundary rule needs to be defined.");if(this.credentialAccessBoundary.accessBoundary.accessBoundaryRules.length>b.MAX_ACCESS_BOUNDARY_RULES_COUNT)throw Error(`The provided access boundary has more than ${b.MAX_ACCESS_BOUNDARY_RULES_COUNT} access boundary rules.`);for(let a of this.credentialAccessBoundary.accessBoundary.accessBoundaryRules)if(0===a.availablePermissions.length)throw Error("At least one permission should be defined in access boundary rules.");this.stsCredential=new g.StsCredentials({tokenExchangeEndpoint:`https://sts.${this.universeDomain}/v1/token`}),this.cachedDownscopedAccessToken=null}setCredentials(a){if(!a.expiry_date)throw Error("The access token expiry_date field is missing in the provided credentials.");super.setCredentials(a),this.cachedDownscopedAccessToken=a}async getAccessToken(){return(!this.cachedDownscopedAccessToken||this.isExpired(this.cachedDownscopedAccessToken))&&await this.refreshAccessTokenAsync(),{token:this.cachedDownscopedAccessToken.access_token,expirationTime:this.cachedDownscopedAccessToken.expiry_date,res:this.cachedDownscopedAccessToken.res}}async getRequestHeaders(){let a=await this.getAccessToken(),b=new Headers({authorization:`Bearer ${a.token}`});return this.addSharedMetadataHeaders(b)}request(a,b){if(!b)return this.requestAsync(a);this.requestAsync(a).then(a=>b(null,a),a=>b(a,a.response))}async requestAsync(a,b=!1){let c;try{let b=await this.getRequestHeaders();a.headers=d.Gaxios.mergeHeaders(a.headers),this.addUserProjectAndAuthHeaders(a.headers,b),c=await this.transporter.request(a)}catch(d){let c=d.response;if(c){let d=c.status,f=c.config.data instanceof e.Readable;if(!b&&(401===d||403===d)&&!f&&this.forceRefreshOnFailure)return await this.refreshAccessTokenAsync(),await this.requestAsync(a,!0)}throw d}return c}async refreshAccessTokenAsync(){let a=(await this.authClient.getAccessToken()).token,b=await this.stsCredential.exchangeToken({grantType:"urn:ietf:params:oauth:grant-type:token-exchange",requestedTokenType:"urn:ietf:params:oauth:token-type:access_token",subjectToken:a,subjectTokenType:"urn:ietf:params:oauth:token-type:access_token"},void 0,this.credentialAccessBoundary),c=this.authClient.credentials?.expiry_date||null,d=b.expires_in?new Date().getTime()+1e3*b.expires_in:c;return this.cachedDownscopedAccessToken={access_token:b.access_token,expiry_date:d,res:b.res},this.credentials={},Object.assign(this.credentials,this.cachedDownscopedAccessToken),delete this.credentials.res,this.emit("tokens",{refresh_token:null,expiry_date:this.cachedDownscopedAccessToken.expiry_date,access_token:this.cachedDownscopedAccessToken.access_token,token_type:"Bearer",id_token:null}),this.cachedDownscopedAccessToken}isExpired(a){let b=new Date().getTime();return!!a.expiry_date&&b>=a.expiry_date-this.eagerRefreshThresholdMillis}}b.DownscopedClient=h},86028:(a,b,c)=>{"use strict";c.d(b,{G:()=>d});let d={LOG_LEVEL:3,INCLUDE_TOOL_CALLS_IN_RESPONSE:!0,ENABLE_EXECUTION_TRACKER:!1}},86080:(a,b,c)=>{var d=c(79428).Buffer;a.exports=function(a){return"string"==typeof a?a:"number"==typeof a||d.isBuffer(a)?a.toString():JSON.stringify(a)}},86243:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.StsCredentials=void 0;let d=c(79792),e=c(49502),f=c(35107),g=c(45388);class h extends f.OAuthClientAuthHandler{#B;constructor(a={tokenExchangeEndpoint:""},b){("object"!=typeof a||a instanceof URL)&&(a={tokenExchangeEndpoint:a,clientAuthentication:b}),super(a),this.#B=a.tokenExchangeEndpoint}async exchangeToken(a,b,c){let i={grant_type:a.grantType,resource:a.resource,audience:a.audience,scope:a.scope?.join(" "),requested_token_type:a.requestedTokenType,subject_token:a.subjectToken,subject_token_type:a.subjectTokenType,actor_token:a.actingParty?.actorToken,actor_token_type:a.actingParty?.actorTokenType,options:c&&JSON.stringify(c)},j={...h.RETRY_CONFIG,url:this.#B.toString(),method:"POST",headers:b,data:new URLSearchParams((0,g.removeUndefinedValuesInObject)(i)),responseType:"json"};e.AuthClient.setMethodName(j,"exchangeToken"),this.applyClientAuthenticationOptions(j);try{let a=await this.transporter.request(j),b=a.data;return b.res=a,b}catch(a){if(a instanceof d.GaxiosError&&a.response)throw(0,f.getErrorFromOAuthErrorResponse)(a.response.data,a);throw a}}}b.StsCredentials=h},86709:(a,b,c)=>{"use strict";var d;c.d(b,{$W:()=>j,GT:()=>g,cV:()=>h,cr:()=>i,tm:()=>e,xI:()=>f});let e=Object.freeze({status:"aborted"});function f(a,b,c){function d(c,d){if(c._zod||Object.defineProperty(c,"_zod",{value:{def:d,constr:g,traits:new Set},enumerable:!1}),c._zod.traits.has(a))return;c._zod.traits.add(a),b(c,d);let e=g.prototype,f=Object.keys(e);for(let a=0;a<f.length;a++){let b=f[a];b in c||(c[b]=e[b].bind(c))}}let e=c?.Parent??Object;class f extends e{}function g(a){var b;let e=c?.Parent?new f:this;for(let c of(d(e,a),(b=e._zod).deferred??(b.deferred=[]),e._zod.deferred))c();return e}return Object.defineProperty(f,"name",{value:a}),Object.defineProperty(g,"init",{value:d}),Object.defineProperty(g,Symbol.hasInstance,{value:b=>!!c?.Parent&&b instanceof c.Parent||b?._zod?.traits?.has(a)}),Object.defineProperty(g,"name",{value:a}),g}Symbol("zod_brand");class g extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class h extends Error{constructor(a){super(`Encountered unidirectional transform during encode: ${a}`),this.name="ZodEncodeError"}}(d=globalThis).__zod_globalConfig??(d.__zod_globalConfig={});let i=globalThis.__zod_globalConfig;function j(a){return a&&Object.assign(i,a),i}},86724:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.MissingRefError=b.ValidationError=b.CodeGen=b.Name=b.nil=b.stringify=b.str=b._=b.KeywordCxt=b.Ajv=void 0;let d=c(81502),e=c(40766),f=c(40571),g=c(32749),h=["/properties"],i="http://json-schema.org/draft-07/schema";class j extends d.default{_addVocabularies(){super._addVocabularies(),e.default.forEach(a=>this.addVocabulary(a)),this.opts.discriminator&&this.addKeyword(f.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let a=this.opts.$data?this.$dataMetaSchema(g,h):g;this.addMetaSchema(a,i,!1),this.refs["http://json-schema.org/schema"]=i}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(i)?i:void 0)}}b.Ajv=j,a.exports=b=j,a.exports.Ajv=j,Object.defineProperty(b,"__esModule",{value:!0}),b.default=j;var k=c(31638);Object.defineProperty(b,"KeywordCxt",{enumerable:!0,get:function(){return k.KeywordCxt}});var l=c(31849);Object.defineProperty(b,"_",{enumerable:!0,get:function(){return l._}}),Object.defineProperty(b,"str",{enumerable:!0,get:function(){return l.str}}),Object.defineProperty(b,"stringify",{enumerable:!0,get:function(){return l.stringify}}),Object.defineProperty(b,"nil",{enumerable:!0,get:function(){return l.nil}}),Object.defineProperty(b,"Name",{enumerable:!0,get:function(){return l.Name}}),Object.defineProperty(b,"CodeGen",{enumerable:!0,get:function(){return l.CodeGen}});var m=c(39590);Object.defineProperty(b,"ValidationError",{enumerable:!0,get:function(){return m.default}});var n=c(84687);Object.defineProperty(b,"MissingRefError",{enumerable:!0,get:function(){return n.default}})},86914:function(a,b,c){var d,e,f,g,h,i,j;d=c(67278),c(47973),c(4177),f=(e=d.x64).Word,g=e.WordArray,i=(h=d.algo).SHA512,j=h.SHA384=i.extend({_doReset:function(){this._hash=new g.init([new f.init(0xcbbb9d5d,0xc1059ed8),new f.init(0x629a292a,0x367cd507),new f.init(0x9159015a,0x3070dd17),new f.init(0x152fecd8,0xf70e5939),new f.init(0x67332667,0xffc00b31),new f.init(0x8eb44a87,0x68581511),new f.init(0xdb0c2e0d,0x64f98fa7),new f.init(0x47b5481d,0xbefa4fa4)])},_doFinalize:function(){var a=i._doFinalize.call(this);return a.sigBytes-=16,a}}),d.SHA384=i._createHelper(j),d.HmacSHA384=i._createHmacHelper(j),a.exports=d.SHA384},87138:a=>{"use strict";a.exports=/^#!(.*)/},87362:(a,b,c)=>{"use strict";var d=c(18230),e=c(79111),f=c(82464);let g=["https://registry.modelcontextprotocol.io/?q=ai.keenable%2Fweb-search","https://registry.modelcontextprotocol.io/v0.1/servers/io.github.mario-andreschak%2Fmcp-abap-adt/versions",{url:"https://registry.modelcontextprotocol.io/v0.1/servers/io.github.microsoft%2Fplaywright-mcp/versions",env:{PLAYWRIGHT_MCP_BROWSER:"msedge"}}];function h(a){return"string"==typeof a?{url:a}:a}var i=c(89392),j=c(79861),k=c(12700);let l=(0,d.h)("backend/services/spotlight");async function m(){return(0,e.YM)(i.Z.SPOTLIGHT_SERVERS,null)}async function n(){let a=g.map(h);l.info(`Refreshing spotlight servers (${a.length} entries)`);let b=[];for(let c of a){let{url:a,env:d}=c,e=(0,j.XQ)(a);if(!e){l.warn(`Unrecognized spotlight URL format: ${a}`),b.push({url:a,env:d,error:"Unrecognized spotlight URL format"});continue}try{let c=await (0,k.Ws)(new URL(k.jD+e),15e3),f=(0,j.zz)(c);f?b.push({url:a,env:d,result:f}):(l.warn(`Spotlight URL resolved to no server: ${a}`),b.push({url:a,env:d,error:"No matching server found in the registry"}))}catch(e){let c=e instanceof Error?e.message:"Unknown error";l.warn(`Failed to resolve spotlight URL ${a}: ${c}`),b.push({url:a,env:d,error:c})}await new Promise(a=>setTimeout(a,250))}let c={updatedAt:new Date().toISOString(),entries:b},d=await m();if(d){for(let a of c.entries)if(!a.result){let b=d.entries.find(b=>b.url===a.url&&b.result);b?.result&&(a.result=b.result)}}await (0,e.VH)(i.Z.SPOTLIGHT_SERVERS,c);let f=c.entries.filter(a=>a.result).length;return l.info(`Spotlight refresh complete: ${f}/${c.entries.length} entries resolved`),c}var o=c(50010),p=c(97832);let q=(0,d.h)("backend/init");async function r(){if(await (0,e.Pv)(),(!global.__flujo_spotlight_refresh&&(global.__flujo_spotlight_refresh=n().finally(()=>{global.__flujo_spotlight_refresh=void 0})),global.__flujo_spotlight_refresh).catch(a=>q.warn("Spotlight refresh failed at startup:",a)),await (0,p.C3)())return void q.info("Encryption locked — deferring MCP/scheduler startup until unlock");await (global.__flujo_secret_services_promise||(global.__flujo_secret_services_promise=(async()=>{q.info("Initializing MCP servers"),await f.mcpService.startEnabledServers().catch(a=>{q.error("Failed to start enabled servers:",a)}),await (0,o.z)().start().catch(a=>q.error("Failed to start scheduler:",a))})()),global.__flujo_secret_services_promise)}let s=(0,d.h)("instrumentation");s.info("Server startup: initializing backend (storage + MCP servers)"),(!global.__flujo_init_promise&&(global.__flujo_init_promise=r().catch(a=>{throw global.__flujo_init_promise=void 0,a})),global.__flujo_init_promise).then(()=>s.info("Server startup: backend initialization complete")).catch(a=>s.error("Server startup: backend initialization failed",a))},87507:(a,b,c)=>{"use strict";c.d(b,{G:()=>l,c:()=>k});var d=c(98402);c(3308);var e=c(18230),f=c(79111),g=c(89392),h=c(97832),i=c(48584);let j=(0,e.h)("backend/utils/resolveGlobalVars");async function k(a){j.debug("Entering resolveGlobalVars method");let b=await (0,f.YM)(g.Z.GLOBAL_ENV_VARS,{}),c=function(a){if(!a||"object"!=typeof a)return!1;let b=Object.keys(a);if(0===b.length)return!0;let c=a[b[0]];return c&&"object"==typeof c&&"value"in c&&"metadata"in c&&"object"==typeof c.metadata&&"isSecret"in c.metadata}(b);j.debug(`Loaded ${Object.keys(b).length} global environment variables (${c?"new":"old"} format)`);let d={};if(c)for(let[a,c]of Object.entries(b))d[a]=c.value;else d={...b};let e=async a=>{let b=a.match(/\$\{global:([^}]+)\}/g);if(!b)return a;let c=a;for(let a of b){let b=a.substring(9,a.length-1);if(void 0!==d[b]){let e=d[b];if(e.startsWith("encrypted:")){j.debug(`Decrypting encrypted global variable: ${b}`);try{let a=e.substring(10),c=await (0,h.Do)(a);if(c)e=c,j.debug(`Successfully decrypted global variable: ${b}`);else{j.warn(`Failed to decrypt global variable: ${b}`);continue}}catch(a){j.error(`Error decrypting global variable: ${b}`,a);continue}}else if(e.startsWith("encrypted_failed:")){j.warn(`Skipping failed encrypted global variable: ${b}`);continue}j.debug(`Resolved global variable: ${b}`),c=c.replace(a,e)}else j.warn(`Global variable not found: ${b}`)}return c},i=async a=>{if("string"==typeof a)return await e(a);if(Array.isArray(a))return await Promise.all(a.map(a=>i(a)));if(null!==a&&"object"==typeof a){let b={};for(let[c,d]of Object.entries(a))b[c]=await i(d);return b}return a},k=await i(a);return"object"==typeof a&&null!==a&&j.debug("Resolved global variables result:",JSON.stringify(k,null,2)),j.debug("Completed global variable resolution"),k}async function l(a,b=0){if(j.debug(`Entering resolveAndDecryptApiKey method (depth: ${b})`),!a)return j.warn("Empty value provided"),null;if(b>=10)return j.warn(`Maximum resolution depth reached (10) for value: ${a}`),a;let c=a;if(c.startsWith("encrypted:")){j.debug(`Decrypting encrypted value at depth ${b}`);try{let a=c.substring(10),d=await (0,h.Do)(a);if(!d)return j.warn(`Failed to decrypt value at depth ${b}`),null;j.debug(`Successfully decrypted value at depth ${b}`),j.verbose(d),c=d}catch(a){return j.error(`Error decrypting value at depth ${b}:`,a),null}}else c.startsWith("encrypted_failed:")&&(j.warn(`Skipping failed encrypted value at depth ${b}`),c=c.substring(17));if(c.includes("${global:")){j.debug(`Resolving global variables at depth ${b}`);try{let a=await k(c);if(j.verbose(a),a!==c)return j.debug(`Value changed after resolving globals at depth ${b}, processing recursively`),l(a,b+1);c=a}catch(a){return j.error(`Error resolving global variables at depth ${b}:`,a),null}}return j.debug(`Completed resolveAndDecryptApiKey at depth ${b}`),c}(0,i.D)([k,l]),(0,d.A)(k,"40ec842092ea232b6d4aa599a380d422184da5e1ca",null),(0,d.A)(l,"602ea7ca289a8eaa1000fb321a71e292e6c766b6bb",null)},87699:function(a,b,c){var d;d=c(67278),c(70522),d.pad.Iso97971={pad:function(a,b){a.concat(d.lib.WordArray.create([0x80000000],1)),d.pad.ZeroPadding.pad(a,b)},unpad:function(a){d.pad.ZeroPadding.unpad(a),a.sigBytes--}},a.exports=d.pad.Iso97971},87836:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.TokenHandler=void 0;let d=c(73214),e=c(28627);class f{token;tokenExpiresAt;inFlightRequest;tokenOptions;constructor(a){this.tokenOptions=a}async processCredentials(){if(!this.tokenOptions.key&&!this.tokenOptions.keyFile)throw Error("No key or keyFile set.");if(!this.tokenOptions.key&&this.tokenOptions.keyFile){let a=await (0,e.getCredentials)(this.tokenOptions.keyFile);this.tokenOptions.key=a.privateKey,this.tokenOptions.email=a.clientEmail}}isTokenExpiring(){if(!this.token||!this.tokenExpiresAt)return!0;let a=new Date().getTime(),b=this.tokenOptions.eagerRefreshThresholdMillis??0;return this.tokenExpiresAt<=a+b}hasExpired(){return new Date().getTime(),!this.token||!this.tokenExpiresAt||new Date().getTime()>=this.tokenExpiresAt}async getToken(a){if(await this.processCredentials(),this.inFlightRequest&&!a)return this.inFlightRequest;if(this.token&&!this.isTokenExpiring()&&!a)return this.token;try{this.inFlightRequest=(0,d.getToken)(this.tokenOptions);let a=await this.inFlightRequest;return this.token=a,this.tokenExpiresAt=new Date().getTime()+(a.expires_in??0)*1e3,a}finally{this.inFlightRequest=void 0}}}b.TokenHandler=f},88593:function(a,b,c){"use strict";var d=this&&this.__createBinding||(Object.create?function(a,b,c,d){void 0===d&&(d=c);var e=Object.getOwnPropertyDescriptor(b,c);(!e||("get"in e?!b.__esModule:e.writable||e.configurable))&&(e={enumerable:!0,get:function(){return b[c]}}),Object.defineProperty(a,d,e)}:function(a,b,c,d){void 0===d&&(d=c),a[d]=b[c]}),e=this&&this.__exportStar||function(a,b){for(var c in a)"default"===c||Object.prototype.hasOwnProperty.call(b,c)||d(b,a,c)};Object.defineProperty(b,"__esModule",{value:!0}),b.createCrypto=function(){return h()?new f.BrowserCrypto:new g.NodeCrypto},b.hasBrowserCrypto=h;let f=c(11486),g=c(64098);function h(){return"undefined"!=typeof window&&void 0!==window.crypto&&void 0!==window.crypto.subtle}e(c(89629),b)},88634:(a,b,c)=>{"use strict";var d=c(91378),e=c(28354),f=c(33873),g=c(81630),h=c(55591),i=c(79551).parse,j=c(29021),k=c(27910).Stream,l=c(55511),m=c(88659),n=c(19814),o=c(79522),p=c(75786),q=c(2007);function r(a){return String(a).replace(/\r/g,"%0D").replace(/\n/g,"%0A").replace(/"/g,"%22")}function s(a){if(!(this instanceof s))return new s(a);for(var b in this._overheadLength=0,this._valueLength=0,this._valuesToMeasure=[],d.call(this),a=a||{})this[b]=a[b]}e.inherits(s,d),s.LINE_BREAK="\r\n",s.DEFAULT_CONTENT_TYPE="application/octet-stream",s.prototype.append=function(a,b,c){"string"==typeof(c=c||{})&&(c={filename:c});var e=d.prototype.append.bind(this);if(("number"==typeof b||null==b)&&(b=String(b)),Array.isArray(b))return void this._error(Error("Arrays are not supported."));var f=this._multiPartHeader(a,b,c),g=this._multiPartFooter();e(f),e(b),e(g),this._trackLength(f,b,c)},s.prototype._trackLength=function(a,b,c){var d=0;null!=c.knownLength?d+=Number(c.knownLength):Buffer.isBuffer(b)?d=b.length:"string"==typeof b&&(d=Buffer.byteLength(b)),this._valueLength+=d,this._overheadLength+=Buffer.byteLength(a)+s.LINE_BREAK.length,b&&(b.path||b.readable&&p(b,"httpVersion")||b instanceof k)&&(c.knownLength||this._valuesToMeasure.push(b))},s.prototype._lengthRetriever=function(a,b){p(a,"fd")?void 0!=a.end&&a.end!=1/0&&void 0!=a.start?b(null,a.end+1-(a.start?a.start:0)):j.stat(a.path,function(c,d){if(c)return void b(c);b(null,d.size-(a.start?a.start:0))}):p(a,"httpVersion")?b(null,Number(a.headers["content-length"])):p(a,"httpModule")?(a.on("response",function(c){a.pause(),b(null,Number(c.headers["content-length"]))}),a.resume()):b("Unknown stream")},s.prototype._multiPartHeader=function(a,b,c){if("string"==typeof c.header)return c.header;var d,e=this._getContentDisposition(b,c),f=this._getContentType(b,c),g="",h={"Content-Disposition":["form-data",'name="'+r(a)+'"'].concat(e||[]),"Content-Type":[].concat(f||[])};for(var i in"object"==typeof c.header&&q(h,c.header),h)if(p(h,i)){if(null==(d=h[i]))continue;Array.isArray(d)||(d=[d]),d.length&&(g+=i+": "+d.join("; ")+s.LINE_BREAK)}return"--"+this.getBoundary()+s.LINE_BREAK+g+s.LINE_BREAK},s.prototype._getContentDisposition=function(a,b){var c;if("string"==typeof b.filepath?c=f.normalize(b.filepath).replace(/\\/g,"/"):b.filename||a&&(a.name||a.path)?c=f.basename(b.filename||a&&(a.name||a.path)):a&&a.readable&&p(a,"httpVersion")&&(c=f.basename(a.client._httpMessage.path||"")),c)return'filename="'+r(c)+'"'},s.prototype._getContentType=function(a,b){var c=b.contentType;return!c&&a&&a.name&&(c=m.lookup(a.name)),!c&&a&&a.path&&(c=m.lookup(a.path)),!c&&a&&a.readable&&p(a,"httpVersion")&&(c=a.headers["content-type"]),!c&&(b.filepath||b.filename)&&(c=m.lookup(b.filepath||b.filename)),!c&&a&&"object"==typeof a&&(c=s.DEFAULT_CONTENT_TYPE),c},s.prototype._multiPartFooter=function(){return(function(a){var b=s.LINE_BREAK;0===this._streams.length&&(b+=this._lastBoundary()),a(b)}).bind(this)},s.prototype._lastBoundary=function(){return"--"+this.getBoundary()+"--"+s.LINE_BREAK},s.prototype.getHeaders=function(a){var b,c={"content-type":"multipart/form-data; boundary="+this.getBoundary()};for(b in a)p(a,b)&&(c[b.toLowerCase()]=a[b]);return c},s.prototype.setBoundary=function(a){if("string"!=typeof a)throw TypeError("FormData boundary must be a string");this._boundary=a},s.prototype.getBoundary=function(){return this._boundary||this._generateBoundary(),this._boundary},s.prototype.getBuffer=function(){for(var a=new Buffer.alloc(0),b=this.getBoundary(),c=0,d=this._streams.length;c<d;c++)"function"!=typeof this._streams[c]&&(a=Buffer.isBuffer(this._streams[c])?Buffer.concat([a,this._streams[c]]):Buffer.concat([a,Buffer.from(this._streams[c])]),("string"!=typeof this._streams[c]||this._streams[c].substring(2,b.length+2)!==b)&&(a=Buffer.concat([a,Buffer.from(s.LINE_BREAK)])));return Buffer.concat([a,Buffer.from(this._lastBoundary())])},s.prototype._generateBoundary=function(){this._boundary="--------------------------"+l.randomBytes(12).toString("hex")},s.prototype.getLengthSync=function(){var a=this._overheadLength+this._valueLength;return this._streams.length&&(a+=this._lastBoundary().length),this.hasKnownLength()||this._error(Error("Cannot calculate proper length in synchronous way.")),a},s.prototype.hasKnownLength=function(){var a=!0;return this._valuesToMeasure.length&&(a=!1),a},s.prototype.getLength=function(a){var b=this._overheadLength+this._valueLength;if(this._streams.length&&(b+=this._lastBoundary().length),!this._valuesToMeasure.length)return void process.nextTick(a.bind(this,null,b));n.parallel(this._valuesToMeasure,this._lengthRetriever,function(c,d){if(c)return void a(c);d.forEach(function(a){b+=a}),a(null,b)})},s.prototype.submit=function(a,b){var c,d,e={method:"post"};return"string"==typeof a?d=q({port:(a=i(a)).port,path:a.pathname,host:a.hostname,protocol:a.protocol},e):(d=q(a,e)).port||(d.port="https:"===d.protocol?443:80),d.headers=this.getHeaders(a.headers),c="https:"===d.protocol?h.request(d):g.request(d),this.getLength((function(a,d){if(a&&"Unknown stream"!==a)return void this._error(a);if(d&&c.setHeader("Content-Length",d),this.pipe(c),b){var e,f=function(a,d){return c.removeListener("error",f),c.removeListener("response",e),b.call(this,a,d)};e=f.bind(this,null),c.on("error",f),c.on("response",e)}}).bind(this)),c},s.prototype._error=function(a){this.error||(this.error=a,this.pause(),this.emit("error",a))},s.prototype.toString=function(){return"[object FormData]"},o(s.prototype,"FormData"),a.exports=s},88659:(a,b,c)=>{"use strict";var d=c(42696),e=c(33873).extname,f=/^\s*([^;\s]*)(?:;|\s|$)/,g=/^text\//i;function h(a){if(!a||"string"!=typeof a)return!1;var b=f.exec(a),c=b&&d[b[1].toLowerCase()];return c&&c.charset?c.charset:!!(b&&g.test(b[1]))&&"UTF-8"}b.charset=h,b.charsets={lookup:h},b.contentType=function(a){if(!a||"string"!=typeof a)return!1;var c=-1===a.indexOf("/")?b.lookup(a):a;if(!c)return!1;if(-1===c.indexOf("charset")){var d=b.charset(c);d&&(c+="; charset="+d.toLowerCase())}return c},b.extension=function(a){if(!a||"string"!=typeof a)return!1;var c=f.exec(a),d=c&&b.extensions[c[1].toLowerCase()];return!!d&&!!d.length&&d[0]},b.extensions=Object.create(null),b.lookup=function(a){if(!a||"string"!=typeof a)return!1;var c=e("x."+a).toLowerCase().substr(1);return!!c&&(b.types[c]||!1)},b.types=Object.create(null),function(a,b){var c=["nginx","apache",void 0,"iana"];Object.keys(d).forEach(function(e){var f=d[e],g=f.extensions;if(g&&g.length){a[e]=g;for(var h=0;h<g.length;h++){var i=g[h];if(b[i]){var j=c.indexOf(d[b[i]].source),k=c.indexOf(f.source);if("application/octet-stream"!==b[i]&&(j>k||j===k&&"application/"===b[i].substr(0,12)))continue}b[i]=e}}})}(b.extensions,b.types)},89392:(a,b,c)=>{"use strict";c.d(b,{Z:()=>d});var d=function(a){return a.MODELS="models",a.FLOWS="flows",a.CHAT_HISTORY="history",a.THEME="theme",a.ENCRYPTION_KEY="encryption_key",a.MCP_SERVERS="mcp_servers",a.GLOBAL_ENV_VARS="global_env_vars",a.CURRENT_CONVERSATION_ID="current_conversation_id",a.SELECTED_FLOW_ID="selected_flow_id",a.LAST_PICKED_FLOW_ID="last_picked_flow_id",a.SPEECH_SETTINGS="speech_settings",a.SPOTLIGHT_SERVERS="spotlight_servers",a.PLANNED_EXECUTIONS="planned_executions",a.MCP_AUTO_INSTALL_SETTINGS="mcp_auto_install_settings",a.MCP_QUALITY_SETTINGS="mcp_quality_settings",a.RUN_RESOURCE_SETTINGS="run_resource_settings",a.KV_STORE_SETTINGS="kv_store_settings",a.PENDING_APPROVALS="pending_approvals",a}({})},89629:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.fromArrayBufferToHex=function(a){return Array.from(new Uint8Array(a)).map(a=>a.toString(16).padStart(2,"0")).join("")}},89850:(a,b,c)=>{"use strict";c.d(b,{A:()=>i});var d=c(55511);let e={randomUUID:d.randomUUID},f=new Uint8Array(256),g=f.length,h=[];for(let a=0;a<256;++a)h.push((a+256).toString(16).slice(1));let i=function(a,b,c){if(e.randomUUID&&!b&&!a)return e.randomUUID();let i=(a=a||{}).random??a.rng?.()??(g>f.length-16&&((0,d.randomFillSync)(f),g=0),f.slice(g,g+=16));if(i.length<16)throw Error("Random bytes length must be >= 16");if(i[6]=15&i[6]|64,i[8]=63&i[8]|128,b){if((c=c||0)<0||c+16>b.length)throw RangeError(`UUID byte range ${c}:${c+15} is out of buffer bounds`);for(let a=0;a<16;++a)b[c+a]=i[a];return b}return function(a,b=0){return(h[a[b+0]]+h[a[b+1]]+h[a[b+2]]+h[a[b+3]]+"-"+h[a[b+4]]+h[a[b+5]]+"-"+h[a[b+6]]+h[a[b+7]]+"-"+h[a[b+8]]+h[a[b+9]]+"-"+h[a[b+10]]+h[a[b+11]]+h[a[b+12]]+h[a[b+13]]+h[a[b+14]]+h[a[b+15]]).toLowerCase()}(i)}},90126:(a,b,c)=>{var d=c(23150);a.exports=function(a){var b=!1;return d(function(){b=!0}),function(c,e){b?a(c,e):d(function(){a(c,e)})}}},91233:(a,b,c)=>{"use strict";var d,e=c(39247),f=c(33324);try{d=[].__proto__===Array.prototype}catch(a){if(!a||"object"!=typeof a||!("code"in a)||"ERR_PROTO_ACCESS"!==a.code)throw a}var g=!!d&&f&&f(Object.prototype,"__proto__"),h=Object,i=h.getPrototypeOf;a.exports=g&&"function"==typeof g.get?e([g.get]):"function"==typeof i&&function(a){return i(null==a?a:h(a))}},91378:(a,b,c)=>{var d=c(28354),e=c(27910).Stream,f=c(14702);function g(){this.writable=!1,this.readable=!0,this.dataSize=0,this.maxDataSize=2097152,this.pauseStreams=!0,this._released=!1,this._streams=[],this._currentStream=null,this._insideLoop=!1,this._pendingNext=!1}a.exports=g,d.inherits(g,e),g.create=function(a){var b=new this;for(var c in a=a||{})b[c]=a[c];return b},g.isStreamLike=function(a){return"function"!=typeof a&&"string"!=typeof a&&"boolean"!=typeof a&&"number"!=typeof a&&!Buffer.isBuffer(a)},g.prototype.append=function(a){if(g.isStreamLike(a)){if(!(a instanceof f)){var b=f.create(a,{maxDataSize:1/0,pauseStream:this.pauseStreams});a.on("data",this._checkDataSize.bind(this)),a=b}this._handleErrors(a),this.pauseStreams&&a.pause()}return this._streams.push(a),this},g.prototype.pipe=function(a,b){return e.prototype.pipe.call(this,a,b),this.resume(),a},g.prototype._getNext=function(){if(this._currentStream=null,this._insideLoop){this._pendingNext=!0;return}this._insideLoop=!0;try{do this._pendingNext=!1,this._realGetNext();while(this._pendingNext)}finally{this._insideLoop=!1}},g.prototype._realGetNext=function(){var a=this._streams.shift();return void 0===a?void this.end():"function"!=typeof a?void this._pipeNext(a):void a((function(a){g.isStreamLike(a)&&(a.on("data",this._checkDataSize.bind(this)),this._handleErrors(a)),this._pipeNext(a)}).bind(this))},g.prototype._pipeNext=function(a){if(this._currentStream=a,g.isStreamLike(a)){a.on("end",this._getNext.bind(this)),a.pipe(this,{end:!1});return}this.write(a),this._getNext()},g.prototype._handleErrors=function(a){var b=this;a.on("error",function(a){b._emitError(a)})},g.prototype.write=function(a){this.emit("data",a)},g.prototype.pause=function(){this.pauseStreams&&(this.pauseStreams&&this._currentStream&&"function"==typeof this._currentStream.pause&&this._currentStream.pause(),this.emit("pause"))},g.prototype.resume=function(){this._released||(this._released=!0,this.writable=!0,this._getNext()),this.pauseStreams&&this._currentStream&&"function"==typeof this._currentStream.resume&&this._currentStream.resume(),this.emit("resume")},g.prototype.end=function(){this._reset(),this.emit("end")},g.prototype.destroy=function(){this._reset(),this.emit("close")},g.prototype._reset=function(){this.writable=!1,this._streams=[],this._currentStream=null},g.prototype._checkDataSize=function(){if(this._updateDataSize(),!(this.dataSize<=this.maxDataSize)){var a="DelayedStream#maxDataSize of "+this.maxDataSize+" bytes exceeded.";this._emitError(Error(a))}},g.prototype._updateDataSize=function(){this.dataSize=0;var a=this;this._streams.forEach(function(b){b.dataSize&&(a.dataSize+=b.dataSize)}),this._currentStream&&this._currentStream.dataSize&&(this.dataSize+=this._currentStream.dataSize)},g.prototype._emitError=function(a){this._reset(),this.emit("error",a)}},91480:a=>{"use strict";let b=/([()\][%!^"`<>&|;, *?])/g;a.exports.command=function(a){return a.replace(b,"^$1")},a.exports.argument=function(a,c){return a=(a=(a=`${a}`).replace(/(?=(\\+?)?)\1"/g,'$1$1\\"')).replace(/(?=(\\+?)?)\1$/,"$1$1"),a=(a=`"${a}"`).replace(b,"^$1"),c&&(a=a.replace(b,"^$1")),a}},91527:(a,b,c)=>{"use strict";c.d(b,{T:()=>d});let d=a=>"function"==typeof a},91781:(a,b,c)=>{var d=c(92878).Buffer,e=c(27910);function f(a){if(this.buffer=null,this.writable=!0,this.readable=!0,!a)return this.buffer=d.alloc(0),this;if("function"==typeof a.pipe)return this.buffer=d.alloc(0),a.pipe(this),this;if(a.length||"object"==typeof a)return this.buffer=a,this.writable=!1,process.nextTick((function(){this.emit("end",a),this.readable=!1,this.emit("close")}).bind(this)),this;throw TypeError("Unexpected data type ("+typeof a+")")}c(28354).inherits(f,e),f.prototype.write=function(a){this.buffer=d.concat([this.buffer,d.from(a)]),this.emit("data",a)},f.prototype.end=function(a){a&&this.write(a),this.emit("end",a),this.emit("close"),this.writable=!1,this.readable=!1},a.exports=f},92018:(a,b,c)=>{"use strict";c.d(b,{_:()=>d,z:()=>e});let d="flujo";function e(){return{name:d,transport:"stdio",command:"",args:[],env:{},disabled:!1,autoApprove:[],rootPath:"",_buildCommand:"",_installCommand:"",builtIn:!0,exposeAsMcpServer:!0}}},92111:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});let d=c(31638),e=c(97025),f=c(83593),g=c(68300);b.default={keyword:"properties",type:"object",schemaType:"object",code(a){let{gen:b,schema:c,parentSchema:h,data:i,it:j}=a;"all"===j.opts.removeAdditional&&void 0===h.additionalProperties&&g.default.code(new d.KeywordCxt(j,g.default,"additionalProperties"));let k=(0,e.allSchemaProperties)(c);for(let a of k)j.definedProperties.add(a);j.opts.unevaluated&&k.length&&!0!==j.props&&(j.props=f.mergeEvaluated.props(b,(0,f.toHash)(k),j.props));let l=k.filter(a=>!(0,f.alwaysValidSchema)(j,c[a]));if(0===l.length)return;let m=b.name("valid");for(let d of l){var n;(n=d,j.opts.useDefaults&&!j.compositeRule&&void 0!==c[n].default)?o(d):(b.if((0,e.propertyInData)(b,i,d,j.opts.ownProperties)),o(d),j.allErrors||b.else().var(m,!0),b.endIf()),a.it.definedProperties.add(d),a.ok(m)}function o(b){a.subschema({keyword:"properties",schemaProp:b,dataProp:b},m)}}}},92878:(a,b,c)=>{var d=c(79428),e=d.Buffer;function f(a,b){for(var c in a)b[c]=a[c]}function g(a,b,c){return e(a,b,c)}e.from&&e.alloc&&e.allocUnsafe&&e.allocUnsafeSlow?a.exports=d:(f(d,b),b.Buffer=g),g.prototype=Object.create(e.prototype),f(e,g),g.from=function(a,b,c){if("number"==typeof a)throw TypeError("Argument must not be a number");return e(a,b,c)},g.alloc=function(a,b,c){if("number"!=typeof a)throw TypeError("Argument must be a number");var d=e(a);return void 0!==b?"string"==typeof c?d.fill(b,c):d.fill(b):d.fill(0),d},g.allocUnsafe=function(a){if("number"!=typeof a)throw TypeError("Argument must be a number");return e(a)},g.allocUnsafeSlow=function(a){if("number"!=typeof a)throw TypeError("Argument must be a number");return d.SlowBuffer(a)}},93111:(a,b,c)=>{"use strict";let d,{Duplex:e}=c(27910),{randomFillSync:f}=c(55511),{types:{isUint8Array:g}}=c(28354),h=c(74240),{EMPTY_BUFFER:i,kWebSocket:j,NOOP:k}=c(32995),{isBlob:l,isValidStatusCode:m}=c(26649),{mask:n,toBuffer:o}=c(27047),p=Symbol("kByteLength"),q=Buffer.alloc(4),r=8192;class s{constructor(a,b,c){this._extensions=b||{},c&&(this._generateMask=c,this._maskBuffer=Buffer.alloc(4)),this._socket=a,this._firstFragment=!0,this._compress=!1,this._bufferedBytes=0,this._queue=[],this._state=0,this.onerror=k,this[j]=void 0}static frame(a,b){let c,e,g=!1,h=2,i=!1;b.mask&&(c=b.maskBuffer||q,b.generateMask?b.generateMask(c):(8192===r&&(void 0===d&&(d=Buffer.alloc(8192)),f(d,0,8192),r=0),c[0]=d[r++],c[1]=d[r++],c[2]=d[r++],c[3]=d[r++]),i=(c[0]|c[1]|c[2]|c[3])==0,h=6),"string"==typeof a?e=(!b.mask||i)&&void 0!==b[p]?b[p]:(a=Buffer.from(a)).length:(e=a.length,g=b.mask&&b.readOnly&&!i);let j=e;e>=65536?(h+=8,j=127):e>125&&(h+=2,j=126);let k=Buffer.allocUnsafe(g?e+h:h);return(k[0]=b.fin?128|b.opcode:b.opcode,b.rsv1&&(k[0]|=64),k[1]=j,126===j?k.writeUInt16BE(e,2):127===j&&(k[2]=k[3]=0,k.writeUIntBE(e,4,6)),b.mask)?(k[1]|=128,k[h-4]=c[0],k[h-3]=c[1],k[h-2]=c[2],k[h-1]=c[3],i)?[k,a]:g?(n(a,c,k,h,e),[k]):(n(a,c,a,0,e),[k,a]):[k,a]}close(a,b,c,d){let e;if(void 0===a)e=i;else if("number"==typeof a&&m(a))if(void 0!==b&&b.length){let c=Buffer.byteLength(b);if(c>123)throw RangeError("The message must not be greater than 123 bytes");if((e=Buffer.allocUnsafe(2+c)).writeUInt16BE(a,0),"string"==typeof b)e.write(b,2);else if(g(b))e.set(b,2);else throw TypeError("Second argument must be a string or a Uint8Array")}else(e=Buffer.allocUnsafe(2)).writeUInt16BE(a,0);else throw TypeError("First argument must be a valid error code number");let f={[p]:e.length,fin:!0,generateMask:this._generateMask,mask:c,maskBuffer:this._maskBuffer,opcode:8,readOnly:!1,rsv1:!1};0!==this._state?this.enqueue([this.dispatch,e,!1,f,d]):this.sendFrame(s.frame(e,f),d)}ping(a,b,c){let d,e;if("string"==typeof a?(d=Buffer.byteLength(a),e=!1):l(a)?(d=a.size,e=!1):(d=(a=o(a)).length,e=o.readOnly),d>125)throw RangeError("The data size must not be greater than 125 bytes");let f={[p]:d,fin:!0,generateMask:this._generateMask,mask:b,maskBuffer:this._maskBuffer,opcode:9,readOnly:e,rsv1:!1};l(a)?0!==this._state?this.enqueue([this.getBlobData,a,!1,f,c]):this.getBlobData(a,!1,f,c):0!==this._state?this.enqueue([this.dispatch,a,!1,f,c]):this.sendFrame(s.frame(a,f),c)}pong(a,b,c){let d,e;if("string"==typeof a?(d=Buffer.byteLength(a),e=!1):l(a)?(d=a.size,e=!1):(d=(a=o(a)).length,e=o.readOnly),d>125)throw RangeError("The data size must not be greater than 125 bytes");let f={[p]:d,fin:!0,generateMask:this._generateMask,mask:b,maskBuffer:this._maskBuffer,opcode:10,readOnly:e,rsv1:!1};l(a)?0!==this._state?this.enqueue([this.getBlobData,a,!1,f,c]):this.getBlobData(a,!1,f,c):0!==this._state?this.enqueue([this.dispatch,a,!1,f,c]):this.sendFrame(s.frame(a,f),c)}send(a,b,c){let d,e,f=this._extensions[h.extensionName],g=b.binary?2:1,i=b.compress;"string"==typeof a?(d=Buffer.byteLength(a),e=!1):l(a)?(d=a.size,e=!1):(d=(a=o(a)).length,e=o.readOnly),this._firstFragment?(this._firstFragment=!1,i&&f&&f.params[f._isServer?"server_no_context_takeover":"client_no_context_takeover"]&&(i=d>=f._threshold),this._compress=i):(i=!1,g=0),b.fin&&(this._firstFragment=!0);let j={[p]:d,fin:b.fin,generateMask:this._generateMask,mask:b.mask,maskBuffer:this._maskBuffer,opcode:g,readOnly:e,rsv1:i};l(a)?0!==this._state?this.enqueue([this.getBlobData,a,this._compress,j,c]):this.getBlobData(a,this._compress,j,c):0!==this._state?this.enqueue([this.dispatch,a,this._compress,j,c]):this.dispatch(a,this._compress,j,c)}getBlobData(a,b,c,d){this._bufferedBytes+=c[p],this._state=2,a.arrayBuffer().then(a=>{if(this._socket.destroyed){let a=Error("The socket was closed while the blob was being read");process.nextTick(t,this,a,d);return}this._bufferedBytes-=c[p];let e=o(a);b?this.dispatch(e,b,c,d):(this._state=0,this.sendFrame(s.frame(e,c),d),this.dequeue())}).catch(a=>{process.nextTick(u,this,a,d)})}dispatch(a,b,c,d){if(!b)return void this.sendFrame(s.frame(a,c),d);let e=this._extensions[h.extensionName];this._bufferedBytes+=c[p],this._state=1,e.compress(a,c.fin,(a,b)=>{if(this._socket.destroyed)return void t(this,Error("The socket was closed while data was being compressed"),d);this._bufferedBytes-=c[p],this._state=0,c.readOnly=!1,this.sendFrame(s.frame(b,c),d),this.dequeue()})}dequeue(){for(;0===this._state&&this._queue.length;){let a=this._queue.shift();this._bufferedBytes-=a[3][p],Reflect.apply(a[0],this,a.slice(1))}}enqueue(a){this._bufferedBytes+=a[3][p],this._queue.push(a)}sendFrame(a,b){2===a.length?(this._socket.cork(),this._socket.write(a[0]),this._socket.write(a[1],b),this._socket.uncork()):this._socket.write(a[0],b)}}function t(a,b,c){"function"==typeof c&&c(b);for(let c=0;c<a._queue.length;c++){let d=a._queue[c],e=d[d.length-1];"function"==typeof e&&e(b)}}function u(a,b,c){t(a,b,c),a.onerror(b)}a.exports=s},93209:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.ExternalAccountClient=void 0;let d=c(35294),e=c(62888),f=c(73925),g=c(27305);class h{constructor(){throw Error("ExternalAccountClients should be initialized via: ExternalAccountClient.fromJSON(), directly via explicit constructors, eg. new AwsClient(options), new IdentityPoolClient(options), newPluggableAuthClientOptions, or via new GoogleAuth(options).getClient()")}static fromJSON(a){return a&&a.type===d.EXTERNAL_ACCOUNT_TYPE?a.credential_source?.environment_id?new f.AwsClient(a):a.credential_source?.executable?new g.PluggableAuthClient(a):new e.IdentityPoolClient(a):null}}b.ExternalAccountClient=h},93704:(a,b,c)=>{"use strict";c.d(b,{Y:()=>ce});let d="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?Symbol:a=>`Symbol(${a})`;function e(){}function f(a){return"object"==typeof a&&null!==a||"function"==typeof a}function g(a,b){try{Object.defineProperty(a,"name",{value:b,configurable:!0})}catch(a){}}let h=Promise,i=Promise.prototype.then,j=Promise.resolve.bind(h),k=Promise.reject.bind(h);function l(a){return new h(a)}function m(a,b,c){return i.call(a,b,c)}function n(a,b,c){m(m(a,b,c),void 0,e)}function o(a){m(a,void 0,e)}let p=a=>{if("function"==typeof queueMicrotask)p=queueMicrotask;else{let a=j(void 0);p=b=>m(a,b)}return p(a)};function q(a,b,c){if("function"!=typeof a)throw TypeError("Argument is not a function");return Function.prototype.apply.call(a,b,c)}function r(a,b,c){try{var d;return d=q(a,b,c),j(d)}catch(a){return k(a)}}class s{constructor(){this._cursor=0,this._size=0,this._front={_elements:[],_next:void 0},this._back=this._front,this._cursor=0,this._size=0}get length(){return this._size}push(a){let b=this._back,c=b;16383===b._elements.length&&(c={_elements:[],_next:void 0}),b._elements.push(a),c!==b&&(this._back=c,b._next=c),++this._size}shift(){let a=this._front,b=a,c=this._cursor,d=c+1,e=a._elements,f=e[c];return 16384===d&&(b=a._next,d=0),--this._size,this._cursor=d,a!==b&&(this._front=b),e[c]=void 0,f}forEach(a){let b=this._cursor,c=this._front,d=c._elements;for(;!(b===d.length&&void 0===c._next||b===d.length&&(d=(c=c._next)._elements,b=0,0===d.length));)a(d[b]),++b}peek(){let a=this._front,b=this._cursor;return a._elements[b]}}let t=d("[[AbortSteps]]"),u=d("[[ErrorSteps]]"),v=d("[[CancelSteps]]"),w=d("[[PullSteps]]"),x=d("[[ReleaseSteps]]");function y(a,b){var c,d;a._ownerReadableStream=b,b._reader=a,"readable"===b._state?C(a):"closed"===b._state?(C(a),E(a)):(c=a,d=b._storedError,C(c),D(c,d))}function z(a,b){return bA(a._ownerReadableStream,b)}function A(a){var b,c;let d=a._ownerReadableStream;"readable"===d._state?D(a,TypeError("Reader was released and can no longer be used to monitor the stream's closedness")):(b=a,c=TypeError("Reader was released and can no longer be used to monitor the stream's closedness"),C(b),D(b,c)),d._readableStreamController[x](),d._reader=void 0,a._ownerReadableStream=void 0}function B(a){return TypeError("Cannot "+a+" a stream using a released reader")}function C(a){a._closedPromise=l((b,c)=>{a._closedPromise_resolve=b,a._closedPromise_reject=c})}function D(a,b){void 0!==a._closedPromise_reject&&(o(a._closedPromise),a._closedPromise_reject(b),a._closedPromise_resolve=void 0,a._closedPromise_reject=void 0)}function E(a){void 0!==a._closedPromise_resolve&&(a._closedPromise_resolve(void 0),a._closedPromise_resolve=void 0,a._closedPromise_reject=void 0)}let F=Number.isFinite||function(a){return"number"==typeof a&&isFinite(a)},G=Math.trunc||function(a){return a<0?Math.ceil(a):Math.floor(a)};function H(a,b){if(void 0!==a&&"object"!=typeof a&&"function"!=typeof a)throw TypeError(`${b} is not an object.`)}function I(a,b){if("function"!=typeof a)throw TypeError(`${b} is not a function.`)}function J(a,b){if(("object"!=typeof a||null===a)&&"function"!=typeof a)throw TypeError(`${b} is not an object.`)}function K(a,b,c){if(void 0===a)throw TypeError(`Parameter ${b} is required in '${c}'.`)}function L(a,b,c){if(void 0===a)throw TypeError(`${b} is required in '${c}'.`)}function M(a){return Number(a)}function N(a,b){var c,d;let e=Number.MAX_SAFE_INTEGER,f=Number(a);if(!F(f=0===(c=f)?0:c))throw TypeError(`${b} is not a finite number`);if((f=0===(d=G(f))?0:d)<0||f>e)throw TypeError(`${b} is outside the accepted range of 0 to ${e}, inclusive`);return F(f)&&0!==f?f:0}function O(a){if(!f(a)||"function"!=typeof a.getReader)return!1;try{return"boolean"==typeof a.locked}catch(a){return!1}}function P(a){if(!f(a)||"function"!=typeof a.getWriter)return!1;try{return"boolean"==typeof a.locked}catch(a){return!1}}function Q(a,b){if(!by(a))throw TypeError(`${b} is not a ReadableStream.`)}function R(a,b){a._reader._readRequests.push(b)}function S(a,b,c){let d=a._reader._readRequests.shift();c?d._closeSteps():d._chunkSteps(b)}function T(a){return a._reader._readRequests.length}function U(a){let b=a._reader;return void 0!==b&&!!W(b)}class V{constructor(a){if(K(a,1,"ReadableStreamDefaultReader"),Q(a,"First parameter"),bz(a))throw TypeError("This stream has already been locked for exclusive reading by another reader");y(this,a),this._readRequests=new s}get closed(){return W(this)?this._closedPromise:k(Y("closed"))}cancel(a){return W(this)?void 0===this._ownerReadableStream?k(B("cancel")):z(this,a):k(Y("cancel"))}read(){let a,b;if(!W(this))return k(Y("read"));if(void 0===this._ownerReadableStream)return k(B("read from"));let c=l((c,d)=>{a=c,b=d});return function(a,b){let c=a._ownerReadableStream;c._disturbed=!0,"closed"===c._state?b._closeSteps():"errored"===c._state?b._errorSteps(c._storedError):c._readableStreamController[w](b)}(this,{_chunkSteps:b=>a({value:b,done:!1}),_closeSteps:()=>a({value:void 0,done:!0}),_errorSteps:a=>b(a)}),c}releaseLock(){if(!W(this))throw Y("releaseLock");void 0!==this._ownerReadableStream&&(A(this),X(this,TypeError("Reader was released")))}}function W(a){return!!f(a)&&!!Object.prototype.hasOwnProperty.call(a,"_readRequests")&&a instanceof V}function X(a,b){let c=a._readRequests;a._readRequests=new s,c.forEach(a=>{a._errorSteps(b)})}function Y(a){return TypeError(`ReadableStreamDefaultReader.prototype.${a} can only be used on a ReadableStreamDefaultReader`)}Object.defineProperties(V.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),g(V.prototype.cancel,"cancel"),g(V.prototype.read,"read"),g(V.prototype.releaseLock,"releaseLock"),"symbol"==typeof d.toStringTag&&Object.defineProperty(V.prototype,d.toStringTag,{value:"ReadableStreamDefaultReader",configurable:!0});class Z{constructor(a,b){this._ongoingPromise=void 0,this._isFinished=!1,this._reader=a,this._preventCancel=b}next(){let a=()=>this._nextSteps();return this._ongoingPromise=this._ongoingPromise?m(this._ongoingPromise,a,a):a(),this._ongoingPromise}return(a){let b=()=>this._returnSteps(a);return this._ongoingPromise?m(this._ongoingPromise,b,b):b()}_nextSteps(){if(this._isFinished)return Promise.resolve({value:void 0,done:!0});let a=this._reader;return void 0===a?k(B("iterate")):m(a.read(),a=>{var b;return this._ongoingPromise=void 0,a.done&&(this._isFinished=!0,null==(b=this._reader)||b.releaseLock(),this._reader=void 0),a},a=>{var b;throw this._ongoingPromise=void 0,this._isFinished=!0,null==(b=this._reader)||b.releaseLock(),this._reader=void 0,a})}_returnSteps(a){if(this._isFinished)return Promise.resolve({value:a,done:!0});this._isFinished=!0;let b=this._reader;if(void 0===b)return k(B("finish iterating"));if(this._reader=void 0,!this._preventCancel){let c=b.cancel(a);return b.releaseLock(),m(c,()=>({value:a,done:!0}),void 0)}return b.releaseLock(),j({value:a,done:!0})}}let $={next(){return _(this)?this._asyncIteratorImpl.next():k(aa("next"))},return(a){return _(this)?this._asyncIteratorImpl.return(a):k(aa("return"))}};function _(a){if(!f(a)||!Object.prototype.hasOwnProperty.call(a,"_asyncIteratorImpl"))return!1;try{return a._asyncIteratorImpl instanceof Z}catch(a){return!1}}function aa(a){return TypeError(`ReadableStreamAsyncIterator.${a} can only be used on a ReadableSteamAsyncIterator`)}"symbol"==typeof d.asyncIterator&&Object.defineProperty($,d.asyncIterator,{value(){return this},writable:!0,configurable:!0});let ab=Number.isNaN||function(a){return a!=a};function ac(a,b,c,d,e){new Uint8Array(a).set(new Uint8Array(c,d,e),b)}function ad(a){return new Uint8Array(function(a,b,c){if(a.slice)return a.slice(b,c);let d=c-b,e=new ArrayBuffer(d);return ac(e,0,a,b,d),e}(a.buffer,a.byteOffset,a.byteOffset+a.byteLength))}function ae(a){let b=a._queue.shift();return a._queueTotalSize-=b.size,a._queueTotalSize<0&&(a._queueTotalSize=0),b.value}function af(a,b,c){if("number"!=typeof c||ab(c)||c<0||c===1/0)throw RangeError("Size must be a finite, non-NaN, non-negative number.");a._queue.push({value:b,size:c}),a._queueTotalSize+=c}function ag(a){a._queue=new s,a._queueTotalSize=0}class ah{constructor(){throw TypeError("Illegal constructor")}get view(){if(!ak(this))throw aD("view");return this._view}respond(a){if(!ak(this))throw aD("respond");if(K(a,1,"respond"),a=N(a,"First parameter"),void 0===this._associatedReadableByteStreamController)throw TypeError("This BYOB request has been invalidated");this._view.buffer,function(a,b){let c=a._pendingPullIntos.peek();if("closed"===a._controlledReadableByteStream._state){if(0!==b)throw TypeError("bytesWritten must be 0 when calling respond() on a closed stream")}else{if(0===b)throw TypeError("bytesWritten must be greater than 0 when calling respond() on a readable stream");if(c.bytesFilled+b>c.byteLength)throw RangeError("bytesWritten out of range")}c.buffer=c.buffer,ax(a,b)}(this._associatedReadableByteStreamController,a)}respondWithNewView(a){if(!ak(this))throw aD("respondWithNewView");if(K(a,1,"respondWithNewView"),!ArrayBuffer.isView(a))throw TypeError("You can only respond with array buffer views");if(void 0===this._associatedReadableByteStreamController)throw TypeError("This BYOB request has been invalidated");a.buffer,function(a,b){let c=a._pendingPullIntos.peek();if("closed"===a._controlledReadableByteStream._state){if(0!==b.byteLength)throw TypeError("The view's length must be 0 when calling respondWithNewView() on a closed stream")}else if(0===b.byteLength)throw TypeError("The view's length must be greater than 0 when calling respondWithNewView() on a readable stream");if(c.byteOffset+c.bytesFilled!==b.byteOffset)throw RangeError("The region specified by view does not match byobRequest");if(c.bufferByteLength!==b.buffer.byteLength)throw RangeError("The buffer of view has different capacity than byobRequest");if(c.bytesFilled+b.byteLength>c.byteLength)throw RangeError("The region specified by view is larger than byobRequest");let d=b.byteLength;c.buffer=b.buffer,ax(a,d)}(this._associatedReadableByteStreamController,a)}}Object.defineProperties(ah.prototype,{respond:{enumerable:!0},respondWithNewView:{enumerable:!0},view:{enumerable:!0}}),g(ah.prototype.respond,"respond"),g(ah.prototype.respondWithNewView,"respondWithNewView"),"symbol"==typeof d.toStringTag&&Object.defineProperty(ah.prototype,d.toStringTag,{value:"ReadableStreamBYOBRequest",configurable:!0});class ai{constructor(){throw TypeError("Illegal constructor")}get byobRequest(){if(!aj(this))throw aE("byobRequest");return function(a){if(null===a._byobRequest&&a._pendingPullIntos.length>0){let b=a._pendingPullIntos.peek(),c=new Uint8Array(b.buffer,b.byteOffset+b.bytesFilled,b.byteLength-b.bytesFilled),d=Object.create(ah.prototype);d._associatedReadableByteStreamController=a,d._view=c,a._byobRequest=d}return a._byobRequest}(this)}get desiredSize(){if(!aj(this))throw aE("desiredSize");return aC(this)}close(){if(!aj(this))throw aE("close");if(this._closeRequested)throw TypeError("The stream has already been closed; do not close it again!");let a=this._controlledReadableByteStream._state;if("readable"!==a)throw TypeError(`The stream (in ${a} state) is not in the readable state and cannot be closed`);!function(a){let b=a._controlledReadableByteStream;if(!a._closeRequested&&"readable"===b._state){if(a._queueTotalSize>0)return a._closeRequested=!0;if(a._pendingPullIntos.length>0&&a._pendingPullIntos.peek().bytesFilled>0){let b=TypeError("Insufficient bytes to fill elements in the given buffer");throw aA(a,b),b}az(a),bB(b)}}(this)}enqueue(a){if(!aj(this))throw aE("enqueue");if(K(a,1,"enqueue"),!ArrayBuffer.isView(a))throw TypeError("chunk must be an array buffer view");if(0===a.byteLength)throw TypeError("chunk must have non-zero byteLength");if(0===a.buffer.byteLength)throw TypeError("chunk's buffer must have non-zero byteLength");if(this._closeRequested)throw TypeError("stream is closed or draining");let b=this._controlledReadableByteStream._state;if("readable"!==b)throw TypeError(`The stream (in ${b} state) is not in the readable state and cannot be enqueued to`);!function(a,b){let c=a._controlledReadableByteStream;if(a._closeRequested||"readable"!==c._state)return;let d=b.buffer,e=b.byteOffset,f=b.byteLength;if(a._pendingPullIntos.length>0){let b=a._pendingPullIntos.peek();b.buffer,av(a),b.buffer=b.buffer,"none"===b.readerType&&ar(a,b)}U(c)?(function(a){let b=a._controlledReadableByteStream._reader;for(;b._readRequests.length>0;){if(0===a._queueTotalSize)return;aB(a,b._readRequests.shift())}}(a),0===T(c))?ap(a,d,e,f):(a._pendingPullIntos.length>0&&ay(a),S(c,new Uint8Array(d,e,f),!1)):aH(c)?(ap(a,d,e,f),aw(a)):ap(a,d,e,f),al(a)}(this,a)}error(a){if(!aj(this))throw aE("error");aA(this,a)}[v](a){am(this),ag(this);let b=this._cancelAlgorithm(a);return az(this),b}[w](a){let b=this._controlledReadableByteStream;if(this._queueTotalSize>0)return void aB(this,a);let c=this._autoAllocateChunkSize;if(void 0!==c){let b;try{b=new ArrayBuffer(c)}catch(b){return void a._errorSteps(b)}let d={buffer:b,bufferByteLength:c,byteOffset:0,byteLength:c,bytesFilled:0,elementSize:1,viewConstructor:Uint8Array,readerType:"default"};this._pendingPullIntos.push(d)}R(b,a),al(this)}[x](){if(this._pendingPullIntos.length>0){let a=this._pendingPullIntos.peek();a.readerType="none",this._pendingPullIntos=new s,this._pendingPullIntos.push(a)}}}function aj(a){return!!f(a)&&!!Object.prototype.hasOwnProperty.call(a,"_controlledReadableByteStream")&&a instanceof ai}function ak(a){return!!f(a)&&!!Object.prototype.hasOwnProperty.call(a,"_associatedReadableByteStreamController")&&a instanceof ah}function al(a){if(function(a){let b=a._controlledReadableByteStream;return"readable"===b._state&&!a._closeRequested&&!!a._started&&!!(U(b)&&T(b)>0||aH(b)&&aG(b)>0||aC(a)>0)}(a)){if(a._pulling)return void(a._pullAgain=!0);a._pulling=!0,n(a._pullAlgorithm(),()=>(a._pulling=!1,a._pullAgain&&(a._pullAgain=!1,al(a)),null),b=>(aA(a,b),null))}}function am(a){av(a),a._pendingPullIntos=new s}function an(a,b){let c=!1;"closed"===a._state&&(c=!0);let d=ao(b);"default"===b.readerType?S(a,d,c):function(a,b,c){let d=a._reader._readIntoRequests.shift();c?d._closeSteps(b):d._chunkSteps(b)}(a,d,c)}function ao(a){let b=a.bytesFilled,c=a.elementSize;return new a.viewConstructor(a.buffer,a.byteOffset,b/c)}function ap(a,b,c,d){a._queue.push({buffer:b,byteOffset:c,byteLength:d}),a._queueTotalSize+=d}function aq(a,b,c,d){let e;try{e=b.slice(c,c+d)}catch(b){throw aA(a,b),b}ap(a,e,0,d)}function ar(a,b){b.bytesFilled>0&&aq(a,b.buffer,b.byteOffset,b.bytesFilled),ay(a)}function as(a,b){let c=b.elementSize,d=b.bytesFilled-b.bytesFilled%c,e=Math.min(a._queueTotalSize,b.byteLength-b.bytesFilled),f=b.bytesFilled+e,g=f-f%c,h=e,i=!1;g>d&&(h=g-b.bytesFilled,i=!0);let j=a._queue;for(;h>0;){let c=j.peek(),d=Math.min(h,c.byteLength),e=b.byteOffset+b.bytesFilled;ac(b.buffer,e,c.buffer,c.byteOffset,d),c.byteLength===d?j.shift():(c.byteOffset+=d,c.byteLength-=d),a._queueTotalSize-=d,at(a,d,b),h-=d}return i}function at(a,b,c){c.bytesFilled+=b}function au(a){0===a._queueTotalSize&&a._closeRequested?(az(a),bB(a._controlledReadableByteStream)):al(a)}function av(a){null!==a._byobRequest&&(a._byobRequest._associatedReadableByteStreamController=void 0,a._byobRequest._view=null,a._byobRequest=null)}function aw(a){for(;a._pendingPullIntos.length>0;){if(0===a._queueTotalSize)return;let b=a._pendingPullIntos.peek();as(a,b)&&(ay(a),an(a._controlledReadableByteStream,b))}}function ax(a,b){let c=a._pendingPullIntos.peek();av(a),"closed"===a._controlledReadableByteStream._state?function(a,b){"none"===b.readerType&&ay(a);let c=a._controlledReadableByteStream;if(aH(c))for(;aG(c)>0;)an(c,ay(a))}(a,c):function(a,b,c){if(at(0,b,c),"none"===c.readerType)return ar(a,c),aw(a);if(c.bytesFilled<c.elementSize)return;ay(a);let d=c.bytesFilled%c.elementSize;if(d>0){let b=c.byteOffset+c.bytesFilled;aq(a,c.buffer,b-d,d)}c.bytesFilled-=d,an(a._controlledReadableByteStream,c),aw(a)}(a,b,c),al(a)}function ay(a){return a._pendingPullIntos.shift()}function az(a){a._pullAlgorithm=void 0,a._cancelAlgorithm=void 0}function aA(a,b){let c=a._controlledReadableByteStream;"readable"===c._state&&(am(a),ag(a),az(a),bC(c,b))}function aB(a,b){let c=a._queue.shift();a._queueTotalSize-=c.byteLength,au(a);let d=new Uint8Array(c.buffer,c.byteOffset,c.byteLength);b._chunkSteps(d)}function aC(a){let b=a._controlledReadableByteStream._state;return"errored"===b?null:"closed"===b?0:a._strategyHWM-a._queueTotalSize}function aD(a){return TypeError(`ReadableStreamBYOBRequest.prototype.${a} can only be used on a ReadableStreamBYOBRequest`)}function aE(a){return TypeError(`ReadableByteStreamController.prototype.${a} can only be used on a ReadableByteStreamController`)}function aF(a,b){a._reader._readIntoRequests.push(b)}function aG(a){return a._reader._readIntoRequests.length}function aH(a){let b=a._reader;return void 0!==b&&!!aJ(b)}Object.defineProperties(ai.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},byobRequest:{enumerable:!0},desiredSize:{enumerable:!0}}),g(ai.prototype.close,"close"),g(ai.prototype.enqueue,"enqueue"),g(ai.prototype.error,"error"),"symbol"==typeof d.toStringTag&&Object.defineProperty(ai.prototype,d.toStringTag,{value:"ReadableByteStreamController",configurable:!0});class aI{constructor(a){if(K(a,1,"ReadableStreamBYOBReader"),Q(a,"First parameter"),bz(a))throw TypeError("This stream has already been locked for exclusive reading by another reader");if(!aj(a._readableStreamController))throw TypeError("Cannot construct a ReadableStreamBYOBReader for a stream not constructed with a byte source");y(this,a),this._readIntoRequests=new s}get closed(){return aJ(this)?this._closedPromise:k(aL("closed"))}cancel(a){return aJ(this)?void 0===this._ownerReadableStream?k(B("cancel")):z(this,a):k(aL("cancel"))}read(a){let b,c;if(!aJ(this))return k(aL("read"));if(!ArrayBuffer.isView(a))return k(TypeError("view must be an array buffer view"));if(0===a.byteLength)return k(TypeError("view must have non-zero byteLength"));if(0===a.buffer.byteLength)return k(TypeError("view's buffer must have non-zero byteLength"));if(a.buffer,void 0===this._ownerReadableStream)return k(B("read from"));let d=l((a,d)=>{b=a,c=d});return function(a,b,c){let d=a._ownerReadableStream;d._disturbed=!0,"errored"===d._state?c._errorSteps(d._storedError):function(a,b,c){let d=a._controlledReadableByteStream,e=1;b.constructor!==DataView&&(e=b.constructor.BYTES_PER_ELEMENT);let f=b.constructor,g=b.buffer,h={buffer:g,bufferByteLength:g.byteLength,byteOffset:b.byteOffset,byteLength:b.byteLength,bytesFilled:0,elementSize:e,viewConstructor:f,readerType:"byob"};if(a._pendingPullIntos.length>0)return a._pendingPullIntos.push(h),aF(d,c);if("closed"!==d._state){if(a._queueTotalSize>0){if(as(a,h)){let b=ao(h);return au(a),c._chunkSteps(b)}if(a._closeRequested){let b=TypeError("Insufficient bytes to fill elements in the given buffer");return aA(a,b),c._errorSteps(b)}}a._pendingPullIntos.push(h),aF(d,c),al(a)}else{let a=new f(h.buffer,h.byteOffset,0);c._closeSteps(a)}}(d._readableStreamController,b,c)}(this,a,{_chunkSteps:a=>b({value:a,done:!1}),_closeSteps:a=>b({value:a,done:!0}),_errorSteps:a=>c(a)}),d}releaseLock(){if(!aJ(this))throw aL("releaseLock");void 0!==this._ownerReadableStream&&(A(this),aK(this,TypeError("Reader was released")))}}function aJ(a){return!!f(a)&&!!Object.prototype.hasOwnProperty.call(a,"_readIntoRequests")&&a instanceof aI}function aK(a,b){let c=a._readIntoRequests;a._readIntoRequests=new s,c.forEach(a=>{a._errorSteps(b)})}function aL(a){return TypeError(`ReadableStreamBYOBReader.prototype.${a} can only be used on a ReadableStreamBYOBReader`)}function aM(a,b){let{highWaterMark:c}=a;if(void 0===c)return b;if(ab(c)||c<0)throw RangeError("Invalid highWaterMark");return c}function aN(a){let{size:b}=a;return b||(()=>1)}function aO(a,b){var c;H(a,b);let d=null==a?void 0:a.highWaterMark,e=null==a?void 0:a.size;return{highWaterMark:void 0===d?void 0:M(d),size:void 0===e?void 0:(I(c=e,`${b} has member 'size' that`),a=>M(c(a)))}}Object.defineProperties(aI.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),g(aI.prototype.cancel,"cancel"),g(aI.prototype.read,"read"),g(aI.prototype.releaseLock,"releaseLock"),"symbol"==typeof d.toStringTag&&Object.defineProperty(aI.prototype,d.toStringTag,{value:"ReadableStreamBYOBReader",configurable:!0});let aP="function"==typeof AbortController;class aQ{constructor(a={},b={}){void 0===a?a=null:J(a,"First parameter");let c=aO(b,"Second parameter"),d=function(a,b){H(a,b);let c=null==a?void 0:a.abort,d=null==a?void 0:a.close,e=null==a?void 0:a.start,f=null==a?void 0:a.type,g=null==a?void 0:a.write;return{abort:void 0===c?void 0:(I(c,`${b} has member 'abort' that`),b=>r(c,a,[b])),close:void 0===d?void 0:(I(d,`${b} has member 'close' that`),()=>r(d,a,[])),start:void 0===e?void 0:(I(e,`${b} has member 'start' that`),b=>q(e,a,[b])),write:void 0===g?void 0:(I(g,`${b} has member 'write' that`),(b,c)=>r(g,a,[b,c])),type:f}}(a,"First parameter");if(this._state="writable",this._storedError=void 0,this._writer=void 0,this._writableStreamController=void 0,this._writeRequests=new s,this._inFlightWriteRequest=void 0,this._closeRequest=void 0,this._inFlightCloseRequest=void 0,this._pendingAbortRequest=void 0,this._backpressure=!1,void 0!==d.type)throw RangeError("Invalid type is specified");let e=aN(c);!function(a,b,c,d){let e,f,g,h,i=Object.create(a3.prototype);e=void 0!==b.start?()=>b.start(i):()=>{},f=void 0!==b.write?a=>b.write(a,i):()=>j(void 0),g=void 0!==b.close?()=>b.close():()=>j(void 0),h=void 0!==b.abort?a=>b.abort(a):()=>j(void 0),i._controlledWritableStream=a,a._writableStreamController=i,i._queue=void 0,i._queueTotalSize=void 0,ag(i),i._abortReason=void 0,i._abortController=function(){if(aP)return new AbortController}(),i._started=!1,i._strategySizeAlgorithm=d,i._strategyHWM=c,i._writeAlgorithm=f,i._closeAlgorithm=g,i._abortAlgorithm=h,a$(a,0>=a6(i)),n(j(e()),()=>(i._started=!0,a7(i),null),b=>(i._started=!0,aV(a,b),null))}(this,d,aM(c,1),e)}get locked(){if(!aR(this))throw ba("locked");return aS(this)}abort(a){return aR(this)?aS(this)?k(TypeError("Cannot abort a stream that already has a writer")):aT(this,a):k(ba("abort"))}close(){return aR(this)?aS(this)?k(TypeError("Cannot close a stream that already has a writer")):aY(this)?k(TypeError("Cannot close an already-closing stream")):aU(this):k(ba("close"))}getWriter(){if(!aR(this))throw ba("getWriter");return new a_(this)}}function aR(a){return!!f(a)&&!!Object.prototype.hasOwnProperty.call(a,"_writableStreamController")&&a instanceof aQ}function aS(a){return void 0!==a._writer}function aT(a,b){var c;if("closed"===a._state||"errored"===a._state)return j(void 0);a._writableStreamController._abortReason=b,null==(c=a._writableStreamController._abortController)||c.abort(b);let d=a._state;if("closed"===d||"errored"===d)return j(void 0);if(void 0!==a._pendingAbortRequest)return a._pendingAbortRequest._promise;let e=!1;"erroring"===d&&(e=!0,b=void 0);let f=l((c,d)=>{a._pendingAbortRequest={_promise:void 0,_resolve:c,_reject:d,_reason:b,_wasAlreadyErroring:e}});return a._pendingAbortRequest._promise=f,e||aW(a,b),f}function aU(a){var b;let c=a._state;if("closed"===c||"errored"===c)return k(TypeError(`The stream (in ${c} state) is not in the writable state and cannot be closed`));let d=l((b,c)=>{a._closeRequest={_resolve:b,_reject:c}}),e=a._writer;return void 0!==e&&a._backpressure&&"writable"===c&&bk(e),af(b=a._writableStreamController,a2,0),a7(b),d}function aV(a,b){"writable"!==a._state?aX(a):aW(a,b)}function aW(a,b){let c=a._writableStreamController;a._state="erroring",a._storedError=b;let d=a._writer;void 0!==d&&a1(d,b),void 0===a._inFlightWriteRequest&&void 0===a._inFlightCloseRequest&&c._started&&aX(a)}function aX(a){a._state="errored",a._writableStreamController[u]();let b=a._storedError;if(a._writeRequests.forEach(a=>{a._reject(b)}),a._writeRequests=new s,void 0===a._pendingAbortRequest)return void aZ(a);let c=a._pendingAbortRequest;if(a._pendingAbortRequest=void 0,c._wasAlreadyErroring)return c._reject(b),void aZ(a);n(a._writableStreamController[t](c._reason),()=>(c._resolve(),aZ(a),null),b=>(c._reject(b),aZ(a),null))}function aY(a){return void 0!==a._closeRequest||void 0!==a._inFlightCloseRequest}function aZ(a){void 0!==a._closeRequest&&(a._closeRequest._reject(a._storedError),a._closeRequest=void 0);let b=a._writer;void 0!==b&&bf(b,a._storedError)}function a$(a,b){let c=a._writer;void 0!==c&&b!==a._backpressure&&(b?bh(c):bk(c)),a._backpressure=b}Object.defineProperties(aQ.prototype,{abort:{enumerable:!0},close:{enumerable:!0},getWriter:{enumerable:!0},locked:{enumerable:!0}}),g(aQ.prototype.abort,"abort"),g(aQ.prototype.close,"close"),g(aQ.prototype.getWriter,"getWriter"),"symbol"==typeof d.toStringTag&&Object.defineProperty(aQ.prototype,d.toStringTag,{value:"WritableStream",configurable:!0});class a_{constructor(a){if(K(a,1,"WritableStreamDefaultWriter"),function(a,b){if(!aR(a))throw TypeError(`${b} is not a WritableStream.`)}(a,"First parameter"),aS(a))throw TypeError("This stream has already been locked for exclusive writing by another writer");this._ownerWritableStream=a,a._writer=this;let b=a._state;if("writable"===b)!aY(a)&&a._backpressure?bh(this):function(a){bh(a),bk(a)}(this),be(this);else if("erroring"===b)bi(this,a._storedError),be(this);else if("closed"===b)(function(a){bh(a),bk(a)})(this),be(this),bg(this);else{let b=a._storedError;bi(this,b),function(a,b){be(a),bf(a,b)}(this,b)}}get closed(){return a0(this)?this._closedPromise:k(bc("closed"))}get desiredSize(){if(!a0(this))throw bc("desiredSize");if(void 0===this._ownerWritableStream)throw bd("desiredSize");let a=this._ownerWritableStream,b=a._state;return"errored"===b||"erroring"===b?null:"closed"===b?0:a6(a._writableStreamController)}get ready(){return a0(this)?this._readyPromise:k(bc("ready"))}abort(a){return a0(this)?void 0===this._ownerWritableStream?k(bd("abort")):aT(this._ownerWritableStream,a):k(bc("abort"))}close(){if(!a0(this))return k(bc("close"));let a=this._ownerWritableStream;return void 0===a?k(bd("close")):aY(a)?k(TypeError("Cannot close an already-closing stream")):aU(this._ownerWritableStream)}releaseLock(){if(!a0(this))throw bc("releaseLock");void 0!==this._ownerWritableStream&&function(a){var b,c;let d=a._ownerWritableStream,e=TypeError("Writer was released and can no longer be used to monitor the stream's closedness");a1(a,e),"pending"===a._closedPromiseState?bf(a,e):(b=a,c=e,be(b),bf(b,c)),d._writer=void 0,a._ownerWritableStream=void 0}(this)}write(a){return a0(this)?void 0===this._ownerWritableStream?k(bd("write to")):function(a,b){let c=a._ownerWritableStream,d=c._writableStreamController,e=function(a,b){try{return a._strategySizeAlgorithm(b)}catch(b){return a8(a,b),1}}(d,b);if(c!==a._ownerWritableStream)return k(bd("write to"));let f=c._state;if("errored"===f)return k(c._storedError);if(aY(c)||"closed"===f)return k(TypeError("The stream is closing or closed and cannot be written to"));if("erroring"===f)return k(c._storedError);let g=l((a,b)=>{c._writeRequests.push({_resolve:a,_reject:b})});return function(a,b,c){try{af(a,b,c)}catch(b){return void a8(a,b)}let d=a._controlledWritableStream;aY(d)||"writable"!==d._state||a$(d,0>=a6(a)),a7(a)}(d,b,e),g}(this,a):k(bc("write"))}}function a0(a){return!!f(a)&&!!Object.prototype.hasOwnProperty.call(a,"_ownerWritableStream")&&a instanceof a_}function a1(a,b){"pending"===a._readyPromiseState?bj(a,b):bi(a,b)}Object.defineProperties(a_.prototype,{abort:{enumerable:!0},close:{enumerable:!0},releaseLock:{enumerable:!0},write:{enumerable:!0},closed:{enumerable:!0},desiredSize:{enumerable:!0},ready:{enumerable:!0}}),g(a_.prototype.abort,"abort"),g(a_.prototype.close,"close"),g(a_.prototype.releaseLock,"releaseLock"),g(a_.prototype.write,"write"),"symbol"==typeof d.toStringTag&&Object.defineProperty(a_.prototype,d.toStringTag,{value:"WritableStreamDefaultWriter",configurable:!0});let a2={};class a3{constructor(){throw TypeError("Illegal constructor")}get abortReason(){if(!a4(this))throw bb("abortReason");return this._abortReason}get signal(){if(!a4(this))throw bb("signal");if(void 0===this._abortController)throw TypeError("WritableStreamDefaultController.prototype.signal is not supported");return this._abortController.signal}error(a){if(!a4(this))throw bb("error");"writable"===this._controlledWritableStream._state&&a9(this,a)}[t](a){let b=this._abortAlgorithm(a);return a5(this),b}[u](){ag(this)}}function a4(a){return!!f(a)&&!!Object.prototype.hasOwnProperty.call(a,"_controlledWritableStream")&&a instanceof a3}function a5(a){a._writeAlgorithm=void 0,a._closeAlgorithm=void 0,a._abortAlgorithm=void 0,a._strategySizeAlgorithm=void 0}function a6(a){return a._strategyHWM-a._queueTotalSize}function a7(a){let b=a._controlledWritableStream;if(!a._started||void 0!==b._inFlightWriteRequest)return;if("erroring"===b._state)return void aX(b);if(0===a._queue.length)return;let c=a._queue.peek().value;c===a2?function(a){let b=a._controlledWritableStream;b._inFlightCloseRequest=b._closeRequest,b._closeRequest=void 0,ae(a);let c=a._closeAlgorithm();a5(a),n(c,()=>((function(a){a._inFlightCloseRequest._resolve(void 0),a._inFlightCloseRequest=void 0,"erroring"===a._state&&(a._storedError=void 0,void 0!==a._pendingAbortRequest&&(a._pendingAbortRequest._resolve(),a._pendingAbortRequest=void 0)),a._state="closed";let b=a._writer;void 0!==b&&bg(b)})(b),null),a=>(b._inFlightCloseRequest._reject(a),b._inFlightCloseRequest=void 0,void 0!==b._pendingAbortRequest&&(b._pendingAbortRequest._reject(a),b._pendingAbortRequest=void 0),aV(b,a),null))}(a):function(a,b){let c=a._controlledWritableStream;c._inFlightWriteRequest=c._writeRequests.shift(),n(a._writeAlgorithm(b),()=>{c._inFlightWriteRequest._resolve(void 0),c._inFlightWriteRequest=void 0;let b=c._state;return ae(a),aY(c)||"writable"!==b||a$(c,0>=a6(a)),a7(a),null},b=>("writable"===c._state&&a5(a),c._inFlightWriteRequest._reject(b),c._inFlightWriteRequest=void 0,aV(c,b),null))}(a,c)}function a8(a,b){"writable"===a._controlledWritableStream._state&&a9(a,b)}function a9(a,b){let c=a._controlledWritableStream;a5(a),aW(c,b)}function ba(a){return TypeError(`WritableStream.prototype.${a} can only be used on a WritableStream`)}function bb(a){return TypeError(`WritableStreamDefaultController.prototype.${a} can only be used on a WritableStreamDefaultController`)}function bc(a){return TypeError(`WritableStreamDefaultWriter.prototype.${a} can only be used on a WritableStreamDefaultWriter`)}function bd(a){return TypeError("Cannot "+a+" a stream using a released writer")}function be(a){a._closedPromise=l((b,c)=>{a._closedPromise_resolve=b,a._closedPromise_reject=c,a._closedPromiseState="pending"})}function bf(a,b){void 0!==a._closedPromise_reject&&(o(a._closedPromise),a._closedPromise_reject(b),a._closedPromise_resolve=void 0,a._closedPromise_reject=void 0,a._closedPromiseState="rejected")}function bg(a){void 0!==a._closedPromise_resolve&&(a._closedPromise_resolve(void 0),a._closedPromise_resolve=void 0,a._closedPromise_reject=void 0,a._closedPromiseState="resolved")}function bh(a){a._readyPromise=l((b,c)=>{a._readyPromise_resolve=b,a._readyPromise_reject=c}),a._readyPromiseState="pending"}function bi(a,b){bh(a),bj(a,b)}function bj(a,b){void 0!==a._readyPromise_reject&&(o(a._readyPromise),a._readyPromise_reject(b),a._readyPromise_resolve=void 0,a._readyPromise_reject=void 0,a._readyPromiseState="rejected")}function bk(a){void 0!==a._readyPromise_resolve&&(a._readyPromise_resolve(void 0),a._readyPromise_resolve=void 0,a._readyPromise_reject=void 0,a._readyPromiseState="fulfilled")}Object.defineProperties(a3.prototype,{abortReason:{enumerable:!0},signal:{enumerable:!0},error:{enumerable:!0}}),"symbol"==typeof d.toStringTag&&Object.defineProperty(a3.prototype,d.toStringTag,{value:"WritableStreamDefaultController",configurable:!0});let bl="undefined"!=typeof DOMException?DOMException:void 0,bm=!function(a){if("function"!=typeof a&&"object"!=typeof a)return!1;try{return new a,!0}catch(a){return!1}}(bl)?function(){let a=function(a,b){this.message=a||"",this.name=b||"Error",Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)};return a.prototype=Object.create(Error.prototype),Object.defineProperty(a.prototype,"constructor",{value:a,writable:!0,configurable:!0}),a}():bl;function bn(a,b,c,d,e,f){let g=a.getReader(),h=b.getWriter();by(a)&&(a._disturbed=!0);let i,q,r,s=!1,t=!1,u="readable",v="writable",w=!1,x=!1,y=l(a=>{r=a}),z=Promise.resolve(void 0);return l((A,B)=>{let C;function D(){if(s)return;let a=l((a,b)=>{!function c(d){d?a():m(s?j(!0):m(h.ready,()=>m(g.read(),a=>!!a.done||(o(z=h.write(a.value)),!1))),c,b)}(!1)});o(a)}function E(){return u="closed",c?I():H(()=>(aR(b)&&(w=aY(b),v=b._state),w||"closed"===v?j(void 0):"erroring"===v||"errored"===v?k(q):(w=!0,h.close())),!1,void 0),null}function F(a){return s||(u="errored",i=a,d?I(!0,a):H(()=>h.abort(a),!0,a)),null}function G(a){return t||(v="errored",q=a,e?I(!0,a):H(()=>g.cancel(a),!0,a)),null}if(void 0!==f&&(C=()=>{let a=void 0!==f.reason?f.reason:new bm("Aborted","AbortError"),b=[];d||b.push(()=>"writable"===v?h.abort(a):j(void 0)),e||b.push(()=>"readable"===u?g.cancel(a):j(void 0)),H(()=>Promise.all(b.map(a=>a())),!0,a)},f.aborted?C():f.addEventListener("abort",C)),by(a)&&(u=a._state,i=a._storedError),aR(b)&&(v=b._state,q=b._storedError,w=aY(b)),by(a)&&aR(b)&&(x=!0,r()),"errored"===u)F(i);else if("erroring"===v||"errored"===v)G(q);else if("closed"===u)E();else if(w||"closed"===v){let a=TypeError("the destination writable stream closed before all data could be piped to it");e?I(!0,a):H(()=>g.cancel(a),!0,a)}function H(a,b,c){function d(){let a;return"writable"!==v||w?e():n(j(function b(){if(a!==z)return a=z,m(z,b,b)}()),e),null}function e(){return a?n(a(),()=>J(b,c),a=>J(!0,a)):J(b,c),null}s||(s=!0,x?d():n(y,d))}function I(a,b){H(void 0,a,b)}function J(a,b){return t=!0,h.releaseLock(),g.releaseLock(),void 0!==f&&f.removeEventListener("abort",C),a?B(b):A(void 0),null}s||(n(g.closed,E,F),n(h.closed,function(){return t||(v="closed"),null},G)),x?D():p(()=>{x=!0,r(),D()})})}class bo{constructor(){throw TypeError("Illegal constructor")}get desiredSize(){if(!bp(this))throw bv("desiredSize");return bt(this)}close(){if(!bp(this))throw bv("close");if(!bu(this))throw TypeError("The stream is not in a state that permits close");!function(a){if(!bu(a))return;let b=a._controlledReadableStream;a._closeRequested=!0,0===a._queue.length&&(br(a),bB(b))}(this)}enqueue(a){if(!bp(this))throw bv("enqueue");if(!bu(this))throw TypeError("The stream is not in a state that permits enqueue");if(!bu(this))return;let b=this._controlledReadableStream;if(bz(b)&&T(b)>0)S(b,a,!1);else{let b;try{b=this._strategySizeAlgorithm(a)}catch(a){throw bs(this,a),a}try{af(this,a,b)}catch(a){throw bs(this,a),a}}bq(this)}error(a){if(!bp(this))throw bv("error");bs(this,a)}[v](a){ag(this);let b=this._cancelAlgorithm(a);return br(this),b}[w](a){let b=this._controlledReadableStream;if(this._queue.length>0){let c=ae(this);this._closeRequested&&0===this._queue.length?(br(this),bB(b)):bq(this),a._chunkSteps(c)}else R(b,a),bq(this)}[x](){}}function bp(a){return!!f(a)&&!!Object.prototype.hasOwnProperty.call(a,"_controlledReadableStream")&&a instanceof bo}function bq(a){if(function(a){let b=a._controlledReadableStream;return!!bu(a)&&!!a._started&&!!(bz(b)&&T(b)>0||bt(a)>0)}(a)){if(a._pulling)return void(a._pullAgain=!0);a._pulling=!0,n(a._pullAlgorithm(),()=>(a._pulling=!1,a._pullAgain&&(a._pullAgain=!1,bq(a)),null),b=>(bs(a,b),null))}}function br(a){a._pullAlgorithm=void 0,a._cancelAlgorithm=void 0,a._strategySizeAlgorithm=void 0}function bs(a,b){let c=a._controlledReadableStream;"readable"===c._state&&(ag(a),br(a),bC(c,b))}function bt(a){let b=a._controlledReadableStream._state;return"errored"===b?null:"closed"===b?0:a._strategyHWM-a._queueTotalSize}function bu(a){return!a._closeRequested&&"readable"===a._controlledReadableStream._state}function bv(a){return TypeError(`ReadableStreamDefaultController.prototype.${a} can only be used on a ReadableStreamDefaultController`)}function bw(a,b){H(a,b);let c=null==a?void 0:a.preventAbort,d=null==a?void 0:a.preventCancel,e=null==a?void 0:a.preventClose,f=null==a?void 0:a.signal;return void 0!==f&&function(a,b){if(!function(a){if("object"!=typeof a||null===a)return!1;try{return"boolean"==typeof a.aborted}catch(a){return!1}}(a))throw TypeError(`${b} is not an AbortSignal.`)}(f,`${b} has member 'signal' that`),{preventAbort:!!c,preventCancel:!!d,preventClose:!!e,signal:f}}Object.defineProperties(bo.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},desiredSize:{enumerable:!0}}),g(bo.prototype.close,"close"),g(bo.prototype.enqueue,"enqueue"),g(bo.prototype.error,"error"),"symbol"==typeof d.toStringTag&&Object.defineProperty(bo.prototype,d.toStringTag,{value:"ReadableStreamDefaultController",configurable:!0});class bx{constructor(a={},b={}){void 0===a?a=null:J(a,"First parameter");let c=aO(b,"Second parameter"),d=function(a,b){H(a,b);let c=null==a?void 0:a.autoAllocateChunkSize,d=null==a?void 0:a.cancel,e=null==a?void 0:a.pull,f=null==a?void 0:a.start,g=null==a?void 0:a.type;return{autoAllocateChunkSize:void 0===c?void 0:N(c,`${b} has member 'autoAllocateChunkSize' that`),cancel:void 0===d?void 0:(I(d,`${b} has member 'cancel' that`),b=>r(d,a,[b])),pull:void 0===e?void 0:(I(e,`${b} has member 'pull' that`),b=>r(e,a,[b])),start:void 0===f?void 0:(I(f,`${b} has member 'start' that`),b=>q(f,a,[b])),type:void 0===g?void 0:function(a,b){if("bytes"!=(a=`${a}`))throw TypeError(`${b} '${a}' is not a valid enumeration value for ReadableStreamType`);return a}(g,`${b} has member 'type' that`)}}(a,"First parameter");if(this._state="readable",this._reader=void 0,this._storedError=void 0,this._disturbed=!1,"bytes"===d.type){if(void 0!==c.size)throw RangeError("The strategy for a byte stream cannot have a size function");!function(a,b,c){let d,e,f,g=Object.create(ai.prototype);d=void 0!==b.start?()=>b.start(g):()=>{},e=void 0!==b.pull?()=>b.pull(g):()=>j(void 0),f=void 0!==b.cancel?a=>b.cancel(a):()=>j(void 0);let h=b.autoAllocateChunkSize;if(0===h)throw TypeError("autoAllocateChunkSize must be greater than 0");g._controlledReadableByteStream=a,g._pullAgain=!1,g._pulling=!1,g._byobRequest=null,g._queue=g._queueTotalSize=void 0,ag(g),g._closeRequested=!1,g._started=!1,g._strategyHWM=c,g._pullAlgorithm=e,g._cancelAlgorithm=f,g._autoAllocateChunkSize=h,g._pendingPullIntos=new s,a._readableStreamController=g,n(j(d()),()=>(g._started=!0,al(g),null),a=>(aA(g,a),null))}(this,d,aM(c,0))}else{let a=aN(c);!function(a,b,c,d){let e,f,g,h=Object.create(bo.prototype);e=void 0!==b.start?()=>b.start(h):()=>{},f=void 0!==b.pull?()=>b.pull(h):()=>j(void 0),g=void 0!==b.cancel?a=>b.cancel(a):()=>j(void 0),h._controlledReadableStream=a,h._queue=void 0,h._queueTotalSize=void 0,ag(h),h._started=!1,h._closeRequested=!1,h._pullAgain=!1,h._pulling=!1,h._strategySizeAlgorithm=d,h._strategyHWM=c,h._pullAlgorithm=f,h._cancelAlgorithm=g,a._readableStreamController=h,n(j(e()),()=>(h._started=!0,bq(h),null),a=>(bs(h,a),null))}(this,d,aM(c,1),a)}}get locked(){if(!by(this))throw bD("locked");return bz(this)}cancel(a){return by(this)?bz(this)?k(TypeError("Cannot cancel a stream that already has a reader")):bA(this,a):k(bD("cancel"))}getReader(a){if(!by(this))throw bD("getReader");return void 0===function(a,b){H(a,b);let c=null==a?void 0:a.mode;return{mode:void 0===c?void 0:function(a,b){if("byob"!=(a=`${a}`))throw TypeError(`${b} '${a}' is not a valid enumeration value for ReadableStreamReaderMode`);return a}(c,`${b} has member 'mode' that`)}}(a,"First parameter").mode?new V(this):new aI(this)}pipeThrough(a,b={}){if(!O(this))throw bD("pipeThrough");K(a,1,"pipeThrough");let c=function(a,b){H(a,b);let c=null==a?void 0:a.readable;L(c,"readable","ReadableWritablePair"),function(a,b){if(!O(a))throw TypeError(`${b} is not a ReadableStream.`)}(c,`${b} has member 'readable' that`);let d=null==a?void 0:a.writable;return L(d,"writable","ReadableWritablePair"),function(a,b){if(!P(a))throw TypeError(`${b} is not a WritableStream.`)}(d,`${b} has member 'writable' that`),{readable:c,writable:d}}(a,"First parameter"),d=bw(b,"Second parameter");if(this.locked)throw TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked ReadableStream");if(c.writable.locked)throw TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked WritableStream");return o(bn(this,c.writable,d.preventClose,d.preventAbort,d.preventCancel,d.signal)),c.readable}pipeTo(a,b={}){let c;if(!O(this))return k(bD("pipeTo"));if(void 0===a)return k("Parameter 1 is required in 'pipeTo'.");if(!P(a))return k(TypeError("ReadableStream.prototype.pipeTo's first argument must be a WritableStream"));try{c=bw(b,"Second parameter")}catch(a){return k(a)}return this.locked?k(TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked ReadableStream")):a.locked?k(TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked WritableStream")):bn(this,a,c.preventClose,c.preventAbort,c.preventCancel,c.signal)}tee(){if(!O(this))throw bD("tee");if(this.locked)throw TypeError("Cannot tee a stream that already has a reader");return!function(a){try{return a.getReader({mode:"byob"}).releaseLock(),!0}catch(a){return!1}}(this)?function(a,b){let c=a.getReader(),d,e,f,g,h,i=!1,k=!1,m=!1,o=!1,p=l(a=>{h=a});function q(){return i?k=!0:(i=!0,n(c.read(),a=>{if(k=!1,a.done)return m||f.close(),o||g.close(),m&&o||h(void 0),null;let b=a.value;return m||f.enqueue(b),o||g.enqueue(b),i=!1,k&&q(),null},()=>(i=!1,null))),j(void 0)}let r=new bx({start(a){f=a},pull:q,cancel:function(a){if(m=!0,d=a,o){let a=[d,e],b=c.cancel(a);h(b)}return p}}),s=new bx({start(a){g=a},pull:q,cancel:function(a){if(o=!0,e=a,m){let a=[d,e],b=c.cancel(a);h(b)}return p}});return n(c.closed,void 0,a=>(f.error(a),g.error(a),m&&o||h(void 0),null)),[r,s]}(this):function(a){let b,c,d,e,f,g=a.getReader(),h=!1,i=!1,k=!1,m=!1,o=!1,p=!1,q=l(a=>{f=a});function r(a){n(a.closed,void 0,b=>(a!==g||(d.error(b),e.error(b),o&&p||f(void 0)),null))}function s(){h&&(g.releaseLock(),r(g=a.getReader()),h=!1),n(g.read(),a=>{var b,c;if(k=!1,m=!1,a.done)return o||d.close(),p||e.close(),null==(b=d.byobRequest)||b.respond(0),null==(c=e.byobRequest)||c.respond(0),o&&p||f(void 0),null;let h=a.value,j=h;if(!o&&!p)try{j=ad(h)}catch(a){return d.error(a),e.error(a),f(g.cancel(a)),null}return o||d.enqueue(h),p||e.enqueue(j),i=!1,k?u():m&&v(),null},()=>(i=!1,null))}function t(b,c){h||(g.releaseLock(),r(g=a.getReader({mode:"byob"})),h=!0);let j=c?e:d,l=c?d:e;n(g.read(b),a=>{var b;k=!1,m=!1;let d=c?p:o,e=c?o:p;if(a.done){d||j.close(),e||l.close();let c=a.value;return void 0!==c&&(d||j.byobRequest.respondWithNewView(c),e||null==(b=l.byobRequest)||b.respond(0)),d&&e||f(void 0),null}let h=a.value;if(e)d||j.byobRequest.respondWithNewView(h);else{let a;try{a=ad(h)}catch(a){return j.error(a),l.error(a),f(g.cancel(a)),null}d||j.byobRequest.respondWithNewView(h),l.enqueue(a)}return i=!1,k?u():m&&v(),null},()=>(i=!1,null))}function u(){if(i)return k=!0,j(void 0);i=!0;let a=d.byobRequest;return null===a?s():t(a.view,!1),j(void 0)}function v(){if(i)return m=!0,j(void 0);i=!0;let a=e.byobRequest;return null===a?s():t(a.view,!0),j(void 0)}let w=new bx({type:"bytes",start(a){d=a},pull:u,cancel:function(a){if(o=!0,b=a,p){let a=[b,c],d=g.cancel(a);f(d)}return q}}),x=new bx({type:"bytes",start(a){e=a},pull:v,cancel:function(a){if(p=!0,c=a,o){let a=[b,c],d=g.cancel(a);f(d)}return q}});return r(g),[w,x]}(this)}values(a){if(!O(this))throw bD("values");return function(a,b){let c=new Z(a.getReader(),b),d=Object.create($);return d._asyncIteratorImpl=c,d}(this,(H(a,"First parameter"),{preventCancel:!!(null==a?void 0:a.preventCancel)}).preventCancel)}}function by(a){return!!f(a)&&!!Object.prototype.hasOwnProperty.call(a,"_readableStreamController")&&a instanceof bx}function bz(a){return void 0!==a._reader}function bA(a,b){if(a._disturbed=!0,"closed"===a._state)return j(void 0);if("errored"===a._state)return k(a._storedError);bB(a);let c=a._reader;if(void 0!==c&&aJ(c)){let a=c._readIntoRequests;c._readIntoRequests=new s,a.forEach(a=>{a._closeSteps(void 0)})}return m(a._readableStreamController[v](b),e,void 0)}function bB(a){a._state="closed";let b=a._reader;if(void 0!==b&&(E(b),W(b))){let a=b._readRequests;b._readRequests=new s,a.forEach(a=>{a._closeSteps()})}}function bC(a,b){a._state="errored",a._storedError=b;let c=a._reader;void 0!==c&&(D(c,b),W(c)?X(c,b):aK(c,b))}function bD(a){return TypeError(`ReadableStream.prototype.${a} can only be used on a ReadableStream`)}function bE(a,b){H(a,b);let c=null==a?void 0:a.highWaterMark;return L(c,"highWaterMark","QueuingStrategyInit"),{highWaterMark:M(c)}}Object.defineProperties(bx.prototype,{cancel:{enumerable:!0},getReader:{enumerable:!0},pipeThrough:{enumerable:!0},pipeTo:{enumerable:!0},tee:{enumerable:!0},values:{enumerable:!0},locked:{enumerable:!0}}),g(bx.prototype.cancel,"cancel"),g(bx.prototype.getReader,"getReader"),g(bx.prototype.pipeThrough,"pipeThrough"),g(bx.prototype.pipeTo,"pipeTo"),g(bx.prototype.tee,"tee"),g(bx.prototype.values,"values"),"symbol"==typeof d.toStringTag&&Object.defineProperty(bx.prototype,d.toStringTag,{value:"ReadableStream",configurable:!0}),"symbol"==typeof d.asyncIterator&&Object.defineProperty(bx.prototype,d.asyncIterator,{value:bx.prototype.values,writable:!0,configurable:!0});let bF=a=>a.byteLength;g(bF,"size");class bG{constructor(a){K(a,1,"ByteLengthQueuingStrategy"),a=bE(a,"First parameter"),this._byteLengthQueuingStrategyHighWaterMark=a.highWaterMark}get highWaterMark(){if(!bI(this))throw bH("highWaterMark");return this._byteLengthQueuingStrategyHighWaterMark}get size(){if(!bI(this))throw bH("size");return bF}}function bH(a){return TypeError(`ByteLengthQueuingStrategy.prototype.${a} can only be used on a ByteLengthQueuingStrategy`)}function bI(a){return!!f(a)&&!!Object.prototype.hasOwnProperty.call(a,"_byteLengthQueuingStrategyHighWaterMark")&&a instanceof bG}Object.defineProperties(bG.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),"symbol"==typeof d.toStringTag&&Object.defineProperty(bG.prototype,d.toStringTag,{value:"ByteLengthQueuingStrategy",configurable:!0});let bJ=()=>1;g(bJ,"size");class bK{constructor(a){K(a,1,"CountQueuingStrategy"),a=bE(a,"First parameter"),this._countQueuingStrategyHighWaterMark=a.highWaterMark}get highWaterMark(){if(!bM(this))throw bL("highWaterMark");return this._countQueuingStrategyHighWaterMark}get size(){if(!bM(this))throw bL("size");return bJ}}function bL(a){return TypeError(`CountQueuingStrategy.prototype.${a} can only be used on a CountQueuingStrategy`)}function bM(a){return!!f(a)&&!!Object.prototype.hasOwnProperty.call(a,"_countQueuingStrategyHighWaterMark")&&a instanceof bK}Object.defineProperties(bK.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),"symbol"==typeof d.toStringTag&&Object.defineProperty(bK.prototype,d.toStringTag,{value:"CountQueuingStrategy",configurable:!0});class bN{constructor(a={},b={},c={}){let d;void 0===a&&(a=null);let e=aO(b,"Second parameter"),f=aO(c,"Third parameter"),g=function(a,b){H(a,b);let c=null==a?void 0:a.flush,d=null==a?void 0:a.readableType,e=null==a?void 0:a.start,f=null==a?void 0:a.transform,g=null==a?void 0:a.writableType;return{flush:void 0===c?void 0:(I(c,`${b} has member 'flush' that`),b=>r(c,a,[b])),readableType:d,start:void 0===e?void 0:(I(e,`${b} has member 'start' that`),b=>q(e,a,[b])),transform:void 0===f?void 0:(I(f,`${b} has member 'transform' that`),(b,c)=>r(f,a,[b,c])),writableType:g}}(a,"First parameter");if(void 0!==g.readableType)throw RangeError("Invalid readableType specified");if(void 0!==g.writableType)throw RangeError("Invalid writableType specified");let h=aM(f,0),i=aN(f),n=aM(e,1),o=aN(e);!function(a,b,c,d,e,f){var g,h,i;function k(){return b}a._writableState="writable",a._writableStoredError=void 0,a._writableHasInFlightOperation=!1,a._writableStarted=!1,g=function(b){let c=a._transformStreamController;return a._backpressure?m(a._backpressureChangePromise,()=>{if("erroring"===(aR(a._writable)?a._writable._state:a._writableState))throw aR(a._writable)?a._writable._storedError:a._writableStoredError;return bW(c,b)},void 0):bW(c,b)},h=function(){var b=a;let c=b._transformStreamController,d=c._flushAlgorithm();return bU(c),m(d,()=>{if("errored"===b._readableState)throw b._readableStoredError;bZ(b)&&b$(b)},a=>{throw bP(b,a),b._readableStoredError})},a._writable=new aQ({start(b){a._writableController=b;try{let c=b.signal;void 0!==c&&c.addEventListener("abort",()=>{"writable"===a._writableState&&(a._writableState="erroring",c.reason&&(a._writableStoredError=c.reason))})}catch(a){}return m(k(),()=>(a._writableStarted=!0,b4(a),null),b=>{throw a._writableStarted=!0,b1(a,b),b})},write:b=>(a._writableHasInFlightOperation=!0,m(g(b),()=>(a._writableHasInFlightOperation=!1,b4(a),null),b=>{throw a._writableHasInFlightOperation=!1,b1(a,b),b})),close:()=>(a._writableHasInFlightOperation=!0,m(h(),()=>(a._writableHasInFlightOperation=!1,"erroring"===a._writableState&&(a._writableStoredError=void 0),a._writableState="closed",null),b=>{throw a._writableHasInFlightOperation=!1,a._writableState,b1(a,b),b})),abort:b=>(a._writableState="errored",a._writableStoredError=b,function(b){return bP(a,b),j(void 0)}(b))},{highWaterMark:c,size:d}),a._readableState="readable",a._readableStoredError=void 0,a._readableCloseRequested=!1,a._readablePulling=!1,i=function(){return bR(a,!1),a._backpressureChangePromise},a._readable=new bx({start:b=>(a._readableController=b,k().catch(b=>{b_(a,b)})),pull:()=>(a._readablePulling=!0,i().catch(b=>{b_(a,b)})),cancel:b=>(a._readableState="closed",function(b){return bQ(a,b),j(void 0)}(b))},{highWaterMark:e,size:f}),a._backpressure=void 0,a._backpressureChangePromise=void 0,a._backpressureChangePromise_resolve=void 0,bR(a,!0),a._transformStreamController=void 0}(this,l(a=>{d=a}),n,o,h,i),function(a,b){let c,d,e=Object.create(bS.prototype);c=void 0!==b.transform?a=>b.transform(a,e):a=>{try{var b;return bV(e,a),b=void 0,j(b)}catch(a){return k(a)}},d=void 0!==b.flush?()=>b.flush(e):()=>j(void 0),e._controlledTransformStream=a,a._transformStreamController=e,e._transformAlgorithm=c,e._flushAlgorithm=d}(this,g),void 0!==g.start?d(g.start(this._transformStreamController)):d(void 0)}get readable(){if(!bO(this))throw bY("readable");return this._readable}get writable(){if(!bO(this))throw bY("writable");return this._writable}}function bO(a){return!!f(a)&&!!Object.prototype.hasOwnProperty.call(a,"_transformStreamController")&&a instanceof bN}function bP(a,b){b_(a,b),bQ(a,b)}function bQ(a,b){bU(a._transformStreamController),a._writableController.error(b),"writable"===a._writableState&&b2(a,b),a._backpressure&&bR(a,!1)}function bR(a,b){void 0!==a._backpressureChangePromise&&a._backpressureChangePromise_resolve(),a._backpressureChangePromise=l(b=>{a._backpressureChangePromise_resolve=b}),a._backpressure=b}Object.defineProperties(bN.prototype,{readable:{enumerable:!0},writable:{enumerable:!0}}),"symbol"==typeof d.toStringTag&&Object.defineProperty(bN.prototype,d.toStringTag,{value:"TransformStream",configurable:!0});class bS{constructor(){throw TypeError("Illegal constructor")}get desiredSize(){if(!bT(this))throw bX("desiredSize");return b0(this._controlledTransformStream)}enqueue(a){if(!bT(this))throw bX("enqueue");bV(this,a)}error(a){if(!bT(this))throw bX("error");bP(this._controlledTransformStream,a)}terminate(){if(!bT(this))throw bX("terminate");let a=this._controlledTransformStream;bZ(a)&&b$(a),bQ(a,TypeError("TransformStream terminated"))}}function bT(a){return!!f(a)&&!!Object.prototype.hasOwnProperty.call(a,"_controlledTransformStream")&&a instanceof bS}function bU(a){a._transformAlgorithm=void 0,a._flushAlgorithm=void 0}function bV(a,b){let c=a._controlledTransformStream;if(!bZ(c))throw TypeError("Readable side is not in a state that permits enqueue");try{c._readablePulling=!1;try{c._readableController.enqueue(b)}catch(a){throw b_(c,a),a}}catch(a){throw bQ(c,a),c._readableStoredError}!(bZ(c)&&(c._readablePulling||b0(c)>0))!==c._backpressure&&bR(c,!0)}function bW(a,b){return m(a._transformAlgorithm(b),void 0,b=>{throw bP(a._controlledTransformStream,b),b})}function bX(a){return TypeError(`TransformStreamDefaultController.prototype.${a} can only be used on a TransformStreamDefaultController`)}function bY(a){return TypeError(`TransformStream.prototype.${a} can only be used on a TransformStream`)}function bZ(a){return!a._readableCloseRequested&&"readable"===a._readableState}function b$(a){a._readableState="closed",a._readableCloseRequested=!0,a._readableController.close()}function b_(a,b){"readable"===a._readableState&&(a._readableState="errored",a._readableStoredError=b),a._readableController.error(b)}function b0(a){return a._readableController.desiredSize}function b1(a,b){"writable"!==a._writableState?b3(a):b2(a,b)}function b2(a,b){a._writableState="erroring",a._writableStoredError=b,!a._writableHasInFlightOperation&&a._writableStarted&&b3(a)}function b3(a){a._writableState="errored"}function b4(a){"erroring"===a._writableState&&b3(a)}Object.defineProperties(bS.prototype,{enqueue:{enumerable:!0},error:{enumerable:!0},terminate:{enumerable:!0},desiredSize:{enumerable:!0}}),g(bS.prototype.enqueue,"enqueue"),g(bS.prototype.error,"error"),g(bS.prototype.terminate,"terminate"),"symbol"==typeof d.toStringTag&&Object.defineProperty(bS.prototype,d.toStringTag,{value:"TransformStreamDefaultController",configurable:!0});var b5,b6,b7,b8=c(91527);async function*b9(a){let b=a.byteOffset+a.byteLength,c=a.byteOffset;for(;c!==b;){let d=Math.min(b-c,65536),e=a.buffer.slice(c,c+d);c+=e.byteLength,yield new Uint8Array(e)}}async function*ca(a){let b=0;for(;b!==a.size;){let c=a.slice(b,Math.min(a.size,b+65536)),d=await c.arrayBuffer();b+=d.byteLength,yield new Uint8Array(d)}}async function*cb(a,b=!1){for(let c of a)ArrayBuffer.isView(c)?b?yield*b9(c):yield c:(0,b8.T)(c.stream)?yield*c.stream():yield*ca(c)}var cc=function(a,b,c,d){if("a"===c&&!d)throw TypeError("Private accessor was defined without a getter");if("function"==typeof b?a!==b||!d:!b.has(a))throw TypeError("Cannot read private member from an object whose class did not declare it");return"m"===c?d:"a"===c?d.call(a):d?d.value:b.get(a)},cd=function(a,b,c,d,e){if("m"===d)throw TypeError("Private method is not writable");if("a"===d&&!e)throw TypeError("Private accessor was defined without a setter");if("function"==typeof b?a!==b||!e:!b.has(a))throw TypeError("Cannot write private member to an object whose class did not declare it");return"a"===d?e.call(a,c):e?e.value=c:b.set(a,c),c};class ce{constructor(a=[],b={}){if(b5.set(this,[]),b6.set(this,""),b7.set(this,0),null!=b||(b={}),"object"!=typeof a||null===a)throw TypeError("Failed to construct 'Blob': The provided value cannot be converted to a sequence.");if(!(0,b8.T)(a[Symbol.iterator]))throw TypeError("Failed to construct 'Blob': The object must have a callable @@iterator property.");if("object"!=typeof b&&!(0,b8.T)(b))throw TypeError("Failed to construct 'Blob': parameter 2 cannot convert to dictionary.");let c=new TextEncoder;for(let b of a){let a;a=ArrayBuffer.isView(b)?new Uint8Array(b.buffer.slice(b.byteOffset,b.byteOffset+b.byteLength)):b instanceof ArrayBuffer?new Uint8Array(b.slice(0)):b instanceof ce?b:c.encode(String(b)),cd(this,b7,cc(this,b7,"f")+(ArrayBuffer.isView(a)?a.byteLength:a.size),"f"),cc(this,b5,"f").push(a)}let d=void 0===b.type?"":String(b.type);cd(this,b6,/^[\x20-\x7E]*$/.test(d)?d:"","f")}static[(b5=new WeakMap,b6=new WeakMap,b7=new WeakMap,Symbol.hasInstance)](a){return!!(a&&"object"==typeof a&&(0,b8.T)(a.constructor)&&((0,b8.T)(a.stream)||(0,b8.T)(a.arrayBuffer))&&/^(Blob|File)$/.test(a[Symbol.toStringTag]))}get type(){return cc(this,b6,"f")}get size(){return cc(this,b7,"f")}slice(a,b,c){return new ce(function*(a,b,c=0,d){null!=d||(d=b);let e=c<0?Math.max(b+c,0):Math.min(c,b),f=d<0?Math.max(b+d,0):Math.min(d,b),g=Math.max(f-e,0),h=0;for(let b of a){if(h>=g)break;let a=ArrayBuffer.isView(b)?b.byteLength:b.size;if(e&&a<=e)e-=a,f-=a;else{let c;ArrayBuffer.isView(b)?h+=(c=b.subarray(e,Math.min(a,f))).byteLength:h+=(c=b.slice(e,Math.min(a,f))).size,f-=a,e=0,yield c}}}(cc(this,b5,"f"),this.size,a,b),{type:c})}async text(){let a=new TextDecoder,b="";for await(let c of cb(cc(this,b5,"f")))b+=a.decode(c,{stream:!0});return b+a.decode()}async arrayBuffer(){let a=new Uint8Array(this.size),b=0;for await(let c of cb(cc(this,b5,"f")))a.set(c,b),b+=c.length;return a.buffer}stream(){let a=cb(cc(this,b5,"f"),!0);return new bx({async pull(b){let{value:c,done:d}=await a.next();if(d)return queueMicrotask(()=>b.close());b.enqueue(c)},async cancel(){await a.return()}})}get[Symbol.toStringTag](){return"Blob"}}Object.defineProperties(ce.prototype,{type:{enumerable:!0},size:{enumerable:!0},slice:{enumerable:!0},stream:{enumerable:!0},text:{enumerable:!0},arrayBuffer:{enumerable:!0}})},94672:(a,b,c)=>{"use strict";var d="undefined"!=typeof Symbol&&Symbol,e=c(11870);a.exports=function(){return"function"==typeof d&&"function"==typeof Symbol&&"symbol"==typeof d("foo")&&"symbol"==typeof Symbol("bar")&&e()}},96239:(a,b,c)=>{"use strict";let{Writable:d}=c(27910),e=c(74240),{BINARY_TYPES:f,EMPTY_BUFFER:g,kStatusCode:h,kWebSocket:i}=c(32995),{concat:j,toArrayBuffer:k,unmask:l}=c(27047),{isValidStatusCode:m,isValidUTF8:n}=c(26649),o=Buffer[Symbol.species];class p extends d{constructor(a={}){super(),this._allowSynchronousEvents=void 0===a.allowSynchronousEvents||a.allowSynchronousEvents,this._binaryType=a.binaryType||f[0],this._extensions=a.extensions||{},this._isServer=!!a.isServer,this._maxBufferedChunks=0|a.maxBufferedChunks,this._maxFragments=0|a.maxFragments,this._maxPayload=0|a.maxPayload,this._skipUTF8Validation=!!a.skipUTF8Validation,this[i]=void 0,this._bufferedBytes=0,this._buffers=[],this._compressed=!1,this._payloadLength=0,this._mask=void 0,this._fragmented=0,this._masked=!1,this._fin=!1,this._opcode=0,this._totalPayloadLength=0,this._messageLength=0,this._fragments=[],this._errored=!1,this._loop=!1,this._state=0}_write(a,b,c){return 8===this._opcode&&0==this._state?c():this._maxBufferedChunks>0&&this._buffers.length>=this._maxBufferedChunks?void c(this.createError(RangeError,"Too many buffered chunks",!1,1008,"WS_ERR_TOO_MANY_BUFFERED_PARTS")):void(this._bufferedBytes+=a.length,this._buffers.push(a),this.startLoop(c))}consume(a){if(this._bufferedBytes-=a,a===this._buffers[0].length)return this._buffers.shift();if(a<this._buffers[0].length){let b=this._buffers[0];return this._buffers[0]=new o(b.buffer,b.byteOffset+a,b.length-a),new o(b.buffer,b.byteOffset,a)}let b=Buffer.allocUnsafe(a);do{let c=this._buffers[0],d=b.length-a;a>=c.length?b.set(this._buffers.shift(),d):(b.set(new Uint8Array(c.buffer,c.byteOffset,a),d),this._buffers[0]=new o(c.buffer,c.byteOffset+a,c.length-a)),a-=c.length}while(a>0);return b}startLoop(a){this._loop=!0;do switch(this._state){case 0:this.getInfo(a);break;case 1:this.getPayloadLength16(a);break;case 2:this.getPayloadLength64(a);break;case 3:this.getMask();break;case 4:this.getData(a);break;case 5:case 6:this._loop=!1;return}while(this._loop);this._errored||a()}getInfo(a){if(this._bufferedBytes<2){this._loop=!1;return}let b=this.consume(2);if((48&b[0])!=0)return void a(this.createError(RangeError,"RSV2 and RSV3 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_2_3"));let c=(64&b[0])==64;if(c&&!this._extensions[e.extensionName])return void a(this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1"));if(this._fin=(128&b[0])==128,this._opcode=15&b[0],this._payloadLength=127&b[1],0===this._opcode){if(c)return void a(this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1"));if(!this._fragmented)return void a(this.createError(RangeError,"invalid opcode 0",!0,1002,"WS_ERR_INVALID_OPCODE"));this._opcode=this._fragmented}else if(1===this._opcode||2===this._opcode){if(this._fragmented)return void a(this.createError(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE"));this._compressed=c}else{if(!(this._opcode>7)||!(this._opcode<11))return void a(this.createError(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE"));if(!this._fin)return void a(this.createError(RangeError,"FIN must be set",!0,1002,"WS_ERR_EXPECTED_FIN"));if(c)return void a(this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1"));if(this._payloadLength>125||8===this._opcode&&1===this._payloadLength)return void a(this.createError(RangeError,`invalid payload length ${this._payloadLength}`,!0,1002,"WS_ERR_INVALID_CONTROL_PAYLOAD_LENGTH"))}if(this._fin||this._fragmented||(this._fragmented=this._opcode),this._masked=(128&b[1])==128,this._isServer){if(!this._masked)return void a(this.createError(RangeError,"MASK must be set",!0,1002,"WS_ERR_EXPECTED_MASK"))}else if(this._masked)return void a(this.createError(RangeError,"MASK must be clear",!0,1002,"WS_ERR_UNEXPECTED_MASK"));126===this._payloadLength?this._state=1:127===this._payloadLength?this._state=2:this.haveLength(a)}getPayloadLength16(a){if(this._bufferedBytes<2){this._loop=!1;return}this._payloadLength=this.consume(2).readUInt16BE(0),this.haveLength(a)}getPayloadLength64(a){if(this._bufferedBytes<8){this._loop=!1;return}let b=this.consume(8),c=b.readUInt32BE(0);if(c>2097151)return void a(this.createError(RangeError,"Unsupported WebSocket frame: payload length > 2^53 - 1",!1,1009,"WS_ERR_UNSUPPORTED_DATA_PAYLOAD_LENGTH"));this._payloadLength=0x100000000*c+b.readUInt32BE(4),this.haveLength(a)}haveLength(a){if(this._payloadLength&&this._opcode<8&&(this._totalPayloadLength+=this._payloadLength,this._totalPayloadLength>this._maxPayload&&this._maxPayload>0))return void a(this.createError(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH"));this._masked?this._state=3:this._state=4}getMask(){if(this._bufferedBytes<4){this._loop=!1;return}this._mask=this.consume(4),this._state=4}getData(a){let b=g;if(this._payloadLength){if(this._bufferedBytes<this._payloadLength){this._loop=!1;return}b=this.consume(this._payloadLength),this._masked&&(this._mask[0]|this._mask[1]|this._mask[2]|this._mask[3])!=0&&l(b,this._mask)}if(this._opcode>7)return void this.controlMessage(b,a);if(this._compressed){this._state=5,this.decompress(b,a);return}if(b.length){if(this._maxFragments>0&&this._fragments.length>=this._maxFragments)return void a(this.createError(RangeError,"Too many message fragments",!1,1008,"WS_ERR_TOO_MANY_BUFFERED_PARTS"));this._messageLength=this._totalPayloadLength,this._fragments.push(b)}this.dataMessage(a)}decompress(a,b){this._extensions[e.extensionName].decompress(a,this._fin,(a,c)=>{if(a)return b(a);if(c.length){if(this._messageLength+=c.length,this._messageLength>this._maxPayload&&this._maxPayload>0)return void b(this.createError(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH"));if(this._maxFragments>0&&this._fragments.length>=this._maxFragments)return void b(this.createError(RangeError,"Too many message fragments",!1,1008,"WS_ERR_TOO_MANY_BUFFERED_PARTS"));this._fragments.push(c)}this.dataMessage(b),0===this._state&&this.startLoop(b)})}dataMessage(a){if(!this._fin){this._state=0;return}let b=this._messageLength,c=this._fragments;if(this._totalPayloadLength=0,this._messageLength=0,this._fragmented=0,this._fragments=[],2===this._opcode){let d;d="nodebuffer"===this._binaryType?j(c,b):"arraybuffer"===this._binaryType?k(j(c,b)):"blob"===this._binaryType?new Blob(c):c,this._allowSynchronousEvents?(this.emit("message",d,!0),this._state=0):(this._state=6,setImmediate(()=>{this.emit("message",d,!0),this._state=0,this.startLoop(a)}))}else{let d=j(c,b);if(!this._skipUTF8Validation&&!n(d))return void a(this.createError(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8"));5===this._state||this._allowSynchronousEvents?(this.emit("message",d,!1),this._state=0):(this._state=6,setImmediate(()=>{this.emit("message",d,!1),this._state=0,this.startLoop(a)}))}}controlMessage(a,b){if(8===this._opcode){if(0===a.length)this._loop=!1,this.emit("conclude",1005,g),this.end();else{let c=a.readUInt16BE(0);if(!m(c))return void b(this.createError(RangeError,`invalid status code ${c}`,!0,1002,"WS_ERR_INVALID_CLOSE_CODE"));let d=new o(a.buffer,a.byteOffset+2,a.length-2);if(!this._skipUTF8Validation&&!n(d))return void b(this.createError(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8"));this._loop=!1,this.emit("conclude",c,d),this.end()}this._state=0;return}this._allowSynchronousEvents?(this.emit(9===this._opcode?"ping":"pong",a),this._state=0):(this._state=6,setImmediate(()=>{this.emit(9===this._opcode?"ping":"pong",a),this._state=0,this.startLoop(b)}))}createError(a,b,c,d,e){this._loop=!1,this._errored=!0;let f=new a(c?`Invalid WebSocket frame: ${b}`:b);return Error.captureStackTrace(f,this.createError),f.code=e,f[h]=d,f}}a.exports=p},96655:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"MISSING_ROOT_TAGS_ERROR",{enumerable:!0,get:function(){return c}});let c="NEXT_MISSING_ROOT_TAGS";("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},96698:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.GoogleAuth=b.GoogleAuthExceptionMessages=void 0;let d=c(79646),e=c(29021),f=c(79792),g=c(70916),h=c(21820),i=c(33873),j=c(88593),k=c(745),l=c(58500),m=c(25203),n=c(74829),o=c(31995),p=c(83e3),q=c(93209),r=c(35294),s=c(49502),t=c(29694),u=c(24420),v=c(45388);b.GoogleAuthExceptionMessages={API_KEY_WITH_CREDENTIALS:"API Keys and Credentials are mutually exclusive authentication methods and cannot be used together.",NO_PROJECT_ID_FOUND:"Unable to detect a Project Id in the current environment. \nTo learn more about authentication and Google APIs, visit: \nhttps://cloud.google.com/docs/authentication/getting-started",NO_CREDENTIALS_FOUND:"Unable to find credentials in current environment. \nTo learn more about authentication and Google APIs, visit: \nhttps://cloud.google.com/docs/authentication/getting-started",NO_ADC_FOUND:"Could not load the default credentials. Browse to https://cloud.google.com/docs/authentication/getting-started for more information.",NO_UNIVERSE_DOMAIN_FOUND:"Unable to detect a Universe Domain in the current environment.\nTo learn more about Universe Domain retrieval, visit: \nhttps://cloud.google.com/compute/docs/metadata/predefined-metadata-keys"};class w{checkIsGCE=void 0;useJWTAccessWithScope;defaultServicePath;get isGCE(){return this.checkIsGCE}_findProjectIdPromise;_cachedProjectId;jsonContent=null;apiKey;cachedCredential=null;#C=null;defaultScopes;keyFilename;scopes;clientOptions={};constructor(a={}){if(this._cachedProjectId=a.projectId||null,this.cachedCredential=a.authClient||null,this.keyFilename=a.keyFilename||a.keyFile,this.scopes=a.scopes,this.clientOptions=a.clientOptions||{},this.jsonContent=a.credentials||null,this.apiKey=a.apiKey||this.clientOptions.apiKey||null,this.apiKey&&(this.jsonContent||this.clientOptions.credentials))throw RangeError(b.GoogleAuthExceptionMessages.API_KEY_WITH_CREDENTIALS);a.universeDomain&&(this.clientOptions.universeDomain=a.universeDomain)}setGapicJWTValues(a){a.defaultServicePath=this.defaultServicePath,a.useJWTAccessWithScope=this.useJWTAccessWithScope,a.defaultScopes=this.defaultScopes}getProjectId(a){if(!a)return this.getProjectIdAsync();this.getProjectIdAsync().then(b=>a(null,b),a)}async getProjectIdOptional(){try{return await this.getProjectId()}catch(a){if(a instanceof Error&&a.message===b.GoogleAuthExceptionMessages.NO_PROJECT_ID_FOUND)return null;throw a}}async findAndCacheProjectId(){let a=null;if(a||=await this.getProductionProjectId(),a||=await this.getFileProjectId(),a||=await this.getDefaultServiceProjectId(),a||=await this.getGCEProjectId(),a||=await this.getExternalAccountClientProjectId())return this._cachedProjectId=a,a;throw Error(b.GoogleAuthExceptionMessages.NO_PROJECT_ID_FOUND)}async getProjectIdAsync(){return this._cachedProjectId?this._cachedProjectId:(this._findProjectIdPromise||(this._findProjectIdPromise=this.findAndCacheProjectId()),this._findProjectIdPromise)}async getUniverseDomainFromMetadataServer(){let a;try{a=await g.universe("universe-domain"),a||=s.DEFAULT_UNIVERSE}catch(b){if(b&&b?.response?.status===404)a=s.DEFAULT_UNIVERSE;else throw b}return a}async getUniverseDomain(){let a=(0,v.originalOrCamelOptions)(this.clientOptions).get("universe_domain");try{a??=(await this.getClient()).universeDomain}catch{a??=s.DEFAULT_UNIVERSE}return a}getAnyScopes(){return this.scopes||this.defaultScopes}getApplicationDefault(a={},b){let c;if("function"==typeof a?b=a:c=a,!b)return this.getApplicationDefaultAsync(c);this.getApplicationDefaultAsync(c).then(a=>b(null,a.credential,a.projectId),b)}async getApplicationDefaultAsync(a={}){let c;if(this.cachedCredential)return await this.#D(this.cachedCredential,null);if((c=await this._tryGetApplicationCredentialsFromEnvironmentVariable(a))||(c=await this._tryGetApplicationCredentialsFromWellKnownFile(a)))return c instanceof n.JWT?c.scopes=this.scopes:c instanceof r.BaseExternalAccountClient&&(c.scopes=this.getAnyScopes()),await this.#D(c);if(await this._checkIsGCE())return a.scopes=this.getAnyScopes(),await this.#D(new k.Compute(a));throw Error(b.GoogleAuthExceptionMessages.NO_ADC_FOUND)}async #D(a,b=process.env.GOOGLE_CLOUD_QUOTA_PROJECT||null){let c=await this.getProjectIdOptional();return b&&(a.quotaProjectId=b),this.cachedCredential=a,{credential:a,projectId:c}}async _checkIsGCE(){return void 0===this.checkIsGCE&&(this.checkIsGCE=g.getGCPResidency()||await g.isAvailable()),this.checkIsGCE}async _tryGetApplicationCredentialsFromEnvironmentVariable(a){let b=process.env.GOOGLE_APPLICATION_CREDENTIALS||process.env.google_application_credentials;if(!b||0===b.length)return null;try{return this._getApplicationCredentialsFromFilePath(b,a)}catch(a){throw a instanceof Error&&(a.message=`Unable to read the credential file specified by the GOOGLE_APPLICATION_CREDENTIALS environment variable: ${a.message}`),a}}async _tryGetApplicationCredentialsFromWellKnownFile(a){let b=null;if(this._isWindows())b=process.env.APPDATA;else{let a=process.env.HOME;a&&(b=i.join(a,".config"))}return(b&&(b=i.join(b,"gcloud","application_default_credentials.json"),e.existsSync(b)||(b=null)),b)?await this._getApplicationCredentialsFromFilePath(b,a):null}async _getApplicationCredentialsFromFilePath(a,b={}){if(!a||0===a.length)throw Error("The file path is invalid.");try{if(a=e.realpathSync(a),!e.lstatSync(a).isFile())throw Error()}catch(b){throw b instanceof Error&&(b.message=`The file at ${a} does not exist, or it is not a file. ${b.message}`),b}let c=e.createReadStream(a);return this.fromStream(c,b)}fromImpersonatedJSON(a){if(!a)throw Error("Must pass in a JSON object containing an impersonated refresh token");if(a.type!==p.IMPERSONATED_ACCOUNT_TYPE)throw Error(`The incoming JSON object does not have the "${p.IMPERSONATED_ACCOUNT_TYPE}" type`);if(!a.source_credentials)throw Error("The incoming JSON object does not contain a source_credentials field");if(!a.service_account_impersonation_url)throw Error("The incoming JSON object does not contain a service_account_impersonation_url field");let b=this.fromJSON(a.source_credentials);if(a.service_account_impersonation_url?.length>256)throw RangeError(`Target principal is too long: ${a.service_account_impersonation_url}`);let c=/(?<target>[^/]+):(generateAccessToken|generateIdToken)$/.exec(a.service_account_impersonation_url)?.groups?.target;if(!c)throw RangeError(`Cannot extract target principal from ${a.service_account_impersonation_url}`);let d=(this.scopes||a.scopes||this.defaultScopes)??[];return new p.Impersonated({...a,sourceClient:b,targetPrincipal:c,targetScopes:Array.isArray(d)?d:[d]})}fromJSON(a,b={}){let c,d=(0,v.originalOrCamelOptions)(b).get("universe_domain");return a.type===o.USER_REFRESH_ACCOUNT_TYPE?(c=new o.UserRefreshClient(b)).fromJSON(a):a.type===p.IMPERSONATED_ACCOUNT_TYPE?c=this.fromImpersonatedJSON(a):a.type===r.EXTERNAL_ACCOUNT_TYPE?(c=q.ExternalAccountClient.fromJSON({...a,...b})).scopes=this.getAnyScopes():a.type===t.EXTERNAL_ACCOUNT_AUTHORIZED_USER_TYPE?c=new t.ExternalAccountAuthorizedUserClient({...a,...b}):a.type===u.GDCH_SERVICE_ACCOUNT_TYPE?(c=new u.GdchClient(b)).fromJSON(a):(b.scopes=this.scopes,c=new n.JWT(b),this.setGapicJWTValues(c),c.fromJSON(a)),d&&(c.universeDomain=d),c}_cacheClientFromJSON(a,b){let c=this.fromJSON(a,b);return this.jsonContent=a,this.cachedCredential=c,c}fromStream(a,b={},c){let d={};if("function"==typeof b?c=b:d=b,!c)return this.fromStreamAsync(a,d);this.fromStreamAsync(a,d).then(a=>c(null,a),c)}fromStreamAsync(a,b){return new Promise((c,d)=>{if(!a)throw Error("Must pass in a stream containing the Google auth settings.");let e=[];a.setEncoding("utf8").on("error",d).on("data",a=>e.push(a)).on("end",()=>{try{try{let a=JSON.parse(e.join("")),d=this._cacheClientFromJSON(a,b);return c(d)}catch(b){if(!this.keyFilename)throw b;let a=new n.JWT({...this.clientOptions,keyFile:this.keyFilename});return this.cachedCredential=a,this.setGapicJWTValues(a),c(a)}}catch(a){return d(a)}})})}fromAPIKey(a,b={}){return new n.JWT({...b,apiKey:a})}_isWindows(){let a=h.platform();return!!a&&!!(a.length>=3)&&"win"===a.substring(0,3).toLowerCase()}async getDefaultServiceProjectId(){return new Promise(a=>{(0,d.exec)("gcloud config config-helper --format json",(b,c)=>{if(!b&&c)try{let b=JSON.parse(c).configuration.properties.core.project;a(b);return}catch(a){}a(null)})})}getProductionProjectId(){return process.env.GCLOUD_PROJECT||process.env.GOOGLE_CLOUD_PROJECT||process.env.gcloud_project||process.env.google_cloud_project}async getFileProjectId(){if(this.cachedCredential)return this.cachedCredential.projectId;if(this.keyFilename){let a=await this.getClient();if(a&&a.projectId)return a.projectId}let a=await this._tryGetApplicationCredentialsFromEnvironmentVariable();return a?a.projectId:null}async getExternalAccountClientProjectId(){if(!this.jsonContent||this.jsonContent.type!==r.EXTERNAL_ACCOUNT_TYPE)return null;let a=await this.getClient();return await a.getProjectId()}async getGCEProjectId(){try{return await g.project("project-id")}catch(a){return null}}getCredentials(a){if(!a)return this.getCredentialsAsync();this.getCredentialsAsync().then(b=>a(null,b),a)}async getCredentialsAsync(){let a=await this.getClient();if(a instanceof p.Impersonated)return{client_email:a.getTargetPrincipal()};if(a instanceof r.BaseExternalAccountClient){let b=a.getServiceAccountEmail();if(b)return{client_email:b,universe_domain:a.universeDomain}}if(this.jsonContent)return{client_email:this.jsonContent.client_email,private_key:this.jsonContent.private_key,universe_domain:this.jsonContent.universe_domain};if(await this._checkIsGCE()){let[a,b]=await Promise.all([g.instance("service-accounts/default/email"),this.getUniverseDomain()]);return{client_email:a,universe_domain:b}}throw Error(b.GoogleAuthExceptionMessages.NO_CREDENTIALS_FOUND)}async getClient(){if(this.cachedCredential)return this.cachedCredential;this.#C=this.#C||this.#E();try{let a=await this.#C;if(a instanceof u.GdchClient&&!a.apiAudience){let b=this.clientOptions,c=b.apiEndpoint||b.servicePath;if(c){let b=c.startsWith("http")?"":"https://",d=`${b}${c}/`.replace(/\/+$/,"/"),e=a.createWithGdchAudience(d);return this.cachedCredential=e,e}}return a}finally{this.#C=null}}async #E(){if(this.jsonContent)return this._cacheClientFromJSON(this.jsonContent,this.clientOptions);if(this.keyFilename){let a=i.resolve(this.keyFilename),b=e.createReadStream(a);return await this.fromStreamAsync(b,this.clientOptions)}if(this.apiKey){let a=await this.fromAPIKey(this.apiKey,this.clientOptions);a.scopes=this.scopes;let{credential:b}=await this.#D(a);return b}{let{credential:a}=await this.getApplicationDefaultAsync(this.clientOptions);return a}}async getIdTokenClient(a){let b=await this.getClient();if(!("fetchIdToken"in b))throw Error("Cannot fetch ID token in this environment, use GCE or set the GOOGLE_APPLICATION_CREDENTIALS environment variable to a service account credentials JSON file.");return new l.IdTokenClient({targetAudience:a,idTokenProvider:b})}async getAccessToken(){let a=await this.getClient();return(await a.getAccessToken()).token}async getRequestHeaders(a){return(await this.getClient()).getRequestHeaders(a)}async authorizeRequest(a={}){let b=a.url,c=await this.getClient(),d=await c.getRequestHeaders(b);return a.headers=f.Gaxios.mergeHeaders(a.headers,d),a}async fetch(...a){return(await this.getClient()).fetch(...a)}async request(a){return(await this.getClient()).request(a)}getEnv(){return(0,m.getEnv)()}async sign(a,b){let c=await this.getClient(),d=await this.getUniverseDomain();if(b=b||`https://iamcredentials.${d}/v1/projects/-/serviceAccounts/`,c instanceof p.Impersonated)return(await c.sign(a)).signedBlob;let e=(0,j.createCrypto)();if(c instanceof n.JWT&&c.key)return await e.sign(c.key,a);let f=await this.getCredentials();if(!f.client_email)throw Error("Cannot sign data without `client_email`.");return this.signBlob(e,f.client_email,a,b)}async signBlob(a,b,c,d){let e=new URL(d+`${b}:signBlob`);return(await this.request({method:"POST",url:e.href,data:{payload:a.encodeBase64StringUtf8(c)},retry:!0,retryConfig:{httpMethodsToRetry:["POST"]}})).data.signedBlob}}b.GoogleAuth=w},97025:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.validateUnion=b.validateArray=b.usePattern=b.callValidateCode=b.schemaProperties=b.allSchemaProperties=b.noPropertyInData=b.propertyInData=b.isOwnProperty=b.hasPropFunc=b.reportMissingProp=b.checkMissingProp=b.checkReportMissingProp=void 0;let d=c(31849),e=c(83593),f=c(60359),g=c(83593);function h(a){return a.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,d._)`Object.prototype.hasOwnProperty`})}function i(a,b,c){return(0,d._)`${h(a)}.call(${b}, ${c})`}function j(a,b,c,e){let f=(0,d._)`${b}${(0,d.getProperty)(c)} === undefined`;return e?(0,d.or)(f,(0,d.not)(i(a,b,c))):f}function k(a){return a?Object.keys(a).filter(a=>"__proto__"!==a):[]}b.checkReportMissingProp=function(a,b){let{gen:c,data:e,it:f}=a;c.if(j(c,e,b,f.opts.ownProperties),()=>{a.setParams({missingProperty:(0,d._)`${b}`},!0),a.error()})},b.checkMissingProp=function({gen:a,data:b,it:{opts:c}},e,f){return(0,d.or)(...e.map(e=>(0,d.and)(j(a,b,e,c.ownProperties),(0,d._)`${f} = ${e}`)))},b.reportMissingProp=function(a,b){a.setParams({missingProperty:b},!0),a.error()},b.hasPropFunc=h,b.isOwnProperty=i,b.propertyInData=function(a,b,c,e){let f=(0,d._)`${b}${(0,d.getProperty)(c)} !== undefined`;return e?(0,d._)`${f} && ${i(a,b,c)}`:f},b.noPropertyInData=j,b.allSchemaProperties=k,b.schemaProperties=function(a,b){return k(b).filter(c=>!(0,e.alwaysValidSchema)(a,b[c]))},b.callValidateCode=function({schemaCode:a,data:b,it:{gen:c,topSchemaRef:e,schemaPath:g,errorPath:h},it:i},j,k,l){let m=l?(0,d._)`${a}, ${b}, ${e}${g}`:b,n=[[f.default.instancePath,(0,d.strConcat)(f.default.instancePath,h)],[f.default.parentData,i.parentData],[f.default.parentDataProperty,i.parentDataProperty],[f.default.rootData,f.default.rootData]];i.opts.dynamicRef&&n.push([f.default.dynamicAnchors,f.default.dynamicAnchors]);let o=(0,d._)`${m}, ${c.object(...n)}`;return k!==d.nil?(0,d._)`${j}.call(${k}, ${o})`:(0,d._)`${j}(${o})`};let l=(0,d._)`new RegExp`;b.usePattern=function({gen:a,it:{opts:b}},c){let e=b.unicodeRegExp?"u":"",{regExp:f}=b.code,h=f(c,e);return a.scopeValue("pattern",{key:h.toString(),ref:h,code:(0,d._)`${"new RegExp"===f.code?l:(0,g.useFunc)(a,f)}(${c}, ${e})`})},b.validateArray=function(a){let{gen:b,data:c,keyword:f,it:g}=a,h=b.name("valid");if(g.allErrors){let a=b.let("valid",!0);return i(()=>b.assign(a,!1)),a}return b.var(h,!0),i(()=>b.break()),h;function i(g){let i=b.const("len",(0,d._)`${c}.length`);b.forRange("i",0,i,c=>{a.subschema({keyword:f,dataProp:c,dataPropType:e.Type.Num},h),b.if((0,d.not)(h),g)})}},b.validateUnion=function(a){let{gen:b,schema:c,keyword:f,it:g}=a;if(!Array.isArray(c))throw Error("ajv implementation error");if(c.some(a=>(0,e.alwaysValidSchema)(g,a))&&!g.opts.unevaluated)return;let h=b.let("valid",!1),i=b.name("_valid");b.block(()=>c.forEach((c,e)=>{let g=a.subschema({keyword:f,schemaProp:e,compositeRule:!0},i);b.assign(h,(0,d._)`${h} || ${i}`),a.mergeValidEvaluated(g,i)||b.if((0,d.not)(h))})),a.result(h,()=>a.reset(),()=>a.error(!0))}},97161:a=>{"use strict";a.exports.mixin=function(a,b){let c=Object.getOwnPropertyNames(b);for(let d=0;d<c.length;++d)Object.defineProperty(a,c[d],Object.getOwnPropertyDescriptor(b,c[d]))},a.exports.wrapperSymbol=Symbol("wrapper"),a.exports.implSymbol=Symbol("impl"),a.exports.wrapperForImpl=function(b){return b[a.exports.wrapperSymbol]},a.exports.implForWrapper=function(b){return b[a.exports.implSymbol]}},97236:a=>{"use strict";a.exports="undefined"!=typeof Reflect&&Reflect&&Reflect.apply},97250:(a,b,c)=>{"undefined"==typeof process||"renderer"===process.type||process.__nwjs?a.exports=c(81278):a.exports=c(35730)},97832:(a,b,c)=>{"use strict";c.d(b,{Do:()=>x,pF:()=>w,hO:()=>s,Gz:()=>y,C3:()=>A,eS:()=>z});var d=c(16977),e=c.n(d),f=c(79111),g=c(89392),h=c(18230);let i=(0,h.h)("utils/encryption/session"),j=global.__flujo_encryption_sessions??(global.__flujo_encryption_sessions=new Map),k=(0,h.h)("utils/encryption/secure");class l extends Error{constructor(a="Encryption is locked: user password required to access secrets"){super(a),this.name="EncryptionLockedError",Object.setPrototypeOf(this,l.prototype)}}let m="data_encryption_key",n="data_encryption_iv",o="data_encryption_salt",p="encryption_type";var q=function(a){return a.DEFAULT="default",a.USER="user",a}(q||{});function r(){let a=e().enc.Utf8.parse("flujo_fixed_salt_v1");return e().PBKDF2("FLUJO~",a,{keySize:8,iterations:1e5})}async function s(){k.debug("initializeDefaultEncryption: Entering method");try{if(await y())return!0;let a=r(),b=e().lib.WordArray.random(8),c=e().lib.WordArray.random(16),d=e().AES.encrypt(b.toString(),a,{iv:c,mode:e().mode.CBC,padding:e().pad.Pkcs7}),h=e().enc.Utf8.parse("flujo_fixed_salt_v1"),i={[m]:d.toString(),[n]:c.toString(),[o]:h.toString(),encryption_version:1,[p]:"default"};return await (0,f.VH)(g.Z.ENCRYPTION_KEY,i),!0}catch(a){return k.error("initializeDefaultEncryption: Failed to initialize default encryption:",a),!1}}async function t(){k.debug("getDefaultDEK: Entering method");try{let a=await (0,f.YM)(g.Z.ENCRYPTION_KEY,null);if(!a){if(!await s())return k.error("getDefaultDEK: Failed to initialize default encryption"),null;return await t()}if("default"!==a[p])return k.error("getDefaultDEK: Not using default encryption"),null;let b=a[m],c=e().enc.Hex.parse(a[n]),d=r(),h=e().AES.decrypt(b,d,{iv:c,mode:e().mode.CBC,padding:e().pad.Pkcs7});if(!h.toString())return k.error("getDefaultDEK: Failed to decrypt DEK with default key"),null;return e().enc.Hex.parse(h.toString())}catch(a){return k.error("getDefaultDEK: Failed to get default DEK:",a),null}}async function u(a){k.debug("getUserDEK: Entering method");try{let b=await (0,f.YM)(g.Z.ENCRYPTION_KEY,null);if(!b)return k.error("getUserDEK: No encryption metadata found"),null;if("user"!==b[p])return k.error("getUserDEK: Not using user encryption"),null;let c=b[m],d=e().enc.Hex.parse(b[n]),h=e().enc.Hex.parse(b[o]),i=e().PBKDF2(a,h,{keySize:8,iterations:1e5}),j=e().AES.decrypt(c,i,{iv:d,mode:e().mode.CBC,padding:e().pad.Pkcs7});if(!j.toString())return k.error("getUserDEK: Failed to decrypt DEK with provided password"),null;return e().enc.Hex.parse(j.toString())}catch(a){return k.error("getUserDEK: Failed to get user DEK:",a),null}}async function v(a,b=!1){k.debug("getDEK: Entering method");try{if(b&&a){k.debug("getDEK: Using session token");let b=function(a){let b=j.get(a);if(!b)return i.warn(`Session not found: ${a}`),null;let c=Date.now();return c-b.createdAt>72e5?(i.warn(`Session expired: ${a}`),j.delete(a),null):(b.lastUsed=c,b.dek)}(a);if(b)return e().enc.Hex.parse(b);k.warn("getDEK: Invalid or expired session token, falling back to default encryption")}let c=await (0,f.YM)(g.Z.ENCRYPTION_KEY,null);if(!c){if(k.info("getDEK: No encryption metadata found, initializing default encryption"),!await s())return k.error("getDEK: Failed to initialize default encryption"),null;return await v(a,b)}if("user"!==c[p])return await t();{let c=global.__flujo_server_dek??null;if(c)return k.debug("getDEK: Using server unlock state for user encryption"),e().enc.Hex.parse(c);if(a&&!b){let b=await u(a);if(b)return b;k.warn("getDEK: Provided password did not yield a valid user DEK")}throw k.warn("getDEK: User encryption is locked (no unlock state or valid credential)"),new l}}catch(a){if(a instanceof l)throw a;k.error("getDEK: Failed to get DEK:",a);try{if(k.warn("getDEK: Attempting to initialize default encryption as error recovery"),await s())return await t()}catch(a){k.error("getDEK: Failed to initialize default encryption as error recovery:",a)}return null}}async function w(a,b,c=!1){k.debug("encryptWithPassword: Entering method");try{let d=await v(b,c);if(!d)return null;let f=e().lib.WordArray.random(16),g=e().AES.encrypt(a,d,{iv:f,mode:e().mode.CBC,padding:e().pad.Pkcs7});return f.toString()+":"+g.toString()}catch(a){if(a instanceof l)throw a;return k.error("encryptWithPassword: Failed to encrypt data:",a),null}}async function x(a,b,c=!1){k.debug("decryptWithPassword: Entering method");try{let d=await v(b,c);if(!d)return null;let f=a.split(":");if(2!==f.length)return k.error("decryptWithPassword: Invalid ciphertext format"),null;let g=e().enc.Hex.parse(f[0]),h=f[1];return e().AES.decrypt(h,d,{iv:g,mode:e().mode.CBC,padding:e().pad.Pkcs7}).toString(e().enc.Utf8)}catch(a){if(a instanceof l)throw a;return k.error("decryptWithPassword: Failed to decrypt data:",a),null}}async function y(){return k.debug("isEncryptionInitialized: Entering method"),null!==await (0,f.YM)(g.Z.ENCRYPTION_KEY,null)}async function z(){k.debug("isUserEncryptionEnabled: Entering method");let a=await (0,f.YM)(g.Z.ENCRYPTION_KEY,null);return null!=a&&"user"===a[p]}async function A(){return await z()&&!global.__flujo_server_dek}},97887:(a,b,c)=>{"use strict";let d=c(33873),e=c(3258),f=c(91480),g=c(53859),h="win32"===process.platform,i=/\.(?:com|exe)$/i,j=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;a.exports=function(a,b,c){b&&!Array.isArray(b)&&(c=b,b=null);let k={command:a,args:b=b?b.slice(0):[],options:c=Object.assign({},c),file:void 0,original:{command:a,args:b}};return c.shell?k:function(a){if(!h)return a;let b=function(a){a.file=e(a);let b=a.file&&g(a.file);return b?(a.args.unshift(a.file),a.command=b,e(a)):a.file}(a),c=!i.test(b);if(a.options.forceShell||c){let c=j.test(b);a.command=d.normalize(a.command),a.command=f.command(a.command),a.args=a.args.map(a=>f.argument(a,c));let e=[a.command].concat(a.args).join(" ");a.args=["/d","/s","/c",`"${e}"`],a.command=process.env.comspec||"cmd.exe",a.options.windowsVerbatimArguments=!0}return a}(k)}},98229:a=>{"use strict";a.exports=Math.pow},98402:(a,b,c)=>{"use strict";Object.defineProperty(b,"A",{enumerable:!0,get:function(){return d.registerServerReference}});let d=c(29005)},99139:(a,b,c)=>{var d=c(44724),e=c(84833),f=c(68041);a.exports=function(a,b,c){for(var g=e(a);g.index<(g.keyedList||a).length;)d(a,b,g,function(a,b){return a?void c(a,b):0===Object.keys(g.jobs).length?void c(null,g.results):void 0}),g.index++;return f.bind(g,c)}},99276:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});let d=c(31849),e=c(83593),f=c(97025),g=c(84817);b.default={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:{message:({params:{len:a}})=>(0,d.str)`must NOT have more than ${a} items`,params:({params:{len:a}})=>(0,d._)`{limit: ${a}}`},code(a){let{schema:b,parentSchema:c,it:d}=a,{prefixItems:h}=c;d.items=!0,(0,e.alwaysValidSchema)(d,b)||(h?(0,g.validateAdditionalItems)(a,h):a.ok((0,f.validateArray)(a)))}}},99925:(a,b,c)=>{"use strict";let d=c(67729),e=c(97161),f=c(24860),g=e.implSymbol;function h(b){if(!this||this[g]||!(this instanceof h))throw TypeError("Failed to construct 'URL': Please use the 'new' operator, this DOM object constructor cannot be called as a function.");if(arguments.length<1)throw TypeError("Failed to construct 'URL': 1 argument required, but only "+arguments.length+" present.");let c=[];for(let a=0;a<arguments.length&&a<2;++a)c[a]=arguments[a];c[0]=d.USVString(c[0]),void 0!==c[1]&&(c[1]=d.USVString(c[1])),a.exports.setup(this,c)}h.prototype.toJSON=function(){if(!this||!a.exports.is(this))throw TypeError("Illegal invocation");let b=[];for(let a=0;a<arguments.length&&a<0;++a)b[a]=arguments[a];return this[g].toJSON.apply(this[g],b)},Object.defineProperty(h.prototype,"href",{get(){return this[g].href},set(a){a=d.USVString(a),this[g].href=a},enumerable:!0,configurable:!0}),h.prototype.toString=function(){if(!this||!a.exports.is(this))throw TypeError("Illegal invocation");return this.href},Object.defineProperty(h.prototype,"origin",{get(){return this[g].origin},enumerable:!0,configurable:!0}),Object.defineProperty(h.prototype,"protocol",{get(){return this[g].protocol},set(a){a=d.USVString(a),this[g].protocol=a},enumerable:!0,configurable:!0}),Object.defineProperty(h.prototype,"username",{get(){return this[g].username},set(a){a=d.USVString(a),this[g].username=a},enumerable:!0,configurable:!0}),Object.defineProperty(h.prototype,"password",{get(){return this[g].password},set(a){a=d.USVString(a),this[g].password=a},enumerable:!0,configurable:!0}),Object.defineProperty(h.prototype,"host",{get(){return this[g].host},set(a){a=d.USVString(a),this[g].host=a},enumerable:!0,configurable:!0}),Object.defineProperty(h.prototype,"hostname",{get(){return this[g].hostname},set(a){a=d.USVString(a),this[g].hostname=a},enumerable:!0,configurable:!0}),Object.defineProperty(h.prototype,"port",{get(){return this[g].port},set(a){a=d.USVString(a),this[g].port=a},enumerable:!0,configurable:!0}),Object.defineProperty(h.prototype,"pathname",{get(){return this[g].pathname},set(a){a=d.USVString(a),this[g].pathname=a},enumerable:!0,configurable:!0}),Object.defineProperty(h.prototype,"search",{get(){return this[g].search},set(a){a=d.USVString(a),this[g].search=a},enumerable:!0,configurable:!0}),Object.defineProperty(h.prototype,"hash",{get(){return this[g].hash},set(a){a=d.USVString(a),this[g].hash=a},enumerable:!0,configurable:!0}),a.exports={is:a=>!!a&&a[g]instanceof f.implementation,create(a,b){let c=Object.create(h.prototype);return this.setup(c,a,b),c},setup(a,b,c){c||(c={}),c.wrapper=a,a[g]=new f.implementation(b,c),a[g][e.wrapperSymbol]=a},interface:h,expose:{Window:{URL:h},Worker:{URL:h}}}}};