@hasna/connectors 1.4.4 → 1.4.6

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 (1193) hide show
  1. package/README.md +57 -15
  2. package/bin/index.js +2076 -1601
  3. package/bin/mcp.js +757 -344
  4. package/bin/serve.js +960 -1206
  5. package/connectors/3scribe/package.json +1 -1
  6. package/connectors/7todos/package.json +1 -1
  7. package/connectors/ably/package.json +1 -1
  8. package/connectors/abstract/package.json +1 -1
  9. package/connectors/abuselpdb/package.json +1 -1
  10. package/connectors/accelo/package.json +1 -1
  11. package/connectors/accredible/package.json +1 -1
  12. package/connectors/accurai/package.json +1 -1
  13. package/connectors/accuranker/package.json +1 -1
  14. package/connectors/acquire/package.json +1 -1
  15. package/connectors/actionnetwork/package.json +1 -1
  16. package/connectors/activecampaign/package.json +1 -1
  17. package/connectors/activetrail/package.json +1 -1
  18. package/connectors/adalo/package.json +1 -1
  19. package/connectors/adobe/package.json +1 -1
  20. package/connectors/adroll/package.json +1 -1
  21. package/connectors/affinity/package.json +1 -1
  22. package/connectors/agent/package.json +1 -1
  23. package/connectors/agilecrm/package.json +1 -1
  24. package/connectors/aiagenttool/package.json +1 -1
  25. package/connectors/airbrake/package.json +1 -1
  26. package/connectors/airnow/package.json +1 -1
  27. package/connectors/airtable/package.json +1 -1
  28. package/connectors/airtop/package.json +1 -1
  29. package/connectors/aitableai/package.json +1 -1
  30. package/connectors/alchemy/package.json +1 -1
  31. package/connectors/alerty/package.json +1 -1
  32. package/connectors/alienvault/package.json +1 -1
  33. package/connectors/alphamoon/package.json +1 -1
  34. package/connectors/alttextai/package.json +1 -1
  35. package/connectors/amadeus/package.json +1 -1
  36. package/connectors/amazon/package.json +1 -1
  37. package/connectors/amilia/package.json +1 -1
  38. package/connectors/amplitude/package.json +1 -1
  39. package/connectors/amqpsender/package.json +1 -1
  40. package/connectors/announcekit/package.json +1 -1
  41. package/connectors/anthropic/package.json +1 -1
  42. package/connectors/anyscale/package.json +1 -1
  43. package/connectors/apiary/package.json +1 -1
  44. package/connectors/apiflash/package.json +1 -1
  45. package/connectors/apitemplateio/package.json +1 -1
  46. package/connectors/apptivegrid/package.json +1 -1
  47. package/connectors/arxiv/package.json +1 -1
  48. package/connectors/asana/package.json +1 -1
  49. package/connectors/assemblyai/package.json +1 -1
  50. package/connectors/auth0/package.json +1 -1
  51. package/connectors/autom/package.json +1 -1
  52. package/connectors/automizy/package.json +1 -1
  53. package/connectors/autopilot/package.json +1 -1
  54. package/connectors/aws/package.json +2 -2
  55. package/connectors/awscognito/package.json +1 -1
  56. package/connectors/azureaisearchvectorstore/package.json +1 -1
  57. package/connectors/azurecosmosdb/package.json +1 -1
  58. package/connectors/azureopenaichatmodel/package.json +1 -1
  59. package/connectors/azurestorage/package.json +1 -1
  60. package/connectors/badgermaps/package.json +1 -1
  61. package/connectors/bamboohr/package.json +1 -1
  62. package/connectors/bandwidth/package.json +1 -1
  63. package/connectors/bannerbear/package.json +1 -1
  64. package/connectors/baserow/package.json +1 -1
  65. package/connectors/baseten/package.json +1 -1
  66. package/connectors/beeminder/package.json +1 -1
  67. package/connectors/benchmarkemail/package.json +1 -1
  68. package/connectors/betterproposals/package.json +1 -1
  69. package/connectors/bigcartel/package.json +1 -1
  70. package/connectors/bigdatacloud/package.json +1 -1
  71. package/connectors/bigml/package.json +1 -1
  72. package/connectors/bitly/package.json +1 -1
  73. package/connectors/bitrix24/package.json +1 -1
  74. package/connectors/bitwarden/package.json +1 -1
  75. package/connectors/blaze/package.json +1 -1
  76. package/connectors/blockchainexchange/package.json +1 -1
  77. package/connectors/bloock/package.json +1 -1
  78. package/connectors/bluesky/package.json +1 -1
  79. package/connectors/bot9/package.json +1 -1
  80. package/connectors/botbaba/package.json +1 -1
  81. package/connectors/botifier/package.json +1 -1
  82. package/connectors/botiumbox/package.json +1 -1
  83. package/connectors/botsonic/package.json +1 -1
  84. package/connectors/botstar/package.json +1 -1
  85. package/connectors/box/package.json +1 -1
  86. package/connectors/brainpodai/package.json +1 -1
  87. package/connectors/brandblast/package.json +1 -1
  88. package/connectors/brandfetch/package.json +1 -1
  89. package/connectors/brandmentions/package.json +1 -1
  90. package/connectors/brandsight/package.json +1 -1
  91. package/connectors/breezyhr/package.json +1 -1
  92. package/connectors/brevo/package.json +1 -1
  93. package/connectors/brex/package.json +1 -1
  94. package/connectors/browseai/package.json +1 -1
  95. package/connectors/browserless/package.json +1 -1
  96. package/connectors/browserstack/package.json +1 -1
  97. package/connectors/browseruse/package.json +1 -1
  98. package/connectors/bubble/package.json +1 -1
  99. package/connectors/bugbug/package.json +1 -1
  100. package/connectors/bugfender/package.json +1 -1
  101. package/connectors/bugherd/package.json +1 -1
  102. package/connectors/bugpilot/package.json +1 -1
  103. package/connectors/bugreplay/package.json +1 -1
  104. package/connectors/bugshot/package.json +1 -1
  105. package/connectors/buildkite/package.json +1 -1
  106. package/connectors/bunnycdn/package.json +1 -1
  107. package/connectors/calendarhero/package.json +1 -1
  108. package/connectors/calendly/package.json +1 -1
  109. package/connectors/canvas/package.json +1 -1
  110. package/connectors/capsule/package.json +1 -1
  111. package/connectors/carbonblack/package.json +1 -1
  112. package/connectors/cerebras/package.json +1 -1
  113. package/connectors/chaindesk/package.json +1 -1
  114. package/connectors/chargebee/package.json +1 -1
  115. package/connectors/chargeover/package.json +1 -1
  116. package/connectors/chargify/package.json +1 -1
  117. package/connectors/chatbase/package.json +1 -1
  118. package/connectors/chatling/package.json +1 -1
  119. package/connectors/chatmasters/package.json +1 -1
  120. package/connectors/chatrace/package.json +1 -1
  121. package/connectors/chatsonic/package.json +1 -1
  122. package/connectors/chekhub/package.json +1 -1
  123. package/connectors/chromavectorstore/package.json +1 -1
  124. package/connectors/circleci/package.json +1 -1
  125. package/connectors/ciscomeraki/package.json +1 -1
  126. package/connectors/ciscosecureendpoint/package.json +1 -1
  127. package/connectors/ciscoumbrella/package.json +1 -1
  128. package/connectors/ciscowebex/package.json +1 -1
  129. package/connectors/citrixadc/package.json +1 -1
  130. package/connectors/clappia/package.json +1 -1
  131. package/connectors/clarifai/package.json +1 -1
  132. package/connectors/clearbit/package.json +1 -1
  133. package/connectors/cleverreach/package.json +1 -1
  134. package/connectors/clickbank/package.json +2 -2
  135. package/connectors/clicksendsms/package.json +1 -1
  136. package/connectors/clickup/package.json +1 -1
  137. package/connectors/clockify/package.json +1 -1
  138. package/connectors/cloozo/package.json +1 -1
  139. package/connectors/cloud66/package.json +1 -1
  140. package/connectors/cloudboost/package.json +1 -1
  141. package/connectors/cloudconvert/package.json +1 -1
  142. package/connectors/cloudflare/package.json +1 -1
  143. package/connectors/cloudflare-workers/package.json +1 -1
  144. package/connectors/cloudlayer/package.json +1 -1
  145. package/connectors/cloudshare/package.json +1 -1
  146. package/connectors/cloze/package.json +1 -1
  147. package/connectors/cockpit/package.json +1 -1
  148. package/connectors/coda/package.json +1 -1
  149. package/connectors/codeclimate/package.json +1 -1
  150. package/connectors/codefresh/package.json +1 -1
  151. package/connectors/cody/package.json +1 -1
  152. package/connectors/cohere/package.json +1 -1
  153. package/connectors/coinbase/package.json +1 -1
  154. package/connectors/coingecko/package.json +1 -1
  155. package/connectors/collegefootballdata/package.json +1 -1
  156. package/connectors/configcat/package.json +1 -1
  157. package/connectors/confluence/package.json +1 -1
  158. package/connectors/confluent/package.json +1 -1
  159. package/connectors/connect-twocaptcha/package.json +1 -1
  160. package/connectors/connect-voxel-energy/package.json +1 -1
  161. package/connectors/contactout/package.json +1 -1
  162. package/connectors/contentful/package.json +1 -1
  163. package/connectors/convertapi/package.json +1 -1
  164. package/connectors/convertkit/package.json +1 -1
  165. package/connectors/convi/package.json +1 -1
  166. package/connectors/copper/package.json +1 -1
  167. package/connectors/copyai/package.json +1 -1
  168. package/connectors/corsizio/package.json +1 -1
  169. package/connectors/cortex/package.json +1 -1
  170. package/connectors/cradlai/package.json +1 -1
  171. package/connectors/craftdraft/package.json +1 -1
  172. package/connectors/cratedb/package.json +1 -1
  173. package/connectors/crisp/package.json +1 -1
  174. package/connectors/cronly/package.json +1 -1
  175. package/connectors/crossmint/package.json +1 -1
  176. package/connectors/crowddev/package.json +1 -1
  177. package/connectors/crowdin/package.json +1 -1
  178. package/connectors/crowdpower/package.json +1 -1
  179. package/connectors/crowdstrike/package.json +1 -1
  180. package/connectors/cryptolens/package.json +1 -1
  181. package/connectors/currents/package.json +1 -1
  182. package/connectors/customerio/package.json +1 -1
  183. package/connectors/customeriq/package.json +1 -1
  184. package/connectors/daffy/package.json +1 -1
  185. package/connectors/danteai/package.json +1 -1
  186. package/connectors/darkskyapi/package.json +1 -1
  187. package/connectors/dasha/package.json +1 -1
  188. package/connectors/databox/package.json +1 -1
  189. package/connectors/databricks/package.json +1 -1
  190. package/connectors/datadog/package.json +1 -1
  191. package/connectors/datarobot/package.json +1 -1
  192. package/connectors/datasoap/package.json +1 -1
  193. package/connectors/datumbox/package.json +1 -1
  194. package/connectors/dayschedule/package.json +1 -1
  195. package/connectors/deepgram/package.json +1 -1
  196. package/connectors/deepinfra/package.json +1 -1
  197. package/connectors/deepl/package.json +1 -1
  198. package/connectors/deepseek/package.json +1 -1
  199. package/connectors/demio/package.json +1 -1
  200. package/connectors/descript/package.json +1 -1
  201. package/connectors/detrack/package.json +1 -1
  202. package/connectors/devcycle/package.json +1 -1
  203. package/connectors/dhl/package.json +1 -1
  204. package/connectors/dialzara/package.json +1 -1
  205. package/connectors/diddoai/package.json +1 -1
  206. package/connectors/diffy/package.json +1 -1
  207. package/connectors/digicert/package.json +1 -1
  208. package/connectors/digitalocean/package.json +1 -1
  209. package/connectors/discord/package.json +1 -1
  210. package/connectors/discourse/package.json +1 -1
  211. package/connectors/disqus/package.json +1 -1
  212. package/connectors/dockcerts/package.json +1 -1
  213. package/connectors/docker/package.json +1 -1
  214. package/connectors/docparser/package.json +1 -1
  215. package/connectors/docsbotai/package.json +1 -1
  216. package/connectors/docupilot/package.json +1 -1
  217. package/connectors/docusign/package.json +1 -1
  218. package/connectors/docuwriter/package.json +1 -1
  219. package/connectors/dokan/package.json +1 -1
  220. package/connectors/domo/package.json +1 -1
  221. package/connectors/draftable/package.json +1 -1
  222. package/connectors/drift/package.json +1 -1
  223. package/connectors/dropbox/package.json +1 -1
  224. package/connectors/dropcontact/package.json +1 -1
  225. package/connectors/droxy/package.json +1 -1
  226. package/connectors/dynatrace/package.json +1 -1
  227. package/connectors/e2b/package.json +1 -1
  228. package/connectors/eartho/package.json +1 -1
  229. package/connectors/easyship/package.json +1 -1
  230. package/connectors/echowin/package.json +1 -1
  231. package/connectors/ecwid/package.json +1 -1
  232. package/connectors/edenai/package.json +1 -1
  233. package/connectors/egoi/package.json +1 -1
  234. package/connectors/elasticsearch/package.json +1 -1
  235. package/connectors/elasticsecurity/package.json +1 -1
  236. package/connectors/elevenlabs/package.json +1 -1
  237. package/connectors/elmah/package.json +1 -1
  238. package/connectors/embedai/package.json +1 -1
  239. package/connectors/emelia/package.json +1 -1
  240. package/connectors/empsing/package.json +1 -1
  241. package/connectors/engati/package.json +1 -1
  242. package/connectors/enormail/package.json +1 -1
  243. package/connectors/enterpret/package.json +1 -1
  244. package/connectors/envoy/package.json +1 -1
  245. package/connectors/epo/package.json +1 -1
  246. package/connectors/erpnext/package.json +1 -1
  247. package/connectors/esendex/package.json +1 -1
  248. package/connectors/evervault/package.json +1 -1
  249. package/connectors/evolphinzoom/package.json +1 -1
  250. package/connectors/exa/package.json +1 -1
  251. package/connectors/f5bigip/package.json +1 -1
  252. package/connectors/fal/package.json +1 -1
  253. package/connectors/faraday/package.json +1 -1
  254. package/connectors/faros/package.json +1 -1
  255. package/connectors/fastbots/package.json +1 -1
  256. package/connectors/fathom/package.json +1 -1
  257. package/connectors/figma/package.json +1 -1
  258. package/connectors/filemaker/package.json +1 -1
  259. package/connectors/filescan/package.json +1 -1
  260. package/connectors/firecrawl/README.md +10 -0
  261. package/connectors/firecrawl/package.json +1 -1
  262. package/connectors/firecrawl/src/cli/extraction.test.ts +46 -0
  263. package/connectors/firecrawl/src/cli/extraction.ts +36 -0
  264. package/connectors/firecrawl/src/cli/index.ts +5 -0
  265. package/connectors/fireworks/package.json +1 -1
  266. package/connectors/firmao/package.json +1 -1
  267. package/connectors/fitbit/package.json +1 -1
  268. package/connectors/flagship/package.json +1 -1
  269. package/connectors/float/package.json +1 -1
  270. package/connectors/flotiq/package.json +1 -1
  271. package/connectors/flow/package.json +1 -1
  272. package/connectors/fluentsupport/package.json +1 -1
  273. package/connectors/focuster/package.json +1 -1
  274. package/connectors/formcarry/package.json +1 -1
  275. package/connectors/formdesk/package.json +1 -1
  276. package/connectors/formsite/package.json +1 -1
  277. package/connectors/formsonfire/package.json +1 -1
  278. package/connectors/formstackdocuments/package.json +1 -1
  279. package/connectors/fortinetfortigate/package.json +1 -1
  280. package/connectors/foursquare/package.json +1 -1
  281. package/connectors/freedictionary/package.json +1 -1
  282. package/connectors/freshdesk/package.json +1 -1
  283. package/connectors/freshping/package.json +1 -1
  284. package/connectors/freshservice/package.json +1 -1
  285. package/connectors/freshworkscrm/package.json +1 -1
  286. package/connectors/fullcontact/package.json +1 -1
  287. package/connectors/fusioo/package.json +1 -1
  288. package/connectors/gali/package.json +1 -1
  289. package/connectors/gatekeeper/package.json +1 -1
  290. package/connectors/genderapi/package.json +1 -1
  291. package/connectors/getresponse/package.json +1 -1
  292. package/connectors/getscreenshot/package.json +1 -1
  293. package/connectors/ghost/package.json +1 -1
  294. package/connectors/giphy/package.json +1 -1
  295. package/connectors/gitea/package.json +1 -1
  296. package/connectors/github/package.json +1 -1
  297. package/connectors/gitlab/package.json +1 -1
  298. package/connectors/gleap/package.json +1 -1
  299. package/connectors/gmail/package.json +1 -1
  300. package/connectors/gocanvas/package.json +1 -1
  301. package/connectors/godaddy/package.json +1 -1
  302. package/connectors/gong/package.json +1 -1
  303. package/connectors/google/package.json +1 -1
  304. package/connectors/googleads/package.json +1 -1
  305. package/connectors/googleanalytics/package.json +1 -1
  306. package/connectors/googlebigquery/package.json +1 -1
  307. package/connectors/googlebooks/package.json +1 -1
  308. package/connectors/googlebusinessprofile/package.json +1 -1
  309. package/connectors/googlecalendar/package.json +1 -1
  310. package/connectors/googlechat/package.json +1 -1
  311. package/connectors/googlecloud/package.json +1 -1
  312. package/connectors/googlecontacts/package.json +1 -1
  313. package/connectors/googledocs/package.json +1 -1
  314. package/connectors/googledrive/package.json +1 -1
  315. package/connectors/googleforms/package.json +1 -1
  316. package/connectors/googlegemini/package.json +1 -1
  317. package/connectors/googlemaps/package.json +1 -1
  318. package/connectors/googleperspective/package.json +1 -1
  319. package/connectors/googlephotos/package.json +1 -1
  320. package/connectors/googlesheets/package.json +1 -1
  321. package/connectors/googleslides/package.json +1 -1
  322. package/connectors/googletables/package.json +1 -1
  323. package/connectors/googletasks/package.json +1 -1
  324. package/connectors/googletranslate/package.json +1 -1
  325. package/connectors/googlevertexai/package.json +1 -1
  326. package/connectors/gotify/package.json +1 -1
  327. package/connectors/gotowebinar/package.json +1 -1
  328. package/connectors/gptea/package.json +1 -1
  329. package/connectors/grafana/package.json +1 -1
  330. package/connectors/grain/package.json +1 -1
  331. package/connectors/gravityforms/package.json +1 -1
  332. package/connectors/grist/package.json +1 -1
  333. package/connectors/groq/package.json +1 -1
  334. package/connectors/growbots/package.json +1 -1
  335. package/connectors/gumroad/package.json +1 -1
  336. package/connectors/gupshup/package.json +1 -1
  337. package/connectors/guru/package.json +1 -1
  338. package/connectors/hackernews/package.json +1 -1
  339. package/connectors/halopsa/package.json +1 -1
  340. package/connectors/handwrytten/package.json +1 -1
  341. package/connectors/hansei/package.json +1 -1
  342. package/connectors/harrypotterapi/package.json +1 -1
  343. package/connectors/harvest/package.json +1 -1
  344. package/connectors/headlesstesting/package.json +1 -1
  345. package/connectors/hedra/package.json +1 -1
  346. package/connectors/helcim/package.json +1 -1
  347. package/connectors/hellosign/package.json +1 -1
  348. package/connectors/helpscout/package.json +1 -1
  349. package/connectors/heygen/package.json +1 -1
  350. package/connectors/heysummit/package.json +1 -1
  351. package/connectors/highlevel/package.json +1 -1
  352. package/connectors/homeassistant/package.json +1 -1
  353. package/connectors/hubplanner/package.json +1 -1
  354. package/connectors/hubspot/package.json +1 -1
  355. package/connectors/huggingface/package.json +1 -1
  356. package/connectors/humanticai/package.json +1 -1
  357. package/connectors/hunter/package.json +1 -1
  358. package/connectors/hybridanalysis/package.json +1 -1
  359. package/connectors/iauditorbysafetyculture/package.json +1 -1
  360. package/connectors/icons8/package.json +1 -1
  361. package/connectors/idealpostcodes/package.json +1 -1
  362. package/connectors/idealspot/package.json +1 -1
  363. package/connectors/ideogram/package.json +1 -1
  364. package/connectors/ideta/package.json +1 -1
  365. package/connectors/imessage/package.json +1 -1
  366. package/connectors/imgbb/package.json +1 -1
  367. package/connectors/imgur/package.json +1 -1
  368. package/connectors/impervawaf/package.json +1 -1
  369. package/connectors/impira/package.json +1 -1
  370. package/connectors/industryselect/package.json +1 -1
  371. package/connectors/influxdbcloud/package.json +1 -1
  372. package/connectors/infolobby/package.json +1 -1
  373. package/connectors/instabot/package.json +1 -1
  374. package/connectors/instabug/package.json +1 -1
  375. package/connectors/intakeq/package.json +1 -1
  376. package/connectors/intercom/package.json +1 -1
  377. package/connectors/invoiced/package.json +1 -1
  378. package/connectors/invoiceninja/package.json +1 -1
  379. package/connectors/ip2location/package.json +1 -1
  380. package/connectors/ipinfo/package.json +1 -1
  381. package/connectors/ipregistry/package.json +1 -1
  382. package/connectors/irisdfir/package.json +1 -1
  383. package/connectors/isn/package.json +1 -1
  384. package/connectors/iterable/package.json +1 -1
  385. package/connectors/jama/package.json +1 -1
  386. package/connectors/jasper/package.json +1 -1
  387. package/connectors/jenkins/package.json +1 -1
  388. package/connectors/jinaai/package.json +1 -1
  389. package/connectors/jira/package.json +1 -1
  390. package/connectors/kadoa/package.json +1 -1
  391. package/connectors/kafka/package.json +1 -1
  392. package/connectors/kaggle/package.json +1 -1
  393. package/connectors/kanbantool/package.json +1 -1
  394. package/connectors/karbon/package.json +1 -1
  395. package/connectors/keap/package.json +1 -1
  396. package/connectors/keygen/package.json +1 -1
  397. package/connectors/keyzy/package.json +1 -1
  398. package/connectors/kibana/package.json +1 -1
  399. package/connectors/kitemaker/package.json +1 -1
  400. package/connectors/klaviyo/package.json +1 -1
  401. package/connectors/klazify/package.json +1 -1
  402. package/connectors/kling/package.json +1 -1
  403. package/connectors/knack/package.json +1 -1
  404. package/connectors/knowbe4/package.json +1 -1
  405. package/connectors/kobotoolbox/package.json +1 -1
  406. package/connectors/kraftful/package.json +1 -1
  407. package/connectors/lagrowthmachine/package.json +1 -1
  408. package/connectors/lambdatest/package.json +1 -1
  409. package/connectors/landbot/package.json +1 -1
  410. package/connectors/laposta/package.json +1 -1
  411. package/connectors/launch27/package.json +1 -1
  412. package/connectors/launchdarkly/package.json +1 -1
  413. package/connectors/ldap/package.json +1 -1
  414. package/connectors/leadboxer/package.json +1 -1
  415. package/connectors/leadpops/package.json +1 -1
  416. package/connectors/lemlist/package.json +1 -1
  417. package/connectors/lemonsqueezy/package.json +1 -1
  418. package/connectors/leonardo/package.json +1 -1
  419. package/connectors/lepton/package.json +1 -1
  420. package/connectors/letsenhance/package.json +1 -1
  421. package/connectors/libraria/package.json +1 -1
  422. package/connectors/lighthouse/package.json +1 -1
  423. package/connectors/limego/package.json +1 -1
  424. package/connectors/line/package.json +1 -1
  425. package/connectors/linear/package.json +1 -1
  426. package/connectors/lingvanex/package.json +1 -1
  427. package/connectors/linkedin/package.json +1 -1
  428. package/connectors/linkish/package.json +1 -1
  429. package/connectors/linode/package.json +1 -1
  430. package/connectors/liveagent/package.json +1 -1
  431. package/connectors/localazy/package.json +1 -1
  432. package/connectors/loginradius/package.json +1 -1
  433. package/connectors/lokalise/package.json +1 -1
  434. package/connectors/lonescale/package.json +1 -1
  435. package/connectors/lucidchart/package.json +1 -1
  436. package/connectors/luma/package.json +1 -1
  437. package/connectors/magento2/package.json +1 -1
  438. package/connectors/mailcheck/package.json +1 -1
  439. package/connectors/mailchimp/package.json +1 -1
  440. package/connectors/mailerlite/package.json +1 -1
  441. package/connectors/mailersend/package.json +1 -1
  442. package/connectors/mailgun/package.json +1 -1
  443. package/connectors/mailify/package.json +1 -1
  444. package/connectors/mailjet/package.json +1 -1
  445. package/connectors/mailmodo/package.json +1 -1
  446. package/connectors/malcore/package.json +1 -1
  447. package/connectors/mandrill/package.json +1 -1
  448. package/connectors/marcomrobot/package.json +1 -1
  449. package/connectors/marketingmasterio/package.json +1 -1
  450. package/connectors/marketplacer/package.json +1 -1
  451. package/connectors/marketstack/package.json +1 -1
  452. package/connectors/maropost/package.json +1 -1
  453. package/connectors/mastodon/package.json +1 -1
  454. package/connectors/matrix/package.json +1 -1
  455. package/connectors/mattermost/package.json +1 -1
  456. package/connectors/mautic/package.json +1 -1
  457. package/connectors/mav/package.json +1 -1
  458. package/connectors/maverick/package.json +1 -1
  459. package/connectors/medium/package.json +1 -1
  460. package/connectors/mem/package.json +1 -1
  461. package/connectors/mercury/package.json +1 -1
  462. package/connectors/messagebird/package.json +1 -1
  463. package/connectors/meta/package.json +1 -1
  464. package/connectors/metabase/package.json +1 -1
  465. package/connectors/mews/package.json +1 -1
  466. package/connectors/microsoftazuremonitor/package.json +1 -1
  467. package/connectors/microsoftdynamics365businesscentralapi/package.json +1 -1
  468. package/connectors/microsoftdynamicscrm/package.json +1 -1
  469. package/connectors/microsoftentraid/package.json +1 -1
  470. package/connectors/microsoftentraidazureactivedirectory/package.json +1 -1
  471. package/connectors/microsoftexcel/package.json +1 -1
  472. package/connectors/microsoftgraphsecurity/package.json +1 -1
  473. package/connectors/microsoftonedrive/package.json +1 -1
  474. package/connectors/microsoftoutlook/package.json +1 -1
  475. package/connectors/microsoftsharepoint/package.json +1 -1
  476. package/connectors/microsoftsql/package.json +1 -1
  477. package/connectors/microsoftteams/package.json +1 -1
  478. package/connectors/microsoftteamsadmin/package.json +1 -1
  479. package/connectors/microsofttodo/package.json +1 -1
  480. package/connectors/midjourney/package.json +1 -1
  481. package/connectors/miestro/package.json +1 -1
  482. package/connectors/mindee/package.json +1 -1
  483. package/connectors/minimax/package.json +1 -1
  484. package/connectors/miro/package.json +1 -1
  485. package/connectors/misp/package.json +1 -1
  486. package/connectors/missive/package.json +1 -1
  487. package/connectors/mist/package.json +1 -1
  488. package/connectors/mistral/package.json +1 -1
  489. package/connectors/mixpanel/package.json +1 -1
  490. package/connectors/mocean/package.json +1 -1
  491. package/connectors/modal/package.json +1 -1
  492. package/connectors/monday/package.json +1 -1
  493. package/connectors/mongodb/package.json +1 -1
  494. package/connectors/monicacrm/package.json +1 -1
  495. package/connectors/moonclerk/package.json +1 -1
  496. package/connectors/moonmail/package.json +1 -1
  497. package/connectors/morph/package.json +1 -1
  498. package/connectors/mqtt/package.json +1 -1
  499. package/connectors/msg91/package.json +1 -1
  500. package/connectors/mubert/package.json +1 -1
  501. package/connectors/murf/package.json +1 -1
  502. package/connectors/mux/package.json +1 -1
  503. package/connectors/mxtoolbox/package.json +1 -1
  504. package/connectors/myaskai/package.json +1 -1
  505. package/connectors/myphoner/package.json +1 -1
  506. package/connectors/mysql/package.json +1 -1
  507. package/connectors/namecheap/package.json +1 -1
  508. package/connectors/nanonetsocr/package.json +1 -1
  509. package/connectors/nasa/package.json +1 -1
  510. package/connectors/ncscale/package.json +1 -1
  511. package/connectors/netlify/package.json +1 -1
  512. package/connectors/nextcloud/package.json +1 -1
  513. package/connectors/nightfallai/package.json +1 -1
  514. package/connectors/ninox/package.json +1 -1
  515. package/connectors/nmkr/package.json +1 -1
  516. package/connectors/nocodb/package.json +1 -1
  517. package/connectors/notion/package.json +1 -1
  518. package/connectors/npm/package.json +1 -1
  519. package/connectors/nuclia/package.json +1 -1
  520. package/connectors/nusiiproposals/package.json +1 -1
  521. package/connectors/nyckel/package.json +1 -1
  522. package/connectors/nyota/package.json +1 -1
  523. package/connectors/occasion/package.json +1 -1
  524. package/connectors/ocrspace/package.json +1 -1
  525. package/connectors/octoai/package.json +1 -1
  526. package/connectors/odoo/package.json +1 -1
  527. package/connectors/offalerts/package.json +1 -1
  528. package/connectors/okta/package.json +1 -1
  529. package/connectors/ollama/package.json +1 -1
  530. package/connectors/omeda/package.json +1 -1
  531. package/connectors/omniconvert/package.json +1 -1
  532. package/connectors/omnimind/package.json +1 -1
  533. package/connectors/on2air/package.json +1 -1
  534. package/connectors/oneai/package.json +1 -1
  535. package/connectors/onesimpleapi/package.json +1 -1
  536. package/connectors/onfleet/package.json +1 -1
  537. package/connectors/openai/AGENTS.md +0 -1
  538. package/connectors/openai/README.md +3 -3
  539. package/connectors/openai/package.json +3 -2
  540. package/connectors/opencti/package.json +1 -1
  541. package/connectors/openthesaurus/package.json +1 -1
  542. package/connectors/openweathermap/package.json +1 -1
  543. package/connectors/opnformerlyomise/package.json +1 -1
  544. package/connectors/oracledatabase/package.json +1 -1
  545. package/connectors/orbit/package.json +1 -1
  546. package/connectors/orderdesk/package.json +1 -1
  547. package/connectors/ortto/package.json +1 -1
  548. package/connectors/oura/package.json +1 -1
  549. package/connectors/paddle/package.json +1 -1
  550. package/connectors/pagerduty/package.json +1 -1
  551. package/connectors/pandadoc/package.json +1 -1
  552. package/connectors/paperform/package.json +1 -1
  553. package/connectors/papyrs/package.json +1 -1
  554. package/connectors/parsehub/package.json +1 -1
  555. package/connectors/parseprompt/package.json +1 -1
  556. package/connectors/passcreator/package.json +1 -1
  557. package/connectors/passslot/package.json +1 -1
  558. package/connectors/patentsview/package.json +1 -1
  559. package/connectors/patreon/package.json +1 -1
  560. package/connectors/paymo/package.json +1 -1
  561. package/connectors/paypal/package.json +1 -1
  562. package/connectors/peekalink/package.json +1 -1
  563. package/connectors/perplexity/package.json +1 -1
  564. package/connectors/persio/package.json +1 -1
  565. package/connectors/personalai/package.json +1 -1
  566. package/connectors/phantombuster/package.json +1 -1
  567. package/connectors/philipshue/package.json +1 -1
  568. package/connectors/phrase/package.json +1 -1
  569. package/connectors/pika/package.json +1 -1
  570. package/connectors/pinata/package.json +1 -1
  571. package/connectors/pinboard/package.json +1 -1
  572. package/connectors/pinterest/package.json +1 -1
  573. package/connectors/pipedrive/package.json +1 -1
  574. package/connectors/pipefy/package.json +1 -1
  575. package/connectors/pirateweather/package.json +1 -1
  576. package/connectors/pitchly/package.json +1 -1
  577. package/connectors/pivotaltracker/package.json +1 -1
  578. package/connectors/plaid/package.json +1 -1
  579. package/connectors/planviewleankit/package.json +1 -1
  580. package/connectors/planyoonlinebooking/package.json +1 -1
  581. package/connectors/platformly/package.json +1 -1
  582. package/connectors/playht/package.json +1 -1
  583. package/connectors/plecto/package.json +1 -1
  584. package/connectors/plivo/package.json +1 -1
  585. package/connectors/postgres/package.json +1 -1
  586. package/connectors/posthog/package.json +1 -1
  587. package/connectors/practitest/package.json +1 -1
  588. package/connectors/predisai/package.json +1 -1
  589. package/connectors/prodia/package.json +1 -1
  590. package/connectors/producthunt/package.json +1 -1
  591. package/connectors/profitwell/package.json +1 -1
  592. package/connectors/projectbubbleproprofsproject/package.json +1 -1
  593. package/connectors/prompthub/package.json +1 -1
  594. package/connectors/prospeai/package.json +1 -1
  595. package/connectors/pulsetic/package.json +1 -1
  596. package/connectors/pushbullet/package.json +1 -1
  597. package/connectors/pushcut/package.json +1 -1
  598. package/connectors/pusher/package.json +1 -1
  599. package/connectors/pushover/package.json +1 -1
  600. package/connectors/qradar/package.json +1 -1
  601. package/connectors/qualaroo/package.json +1 -1
  602. package/connectors/qualys/package.json +1 -1
  603. package/connectors/quentn/package.json +1 -1
  604. package/connectors/questdb/package.json +1 -1
  605. package/connectors/quickbase/package.json +1 -1
  606. package/connectors/quickbooksonline/package.json +1 -1
  607. package/connectors/quickchart/package.json +1 -1
  608. package/connectors/quintadb/package.json +1 -1
  609. package/connectors/quo/package.json +1 -1
  610. package/connectors/rabbitmq/package.json +1 -1
  611. package/connectors/radar/package.json +1 -1
  612. package/connectors/raindrop/package.json +1 -1
  613. package/connectors/rapid7insightvm/package.json +1 -1
  614. package/connectors/raventools/package.json +1 -1
  615. package/connectors/rawgvideogamesdatabase/package.json +1 -1
  616. package/connectors/rdstationcrm/package.json +1 -1
  617. package/connectors/readai/package.json +1 -1
  618. package/connectors/realphonevalidation/package.json +1 -1
  619. package/connectors/recharge/package.json +1 -1
  620. package/connectors/recordedfuture/package.json +1 -1
  621. package/connectors/redash/package.json +1 -1
  622. package/connectors/reddit/package.json +1 -1
  623. package/connectors/redis/package.json +1 -1
  624. package/connectors/reducto/package.json +1 -1
  625. package/connectors/relevanceai/package.json +1 -1
  626. package/connectors/relinkurlshortener/package.json +1 -1
  627. package/connectors/relysia/package.json +1 -1
  628. package/connectors/replicate/package.json +1 -1
  629. package/connectors/reply/package.json +1 -1
  630. package/connectors/replyio/package.json +1 -1
  631. package/connectors/resemble/package.json +1 -1
  632. package/connectors/resend/package.json +1 -1
  633. package/connectors/retable/package.json +1 -1
  634. package/connectors/reversecontact/package.json +1 -1
  635. package/connectors/revolut/package.json +1 -1
  636. package/connectors/rewardful/package.json +1 -1
  637. package/connectors/ritekit/package.json +1 -1
  638. package/connectors/roboflow/package.json +1 -1
  639. package/connectors/robolytix/package.json +1 -1
  640. package/connectors/roboresponseai/package.json +1 -1
  641. package/connectors/rocketchat/package.json +1 -1
  642. package/connectors/rollbar/package.json +1 -1
  643. package/connectors/rootly/package.json +1 -1
  644. package/connectors/route4me/package.json +1 -1
  645. package/connectors/rundeck/package.json +1 -1
  646. package/connectors/runpod/package.json +1 -1
  647. package/connectors/runway/package.json +1 -1
  648. package/connectors/s3/package.json +1 -1
  649. package/connectors/salesforce/package.json +1 -1
  650. package/connectors/salesmaa/package.json +1 -1
  651. package/connectors/salesmate/package.json +1 -1
  652. package/connectors/salesmsg/package.json +1 -1
  653. package/connectors/salesrocks/package.json +1 -1
  654. package/connectors/salessimplify/package.json +1 -1
  655. package/connectors/samsungsmartthings/package.json +1 -1
  656. package/connectors/scrapeitcloud/package.json +1 -1
  657. package/connectors/scrapeninja/package.json +1 -1
  658. package/connectors/screenshotone/package.json +1 -1
  659. package/connectors/seamlessai/package.json +1 -1
  660. package/connectors/searchandsave/package.json +1 -1
  661. package/connectors/searxng/package.json +1 -1
  662. package/connectors/seatable/package.json +1 -1
  663. package/connectors/securityscorecard/package.json +1 -1
  664. package/connectors/sedo/package.json +1 -1
  665. package/connectors/segment/package.json +1 -1
  666. package/connectors/sekoia/package.json +1 -1
  667. package/connectors/sellix/package.json +1 -1
  668. package/connectors/semblyai/package.json +1 -1
  669. package/connectors/sendgrid/package.json +1 -1
  670. package/connectors/sendy/package.json +1 -1
  671. package/connectors/sentry/package.json +1 -1
  672. package/connectors/servicenow/package.json +1 -1
  673. package/connectors/shadcn/package.json +1 -1
  674. package/connectors/sharlyai/package.json +1 -1
  675. package/connectors/shiphero/package.json +1 -1
  676. package/connectors/shipstation/package.json +1 -1
  677. package/connectors/shopify/package.json +1 -1
  678. package/connectors/shortio/package.json +1 -1
  679. package/connectors/shuffler/package.json +1 -1
  680. package/connectors/sierrainteractive/package.json +1 -1
  681. package/connectors/sifter/package.json +1 -1
  682. package/connectors/signaturit/package.json +1 -1
  683. package/connectors/signl4/package.json +1 -1
  684. package/connectors/simpleem/package.json +1 -1
  685. package/connectors/simplehash/package.json +1 -1
  686. package/connectors/simplekpi/package.json +1 -1
  687. package/connectors/simplelocalize/package.json +1 -1
  688. package/connectors/simplero/package.json +1 -1
  689. package/connectors/simpletexting/package.json +1 -1
  690. package/connectors/sitecreatorio/package.json +1 -1
  691. package/connectors/sitespeakai/package.json +1 -1
  692. package/connectors/slack/package.json +1 -1
  693. package/connectors/smaily/package.json +1 -1
  694. package/connectors/smartreach/package.json +1 -1
  695. package/connectors/smartrecruiters/package.json +1 -1
  696. package/connectors/smartsheet/package.json +1 -1
  697. package/connectors/smartsuite/package.json +1 -1
  698. package/connectors/smile-io/package.json +1 -1
  699. package/connectors/smol-machines/package.json +1 -1
  700. package/connectors/sms77/package.json +1 -1
  701. package/connectors/smsit/package.json +1 -1
  702. package/connectors/smsmagic/package.json +1 -1
  703. package/connectors/smtp2go/package.json +1 -1
  704. package/connectors/snap/package.json +1 -1
  705. package/connectors/snapdocs/package.json +1 -1
  706. package/connectors/snatchbot/package.json +1 -1
  707. package/connectors/snipcart/package.json +1 -1
  708. package/connectors/snov-io/package.json +1 -1
  709. package/connectors/snowflake/package.json +1 -1
  710. package/connectors/solcast/package.json +1 -1
  711. package/connectors/solvedata/package.json +1 -1
  712. package/connectors/sonarqube/package.json +1 -1
  713. package/connectors/sparkpost/package.json +1 -1
  714. package/connectors/speakeasy-api/package.json +1 -1
  715. package/connectors/specific/package.json +1 -1
  716. package/connectors/specter/package.json +1 -1
  717. package/connectors/speechify/package.json +1 -1
  718. package/connectors/spike/package.json +1 -1
  719. package/connectors/split-in-batches/package.json +1 -1
  720. package/connectors/split-io/package.json +1 -1
  721. package/connectors/splunk/package.json +1 -1
  722. package/connectors/splunk-cloud/package.json +1 -1
  723. package/connectors/spondyr/package.json +1 -1
  724. package/connectors/sponge/package.json +1 -1
  725. package/connectors/spontit/package.json +1 -1
  726. package/connectors/sportsdata/package.json +1 -1
  727. package/connectors/spotify/package.json +1 -1
  728. package/connectors/spotify-ads/package.json +1 -1
  729. package/connectors/spotpay/package.json +1 -1
  730. package/connectors/spreadsheet-file/package.json +1 -1
  731. package/connectors/sprig/package.json +1 -1
  732. package/connectors/sprinklr/package.json +1 -1
  733. package/connectors/sprout-social/package.json +1 -1
  734. package/connectors/spydra/package.json +1 -1
  735. package/connectors/square/package.json +1 -1
  736. package/connectors/squarespace/package.json +1 -1
  737. package/connectors/squid/package.json +1 -1
  738. package/connectors/sse-trigger/package.json +1 -1
  739. package/connectors/ssh/package.json +1 -1
  740. package/connectors/sslmatecertspotterapi/package.json +1 -1
  741. package/connectors/stability-api-platform/package.json +1 -1
  742. package/connectors/stabilityai/package.json +1 -1
  743. package/connectors/stablebrowse/package.json +1 -1
  744. package/connectors/stackadapt/package.json +1 -1
  745. package/connectors/stackby/package.json +1 -1
  746. package/connectors/stackexchange/package.json +1 -1
  747. package/connectors/stage/package.json +1 -1
  748. package/connectors/stagehand/package.json +1 -1
  749. package/connectors/stainlessapi/package.json +1 -1
  750. package/connectors/stammerai/package.json +1 -1
  751. package/connectors/stampedio/package.json +1 -1
  752. package/connectors/standard-signal/package.json +1 -1
  753. package/connectors/standout/package.json +1 -1
  754. package/connectors/starton/package.json +1 -1
  755. package/connectors/statsig/package.json +1 -1
  756. package/connectors/statuscake/package.json +1 -1
  757. package/connectors/statuspage/package.json +1 -1
  758. package/connectors/steel-dev/package.json +1 -1
  759. package/connectors/sticky-note/package.json +1 -1
  760. package/connectors/stilta/package.json +1 -1
  761. package/connectors/stitch-data/package.json +1 -1
  762. package/connectors/stop-and-error/package.json +1 -1
  763. package/connectors/stoplight/package.json +1 -1
  764. package/connectors/stoplight-api-platform/package.json +1 -1
  765. package/connectors/storyblok/package.json +1 -1
  766. package/connectors/strand-ai/package.json +1 -1
  767. package/connectors/strapi/package.json +1 -1
  768. package/connectors/strava/package.json +1 -1
  769. package/connectors/streak/package.json +1 -1
  770. package/connectors/streamable/package.json +1 -1
  771. package/connectors/stripe/package.json +1 -1
  772. package/connectors/stripe-billing-advanced/package.json +1 -1
  773. package/connectors/stripe-connect-platform/package.json +1 -1
  774. package/connectors/stripe-financial-connections/package.json +1 -1
  775. package/connectors/stripe-issuing/package.json +1 -1
  776. package/connectors/stripe-reporting-advanced/package.json +1 -1
  777. package/connectors/stripe-sigma/package.json +1 -1
  778. package/connectors/stripe-tax-advanced/package.json +1 -1
  779. package/connectors/stripe-terminal/package.json +1 -1
  780. package/connectors/stripe-webhooks-advanced/package.json +1 -1
  781. package/connectors/stripeapps/package.json +1 -1
  782. package/connectors/stripeatlas/package.json +1 -1
  783. package/connectors/stripecapital/package.json +1 -1
  784. package/connectors/stripeclimate/package.json +1 -1
  785. package/connectors/stripeidentity/package.json +1 -1
  786. package/connectors/stripetreasury/package.json +1 -1
  787. package/connectors/studiobyai21labs/package.json +1 -1
  788. package/connectors/stytch/package.json +1 -1
  789. package/connectors/substack/package.json +1 -1
  790. package/connectors/sucuri/package.json +1 -1
  791. package/connectors/sucuri-api-platform/package.json +1 -1
  792. package/connectors/sugarcrm/package.json +1 -1
  793. package/connectors/suitedash/package.json +1 -1
  794. package/connectors/sumo-logic/package.json +1 -1
  795. package/connectors/suno/package.json +1 -1
  796. package/connectors/supabase/package.json +1 -1
  797. package/connectors/supabase-api-platform/package.json +1 -1
  798. package/connectors/supadata/package.json +1 -1
  799. package/connectors/supernormal/package.json +1 -1
  800. package/connectors/superpowered/package.json +1 -1
  801. package/connectors/superset/package.json +1 -1
  802. package/connectors/supportbee/package.json +1 -1
  803. package/connectors/supportivekoala/package.json +1 -1
  804. package/connectors/surtrdefensesystems/package.json +1 -1
  805. package/connectors/surveysparrow/package.json +1 -1
  806. package/connectors/survicate/package.json +1 -1
  807. package/connectors/swagup/package.json +1 -1
  808. package/connectors/switchboard/package.json +1 -1
  809. package/connectors/syncly/package.json +1 -1
  810. package/connectors/syncromsp/package.json +1 -1
  811. package/connectors/synphony/package.json +1 -1
  812. package/connectors/synthesia/package.json +1 -1
  813. package/connectors/syntheticsciences/package.json +1 -1
  814. package/connectors/syntropy/package.json +1 -1
  815. package/connectors/sysdig/package.json +1 -1
  816. package/connectors/tableau/package.json +1 -1
  817. package/connectors/taboola/package.json +1 -1
  818. package/connectors/taiga/package.json +1 -1
  819. package/connectors/takecareos/package.json +1 -1
  820. package/connectors/talend-api-platform/package.json +1 -1
  821. package/connectors/talentlms/package.json +1 -1
  822. package/connectors/talkdesk/package.json +1 -1
  823. package/connectors/talknotes/package.json +1 -1
  824. package/connectors/tapfiliate/package.json +1 -1
  825. package/connectors/tave/package.json +1 -1
  826. package/connectors/tdameritrade/package.json +1 -1
  827. package/connectors/teachable/package.json +1 -1
  828. package/connectors/teamdeck/package.json +1 -1
  829. package/connectors/teamgate/package.json +1 -1
  830. package/connectors/teamtailor/package.json +1 -1
  831. package/connectors/teamup/package.json +1 -1
  832. package/connectors/teamwork/package.json +1 -1
  833. package/connectors/teknoir/package.json +1 -1
  834. package/connectors/telegram/package.json +1 -1
  835. package/connectors/teleport/package.json +1 -1
  836. package/connectors/telnyx/package.json +1 -1
  837. package/connectors/telnyx/src/utils/config.ts +1 -1
  838. package/connectors/tenable/package.json +1 -1
  839. package/connectors/tenor/package.json +1 -1
  840. package/connectors/tensorboard/package.json +1 -1
  841. package/connectors/tepali/package.json +1 -1
  842. package/connectors/terminal-use/package.json +1 -1
  843. package/connectors/terminus/package.json +1 -1
  844. package/connectors/terraform-cloud/package.json +1 -1
  845. package/connectors/testerarmy/package.json +1 -1
  846. package/connectors/testim/package.json +1 -1
  847. package/connectors/testmo/package.json +1 -1
  848. package/connectors/testmonitor/package.json +1 -1
  849. package/connectors/testrail/package.json +1 -1
  850. package/connectors/testrigor/package.json +1 -1
  851. package/connectors/tettra/package.json +1 -1
  852. package/connectors/tettra-api-platform/package.json +1 -1
  853. package/connectors/textcortex/package.json +1 -1
  854. package/connectors/textcortexai/package.json +1 -1
  855. package/connectors/textgain/package.json +1 -1
  856. package/connectors/textit/package.json +1 -1
  857. package/connectors/textkit/package.json +1 -1
  858. package/connectors/textmagic/package.json +1 -1
  859. package/connectors/textrazor/package.json +1 -1
  860. package/connectors/textsidekick/package.json +1 -1
  861. package/connectors/thankster/package.json +1 -1
  862. package/connectors/the-company-company/package.json +1 -1
  863. package/connectors/the-hive-project/package.json +1 -1
  864. package/connectors/the-token-company/package.json +1 -1
  865. package/connectors/the-trade-desk/package.json +1 -1
  866. package/connectors/thecustomerfactor/package.json +1 -1
  867. package/connectors/thehive/package.json +1 -1
  868. package/connectors/thehive5/package.json +1 -1
  869. package/connectors/theleap/package.json +1 -1
  870. package/connectors/thoughtfulgpt/package.json +1 -1
  871. package/connectors/thoughtspot/package.json +1 -1
  872. package/connectors/thousandeyes/package.json +1 -1
  873. package/connectors/thrivecart/package.json +1 -1
  874. package/connectors/ticket-tailor/package.json +1 -1
  875. package/connectors/ticketbud/package.json +1 -1
  876. package/connectors/ticketmaster/package.json +1 -1
  877. package/connectors/ticketsource/package.json +1 -1
  878. package/connectors/ticktick/package.json +1 -1
  879. package/connectors/tidbcloud/package.json +1 -1
  880. package/connectors/tidio/package.json +1 -1
  881. package/connectors/tierion/package.json +1 -1
  882. package/connectors/tiktok/package.json +1 -1
  883. package/connectors/tiktok-events-api/package.json +1 -1
  884. package/connectors/tiktokads/package.json +1 -1
  885. package/connectors/tilda/package.json +1 -1
  886. package/connectors/time-saved/package.json +1 -1
  887. package/connectors/timelinesai/package.json +1 -1
  888. package/connectors/timescaledb/package.json +1 -1
  889. package/connectors/timetonic/package.json +1 -1
  890. package/connectors/tines/package.json +1 -1
  891. package/connectors/tinker/package.json +1 -1
  892. package/connectors/tinybird/package.json +1 -1
  893. package/connectors/tinypng/package.json +1 -1
  894. package/connectors/tinyurl/package.json +1 -1
  895. package/connectors/tipalti/package.json +1 -1
  896. package/connectors/tisane/package.json +1 -1
  897. package/connectors/tisanelabs/package.json +1 -1
  898. package/connectors/tito/package.json +1 -1
  899. package/connectors/toast-pos/package.json +1 -1
  900. package/connectors/todoist/package.json +1 -1
  901. package/connectors/together/package.json +1 -1
  902. package/connectors/together-api-platform/package.json +1 -1
  903. package/connectors/toggl/package.json +1 -1
  904. package/connectors/toggl-track/package.json +1 -1
  905. package/connectors/tokenmetrics/package.json +1 -1
  906. package/connectors/toket/package.json +1 -1
  907. package/connectors/tomtom/package.json +1 -1
  908. package/connectors/topaz-labs/package.json +1 -1
  909. package/connectors/totalis/package.json +1 -1
  910. package/connectors/totango/package.json +1 -1
  911. package/connectors/totp/package.json +1 -1
  912. package/connectors/trackjs/package.json +1 -1
  913. package/connectors/trackvia/package.json +1 -1
  914. package/connectors/transform/package.json +1 -1
  915. package/connectors/transifex/package.json +1 -1
  916. package/connectors/transload/package.json +1 -1
  917. package/connectors/traverse/package.json +1 -1
  918. package/connectors/travisci/package.json +1 -1
  919. package/connectors/travo/package.json +1 -1
  920. package/connectors/travo-ai/package.json +1 -1
  921. package/connectors/travo-real-estate/package.json +1 -1
  922. package/connectors/tray-api-platform/package.json +1 -1
  923. package/connectors/trellistech/package.json +1 -1
  924. package/connectors/trellixepo/package.json +1 -1
  925. package/connectors/trello/package.json +1 -1
  926. package/connectors/trengo/package.json +1 -1
  927. package/connectors/trevorio/package.json +1 -1
  928. package/connectors/tricentis/package.json +1 -1
  929. package/connectors/trigger-dev/package.json +1 -1
  930. package/connectors/trigger-dev-api-platform/package.json +1 -1
  931. package/connectors/triggercmd/package.json +1 -1
  932. package/connectors/triple-whale/package.json +1 -1
  933. package/connectors/truelayer/package.json +1 -1
  934. package/connectors/trustpilot/package.json +1 -1
  935. package/connectors/trustpilot-business/package.json +1 -1
  936. package/connectors/trybloom/package.json +1 -1
  937. package/connectors/trycardinal-ai/package.json +1 -1
  938. package/connectors/tryprism/package.json +1 -1
  939. package/connectors/tumblr/package.json +1 -1
  940. package/connectors/turbohire/package.json +1 -1
  941. package/connectors/turbot-pipes/package.json +1 -1
  942. package/connectors/turso/package.json +1 -1
  943. package/connectors/turso-api-platform/package.json +1 -1
  944. package/connectors/tuskr/package.json +1 -1
  945. package/connectors/tuulio/package.json +1 -1
  946. package/connectors/twake/package.json +1 -1
  947. package/connectors/twelve-data/package.json +1 -1
  948. package/connectors/twilio/package.json +1 -1
  949. package/connectors/twilio/src/utils/config.ts +1 -1
  950. package/connectors/twilio-api-platform/package.json +1 -1
  951. package/connectors/twist/package.json +1 -1
  952. package/connectors/twitch/package.json +1 -1
  953. package/connectors/tyk/package.json +1 -1
  954. package/connectors/tyk-api-platform/package.json +1 -1
  955. package/connectors/typeform/package.json +1 -1
  956. package/connectors/typesense/package.json +1 -1
  957. package/connectors/typless/package.json +1 -1
  958. package/connectors/udio/package.json +1 -1
  959. package/connectors/ultimate-ai/package.json +1 -1
  960. package/connectors/umami/package.json +1 -1
  961. package/connectors/unbounce/package.json +1 -1
  962. package/connectors/unifold/package.json +1 -1
  963. package/connectors/unione/package.json +1 -1
  964. package/connectors/uniprot/package.json +1 -1
  965. package/connectors/unisender/package.json +1 -1
  966. package/connectors/unisson/package.json +1 -1
  967. package/connectors/uniswap-api/package.json +1 -1
  968. package/connectors/unit/package.json +1 -1
  969. package/connectors/unleash/package.json +1 -1
  970. package/connectors/unleashedsoftware/package.json +1 -1
  971. package/connectors/unpaywall/package.json +1 -1
  972. package/connectors/upcloud/package.json +1 -1
  973. package/connectors/updown-io/package.json +1 -1
  974. package/connectors/upkeep/package.json +1 -1
  975. package/connectors/uplead/package.json +1 -1
  976. package/connectors/uploadcare/package.json +1 -1
  977. package/connectors/uproc/package.json +1 -1
  978. package/connectors/ups/package.json +1 -1
  979. package/connectors/upstash/package.json +1 -1
  980. package/connectors/upstash-api-platform/package.json +1 -1
  981. package/connectors/uptimerobot/package.json +1 -1
  982. package/connectors/uptimetoolbox/package.json +1 -1
  983. package/connectors/urlscanio/package.json +1 -1
  984. package/connectors/usebidflow/package.json +1 -1
  985. package/connectors/usecrow/package.json +1 -1
  986. package/connectors/usereframe/package.json +1 -1
  987. package/connectors/userflow/package.json +1 -1
  988. package/connectors/userlens/package.json +1 -1
  989. package/connectors/userlist/package.json +1 -1
  990. package/connectors/userpilot/package.json +1 -1
  991. package/connectors/uservoice/package.json +1 -1
  992. package/connectors/usps/package.json +1 -1
  993. package/connectors/uspto/package.json +1 -1
  994. package/connectors/v0/package.json +1 -1
  995. package/connectors/valence/package.json +1 -1
  996. package/connectors/valgo/package.json +1 -1
  997. package/connectors/vanta/package.json +1 -1
  998. package/connectors/vapi/package.json +1 -1
  999. package/connectors/vault/package.json +1 -1
  1000. package/connectors/vector-legal/package.json +1 -1
  1001. package/connectors/vector-legal-api/package.json +1 -1
  1002. package/connectors/vectorshift/package.json +1 -1
  1003. package/connectors/vela/package.json +1 -1
  1004. package/connectors/velum-data-quality/package.json +1 -1
  1005. package/connectors/velum-labs/package.json +1 -1
  1006. package/connectors/venafi/package.json +1 -1
  1007. package/connectors/veo/package.json +1 -1
  1008. package/connectors/veracode/package.json +1 -1
  1009. package/connectors/vercel/package.json +1 -1
  1010. package/connectors/vercel-ai-gateway/package.json +1 -1
  1011. package/connectors/vercel-api-platform/package.json +1 -1
  1012. package/connectors/vercel-blob/package.json +1 -1
  1013. package/connectors/vercel-blob-platform/package.json +1 -1
  1014. package/connectors/vercel-edge-config/package.json +1 -1
  1015. package/connectors/vercel-edge-config-platform/package.json +1 -1
  1016. package/connectors/verdex/package.json +1 -1
  1017. package/connectors/verifalia/package.json +1 -1
  1018. package/connectors/veriphone/package.json +1 -1
  1019. package/connectors/vero/package.json +1 -1
  1020. package/connectors/vertex-ai/package.json +1 -1
  1021. package/connectors/vidyard/package.json +1 -1
  1022. package/connectors/vimeo/package.json +1 -1
  1023. package/connectors/virustotal/package.json +1 -1
  1024. package/connectors/visibl-semiconductors/package.json +1 -1
  1025. package/connectors/vitally/package.json +1 -1
  1026. package/connectors/vivenu/package.json +1 -1
  1027. package/connectors/vivifyscrum/package.json +1 -1
  1028. package/connectors/voiceflow/package.json +1 -1
  1029. package/connectors/voicit/package.json +1 -1
  1030. package/connectors/voltair/package.json +1 -1
  1031. package/connectors/vonage/package.json +1 -1
  1032. package/connectors/voquill/package.json +1 -1
  1033. package/connectors/vowel/package.json +1 -1
  1034. package/connectors/voygr/package.json +1 -1
  1035. package/connectors/vultr/package.json +1 -1
  1036. package/connectors/vwo/package.json +1 -1
  1037. package/connectors/waboxapp/package.json +1 -1
  1038. package/connectors/wait/package.json +1 -1
  1039. package/connectors/wakatime/package.json +1 -1
  1040. package/connectors/walmart-marketplace/package.json +1 -1
  1041. package/connectors/wandb/package.json +1 -1
  1042. package/connectors/wappalyzer/package.json +1 -1
  1043. package/connectors/watchsignals/package.json +1 -1
  1044. package/connectors/wati/package.json +1 -1
  1045. package/connectors/wato/package.json +1 -1
  1046. package/connectors/wave-accounting/package.json +1 -1
  1047. package/connectors/wavelineextract/package.json +1 -1
  1048. package/connectors/wayco/package.json +1 -1
  1049. package/connectors/weaviate/package.json +1 -1
  1050. package/connectors/weaviate-api-platform/package.json +1 -1
  1051. package/connectors/webengage/package.json +1 -1
  1052. package/connectors/webex/package.json +1 -1
  1053. package/connectors/webexbycisco/package.json +1 -1
  1054. package/connectors/webflow/package.json +1 -1
  1055. package/connectors/webhook/package.json +1 -1
  1056. package/connectors/webhooks/package.json +1 -1
  1057. package/connectors/webinarjam/package.json +1 -1
  1058. package/connectors/webpagetest/package.json +1 -1
  1059. package/connectors/webscraperio/package.json +1 -1
  1060. package/connectors/weezevent/package.json +1 -1
  1061. package/connectors/weights-biases/package.json +1 -1
  1062. package/connectors/wekan/package.json +1 -1
  1063. package/connectors/whal3s/package.json +1 -1
  1064. package/connectors/whatconverts/package.json +1 -1
  1065. package/connectors/whatsapp/package.json +1 -1
  1066. package/connectors/whatsapp-cloud-api/package.json +1 -1
  1067. package/connectors/wideframe/package.json +1 -1
  1068. package/connectors/wikipedia/package.json +1 -1
  1069. package/connectors/wildcard/package.json +1 -1
  1070. package/connectors/windmill/package.json +1 -1
  1071. package/connectors/windmill-api-platform/package.json +1 -1
  1072. package/connectors/wipo/package.json +1 -1
  1073. package/connectors/wise/package.json +1 -1
  1074. package/connectors/wistia/package.json +1 -1
  1075. package/connectors/withai/package.json +1 -1
  1076. package/connectors/wix/package.json +1 -1
  1077. package/connectors/wiz/package.json +1 -1
  1078. package/connectors/wizychat/package.json +1 -1
  1079. package/connectors/wolframoralpha/package.json +1 -1
  1080. package/connectors/wonderchat/package.json +1 -1
  1081. package/connectors/wondercraft/package.json +1 -1
  1082. package/connectors/woocommerce/package.json +1 -1
  1083. package/connectors/woodpecker/package.json +1 -1
  1084. package/connectors/woodpeckerco/package.json +1 -1
  1085. package/connectors/wordfence/package.json +1 -1
  1086. package/connectors/wordfence-api-platform/package.json +1 -1
  1087. package/connectors/wordpress/package.json +1 -1
  1088. package/connectors/workable/package.json +1 -1
  1089. package/connectors/workast/package.json +1 -1
  1090. package/connectors/workato/package.json +1 -1
  1091. package/connectors/workato-api-platform/package.json +1 -1
  1092. package/connectors/workboard/package.json +1 -1
  1093. package/connectors/workflow-trigger/package.json +1 -1
  1094. package/connectors/workos/package.json +1 -1
  1095. package/connectors/woxo/package.json +1 -1
  1096. package/connectors/wrike/package.json +1 -1
  1097. package/connectors/write-binary-file/package.json +1 -1
  1098. package/connectors/writesonic/package.json +1 -1
  1099. package/connectors/wubookratechecker/package.json +1 -1
  1100. package/connectors/wufoo/package.json +1 -1
  1101. package/connectors/x/package.json +1 -1
  1102. package/connectors/xads/package.json +1 -1
  1103. package/connectors/xai/package.json +1 -1
  1104. package/connectors/xai-api-platform/package.json +1 -1
  1105. package/connectors/xai-grok/package.json +1 -1
  1106. package/connectors/xata/package.json +1 -1
  1107. package/connectors/xero/package.json +1 -1
  1108. package/connectors/xml/package.json +1 -1
  1109. package/connectors/xray/package.json +1 -1
  1110. package/connectors/xtractly/package.json +1 -1
  1111. package/connectors/ybug/package.json +1 -1
  1112. package/connectors/ycode/package.json +1 -1
  1113. package/connectors/yesware/package.json +1 -1
  1114. package/connectors/ynab/package.json +1 -1
  1115. package/connectors/yodiz/package.json +1 -1
  1116. package/connectors/yotpo/package.json +1 -1
  1117. package/connectors/you-com/package.json +1 -1
  1118. package/connectors/youart/package.json +1 -1
  1119. package/connectors/yourls/package.json +1 -1
  1120. package/connectors/yousearch/package.json +1 -1
  1121. package/connectors/yousign/package.json +1 -1
  1122. package/connectors/youtube/package.json +2 -1
  1123. package/connectors/youtube/src/cli/index.test.ts +65 -0
  1124. package/connectors/youtube/src/cli/index.ts +6 -3
  1125. package/connectors/zabbix/package.json +1 -1
  1126. package/connectors/zammad/package.json +1 -1
  1127. package/connectors/zapier-api-platform/package.json +1 -1
  1128. package/connectors/zatanna/package.json +1 -1
  1129. package/connectors/zendesk/package.json +1 -1
  1130. package/connectors/zendesk/server/index.js +1 -1
  1131. package/connectors/zendesk/src/server/index.ts +1 -1
  1132. package/connectors/zenodo/package.json +1 -1
  1133. package/connectors/zenrows/package.json +1 -1
  1134. package/connectors/zenserp/package.json +1 -1
  1135. package/connectors/zerobounce/package.json +1 -1
  1136. package/connectors/zerosettle/package.json +1 -1
  1137. package/connectors/zerotier/package.json +1 -1
  1138. package/connectors/zhipu-ai/package.json +1 -1
  1139. package/connectors/zibra-labs/package.json +1 -1
  1140. package/connectors/zipkin/package.json +1 -1
  1141. package/connectors/zoho/package.json +1 -1
  1142. package/connectors/zoho-analytics/package.json +1 -1
  1143. package/connectors/zoho-bigin/package.json +1 -1
  1144. package/connectors/zoho-campaigns/package.json +1 -1
  1145. package/connectors/zoho-cliq/package.json +1 -1
  1146. package/connectors/zoho-creator/package.json +1 -1
  1147. package/connectors/zoho-inventory/package.json +1 -1
  1148. package/connectors/zoho-meeting/package.json +1 -1
  1149. package/connectors/zoho-people/package.json +1 -1
  1150. package/connectors/zoho-sign/package.json +1 -1
  1151. package/connectors/zoho-subscriptions/package.json +1 -1
  1152. package/connectors/zoho-survey/package.json +1 -1
  1153. package/connectors/zohobookings/package.json +1 -1
  1154. package/connectors/zohobooks/package.json +1 -1
  1155. package/connectors/zohocrm/package.json +1 -1
  1156. package/connectors/zohodesk/package.json +1 -1
  1157. package/connectors/zohoforms/package.json +1 -1
  1158. package/connectors/zohoprojects/package.json +1 -1
  1159. package/connectors/zohorecruit/package.json +1 -1
  1160. package/connectors/zohovault/package.json +1 -1
  1161. package/connectors/zohoworkdrive/package.json +1 -1
  1162. package/connectors/zolvo/package.json +1 -1
  1163. package/connectors/zonkafeedback/package.json +1 -1
  1164. package/connectors/zoom/package.json +1 -1
  1165. package/connectors/zoom-api/package.json +1 -1
  1166. package/connectors/zoominfo/package.json +1 -1
  1167. package/connectors/zotero/package.json +1 -1
  1168. package/connectors/zscalerzia/package.json +1 -1
  1169. package/connectors/zulip/package.json +1 -1
  1170. package/connectors/zymbly/package.json +1 -1
  1171. package/dist/db/database.d.ts +5 -2
  1172. package/dist/index.js +242 -142
  1173. package/dist/lib/paths.d.ts +37 -0
  1174. package/dist/lib/strip.d.ts +1 -0
  1175. package/dist/sdk/bundle-boundary.test.d.ts +1 -0
  1176. package/dist/sdk/fixtures/platform-connectors.d.ts +20 -0
  1177. package/dist/sdk/index.d.ts +696 -0
  1178. package/dist/sdk/index.js +508 -0
  1179. package/dist/sdk/index.test.d.ts +1 -0
  1180. package/dist/sdk/platform-contract.test.d.ts +1 -0
  1181. package/dist/server/auth.d.ts +1 -1
  1182. package/dist/server/index.d.ts +1 -1
  1183. package/dist/server/serve-auth.d.ts +54 -0
  1184. package/dist/server/serve-auth.test.d.ts +1 -0
  1185. package/dist/server/serve.d.ts +18 -6
  1186. package/dist/server/server-auth-gate.test.d.ts +1 -0
  1187. package/package.json +13 -10
  1188. package/dashboard/dist/assets/index-8uoGZF7B.js +0 -280
  1189. package/dashboard/dist/assets/index-D7ZVhmHr.css +0 -1
  1190. package/dashboard/dist/index.html +0 -13
  1191. package/dashboard/dist/logo.jpg +0 -0
  1192. package/dist/server/dashboard.d.ts +0 -5
  1193. /package/dist/{server/dashboard.test.d.ts → lib/paths.test.d.ts} +0 -0
