@hasna/connectors 1.4.0 → 1.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (351) hide show
  1. package/bin/index.js +1561 -1277
  2. package/bin/mcp.js +534 -213
  3. package/bin/serve.js +1218 -258
  4. package/connectors/adobe/package.json +1 -1
  5. package/connectors/aitableai/package.json +1 -1
  6. package/connectors/alchemy/package.json +1 -1
  7. package/connectors/alerty/package.json +1 -1
  8. package/connectors/alienvault/package.json +1 -1
  9. package/connectors/alphamoon/package.json +1 -1
  10. package/connectors/alttextai/package.json +1 -1
  11. package/connectors/amadeus/package.json +1 -1
  12. package/connectors/amadeus/src/api/client.ts +6 -6
  13. package/connectors/amadeus/src/cli/index.ts +6 -6
  14. package/connectors/amadeus/src/utils/output.ts +5 -5
  15. package/connectors/amazon/package.json +1 -1
  16. package/connectors/amilia/package.json +1 -1
  17. package/connectors/amqpsender/package.json +1 -1
  18. package/connectors/announcekit/package.json +1 -1
  19. package/connectors/anthropic/.env.example +1 -1
  20. package/connectors/anyscale/package.json +1 -1
  21. package/connectors/apiary/package.json +1 -1
  22. package/connectors/apiflash/package.json +1 -1
  23. package/connectors/apitemplateio/package.json +1 -1
  24. package/connectors/apptivegrid/package.json +1 -1
  25. package/connectors/assemblyai/package.json +1 -1
  26. package/connectors/autom/package.json +1 -1
  27. package/connectors/automizy/package.json +1 -1
  28. package/connectors/autopilot/package.json +1 -1
  29. package/connectors/awscognito/package.json +1 -1
  30. package/connectors/bamboohr/package.json +1 -1
  31. package/connectors/bannerbear/package.json +1 -1
  32. package/connectors/baseten/package.json +1 -1
  33. package/connectors/box/package.json +1 -1
  34. package/connectors/brevo/package.json +1 -1
  35. package/connectors/calendly/package.json +1 -1
  36. package/connectors/cerebras/package.json +1 -1
  37. package/connectors/chargebee/package.json +1 -1
  38. package/connectors/clearbit/package.json +1 -1
  39. package/connectors/cloudflare-workers/package.json +1 -1
  40. package/connectors/coda/package.json +1 -1
  41. package/connectors/coingecko/package.json +1 -1
  42. package/connectors/convertkit/package.json +1 -1
  43. package/connectors/customerio/package.json +1 -1
  44. package/connectors/databricks/package.json +1 -1
  45. package/connectors/datadog/package.json +1 -1
  46. package/connectors/datasoap/README.md +2 -2
  47. package/connectors/datasoap/package.json +1 -1
  48. package/connectors/datumbox/README.md +2 -2
  49. package/connectors/datumbox/package.json +1 -1
  50. package/connectors/dayschedule/README.md +2 -2
  51. package/connectors/dayschedule/package.json +1 -1
  52. package/connectors/deepgram/package.json +1 -1
  53. package/connectors/deepinfra/README.md +2 -2
  54. package/connectors/deepinfra/package.json +1 -1
  55. package/connectors/deepl/README.md +2 -2
  56. package/connectors/deepl/package.json +1 -1
  57. package/connectors/deepseek/package.json +1 -1
  58. package/connectors/demio/README.md +2 -2
  59. package/connectors/demio/package.json +1 -1
  60. package/connectors/descript/README.md +2 -2
  61. package/connectors/descript/package.json +1 -1
  62. package/connectors/detrack/README.md +2 -2
  63. package/connectors/detrack/package.json +1 -1
  64. package/connectors/devcycle/README.md +2 -2
  65. package/connectors/devcycle/package.json +1 -1
  66. package/connectors/dhl/README.md +2 -2
  67. package/connectors/dhl/package.json +1 -1
  68. package/connectors/docusign/package.json +1 -1
  69. package/connectors/dropbox/package.json +1 -1
  70. package/connectors/fal/package.json +1 -1
  71. package/connectors/fathom/package.json +1 -1
  72. package/connectors/fireworks/package.json +1 -1
  73. package/connectors/gitlab/package.json +1 -1
  74. package/connectors/googlechat/README.md +1 -2
  75. package/connectors/googledrive/src/api/client.ts +5 -5
  76. package/connectors/googledrive/src/api/files.ts +11 -11
  77. package/connectors/googledrive/src/api/folders.ts +2 -2
  78. package/connectors/googledrive/src/cli/index.ts +4 -4
  79. package/connectors/googledrive/src/utils/output.ts +3 -3
  80. package/connectors/googleforms/README.md +1 -2
  81. package/connectors/googleperspective/README.md +1 -2
  82. package/connectors/googlephotos/src/cli/index.ts +1 -1
  83. package/connectors/grafana/package.json +1 -1
  84. package/connectors/growbots/README.md +2 -2
  85. package/connectors/growbots/package.json +1 -1
  86. package/connectors/gumroad/package.json +1 -1
  87. package/connectors/gupshup/README.md +2 -2
  88. package/connectors/gupshup/package.json +1 -1
  89. package/connectors/guru/README.md +2 -2
  90. package/connectors/guru/package.json +1 -1
  91. package/connectors/hackernews/README.md +2 -2
  92. package/connectors/hackernews/package.json +1 -1
  93. package/connectors/halopsa/README.md +2 -2
  94. package/connectors/halopsa/package.json +1 -1
  95. package/connectors/handwrytten/README.md +2 -2
  96. package/connectors/handwrytten/package.json +1 -1
  97. package/connectors/hansei/README.md +2 -2
  98. package/connectors/hansei/package.json +1 -1
  99. package/connectors/harrypotterapi/README.md +2 -2
  100. package/connectors/harrypotterapi/package.json +1 -1
  101. package/connectors/harvest/README.md +2 -2
  102. package/connectors/harvest/package.json +1 -1
  103. package/connectors/headlesstesting/README.md +2 -2
  104. package/connectors/headlesstesting/package.json +1 -1
  105. package/connectors/homeassistant/package.json +1 -1
  106. package/connectors/klaviyo/package.json +1 -1
  107. package/connectors/lemonsqueezy/package.json +1 -1
  108. package/connectors/lighthouse/src/api/index.ts +1 -1
  109. package/connectors/linkedin/package.json +1 -1
  110. package/connectors/linkish/README.md +2 -2
  111. package/connectors/linkish/package.json +1 -1
  112. package/connectors/liveagent/README.md +2 -2
  113. package/connectors/liveagent/package.json +1 -1
  114. package/connectors/localazy/README.md +2 -2
  115. package/connectors/localazy/package.json +1 -1
  116. package/connectors/loginradius/README.md +2 -2
  117. package/connectors/loginradius/package.json +1 -1
  118. package/connectors/lokalise/README.md +2 -2
  119. package/connectors/lokalise/package.json +1 -1
  120. package/connectors/lonescale/README.md +2 -2
  121. package/connectors/lonescale/package.json +1 -1
  122. package/connectors/lucidchart/README.md +2 -2
  123. package/connectors/lucidchart/package.json +1 -1
  124. package/connectors/luma/package.json +1 -1
  125. package/connectors/magento2/README.md +2 -2
  126. package/connectors/magento2/package.json +1 -1
  127. package/connectors/mailcheck/README.md +2 -2
  128. package/connectors/mailcheck/package.json +1 -1
  129. package/connectors/mailchimp/package.json +1 -1
  130. package/connectors/mailerlite/README.md +2 -2
  131. package/connectors/mailerlite/package.json +1 -1
  132. package/connectors/mailersend/README.md +2 -2
  133. package/connectors/mailersend/package.json +1 -1
  134. package/connectors/mailify/README.md +2 -2
  135. package/connectors/mailify/package.json +1 -1
  136. package/connectors/mailjet/README.md +2 -2
  137. package/connectors/mailjet/package.json +1 -1
  138. package/connectors/mailmodo/README.md +2 -2
  139. package/connectors/mailmodo/package.json +1 -1
  140. package/connectors/malcore/README.md +2 -2
  141. package/connectors/malcore/package.json +1 -1
  142. package/connectors/mandrill/README.md +2 -2
  143. package/connectors/mandrill/package.json +1 -1
  144. package/connectors/marcomrobot/README.md +2 -2
  145. package/connectors/marcomrobot/package.json +1 -1
  146. package/connectors/marketingmasterio/README.md +2 -2
  147. package/connectors/marketingmasterio/package.json +1 -1
  148. package/connectors/marketplacer/README.md +2 -2
  149. package/connectors/marketplacer/package.json +1 -1
  150. package/connectors/marketstack/README.md +2 -2
  151. package/connectors/marketstack/package.json +1 -1
  152. package/connectors/matrix/README.md +1 -1
  153. package/connectors/matrix/package.json +1 -1
  154. package/connectors/mattermost/README.md +1 -1
  155. package/connectors/mattermost/package.json +1 -1
  156. package/connectors/mautic/README.md +1 -1
  157. package/connectors/mautic/package.json +1 -1
  158. package/connectors/mav/README.md +1 -1
  159. package/connectors/mav/package.json +1 -1
  160. package/connectors/maverick/README.md +1 -1
  161. package/connectors/maverick/package.json +1 -1
  162. package/connectors/mem/README.md +1 -1
  163. package/connectors/mem/package.json +1 -1
  164. package/connectors/messagebird/package.json +1 -1
  165. package/connectors/metabase/README.md +1 -1
  166. package/connectors/metabase/package.json +1 -1
  167. package/connectors/miro/package.json +1 -1
  168. package/connectors/mocean/package.json +1 -1
  169. package/connectors/modal/package.json +1 -1
  170. package/connectors/monday/package.json +1 -1
  171. package/connectors/monicacrm/package.json +1 -1
  172. package/connectors/moonclerk/package.json +1 -1
  173. package/connectors/moonmail/package.json +1 -1
  174. package/connectors/morph/package.json +1 -1
  175. package/connectors/mqtt/package.json +1 -1
  176. package/connectors/msg91/package.json +1 -1
  177. package/connectors/mubert/package.json +1 -1
  178. package/connectors/murf/package.json +1 -1
  179. package/connectors/mux/package.json +1 -1
  180. package/connectors/netlify/package.json +1 -1
  181. package/connectors/okta/package.json +1 -1
  182. package/connectors/paddle/package.json +1 -1
  183. package/connectors/perplexity/package.json +1 -1
  184. package/connectors/pinterest/package.json +1 -1
  185. package/connectors/pipedrive/package.json +1 -1
  186. package/connectors/plaid/package.json +1 -1
  187. package/connectors/quickchart/README.md +2 -2
  188. package/connectors/quintadb/README.md +2 -2
  189. package/connectors/rabbitmq/README.md +2 -2
  190. package/connectors/radar/README.md +2 -2
  191. package/connectors/raindrop/README.md +2 -2
  192. package/connectors/rapid7insightvm/README.md +2 -2
  193. package/connectors/raventools/README.md +2 -2
  194. package/connectors/rawgvideogamesdatabase/README.md +2 -2
  195. package/connectors/rdstationcrm/README.md +2 -2
  196. package/connectors/readai/README.md +2 -2
  197. package/connectors/roboflow/package.json +1 -1
  198. package/connectors/runway/package.json +1 -1
  199. package/connectors/sendgrid/package.json +1 -1
  200. package/connectors/shuffler/package.json +1 -1
  201. package/connectors/sierrainteractive/package.json +1 -1
  202. package/connectors/sifter/package.json +1 -1
  203. package/connectors/signaturit/package.json +1 -1
  204. package/connectors/signl4/package.json +1 -1
  205. package/connectors/simpleem/package.json +1 -1
  206. package/connectors/simplehash/package.json +1 -1
  207. package/connectors/simplekpi/package.json +1 -1
  208. package/connectors/simplelocalize/package.json +1 -1
  209. package/connectors/simplero/package.json +1 -1
  210. package/connectors/smartrecruiters/package.json +1 -1
  211. package/connectors/smtp2go/package.json +1 -1
  212. package/connectors/snowflake/package.json +1 -1
  213. package/connectors/sparkpost/package.json +1 -1
  214. package/connectors/split-io/package.json +1 -1
  215. package/connectors/split-io/src/api/client.test.ts +20 -0
  216. package/connectors/split-io/src/cli/index.ts +9 -9
  217. package/connectors/sprinklr/package.json +1 -1
  218. package/connectors/sprout-social/package.json +1 -1
  219. package/connectors/square/package.json +1 -1
  220. package/connectors/sse-trigger/package.json +1 -1
  221. package/connectors/stability-api-platform/AGENTS.md +1 -1
  222. package/connectors/standout/package.json +1 -1
  223. package/connectors/statuspage/package.json +1 -1
  224. package/connectors/stoplight/package.json +1 -1
  225. package/connectors/stoplight-api-platform/package.json +1 -1
  226. package/connectors/strand-ai/CLAUDE.md +1 -1
  227. package/connectors/stripe-financial-connections/package.json +1 -1
  228. package/connectors/stripe-terminal/package.json +1 -1
  229. package/connectors/stytch/package.json +1 -1
  230. package/connectors/sumo-logic/package.json +1 -1
  231. package/connectors/supabase/package.json +1 -1
  232. package/connectors/supabase-api-platform/package.json +1 -1
  233. package/connectors/sysdig/package.json +1 -1
  234. package/connectors/tableau/package.json +1 -1
  235. package/connectors/takecareos/README.md +2 -2
  236. package/connectors/takecareos/package.json +1 -1
  237. package/connectors/telegram/src/api/bot.ts +20 -0
  238. package/connectors/telegram/src/api/client.ts +32 -0
  239. package/connectors/telegram/src/api/files.test.ts +103 -0
  240. package/connectors/telegram/src/api/index.ts +1 -0
  241. package/connectors/telegram/src/api/messages.test.ts +8 -2
  242. package/connectors/telegram/src/cli/files.test.ts +40 -0
  243. package/connectors/telegram/src/cli/files.ts +38 -0
  244. package/connectors/telegram/src/cli/index.ts +27 -30
  245. package/connectors/telegram/src/cli/updates.test.ts +176 -0
  246. package/connectors/telegram/src/cli/updates.ts +95 -0
  247. package/connectors/telegram/src/index.ts +1 -0
  248. package/connectors/telegram/src/types/index.ts +13 -0
  249. package/connectors/terraform-cloud/package.json +1 -1
  250. package/connectors/textit/package.json +1 -1
  251. package/connectors/thousandeyes/package.json +1 -1
  252. package/connectors/ticket-tailor/package.json +1 -1
  253. package/connectors/ticketsource/package.json +1 -1
  254. package/connectors/tiktokads/README.md +1 -1
  255. package/connectors/time-saved/package.json +1 -1
  256. package/connectors/tipalti/package.json +1 -1
  257. package/connectors/tomtom/AGENTS.md +1 -1
  258. package/connectors/totp/package.json +1 -1
  259. package/connectors/traverse/package.json +1 -1
  260. package/connectors/travo-ai/package.json +1 -1
  261. package/connectors/trigger-dev/package.json +1 -1
  262. package/connectors/trigger-dev-api-platform/package.json +1 -1
  263. package/connectors/turbot-pipes/package.json +1 -1
  264. package/connectors/turso/package.json +1 -1
  265. package/connectors/turso-api-platform/package.json +1 -1
  266. package/connectors/tyk-api-platform/package.json +1 -1
  267. package/connectors/umami/package.json +1 -1
  268. package/connectors/unifold/package.json +1 -1
  269. package/connectors/unione/package.json +1 -1
  270. package/connectors/uniprot/README.md +1 -1
  271. package/connectors/uniswap-api/package.json +1 -1
  272. package/connectors/ups/package.json +1 -1
  273. package/connectors/usereframe/package.json +1 -1
  274. package/connectors/vanta/package.json +1 -1
  275. package/connectors/vela/package.json +1 -1
  276. package/connectors/velum-labs/package.json +1 -1
  277. package/connectors/vercel/package.json +1 -1
  278. package/connectors/vercel-blob/package.json +1 -1
  279. package/connectors/vercel-blob-platform/package.json +1 -1
  280. package/connectors/vercel-edge-config/package.json +1 -1
  281. package/connectors/vercel-edge-config-platform/package.json +1 -1
  282. package/connectors/vertex-ai/package.json +1 -1
  283. package/connectors/vidyard/package.json +1 -1
  284. package/connectors/vonage/package.json +1 -1
  285. package/connectors/voygr/package.json +1 -1
  286. package/connectors/wait/package.json +1 -1
  287. package/connectors/walmart-marketplace/package.json +1 -1
  288. package/connectors/wato/package.json +1 -1
  289. package/connectors/wave-accounting/package.json +1 -1
  290. package/connectors/wayco/package.json +1 -1
  291. package/connectors/webpagetest/package.json +1 -1
  292. package/connectors/weezevent/package.json +1 -1
  293. package/connectors/wikipedia/src/api/client.ts +1 -1
  294. package/connectors/wildcard/package.json +1 -1
  295. package/connectors/windmill/package.json +1 -1
  296. package/connectors/wise/package.json +1 -1
  297. package/connectors/withai/package.json +1 -1
  298. package/connectors/wiz/CLAUDE.md +1 -1
  299. package/connectors/wiz/package.json +1 -1
  300. package/connectors/wordfence/package.json +1 -1
  301. package/connectors/wordfence-api-platform/package.json +1 -1
  302. package/connectors/workos/package.json +1 -1
  303. package/connectors/write-binary-file/package.json +1 -1
  304. package/connectors/xai/.env.example +1 -1
  305. package/connectors/xai-api-platform/src/api/client.test.ts +1 -1
  306. package/connectors/xai-api-platform/src/cli/index.ts +1 -1
  307. package/connectors/xai-api-platform/src/utils/config.ts +1 -1
  308. package/connectors/xai-grok/.env.example +1 -1
  309. package/connectors/xai-grok/src/api/client.test.ts +3 -3
  310. package/connectors/xai-grok/src/cli/index.ts +1 -1
  311. package/connectors/xai-grok/src/utils/config.ts +1 -1
  312. package/connectors/ynab/package.json +1 -1
  313. package/connectors/you-com/README.md +2 -2
  314. package/connectors/you-com/package.json +1 -1
  315. package/connectors/yousearch/README.md +1 -1
  316. package/connectors/yousign/package.json +1 -1
  317. package/connectors/zendesk/.env.example +4 -4
  318. package/connectors/zendesk/CLAUDE.md +2 -4
  319. package/connectors/zendesk/Makefile +21 -6
  320. package/connectors/zendesk/README.md +6 -10
  321. package/connectors/zendesk/SCAFFOLD.md +8 -7
  322. package/connectors/zendesk/nginx-connector.conf +8 -8
  323. package/connectors/zendesk/nginx.conf +8 -8
  324. package/connectors/zendesk/src/cli/index.ts +19 -8
  325. package/connectors/zendesk/src/server/index.ts +1 -1
  326. package/connectors/zendesk/src/utils/config.test.ts +70 -0
  327. package/connectors/zendesk/src/utils/config.ts +12 -2
  328. package/connectors/zendesk/src/utils/remote-url.test.ts +72 -0
  329. package/connectors/zerosettle/package.json +1 -1
  330. package/connectors/zoho-bigin/CLAUDE.md +1 -1
  331. package/connectors/zoho-campaigns/package.json +1 -1
  332. package/connectors/zoho-sign/package.json +1 -1
  333. package/connectors/zoho-subscriptions/CLAUDE.md +1 -1
  334. package/connectors/zohoprojects/CLAUDE.md +1 -1
  335. package/connectors/zolvo/package.json +1 -1
  336. package/connectors/zoom-api/package.json +1 -1
  337. package/connectors/zymbly/README.md +2 -2
  338. package/connectors/zymbly/package.json +1 -1
  339. package/dashboard/dist/assets/index-8uoGZF7B.js +280 -0
  340. package/dashboard/dist/index.html +1 -1
  341. package/dist/db/locks.d.ts +1 -1
  342. package/dist/index.js +27 -17
  343. package/dist/lib/connector-resolver.d.ts +1 -1
  344. package/dist/lib/llm.d.ts +1 -1
  345. package/dist/lib/open-browser.d.ts +18 -0
  346. package/dist/lib/open-browser.test.d.ts +1 -0
  347. package/package.json +16 -6
  348. package/connectors/tiktok-events-api/.test-home/.bun/install/cache/@t@/b0fec00ef4c1a326.pile +0 -0
  349. package/dashboard/dist/assets/index-XPlN-9Xy.js +0 -280
  350. package/dist/cli/commands/sync.d.ts +0 -2
  351. package/dist/db/pg-migrations.d.ts +0 -6
package/bin/serve.js CHANGED
@@ -45,7 +45,6 @@ var __export = (target, all) => {
45
45
  });
46
46
  };
47
47
  var __esm = (fn, res) => () => (fn && (res = fn(fn = 0)), res);
48
- var __require = import.meta.require;
49
48
 
50
49
  // src/db/sqlite-adapter.ts
51
50
  import { Database as BunDatabase } from "bun:sqlite";
@@ -797,7 +796,7 @@ var init_registry = __esm(() => {
797
796
  init_connector();
798
797
  });
799
798
 
800
- // node_modules/zod/v3/helpers/util.js
799
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v3/helpers/util.js
801
800
  var util, objectUtil, ZodParsedType, getParsedType = (data) => {
802
801
  const t = typeof data;
803
802
  switch (t) {
@@ -928,7 +927,7 @@ var init_util = __esm(() => {
928
927
  ]);
929
928
  });
930
929
 
931
- // node_modules/zod/v3/ZodError.js
930
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v3/ZodError.js
932
931
  var ZodIssueCode, quotelessJson = (obj) => {
933
932
  const json = JSON.stringify(obj, null, 2);
934
933
  return json.replace(/"([^"]+)":/g, "$1:");
@@ -1049,7 +1048,7 @@ var init_ZodError = __esm(() => {
1049
1048
  };
1050
1049
  });
1051
1050
 