package/dist/index.js CHANGED
@@ -15,8 +15,8 @@ var __export = (target, all) => {
15
15
  };
16
16
 
17
17
  // src/lib/registry.ts
18
- import { existsSync as existsSync8, readFileSync as readFileSync4 } from "fs";
19
- import { join as join8, dirname as dirname4 } from "path";
18
+ import { existsSync as existsSync9, readFileSync as readFileSync4 } from "fs";
19
+ import { join as join9, dirname as dirname4 } from "path";
20
20
  import { fileURLToPath as fileURLToPath3 } from "url";
21
21
 
22
22
  // src/core/errors.ts
@@ -4968,9 +4968,108 @@ var githubConnector = defineConnector({
4968
4968
  });
4969
4969
 
4970
4970
  // src/core/connectors/gmail.ts
4971
- import { existsSync as existsSync2, mkdirSync, readFileSync, readdirSync, writeFileSync } from "fs";
4971
+ import { existsSync as existsSync3, mkdirSync, readFileSync, readdirSync, writeFileSync } from "fs";
4972
+ import { basename, join as join3 } from "path";
4973
+
4974
+ // src/lib/paths.ts
4975
+ import { existsSync as existsSync2 } from "fs";
4972
4976
  import { homedir } from "os";
4973
- import { basename, join as join2 } from "path";
4977
+ import { join as join2, resolve } from "path";
4978
+ import { homedir as pathsResolverHomedir } from "os";
4979
+ import { join as pathsResolverJoin } from "path";
4980
+ var PATHS_RESOLVER_KIND_ENV = {
4981
+ config: "HASNA_CONFIG_HOME",
4982
+ data: "HASNA_DATA_HOME",
4983
+ state: "HASNA_STATE_HOME",
4984
+ cache: "HASNA_CACHE_HOME"
4985
+ };
4986
+ var PATHS_RESOLVER_APP_SLUG_RE = /^[a-z0-9]+(?:-[a-z0-9]+)*$/;
4987
+ function pathsResolverAssertApp(app) {
4988
+ if (typeof app !== "string" || app.length === 0) {
4989
+ throw new TypeError("paths: app must be a non-empty string");
4990
+ }
4991
+ if (!PATHS_RESOLVER_APP_SLUG_RE.test(app)) {
4992
+ throw new TypeError(`paths: invalid app slug "${app}" \u2014 expected lowercase kebab-case ([a-z0-9]+(-[a-z0-9]+)*)`);
4993
+ }
4994
+ }
4995
+ function pathsResolverAssertKind(kind) {
4996
+ if (!Object.keys(PATHS_RESOLVER_KIND_ENV).includes(kind)) {
4997
+ throw new TypeError(`paths: invalid path kind "${kind}" \u2014 expected one of ${Object.keys(PATHS_RESOLVER_KIND_ENV).join(", ")}`);
4998
+ }
4999
+ }
5000
+ function pathsResolverBaseDir(kind, options) {
5001
+ pathsResolverAssertKind(kind);
5002
+ const env = options.env ?? process.env;
5003
+ const override = env[PATHS_RESOLVER_KIND_ENV[kind]];
5004
+ if (typeof override === "string" && override.length > 0)
5005
+ return override;
5006
+ const home = options.home ?? pathsResolverHomedir();
5007
+ const platform = options.platform ?? process.platform;
5008
+ if (platform === "darwin") {
5009
+ switch (kind) {
5010
+ case "config":
5011
+ case "data":
5012
+ return pathsResolverJoin(home, "Library", "Application Support", "Hasna");
5013
+ case "cache":
5014
+ return pathsResolverJoin(home, "Library", "Caches", "Hasna");
5015
+ case "state":
5016
+ return pathsResolverJoin(home, "Library", "Logs", "Hasna");
5017
+ }
5018
+ }
5019
+ switch (kind) {
5020
+ case "config":
5021
+ return pathsResolverJoin(home, ".config", "hasna");
5022
+ case "data":
5023
+ return pathsResolverJoin(home, ".local", "share", "hasna");
5024
+ case "state":
5025
+ return pathsResolverJoin(home, ".local", "state", "hasna");
5026
+ case "cache":
5027
+ return pathsResolverJoin(home, ".cache", "hasna");
5028
+ }
5029
+ }
5030
+ function pathsResolverResolve(kind, options) {
5031
+ pathsResolverAssertApp(options.app);
5032
+ const appSegment = options.internal === true ? pathsResolverJoin("internal", options.app) : options.app;
5033
+ return pathsResolverJoin(pathsResolverBaseDir(kind, options), appSegment);
5034
+ }
5035
+ function dataDir(options) {
5036
+ return pathsResolverResolve("data", options);
5037
+ }
5038
+ function envOr(name, fallback) {
5039
+ const value = process.env[name]?.trim();
5040
+ return value ? value : fallback;
5041
+ }
5042
+ function effectiveHome() {
5043
+ return process.env["HOME"] || process.env["USERPROFILE"] || homedir();
5044
+ }
5045
+ function legacyHomeDir() {
5046
+ return join2(effectiveHome(), ".hasna", "connectors");
5047
+ }
5048
+ function resolverHome() {
5049
+ return dataDir({
5050
+ app: "connectors",
5051
+ home: process.env["HOME"] || process.env["USERPROFILE"] || undefined
5052
+ });
5053
+ }
5054
+ function adoptResolverHome(resolved, env = process.env) {
5055
+ const dataOverride = env.HASNA_DATA_HOME;
5056
+ if (typeof dataOverride === "string" && dataOverride.trim().length > 0)
5057
+ return true;
5058
+ return existsSync2(join2(resolved, "connectors.db"));
5059
+ }
5060
+ function exactConnectorsHome() {
5061
+ const home = envOr("HASNA_CONNECTORS_DIR", "");
5062
+ return home ? home : undefined;
5063
+ }
5064
+ function connectorsHome() {
5065
+ const exact = exactConnectorsHome();
5066
+ if (exact)
5067
+ return resolve(exact);
5068
+ const resolved = resolverHome();
5069
+ return adoptResolverHome(resolved) ? resolve(resolved) : resolve(legacyHomeDir());
5070
+ }
5071
+
5072
+ // src/core/connectors/gmail.ts
4974
5073
  var GMAIL_API_BASE = "https://gmail.googleapis.com/gmail/v1";