1052
- // node_modules/zod/v3/locales/en.js
1051
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v3/locales/en.js
1053
1052
  var errorMap = (issue, _ctx) => {
1054
1053
  let message;
1055
1054
  switch (issue.code) {
@@ -1156,7 +1155,7 @@ var init_en = __esm(() => {
1156
1155
  en_default = errorMap;
1157
1156
  });
1158
1157
 
1159
- // node_modules/zod/v3/errors.js
1158
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v3/errors.js
1160
1159
  function setErrorMap(map) {
1161
1160
  overrideErrorMap = map;
1162
1161
  }
@@ -1169,7 +1168,7 @@ var init_errors2 = __esm(() => {
1169
1168
  overrideErrorMap = en_default;
1170
1169
  });
1171
1170
 
1172
- // node_modules/zod/v3/helpers/parseUtil.js
1171
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v3/helpers/parseUtil.js
1173
1172
  function addIssueToContext(ctx, issueData) {
1174
1173
  const overrideMap = getErrorMap();
1175
1174
  const issue = makeIssue({
@@ -1274,10 +1273,10 @@ var init_parseUtil = __esm(() => {
1274
1273
  });
1275
1274
  });
1276
1275
 
1277
- // node_modules/zod/v3/helpers/typeAliases.js
1276
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v3/helpers/typeAliases.js
1278
1277
  var init_typeAliases = () => {};
1279
1278
 
1280
- // node_modules/zod/v3/helpers/errorUtil.js
1279
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v3/helpers/errorUtil.js
1281
1280
  var errorUtil;
1282
1281
  var init_errorUtil = __esm(() => {
1283
1282
  (function(errorUtil2) {
@@ -1286,7 +1285,7 @@ var init_errorUtil = __esm(() => {
1286
1285
  })(errorUtil || (errorUtil = {}));
1287
1286
  });
1288
1287
 
1289
- // node_modules/zod/v3/types.js
1288
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v3/types.js
1290
1289
  class ParseInputLazyPath {
1291
1290
  constructor(parent, value, path, key) {
1292
1291
  this._cachedPath = [];
@@ -4637,7 +4636,7 @@ var init_types = __esm(() => {
4637
4636
  NEVER = INVALID;
4638
4637
  });
4639
4638
 
4640
- // node_modules/zod/v3/external.js
4639
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v3/external.js
4641
4640
  var exports_external = {};
4642
4641
  __export(exports_external, {
4643
4642
  void: () => voidType,
@@ -4757,7 +4756,7 @@ var init_external = __esm(() => {
4757
4756
  init_ZodError();
4758
4757
  });
4759
4758
 
4760
- // node_modules/zod/index.js
4759
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/index.js
4761
4760
  var init_zod = __esm(() => {
4762
4761
  init_external();
4763
4762
  init_external();
@@ -6434,7 +6433,7 @@ var package_default;
6434
6433
  var init_package = __esm(() => {
6435
6434
  package_default = {
6436
6435
  name: "@hasna/connectors",
6437
- version: "1.4.0",
6436
+ version: "1.4.2",
6438
6437
  description: "Open source connector library - Install API connectors with a single command",
6439
6438
  type: "module",
6440
6439
  bin: {
@@ -6447,7 +6446,15 @@ var init_package = __esm(() => {
6447
6446
  "dist/",
6448
6447
  "dashboard/dist/",
6449
6448
  "connectors/",
6450
- "README.md"
6449
+ "README.md",
6450
+ "!connectors/**/.test-home/**",
6451
+ "!connectors/**/node_modules/**",
6452
+ "!connectors/**/bun.lock",
6453
+ "!connectors/**/package-lock.json",
6454
+ "!connectors/**/yarn.lock",
6455
+ "!connectors/**/pnpm-lock.yaml",
6456
+ "!connectors/**/.env",
6457
+ "!connectors/**/.env.local"
6451
6458
  ],
6452
6459
  exports: {
6453
6460
  ".": {
@@ -6462,16 +6469,17 @@ var init_package = __esm(() => {
6462
6469
  main: "./dist/index.js",
6463
6470
  types: "./dist/index.d.ts",
6464
6471
  scripts: {
6465
- build: "cd dashboard && bun run build && cd .. && bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk --external conf && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/serve.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && bun build ./src/social/index.ts --outfile ./dist/social/index.js --target bun && tsc --emitDeclarationOnly --outDir ./dist && tsc -p tsconfig.social.json",
6472
+ build: "cd dashboard && bun run build && cd .. && bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk --external conf --external @hasna/events && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/serve.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && bun build ./src/social/index.ts --outfile ./dist/social/index.js --target bun && tsc --emitDeclarationOnly --outDir ./dist && tsc -p tsconfig.social.json",
6466
6473
  "build:dashboard": "cd dashboard && bun run build",
6467
6474
  postinstall: 'mkdir -p $HOME/.hasna/connectors 2>/dev/null || true; [ "$SKIP_DASHBOARD" = "1" ] || [ ! -f dashboard/package.json ] || [ -d dashboard/node_modules ] || (cd dashboard && bun install)',
6468
6475
  dev: "bun run ./src/cli/index.tsx",
6469
6476
  "check:package-secrets": "bun run scripts/check-package-secrets.ts",
6470
6477
  typecheck: "tsc --noEmit && tsc -p tsconfig.social.json --noEmit",
6471
- test: "bun test",
6478
+ test: "bun run build && bun test",
6472
6479
  "secrets:scan:npmrc": "bun run scripts/scan-npmrc-auth.mjs",
6473
6480
  "sdk:build": "cd sdk && bun run build",
6474
- prepublishOnly: "bun run secrets:scan:npmrc && bun run check:package-secrets && bun run build && bun test"
6481
+ prepublishOnly: "bun run secrets:scan:npmrc && bun run build && bun run check:package-secrets && bun test",
6482
+ prepack: "bun run build && bun run check:package-secrets"
6475
6483
  },
6476
6484
  keywords: [
6477
6485
  "connectors",
@@ -6492,7 +6500,8 @@ var init_package = __esm(() => {
6492
6500
  "@types/bun": "latest",
6493
6501
  "@types/react": "^18.2.0",
6494
6502
  "ink-testing-library": "^4.0.0",
6495
- typescript: "^5"
6503
+ typescript: "^5",
6504
+ "bun-types": "1.3.14"
6496
6505
  },
6497
6506
  dependencies: {
6498
6507
  "@hasna/events": "0.1.8",
@@ -7406,7 +7415,7 @@ var CONNECTOR_NAME = "imessage", COMMAND_SPECS, ROOT_HELP2, COMMAND_HELP2, COMMA
7406
7415
 
7407
7416
  ## Project Overview
7408
7417
 
7409
- connect-imessage is the bridge-first iMessage connector for the one-product open-connectors runtime. It intentionally targets a normalized HTTP bridge contract instead of native macOS automation so the same connector definition can run locally today and back future hosted channel adapters without rewriting the API surface.
7418
+ connect-imessage is the bridge-first iMessage connector for the one-product connectors runtime. It intentionally targets a normalized HTTP bridge contract instead of native macOS automation so the same connector definition can run locally today and back future hosted channel adapters without rewriting the API surface.
7410
7419
 
7411
7420
  The connector exposes profile/config management plus normalized health, conversation, and message operations. Inbound message consumption and outbound send/reply are all routed through the same internal connector definition and command runtime.
7412
7421
 
@@ -9191,7 +9200,9 @@ function guessKeyField(name) {
9191
9200
  const keyVar = docs.envVars.find((v) => v.variable.includes("API_KEY") || v.variable.includes("API_SECRET") || v.variable.includes("TOKEN") || v.variable.includes("SECRET"));
9192
9201
  if (keyVar) {
9193
9202
  const parts = keyVar.variable.toLowerCase().split("_");
9194
- const withoutPrefix = parts.slice(1);
9203
+ const connectorParts = name.toLowerCase().split(/[-_]/);
9204
+ const prefixLength = connectorParts.every((part, index) => parts[index] === part) ? connectorParts.length : 1;
9205
+ const withoutPrefix = parts.slice(prefixLength);
9195
9206
  if (withoutPrefix.length > 0) {
9196
9207
  return withoutPrefix.map((p, i) => i === 0 ? p : p.charAt(0).toUpperCase() + p.slice(1)).join("");
9197
9208
  }
@@ -9842,7 +9853,113 @@ var init_runner = __esm(() => {
9842
9853
  };
9843
9854
  });
9844
9855
 
9845
- // node_modules/ajv/dist/compile/codegen/code.js
9856
+ // ../../node_modules/.bun/content-type@1.0.5/node_modules/content-type/index.js
9857
+ var require_content_type = __commonJS((exports) => {
9858
+ /*!
9859
+ * content-type
9860
+ * Copyright(c) 2015 Douglas Christopher Wilson
9861
+ * MIT Licensed
9862
+ */
9863
+ var PARAM_REGEXP = /; *([!#$%&'*+.^_`|~0-9A-Za-z-]+) *= *("(?:[\u000b\u0020\u0021\u0023-\u005b\u005d-\u007e\u0080-\u00ff]|\\[\u000b\u0020-\u00ff])*"|[!#$%&'*+.^_`|~0-9A-Za-z-]+) */g;
9864
+ var TEXT_REGEXP = /^[\u000b\u0020-\u007e\u0080-\u00ff]+$/;
9865
+ var TOKEN_REGEXP = /^[!#$%&'*+.^_`|~0-9A-Za-z-]+$/;
9866
+ var QESC_REGEXP = /\\([\u000b\u0020-\u00ff])/g;
9867
+ var QUOTE_REGEXP = /([\\"])/g;
9868
+ var TYPE_REGEXP = /^[!#$%&'*+.^_`|~0-9A-Za-z-]+\/[!#$%&'*+.^_`|~0-9A-Za-z-]+$/;
9869
+ exports.format = format;
9870
+ exports.parse = parse;
9871
+ function format(obj) {
9872
+ if (!obj || typeof obj !== "object") {
9873
+ throw new TypeError("argument obj is required");
9874
+ }
9875
+ var parameters = obj.parameters;
9876
+ var type = obj.type;
9877
+ if (!type || !TYPE_REGEXP.test(type)) {
9878
+ throw new TypeError("invalid type");
9879
+ }
9880
+ var string = type;
9881
+ if (parameters && typeof parameters === "object") {
9882
+ var param;
9883
+ var params = Object.keys(parameters).sort();
9884
+ for (var i = 0;i < params.length; i++) {
9885
+ param = params[i];
9886
+ if (!TOKEN_REGEXP.test(param)) {
9887
+ throw new TypeError("invalid parameter name");
9888
+ }
9889
+ string += "; " + param + "=" + qstring(parameters[param]);
9890
+ }
9891
+ }
9892
+ return string;
9893
+ }
9894
+ function parse(string) {
9895
+ if (!string) {
9896
+ throw new TypeError("argument string is required");
9897
+ }
9898
+ var header = typeof string === "object" ? getcontenttype(string) : string;
9899
+ if (typeof header !== "string") {
9900
+ throw new TypeError("argument string is required to be a string");
9901
+ }
9902
+ var index = header.indexOf(";");
9903
+ var type = index !== -1 ? header.slice(0, index).trim() : header.trim();
9904
+ if (!TYPE_REGEXP.test(type)) {
9905
+ throw new TypeError("invalid media type");
9906
+ }
9907
+ var obj = new ContentType(type.toLowerCase());
9908
+ if (index !== -1) {
9909
+ var key;
9910
+ var match;
9911
+ var value;
9912
+ PARAM_REGEXP.lastIndex = index;
9913
+ while (match = PARAM_REGEXP.exec(header)) {
9914
+ if (match.index !== index) {
9915
+ throw new TypeError("invalid parameter format");
9916
+ }
9917
+ index += match[0].length;
9918
+ key = match[1].toLowerCase();
9919
+ value = match[2];
9920
+ if (value.charCodeAt(0) === 34) {
9921
+ value = value.slice(1, -1);
9922
+ if (value.indexOf("\\") !== -1) {
9923
+ value = value.replace(QESC_REGEXP, "$1");
9924
+ }
9925
+ }
9926
+ obj.parameters[key] = value;
9927
+ }
9928
+ if (index !== header.length) {
9929
+ throw new TypeError("invalid parameter format");
9930
+ }
9931
+ }
9932
+ return obj;
9933
+ }
9934
+ function getcontenttype(obj) {
9935
+ var header;
9936
+ if (typeof obj.getHeader === "function") {
9937
+ header = obj.getHeader("content-type");
9938
+ } else if (typeof obj.headers === "object") {
9939
+ header = obj.headers && obj.headers["content-type"];
9940
+ }
9941
+ if (typeof header !== "string") {
9942
+ throw new TypeError("content-type header is missing from object");
9943
+ }
9944
+ return header;
9945
+ }
9946
+ function qstring(val) {
9947
+ var str = String(val);
9948
+ if (TOKEN_REGEXP.test(str)) {
9949
+ return str;
9950
+ }
9951
+ if (str.length > 0 && !TEXT_REGEXP.test(str)) {
9952
+ throw new TypeError("invalid parameter value");
9953
+ }
9954
+ return '"' + str.replace(QUOTE_REGEXP, "\\$1") + '"';
9955
+ }
9956
+ function ContentType(type) {
9957
+ this.parameters = Object.create(null);
9958
+ this.type = type;
9959
+ }
9960
+ });
9961
+
9962
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/compile/codegen/code.js
9846
9963
  var require_code = __commonJS((exports) => {
9847
9964
  Object.defineProperty(exports, "__esModule", { value: true });
9848
9965
  exports.regexpCode = exports.getEsmExportName = exports.getProperty = exports.safeStringify = exports.stringify = exports.strConcat = exports.addCodeArg = exports.str = exports._ = exports.nil = exports._Code = exports.Name = exports.IDENTIFIER = exports._CodeOrName = undefined;
@@ -9996,7 +10113,7 @@ var require_code = __commonJS((exports) => {
9996
10113
  exports.regexpCode = regexpCode;
9997
10114
  });
9998
10115
 
9999
- // node_modules/ajv/dist/compile/codegen/scope.js
10116
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/compile/codegen/scope.js
10000
10117
  var require_scope = __commonJS((exports) => {
10001
10118
  Object.defineProperty(exports, "__esModule", { value: true });
10002
10119
  exports.ValueScope = exports.ValueScopeName = exports.Scope = exports.varKinds = exports.UsedValueState = undefined;
@@ -10142,7 +10259,7 @@ var require_scope = __commonJS((exports) => {
10142
10259
  exports.ValueScope = ValueScope;
10143
10260
  });
10144
10261
 
10145
- // node_modules/ajv/dist/compile/codegen/index.js
10262
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/compile/codegen/index.js
10146
10263
  var require_codegen = __commonJS((exports) => {
10147
10264
  Object.defineProperty(exports, "__esModule", { value: true });
10148
10265
  exports.or = exports.and = exports.not = exports.CodeGen = exports.operators = exports.varKinds = exports.ValueScopeName = exports.ValueScope = exports.Scope = exports.Name = exports.regexpCode = exports.stringify = exports.getProperty = exports.nil = exports.strConcat = exports.str = exports._ = undefined;
@@ -10852,7 +10969,7 @@ var require_codegen = __commonJS((exports) => {
10852
10969
  }
10853
10970
  });
10854
10971
 
10855
- // node_modules/ajv/dist/compile/util.js
10972
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/compile/util.js
10856
10973
  var require_util = __commonJS((exports) => {
10857
10974
  Object.defineProperty(exports, "__esModule", { value: true });
10858
10975
  exports.checkStrictMode = exports.getErrorPath = exports.Type = exports.useFunc = exports.setEvaluated = exports.evaluatedPropsToName = exports.mergeEvaluated = exports.eachItem = exports.unescapeJsonPointer = exports.escapeJsonPointer = exports.escapeFragment = exports.unescapeFragment = exports.schemaRefOrVal = exports.schemaHasRulesButRef = exports.schemaHasRules = exports.checkUnknownRules = exports.alwaysValidSchema = exports.toHash = undefined;
@@ -11016,7 +11133,7 @@ var require_util = __commonJS((exports) => {
11016
11133
  exports.checkStrictMode = checkStrictMode;
11017
11134
  });
11018
11135
 
11019
- // node_modules/ajv/dist/compile/names.js
11136
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/compile/names.js
11020
11137
  var require_names = __commonJS((exports) => {
11021
11138
  Object.defineProperty(exports, "__esModule", { value: true });
11022
11139
  var codegen_1 = require_codegen();
@@ -11041,7 +11158,7 @@ var require_names = __commonJS((exports) => {
11041
11158
  exports.default = names;
11042
11159
  });
11043
11160
 
11044
- // node_modules/ajv/dist/compile/errors.js
11161
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/compile/errors.js
11045
11162
  var require_errors = __commonJS((exports) => {
11046
11163
  Object.defineProperty(exports, "__esModule", { value: true });
11047
11164
  exports.extendErrors = exports.resetErrorsCount = exports.reportExtraError = exports.reportError = exports.keyword$DataError = exports.keywordError = undefined;
@@ -11159,7 +11276,7 @@ var require_errors = __commonJS((exports) => {
11159
11276
  }
11160
11277
  });
11161
11278
 
11162
- // node_modules/ajv/dist/compile/validate/boolSchema.js
11279
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/compile/validate/boolSchema.js
11163
11280
  var require_boolSchema = __commonJS((exports) => {
11164
11281
  Object.defineProperty(exports, "__esModule", { value: true });
11165
11282
  exports.boolOrEmptySchema = exports.topBoolOrEmptySchema = undefined;
@@ -11207,7 +11324,7 @@ var require_boolSchema = __commonJS((exports) => {
11207
11324
  }
11208
11325
  });
11209
11326
 
11210
- // node_modules/ajv/dist/compile/rules.js
11327
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/compile/rules.js
11211
11328
  var require_rules = __commonJS((exports) => {
11212
11329
  Object.defineProperty(exports, "__esModule", { value: true });
11213
11330
  exports.getRules = exports.isJSONType = undefined;
@@ -11235,7 +11352,7 @@ var require_rules = __commonJS((exports) => {
11235
11352
  exports.getRules = getRules;
11236
11353
  });
11237
11354
 
11238
- // node_modules/ajv/dist/compile/validate/applicability.js
11355
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/compile/validate/applicability.js
11239
11356
  var require_applicability = __commonJS((exports) => {
11240
11357
  Object.defineProperty(exports, "__esModule", { value: true });
11241
11358
  exports.shouldUseRule = exports.shouldUseGroup = exports.schemaHasRulesForType = undefined;
@@ -11255,7 +11372,7 @@ var require_applicability = __commonJS((exports) => {
11255
11372
  exports.shouldUseRule = shouldUseRule;
11256
11373
  });
11257
11374
 
11258
- // node_modules/ajv/dist/compile/validate/dataType.js
11375
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/compile/validate/dataType.js
11259
11376
  var require_dataType = __commonJS((exports) => {
11260
11377
  Object.defineProperty(exports, "__esModule", { value: true });
11261
11378
  exports.reportTypeError = exports.checkDataTypes = exports.checkDataType = exports.coerceAndCheckDataType = exports.getJSONTypes = exports.getSchemaTypes = exports.DataType = undefined;
@@ -11436,7 +11553,7 @@ var require_dataType = __commonJS((exports) => {
11436
11553
  }
11437
11554
  });
11438
11555
 
11439
- // node_modules/ajv/dist/compile/validate/defaults.js
11556
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/compile/validate/defaults.js
11440
11557
  var require_defaults = __commonJS((exports) => {
11441
11558
  Object.defineProperty(exports, "__esModule", { value: true });
11442
11559
  exports.assignDefaults = undefined;
@@ -11470,7 +11587,7 @@ var require_defaults = __commonJS((exports) => {
11470
11587
  }
11471
11588
  });
11472
11589
 
11473
- // node_modules/ajv/dist/vocabularies/code.js
11590
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/vocabularies/code.js
11474
11591
  var require_code2 = __commonJS((exports) => {
11475
11592
  Object.defineProperty(exports, "__esModule", { value: true });
11476
11593
  exports.validateUnion = exports.validateArray = exports.usePattern = exports.callValidateCode = exports.schemaProperties = exports.allSchemaProperties = exports.noPropertyInData = exports.propertyInData = exports.isOwnProperty = exports.hasPropFunc = exports.reportMissingProp = exports.checkMissingProp = exports.checkReportMissingProp = undefined;
@@ -11599,7 +11716,7 @@ var require_code2 = __commonJS((exports) => {
11599
11716
  exports.validateUnion = validateUnion;
11600
11717
  });
11601
11718
 
11602
- // node_modules/ajv/dist/compile/validate/keyword.js
11719
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/compile/validate/keyword.js
11603
11720
  var require_keyword = __commonJS((exports) => {
11604
11721
  Object.defineProperty(exports, "__esModule", { value: true });
11605
11722
  exports.validateKeywordUsage = exports.validSchemaType = exports.funcKeywordCode = exports.macroKeywordCode = undefined;
@@ -11714,7 +11831,7 @@ var require_keyword = __commonJS((exports) => {
11714
11831
  exports.validateKeywordUsage = validateKeywordUsage;
11715
11832
  });
11716
11833
 
11717
- // node_modules/ajv/dist/compile/validate/subschema.js
11834
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/compile/validate/subschema.js
11718
11835
  var require_subschema = __commonJS((exports) => {
11719
11836
  Object.defineProperty(exports, "__esModule", { value: true });
11720
11837
  exports.extendSubschemaMode = exports.extendSubschemaData = exports.getSubschema = undefined;
@@ -11794,7 +11911,7 @@ var require_subschema = __commonJS((exports) => {
11794
11911
  exports.extendSubschemaMode = extendSubschemaMode;
11795
11912
  });
11796
11913
 
11797
- // node_modules/fast-deep-equal/index.js
11914
+ // ../../node_modules/.bun/fast-deep-equal@3.1.3/node_modules/fast-deep-equal/index.js
11798
11915
  var require_fast_deep_equal = __commonJS((exports, module) => {
11799
11916
  module.exports = function equal(a, b) {
11800
11917
  if (a === b)
@@ -11836,7 +11953,7 @@ var require_fast_deep_equal = __commonJS((exports, module) => {
11836
11953
  };
11837
11954
  });
11838
11955
 
11839
- // node_modules/json-schema-traverse/index.js
11956
+ // ../../node_modules/.bun/json-schema-traverse@1.0.0/node_modules/json-schema-traverse/index.js
11840
11957
  var require_json_schema_traverse = __commonJS((exports, module) => {
11841
11958
  var traverse = module.exports = function(schema, opts, cb) {
11842
11959
  if (typeof opts == "function") {
@@ -11919,7 +12036,7 @@ var require_json_schema_traverse = __commonJS((exports, module) => {
11919
12036
  }
11920
12037
  });
11921
12038
 
11922
- // node_modules/ajv/dist/compile/resolve.js
12039
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/compile/resolve.js
11923
12040
  var require_resolve = __commonJS((exports) => {
11924
12041
  Object.defineProperty(exports, "__esModule", { value: true });
11925
12042
  exports.getSchemaRefs = exports.resolveUrl = exports.normalizeId = exports._getFullPath = exports.getFullPath = exports.inlineRef = undefined;
@@ -12072,7 +12189,7 @@ var require_resolve = __commonJS((exports) => {
12072
12189
  exports.getSchemaRefs = getSchemaRefs;
12073
12190
  });
12074
12191
 
12075
- // node_modules/ajv/dist/compile/validate/index.js
12192
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/compile/validate/index.js
12076
12193
  var require_validate = __commonJS((exports) => {
12077
12194
  Object.defineProperty(exports, "__esModule", { value: true });
12078
12195
  exports.getData = exports.KeywordCxt = exports.validateFunctionCode = undefined;
@@ -12577,7 +12694,7 @@ var require_validate = __commonJS((exports) => {
12577
12694
  exports.getData = getData;
12578
12695
  });
12579
12696
 
12580
- // node_modules/ajv/dist/runtime/validation_error.js
12697
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/runtime/validation_error.js
12581
12698
  var require_validation_error = __commonJS((exports) => {
12582
12699
  Object.defineProperty(exports, "__esModule", { value: true });
12583
12700
 
@@ -12591,7 +12708,7 @@ var require_validation_error = __commonJS((exports) => {
12591
12708
  exports.default = ValidationError;
12592
12709
  });
12593
12710
 
12594
- // node_modules/ajv/dist/compile/ref_error.js
12711
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/compile/ref_error.js
12595
12712
  var require_ref_error = __commonJS((exports) => {
12596
12713
  Object.defineProperty(exports, "__esModule", { value: true });
12597
12714
  var resolve_1 = require_resolve();
@@ -12606,7 +12723,7 @@ var require_ref_error = __commonJS((exports) => {
12606
12723
  exports.default = MissingRefError;
12607
12724
  });
12608
12725
 
12609
- // node_modules/ajv/dist/compile/index.js
12726
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/compile/index.js
12610
12727
  var require_compile = __commonJS((exports) => {
12611
12728
  Object.defineProperty(exports, "__esModule", { value: true });
12612
12729
  exports.resolveSchema = exports.getCompilingSchema = exports.resolveRef = exports.compileSchema = exports.SchemaEnv = undefined;
@@ -12827,7 +12944,7 @@ var require_compile = __commonJS((exports) => {
12827
12944
  }
12828
12945
  });
12829
12946
 
12830
- // node_modules/ajv/dist/refs/data.json
12947
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/refs/data.json
12831
12948
  var require_data = __commonJS((exports, module) => {
12832
12949
  module.exports = {
12833
12950
  $id: "https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",
@@ -12844,7 +12961,7 @@ var require_data = __commonJS((exports, module) => {
12844
12961
  };
12845
12962
  });
12846
12963
 
12847
- // node_modules/fast-uri/lib/utils.js
12964
+ // ../../node_modules/.bun/fast-uri@3.1.5/node_modules/fast-uri/lib/utils.js
12848
12965
  var require_utils = __commonJS((exports, module) => {
12849
12966
  var isUUID = RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu);
12850
12967
  var isIPv4 = 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);
@@ -13155,7 +13272,7 @@ var require_utils = __commonJS((exports, module) => {
13155
13272
  };
13156
13273
  });
13157
13274
 
13158
- // node_modules/fast-uri/lib/schemes.js
13275
+ // ../../node_modules/.bun/fast-uri@3.1.5/node_modules/fast-uri/lib/schemes.js
13159
13276
  var require_schemes = __commonJS((exports, module) => {
13160
13277
  var { isUUID } = require_utils();
13161
13278
  var URN_REG = /([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu;
@@ -13329,7 +13446,7 @@ var require_schemes = __commonJS((exports, module) => {
13329
13446
  };
13330
13447
  });
13331
13448
 
13332
- // node_modules/fast-uri/index.js
13449
+ // ../../node_modules/.bun/fast-uri@3.1.5/node_modules/fast-uri/index.js
13333
13450
  var require_fast_uri = __commonJS((exports, module) => {
13334
13451
  var { normalizeIPv6, removeDotSegments, recomposeAuthority, normalizePercentEncoding, normalizePathEncoding, escapePreservingEscapes, reescapeHostDelimiters, isIPv4, nonSimpleDomain } = require_utils();
13335
13452
  var { SCHEMES, getSchemeHandler } = require_schemes();
@@ -13343,7 +13460,12 @@ var require_fast_uri = __commonJS((exports, module) => {
13343
13460
  }
13344
13461
  function resolve(baseURI, relativeURI, options) {
13345
13462
  const schemelessOptions = options ? Object.assign({ scheme: "null" }, options) : { scheme: "null" };
13346
- const resolved = resolveComponent(parse6(baseURI, schemelessOptions), parse6(relativeURI, schemelessOptions), schemelessOptions, true);
13463
+ const { parsed: baseParsed, malformedAuthorityOrPort: baseMalformed } = parseWithStatus(baseURI, schemelessOptions);
13464
+ const { parsed: relativeParsed, malformedAuthorityOrPort: relativeMalformed } = parseWithStatus(relativeURI, schemelessOptions);
13465
+ if (baseMalformed || relativeMalformed) {
13466
+ throw new Error(baseParsed.error || relativeParsed.error || "URI is malformed.");
13467
+ }
13468
+ const resolved = resolveComponent(baseParsed, relativeParsed, schemelessOptions, true);
13347
13469
  schemelessOptions.skipEscape = true;
13348
13470
  return serialize(resolved, schemelessOptions);
13349
13471
  }
@@ -13470,6 +13592,7 @@ var require_fast_uri = __commonJS((exports, module) => {
13470
13592
  }
13471
13593
  var URI_PARSE = /^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;
13472
13594
  var AUTHORITY_PREFIX = /^(?:[^#/:?]+:)?\/\/([^/?#]*)/;
13595
+ var AUTHORITY_INTRODUCER_REGION = /^(?:[^#/:?]+:)?([/\\\t\n\r]*)/;
13473
13596
  function getParseError(parsed, matches) {
13474
13597
  if (matches[2] !== undefined && parsed.path && parsed.path[0] !== "/") {
13475
13598
  return 'URI path must start with "/" when authority is present.';
@@ -13504,6 +13627,20 @@ var require_fast_uri = __commonJS((exports, module) => {
13504
13627
  parsed.error = "URI authority must not contain a literal backslash.";
13505
13628
  malformedAuthorityOrPort = true;
13506
13629
  }
13630
+ const introducerMatch = uri.match(AUTHORITY_INTRODUCER_REGION);
13631
+ if (introducerMatch !== null) {
13632
+ const region = introducerMatch[1];
13633
+ const normalizedRegion = region.replace(/[\t\n\r]/g, "");
13634
+ if (normalizedRegion.length >= 2) {
13635
+ if (normalizedRegion.slice(0, 2) !== "//") {
13636
+ parsed.error = parsed.error || "URI authority must not contain a literal backslash.";
13637
+ malformedAuthorityOrPort = true;
13638
+ } else if (region.length !== normalizedRegion.length) {
13639
+ parsed.error = parsed.error || "URI authority introducer must not contain whitespace.";
13640
+ malformedAuthorityOrPort = true;
13641
+ }
13642
+ }
13643
+ }
13507
13644
  const matches = uri.match(URI_PARSE);
13508
13645
  if (matches) {
13509
13646
  parsed.scheme = matches[1];
@@ -13617,7 +13754,7 @@ var require_fast_uri = __commonJS((exports, module) => {
13617
13754
  module.exports.fastUri = fastUri;
13618
13755
  });
13619
13756
 
13620
- // node_modules/ajv/dist/runtime/uri.js
13757
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/runtime/uri.js
13621
13758
  var require_uri = __commonJS((exports) => {
13622
13759
  Object.defineProperty(exports, "__esModule", { value: true });
13623
13760
  var uri = require_fast_uri();
@@ -13625,7 +13762,7 @@ var require_uri = __commonJS((exports) => {
13625
13762
  exports.default = uri;
13626
13763
  });
13627
13764
 
13628
- // node_modules/ajv/dist/core.js
13765
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/core.js
13629
13766
  var require_core = __commonJS((exports) => {
13630
13767
  Object.defineProperty(exports, "__esModule", { value: true });
13631
13768
  exports.CodeGen = exports.Name = exports.nil = exports.stringify = exports.str = exports._ = exports.KeywordCxt = undefined;
@@ -14218,7 +14355,7 @@ var require_core = __commonJS((exports) => {
14218
14355
  }
14219
14356
  });
14220
14357
 
14221
- // node_modules/ajv/dist/vocabularies/core/id.js
14358
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/vocabularies/core/id.js
14222
14359
  var require_id = __commonJS((exports) => {
14223
14360
  Object.defineProperty(exports, "__esModule", { value: true });
14224
14361
  var def = {
@@ -14230,7 +14367,7 @@ var require_id = __commonJS((exports) => {
14230
14367
  exports.default = def;
14231
14368
  });
14232
14369
 
14233
- // node_modules/ajv/dist/vocabularies/core/ref.js
14370
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/vocabularies/core/ref.js
14234
14371
  var require_ref = __commonJS((exports) => {
14235
14372
  Object.defineProperty(exports, "__esModule", { value: true });
14236
14373
  exports.callRef = exports.getValidate = undefined;
@@ -14349,7 +14486,7 @@ var require_ref = __commonJS((exports) => {
14349
14486
  exports.default = def;
14350
14487
  });
14351
14488
 
14352
- // node_modules/ajv/dist/vocabularies/core/index.js
14489
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/vocabularies/core/index.js
14353
14490
  var require_core2 = __commonJS((exports) => {
14354
14491
  Object.defineProperty(exports, "__esModule", { value: true });
14355
14492
  var id_1 = require_id();
@@ -14367,7 +14504,7 @@ var require_core2 = __commonJS((exports) => {
14367
14504
  exports.default = core2;
14368
14505
  });
14369
14506
 
14370
- // node_modules/ajv/dist/vocabularies/validation/limitNumber.js
14507
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/limitNumber.js
14371
14508
  var require_limitNumber = __commonJS((exports) => {
14372
14509
  Object.defineProperty(exports, "__esModule", { value: true });
14373
14510
  var codegen_1 = require_codegen();
@@ -14396,7 +14533,7 @@ var require_limitNumber = __commonJS((exports) => {
14396
14533
  exports.default = def;
14397
14534
  });
14398
14535
 
14399
- // node_modules/ajv/dist/vocabularies/validation/multipleOf.js
14536
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/multipleOf.js
14400
14537
  var require_multipleOf = __commonJS((exports) => {
14401
14538
  Object.defineProperty(exports, "__esModule", { value: true });
14402
14539
  var codegen_1 = require_codegen();
@@ -14421,7 +14558,7 @@ var require_multipleOf = __commonJS((exports) => {
14421
14558
  exports.default = def;
14422
14559
  });
14423
14560
 
14424
- // node_modules/ajv/dist/runtime/ucs2length.js
14561
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/runtime/ucs2length.js
14425
14562
  var require_ucs2length = __commonJS((exports) => {
14426
14563
  Object.defineProperty(exports, "__esModule", { value: true });
14427
14564
  function ucs2length(str) {
@@ -14444,7 +14581,7 @@ var require_ucs2length = __commonJS((exports) => {
14444
14581
  ucs2length.code = 'require("ajv/dist/runtime/ucs2length").default';
14445
14582
  });
14446
14583
 
14447
- // node_modules/ajv/dist/vocabularies/validation/limitLength.js
14584
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/limitLength.js
14448
14585
  var require_limitLength = __commonJS((exports) => {
14449
14586
  Object.defineProperty(exports, "__esModule", { value: true });
14450
14587
  var codegen_1 = require_codegen();
@@ -14473,7 +14610,7 @@ var require_limitLength = __commonJS((exports) => {
14473
14610
  exports.default = def;
14474
14611
  });
14475
14612
 
14476
- // node_modules/ajv/dist/vocabularies/validation/pattern.js
14613
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/pattern.js
14477
14614
  var require_pattern = __commonJS((exports) => {
14478
14615
  Object.defineProperty(exports, "__esModule", { value: true });
14479
14616
  var code_1 = require_code2();
@@ -14507,7 +14644,7 @@ var require_pattern = __commonJS((exports) => {
14507
14644
  exports.default = def;
14508
14645
  });
14509
14646
 
14510
- // node_modules/ajv/dist/vocabularies/validation/limitProperties.js
14647
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/limitProperties.js
14511
14648
  var require_limitProperties = __commonJS((exports) => {
14512
14649
  Object.defineProperty(exports, "__esModule", { value: true });
14513
14650
  var codegen_1 = require_codegen();
@@ -14533,7 +14670,7 @@ var require_limitProperties = __commonJS((exports) => {
14533
14670
  exports.default = def;
14534
14671
  });
14535
14672
 
14536
- // node_modules/ajv/dist/vocabularies/validation/required.js
14673
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/required.js
14537
14674
  var require_required = __commonJS((exports) => {
14538
14675
  Object.defineProperty(exports, "__esModule", { value: true });
14539
14676
  var code_1 = require_code2();
@@ -14612,7 +14749,7 @@ var require_required = __commonJS((exports) => {
14612
14749
  exports.default = def;
14613
14750
  });
14614
14751
 
14615
- // node_modules/ajv/dist/vocabularies/validation/limitItems.js
14752
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/limitItems.js
14616
14753
  var require_limitItems = __commonJS((exports) => {
14617
14754
  Object.defineProperty(exports, "__esModule", { value: true });
14618
14755
  var codegen_1 = require_codegen();
@@ -14638,7 +14775,7 @@ var require_limitItems = __commonJS((exports) => {
14638
14775
  exports.default = def;
14639
14776
  });
14640
14777
 
14641
- // node_modules/ajv/dist/runtime/equal.js
14778
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/runtime/equal.js
14642
14779
  var require_equal = __commonJS((exports) => {
14643
14780
  Object.defineProperty(exports, "__esModule", { value: true });
14644
14781
  var equal = require_fast_deep_equal();
@@ -14646,7 +14783,7 @@ var require_equal = __commonJS((exports) => {
14646
14783
  exports.default = equal;
14647
14784
  });
14648
14785
 
14649
- // node_modules/ajv/dist/vocabularies/validation/uniqueItems.js
14786
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/uniqueItems.js
14650
14787
  var require_uniqueItems = __commonJS((exports) => {
14651
14788
  Object.defineProperty(exports, "__esModule", { value: true });
14652
14789
  var dataType_1 = require_dataType();
@@ -14710,7 +14847,7 @@ var require_uniqueItems = __commonJS((exports) => {
14710
14847
  exports.default = def;
14711
14848
  });
14712
14849
 
14713
- // node_modules/ajv/dist/vocabularies/validation/const.js
14850
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/const.js
14714
14851
  var require_const = __commonJS((exports) => {
14715
14852
  Object.defineProperty(exports, "__esModule", { value: true });
14716
14853
  var codegen_1 = require_codegen();
@@ -14736,7 +14873,7 @@ var require_const = __commonJS((exports) => {
14736
14873
  exports.default = def;
14737
14874
  });
14738
14875
 
14739
- // node_modules/ajv/dist/vocabularies/validation/enum.js
14876
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/enum.js
14740
14877
  var require_enum = __commonJS((exports) => {
14741
14878
  Object.defineProperty(exports, "__esModule", { value: true });
14742
14879
  var codegen_1 = require_codegen();
@@ -14782,7 +14919,7 @@ var require_enum = __commonJS((exports) => {
14782
14919
  exports.default = def;
14783
14920
  });
14784
14921
 
14785
- // node_modules/ajv/dist/vocabularies/validation/index.js
14922
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/index.js
14786
14923
  var require_validation = __commonJS((exports) => {
14787
14924
  Object.defineProperty(exports, "__esModule", { value: true });
14788
14925
  var limitNumber_1 = require_limitNumber();
@@ -14812,7 +14949,7 @@ var require_validation = __commonJS((exports) => {
14812
14949
  exports.default = validation;
14813
14950
  });
14814
14951
 
14815
- // node_modules/ajv/dist/vocabularies/applicator/additionalItems.js
14952
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/additionalItems.js
14816
14953
  var require_additionalItems = __commonJS((exports) => {
14817
14954
  Object.defineProperty(exports, "__esModule", { value: true });
14818
14955
  exports.validateAdditionalItems = undefined;
@@ -14862,7 +14999,7 @@ var require_additionalItems = __commonJS((exports) => {
14862
14999
  exports.default = def;
14863
15000
  });
14864
15001
 
14865
- // node_modules/ajv/dist/vocabularies/applicator/items.js
15002
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/items.js
14866
15003
  var require_items = __commonJS((exports) => {
14867
15004
  Object.defineProperty(exports, "__esModule", { value: true });
14868
15005
  exports.validateTuple = undefined;
@@ -14916,7 +15053,7 @@ var require_items = __commonJS((exports) => {
14916
15053
  exports.default = def;
14917
15054
  });
14918
15055
 
14919
- // node_modules/ajv/dist/vocabularies/applicator/prefixItems.js
15056
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/prefixItems.js
14920
15057
  var require_prefixItems = __commonJS((exports) => {
14921
15058
  Object.defineProperty(exports, "__esModule", { value: true });
14922
15059
  var items_1 = require_items();
@@ -14930,7 +15067,7 @@ var require_prefixItems = __commonJS((exports) => {
14930
15067
  exports.default = def;
14931
15068
  });
14932
15069
 
14933
- // node_modules/ajv/dist/vocabularies/applicator/items2020.js
15070
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/items2020.js
14934
15071
  var require_items2020 = __commonJS((exports) => {
14935
15072
  Object.defineProperty(exports, "__esModule", { value: true });
14936
15073
  var codegen_1 = require_codegen();
@@ -14962,7 +15099,7 @@ var require_items2020 = __commonJS((exports) => {
14962
15099
  exports.default = def;
14963
15100
  });
14964
15101
 
14965
- // node_modules/ajv/dist/vocabularies/applicator/contains.js
15102
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/contains.js
14966
15103
  var require_contains = __commonJS((exports) => {
14967
15104
  Object.defineProperty(exports, "__esModule", { value: true });
14968
15105
  var codegen_1 = require_codegen();
@@ -15053,7 +15190,7 @@ var require_contains = __commonJS((exports) => {
15053
15190
  exports.default = def;
15054
15191
  });
15055
15192
 
15056
- // node_modules/ajv/dist/vocabularies/applicator/dependencies.js
15193
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/dependencies.js
15057
15194
  var require_dependencies = __commonJS((exports) => {
15058
15195
  Object.defineProperty(exports, "__esModule", { value: true });
15059
15196
  exports.validateSchemaDeps = exports.validatePropertyDeps = exports.error = undefined;
@@ -15138,7 +15275,7 @@ var require_dependencies = __commonJS((exports) => {
15138
15275
  exports.default = def;
15139
15276
  });
15140
15277
 
15141
- // node_modules/ajv/dist/vocabularies/applicator/propertyNames.js
15278
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/propertyNames.js
15142
15279
  var require_propertyNames = __commonJS((exports) => {
15143
15280
  Object.defineProperty(exports, "__esModule", { value: true });
15144
15281
  var codegen_1 = require_codegen();
@@ -15178,7 +15315,7 @@ var require_propertyNames = __commonJS((exports) => {
15178
15315
  exports.default = def;
15179
15316
  });
15180
15317
 
15181
- // node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js
15318
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js
15182
15319
  var require_additionalProperties = __commonJS((exports) => {
15183
15320
  Object.defineProperty(exports, "__esModule", { value: true });
15184
15321
  var code_1 = require_code2();
@@ -15281,7 +15418,7 @@ var require_additionalProperties = __commonJS((exports) => {
15281
15418
  exports.default = def;
15282
15419
  });
15283
15420
 
15284
- // node_modules/ajv/dist/vocabularies/applicator/properties.js
15421
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/properties.js
15285
15422
  var require_properties = __commonJS((exports) => {
15286
15423
  Object.defineProperty(exports, "__esModule", { value: true });
15287
15424
  var validate_1 = require_validate();
@@ -15336,7 +15473,7 @@ var require_properties = __commonJS((exports) => {
15336
15473
  exports.default = def;
15337
15474
  });
15338
15475
 
15339
- // node_modules/ajv/dist/vocabularies/applicator/patternProperties.js
15476
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/patternProperties.js
15340
15477
  var require_patternProperties = __commonJS((exports) => {
15341
15478
  Object.defineProperty(exports, "__esModule", { value: true });
15342
15479
  var code_1 = require_code2();
@@ -15407,7 +15544,7 @@ var require_patternProperties = __commonJS((exports) => {
15407
15544
  exports.default = def;
15408
15545
  });
15409
15546
 
15410
- // node_modules/ajv/dist/vocabularies/applicator/not.js
15547
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/not.js
15411
15548
  var require_not = __commonJS((exports) => {
15412
15549
  Object.defineProperty(exports, "__esModule", { value: true });
15413
15550
  var util_1 = require_util();
@@ -15435,7 +15572,7 @@ var require_not = __commonJS((exports) => {
15435
15572
  exports.default = def;
15436
15573
  });
15437
15574
 
15438
- // node_modules/ajv/dist/vocabularies/applicator/anyOf.js
15575
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/anyOf.js
15439
15576
  var require_anyOf = __commonJS((exports) => {
15440
15577
  Object.defineProperty(exports, "__esModule", { value: true });
15441
15578
  var code_1 = require_code2();
@@ -15449,7 +15586,7 @@ var require_anyOf = __commonJS((exports) => {
15449
15586
  exports.default = def;
15450
15587
  });
15451
15588
 
15452
- // node_modules/ajv/dist/vocabularies/applicator/oneOf.js
15589
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/oneOf.js
15453
15590
  var require_oneOf = __commonJS((exports) => {
15454
15591
  Object.defineProperty(exports, "__esModule", { value: true });
15455
15592
  var codegen_1 = require_codegen();
@@ -15504,7 +15641,7 @@ var require_oneOf = __commonJS((exports) => {
15504
15641
  exports.default = def;
15505
15642
  });
15506
15643
 
15507
- // node_modules/ajv/dist/vocabularies/applicator/allOf.js
15644
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/allOf.js
15508
15645
  var require_allOf = __commonJS((exports) => {
15509
15646
  Object.defineProperty(exports, "__esModule", { value: true });
15510
15647
  var util_1 = require_util();
@@ -15528,7 +15665,7 @@ var require_allOf = __commonJS((exports) => {
15528
15665
  exports.default = def;
15529
15666
  });
15530
15667
 
15531
- // node_modules/ajv/dist/vocabularies/applicator/if.js
15668
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/if.js
15532
15669
  var require_if = __commonJS((exports) => {
15533
15670
  Object.defineProperty(exports, "__esModule", { value: true });
15534
15671
  var codegen_1 = require_codegen();
@@ -15594,7 +15731,7 @@ var require_if = __commonJS((exports) => {
15594
15731
  exports.default = def;
15595
15732
  });
15596
15733
 
15597
- // node_modules/ajv/dist/vocabularies/applicator/thenElse.js
15734
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/thenElse.js
15598
15735
  var require_thenElse = __commonJS((exports) => {
15599
15736
  Object.defineProperty(exports, "__esModule", { value: true });
15600
15737
  var util_1 = require_util();
@@ -15609,7 +15746,7 @@ var require_thenElse = __commonJS((exports) => {
15609
15746
  exports.default = def;
15610
15747
  });
15611
15748
 
15612
- // node_modules/ajv/dist/vocabularies/applicator/index.js
15749
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/index.js
15613
15750
  var require_applicator = __commonJS((exports) => {
15614
15751
  Object.defineProperty(exports, "__esModule", { value: true });
15615
15752
  var additionalItems_1 = require_additionalItems();
@@ -15652,7 +15789,7 @@ var require_applicator = __commonJS((exports) => {
15652
15789
  exports.default = getApplicator;
15653
15790
  });
15654
15791
 
15655
- // node_modules/ajv/dist/vocabularies/format/format.js
15792
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/vocabularies/format/format.js
15656
15793
  var require_format = __commonJS((exports) => {
15657
15794
  Object.defineProperty(exports, "__esModule", { value: true });
15658
15795
  var codegen_1 = require_codegen();
@@ -15739,7 +15876,7 @@ var require_format = __commonJS((exports) => {
15739
15876
  exports.default = def;
15740
15877
  });
15741
15878
 
15742
- // node_modules/ajv/dist/vocabularies/format/index.js
15879
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/vocabularies/format/index.js
15743
15880
  var require_format2 = __commonJS((exports) => {
15744
15881
  Object.defineProperty(exports, "__esModule", { value: true });
15745
15882
  var format_1 = require_format();
@@ -15747,7 +15884,7 @@ var require_format2 = __commonJS((exports) => {
15747
15884
  exports.default = format;
15748
15885
  });
15749
15886
 
15750
- // node_modules/ajv/dist/vocabularies/metadata.js
15887
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/vocabularies/metadata.js
15751
15888
  var require_metadata = __commonJS((exports) => {
15752
15889
  Object.defineProperty(exports, "__esModule", { value: true });
15753
15890
  exports.contentVocabulary = exports.metadataVocabulary = undefined;
@@ -15767,7 +15904,7 @@ var require_metadata = __commonJS((exports) => {
15767
15904
  ];
15768
15905
  });
15769
15906
 
15770
- // node_modules/ajv/dist/vocabularies/draft7.js
15907
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/vocabularies/draft7.js
15771
15908
  var require_draft7 = __commonJS((exports) => {
15772
15909
  Object.defineProperty(exports, "__esModule", { value: true });
15773
15910
  var core_1 = require_core2();
@@ -15786,7 +15923,7 @@ var require_draft7 = __commonJS((exports) => {
15786
15923
  exports.default = draft7Vocabularies;
15787
15924
  });
15788
15925
 
15789
- // node_modules/ajv/dist/vocabularies/discriminator/types.js
15926
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/vocabularies/discriminator/types.js
15790
15927
  var require_types = __commonJS((exports) => {
15791
15928
  Object.defineProperty(exports, "__esModule", { value: true });
15792
15929
  exports.DiscrError = undefined;
@@ -15797,7 +15934,7 @@ var require_types = __commonJS((exports) => {
15797
15934
  })(DiscrError || (exports.DiscrError = DiscrError = {}));
15798
15935
  });
15799
15936
 
15800
- // node_modules/ajv/dist/vocabularies/discriminator/index.js
15937
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/vocabularies/discriminator/index.js
15801
15938
  var require_discriminator = __commonJS((exports) => {
15802
15939
  Object.defineProperty(exports, "__esModule", { value: true });
15803
15940
  var codegen_1 = require_codegen();
@@ -15899,7 +16036,7 @@ var require_discriminator = __commonJS((exports) => {
15899
16036
  exports.default = def;
15900
16037
  });
15901
16038
 
15902
- // node_modules/ajv/dist/refs/json-schema-draft-07.json
16039
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/refs/json-schema-draft-07.json
15903
16040
  var require_json_schema_draft_07 = __commonJS((exports, module) => {
15904
16041
  module.exports = {
15905
16042
  $schema: "http://json-schema.org/draft-07/schema#",
@@ -16054,7 +16191,7 @@ var require_json_schema_draft_07 = __commonJS((exports, module) => {
16054
16191
  };
16055
16192
  });
16056
16193
 
16057
- // node_modules/ajv/dist/ajv.js
16194
+ // ../../node_modules/.bun/ajv@8.20.0/node_modules/ajv/dist/ajv.js
16058
16195
  var require_ajv = __commonJS((exports, module) => {
16059
16196
  Object.defineProperty(exports, "__esModule", { value: true });
16060
16197
  exports.MissingRefError = exports.ValidationError = exports.CodeGen = exports.Name = exports.nil = exports.stringify = exports.str = exports._ = exports.KeywordCxt = exports.Ajv = undefined;
@@ -16122,7 +16259,7 @@ var require_ajv = __commonJS((exports, module) => {
16122
16259
  } });
16123
16260
  });
16124
16261
 
16125
- // node_modules/ajv-formats/dist/formats.js
16262
+ // ../../node_modules/.bun/ajv-formats@3.0.1/node_modules/ajv-formats/dist/formats.js
16126
16263
  var require_formats = __commonJS((exports) => {
16127
16264
  Object.defineProperty(exports, "__esModule", { value: true });
16128
16265
  exports.formatNames = exports.fastFormats = exports.fullFormats = undefined;
@@ -16299,7 +16436,7 @@ var require_formats = __commonJS((exports) => {
16299
16436
  }
16300
16437
  });
16301
16438
 
16302
- // node_modules/ajv-formats/dist/limit.js
16439
+ // ../../node_modules/.bun/ajv-formats@3.0.1/node_modules/ajv-formats/dist/limit.js
16303
16440
  var require_limit = __commonJS((exports) => {
16304
16441
  Object.defineProperty(exports, "__esModule", { value: true });
16305
16442
  exports.formatLimitDefinition = undefined;
@@ -16368,7 +16505,7 @@ var require_limit = __commonJS((exports) => {
16368
16505
  exports.default = formatLimitPlugin;
16369
16506
  });
16370
16507
 
16371
- // node_modules/ajv-formats/dist/index.js
16508
+ // ../../node_modules/.bun/ajv-formats@3.0.1/node_modules/ajv-formats/dist/index.js
16372
16509
  var require_dist = __commonJS((exports, module) => {
16373
16510
  Object.defineProperty(exports, "__esModule", { value: true });
16374
16511
  var formats_1 = require_formats();
@@ -16476,6 +16613,656 @@ var init_usage = __esm(() => {
16476
16613
  init_database();
16477
16614
  });
16478
16615
 
16616
+ // ../../node_modules/.bun/is-docker@3.0.0/node_modules/is-docker/index.js
16617
+ import fs from "fs";
16618
+ function hasDockerEnv() {
16619
+ try {
16620
+ fs.statSync("/.dockerenv");
16621
+ return true;
16622
+ } catch {
16623
+ return false;
16624
+ }
16625
+ }
16626
+ function hasDockerCGroup() {
16627
+ try {
16628
+ return fs.readFileSync("/proc/self/cgroup", "utf8").includes("docker");
16629
+ } catch {
16630
+ return false;
16631
+ }
16632
+ }
16633
+ function isDocker() {
16634
+ if (isDockerCached === undefined) {
16635
+ isDockerCached = hasDockerEnv() || hasDockerCGroup();
16636
+ }
16637
+ return isDockerCached;
16638
+ }
16639
+ var isDockerCached;
16640
+ var init_is_docker = () => {};
16641
+
16642
+ // ../../node_modules/.bun/is-inside-container@1.0.0/node_modules/is-inside-container/index.js
16643
+ import fs2 from "fs";
16644
+ function isInsideContainer() {
16645
+ if (cachedResult === undefined) {
16646
+ cachedResult = hasContainerEnv() || isDocker();
16647
+ }
16648
+ return cachedResult;
16649
+ }
16650
+ var cachedResult, hasContainerEnv = () => {
16651
+ try {
16652
+ fs2.statSync("/run/.containerenv");
16653
+ return true;
16654
+ } catch {
16655
+ return false;
16656
+ }
16657
+ };
16658
+ var init_is_inside_container = __esm(() => {
16659
+ init_is_docker();
16660
+ });
16661
+
16662
+ // ../../node_modules/.bun/is-wsl@3.1.1/node_modules/is-wsl/index.js
16663
+ import process2 from "process";
16664
+ import os from "os";
16665
+ import fs3 from "fs";
16666
+ var isWsl = () => {
16667
+ if (process2.platform !== "linux") {
16668
+ return false;
16669
+ }
16670
+ if (os.release().toLowerCase().includes("microsoft")) {
16671
+ if (isInsideContainer()) {
16672
+ return false;
16673
+ }
16674
+ return true;
16675
+ }
16676
+ try {
16677
+ if (fs3.readFileSync("/proc/version", "utf8").toLowerCase().includes("microsoft")) {
16678
+ return !isInsideContainer();
16679
+ }
16680
+ } catch {}
16681
+ if (fs3.existsSync("/proc/sys/fs/binfmt_misc/WSLInterop") || fs3.existsSync("/run/WSL")) {
16682
+ return !isInsideContainer();
16683
+ }
16684
+ return false;
16685
+ }, is_wsl_default;
16686
+ var init_is_wsl = __esm(() => {
16687
+ init_is_inside_container();
16688
+ is_wsl_default = process2.env.__IS_WSL_TEST__ ? isWsl : isWsl();
16689
+ });
16690
+
16691
+ // ../../node_modules/.bun/powershell-utils@0.1.0/node_modules/powershell-utils/index.js
16692
+ import process3 from "process";
16693
+ import { Buffer as Buffer3 } from "buffer";
16694
+ import { promisify } from "util";
16695
+ import childProcess from "child_process";
16696
+ var execFile, powerShellPath = () => `${process3.env.SYSTEMROOT || process3.env.windir || String.raw`C:\Windows`}\\System32\\WindowsPowerShell\\v1.0\\powershell.exe`, executePowerShell = async (command, options = {}) => {
16697
+ const {
16698
+ powerShellPath: psPath,
16699
+ ...execFileOptions
16700
+ } = options;
16701
+ const encodedCommand = executePowerShell.encodeCommand(command);
16702
+ return execFile(psPath ?? powerShellPath(), [
16703
+ ...executePowerShell.argumentsPrefix,
16704
+ encodedCommand
16705
+ ], {
16706
+ encoding: "utf8",
16707
+ ...execFileOptions
16708
+ });
16709
+ };
16710
+ var init_powershell_utils = __esm(() => {
16711
+ execFile = promisify(childProcess.execFile);
16712
+ executePowerShell.argumentsPrefix = [
16713
+ "-NoProfile",
16714
+ "-NonInteractive",
16715
+ "-ExecutionPolicy",
16716
+ "Bypass",
16717
+ "-EncodedCommand"
16718
+ ];
16719
+ executePowerShell.encodeCommand = (command) => Buffer3.from(command, "utf16le").toString("base64");
16720
+ executePowerShell.escapeArgument = (value) => `'${String(value).replaceAll("'", "''")}'`;
16721
+ });
16722
+
16723
+ // ../../node_modules/.bun/wsl-utils@0.3.1/node_modules/wsl-utils/utilities.js
16724
+ function parseMountPointFromConfig(content) {
16725
+ for (const line of content.split(`
16726
+ `)) {
16727
+ if (/^\s*#/.test(line)) {
16728
+ continue;
16729
+ }
16730
+ const match = /^\s*root\s*=\s*(?<mountPoint>"[^"]*"|'[^']*'|[^#]*)/.exec(line);
16731
+ if (!match) {
16732
+ continue;
16733
+ }
16734
+ return match.groups.mountPoint.trim().replaceAll(/^["']|["']$/g, "");
16735
+ }
16736
+ }
16737
+
16738
+ // ../../node_modules/.bun/wsl-utils@0.3.1/node_modules/wsl-utils/index.js
16739
+ import { promisify as promisify2 } from "util";
16740
+ import childProcess2 from "child_process";
16741
+ import fs4, { constants as fsConstants } from "fs/promises";
16742
+ var execFile2, wslDrivesMountPoint, powerShellPathFromWsl = async () => {
16743
+ const mountPoint = await wslDrivesMountPoint();
16744
+ return `${mountPoint}c/Windows/System32/WindowsPowerShell/v1.0/powershell.exe`;
16745
+ }, powerShellPath2, canAccessPowerShellPromise, canAccessPowerShell = async () => {
16746
+ canAccessPowerShellPromise ??= (async () => {
16747
+ try {
16748
+ const psPath = await powerShellPath2();
16749
+ await fs4.access(psPath, fsConstants.X_OK);
16750
+ return true;
16751
+ } catch {
16752
+ return false;
16753
+ }
16754
+ })();
16755
+ return canAccessPowerShellPromise;
16756
+ }, wslDefaultBrowser = async () => {
16757
+ const psPath = await powerShellPath2();
16758
+ const command = String.raw`(Get-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\http\UserChoice").ProgId`;
16759
+ const { stdout } = await executePowerShell(command, { powerShellPath: psPath });
16760
+ return stdout.trim();
16761
+ }, convertWslPathToWindows = async (path) => {
16762
+ if (/^[a-z]+:\/\//i.test(path)) {
16763
+ return path;
16764
+ }
16765
+ try {
16766
+ const { stdout } = await execFile2("wslpath", ["-aw", path], { encoding: "utf8" });
16767
+ return stdout.trim();
16768
+ } catch {
16769
+ return path;
16770
+ }
16771
+ };
16772
+ var init_wsl_utils = __esm(() => {
16773
+ init_is_wsl();
16774
+ init_powershell_utils();
16775
+ init_is_wsl();
16776
+ execFile2 = promisify2(childProcess2.execFile);
16777
+ wslDrivesMountPoint = (() => {
16778
+ const defaultMountPoint = "/mnt/";
16779
+ let mountPoint;
16780
+ return async function() {
16781
+ if (mountPoint) {
16782
+ return mountPoint;
16783
+ }
16784
+ const configFilePath = "/etc/wsl.conf";
16785
+ let isConfigFileExists = false;
16786
+ try {
16787
+ await fs4.access(configFilePath, fsConstants.F_OK);
16788
+ isConfigFileExists = true;
16789
+ } catch {}
16790
+ if (!isConfigFileExists) {
16791
+ return defaultMountPoint;
16792
+ }
16793
+ const configContent = await fs4.readFile(configFilePath, { encoding: "utf8" });
16794
+ const parsedMountPoint = parseMountPointFromConfig(configContent);
16795
+ if (parsedMountPoint === undefined) {
16796
+ return defaultMountPoint;
16797
+ }
16798
+ mountPoint = parsedMountPoint;
16799
+ mountPoint = mountPoint.endsWith("/") ? mountPoint : `${mountPoint}/`;
16800
+ return mountPoint;
16801
+ };
16802
+ })();
16803
+ powerShellPath2 = is_wsl_default ? powerShellPathFromWsl : powerShellPath;
16804
+ });
16805
+
16806
+ // ../../node_modules/.bun/define-lazy-prop@3.0.0/node_modules/define-lazy-prop/index.js
16807
+ function defineLazyProperty(object4, propertyName, valueGetter) {
16808
+ const define = (value) => Object.defineProperty(object4, propertyName, { value, enumerable: true, writable: true });
16809
+ Object.defineProperty(object4, propertyName, {
16810
+ configurable: true,
16811
+ enumerable: true,
16812
+ get() {
16813
+ const result = valueGetter();
16814
+ define(result);
16815
+ return result;
16816
+ },
16817
+ set(value) {
16818
+ define(value);
16819
+ }
16820
+ });
16821
+ return object4;
16822
+ }
16823
+
16824
+ // ../../node_modules/.bun/default-browser-id@5.0.1/node_modules/default-browser-id/index.js
16825
+ import { promisify as promisify3 } from "util";
16826
+ import process4 from "process";
16827
+ import { execFile as execFile3 } from "child_process";
16828
+ async function defaultBrowserId() {
16829
+ if (process4.platform !== "darwin") {
16830
+ throw new Error("macOS only");
16831
+ }
16832
+ const { stdout } = await execFileAsync("defaults", ["read", "com.apple.LaunchServices/com.apple.launchservices.secure", "LSHandlers"]);
16833
+ const match = /LSHandlerRoleAll = "(?!-)(?<id>[^"]+?)";\s+?LSHandlerURLScheme = (?:http|https);/.exec(stdout);
16834
+ const browserId = match?.groups.id ?? "com.apple.Safari";
16835
+ if (browserId === "com.apple.safari") {
16836
+ return "com.apple.Safari";
16837
+ }
16838
+ return browserId;
16839
+ }
16840
+ var execFileAsync;
16841
+ var init_default_browser_id = __esm(() => {
16842
+ execFileAsync = promisify3(execFile3);
16843
+ });
16844
+
16845
+ // ../../node_modules/.bun/run-applescript@7.1.0/node_modules/run-applescript/index.js
16846
+ import process5 from "process";
16847
+ import { promisify as promisify4 } from "util";
16848
+ import { execFile as execFile4, execFileSync } from "child_process";
16849
+ async function runAppleScript(script, { humanReadableOutput = true, signal } = {}) {
16850
+ if (process5.platform !== "darwin") {
16851
+ throw new Error("macOS only");
16852
+ }
16853
+ const outputArguments = humanReadableOutput ? [] : ["-ss"];
16854
+ const execOptions = {};
16855
+ if (signal) {
16856
+ execOptions.signal = signal;
16857
+ }
16858
+ const { stdout } = await execFileAsync2("osascript", ["-e", script, outputArguments], execOptions);
16859
+ return stdout.trim();
16860
+ }
16861
+ var execFileAsync2;
16862
+ var init_run_applescript = __esm(() => {
16863
+ execFileAsync2 = promisify4(execFile4);
16864
+ });
16865
+
16866
+ // ../../node_modules/.bun/bundle-name@4.1.0/node_modules/bundle-name/index.js
16867
+ async function bundleName(bundleId) {
16868
+ return runAppleScript(`tell application "Finder" to set app_path to application file id "${bundleId}" as string
16869
+ tell application "System Events" to get value of property list item "CFBundleName" of property list file (app_path & ":Contents:Info.plist")`);
16870
+ }
16871
+ var init_bundle_name = __esm(() => {
16872
+ init_run_applescript();
16873
+ });
16874
+
16875
+ // ../../node_modules/.bun/default-browser@5.5.0/node_modules/default-browser/windows.js
16876
+ import { promisify as promisify5 } from "util";
16877
+ import { execFile as execFile5 } from "child_process";
16878
+ async function defaultBrowser(_execFileAsync = execFileAsync3) {
16879
+ const { stdout } = await _execFileAsync("reg", [
16880
+ "QUERY",
16881
+ " HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\Shell\\Associations\\UrlAssociations\\http\\UserChoice",
16882
+ "/v",
16883
+ "ProgId"
16884
+ ]);
16885
+ const match = /ProgId\s*REG_SZ\s*(?<id>\S+)/.exec(stdout);
16886
+ if (!match) {
16887
+ throw new UnknownBrowserError(`Cannot find Windows browser in stdout: ${JSON.stringify(stdout)}`);
16888
+ }
16889
+ const { id } = match.groups;
16890
+ const dotIndex = id.lastIndexOf(".");
16891
+ const hyphenIndex = id.lastIndexOf("-");
16892
+ const baseIdByDot = dotIndex === -1 ? undefined : id.slice(0, dotIndex);
16893
+ const baseIdByHyphen = hyphenIndex === -1 ? undefined : id.slice(0, hyphenIndex);
16894
+ return windowsBrowserProgIds[id] ?? windowsBrowserProgIds[baseIdByDot] ?? windowsBrowserProgIds[baseIdByHyphen] ?? { name: id, id };
16895
+ }
16896
+ var execFileAsync3, windowsBrowserProgIds, _windowsBrowserProgIdMap, UnknownBrowserError;
16897
+ var init_windows = __esm(() => {
16898
+ execFileAsync3 = promisify5(execFile5);
16899
+ windowsBrowserProgIds = {
16900
+ MSEdgeHTM: { name: "Edge", id: "com.microsoft.edge" },
16901
+ MSEdgeBHTML: { name: "Edge Beta", id: "com.microsoft.edge.beta" },
16902
+ MSEdgeDHTML: { name: "Edge Dev", id: "com.microsoft.edge.dev" },
16903
+ AppXq0fevzme2pys62n3e0fbqa7peapykr8v: { name: "Edge", id: "com.microsoft.edge.old" },
16904
+ ChromeHTML: { name: "Chrome", id: "com.google.chrome" },
16905
+ ChromeBHTML: { name: "Chrome Beta", id: "com.google.chrome.beta" },
16906
+ ChromeDHTML: { name: "Chrome Dev", id: "com.google.chrome.dev" },
16907
+ ChromiumHTM: { name: "Chromium", id: "org.chromium.Chromium" },
16908
+ BraveHTML: { name: "Brave", id: "com.brave.Browser" },
16909
+ BraveBHTML: { name: "Brave Beta", id: "com.brave.Browser.beta" },
16910
+ BraveDHTML: { name: "Brave Dev", id: "com.brave.Browser.dev" },
16911
+ BraveSSHTM: { name: "Brave Nightly", id: "com.brave.Browser.nightly" },
16912
+ FirefoxURL: { name: "Firefox", id: "org.mozilla.firefox" },
16913
+ OperaStable: { name: "Opera", id: "com.operasoftware.Opera" },
16914
+ VivaldiHTM: { name: "Vivaldi", id: "com.vivaldi.Vivaldi" },
16915
+ "IE.HTTP": { name: "Internet Explorer", id: "com.microsoft.ie" }
16916
+ };
16917
+ _windowsBrowserProgIdMap = new Map(Object.entries(windowsBrowserProgIds));
16918
+ UnknownBrowserError = class UnknownBrowserError extends Error {
16919
+ };
16920
+ });
16921
+
16922
+ // ../../node_modules/.bun/default-browser@5.5.0/node_modules/default-browser/index.js
16923
+ import { promisify as promisify6 } from "util";
16924
+ import process6 from "process";
16925
+ import { execFile as execFile6 } from "child_process";
16926
+ async function defaultBrowser2() {
16927
+ if (process6.platform === "darwin") {
16928
+ const id = await defaultBrowserId();
16929
+ const name = await bundleName(id);
16930
+ return { name, id };
16931
+ }
16932
+ if (process6.platform === "linux") {
16933
+ const { stdout } = await execFileAsync4("xdg-mime", ["query", "default", "x-scheme-handler/http"]);
16934
+ const id = stdout.trim();
16935
+ const name = titleize(id.replace(/.desktop$/, "").replace("-", " "));
16936
+ return { name, id };
16937
+ }
16938
+ if (process6.platform === "win32") {
16939
+ return defaultBrowser();
16940
+ }
16941
+ throw new Error("Only macOS, Linux, and Windows are supported");
16942
+ }
16943
+ var execFileAsync4, titleize = (string4) => string4.toLowerCase().replaceAll(/(?:^|\s|-)\S/g, (x) => x.toUpperCase());
16944
+ var init_default_browser = __esm(() => {
16945
+ init_default_browser_id();
16946
+ init_bundle_name();
16947
+ init_windows();
16948
+ init_windows();
16949
+ execFileAsync4 = promisify6(execFile6);
16950
+ });
16951
+
16952
+ // ../../node_modules/.bun/is-in-ssh@1.0.0/node_modules/is-in-ssh/index.js
16953
+ import process7 from "process";
16954
+ var isInSsh, is_in_ssh_default;
16955
+ var init_is_in_ssh = __esm(() => {
16956
+ isInSsh = Boolean(process7.env.SSH_CONNECTION || process7.env.SSH_CLIENT || process7.env.SSH_TTY);
16957
+ is_in_ssh_default = isInSsh;
16958
+ });
16959
+
16960
+ // ../../node_modules/.bun/open@11.0.0/node_modules/open/index.js
16961
+ import process8 from "process";
16962
+ import path from "path";
16963
+ import { fileURLToPath as fileURLToPath6 } from "url";
16964
+ import childProcess3 from "child_process";
16965
+ import fs5, { constants as fsConstants2 } from "fs/promises";
16966
+ function detectArchBinary(binary) {
16967
+ if (typeof binary === "string" || Array.isArray(binary)) {
16968
+ return binary;
16969
+ }
16970
+ const { [arch]: archBinary } = binary;
16971
+ if (!archBinary) {
16972
+ throw new Error(`${arch} is not supported`);
16973
+ }
16974
+ return archBinary;
16975
+ }
16976
+ function detectPlatformBinary({ [platform]: platformBinary }, { wsl } = {}) {
16977
+ if (wsl && is_wsl_default) {
16978
+ return detectArchBinary(wsl);
16979
+ }
16980
+ if (!platformBinary) {
16981
+ throw new Error(`${platform} is not supported`);
16982
+ }
16983
+ return detectArchBinary(platformBinary);
16984
+ }
16985
+ var fallbackAttemptSymbol, __dirname6, localXdgOpenPath, platform, arch, tryEachApp = async (apps, opener) => {
16986
+ if (apps.length === 0) {
16987
+ return;
16988
+ }
16989
+ const errors4 = [];
16990
+ for (const app of apps) {
16991
+ try {
16992
+ return await opener(app);
16993
+ } catch (error2) {
16994
+ errors4.push(error2);
16995
+ }
16996
+ }
16997
+ throw new AggregateError(errors4, "Failed to open in all supported apps");
16998
+ }, baseOpen = async (options) => {
16999
+ options = {
17000
+ wait: false,
17001
+ background: false,
17002
+ newInstance: false,
17003
+ allowNonzeroExitCode: false,
17004
+ ...options
17005
+ };
17006
+ const isFallbackAttempt = options[fallbackAttemptSymbol] === true;
17007
+ delete options[fallbackAttemptSymbol];
17008
+ if (Array.isArray(options.app)) {
17009
+ return tryEachApp(options.app, (singleApp) => baseOpen({
17010
+ ...options,
17011
+ app: singleApp,
17012
+ [fallbackAttemptSymbol]: true
17013
+ }));
17014
+ }
17015
+ let { name: app, arguments: appArguments = [] } = options.app ?? {};
17016
+ appArguments = [...appArguments];
17017
+ if (Array.isArray(app)) {
17018
+ return tryEachApp(app, (appName) => baseOpen({
17019
+ ...options,
17020
+ app: {
17021
+ name: appName,
17022
+ arguments: appArguments
17023
+ },
17024
+ [fallbackAttemptSymbol]: true
17025
+ }));
17026
+ }
17027
+ if (app === "browser" || app === "browserPrivate") {
17028
+ const ids = {
17029
+ "com.google.chrome": "chrome",
17030
+ "google-chrome.desktop": "chrome",
17031
+ "com.brave.browser": "brave",
17032
+ "org.mozilla.firefox": "firefox",
17033
+ "firefox.desktop": "firefox",
17034
+ "com.microsoft.msedge": "edge",
17035
+ "com.microsoft.edge": "edge",
17036
+ "com.microsoft.edgemac": "edge",
17037
+ "microsoft-edge.desktop": "edge",
17038
+ "com.apple.safari": "safari"
17039
+ };
17040
+ const flags = {
17041
+ chrome: "--incognito",
17042
+ brave: "--incognito",
17043
+ firefox: "--private-window",
17044
+ edge: "--inPrivate"
17045
+ };
17046
+ let browser;
17047
+ if (is_wsl_default) {
17048
+ const progId = await wslDefaultBrowser();
17049
+ const browserInfo = _windowsBrowserProgIdMap.get(progId);
17050
+ browser = browserInfo ?? {};
17051
+ } else {
17052
+ browser = await defaultBrowser2();
17053
+ }
17054
+ if (browser.id in ids) {
17055
+ const browserName = ids[browser.id.toLowerCase()];
17056
+ if (app === "browserPrivate") {
17057
+ if (browserName === "safari") {
17058
+ throw new Error("Safari doesn't support opening in private mode via command line");
17059
+ }
17060
+ appArguments.push(flags[browserName]);
17061
+ }
17062
+ return baseOpen({
17063
+ ...options,
17064
+ app: {
17065
+ name: apps[browserName],
17066
+ arguments: appArguments
17067
+ }
17068
+ });
17069
+ }
17070
+ throw new Error(`${browser.name} is not supported as a default browser`);
17071
+ }
17072
+ let command;
17073
+ const cliArguments = [];
17074
+ const childProcessOptions = {};
17075
+ let shouldUseWindowsInWsl = false;
17076
+ if (is_wsl_default && !isInsideContainer() && !is_in_ssh_default && !app) {
17077
+ shouldUseWindowsInWsl = await canAccessPowerShell();
17078
+ }
17079
+ if (platform === "darwin") {
17080
+ command = "open";
17081
+ if (options.wait) {
17082
+ cliArguments.push("--wait-apps");
17083
+ }
17084
+ if (options.background) {
17085
+ cliArguments.push("--background");
17086
+ }
17087
+ if (options.newInstance) {
17088
+ cliArguments.push("--new");
17089
+ }
17090
+ if (app) {
17091
+ cliArguments.push("-a", app);
17092
+ }
17093
+ } else if (platform === "win32" || shouldUseWindowsInWsl) {
17094
+ command = await powerShellPath2();
17095
+ cliArguments.push(...executePowerShell.argumentsPrefix);
17096
+ if (!is_wsl_default) {
17097
+ childProcessOptions.windowsVerbatimArguments = true;
17098
+ }
17099
+ if (is_wsl_default && options.target) {
17100
+ options.target = await convertWslPathToWindows(options.target);
17101
+ }
17102
+ const encodedArguments = ["$ProgressPreference = 'SilentlyContinue';", "Start"];
17103
+ if (options.wait) {
17104
+ encodedArguments.push("-Wait");
17105
+ }
17106
+ if (app) {
17107
+ encodedArguments.push(executePowerShell.escapeArgument(app));
17108
+ if (options.target) {
17109
+ appArguments.push(options.target);
17110
+ }
17111
+ } else if (options.target) {
17112
+ encodedArguments.push(executePowerShell.escapeArgument(options.target));
17113
+ }
17114
+ if (appArguments.length > 0) {
17115
+ appArguments = appArguments.map((argument) => executePowerShell.escapeArgument(argument));
17116
+ encodedArguments.push("-ArgumentList", appArguments.join(","));
17117
+ }
17118
+ options.target = executePowerShell.encodeCommand(encodedArguments.join(" "));
17119
+ if (!options.wait) {
17120
+ childProcessOptions.stdio = "ignore";
17121
+ }
17122
+ } else {
17123
+ if (app) {
17124
+ command = app;
17125
+ } else {
17126
+ const isBundled = !__dirname6 || __dirname6 === "/";
17127
+ let exeLocalXdgOpen = false;
17128
+ try {
17129
+ await fs5.access(localXdgOpenPath, fsConstants2.X_OK);
17130
+ exeLocalXdgOpen = true;
17131
+ } catch {}
17132
+ const useSystemXdgOpen = process8.versions.electron ?? (platform === "android" || isBundled || !exeLocalXdgOpen);
17133
+ command = useSystemXdgOpen ? "xdg-open" : localXdgOpenPath;
17134
+ }
17135
+ if (appArguments.length > 0) {
17136
+ cliArguments.push(...appArguments);
17137
+ }
17138
+ if (!options.wait) {
17139
+ childProcessOptions.stdio = "ignore";
17140
+ childProcessOptions.detached = true;
17141
+ }
17142
+ }
17143
+ if (platform === "darwin" && appArguments.length > 0) {
17144
+ cliArguments.push("--args", ...appArguments);
17145
+ }
17146
+ if (options.target) {
17147
+ cliArguments.push(options.target);
17148
+ }
17149
+ const subprocess = childProcess3.spawn(command, cliArguments, childProcessOptions);
17150
+ if (options.wait) {
17151
+ return new Promise((resolve, reject) => {
17152
+ subprocess.once("error", reject);
17153
+ subprocess.once("close", (exitCode) => {
17154
+ if (!options.allowNonzeroExitCode && exitCode !== 0) {
17155
+ reject(new Error(`Exited with code ${exitCode}`));
17156
+ return;
17157
+ }
17158
+ resolve(subprocess);
17159
+ });
17160
+ });
17161
+ }
17162
+ if (isFallbackAttempt) {
17163
+ return new Promise((resolve, reject) => {
17164
+ subprocess.once("error", reject);
17165
+ subprocess.once("spawn", () => {
17166
+ subprocess.once("close", (exitCode) => {
17167
+ subprocess.off("error", reject);
17168
+ if (exitCode !== 0) {
17169
+ reject(new Error(`Exited with code ${exitCode}`));
17170
+ return;
17171
+ }
17172
+ subprocess.unref();
17173
+ resolve(subprocess);
17174
+ });
17175
+ });
17176
+ });
17177
+ }
17178
+ subprocess.unref();
17179
+ return new Promise((resolve, reject) => {
17180
+ subprocess.once("error", reject);
17181
+ subprocess.once("spawn", () => {
17182
+ subprocess.off("error", reject);
17183
+ resolve(subprocess);
17184
+ });
17185
+ });
17186
+ }, open = (target, options) => {
17187
+ if (typeof target !== "string") {
17188
+ throw new TypeError("Expected a `target`");
17189
+ }
17190
+ return baseOpen({
17191
+ ...options,
17192
+ target
17193
+ });
17194
+ }, apps, open_default;
17195
+ var init_open = __esm(() => {
17196
+ init_wsl_utils();
17197
+ init_powershell_utils();
17198
+ init_default_browser();
17199
+ init_is_inside_container();
17200
+ init_is_in_ssh();
17201
+ fallbackAttemptSymbol = Symbol("fallbackAttempt");
17202
+ __dirname6 = import.meta.url ? path.dirname(fileURLToPath6(import.meta.url)) : "";
17203
+ localXdgOpenPath = path.join(__dirname6, "xdg-open");
17204
+ ({ platform, arch } = process8);
17205
+ apps = {
17206
+ browser: "browser",
17207
+ browserPrivate: "browserPrivate"
17208
+ };
17209
+ defineLazyProperty(apps, "chrome", () => detectPlatformBinary({
17210
+ darwin: "google chrome",
17211
+ win32: "chrome",
17212
+ linux: ["google-chrome", "google-chrome-stable", "chromium", "chromium-browser"]
17213
+ }, {
17214
+ wsl: {
17215
+ ia32: "/mnt/c/Program Files (x86)/Google/Chrome/Application/chrome.exe",
17216
+ x64: ["/mnt/c/Program Files/Google/Chrome/Application/chrome.exe", "/mnt/c/Program Files (x86)/Google/Chrome/Application/chrome.exe"]
17217
+ }
17218
+ }));
17219
+ defineLazyProperty(apps, "brave", () => detectPlatformBinary({
17220
+ darwin: "brave browser",
17221
+ win32: "brave",
17222
+ linux: ["brave-browser", "brave"]
17223
+ }, {
17224
+ wsl: {
17225
+ ia32: "/mnt/c/Program Files (x86)/BraveSoftware/Brave-Browser/Application/brave.exe",
17226
+ x64: ["/mnt/c/Program Files/BraveSoftware/Brave-Browser/Application/brave.exe", "/mnt/c/Program Files (x86)/BraveSoftware/Brave-Browser/Application/brave.exe"]
17227
+ }
17228
+ }));
17229
+ defineLazyProperty(apps, "firefox", () => detectPlatformBinary({
17230
+ darwin: "firefox",
17231
+ win32: String.raw`C:\Program Files\Mozilla Firefox\firefox.exe`,
17232
+ linux: "firefox"
17233
+ }, {
17234
+ wsl: "/mnt/c/Program Files/Mozilla Firefox/firefox.exe"
17235
+ }));
17236
+ defineLazyProperty(apps, "edge", () => detectPlatformBinary({
17237
+ darwin: "microsoft edge",
17238
+ win32: "msedge",
17239
+ linux: ["microsoft-edge", "microsoft-edge-dev"]
17240
+ }, {
17241
+ wsl: "/mnt/c/Program Files (x86)/Microsoft/Edge/Application/msedge.exe"
17242
+ }));
17243
+ defineLazyProperty(apps, "safari", () => detectPlatformBinary({
17244
+ darwin: "Safari"
17245
+ }));
17246
+ open_default = open;
17247
+ });
17248
+
17249
+ // src/lib/open-browser.ts
17250
+ var exports_open_browser = {};
17251
+ __export(exports_open_browser, {
17252
+ openBrowser: () => openBrowser
17253
+ });
17254
+ async function openBrowser(url) {
17255
+ try {
17256
+ await open_default(url);
17257
+ return { ok: true };
17258
+ } catch (error2) {
17259
+ return { ok: false, error: error2 };
17260
+ }
17261
+ }
17262
+ var init_open_browser = __esm(() => {
17263
+ init_open();
17264
+ });
17265
+
16479
17266
  // src/server/serve.ts
16480
17267
  import { existsSync as existsSync15, readdirSync as readdirSync9, readFileSync as readFileSync9, writeFileSync as writeFileSync7, mkdirSync as mkdirSync9 } from "fs";
16481
17268
 
@@ -16718,8 +17505,8 @@ async function runWorkflow(workflow) {
16718
17505
 
16719
17506
  // src/server/serve.ts
16720
17507
  init_database();
16721
- import { join as join14, dirname as dirname7, extname, basename as basename3 } from "path";
16722
- import { fileURLToPath as fileURLToPath6 } from "url";
17508
+ import { join as join14, dirname as dirname7, extname, basename as basename3, relative, resolve, sep } from "path";
17509
+ import { fileURLToPath as fileURLToPath7 } from "url";
16723
17510
 
16724
17511
  // src/lib/registry.ts
16725
17512
  init_builtins();
@@ -16840,7 +17627,7 @@ var connectors = [
16840
17627
  tags: ["ai", "llm", "grok"]
16841
17628
  },
16842
17629
  {
16843
- name: "xai-api-platform",
17630
+ name: "xai" + "-api-platform",
16844
17631
  displayName: "Xai API Platform",
16845
17632
  description: "Xai API Platform REST API for items, events, and search",
16846
17633
  category: "AI & ML",
@@ -18065,7 +18852,7 @@ var connectors = [
18065
18852
  tags: ["ai", "asset-management", "research"]
18066
18853
  },
18067
18854
  {
18068
- name: "xai-grok",
18855
+ name: "xai" + "-grok",
18069
18856
  displayName: "xAI Grok",
18070
18857
  description: "Grok models, Responses API, embeddings, media, files, batches, and collections",
18071
18858
  category: "AI & ML",
@@ -25261,7 +26048,42 @@ async function getConnectorCapabilityManifest(options = {}) {
25261
26048
  // src/server/serve.ts
25262
26049
  init_auth();
25263
26050
 
25264
- // node_modules/zod/v4/core/core.js
26051
+ // ../../node_modules/.bun/@modelcontextprotocol+sdk@1.30.0/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/mediaType.js
26052
+ var import_content_type = __toESM(require_content_type(), 1);
26053
+ function mediaTypeEssence(header) {
26054
+ if (!header) {
26055
+ return;
26056
+ }
26057
+ try {
26058
+ return import_content_type.default.parse(header).type;
26059
+ } catch {
26060
+ const essence = (header.split(";", 1)[0] ?? "").trim().toLowerCase();
26061
+ if (essence === "" || header.slice(essence.length).includes(",")) {
26062
+ return;
26063
+ }
26064
+ return essence;
26065
+ }
26066
+ }
26067
+ function isJsonContentType(header) {
26068
+ if (header === "application/json") {
26069
+ return true;
26070
+ }
26071
+ return mediaTypeEssence(header) === "application/json";
26072
+ }
26073
+
26074
+ // ../../node_modules/.bun/@modelcontextprotocol+sdk@1.30.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/sseKeepAlive.js
26075
+ var DEFAULT_SSE_KEEP_ALIVE_MS = 15000;
26076
+ var MAX_TIMER_DELAY_MS = 2 ** 31 - 1;
26077
+ function armSseKeepAlive(intervalMs, onTick) {
26078
+ if (!Number.isFinite(intervalMs) || intervalMs < 1) {
26079
+ return;
26080
+ }
26081
+ const timer = setInterval(onTick, Math.min(intervalMs, MAX_TIMER_DELAY_MS));
26082
+ timer.unref?.();
26083
+ return timer;
26084
+ }
26085
+
26086
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/core/core.js
25265
26087
  var NEVER2 = Object.freeze({
25266
26088
  status: "aborted"
25267
26089
  });
@@ -25321,7 +26143,7 @@ function config(newConfig) {
25321
26143
  Object.assign(globalConfig, newConfig);
25322
26144
  return globalConfig;
25323
26145
  }
25324
- // node_modules/zod/v4/core/util.js
26146
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/core/util.js
25325
26147
  var exports_util = {};
25326
26148
  __export(exports_util, {
25327
26149
  unwrapMessage: () => unwrapMessage,
@@ -25835,7 +26657,7 @@ class Class {
25835
26657
  constructor(..._args) {}
25836
26658
  }
25837
26659
 
25838
- // node_modules/zod/v4/core/errors.js
26660
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/core/errors.js
25839
26661
  var initializer = (inst, def) => {
25840
26662
  inst.name = "$ZodError";
25841
26663
  Object.defineProperty(inst, "_zod", {
@@ -25909,7 +26731,7 @@ function formatError(error, _mapper) {
25909
26731
  return fieldErrors;
25910
26732
  }
25911
26733
 
25912
- // node_modules/zod/v4/core/parse.js
26734
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/core/parse.js
25913
26735
  var _parse = (_Err) => (schema, value, _ctx, _params) => {
25914
26736
  const ctx = _ctx ? Object.assign(_ctx, { async: false }) : { async: false };
25915
26737
  const result = schema._zod.run({ value, issues: [] }, ctx);
@@ -25960,7 +26782,7 @@ var _safeParseAsync = (_Err) => async (schema, value, _ctx) => {
25960
26782
  } : { success: true, data: result.value };
25961
26783
  };
25962
26784
  var safeParseAsync = /* @__PURE__ */ _safeParseAsync($ZodRealError);
25963
- // node_modules/zod/v4/core/regexes.js
26785
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/core/regexes.js
25964
26786
  var cuid = /^[cC][^\s-]{8,}$/;
25965
26787
  var cuid2 = /^[0-9a-z]+$/;
25966
26788
  var ulid = /^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/;
@@ -26018,7 +26840,7 @@ var _null = /null/i;
26018
26840
  var lowercase = /^[^A-Z]*$/;
26019
26841
  var uppercase = /^[^a-z]*$/;
26020
26842
 
26021
- // node_modules/zod/v4/core/checks.js
26843
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/core/checks.js
26022
26844
  var $ZodCheck = /* @__PURE__ */ $constructor("$ZodCheck", (inst, def) => {
26023
26845
  var _a;
26024
26846
  inst._zod ?? (inst._zod = {});
@@ -26402,7 +27224,7 @@ var $ZodCheckOverwrite = /* @__PURE__ */ $constructor("$ZodCheckOverwrite", (ins
26402
27224
  };
26403
27225
  });
26404
27226
 
26405
- // node_modules/zod/v4/core/doc.js
27227
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/core/doc.js
26406
27228
  class Doc {
26407
27229
  constructor(args = []) {
26408
27230
  this.content = [];
@@ -26440,14 +27262,14 @@ class Doc {
26440
27262
  }
26441
27263
  }
26442
27264
 
26443
- // node_modules/zod/v4/core/versions.js
27265
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/core/versions.js
26444
27266
  var version = {
26445
27267
  major: 4,
26446
27268
  minor: 0,
26447
27269
  patch: 0
26448
27270
  };
26449
27271
 
26450
- // node_modules/zod/v4/core/schemas.js
27272
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/core/schemas.js
26451
27273
  var $ZodType = /* @__PURE__ */ $constructor("$ZodType", (inst, def) => {
26452
27274
  var _a;
26453
27275
  inst ?? (inst = {});
@@ -27678,7 +28500,7 @@ function handleRefineResult(result, payload, input, inst) {
27678
28500
  payload.issues.push(issue(_iss));
27679
28501
  }
27680
28502
  }
27681
- // node_modules/zod/v4/locales/en.js
28503
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/en.js
27682
28504
  var parsedType = (data) => {
27683
28505
  const t = typeof data;
27684
28506
  switch (t) {
@@ -27795,7 +28617,7 @@ function en_default2() {
27795
28617
  localeError: error()
27796
28618
  };
27797
28619
  }
27798
- // node_modules/zod/v4/core/registries.js
28620
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/core/registries.js
27799
28621
  var $output = Symbol("ZodOutput");
27800
28622
  var $input = Symbol("ZodInput");
27801
28623
 
@@ -27845,7 +28667,7 @@ function registry() {
27845
28667
  return new $ZodRegistry;
27846
28668
  }
27847
28669
  var globalRegistry = /* @__PURE__ */ registry();
27848
- // node_modules/zod/v4/core/api.js
28670
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/core/api.js
27849
28671
  function _string(Class2, params) {
27850
28672
  return new Class2({
27851
28673
  type: "string",
@@ -28280,7 +29102,7 @@ function _refine(Class2, fn, _params) {
28280
29102
  });
28281
29103
  return schema;
28282
29104
  }
28283
- // node_modules/zod/v4/core/to-json-schema.js
29105
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/core/to-json-schema.js
28284
29106
  class JSONSchemaGenerator {
28285
29107
  constructor(params) {
28286
29108
  this.counter = 0;
@@ -29032,7 +29854,7 @@ function isTransforming(_schema, _ctx) {
29032
29854
  }
29033
29855
  throw new Error(`Unknown schema type: ${def.type}`);
29034
29856
  }
29035
- // node_modules/zod/v4/classic/iso.js
29857
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/classic/iso.js
29036
29858
  var exports_iso = {};
29037
29859
  __export(exports_iso, {
29038
29860
  time: () => time2,
@@ -29073,7 +29895,7 @@ function duration2(params) {
29073
29895
  return _isoDuration(ZodISODuration, params);
29074
29896
  }
29075
29897
 
29076
- // node_modules/zod/v4/classic/errors.js
29898
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/classic/errors.js
29077
29899
  var initializer2 = (inst, issues) => {
29078
29900
  $ZodError.init(inst, issues);
29079
29901
  inst.name = "ZodError";
@@ -29102,13 +29924,13 @@ var ZodRealError = $constructor("ZodError", initializer2, {
29102
29924
  Parent: Error
29103
29925
  });
29104
29926
 
29105
- // node_modules/zod/v4/classic/parse.js
29927
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/classic/parse.js
29106
29928
  var parse3 = /* @__PURE__ */ _parse(ZodRealError);
29107
29929
  var parseAsync2 = /* @__PURE__ */ _parseAsync(ZodRealError);
29108
29930
  var safeParse2 = /* @__PURE__ */ _safeParse(ZodRealError);
29109
29931
  var safeParseAsync2 = /* @__PURE__ */ _safeParseAsync(ZodRealError);
29110
29932
 
29111
- // node_modules/zod/v4/classic/schemas.js
29933
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/classic/schemas.js
29112
29934
  var ZodType2 = /* @__PURE__ */ $constructor("ZodType", (inst, def) => {
29113
29935
  $ZodType.init(inst, def);
29114
29936
  inst.def = def;
@@ -29713,10 +30535,10 @@ function superRefine(fn) {
29713
30535
  function preprocess(fn, schema) {
29714
30536
  return pipe(transform(fn), schema);
29715
30537
  }
29716
- // node_modules/zod/v4/classic/external.js
30538
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/classic/external.js
29717
30539
  config(en_default2());
29718
30540
 
29719
- // node_modules/@modelcontextprotocol/sdk/dist/esm/types.js
30541
+ // ../../node_modules/.bun/@modelcontextprotocol+sdk@1.30.0/node_modules/@modelcontextprotocol/sdk/dist/esm/types.js
29720
30542
  var LATEST_PROTOCOL_VERSION = "2025-11-25";
29721
30543
  var DEFAULT_NEGOTIATED_PROTOCOL_VERSION = "2025-03-26";
29722
30544
  var SUPPORTED_PROTOCOL_VERSIONS = [LATEST_PROTOCOL_VERSION, "2025-06-18", "2025-03-26", "2024-11-05", "2024-10-07"];
@@ -30563,17 +31385,19 @@ class UrlElicitationRequiredError extends McpError {
30563
31385
  }
30564
31386
  }
30565
31387
 
30566
- // node_modules/@modelcontextprotocol/sdk/dist/esm/server/webStandardStreamableHttp.js
31388
+ // ../../node_modules/.bun/@modelcontextprotocol+sdk@1.30.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/webStandardStreamableHttp.js
30567
31389
  class WebStandardStreamableHTTPServerTransport {
30568
31390
  constructor(options = {}) {
30569
31391
  this._started = false;
30570
31392
  this._hasHandledRequest = false;
30571
31393
  this._streamMapping = new Map;
30572
31394
  this._requestToStreamMapping = new Map;
31395
+ this._resumableStreams = new Set;
30573
31396
  this._requestResponseMap = new Map;
30574
31397
  this._initialized = false;
30575
31398
  this._enableJsonResponse = false;
30576
31399
  this._standaloneSseStreamId = "_GET_stream";
31400
+ this._closed = false;
30577
31401
  this.sessionIdGenerator = options.sessionIdGenerator;
30578
31402
  this._enableJsonResponse = options.enableJsonResponse ?? false;
30579
31403
  this._eventStore = options.eventStore;
@@ -30583,6 +31407,22 @@ class WebStandardStreamableHTTPServerTransport {
30583
31407
  this._allowedOrigins = options.allowedOrigins;
30584
31408
  this._enableDnsRebindingProtection = options.enableDnsRebindingProtection ?? false;
30585
31409
  this._retryInterval = options.retryInterval;
31410
+ this._keepAliveMs = options.keepAliveMs ?? DEFAULT_SSE_KEEP_ALIVE_MS;
31411
+ }
31412
+ startKeepAlive(controller, encoder) {
31413
+ if (this._closed)
31414
+ return;
31415
+ const timer = armSseKeepAlive(this._keepAliveMs, () => {
31416
+ try {
31417
+ controller.enqueue(encoder.encode(`: keepalive
31418
+
31419
+ `));
31420
+ } catch {
31421
+ if (timer !== undefined)
31422
+ clearInterval(timer);
31423
+ }
31424
+ });
31425
+ return timer;
30586
31426
  }
30587
31427
  async start() {
30588
31428
  if (this._started) {
@@ -30630,6 +31470,9 @@ class WebStandardStreamableHTTPServerTransport {
30630
31470
  return;
30631
31471
  }
30632
31472
  async handleRequest(req, options) {
31473
+ if (this._closed) {
31474
+ return this.createJsonErrorResponse(404, -32001, "Session not found");
31475
+ }
30633
31476
  if (!this.sessionIdGenerator && this._hasHandledRequest) {
30634
31477
  throw new Error("Stateless transport cannot be reused across requests. Create a new transport per request.");
30635
31478
  }
@@ -30669,6 +31512,7 @@ data:
30669
31512
  `;
30670
31513
  }
30671
31514
  controller.enqueue(encoder.encode(primingEvent));
31515
+ this._resumableStreams.add(streamId);
30672
31516
  }
30673
31517
  async handleGetRequest(req) {
30674
31518
  const acceptHeader = req.headers.get("accept");
@@ -30696,18 +31540,25 @@ data:
30696
31540
  }
30697
31541
  const encoder = new TextEncoder;
30698
31542
  let streamController;
31543
+ let keepAliveTimer = undefined;
30699
31544
  const readable = new ReadableStream({
30700
31545
  start: (controller) => {
30701
31546
  streamController = controller;
30702
31547
  },
30703
31548
  cancel: () => {
30704
- this._streamMapping.delete(this._standaloneSseStreamId);
31549
+ if (keepAliveTimer !== undefined) {
31550
+ clearInterval(keepAliveTimer);
31551
+ }
31552
+ if (this._streamMapping.get(this._standaloneSseStreamId)?.controller === streamController) {
31553
+ this._streamMapping.delete(this._standaloneSseStreamId);
31554
+ }
30705
31555
  }
30706
31556
  });
30707
31557
  const headers = {
30708
31558
  "Content-Type": "text/event-stream",
30709
31559
  "Cache-Control": "no-cache, no-transform",
30710
- Connection: "keep-alive"
31560
+ Connection: "keep-alive",
31561
+ "X-Accel-Buffering": "no"
30711
31562
  };
30712
31563
  if (this.sessionId !== undefined) {
30713
31564
  headers["mcp-session-id"] = this.sessionId;
@@ -30716,12 +31567,16 @@ data:
30716
31567
  controller: streamController,
30717
31568
  encoder,
30718
31569
  cleanup: () => {
31570
+ if (keepAliveTimer !== undefined) {
31571
+ clearInterval(keepAliveTimer);
31572
+ }
30719
31573
  this._streamMapping.delete(this._standaloneSseStreamId);
30720
31574
  try {
30721
31575
  streamController.close();
30722
31576
  } catch {}
30723
31577
  }
30724
31578
  });
31579
+ keepAliveTimer = this.startKeepAlive(streamController, encoder);
30725
31580
  return new Response(readable, { headers });
30726
31581
  }
30727
31582
  async replayEvents(lastEventId) {
@@ -30745,20 +31600,33 @@ data:
30745
31600
  const headers = {
30746
31601
  "Content-Type": "text/event-stream",
30747
31602
  "Cache-Control": "no-cache, no-transform",
30748
- Connection: "keep-alive"
31603
+ Connection: "keep-alive",
31604
+ "X-Accel-Buffering": "no"
30749
31605
  };
30750
31606
  if (this.sessionId !== undefined) {
30751
31607
  headers["mcp-session-id"] = this.sessionId;
30752
31608
  }
30753
31609
  const encoder = new TextEncoder;
30754
31610
  let streamController;
31611
+ let keepAliveTimer = undefined;
31612
+ let replayedStreamId = undefined;
31613
+ let cancelled = false;
30755
31614
  const readable = new ReadableStream({
30756
31615
  start: (controller) => {
30757
31616
  streamController = controller;
30758
31617
  },
30759
- cancel: () => {}
31618
+ cancel: () => {
31619
+ cancelled = true;
31620
+ if (keepAliveTimer !== undefined) {
31621
+ clearInterval(keepAliveTimer);
31622
+ }
31623
+ if (replayedStreamId !== undefined && this._streamMapping.get(replayedStreamId)?.controller === streamController) {
31624
+ this._streamMapping.delete(replayedStreamId);
31625
+ }
31626
+ }
30760
31627
  });
30761
- const replayedStreamId = await this._eventStore.replayEventsAfter(lastEventId, {
31628
+ const replayedEventIds = new Set;
31629
+ replayedStreamId = await this._eventStore.replayEventsAfter(lastEventId, {
30762
31630
  send: async (eventId, message) => {
30763
31631
  const success3 = this.writeSSEEvent(streamController, encoder, message, eventId);
30764
31632
  if (!success3) {
@@ -30766,19 +31634,34 @@ data:
30766
31634
  try {
30767
31635
  streamController.close();
30768
31636
  } catch {}
31637
+ } else {
31638
+ replayedEventIds.add(eventId);
30769
31639
  }
30770
31640
  }
30771
31641
  });
31642
+ if (this._closed || cancelled) {
31643
+ try {
31644
+ streamController.close();
31645
+ } catch {}
31646
+ return this.createJsonErrorResponse(404, -32001, "Session not found");
31647
+ }
31648
+ this._streamMapping.get(replayedStreamId)?.cleanup();
30772
31649
  this._streamMapping.set(replayedStreamId, {
30773
31650
  controller: streamController,
30774
31651
  encoder,
31652
+ replayedEventIds,
30775
31653
  cleanup: () => {
31654
+ if (keepAliveTimer !== undefined) {
31655
+ clearInterval(keepAliveTimer);
31656
+ }
30776
31657
  this._streamMapping.delete(replayedStreamId);
30777
31658
  try {
30778
31659
  streamController.close();
30779
31660
  } catch {}
30780
31661
  }
30781
31662
  });
31663
+ this._resumableStreams.add(replayedStreamId);
31664
+ keepAliveTimer = this.startKeepAlive(streamController, encoder);
30782
31665
  return new Response(readable, { headers });
30783
31666
  } catch (error2) {
30784
31667
  this.onerror?.(error2);
@@ -30828,7 +31711,7 @@ data:
30828
31711
  return this.createJsonErrorResponse(406, -32000, "Not Acceptable: Client must accept both application/json and text/event-stream");
30829
31712
  }
30830
31713
  const ct = req.headers.get("content-type");
30831
- if (!ct || !ct.includes("application/json")) {
31714
+ if (!isJsonContentType(ct)) {
30832
31715
  this.onerror?.(new Error("Unsupported Media Type: Content-Type must be application/json"));
30833
31716
  return this.createJsonErrorResponse(415, -32000, "Unsupported Media Type: Content-Type must be application/json");
30834
31717
  }
@@ -30858,6 +31741,9 @@ data:
30858
31741
  this.onerror?.(new Error("Parse error: Invalid JSON-RPC message"));
30859
31742
  return this.createJsonErrorResponse(400, -32700, "Parse error: Invalid JSON-RPC message");
30860
31743
  }
31744
+ if (this._closed) {
31745
+ return this.createJsonErrorResponse(404, -32001, "Session not found");
31746
+ }
30861
31747
  const isInitializationRequest = messages.some(isInitializeRequest);
30862
31748
  if (isInitializationRequest) {
30863
31749
  if (this._initialized && this.sessionId !== undefined) {
@@ -30884,6 +31770,9 @@ data:
30884
31770
  return protocolError;
30885
31771
  }
30886
31772
  }
31773
+ if (this._closed) {
31774
+ return this.createJsonErrorResponse(404, -32001, "Session not found");
31775
+ }
30887
31776
  const hasRequests = messages.some(isJSONRPCRequest);
30888
31777
  if (!hasRequests) {
30889
31778
  for (const message of messages) {
@@ -30914,18 +31803,25 @@ data:
30914
31803
  }
30915
31804
  const encoder = new TextEncoder;
30916
31805
  let streamController;
31806
+ let keepAliveTimer = undefined;
30917
31807
  const readable = new ReadableStream({
30918
31808
  start: (controller) => {
30919
31809
  streamController = controller;
30920
31810
  },
30921
31811
  cancel: () => {
30922
- this._streamMapping.delete(streamId);
31812
+ if (keepAliveTimer !== undefined) {
31813
+ clearInterval(keepAliveTimer);
31814
+ }
31815
+ if (this._streamMapping.get(streamId)?.controller === streamController) {
31816
+ this._streamMapping.delete(streamId);
31817
+ }
30923
31818
  }
30924
31819
  });
30925
31820
  const headers = {
30926
31821
  "Content-Type": "text/event-stream",
30927
- "Cache-Control": "no-cache",
30928
- Connection: "keep-alive"
31822
+ "Cache-Control": "no-cache, no-transform",
31823
+ Connection: "keep-alive",
31824
+ "X-Accel-Buffering": "no"
30929
31825
  };
30930
31826
  if (this.sessionId !== undefined) {
30931
31827
  headers["mcp-session-id"] = this.sessionId;
@@ -30936,6 +31832,9 @@ data:
30936
31832
  controller: streamController,
30937
31833
  encoder,
30938
31834
  cleanup: () => {
31835
+ if (keepAliveTimer !== undefined) {
31836
+ clearInterval(keepAliveTimer);
31837
+ }
30939
31838
  this._streamMapping.delete(streamId);
30940
31839
  try {
30941
31840
  streamController.close();
@@ -30945,19 +31844,33 @@ data:
30945
31844
  this._requestToStreamMapping.set(message.id, streamId);
30946
31845
  }
30947
31846
  }
30948
- await this.writePrimingEvent(streamController, encoder, streamId, clientProtocolVersion);
30949
- for (const message of messages) {
30950
- let closeSSEStream;
30951
- let closeStandaloneSSEStream;
30952
- if (isJSONRPCRequest(message) && this._eventStore && clientProtocolVersion >= "2025-11-25") {
30953
- closeSSEStream = () => {
30954
- this.closeSSEStream(message.id);
30955
- };
30956
- closeStandaloneSSEStream = () => {
30957
- this.closeStandaloneSSEStream();
30958
- };
31847
+ try {
31848
+ await this.writePrimingEvent(streamController, encoder, streamId, clientProtocolVersion);
31849
+ for (const message of messages) {
31850
+ let closeSSEStream;
31851
+ let closeStandaloneSSEStream;
31852
+ if (isJSONRPCRequest(message) && this._eventStore && clientProtocolVersion >= "2025-11-25") {
31853
+ closeSSEStream = () => {
31854
+ this.closeSSEStream(message.id);
31855
+ };
31856
+ closeStandaloneSSEStream = () => {
31857
+ this.closeStandaloneSSEStream();
31858
+ };
31859
+ }
31860
+ this.onmessage?.(message, { authInfo: options?.authInfo, requestInfo, closeSSEStream, closeStandaloneSSEStream });
30959
31861
  }
30960
- this.onmessage?.(message, { authInfo: options?.authInfo, requestInfo, closeSSEStream, closeStandaloneSSEStream });
31862
+ } catch (error2) {
31863
+ this._streamMapping.get(streamId)?.cleanup();
31864
+ this._resumableStreams.delete(streamId);
31865
+ for (const message of messages) {
31866
+ if (isJSONRPCRequest(message)) {
31867
+ this._requestToStreamMapping.delete(message.id);
31868
+ }
31869
+ }
31870
+ throw error2;
31871
+ }
31872
+ if (this._streamMapping.get(streamId)?.controller === streamController) {
31873
+ keepAliveTimer = this.startKeepAlive(streamController, encoder);
30961
31874
  }
30962
31875
  return new Response(readable, { status: 200, headers });
30963
31876
  } catch (error2) {
@@ -30974,9 +31887,12 @@ data:
30974
31887
  if (protocolError) {
30975
31888
  return protocolError;
30976
31889
  }
30977
- await Promise.resolve(this._onsessionclosed?.(this.sessionId));
30978
- await this.close();
30979
- return new Response(null, { status: 200 });
31890
+ try {
31891
+ await Promise.resolve(this._onsessionclosed?.(this.sessionId));
31892
+ return new Response(null, { status: 200 });
31893
+ } finally {
31894
+ await this.close();
31895
+ }
30980
31896
  }
30981
31897
  validateSession(req) {
30982
31898
  if (this.sessionIdGenerator === undefined) {
@@ -31006,11 +31922,16 @@ data:
31006
31922
  return;
31007
31923
  }
31008
31924
  async close() {
31925
+ if (this._closed) {
31926
+ return;
31927
+ }
31928
+ this._closed = true;
31009
31929
  this._streamMapping.forEach(({ cleanup }) => {
31010
31930
  cleanup();
31011
31931
  });
31012
31932
  this._streamMapping.clear();
31013
31933
  this._requestResponseMap.clear();
31934
+ this._resumableStreams.clear();
31014
31935
  this.onclose?.();
31015
31936
  }
31016
31937
  closeSSEStream(requestId) {
@@ -31045,7 +31966,7 @@ data:
31045
31966
  if (standaloneSse === undefined) {
31046
31967
  return;
31047
31968
  }
31048
- if (standaloneSse.controller && standaloneSse.encoder) {
31969
+ if (standaloneSse.controller && standaloneSse.encoder && (eventId === undefined || !standaloneSse.replayedEventIds?.has(eventId))) {
31049
31970
  this.writeSSEEvent(standaloneSse.controller, standaloneSse.encoder, message, eventId);
31050
31971
  }
31051
31972
  return;
@@ -31054,13 +31975,19 @@ data:
31054
31975
  if (!streamId) {
31055
31976
  throw new Error(`No connection established for request ID: ${String(requestId)}`);
31056
31977
  }
31057
- const stream = this._streamMapping.get(streamId);
31058
- if (!this._enableJsonResponse && stream?.controller && stream?.encoder) {
31978
+ let stream = this._streamMapping.get(streamId);
31979
+ if (!this._enableJsonResponse) {
31059
31980
  let eventId;
31060
31981
  if (this._eventStore) {
31061
31982
  eventId = await this._eventStore.storeEvent(streamId, message);
31983
+ stream = this._streamMapping.get(streamId);
31984
+ }
31985
+ if (stream?.controller && stream?.encoder && (eventId === undefined || !stream.replayedEventIds?.has(eventId))) {
31986
+ const written = this.writeSSEEvent(stream.controller, stream.encoder, message, eventId);
31987
+ if (written && eventId !== undefined) {
31988
+ this._resumableStreams.add(streamId);
31989
+ }
31062
31990
  }
31063
- this.writeSSEEvent(stream.controller, stream.encoder, message, eventId);
31064
31991
  }
31065
31992
  if (isJSONRPCResultResponse(message) || isJSONRPCErrorResponse(message)) {
31066
31993
  this._requestResponseMap.set(requestId, message);
@@ -31068,6 +31995,25 @@ data:
31068
31995
  const allResponsesReady = relatedIds.every((id) => this._requestResponseMap.has(id));
31069
31996
  if (allResponsesReady) {
31070
31997
  if (!stream) {
31998
+ if (this._closed) {
31999
+ for (const id of relatedIds) {
32000
+ this._requestResponseMap.delete(id);
32001
+ this._requestToStreamMapping.delete(id);
32002
+ }
32003
+ return;
32004
+ }
32005
+ if (!this._enableJsonResponse && this._eventStore && this._resumableStreams.has(streamId)) {
32006
+ for (const id of relatedIds) {
32007
+ this._requestResponseMap.delete(id);
32008
+ this._requestToStreamMapping.delete(id);
32009
+ }
32010
+ this._resumableStreams.delete(streamId);
32011
+ return;
32012
+ }
32013
+ for (const id of relatedIds) {
32014
+ this._requestResponseMap.delete(id);
32015
+ this._requestToStreamMapping.delete(id);
32016
+ }
31071
32017
  throw new Error(`No connection established for request ID: ${String(requestId)}`);
31072
32018
  }
31073
32019
  if (this._enableJsonResponse && stream.resolveJson) {
@@ -31090,11 +32036,12 @@ data:
31090
32036
  this._requestResponseMap.delete(id);
31091
32037
  this._requestToStreamMapping.delete(id);
31092
32038
  }
32039
+ this._resumableStreams.delete(streamId);
31093
32040
  }
31094
32041
  }
31095
32042
  }
31096
32043
  }
31097
- // node_modules/zod/v4/mini/schemas.js
32044
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/mini/schemas.js
31098
32045
  var ZodMiniType = /* @__PURE__ */ $constructor("ZodMiniType", (inst, def) => {
31099
32046
  if (!inst._zod)
31100
32047
  throw new Error("Uninitialized schema in ZodMiniType.");
@@ -31136,7 +32083,7 @@ function object2(shape, params) {
31136
32083
  };
31137
32084
  return new ZodMiniObject(def);
31138
32085
  }
31139
- // node_modules/@modelcontextprotocol/sdk/dist/esm/server/zod-compat.js
32086
+ // ../../node_modules/.bun/@modelcontextprotocol+sdk@1.30.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/zod-compat.js
31140
32087
  function isZ4Schema(s) {
31141
32088
  const schema = s;
31142
32089
  return !!schema._zod;
@@ -31220,17 +32167,34 @@ function normalizeObjectSchema(schema) {
31220
32167
  }
31221
32168
  return;
31222
32169
  }
32170
+ function getDotPath(path) {
32171
+ if (path.length === 0) {
32172
+ return "object root";
32173
+ }
32174
+ return path.reduce((acc, seg, index) => {
32175
+ if (index === 0) {
32176
+ return String(seg);
32177
+ }
32178
+ if (typeof seg === "number") {
32179
+ return `${acc}[${seg}]`;
32180
+ }
32181
+ return `${acc}.${seg}`;
32182
+ }, "");
32183
+ }
31223
32184
  function getParseErrorMessage(error2) {
31224
32185
  if (error2 && typeof error2 === "object") {
32186
+ if ("issues" in error2 && Array.isArray(error2.issues) && error2.issues.length > 0) {
32187
+ return error2.issues.map((i) => {
32188
+ if (!i.path?.length) {
32189
+ return i.message;
32190
+ }
32191
+ return `${i.message} at ${getDotPath(i.path)}`;
32192
+ }).join(`
32193
+ `);
32194
+ }
31225
32195
  if ("message" in error2 && typeof error2.message === "string") {
31226
32196
  return error2.message;
31227
32197
  }
31228
- if ("issues" in error2 && Array.isArray(error2.issues) && error2.issues.length > 0) {
31229
- const firstIssue = error2.issues[0];
31230
- if (firstIssue && typeof firstIssue === "object" && "message" in firstIssue) {
31231
- return String(firstIssue.message);
31232
- }
31233
- }
31234
32198
  try {
31235
32199
  return JSON.stringify(error2);
31236
32200
  } catch {
@@ -31280,12 +32244,12 @@ function getLiteralValue(schema) {
31280
32244
  return;
31281
32245
  }
31282
32246
 
31283
- // node_modules/@modelcontextprotocol/sdk/dist/esm/experimental/tasks/interfaces.js
32247
+ // ../../node_modules/.bun/@modelcontextprotocol+sdk@1.30.0/node_modules/@modelcontextprotocol/sdk/dist/esm/experimental/tasks/interfaces.js
31284
32248
  function isTerminal(status) {
31285
32249
  return status === "completed" || status === "failed" || status === "cancelled";
31286
32250
  }
31287
32251
 
31288
- // node_modules/zod-to-json-schema/dist/esm/Options.js
32252
+ // ../../node_modules/.bun/zod-to-json-schema@3.25.2+27912429049419a2/node_modules/zod-to-json-schema/dist/esm/Options.js
31289
32253
  var ignoreOverride = Symbol("Let zodToJsonSchema decide on which parser to use");
31290
32254
  var defaultOptions = {
31291
32255
  name: undefined,
@@ -31318,7 +32282,7 @@ var getDefaultOptions = (options) => typeof options === "string" ? {
31318
32282
  ...defaultOptions,
31319
32283
  ...options
31320
32284
  };
31321
- // node_modules/zod-to-json-schema/dist/esm/Refs.js
32285
+ // ../../node_modules/.bun/zod-to-json-schema@3.25.2+27912429049419a2/node_modules/zod-to-json-schema/dist/esm/Refs.js
31322
32286
  var getRefs = (options) => {
31323
32287
  const _options = getDefaultOptions(options);
31324
32288
  const currentPath = _options.name !== undefined ? [..._options.basePath, _options.definitionPath, _options.name] : _options.basePath;
@@ -31337,7 +32301,7 @@ var getRefs = (options) => {
31337
32301
  ]))
31338
32302
  };
31339
32303
  };
31340
- // node_modules/zod-to-json-schema/dist/esm/errorMessages.js
32304
+ // ../../node_modules/.bun/zod-to-json-schema@3.25.2+27912429049419a2/node_modules/zod-to-json-schema/dist/esm/errorMessages.js
31341
32305
  function addErrorMessage(res, key, errorMessage, refs) {
31342
32306
  if (!refs?.errorMessages)
31343
32307
  return;
@@ -31352,7 +32316,7 @@ function setResponseValueAndErrors(res, key, value, errorMessage, refs) {
31352
32316
  res[key] = value;
31353
32317
  addErrorMessage(res, key, errorMessage, refs);
31354
32318
  }
31355
- // node_modules/zod-to-json-schema/dist/esm/getRelativePath.js
32319
+ // ../../node_modules/.bun/zod-to-json-schema@3.25.2+27912429049419a2/node_modules/zod-to-json-schema/dist/esm/getRelativePath.js
31356
32320
  var getRelativePath = (pathA, pathB) => {
31357
32321
  let i = 0;
31358
32322
  for (;i < pathA.length && i < pathB.length; i++) {
@@ -31361,7 +32325,7 @@ var getRelativePath = (pathA, pathB) => {
31361
32325
  }
31362
32326
  return [(pathA.length - i).toString(), ...pathB.slice(i)].join("/");
31363
32327
  };
31364
- // node_modules/zod-to-json-schema/dist/esm/parsers/any.js
32328
+ // ../../node_modules/.bun/zod-to-json-schema@3.25.2+27912429049419a2/node_modules/zod-to-json-schema/dist/esm/parsers/any.js
31365
32329
  function parseAnyDef(refs) {
31366
32330
  if (refs.target !== "openAi") {
31367
32331
  return {};
@@ -31377,7 +32341,7 @@ function parseAnyDef(refs) {
31377
32341
  };
31378
32342
  }
31379
32343
 
31380
- // node_modules/zod-to-json-schema/dist/esm/parsers/array.js
32344
+ // ../../node_modules/.bun/zod-to-json-schema@3.25.2+27912429049419a2/node_modules/zod-to-json-schema/dist/esm/parsers/array.js
31381
32345
  function parseArrayDef(def, refs) {
31382
32346
  const res = {
31383
32347
  type: "array"
@@ -31401,7 +32365,7 @@ function parseArrayDef(def, refs) {
31401
32365
  return res;
31402
32366
  }
31403
32367
 
31404
- // node_modules/zod-to-json-schema/dist/esm/parsers/bigint.js
32368
+ // ../../node_modules/.bun/zod-to-json-schema@3.25.2+27912429049419a2/node_modules/zod-to-json-schema/dist/esm/parsers/bigint.js
31405
32369
  function parseBigintDef(def, refs) {
31406
32370
  const res = {
31407
32371
  type: "integer",
@@ -31447,24 +32411,24 @@ function parseBigintDef(def, refs) {
31447
32411
  return res;
31448
32412
  }
31449
32413
 
31450
- // node_modules/zod-to-json-schema/dist/esm/parsers/boolean.js
32414
+ // ../../node_modules/.bun/zod-to-json-schema@3.25.2+27912429049419a2/node_modules/zod-to-json-schema/dist/esm/parsers/boolean.js
31451
32415
  function parseBooleanDef() {
31452
32416
  return {
31453
32417
  type: "boolean"
31454
32418
  };
31455
32419
  }
31456
32420
 
31457
- // node_modules/zod-to-json-schema/dist/esm/parsers/branded.js
32421
+ // ../../node_modules/.bun/zod-to-json-schema@3.25.2+27912429049419a2/node_modules/zod-to-json-schema/dist/esm/parsers/branded.js
31458
32422
  function parseBrandedDef(_def, refs) {
31459
32423
  return parseDef(_def.type._def, refs);
31460
32424
  }
31461
32425
 
31462
- // node_modules/zod-to-json-schema/dist/esm/parsers/catch.js
32426
+ // ../../node_modules/.bun/zod-to-json-schema@3.25.2+27912429049419a2/node_modules/zod-to-json-schema/dist/esm/parsers/catch.js
31463
32427
  var parseCatchDef = (def, refs) => {
31464
32428
  return parseDef(def.innerType._def, refs);
31465
32429
  };
31466
32430
 
31467
- // node_modules/zod-to-json-schema/dist/esm/parsers/date.js
32431
+ // ../../node_modules/.bun/zod-to-json-schema@3.25.2+27912429049419a2/node_modules/zod-to-json-schema/dist/esm/parsers/date.js
31468
32432
  function parseDateDef(def, refs, overrideDateStrategy) {
31469
32433
  const strategy = overrideDateStrategy ?? refs.dateStrategy;
31470
32434
  if (Array.isArray(strategy)) {
@@ -31509,7 +32473,7 @@ var integerDateParser = (def, refs) => {
31509
32473
  return res;
31510
32474
  };
31511
32475
 
31512
- // node_modules/zod-to-json-schema/dist/esm/parsers/default.js
32476
+ // ../../node_modules/.bun/zod-to-json-schema@3.25.2+27912429049419a2/node_modules/zod-to-json-schema/dist/esm/parsers/default.js
31513
32477
  function parseDefaultDef(_def, refs) {
31514
32478
  return {
31515
32479
  ...parseDef(_def.innerType._def, refs),
@@ -31517,12 +32481,12 @@ function parseDefaultDef(_def, refs) {
31517
32481
  };
31518
32482
  }
31519
32483
 
31520
- // node_modules/zod-to-json-schema/dist/esm/parsers/effects.js
32484
+ // ../../node_modules/.bun/zod-to-json-schema@3.25.2+27912429049419a2/node_modules/zod-to-json-schema/dist/esm/parsers/effects.js
31521
32485
  function parseEffectsDef(_def, refs) {
31522
32486
  return refs.effectStrategy === "input" ? parseDef(_def.schema._def, refs) : parseAnyDef(refs);
31523
32487
  }
31524
32488
 
31525
- // node_modules/zod-to-json-schema/dist/esm/parsers/enum.js
32489
+ // ../../node_modules/.bun/zod-to-json-schema@3.25.2+27912429049419a2/node_modules/zod-to-json-schema/dist/esm/parsers/enum.js
31526
32490
  function parseEnumDef(def) {
31527
32491
  return {
31528
32492
  type: "string",
@@ -31530,7 +32494,7 @@ function parseEnumDef(def) {
31530
32494
  };
31531
32495
  }
31532
32496
 
31533
- // node_modules/zod-to-json-schema/dist/esm/parsers/intersection.js
32497
+ // ../../node_modules/.bun/zod-to-json-schema@3.25.2+27912429049419a2/node_modules/zod-to-json-schema/dist/esm/parsers/intersection.js
31534
32498
  var isJsonSchema7AllOfType = (type) => {
31535
32499
  if ("type" in type && type.type === "string")
31536
32500
  return false;
@@ -31572,7 +32536,7 @@ function parseIntersectionDef(def, refs) {
31572
32536
  } : undefined;
31573
32537
  }
31574
32538
 
31575
- // node_modules/zod-to-json-schema/dist/esm/parsers/literal.js
32539
+ // ../../node_modules/.bun/zod-to-json-schema@3.25.2+27912429049419a2/node_modules/zod-to-json-schema/dist/esm/parsers/literal.js
31576
32540
  function parseLiteralDef(def, refs) {
31577
32541
  const parsedType2 = typeof def.value;
31578
32542
  if (parsedType2 !== "bigint" && parsedType2 !== "number" && parsedType2 !== "boolean" && parsedType2 !== "string") {
@@ -31592,7 +32556,7 @@ function parseLiteralDef(def, refs) {
31592
32556
  };
31593
32557
  }
31594
32558
 
31595
- // node_modules/zod-to-json-schema/dist/esm/parsers/string.js
32559
+ // ../../node_modules/.bun/zod-to-json-schema@3.25.2+27912429049419a2/node_modules/zod-to-json-schema/dist/esm/parsers/string.js
31596
32560
  var emojiRegex2 = undefined;
31597
32561
  var zodPatterns = {
31598
32562
  cuid: /^[cC][^\s-]{8,}$/,
@@ -31889,7 +32853,7 @@ function stringifyRegExpWithFlags(regex, refs) {
31889
32853
  return pattern;
31890
32854
  }
31891
32855
 
31892
- // node_modules/zod-to-json-schema/dist/esm/parsers/record.js
32856
+ // ../../node_modules/.bun/zod-to-json-schema@3.25.2+27912429049419a2/node_modules/zod-to-json-schema/dist/esm/parsers/record.js
31893
32857
  function parseRecordDef(def, refs) {
31894
32858
  if (refs.target === "openAi") {
31895
32859
  console.warn("Warning: OpenAI may not support records in schemas! Try an array of key-value pairs instead.");
@@ -31941,7 +32905,7 @@ function parseRecordDef(def, refs) {
31941
32905
  return schema;
31942
32906
  }
31943
32907
 
31944
- // node_modules/zod-to-json-schema/dist/esm/parsers/map.js
32908
+ // ../../node_modules/.bun/zod-to-json-schema@3.25.2+27912429049419a2/node_modules/zod-to-json-schema/dist/esm/parsers/map.js
31945
32909
  function parseMapDef(def, refs) {
31946
32910
  if (refs.mapStrategy === "record") {
31947
32911
  return parseRecordDef(def, refs);
@@ -31966,7 +32930,7 @@ function parseMapDef(def, refs) {
31966
32930
  };
31967
32931
  }
31968
32932
 
31969
- // node_modules/zod-to-json-schema/dist/esm/parsers/nativeEnum.js
32933
+ // ../../node_modules/.bun/zod-to-json-schema@3.25.2+27912429049419a2/node_modules/zod-to-json-schema/dist/esm/parsers/nativeEnum.js
31970
32934
  function parseNativeEnumDef(def) {
31971
32935
  const object3 = def.values;
31972
32936
  const actualKeys = Object.keys(def.values).filter((key) => {
@@ -31980,7 +32944,7 @@ function parseNativeEnumDef(def) {
31980
32944
  };
31981
32945
  }
31982
32946
 
31983
- // node_modules/zod-to-json-schema/dist/esm/parsers/never.js
32947
+ // ../../node_modules/.bun/zod-to-json-schema@3.25.2+27912429049419a2/node_modules/zod-to-json-schema/dist/esm/parsers/never.js
31984
32948
  function parseNeverDef(refs) {
31985
32949
  return refs.target === "openAi" ? undefined : {
31986
32950
  not: parseAnyDef({
@@ -31990,7 +32954,7 @@ function parseNeverDef(refs) {
31990
32954
  };
31991
32955
  }
31992
32956
 
31993
- // node_modules/zod-to-json-schema/dist/esm/parsers/null.js
32957
+ // ../../node_modules/.bun/zod-to-json-schema@3.25.2+27912429049419a2/node_modules/zod-to-json-schema/dist/esm/parsers/null.js
31994
32958
  function parseNullDef(refs) {
31995
32959
  return refs.target === "openApi3" ? {
31996
32960
  enum: ["null"],
@@ -32000,7 +32964,7 @@ function parseNullDef(refs) {
32000
32964
  };
32001
32965
  }
32002
32966
 
32003
- // node_modules/zod-to-json-schema/dist/esm/parsers/union.js
32967
+ // ../../node_modules/.bun/zod-to-json-schema@3.25.2+27912429049419a2/node_modules/zod-to-json-schema/dist/esm/parsers/union.js
32004
32968
  var primitiveMappings = {
32005
32969
  ZodString: "string",
32006
32970
  ZodNumber: "number",
@@ -32068,7 +33032,7 @@ var asAnyOf = (def, refs) => {
32068
33032
  return anyOf.length ? { anyOf } : undefined;
32069
33033
  };
32070
33034
 
32071
- // node_modules/zod-to-json-schema/dist/esm/parsers/nullable.js
33035
+ // ../../node_modules/.bun/zod-to-json-schema@3.25.2+27912429049419a2/node_modules/zod-to-json-schema/dist/esm/parsers/nullable.js
32072
33036
  function parseNullableDef(def, refs) {
32073
33037
  if (["ZodString", "ZodNumber", "ZodBigInt", "ZodBoolean", "ZodNull"].includes(def.innerType._def.typeName) && (!def.innerType._def.checks || !def.innerType._def.checks.length)) {
32074
33038
  if (refs.target === "openApi3") {
@@ -32100,7 +33064,7 @@ function parseNullableDef(def, refs) {
32100
33064
  return base && { anyOf: [base, { type: "null" }] };
32101
33065
  }
32102
33066
 
32103
- // node_modules/zod-to-json-schema/dist/esm/parsers/number.js
33067
+ // ../../node_modules/.bun/zod-to-json-schema@3.25.2+27912429049419a2/node_modules/zod-to-json-schema/dist/esm/parsers/number.js
32104
33068
  function parseNumberDef(def, refs) {
32105
33069
  const res = {
32106
33070
  type: "number"
@@ -32149,7 +33113,7 @@ function parseNumberDef(def, refs) {
32149
33113
  return res;
32150
33114
  }
32151
33115
 
32152
- // node_modules/zod-to-json-schema/dist/esm/parsers/object.js
33116
+ // ../../node_modules/.bun/zod-to-json-schema@3.25.2+27912429049419a2/node_modules/zod-to-json-schema/dist/esm/parsers/object.js
32153
33117
  function parseObjectDef(def, refs) {
32154
33118
  const forceOptionalIntoNullable = refs.target === "openAi";
32155
33119
  const result = {
@@ -32219,7 +33183,7 @@ function safeIsOptional(schema) {
32219
33183
  }
32220
33184
  }
32221
33185
 
32222
- // node_modules/zod-to-json-schema/dist/esm/parsers/optional.js
33186
+ // ../../node_modules/.bun/zod-to-json-schema@3.25.2+27912429049419a2/node_modules/zod-to-json-schema/dist/esm/parsers/optional.js
32223
33187
  var parseOptionalDef = (def, refs) => {
32224
33188
  if (refs.currentPath.toString() === refs.propertyPath?.toString()) {
32225
33189
  return parseDef(def.innerType._def, refs);
@@ -32238,7 +33202,7 @@ var parseOptionalDef = (def, refs) => {
32238
33202
  } : parseAnyDef(refs);
32239
33203
  };
32240
33204
 
32241
- // node_modules/zod-to-json-schema/dist/esm/parsers/pipeline.js
33205
+ // ../../node_modules/.bun/zod-to-json-schema@3.25.2+27912429049419a2/node_modules/zod-to-json-schema/dist/esm/parsers/pipeline.js
32242
33206
  var parsePipelineDef = (def, refs) => {
32243
33207
  if (refs.pipeStrategy === "input") {
32244
33208
  return parseDef(def.in._def, refs);
@@ -32258,12 +33222,12 @@ var parsePipelineDef = (def, refs) => {
32258
33222
  };
32259
33223
  };
32260
33224
 
32261
- // node_modules/zod-to-json-schema/dist/esm/parsers/promise.js
33225
+ // ../../node_modules/.bun/zod-to-json-schema@3.25.2+27912429049419a2/node_modules/zod-to-json-schema/dist/esm/parsers/promise.js
32262
33226
  function parsePromiseDef(def, refs) {
32263
33227
  return parseDef(def.type._def, refs);
32264
33228
  }
32265
33229
 
32266
- // node_modules/zod-to-json-schema/dist/esm/parsers/set.js
33230
+ // ../../node_modules/.bun/zod-to-json-schema@3.25.2+27912429049419a2/node_modules/zod-to-json-schema/dist/esm/parsers/set.js
32267
33231
  function parseSetDef(def, refs) {
32268
33232
  const items = parseDef(def.valueType._def, {
32269
33233
  ...refs,
@@ -32283,7 +33247,7 @@ function parseSetDef(def, refs) {
32283
33247
  return schema;
32284
33248
  }
32285
33249
 
32286
- // node_modules/zod-to-json-schema/dist/esm/parsers/tuple.js
33250
+ // ../../node_modules/.bun/zod-to-json-schema@3.25.2+27912429049419a2/node_modules/zod-to-json-schema/dist/esm/parsers/tuple.js
32287
33251
  function parseTupleDef(def, refs) {
32288
33252
  if (def.rest) {
32289
33253
  return {
@@ -32311,24 +33275,24 @@ function parseTupleDef(def, refs) {
32311
33275
  }
32312
33276
  }
32313
33277
 
32314
- // node_modules/zod-to-json-schema/dist/esm/parsers/undefined.js
33278
+ // ../../node_modules/.bun/zod-to-json-schema@3.25.2+27912429049419a2/node_modules/zod-to-json-schema/dist/esm/parsers/undefined.js
32315
33279
  function parseUndefinedDef(refs) {
32316
33280
  return {
32317
33281
  not: parseAnyDef(refs)
32318
33282
  };
32319
33283
  }
32320
33284
 
32321
- // node_modules/zod-to-json-schema/dist/esm/parsers/unknown.js
33285
+ // ../../node_modules/.bun/zod-to-json-schema@3.25.2+27912429049419a2/node_modules/zod-to-json-schema/dist/esm/parsers/unknown.js
32322
33286
  function parseUnknownDef(refs) {
32323
33287
  return parseAnyDef(refs);
32324
33288
  }
32325
33289
 
32326
- // node_modules/zod-to-json-schema/dist/esm/parsers/readonly.js
33290
+ // ../../node_modules/.bun/zod-to-json-schema@3.25.2+27912429049419a2/node_modules/zod-to-json-schema/dist/esm/parsers/readonly.js
32327
33291
  var parseReadonlyDef = (def, refs) => {
32328
33292
  return parseDef(def.innerType._def, refs);
32329
33293
  };
32330
33294
 
32331
- // node_modules/zod-to-json-schema/dist/esm/selectParser.js
33295
+ // ../../node_modules/.bun/zod-to-json-schema@3.25.2+27912429049419a2/node_modules/zod-to-json-schema/dist/esm/selectParser.js
32332
33296
  var selectParser = (def, typeName, refs) => {
32333
33297
  switch (typeName) {
32334
33298
  case ZodFirstPartyTypeKind.ZodString:
@@ -32406,7 +33370,7 @@ var selectParser = (def, typeName, refs) => {
32406
33370
  }
32407
33371
  };
32408
33372
 
32409
- // node_modules/zod-to-json-schema/dist/esm/parseDef.js
33373
+ // ../../node_modules/.bun/zod-to-json-schema@3.25.2+27912429049419a2/node_modules/zod-to-json-schema/dist/esm/parseDef.js
32410
33374
  function parseDef(def, refs, forceResolution = false) {
32411
33375
  const seenItem = refs.seen.get(def);
32412
33376
  if (refs.override) {
@@ -32461,7 +33425,7 @@ var addMeta = (def, refs, jsonSchema) => {
32461
33425
  }
32462
33426
  return jsonSchema;
32463
33427
  };
32464
- // node_modules/zod-to-json-schema/dist/esm/zodToJsonSchema.js
33428
+ // ../../node_modules/.bun/zod-to-json-schema@3.25.2+27912429049419a2/node_modules/zod-to-json-schema/dist/esm/zodToJsonSchema.js
32465
33429
  var zodToJsonSchema = (schema, options) => {
32466
33430
  const refs = getRefs(options);
32467
33431
  let definitions = typeof options === "object" && options.definitions ? Object.entries(options.definitions).reduce((acc, [name2, schema2]) => ({
@@ -32521,7 +33485,7 @@ var zodToJsonSchema = (schema, options) => {
32521
33485
  }
32522
33486
  return combined;
32523
33487
  };
32524
- // node_modules/@modelcontextprotocol/sdk/dist/esm/server/zod-json-schema-compat.js
33488
+ // ../../node_modules/.bun/@modelcontextprotocol+sdk@1.30.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/zod-json-schema-compat.js
32525
33489
  function mapMiniTarget(t) {
32526
33490
  if (!t)
32527
33491
  return "draft-7";
@@ -32563,7 +33527,7 @@ function parseWithCompat(schema, data) {
32563
33527
  return result.data;
32564
33528
  }
32565
33529
 
32566
- // node_modules/@modelcontextprotocol/sdk/dist/esm/shared/protocol.js
33530
+ // ../../node_modules/.bun/@modelcontextprotocol+sdk@1.30.0/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/protocol.js
32567
33531
  var DEFAULT_REQUEST_TIMEOUT_MSEC = 60000;
32568
33532
 
32569
33533
  class Protocol {
@@ -33404,7 +34368,7 @@ function mergeCapabilities(base, additional) {
33404
34368
  return result;
33405
34369
  }
33406
34370
 
33407
- // node_modules/@modelcontextprotocol/sdk/dist/esm/validation/ajv-provider.js
34371
+ // ../../node_modules/.bun/@modelcontextprotocol+sdk@1.30.0/node_modules/@modelcontextprotocol/sdk/dist/esm/validation/ajv-provider.js
33408
34372
  var import_ajv = __toESM(require_ajv(), 1);
33409
34373
  var import_ajv_formats = __toESM(require_dist(), 1);
33410
34374
  function createDefaultAjvInstance() {
@@ -33444,7 +34408,7 @@ class AjvJsonSchemaValidator {
33444
34408
  }
33445
34409
  }
33446
34410
 
33447
- // node_modules/@modelcontextprotocol/sdk/dist/esm/experimental/tasks/server.js
34411
+ // ../../node_modules/.bun/@modelcontextprotocol+sdk@1.30.0/node_modules/@modelcontextprotocol/sdk/dist/esm/experimental/tasks/server.js
33448
34412
  class ExperimentalServerTasks {
33449
34413
  constructor(_server) {
33450
34414
  this._server = _server;
@@ -33522,7 +34486,7 @@ class ExperimentalServerTasks {
33522
34486
  }
33523
34487
  }
33524
34488
 
33525
- // node_modules/@modelcontextprotocol/sdk/dist/esm/experimental/tasks/helpers.js
34489
+ // ../../node_modules/.bun/@modelcontextprotocol+sdk@1.30.0/node_modules/@modelcontextprotocol/sdk/dist/esm/experimental/tasks/helpers.js
33526
34490
  function assertToolsCallTaskCapability(requests, method, entityName) {
33527
34491
  if (!requests) {
33528
34492
  throw new Error(`${entityName} does not support task creation (required for ${method})`);
@@ -33557,7 +34521,7 @@ function assertClientRequestTaskCapability(requests, method, entityName) {
33557
34521
  }
33558
34522
  }
33559
34523
 
33560
- // node_modules/@modelcontextprotocol/sdk/dist/esm/server/index.js
34524
+ // ../../node_modules/.bun/@modelcontextprotocol+sdk@1.30.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/index.js
33561
34525
  class Server extends Protocol {
33562
34526
  constructor(_serverInfo, options) {
33563
34527
  super(options);
@@ -33605,16 +34569,7 @@ class Server extends Protocol {
33605
34569
  if (!methodSchema) {
33606
34570
  throw new Error("Schema is missing a method literal");
33607
34571
  }
33608
- let methodValue;
33609
- if (isZ4Schema(methodSchema)) {
33610
- const v4Schema = methodSchema;
33611
- const v4Def = v4Schema._zod?.def;
33612
- methodValue = v4Def?.value ?? v4Schema.value;
33613
- } else {
33614
- const v3Schema = methodSchema;
33615
- const legacyDef = v3Schema._def;
33616
- methodValue = legacyDef?.value ?? v3Schema.value;
33617
- }
34572
+ const methodValue = getLiteralValue(methodSchema);
33618
34573
  if (typeof methodValue !== "string") {
33619
34574
  throw new Error("Schema method literal must be a string");
33620
34575
  }
@@ -33890,7 +34845,7 @@ class Server extends Protocol {
33890
34845
  }
33891
34846
  }
33892
34847
 
33893
- // node_modules/@modelcontextprotocol/sdk/dist/esm/server/completable.js
34848
+ // ../../node_modules/.bun/@modelcontextprotocol+sdk@1.30.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/completable.js
33894
34849
  var COMPLETABLE_SYMBOL = Symbol.for("mcp.completable");
33895
34850
  function isCompletable(schema) {
33896
34851
  return !!schema && typeof schema === "object" && COMPLETABLE_SYMBOL in schema;
@@ -33904,7 +34859,7 @@ var McpZodTypeKind;
33904
34859
  McpZodTypeKind2["Completable"] = "McpCompletable";
33905
34860
  })(McpZodTypeKind || (McpZodTypeKind = {}));
33906
34861
 
33907
- // node_modules/@modelcontextprotocol/sdk/dist/esm/shared/toolNameValidation.js
34862
+ // ../../node_modules/.bun/@modelcontextprotocol+sdk@1.30.0/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/toolNameValidation.js
33908
34863
  var TOOL_NAME_REGEX = /^[A-Za-z0-9._-]{1,128}$/;
33909
34864
  function validateToolName(name) {
33910
34865
  const warnings = [];
@@ -33962,7 +34917,7 @@ function validateAndWarnToolName(name) {
33962
34917
  return result.isValid;
33963
34918
  }
33964
34919
 
33965
- // node_modules/@modelcontextprotocol/sdk/dist/esm/experimental/tasks/mcp-server.js
34920
+ // ../../node_modules/.bun/@modelcontextprotocol+sdk@1.30.0/node_modules/@modelcontextprotocol/sdk/dist/esm/experimental/tasks/mcp-server.js
33966
34921
  class ExperimentalMcpServerTasks {
33967
34922
  constructor(_mcpServer) {
33968
34923
  this._mcpServer = _mcpServer;
@@ -33977,7 +34932,7 @@ class ExperimentalMcpServerTasks {
33977
34932
  }
33978
34933
  }
33979
34934
 
33980
- // node_modules/@modelcontextprotocol/sdk/dist/esm/server/mcp.js
34935
+ // ../../node_modules/.bun/@modelcontextprotocol+sdk@1.30.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/mcp.js
33981
34936
  init_zod();
33982
34937
 
33983
34938
  class McpServer {
@@ -36029,7 +36984,7 @@ function logActivity(action, connector, detail) {
36029
36984
  function resolveDashboardDir() {
36030
36985
  const candidates = [];
36031
36986
  try {
36032
- const scriptDir = dirname7(fileURLToPath6(import.meta.url));
36987
+ const scriptDir = dirname7(fileURLToPath7(import.meta.url));
36033
36988
  candidates.push(join14(scriptDir, "..", "dashboard", "dist"));
36034
36989
  candidates.push(join14(scriptDir, "..", "..", "dashboard", "dist"));
36035
36990
  } catch {}
@@ -36145,9 +37100,9 @@ function serveStaticFile(filePath) {
36145
37100
  if (!existsSync15(filePath))
36146
37101
  return null;
36147
37102
  const ext = extname(filePath);
36148
- const contentType = MIME_TYPES[ext] || "application/octet-stream";
37103
+ const contentType2 = MIME_TYPES[ext] || "application/octet-stream";
36149
37104
  return new Response(Bun.file(filePath), {
36150
- headers: { "Content-Type": contentType }
37105
+ headers: { "Content-Type": contentType2 }
36151
37106
  });
36152
37107
  }
36153
37108
  async function findAvailablePort(preferred, strict = false) {
@@ -36200,12 +37155,12 @@ Dashboard not found at: ${dashboardDir}`);
36200
37155
  port,
36201
37156
  async fetch(req) {
36202
37157
  const url2 = new URL(req.url);
36203
- const path = url2.pathname;
37158
+ const path2 = url2.pathname;
36204
37159
  const method = req.method;
36205
37160
  const mcpResponse = await handleMcpHttpRequest(req);
36206
37161
  if (mcpResponse)
36207
37162
  return mcpResponse;
36208
- if (path === "/api/connectors" && method === "GET") {
37163
+ if (path2 === "/api/connectors" && method === "GET") {
36209
37164
  const compact = url2.searchParams.get("compact") === "true";
36210
37165
  const fieldsParam = url2.searchParams.get("fields");
36211
37166
  const fields = fieldsParam ? new Set(fieldsParam.split(",").map((f) => f.trim())) : null;
@@ -36225,7 +37180,7 @@ Dashboard not found at: ${dashboardDir}`);
36225
37180
  }
36226
37181
  return jsonStripped(data, 200, port);
36227
37182
  }
36228
- if (path === "/api/connectors/manifest" && method === "GET") {
37183
+ if (path2 === "/api/connectors/manifest" && method === "GET") {
36229
37184
  const connectorNames = url2.searchParams.get("connectors")?.split(",").map((name) => name.trim()).filter(Boolean);
36230
37185
  const includeOperations = url2.searchParams.get("includeOperations") === "true";
36231
37186
  const manifest = await getConnectorCapabilityManifest({
@@ -36234,7 +37189,7 @@ Dashboard not found at: ${dashboardDir}`);
36234
37189
  });
36235
37190
  return json(manifest, 200, port);
36236
37191
  }
36237
- const singleMatch = path.match(/^\/api\/connectors\/([^/]+)$/);
37192
+ const singleMatch = path2.match(/^\/api\/connectors\/([^/]+)$/);
36238
37193
  if (singleMatch && method === "GET") {
36239
37194
  const name = singleMatch[1];
36240
37195
  if (!isValidConnectorName(name))
@@ -36254,7 +37209,7 @@ Dashboard not found at: ${dashboardDir}`);
36254
37209
  overview: docs?.overview || null
36255
37210
  }, 200, port);
36256
37211
  }
36257
- const operationsMatch = path.match(/^\/api\/connectors\/([^/]+)\/operations$/);
37212
+ const operationsMatch = path2.match(/^\/api\/connectors\/([^/]+)\/operations$/);
36258
37213
  if (operationsMatch && method === "GET") {
36259
37214
  const name = operationsMatch[1];
36260
37215
  if (!isValidConnectorName(name))
@@ -36275,7 +37230,7 @@ Dashboard not found at: ${dashboardDir}`);
36275
37230
  helpText: ops.helpText
36276
37231
  }, 200, port);
36277
37232
  }
36278
- const operationHelpMatch = path.match(/^\/api\/connectors\/([^/]+)\/operations\/([^/]+)$/);
37233
+ const operationHelpMatch = path2.match(/^\/api\/connectors\/([^/]+)\/operations\/([^/]+)$/);
36279
37234
  if (operationHelpMatch && method === "GET") {
36280
37235
  const name = operationHelpMatch[1];
36281
37236
  const command = decodeURIComponent(operationHelpMatch[2]);
@@ -36290,7 +37245,7 @@ Dashboard not found at: ${dashboardDir}`);
36290
37245
  const help = await getConnectorCommandHelp(name, command);
36291
37246
  return json({ connector: name, displayName: meta.displayName, command, help }, 200, port);
36292
37247
  }
36293
- const operationRunMatch = path.match(/^\/api\/connectors\/([^/]+)\/operations\/run$/);
37248
+ const operationRunMatch = path2.match(/^\/api\/connectors\/([^/]+)\/operations\/run$/);
36294
37249
  if (operationRunMatch && method === "POST") {
36295
37250
  const name = operationRunMatch[1];
36296
37251
  if (!isValidConnectorName(name))
@@ -36354,7 +37309,7 @@ ${result.stderr}`;
36354
37309
  }, 500, port);
36355
37310
  }
36356
37311
  }
36357
- const keyMatch = path.match(/^\/api\/connectors\/([^/]+)\/key$/);
37312
+ const keyMatch = path2.match(/^\/api\/connectors\/([^/]+)\/key$/);
36358
37313
  if (keyMatch && method === "POST") {
36359
37314
  const name = keyMatch[1];
36360
37315
  if (!isValidConnectorName(name))
@@ -36373,7 +37328,7 @@ ${result.stderr}`;
36373
37328
  return json({ error: e instanceof Error ? e.message : "Failed to save key" }, 500, port);
36374
37329
  }
36375
37330
  }
36376
- const refreshMatch = path.match(/^\/api\/connectors\/([^/]+)\/refresh$/);
37331
+ const refreshMatch = path2.match(/^\/api\/connectors\/([^/]+)\/refresh$/);
36377
37332
  if (refreshMatch && method === "POST") {
36378
37333
  const name = refreshMatch[1];
36379
37334
  if (!isValidConnectorName(name))
@@ -36386,7 +37341,7 @@ ${result.stderr}`;
36386
37341
  return json({ success: false, error: e instanceof Error ? e.message : "Failed to refresh" }, 500, port);
36387
37342
  }
36388
37343
  }
36389
- const installMatch = path.match(/^\/api\/connectors\/([^/]+)\/install$/);
37344
+ const installMatch = path2.match(/^\/api\/connectors\/([^/]+)\/install$/);
36390
37345
  if (installMatch && method === "POST") {
36391
37346
  const name = installMatch[1];
36392
37347
  if (!isValidConnectorName(name))
@@ -36405,7 +37360,7 @@ ${result.stderr}`;
36405
37360
  return json({ error: e instanceof Error ? e.message : "Failed to install connector" }, 500, port);
36406
37361
  }
36407
37362
  }
36408
- const uninstallMatch = path.match(/^\/api\/connectors\/([^/]+)\/uninstall$/);
37363
+ const uninstallMatch = path2.match(/^\/api\/connectors\/([^/]+)\/uninstall$/);
36409
37364
  if (uninstallMatch && method === "POST") {
36410
37365
  const name = uninstallMatch[1];
36411
37366
  if (!isValidConnectorName(name))
@@ -36421,7 +37376,7 @@ ${result.stderr}`;
36421
37376
  return json({ error: e instanceof Error ? e.message : "Failed to uninstall connector" }, 500, port);
36422
37377
  }
36423
37378
  }
36424
- if (path === "/api/update" && method === "POST") {
37379
+ if (path2 === "/api/update" && method === "POST") {
36425
37380
  try {
36426
37381
  const installed = getInstalledConnectors();
36427
37382
  if (installed.length === 0) {
@@ -36437,10 +37392,10 @@ ${result.stderr}`;
36437
37392
  return json({ error: e instanceof Error ? e.message : "Failed to update" }, 500, port);
36438
37393
  }
36439
37394
  }
36440
- if (path === "/api/activity" && method === "GET") {
37395
+ if (path2 === "/api/activity" && method === "GET") {
36441
37396
  return json(activityLog, 200, port);
36442
37397
  }
36443
- if (path === "/api/hot" && method === "GET") {
37398
+ if (path2 === "/api/hot" && method === "GET") {
36444
37399
  const { getTopConnectors: getTopConnectors2 } = await Promise.resolve().then(() => (init_usage(), exports_usage));
36445
37400
  const { getPromotedConnectors: getPromotedConnectors2 } = await Promise.resolve().then(() => (init_promotions(), exports_promotions));
36446
37401
  const limit = parseInt(url2.searchParams.get("limit") || "10", 10);
@@ -36450,7 +37405,7 @@ ${result.stderr}`;
36450
37405
  const promoted = new Set(getPromotedConnectors2(db));
36451
37406
  return json(top.map((t) => ({ ...t, promoted: promoted.has(t.connector) })), 200, port);
36452
37407
  }
36453
- const promoteMatch = path.match(/^\/api\/connectors\/([^/]+)\/promote$/);
37408
+ const promoteMatch = path2.match(/^\/api\/connectors\/([^/]+)\/promote$/);
36454
37409
  if (promoteMatch && method === "POST") {
36455
37410
  const name = promoteMatch[1];
36456
37411
  if (!getConnector(name))
@@ -36464,13 +37419,13 @@ ${result.stderr}`;
36464
37419
  const removed = demoteConnector2(promoteMatch[1], getDatabase3());
36465
37420
  return json({ success: removed, connector: promoteMatch[1] }, 200, port);
36466
37421
  }
36467
- if (path === "/api/llm" && method === "GET") {
37422
+ if (path2 === "/api/llm" && method === "GET") {
36468
37423
  const config2 = getLlmConfig();
36469
37424
  if (!config2)
36470
37425
  return json({ configured: false }, 200, port);
36471
37426
  return json({ configured: true, provider: config2.provider, model: config2.model, key: maskKey(config2.api_key), strip: config2.strip }, 200, port);
36472
37427
  }
36473
- if (path === "/api/llm" && method === "POST") {
37428
+ if (path2 === "/api/llm" && method === "POST") {
36474
37429
  const body = await req.json().catch(() => ({}));
36475
37430
  const validProviders = ["cerebras", "groq", "openai", "anthropic"];
36476
37431
  const provider = body.provider;
@@ -36484,7 +37439,7 @@ ${result.stderr}`;
36484
37439
  saveLlmConfig({ provider, model, api_key, strip });
36485
37440
  return json({ success: true, provider, model, strip }, 200, port);
36486
37441
  }
36487
- if (path === "/api/llm/test" && method === "POST") {
37442
+ if (path2 === "/api/llm/test" && method === "POST") {
36488
37443
  const config2 = getLlmConfig();
36489
37444
  if (!config2)
36490
37445
  return json({ error: "No LLM configured" }, 400, port);
@@ -36496,17 +37451,17 @@ ${result.stderr}`;
36496
37451
  return json({ success: false, error: e instanceof Error ? e.message : String(e) }, 500, port);
36497
37452
  }
36498
37453
  }
36499
- if (path === "/api/jobs" && method === "GET") {
37454
+ if (path2 === "/api/jobs" && method === "GET") {
36500
37455
  return json(listJobs(getDatabase3()), 200, port);
36501
37456
  }
36502
- if (path === "/api/jobs" && method === "POST") {
37457
+ if (path2 === "/api/jobs" && method === "POST") {
36503
37458
  const body = await req.json().catch(() => ({}));
36504
37459
  if (!body.name || !body.connector || !body.command || !body.cron)
36505
37460
  return json({ error: "name, connector, command, cron required" }, 400, port);
36506
37461
  const job = createJob({ name: body.name, connector: body.connector, command: body.command, args: body.args ?? [], cron: body.cron, strip: !!body.strip }, getDatabase3());
36507
37462
  return json(job, 201, port);
36508
37463
  }
36509
- const jobMatch = path.match(/^\/api\/jobs\/([^/]+)$/);
37464
+ const jobMatch = path2.match(/^\/api\/jobs\/([^/]+)$/);
36510
37465
  if (jobMatch) {
36511
37466
  const db = getDatabase3();
36512
37467
  const job = getJobByName(jobMatch[1]) ?? getDatabase3().query("SELECT * FROM connector_jobs WHERE id = ?").get(jobMatch[1]);
@@ -36528,7 +37483,7 @@ ${result.stderr}`;
36528
37483
  return json(updated, 200, port);
36529
37484
  }
36530
37485
  }
36531
- const jobRunMatch = path.match(/^\/api\/jobs\/([^/]+)\/run$/);
37486
+ const jobRunMatch = path2.match(/^\/api\/jobs\/([^/]+)\/run$/);
36532
37487
  if (jobRunMatch && method === "POST") {
36533
37488
  const db = getDatabase3();
36534
37489
  const job = getJobByName(jobRunMatch[1], db);
@@ -36537,17 +37492,17 @@ ${result.stderr}`;
36537
37492
  const result = await triggerJob(job, db);
36538
37493
  return json(result, 200, port);
36539
37494
  }
36540
- if (path === "/api/workflows" && method === "GET") {
37495
+ if (path2 === "/api/workflows" && method === "GET") {
36541
37496
  return json(listWorkflows(getDatabase3()), 200, port);
36542
37497
  }
36543
- if (path === "/api/workflows" && method === "POST") {
37498
+ if (path2 === "/api/workflows" && method === "POST") {
36544
37499
  const body = await req.json().catch(() => ({}));
36545
37500
  if (!body.name || !body.steps)
36546
37501
  return json({ error: "name and steps required" }, 400, port);
36547
37502
  const wf = createWorkflow({ name: body.name, steps: body.steps }, getDatabase3());
36548
37503
  return json(wf, 201, port);
36549
37504
  }
36550
- const wfMatch = path.match(/^\/api\/workflows\/([^/]+)$/);
37505
+ const wfMatch = path2.match(/^\/api\/workflows\/([^/]+)$/);
36551
37506
  if (wfMatch) {
36552
37507
  const db = getDatabase3();
36553
37508
  const wf = getWorkflowByName(wfMatch[1], db);
@@ -36560,7 +37515,7 @@ ${result.stderr}`;
36560
37515
  return json({ success: true }, 200, port);
36561
37516
  }
36562
37517
  }
36563
- const wfRunMatch = path.match(/^\/api\/workflows\/([^/]+)\/run$/);
37518
+ const wfRunMatch = path2.match(/^\/api\/workflows\/([^/]+)\/run$/);
36564
37519
  if (wfRunMatch && method === "POST") {
36565
37520
  const wf = getWorkflowByName(wfRunMatch[1], getDatabase3());
36566
37521
  if (!wf)
@@ -36568,10 +37523,10 @@ ${result.stderr}`;
36568
37523
  const result = await runWorkflow(wf);
36569
37524
  return json(result, 200, port);
36570
37525
  }
36571
- if (path === "/api/agents" && method === "GET") {
37526
+ if (path2 === "/api/agents" && method === "GET") {
36572
37527
  return json(listAgents(), 200, port);
36573
37528
  }
36574
- if (path === "/api/agents/register" && method === "POST") {
37529
+ if (path2 === "/api/agents/register" && method === "POST") {
36575
37530
  const body = await req.json().catch(() => ({}));
36576
37531
  const name = typeof body.name === "string" ? body.name : null;
36577
37532
  if (!name)
@@ -36585,15 +37540,15 @@ ${result.stderr}`;
36585
37540
  return json(result, 409, port);
36586
37541
  return json(result, 200, port);
36587
37542
  }
36588
- if (path.startsWith("/api/agents/") && method === "DELETE") {
36589
- const agentName = path.slice("/api/agents/".length);
37543
+ if (path2.startsWith("/api/agents/") && method === "DELETE") {
37544
+ const agentName = path2.slice("/api/agents/".length);
36590
37545
  const agent = getAgentByName(agentName);
36591
37546
  if (!agent)
36592
37547
  return json({ error: "Agent not found" }, 404, port);
36593
37548
  deleteAgent(agent.id);
36594
37549
  return json({ success: true }, 200, port);
36595
37550
  }
36596
- const rateMatch = path.match(/^\/api\/rate\/([^/]+)\/([^/]+)$/);
37551
+ const rateMatch = path2.match(/^\/api\/rate\/([^/]+)\/([^/]+)$/);
36597
37552
  if (rateMatch && method === "GET") {
36598
37553
  const [, agentId, connector] = rateMatch;
36599
37554
  const limit = parseInt(url2.searchParams.get("limit") || "60", 10);
@@ -36601,7 +37556,7 @@ ${result.stderr}`;
36601
37556
  const result = consume ? checkRateBudget(agentId, connector, limit) : getRateBudget(agentId, connector, limit);
36602
37557
  return json(result, 200, port);
36603
37558
  }
36604
- const profilesMatch = path.match(/^\/api\/connectors\/([^/]+)\/profiles$/);
37559
+ const profilesMatch = path2.match(/^\/api\/connectors\/([^/]+)\/profiles$/);
36605
37560
  if (profilesMatch && method === "GET") {
36606
37561
  const name = profilesMatch[1];
36607
37562
  if (!isValidConnectorName(name))
@@ -36623,7 +37578,7 @@ ${result.stderr}`;
36623
37578
  return json({ error: e instanceof Error ? e.message : "Failed to list profiles" }, 500, port);
36624
37579
  }
36625
37580
  }
36626
- const profileSwitchMatch = path.match(/^\/api\/connectors\/([^/]+)\/profiles\/switch$/);
37581
+ const profileSwitchMatch = path2.match(/^\/api\/connectors\/([^/]+)\/profiles\/switch$/);
36627
37582
  if (profileSwitchMatch && method === "POST") {
36628
37583
  const name = profileSwitchMatch[1];
36629
37584
  if (!isValidConnectorName(name))
@@ -36642,7 +37597,7 @@ ${result.stderr}`;
36642
37597
  return json({ error: e instanceof Error ? e.message : "Failed to switch profile" }, 500, port);
36643
37598
  }
36644
37599
  }
36645
- const profileDeleteMatch = path.match(/^\/api\/connectors\/([^/]+)\/profiles\/([^/]+)$/);
37600
+ const profileDeleteMatch = path2.match(/^\/api\/connectors\/([^/]+)\/profiles\/([^/]+)$/);
36646
37601
  if (profileDeleteMatch && method === "DELETE") {
36647
37602
  const name = profileDeleteMatch[1];
36648
37603
  const profile = profileDeleteMatch[2];
@@ -36660,7 +37615,7 @@ ${result.stderr}`;
36660
37615
  return json({ error: e instanceof Error ? e.message : "Failed to delete profile" }, 500, port);
36661
37616
  }
36662
37617
  }
36663
- if (path === "/api/export" && method === "GET") {
37618
+ if (path2 === "/api/export" && method === "GET") {
36664
37619
  try {
36665
37620
  const connectDir = getConnectorsHome();
36666
37621
  const result = {};
@@ -36710,7 +37665,7 @@ ${result.stderr}`;
36710
37665
  return json({ error: e instanceof Error ? e.message : "Failed to export credentials" }, 500, port);
36711
37666
  }
36712
37667
  }
36713
- if (path === "/api/import" && method === "POST") {
37668
+ if (path2 === "/api/import" && method === "POST") {
36714
37669
  try {
36715
37670
  const contentLength = parseInt(req.headers.get("content-length") || "0", 10);
36716
37671
  if (contentLength > MAX_BODY_SIZE)
@@ -36743,7 +37698,7 @@ ${result.stderr}`;
36743
37698
  return json({ error: e instanceof Error ? e.message : "Failed to import credentials" }, 500, port);
36744
37699
  }
36745
37700
  }
36746
- const oauthStartMatch = path.match(/^\/oauth\/([^/]+)\/start$/);
37701
+ const oauthStartMatch = path2.match(/^\/oauth\/([^/]+)\/start$/);
36747
37702
  if (oauthStartMatch && method === "GET") {
36748
37703
  const name = oauthStartMatch[1];
36749
37704
  const redirectUri = `http://localhost:${port}/oauth/${name}/callback`;
@@ -36753,7 +37708,7 @@ ${result.stderr}`;
36753
37708
  }
36754
37709
  return Response.redirect(authUrl, 302);
36755
37710
  }
36756
- const oauthCallbackMatch = path.match(/^\/oauth\/([^/]+)\/callback$/);
37711
+ const oauthCallbackMatch = path2.match(/^\/oauth\/([^/]+)\/callback$/);
36757
37712
  if (oauthCallbackMatch && method === "GET") {
36758
37713
  const name = oauthCallbackMatch[1];
36759
37714
  const code = url2.searchParams.get("code");
@@ -36787,11 +37742,14 @@ ${result.stderr}`;
36787
37742
  });
36788
37743
  }
36789
37744
  if (dashboardExists && (method === "GET" || method === "HEAD")) {
36790
- if (path !== "/") {
36791
- const filePath = join14(dashboardDir, path);
36792
- const res2 = serveStaticFile(filePath);
36793
- if (res2)
36794
- return res2;
37745
+ if (path2 !== "/") {
37746
+ const filePath = join14(dashboardDir, path2);
37747
+ const rel = relative(dashboardDir, resolve(filePath));
37748
+ if (!rel.startsWith("..") && !rel.includes(`..${sep}`) && rel !== "") {
37749
+ const res2 = serveStaticFile(filePath);
37750
+ if (res2)
37751
+ return res2;
37752
+ }
36795
37753
  }
36796
37754
  const indexPath = join14(dashboardDir, "index.html");
36797
37755
  const res = serveStaticFile(indexPath);
@@ -36814,9 +37772,11 @@ ${result.stderr}`;
36814
37772
  console.log(`Connectors Dashboard running at ${url}`);
36815
37773
  if (shouldOpen) {
36816
37774
  try {
36817
- const { exec } = await import("child_process");
36818
- const openCmd = process.platform === "darwin" ? "open" : process.platform === "win32" ? "start" : "xdg-open";
36819
- exec(`${openCmd} ${url}`);
37775
+ const { openBrowser: openBrowser2 } = await Promise.resolve().then(() => (init_open_browser(), exports_open_browser));
37776
+ const opened = await openBrowser2(url);
37777
+ if (!opened.ok) {
37778
+ console.log(`If the browser did not open, visit ${url} manually.`);
37779
+ }
36820
37780
  } catch {}
36821
37781
  }
36822
37782
  return port;