4975
5074
  var TOKEN_URL = "https://oauth2.googleapis.com/token";
4976
5075
  var REFRESH_BUFFER_MS = 5 * 60 * 1000;
@@ -5174,7 +5273,7 @@ async function replyToMessage(profile, messageId, input) {
5174
5273
  }
5175
5274
  async function downloadAttachments(profile, input) {
5176
5275
  const messageId = getMessageId(input);
5177
- const outputDir = input.dir ?? input.outputDir ?? join2(configDirs()[0], "attachments", messageId);
5276
+ const outputDir = input.dir ?? input.outputDir ?? join3(configDirs()[0], "attachments", messageId);
5178
5277
  mkdirSync(outputDir, { recursive: true });
5179
5278
  const attachments = input.attachmentId && input.filename ? [{
5180
5279
  attachmentId: input.attachmentId,
@@ -5186,7 +5285,7 @@ async function downloadAttachments(profile, input) {
5186
5285
  for (const attachment of attachments) {
5187
5286
  const data = await requestJson(profile, `/users/me/messages/${encodeURIComponent(messageId)}/attachments/${encodeURIComponent(attachment.attachmentId)}`, {});
5188
5287
  const filename = safeFilename(attachment.filename);
5189
- const path = join2(outputDir, filename);
5288
+ const path = join3(outputDir, filename);
5190
5289
  const buffer = Buffer.from(data.data, "base64url");
5191
5290
  writeFileSync(path, buffer);
5192
5291
  downloaded.push({
@@ -5256,7 +5355,7 @@ function gmailBackoffDelayMs(attempt, retryAfter = null) {
5256
5355
  return Math.min(2 ** attempt * baseMs + jitterMs, 64000);
5257
5356
  }
5258
5357
  function sleep(ms) {
5259
- return new Promise((resolve) => setTimeout(resolve, ms));
5358
+ return new Promise((resolve2) => setTimeout(resolve2, ms));
5260
5359
  }
5261
5360
  async function getValidAccessToken(profile) {
5262
5361
  if (process.env.GMAIL_ACCESS_TOKEN)
@@ -5303,8 +5402,8 @@ async function refreshAccessToken(profile, currentTokens) {
5303
5402
  function listProfiles() {
5304
5403
  const profiles = new Set;
5305
5404
  for (const baseDir of configDirs()) {
5306
- const profilesDir = join2(baseDir, "profiles");
5307
- if (!existsSync2(profilesDir))
5405
+ const profilesDir = join3(baseDir, "profiles");
5406
+ if (!existsSync3(profilesDir))
5308
5407
  continue;
5309
5408
  for (const entry of readdirSync(profilesDir, { withFileTypes: true })) {
5310
5409
  if (entry.isDirectory())
@@ -5322,8 +5421,8 @@ function loadCredentials(profile) {
5322
5421
  return { clientId: envClientId, clientSecret: envClientSecret };
5323
5422
  for (const baseDir of configDirs()) {
5324
5423
  const credentials = {
5325
- ...readJson(join2(baseDir, "credentials.json")),
5326
- ...readJson(join2(baseDir, "profiles", profile, "config.json"))
5424
+ ...readJson(join3(baseDir, "credentials.json")),
5425
+ ...readJson(join3(baseDir, "profiles", profile, "config.json"))
5327
5426
  };
5328
5427
  if (credentials.clientId || credentials.clientSecret)
5329
5428
  return credentials;
@@ -5332,30 +5431,30 @@ function loadCredentials(profile) {
5332
5431
  }
5333
5432
  function loadTokens(profile) {
5334
5433
  for (const baseDir of configDirs()) {
5335
- const fromProfile = readJson(join2(baseDir, "profiles", profile, "tokens.json"));
5434
+ const fromProfile = readJson(join3(baseDir, "profiles", profile, "tokens.json"));
5336
5435
  if (fromProfile)
5337
5436
  return fromProfile;
5338
- const flat = readJson(join2(baseDir, "profiles", `${profile}.json`));
5437
+ const flat = readJson(join3(baseDir, "profiles", `${profile}.json`));
5339
5438
  if (flat)
5340
5439
  return flat.tokens ?? (flat.accessToken || flat.refreshToken ? flat : null);
5341
5440
  }
5342
5441
  return null;
5343
5442
  }
5344
5443
  function saveTokens(profile, tokens) {
5345
- const baseDir = configDirs().find((dir) => existsSync2(dir)) ?? configDirs()[0];
5346
- const profileDir = join2(baseDir, "profiles", profile);
5444
+ const baseDir = configDirs().find((dir) => existsSync3(dir)) ?? configDirs()[0];
5445
+ const profileDir = join3(baseDir, "profiles", profile);
5347
5446
  mkdirSync(profileDir, { recursive: true });
5348
- writeFileSync(join2(profileDir, "tokens.json"), JSON.stringify(tokens, null, 2), { mode: 384 });
5447
+ writeFileSync(join3(profileDir, "tokens.json"), JSON.stringify(tokens, null, 2), { mode: 384 });
5349
5448
  }
5350
5449
  function configDirs() {
5351
5450
  const explicit = process.env.HASNA_GMAIL_CONNECTOR_DIR ?? process.env.GMAIL_CONNECTOR_DIR;
5352
5451
  if (explicit)
5353
5452
  return [explicit];
5354
- const baseDir = process.env.HASNA_CONNECTORS_DIR ?? join2(homedir(), ".hasna", "connectors");
5355
- return [join2(baseDir, "gmail"), join2(baseDir, "connect-gmail")];
5453
+ const baseDir = connectorsHome();
5454
+ return [join3(baseDir, "gmail"), join3(baseDir, "connect-gmail")];
5356
5455
  }
5357
5456
  function readJson(path) {
5358
- if (!existsSync2(path))
5457
+ if (!existsSync3(path))
5359
5458
  return null;
5360
5459
  try {
5361
5460
  return JSON.parse(readFileSync(path, "utf8"));
@@ -5436,9 +5535,8 @@ function safeFilename(filename) {
5436
5535
  }
5437
5536
 
5438
5537
  // src/core/connectors/googledrive.ts
5439
- import { existsSync as existsSync3, mkdirSync as mkdirSync2, readFileSync as readFileSync2, readdirSync as readdirSync2, writeFileSync as writeFileSync2 } from "fs";
5440
- import { homedir as homedir2 } from "os";
5441
- import { basename as basename2, join as join3 } from "path";
5538
+ import { existsSync as existsSync4, mkdirSync as mkdirSync2, readFileSync as readFileSync2, readdirSync as readdirSync2, writeFileSync as writeFileSync2 } from "fs";
5539
+ import { basename as basename2, join as join4 } from "path";
5442
5540
  var DRIVE_API_BASE = "https://www.googleapis.com/drive/v3";
5443
5541
  var TOKEN_URL2 = "https://oauth2.googleapis.com/token";
5444
5542
  var REFRESH_BUFFER_MS2 = 5 * 60 * 1000;
@@ -5648,8 +5746,8 @@ async function refreshAccessToken2(profile, currentTokens) {
5648
5746
  function listProfiles2() {
5649
5747
  const profiles = new Set;
5650
5748
  for (const baseDir of configDirs2()) {
5651
- const profilesDir = join3(baseDir, "profiles");
5652
- if (!existsSync3(profilesDir))
5749
+ const profilesDir = join4(baseDir, "profiles");
5750
+ if (!existsSync4(profilesDir))
5653
5751
  continue;
5654
5752
  for (const entry of readdirSync2(profilesDir, { withFileTypes: true })) {
5655
5753
  if (entry.isDirectory())
@@ -5696,8 +5794,8 @@ function loadCredentials2(profile) {
5696
5794
  return { clientId: envClientId, clientSecret: envClientSecret };
5697
5795
  for (const baseDir of configDirs2()) {
5698
5796
  const credentials = {
5699
- ...readJson2(join3(baseDir, "credentials.json")),
5700
- ...readJson2(join3(baseDir, "profiles", profile, "config.json"))
5797
+ ...readJson2(join4(baseDir, "credentials.json")),
5798
+ ...readJson2(join4(baseDir, "profiles", profile, "config.json"))
5701
5799
  };
5702
5800
  if (credentials.clientId || credentials.clientSecret)
5703
5801
  return credentials;
@@ -5706,30 +5804,30 @@ function loadCredentials2(profile) {
5706
5804
  }
5707
5805
  function loadTokens2(profile) {
5708
5806
  for (const baseDir of configDirs2()) {
5709
- const fromProfile = readJson2(join3(baseDir, "profiles", profile, "tokens.json"));
5807
+ const fromProfile = readJson2(join4(baseDir, "profiles", profile, "tokens.json"));
5710
5808
  if (fromProfile)
5711
5809
  return fromProfile;
5712
- const flat = readJson2(join3(baseDir, "profiles", `${profile}.json`));
5810
+ const flat = readJson2(join4(baseDir, "profiles", `${profile}.json`));
5713
5811
  if (flat)
5714
5812
  return flat.tokens ?? (flat.accessToken || flat.refreshToken ? flat : null);
5715
5813
  }
5716
5814
  return null;
5717
5815
  }
5718
5816
  function saveTokens2(profile, tokens) {
5719
- const baseDir = configDirs2().find((dir) => existsSync3(dir)) ?? configDirs2()[0];
5720
- const profileDir = join3(baseDir, "profiles", profile);
5817
+ const baseDir = configDirs2().find((dir) => existsSync4(dir)) ?? configDirs2()[0];
5818
+ const profileDir = join4(baseDir, "profiles", profile);
5721
5819
  mkdirSync2(profileDir, { recursive: true });
5722
- writeFileSync2(join3(profileDir, "tokens.json"), JSON.stringify(tokens, null, 2), { mode: 384 });
5820
+ writeFileSync2(join4(profileDir, "tokens.json"), JSON.stringify(tokens, null, 2), { mode: 384 });
5723
5821
  }
5724
5822
  function configDirs2() {
5725
5823
  const explicit = process.env.HASNA_GOOGLE_DRIVE_CONNECTOR_DIR ?? process.env.GOOGLE_DRIVE_CONNECTOR_DIR;
5726
5824
  if (explicit)
5727
5825
  return [explicit];
5728
- const baseDir = process.env.HASNA_CONNECTORS_DIR ?? join3(homedir2(), ".hasna", "connectors");
5729
- return [join3(baseDir, "googledrive"), join3(baseDir, "connect-googledrive")];
5826
+ const baseDir = connectorsHome();
5827
+ return [join4(baseDir, "googledrive"), join4(baseDir, "connect-googledrive")];
5730
5828
  }
5731
5829
  function readJson2(path) {
5732
- if (!existsSync3(path))
5830
+ if (!existsSync4(path))
5733
5831
  return null;
5734
5832
  try {
5735
5833
  return JSON.parse(readFileSync2(path, "utf8"));
@@ -5764,7 +5862,7 @@ function extractGoogleError(body) {
5764
5862
  // package.json
5765
5863
  var package_default = {
5766
5864
  name: "@hasna/connectors",
5767
- version: "1.4.4",
5865
+ version: "1.4.6",
5768
5866
  description: "Open source connector library - Install API connectors with a single command",
5769
5867
  type: "module",
5770
5868
  bin: {
@@ -5775,7 +5873,6 @@ var package_default = {
5775
5873
  files: [
5776
5874
  "bin/",
5777
5875
  "dist/",
5778
- "dashboard/dist/",
5779
5876
  "connectors/",
5780
5877
  "README.md",
5781
5878
  "!connectors/**/.test-home/**",
@@ -5795,20 +5892,23 @@ var package_default = {
5795
5892
  "./social": {
5796
5893
  import: "./dist/social/index.js",
5797
5894
  types: "./dist/.types/src/social/index.d.ts"
5895
+ },
5896
+ "./sdk": {
5897
+ types: "./dist/sdk/index.d.ts",
5898
+ import: "./dist/sdk/index.js",
5899
+ default: "./dist/sdk/index.js"
5798
5900
  }
5799
5901
  },
5800
5902
  main: "./dist/index.js",
5801
5903
  types: "./dist/index.d.ts",
5802
5904
  scripts: {
5803
- 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",
5804
- "build:dashboard": "cd dashboard && bun run build",
5805
- 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)',
5905
+ build: "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 && bun build ./src/sdk/index.ts --outfile ./dist/sdk/index.js --target bun && tsc --emitDeclarationOnly --outDir ./dist && tsc -p tsconfig.social.json",
5906
+ postinstall: "mkdir -p $HOME/.hasna/connectors 2>/dev/null || true",
5806
5907
  dev: "bun run ./src/cli/index.tsx",
5807
5908
  "check:package-secrets": "bun run scripts/check-package-secrets.ts",
5808
5909
  typecheck: "tsc --noEmit && tsc -p tsconfig.social.json --noEmit",
5809
5910
  test: "bun run build && bun test",
5810
5911
  "secrets:scan:npmrc": "bun run scripts/scan-npmrc-auth.mjs",
5811
- "sdk:build": "cd sdk && bun run build",
5812
5912
  prepublishOnly: "bun run secrets:scan:npmrc && bun run build && bun run check:package-secrets && bun test",
5813
5913
  prepack: "bun run build && bun run check:package-secrets"
5814
5914
  },
@@ -5828,7 +5928,7 @@ var package_default = {
5828
5928
  author: "Hasna",
5829
5929
  license: "Apache-2.0",
5830
5930
  devDependencies: {
5831
- "@types/bun": "latest",
5931
+ "@types/bun": "1.3.14",
5832
5932
  "@types/react": "^18.2.0",
5833
5933
  "ink-testing-library": "^4.0.0",
5834
5934
  typescript: "^5",
@@ -5858,17 +5958,18 @@ var package_default = {
5858
5958
  },
5859
5959
  repository: {
5860
5960
  type: "git",
5861
- url: "git+https://github.com/hasna/connectors.git"
5961
+ url: "https://github.com/hasna/apps.git",
5962
+ directory: "apps/connectors"
5862
5963
  },
5863
- homepage: "https://github.com/hasna/connectors#readme",
5964
+ homepage: "https://github.com/hasna/apps/tree/main/apps/connectors#readme",
5864
5965
  bugs: {
5865
- url: "https://github.com/hasna/connectors/issues"
5966
+ url: "https://github.com/hasna/apps/issues"
5866
5967
  }
5867
5968
  };
5868
5969
 
5869
5970
  // src/core/connectors/imessage.ts
5870
5971
  import {
5871
- existsSync as existsSync6,
5972
+ existsSync as existsSync7,
5872
5973
  mkdirSync as mkdirSync4,
5873
5974
  readFileSync as readFileSync3,
5874
5975
  readdirSync as readdirSync5,
@@ -5876,40 +5977,39 @@ import {
5876
5977
  statSync as statSync3,
5877
5978
  writeFileSync as writeFileSync3
5878
5979
  } from "fs";
5879
- import { join as join6 } from "path";
5980
+ import { join as join7 } from "path";
5880
5981
 
5881
5982
  // src/lib/connector-resolver.ts
5882
- import { existsSync as existsSync5, readdirSync as readdirSync4, statSync as statSync2 } from "fs";
5883
- import { join as join5 } from "path";
5983
+ import { existsSync as existsSync6, readdirSync as readdirSync4, statSync as statSync2 } from "fs";
5984
+ import { join as join6 } from "path";
5884
5985
 
5885
5986
  // src/db/database.ts
5886
- import { dirname as dirname2, join as join4 } from "path";
5887
- import { homedir as homedir3 } from "os";
5888
- import { mkdirSync as mkdirSync3, existsSync as existsSync4, readdirSync as readdirSync3, copyFileSync, statSync } from "fs";
5987
+ import { dirname as dirname2, join as join5 } from "path";
5988
+ import { mkdirSync as mkdirSync3, existsSync as existsSync5, readdirSync as readdirSync3, copyFileSync, statSync } from "fs";
5889
5989
  function mergeDirectoryContents(sourceDir, targetDir) {
5890
- if (!existsSync4(sourceDir)) {
5990
+ if (!existsSync5(sourceDir)) {
5891
5991
  return;
5892
5992
  }
5893
5993
  mkdirSync3(targetDir, { recursive: true });
5894
5994
  for (const entry of readdirSync3(sourceDir)) {
5895
- const sourcePath = join4(sourceDir, entry);
5896
- const targetPath = join4(targetDir, entry);
5995
+ const sourcePath = join5(sourceDir, entry);
5996
+ const targetPath = join5(targetDir, entry);
5897
5997
  try {
5898
5998
  const sourceStat = statSync(sourcePath);
5899
5999
  if (sourceStat.isDirectory()) {
5900
6000
  mergeDirectoryContents(sourcePath, targetPath);
5901
6001
  continue;
5902
6002
  }
5903
- if (!existsSync4(targetPath)) {
6003
+ if (!existsSync5(targetPath)) {
5904
6004
  copyFileSync(sourcePath, targetPath);
5905
6005
  }
5906
6006
  } catch {}
5907
6007
  }
5908
6008
  }
5909
6009
  function getConnectorsHome() {
5910
- const home = process.env["HOME"] || process.env["USERPROFILE"] || homedir3();
5911
- const newDir = join4(home, ".hasna", "connectors");
5912
- const legacyDirs = [join4(home, ".connectors"), join4(home, ".connect")];
6010
+ const newDir = connectorsHome();
6011
+ const home = effectiveHome();
6012
+ const legacyDirs = [join5(home, ".connectors"), join5(home, ".connect")];
5913
6013
  mkdirSync3(newDir, { recursive: true });
5914
6014
  for (const legacyDir of legacyDirs) {
5915
6015
  try {
@@ -5919,7 +6019,7 @@ function getConnectorsHome() {
5919
6019
  return newDir;
5920
6020
  }
5921
6021
  var DB_DIR = getConnectorsHome();
5922
- var DB_PATH = join4(DB_DIR, "connectors.db");
6022
+ var DB_PATH = join5(DB_DIR, "connectors.db");
5923
6023
 
5924
6024
  // src/lib/connector-resolver.ts
5925
6025
  var LEGACY_CONNECTOR_PREFIX = "connect-";
@@ -5970,8 +6070,8 @@ function connectorPackageDirNames(name) {
5970
6070
  function resolveConnectorPackagePath(connectorsDir, name) {
5971
6071
  const resolution = resolveConnectorName(name);
5972
6072
  const dirNames = connectorPackageDirNames(name);
5973
- const checkedPaths = dirNames.map((dirName) => join5(connectorsDir, dirName));
5974
- const existingPath = checkedPaths.find((path) => existsSync5(path)) ?? null;
6073
+ const checkedPaths = dirNames.map((dirName) => join6(connectorsDir, dirName));
6074
+ const existingPath = checkedPaths.find((path) => existsSync6(path)) ?? null;
5975
6075
  const existingDirName = existingPath ? dirNames[checkedPaths.indexOf(existingPath)] : null;
5976
6076
  return {
5977
6077
  ...resolution,
@@ -5987,16 +6087,16 @@ function getConnectorPackagePath(connectorsDir, name) {
5987
6087
  const resolved = resolveConnectorPackagePath(connectorsDir, name);
5988
6088
  return resolved.existingPath ?? resolved.preferredPath;
5989
6089
  }
5990
- function resolveConnectorConfigPaths(name, connectorsHome = getConnectorsHome()) {
6090
+ function resolveConnectorConfigPaths(name, connectorsHome2 = getConnectorsHome()) {
5991
6091
  const resolution = resolveConnectorName(name);
5992
6092
  const preferredDirName = resolution.canonicalName || resolution.legacyName;
5993
- const preferredPath = join5(connectorsHome, preferredDirName);
5994
- const legacyPath = join5(connectorsHome, resolution.legacyName);
6093
+ const preferredPath = join6(connectorsHome2, preferredDirName);
6094
+ const legacyPath = join6(connectorsHome2, resolution.legacyName);
5995
6095
  const paths = preferredPath === legacyPath ? [preferredPath] : [preferredPath, legacyPath];
5996
- const existingPaths = paths.filter((path) => existsSync5(path));
6096
+ const existingPaths = paths.filter((path) => existsSync6(path));
5997
6097
  return {
5998
6098
  ...resolution,
5999
- connectorsHome,
6099
+ connectorsHome: connectorsHome2,
6000
6100
  preferredDirName,
6001
6101
  preferredPath,
6002
6102
  legacyPath,
@@ -6004,11 +6104,11 @@ function resolveConnectorConfigPaths(name, connectorsHome = getConnectorsHome())
6004
6104
  readPaths: paths
6005
6105
  };
6006
6106
  }
6007
- function getConnectorConfigDir(name, connectorsHome = getConnectorsHome()) {
6008
- return resolveConnectorConfigPaths(name, connectorsHome).preferredPath;
6107
+ function getConnectorConfigDir(name, connectorsHome2 = getConnectorsHome()) {
6108
+ return resolveConnectorConfigPaths(name, connectorsHome2).preferredPath;
6009
6109
  }
6010
- function getConnectorConfigReadDirs(name, connectorsHome = getConnectorsHome()) {
6011
- return resolveConnectorConfigPaths(name, connectorsHome).readPaths;
6110
+ function getConnectorConfigReadDirs(name, connectorsHome2 = getConnectorsHome()) {
6111
+ return resolveConnectorConfigPaths(name, connectorsHome2).readPaths;
6012
6112
  }
6013
6113
 
6014
6114
  // src/core/connectors/imessage.ts
@@ -6136,7 +6236,7 @@ API Key authentication is optional and depends on the bridge deployment. A bridg
6136
6236
 
6137
6237
  ## Data Storage
6138
6238
 
6139
- Connector state is stored under \`~/.hasna/connectors/imessage/\`. Profiles are read from both \`profiles/<name>.json\` and \`profiles/<name>/config.json\` so the connector stays compatible with the shared dashboard auth helpers while remaining fully internal to the one-product repo.
6239
+ Connector state is stored under \`~/.hasna/connectors/imessage/\`. Profiles are read from both \`profiles/<name>.json\` and \`profiles/<name>/config.json\` so the connector stays compatible with the shared auth helpers while remaining fully internal to the one-product repo.
6140
6240
  `;
6141
6241
  var commandInputSchema = exports_external.object({
6142
6242
  args: exports_external.array(exports_external.string()).default([]),
@@ -6178,12 +6278,12 @@ function getConfigReadDirs() {
6178
6278
  return getConnectorConfigReadDirs(CONNECTOR_NAME);
6179
6279
  }
6180
6280
  function getProfilesDir() {
6181
- return join6(getConfigDir(), "profiles");
6281
+ return join7(getConfigDir(), "profiles");
6182
6282
  }
6183
6283
  function getCurrentProfile() {
6184
6284
  for (const configDir of getConfigReadDirs()) {
6185
- const currentProfileFile = join6(configDir, "current_profile");
6186
- if (!existsSync6(currentProfileFile))
6285
+ const currentProfileFile = join7(configDir, "current_profile");
6286
+ if (!existsSync7(currentProfileFile))
6187
6287
  continue;
6188
6288
  try {
6189
6289
  return readFileSync3(currentProfileFile, "utf-8").trim() || "default";
@@ -6196,16 +6296,16 @@ function getCurrentProfile() {
6196
6296
  function setCurrentProfile(profile) {
6197
6297
  const configDir = getConfigDir();
6198
6298
  mkdirSync4(configDir, { recursive: true });
6199
- writeFileSync3(join6(configDir, "current_profile"), profile);
6299
+ writeFileSync3(join7(configDir, "current_profile"), profile);
6200
6300
  }
6201
6301
  function getFlatProfilePath(profile) {
6202
- return join6(getProfilesDir(), `${profile}.json`);
6302
+ return join7(getProfilesDir(), `${profile}.json`);
6203
6303
  }
6204
6304
  function getFlatProfileReadPaths(profile) {
6205
- return getConfigReadDirs().map((dir) => join6(dir, "profiles", `${profile}.json`));
6305
+ return getConfigReadDirs().map((dir) => join7(dir, "profiles", `${profile}.json`));
6206
6306
  }
6207
6307
  function getDirectoryProfileReadPaths(profile) {
6208
- return getConfigReadDirs().map((dir) => join6(dir, "profiles", profile, "config.json"));
6308
+ return getConfigReadDirs().map((dir) => join7(dir, "profiles", profile, "config.json"));
6209
6309
  }
6210
6310
  function loadJsonFile(path) {
6211
6311
  try {
@@ -6225,8 +6325,8 @@ function sanitizeProfileConfig(config) {
6225
6325
  };
6226
6326
  }
6227
6327
  function loadProfile(profile = getCurrentProfile()) {
6228
- const flatConfig = getFlatProfileReadPaths(profile).reverse().reduce((config, path) => ({ ...config, ...existsSync6(path) ? loadJsonFile(path) : {} }), {});
6229
- const directoryConfig = getDirectoryProfileReadPaths(profile).reverse().reduce((config, path) => ({ ...config, ...existsSync6(path) ? loadJsonFile(path) : {} }), {});
6328
+ const flatConfig = getFlatProfileReadPaths(profile).reverse().reduce((config, path) => ({ ...config, ...existsSync7(path) ? loadJsonFile(path) : {} }), {});
6329
+ const directoryConfig = getDirectoryProfileReadPaths(profile).reverse().reduce((config, path) => ({ ...config, ...existsSync7(path) ? loadJsonFile(path) : {} }), {});
6230
6330
  return sanitizeProfileConfig({
6231
6331
  ...flatConfig,
6232
6332
  ...directoryConfig
@@ -6242,17 +6342,17 @@ function profileExists(profile) {
6242
6342
  if (profile === "default") {
6243
6343
  return true;
6244
6344
  }
6245
- return getFlatProfileReadPaths(profile).some((path) => existsSync6(path)) || getConfigReadDirs().some((dir) => existsSync6(join6(dir, "profiles", profile)));
6345
+ return getFlatProfileReadPaths(profile).some((path) => existsSync7(path)) || getConfigReadDirs().some((dir) => existsSync7(join7(dir, "profiles", profile)));
6246
6346
  }
6247
6347
  function listProfiles3() {
6248
6348
  const seen = new Set(["default"]);
6249
6349
  for (const configDir of getConfigReadDirs()) {
6250
- const profilesDir = join6(configDir, "profiles");
6251
- if (!existsSync6(profilesDir))
6350
+ const profilesDir = join7(configDir, "profiles");
6351
+ if (!existsSync7(profilesDir))
6252
6352
  continue;
6253
6353
  try {
6254
6354
  for (const entry of readdirSync5(profilesDir)) {
6255
- const fullPath = join6(profilesDir, entry);
6355
+ const fullPath = join7(profilesDir, entry);
6256
6356
  const stat = statSync3(fullPath);
6257
6357
  if (stat.isDirectory()) {
6258
6358
  seen.add(entry);
@@ -6274,11 +6374,11 @@ function createProfile(profile, config = {}) {
6274
6374
  }
6275
6375
  function clearProfile(profile = getCurrentProfile()) {
6276
6376
  const flatPath = getFlatProfilePath(profile);
6277
- const directoryPath = join6(getProfilesDir(), profile);
6278
- if (existsSync6(flatPath)) {
6377
+ const directoryPath = join7(getProfilesDir(), profile);
6378
+ if (existsSync7(flatPath)) {
6279
6379
  rmSync(flatPath);
6280
6380
  }
6281
- if (existsSync6(directoryPath)) {
6381
+ if (existsSync7(directoryPath)) {
6282
6382
  rmSync(directoryPath, { recursive: true, force: true });
6283
6383
  }
6284
6384
  }
@@ -7083,19 +7183,19 @@ var imessageConnector = defineConnector({
7083
7183
  });
7084
7184
 
7085
7185
  // src/core/connectors/stripe.ts
7086
- import { existsSync as existsSync7 } from "fs";
7087
- import { dirname as dirname3, join as join7 } from "path";
7186
+ import { existsSync as existsSync8 } from "fs";
7187
+ import { dirname as dirname3, join as join8 } from "path";
7088
7188
  import { fileURLToPath as fileURLToPath2, pathToFileURL as pathToFileURL2 } from "url";
7089
7189
  var __dirname3 = dirname3(fileURLToPath2(import.meta.url));
7090
7190
  function resolveStripeConnectorDir() {
7091
7191
  const candidates = [
7092
- join7(__dirname3, "..", "..", "..", "connectors", "stripe"),
7093
- join7(__dirname3, "..", "..", "connectors", "stripe"),
7094
- join7(__dirname3, "..", "connectors", "stripe"),
7095
- join7(process.cwd(), "connectors", "stripe")
7192
+ join8(__dirname3, "..", "..", "..", "connectors", "stripe"),
7193
+ join8(__dirname3, "..", "..", "connectors", "stripe"),
7194
+ join8(__dirname3, "..", "connectors", "stripe"),
7195
+ join8(process.cwd(), "connectors", "stripe")
7096
7196
  ];
7097
7197
  for (const candidate of candidates) {
7098
- if (existsSync7(candidate)) {
7198
+ if (existsSync8(candidate)) {
7099
7199
  return candidate;
7100
7200
  }
7101
7201
  }
@@ -7334,10 +7434,10 @@ function buildCommandHelp2(spec) {
7334
7434
  var ROOT_HELP3 = buildRootHelp2(COMMAND_SPECS2);
7335
7435
  var COMMAND_HELP3 = Object.fromEntries(COMMAND_SPECS2.map((spec) => [spec.name, buildCommandHelp2(spec)]));
7336
7436
  async function loadStripeApiModule() {
7337
- return await import(pathToFileURL2(join7(CONNECTOR_DIR2, "src", "api", "index.ts")).href);
7437
+ return await import(pathToFileURL2(join8(CONNECTOR_DIR2, "src", "api", "index.ts")).href);
7338
7438
  }
7339
7439
  async function loadStripeConfigModule() {
7340
- return await import(pathToFileURL2(join7(CONNECTOR_DIR2, "src", "utils", "config.ts")).href);
7440
+ return await import(pathToFileURL2(join8(CONNECTOR_DIR2, "src", "utils", "config.ts")).href);
7341
7441
  }
7342
7442
  function extractGlobalArgs3(args) {
7343
7443
  const remaining = [];
@@ -16393,16 +16493,16 @@ function loadConnectorVersions() {
16393
16493
  versionsLoaded = true;
16394
16494
  const thisDir = dirname4(fileURLToPath3(import.meta.url));
16395
16495
  const candidates = [
16396
- join8(thisDir, "..", "connectors"),
16397
- join8(thisDir, "..", "..", "connectors")
16496
+ join9(thisDir, "..", "connectors"),
16497
+ join9(thisDir, "..", "..", "connectors")
16398
16498
  ];
16399
- const connectorsDir = candidates.find((d) => existsSync8(d));
16499
+ const connectorsDir = candidates.find((d) => existsSync9(d));
16400
16500
  if (!connectorsDir)
16401
16501
  return;
16402
16502
  for (const connector of CONNECTORS) {
16403
16503
  try {
16404
- const pkgPath = join8(getConnectorPackagePath(connectorsDir, connector.name), "package.json");
16405
- if (existsSync8(pkgPath)) {
16504
+ const pkgPath = join9(getConnectorPackagePath(connectorsDir, connector.name), "package.json");
16505
+ if (existsSync9(pkgPath)) {
16406
16506
  const pkg = JSON.parse(readFileSync4(pkgPath, "utf-8"));
16407
16507
  connector.version = pkg.version || "0.0.0";
16408
16508
  continue;
@@ -16415,16 +16515,16 @@ function loadConnectorVersions() {
16415
16515
  }
16416
16516
  }
16417
16517
  // src/lib/installer.ts
16418
- import { existsSync as existsSync9, mkdirSync as mkdirSync5, readFileSync as readFileSync5, writeFileSync as writeFileSync4, readdirSync as readdirSync6, statSync as statSync4, rmSync as rmSync2 } from "fs";
16419
- import { join as join9, dirname as dirname5 } from "path";
16518
+ import { existsSync as existsSync10, mkdirSync as mkdirSync5, readFileSync as readFileSync5, writeFileSync as writeFileSync4, readdirSync as readdirSync6, statSync as statSync4, rmSync as rmSync2 } from "fs";
16519
+ import { join as join10, dirname as dirname5 } from "path";
16420
16520
  import { fileURLToPath as fileURLToPath4 } from "url";
16421
16521
  var __dirname4 = dirname5(fileURLToPath4(import.meta.url));
16422
16522
  function resolveConnectorsDir() {
16423
- const fromBin = join9(__dirname4, "..", "connectors");
16424
- if (existsSync9(fromBin))
16523
+ const fromBin = join10(__dirname4, "..", "connectors");
16524
+ if (existsSync10(fromBin))
16425
16525
  return fromBin;
16426
- const fromSrc = join9(__dirname4, "..", "..", "connectors");
16427
- if (existsSync9(fromSrc))
16526
+ const fromSrc = join10(__dirname4, "..", "..", "connectors");
16527
+ if (existsSync10(fromSrc))
16428
16528
  return fromSrc;
16429
16529
  return fromBin;
16430
16530
  }
@@ -16433,17 +16533,17 @@ var PROJECT_CONNECTORS_DIRNAME = ".connectors";
16433
16533
  var ENABLEMENT_MANIFEST_FILENAME = "manifest.json";
16434
16534
  var ENABLEMENT_INDEX_FILENAME = "index.ts";
16435
16535
  function getProjectConnectorsDir(targetDir) {
16436
- return join9(targetDir, PROJECT_CONNECTORS_DIRNAME);
16536
+ return join10(targetDir, PROJECT_CONNECTORS_DIRNAME);
16437
16537
  }
16438
16538
  function getEnablementManifestPath(targetDir) {
16439
- return join9(getProjectConnectorsDir(targetDir), ENABLEMENT_MANIFEST_FILENAME);
16539
+ return join10(getProjectConnectorsDir(targetDir), ENABLEMENT_MANIFEST_FILENAME);
16440
16540
  }
16441
16541
  function getLegacyInstallPath(targetDir, name) {
16442
- return join9(getProjectConnectorsDir(targetDir), legacyConnectorName(name));
16542
+ return join10(getProjectConnectorsDir(targetDir), legacyConnectorName(name));
16443
16543
  }
16444
16544
  function loadEnablementManifest(targetDir) {
16445
16545
  const manifestPath = getEnablementManifestPath(targetDir);
16446
- if (!existsSync9(manifestPath)) {
16546
+ if (!existsSync10(manifestPath)) {
16447
16547
  return null;
16448
16548
  }
16449
16549
  try {
@@ -16463,11 +16563,11 @@ function loadEnablementManifest(targetDir) {
16463
16563
  }
16464
16564
  function getLegacyInstalledConnectors(targetDir) {
16465
16565
  const connectorsDir = getProjectConnectorsDir(targetDir);
16466
- if (!existsSync9(connectorsDir)) {
16566
+ if (!existsSync10(connectorsDir)) {
16467
16567
  return [];
16468
16568
  }
16469
16569
  return readdirSync6(connectorsDir).filter((entry) => {
16470
- const fullPath = join9(connectorsDir, entry);
16570
+ const fullPath = join10(connectorsDir, entry);
16471
16571
  return entry.startsWith("connect-") && statSync4(fullPath).isDirectory();
16472
16572
  }).map((entry) => entry.replace("connect-", "")).sort();
16473
16573
  }
@@ -16476,7 +16576,7 @@ function getEnabledConnectors(targetDir) {
16476
16576
  return [...new Set([...manifestConnectors, ...getLegacyInstalledConnectors(targetDir)])].sort();
16477
16577
  }
16478
16578
  function updateConnectorsIndex(connectorsDir, connectors18) {
16479
- const indexPath = join9(connectorsDir, ENABLEMENT_INDEX_FILENAME);
16579
+ const indexPath = join10(connectorsDir, ENABLEMENT_INDEX_FILENAME);
16480
16580
  const connectorList = connectors18.map((connector) => ` "${connector}",`).join(`
16481
16581
  `);
16482
16582
  const content = `/**
@@ -16512,7 +16612,7 @@ function getConnectorPath(name) {
16512
16612
  }
16513
16613
  function connectorExists(name) {
16514
16614
  const normalizedName = normalizeConnectorName(name);
16515
- return hasInternalConnectorDefinition(normalizedName) || existsSync9(getConnectorPath(normalizedName));
16615
+ return hasInternalConnectorDefinition(normalizedName) || existsSync10(getConnectorPath(normalizedName));
16516
16616
  }
16517
16617
  function installConnector(name, options = {}) {
16518
16618
  const { targetDir = process.cwd(), overwrite = false } = options;
@@ -16545,7 +16645,7 @@ function installConnector(name, options = {}) {
16545
16645
  try {
16546
16646
  const nextEnabled = [...new Set([...installed, normalizedName])].sort();
16547
16647
  writeEnablementManifest(targetDir, nextEnabled);
16548
- if (overwrite && existsSync9(legacyInstallPath)) {
16648
+ if (overwrite && existsSync10(legacyInstallPath)) {
16549
16649
  rmSync2(legacyInstallPath, { recursive: true });
16550
16650
  }
16551
16651
  return {
@@ -16580,8 +16680,8 @@ function parseConnectorDocs(raw) {
16580
16680
  function getConnectorDocs(name) {
16581
16681
  const normalizedName = normalizeConnectorName(name);
16582
16682
  const connectorPath = getConnectorPath(normalizedName);
16583
- const claudeMdPath = join9(connectorPath, "CLAUDE.md");
16584
- if (existsSync9(claudeMdPath)) {
16683
+ const claudeMdPath = join10(connectorPath, "CLAUDE.md");
16684
+ if (existsSync10(claudeMdPath)) {
16585
16685
  return parseConnectorDocs(readFileSync5(claudeMdPath, "utf-8"));
16586
16686
  }
16587
16687
  const internalDocs = getInternalConnectorDefinition(normalizedName)?.docsMarkdown;
@@ -16626,20 +16726,20 @@ function removeConnector(name, targetDir = process.cwd()) {
16626
16726
  const nextEnabled = installed.filter((connector) => connector !== normalizedName);
16627
16727
  writeEnablementManifest(targetDir, nextEnabled);
16628
16728
  const legacyInstallPath = getLegacyInstallPath(targetDir, normalizedName);
16629
- if (existsSync9(legacyInstallPath)) {
16729
+ if (existsSync10(legacyInstallPath)) {
16630
16730
  rmSync2(legacyInstallPath, { recursive: true });
16631
16731
  }
16632
16732
  return true;
16633
16733
  }
16634
16734
  // src/lib/runner.ts
16635
- import { existsSync as existsSync11, readdirSync as readdirSync8 } from "fs";
16636
- import { join as join11, dirname as dirname6 } from "path";
16735
+ import { existsSync as existsSync12, readdirSync as readdirSync8 } from "fs";
16736
+ import { join as join12, dirname as dirname6 } from "path";
16637
16737
  import { fileURLToPath as fileURLToPath5 } from "url";
16638
16738
  import { spawn } from "child_process";
16639
16739
 
16640
16740
  // src/server/auth.ts
16641
- import { chmodSync, existsSync as existsSync10, readFileSync as readFileSync6, writeFileSync as writeFileSync5, mkdirSync as mkdirSync6, readdirSync as readdirSync7, rmSync as rmSync3, statSync as statSync5 } from "fs";
16642
- import { join as join10 } from "path";
16741
+ import { chmodSync, existsSync as existsSync11, readFileSync as readFileSync6, writeFileSync as writeFileSync5, mkdirSync as mkdirSync6, readdirSync as readdirSync7, rmSync as rmSync3, statSync as statSync5 } from "fs";
16742
+ import { join as join11 } from "path";
16643
16743
  var oauthStateStore = new Map;
16644
16744
  var GOOGLE_SCOPES = {
16645
16745
  gmail: [
@@ -16703,8 +16803,8 @@ function getConnectorConfigReadDirs2(name) {
16703
16803
  function getCurrentProfile2(name) {
16704
16804
  name = normalizeConnectorName(name);
16705
16805
  for (const configDir of getConnectorConfigReadDirs2(name)) {
16706
- const currentProfileFile = join10(configDir, "current_profile");
16707
- if (existsSync10(currentProfileFile)) {
16806
+ const currentProfileFile = join11(configDir, "current_profile");
16807
+ if (existsSync11(currentProfileFile)) {
16708
16808
  try {
16709
16809
  return readFileSync6(currentProfileFile, "utf-8").trim() || "default";
16710
16810
  } catch {
@@ -16717,14 +16817,14 @@ function getCurrentProfile2(name) {
16717
16817
  function loadProfileConfigFromDir(configDir, profile) {
16718
16818
  let flatConfig = {};
16719
16819
  let dirConfig = {};
16720
- const profileFile = join10(configDir, "profiles", `${profile}.json`);
16721
- if (existsSync10(profileFile)) {
16820
+ const profileFile = join11(configDir, "profiles", `${profile}.json`);
16821
+ if (existsSync11(profileFile)) {
16722
16822
  try {
16723
16823
  flatConfig = JSON.parse(readFileSync6(profileFile, "utf-8"));
16724
16824
  } catch {}
16725
16825
  }
16726
- const profileDirConfig = join10(configDir, "profiles", profile, "config.json");
16727
- if (existsSync10(profileDirConfig)) {
16826
+ const profileDirConfig = join11(configDir, "profiles", profile, "config.json");
16827
+ if (existsSync11(profileDirConfig)) {
16728
16828
  try {
16729
16829
  dirConfig = JSON.parse(readFileSync6(profileDirConfig, "utf-8"));
16730
16830
  } catch {}
@@ -16744,8 +16844,8 @@ function loadTokens3(name) {
16744
16844
  name = normalizeConnectorName(name);
16745
16845
  const profile = getCurrentProfile2(name);
16746
16846
  for (const configDir of getConnectorConfigReadDirs2(name)) {
16747
- const tokensFile = join10(configDir, "profiles", profile, "tokens.json");
16748
- if (existsSync10(tokensFile)) {
16847
+ const tokensFile = join11(configDir, "profiles", profile, "tokens.json");
16848
+ if (existsSync11(tokensFile)) {
16749
16849
  try {
16750
16850
  return JSON.parse(readFileSync6(tokensFile, "utf-8"));
16751
16851
  } catch {
@@ -16773,8 +16873,8 @@ function getEnvVars(name) {
16773
16873
  function getOAuthConfig(name) {
16774
16874
  name = normalizeConnectorName(name);
16775
16875
  for (const configDir of getConnectorConfigReadDirs2(name)) {
16776
- const credentialsFile = join10(configDir, "credentials.json");
16777
- if (existsSync10(credentialsFile)) {
16876
+ const credentialsFile = join11(configDir, "credentials.json");
16877
+ if (existsSync11(credentialsFile)) {
16778
16878
  try {
16779
16879
  const creds = JSON.parse(readFileSync6(credentialsFile, "utf-8"));
16780
16880
  return { clientId: creds.clientId, clientSecret: creds.clientSecret };
@@ -16791,11 +16891,11 @@ function getOAuthConfig(name) {
16791
16891
  // src/lib/runner.ts
16792
16892
  var __dirname5 = dirname6(fileURLToPath5(import.meta.url));
16793
16893
  function resolveConnectorsDir2() {
16794
- const fromBin = join11(__dirname5, "..", "connectors");
16795
- if (existsSync11(fromBin))
16894
+ const fromBin = join12(__dirname5, "..", "connectors");
16895
+ if (existsSync12(fromBin))
16796
16896
  return fromBin;
16797
- const fromSrc = join11(__dirname5, "..", "..", "connectors");
16798
- if (existsSync11(fromSrc))
16897
+ const fromSrc = join12(__dirname5, "..", "..", "connectors");
16898
+ if (existsSync12(fromSrc))
16799
16899
  return fromSrc;
16800
16900
  return fromBin;
16801
16901
  }
@@ -16871,8 +16971,8 @@ function buildEnvWithCredentials(connectorName, baseEnv) {
16871
16971
  function getConnectorCliPath(name) {
16872
16972
  const safeName = normalizeConnectorName(name).replace(/[^a-z0-9-]/g, "");
16873
16973
  const connectorDir = getConnectorPackagePath(CONNECTORS_DIR2, safeName);
16874
- const cliPath = join11(connectorDir, "src", "cli", "index.ts");
16875
- if (existsSync11(cliPath))
16974
+ const cliPath = join12(connectorDir, "src", "cli", "index.ts");
16975
+ if (existsSync12(cliPath))
16876
16976
  return cliPath;
16877
16977
  return null;
16878
16978
  }
@@ -17066,7 +17166,7 @@ function runLegacyConnectorCommand(name, args, timeoutMs = 30000) {
17066
17166
  success: false
17067
17167
  });
17068
17168
  }
17069
- return new Promise((resolve) => {
17169
+ return new Promise((resolve2) => {
17070
17170
  const proc = spawn("bun", ["run", cliPath, ...args], {
17071
17171
  timeout: timeoutMs,
17072
17172
  env: buildEnvWithCredentials(connectorName, process.env),
@@ -17081,7 +17181,7 @@ function runLegacyConnectorCommand(name, args, timeoutMs = 30000) {
17081
17181
  stderr += data.toString();
17082
17182
  });
17083
17183
  proc.on("close", (code) => {
17084
- resolve({
17184
+ resolve2({
17085
17185
  stdout: stdout.trim(),
17086
17186
  stderr: stderr.trim(),
17087
17187
  exitCode: code ?? 1,
@@ -17089,7 +17189,7 @@ function runLegacyConnectorCommand(name, args, timeoutMs = 30000) {
17089
17189
  });
17090
17190
  });
17091
17191
  proc.on("error", (err) => {
17092
- resolve({
17192
+ resolve2({
17093
17193
  stdout: "",
17094
17194
  stderr: err.message,
17095
17195
  exitCode: 1,