@tool-bridge/server 0.21.1 → 0.22.1

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 (178) hide show
  1. package/dist/admin.js +170 -0
  2. package/dist/airtable-ML2GIGCH.js +790 -0
  3. package/dist/{alt_text_generator_ai-W7O34SNG.js → alt_text_generator_ai-FGYQAF2A.js} +12 -11
  4. package/dist/{amap-VOX4T2AW.js → amap-G7V65NGK.js} +221 -220
  5. package/dist/anthropic-6ZK24TBB.js +203 -0
  6. package/dist/apify-VDGYHP6W.js +248 -0
  7. package/dist/brave_search-TAATLZOS.js +302 -0
  8. package/dist/chunk-2IAI3XQM.js +302 -0
  9. package/dist/chunk-7ISGFRC6.js +161 -0
  10. package/dist/{chunk-E6JCVKW6.js → chunk-BNMLA2RC.js} +3 -3
  11. package/dist/chunk-HA4BGL6C.js +8429 -0
  12. package/dist/{chunk-KMTT3I6D.js → chunk-RMAWSG7E.js} +19172 -25717
  13. package/dist/{chunk-XYBU3WZH.js → chunk-RTW5VRTK.js} +3 -3
  14. package/dist/chunk-U7PTOA3U.js +7320 -0
  15. package/dist/chunk-UY6ANCOY.js +378 -0
  16. package/dist/{chunk-ATK45BXV.js → chunk-X7ZUTKHR.js} +4 -2
  17. package/dist/circleci-BQ2UWXL2.js +389 -0
  18. package/dist/clerk-2JYWQNOI.js +1019 -0
  19. package/dist/cohere-6MI7AQM4.js +185 -0
  20. package/dist/{confluence-B3EWPZVE.js → confluence-6Y6GDETF.js} +105 -104
  21. package/dist/{convertapi-EUWSQYPF.js → convertapi-HBZCSWOX.js} +32 -31
  22. package/dist/{currencyapi-KVTIK3GL.js → currencyapi-337U5TGI.js} +71 -71
  23. package/dist/deepseek-OSPASO7O.js +210 -0
  24. package/dist/docker_hub-3ATQOY5L.js +933 -0
  25. package/dist/dropbox-LSA4GM2Y.js +1305 -0
  26. package/dist/dub-VZPJSPI6.js +680 -0
  27. package/dist/e2b-6SDYQZL2.js +278 -0
  28. package/dist/exa-B6EUYDVP.js +332 -0
  29. package/dist/{fal_ai-23E7JPNT.js → fal_ai-K4Q27IME.js} +81 -80
  30. package/dist/{feishu-7QRIDUV6.js → feishu-4TKXG4SU.js} +528 -572
  31. package/dist/{feishu_custom_bot-TJ4K7QNJ.js → feishu_custom_bot-7CTEAKRB.js} +57 -53
  32. package/dist/figma-OUKSZLD5.js +777 -0
  33. package/dist/firehydrant-7MOYL7QH.js +563 -0
  34. package/dist/{fixer-BWON27UO.js → fixer-H2BV2NO4.js} +34 -33
  35. package/dist/fly-PXKY6PNH.js +469 -0
  36. package/dist/{front-QCGXYEDJ.js → front-UZYIV5DW.js} +104 -104
  37. package/dist/geocodio-NSYO7TFP.js +213 -0
  38. package/dist/ghost-QBKKQQMF.js +338 -0
  39. package/dist/github-ENLSJ4CL.js +5421 -0
  40. package/dist/gmail-KQSDEB47.js +1887 -0
  41. package/dist/googlecalendar-5YCX4SZF.js +2524 -0
  42. package/dist/{googledocs-BUHL4J2H.js → googledocs-SSWIVFKA.js} +341 -340
  43. package/dist/{grafana-GLU2DWF2.js → grafana-TF2LXDQA.js} +221 -220
  44. package/dist/graphhopper-CURBVHYK.js +325 -0
  45. package/dist/index.d.ts +1132 -332
  46. package/dist/index.js +31 -14
  47. package/dist/{ip2proxy-EZ64Y4ZH.js → ip2proxy-YNVMTZEM.js} +28 -27
  48. package/dist/ipgeolocation_io-NAU7VJ4J.js +315 -0
  49. package/dist/ipqualityscore-OT63L4TI.js +279 -0
  50. package/dist/{jina_ai-EFBHTBXL.js → jina_ai-6WBMBGWM.js} +23 -23
  51. package/dist/{jira-HQSHAA5K.js → jira-DVDVTHNO.js} +118 -117
  52. package/dist/langsmith-IM5N4YAU.js +593 -0
  53. package/dist/lemlist-277SHUQF.js +289 -0
  54. package/dist/{linear-K7RYFYAD.js → linear-AEPH7B5V.js} +327 -326
  55. package/dist/logsnag-VEWRAGBG.js +150 -0
  56. package/dist/main.js +57 -280
  57. package/dist/{mattermost-S2BRCWLQ.js → mattermost-Q3A2BIZA.js} +59 -58
  58. package/dist/mem0-AXS7GZGI.js +544 -0
  59. package/dist/memos-7TXG4ZTU.js +744 -0
  60. package/dist/{metabase-MMSEPCOF.js → metabase-NSVACWQM.js} +90 -89
  61. package/dist/mistral_ai-YZ52RGD4.js +1196 -0
  62. package/dist/{mother_duck-H7PCQNZ2.js → mother_duck-XLLL6FVL.js} +94 -93
  63. package/dist/ngrok-4O4W3WZW.js +356 -0
  64. package/dist/{notes-PFMKRO33.js → notes-YTB3TJOO.js} +11 -9
  65. package/dist/notion-4W4O7J7V.js +940 -0
  66. package/dist/open_exchange_rates-23QJXVO5.js +215 -0
  67. package/dist/openai-ZS7GLSLH.js +800 -0
  68. package/dist/opengraph_io-PMVH7OYI.js +362 -0
  69. package/dist/openrouter-ONRGFNB6.js +441 -0
  70. package/dist/outline-UCUYZZ7J.js +599 -0
  71. package/dist/paddle-35HTKTUL.js +454 -0
  72. package/dist/perplexity-NVOBYN24.js +220 -0
  73. package/dist/pinecone-55CJY73C.js +571 -0
  74. package/dist/{pipedrive-Y2O7QGFF.js → pipedrive-WMCAKS72.js} +99 -98
  75. package/dist/polar-SM4ZM53B.js +395 -0
  76. package/dist/posthog-NWCXVXNJ.js +3464 -0
  77. package/dist/postmark-QJV5PHUQ.js +427 -0
  78. package/dist/{prerender-MENYM2TY.js → prerender-2W7UT4SC.js} +31 -30
  79. package/dist/{pubmed-GOXUVVH5.js → pubmed-VVV7XYLU.js} +239 -238
  80. package/dist/{railway-V2SID4WV.js → railway-KGI57S3O.js} +118 -117
  81. package/dist/readwise-AGHTQB42.js +470 -0
  82. package/dist/render-O4HBROCK.js +461 -0
  83. package/dist/{replicate-756MXPYX.js → replicate-KWBOMX7D.js} +81 -80
  84. package/dist/{resend-ZKH3BTBI.js → resend-DRH6Y6I4.js} +20 -16
  85. package/dist/rootly-XGCUDW6X.js +336 -0
  86. package/dist/{scrapfly-NSRHFDIQ.js → scrapfly-OIQ3OY6L.js} +62 -61
  87. package/dist/{scrapingbee-OQHLAVEY.js → scrapingbee-OCZO4FHX.js} +56 -56
  88. package/dist/{screenshot_fyi-DVWG3AXC.js → screenshot_fyi-CUNGFZOC.js} +16 -16
  89. package/dist/semantic_scholar-3UJRLKES.js +611 -0
  90. package/dist/{sentry-546MNDJG.js → sentry-5BWVZFJV.js} +208 -207
  91. package/dist/{shodan-C3OON3Z3.js → shodan-HI37CTEW.js} +62 -61
  92. package/dist/shopify-LJ2EV2HH.js +610 -0
  93. package/dist/stripe-3LHMV55K.js +585 -0
  94. package/dist/{supabase-U2SL4D63.js → supabase-H2KPX3Q2.js} +245 -244
  95. package/dist/tavily-FBEWGH3Z.js +326 -0
  96. package/dist/telegram-MYYO3JND.js +1767 -0
  97. package/dist/{telnyx-CXQ4EZUX.js → telnyx-H4ALEGAX.js} +57 -56
  98. package/dist/todoist-OBWICA5Q.js +664 -0
  99. package/dist/trello-GUFUJRWO.js +1080 -0
  100. package/dist/turso-NIAK4UMS.js +416 -0
  101. package/dist/{twilio-4PDBJKWX.js → twilio-K6SLK2CX.js} +70 -69
  102. package/dist/umami-42RS2EPS.js +389 -0
  103. package/dist/unsplash-V7TOTETT.js +351 -0
  104. package/dist/{upstash_redis-G4LQBYHA.js → upstash_redis-AWQMB6Y3.js} +51 -50
  105. package/dist/uptimerobot-AZC2DHOT.js +483 -0
  106. package/dist/v2ex-4TVRNMLS.js +667 -0
  107. package/dist/vercel-DPHTJ3XR.js +1076 -0
  108. package/dist/{wolfram_alpha_api-3G4PUJWB.js → wolfram_alpha_api-XAG7IXBW.js} +36 -35
  109. package/dist/wordpress-KMPKVGUX.js +812 -0
  110. package/dist/workos-PKB2YR7S.js +664 -0
  111. package/dist/zhihu-Y4H4XYPB.js +254 -0
  112. package/package.json +18 -9
  113. package/dist/airtable-LLZDFN7M.js +0 -789
  114. package/dist/anthropic-G23NN3X5.js +0 -202
  115. package/dist/apify-Y3SS734K.js +0 -247
  116. package/dist/brave_search-ZC7OAPSZ.js +0 -301
  117. package/dist/chunk-R6P4XAE5.js +0 -248
  118. package/dist/chunk-U7B6DS2O.js +0 -977
  119. package/dist/chunk-UZM2RXZH.js +0 -23436
  120. package/dist/circleci-3BAX5FCG.js +0 -388
  121. package/dist/clerk-6LEM6TNU.js +0 -1019
  122. package/dist/cloudflare_dns-KINYTJUD.js +0 -588
  123. package/dist/cohere-XCJ5AJ6B.js +0 -185
  124. package/dist/deepseek-PC5YGNC5.js +0 -209
  125. package/dist/docker_hub-C3MA5FU6.js +0 -932
  126. package/dist/dropbox-XBV7Z2IR.js +0 -1304
  127. package/dist/dub-LDOFG3HC.js +0 -679
  128. package/dist/e2b-JMCPSVBW.js +0 -277
  129. package/dist/exa-RAK7O7RD.js +0 -331
  130. package/dist/figma-E6IX5DTH.js +0 -773
  131. package/dist/firehydrant-ZBLPQREE.js +0 -562
  132. package/dist/fly-ZH3HFCZJ.js +0 -468
  133. package/dist/geocodio-YGNI7DA4.js +0 -212
  134. package/dist/ghost-EVSGKH2Q.js +0 -337
  135. package/dist/github-MA2BGRCJ.js +0 -5420
  136. package/dist/gmail-E5E6AADE.js +0 -1886
  137. package/dist/googlecalendar-BTLFPXTD.js +0 -2523
  138. package/dist/graphhopper-WSMB3TCD.js +0 -324
  139. package/dist/ipgeolocation_io-AA7HAS22.js +0 -315
  140. package/dist/ipqualityscore-BHJXVTJT.js +0 -277
  141. package/dist/langsmith-5W6SCT6F.js +0 -592
  142. package/dist/lemlist-HJWH6UMK.js +0 -288
  143. package/dist/logsnag-4KFOHL37.js +0 -150
  144. package/dist/mem0-CAW43CIC.js +0 -543
  145. package/dist/memos-TWEGPKFM.js +0 -740
  146. package/dist/mistral_ai-64BGZQHP.js +0 -1195
  147. package/dist/ngrok-GQCUGZKJ.js +0 -356
  148. package/dist/notion-DQWZWP4N.js +0 -936
  149. package/dist/open_exchange_rates-QMMD735E.js +0 -214
  150. package/dist/openai-W6PX32NZ.js +0 -799
  151. package/dist/opengraph_io-HNDBXYNW.js +0 -361
  152. package/dist/openrouter-JJYMEAUL.js +0 -437
  153. package/dist/outline-MCBNQZYY.js +0 -595
  154. package/dist/paddle-D2SKLUDN.js +0 -453
  155. package/dist/perplexity-XIFMKUAE.js +0 -219
  156. package/dist/pinecone-HUFTALV2.js +0 -570
  157. package/dist/polar-TYTOMOSR.js +0 -394
  158. package/dist/posthog-43JAR3VW.js +0 -3463
  159. package/dist/postmark-KL2QJYSG.js +0 -426
  160. package/dist/readwise-CI4GIMMJ.js +0 -469
  161. package/dist/render-SUBJ6YRZ.js +0 -460
  162. package/dist/rootly-CD2LJHPI.js +0 -336
  163. package/dist/semantic_scholar-T4A252KW.js +0 -610
  164. package/dist/shopify-Y2HN2MCQ.js +0 -609
  165. package/dist/stripe-VE3CD3AY.js +0 -584
  166. package/dist/tavily-KCZHK6HE.js +0 -326
  167. package/dist/telegram-3URFBCMY.js +0 -1766
  168. package/dist/todoist-HNPWNYTD.js +0 -663
  169. package/dist/trello-3W2MIXRP.js +0 -1079
  170. package/dist/turso-2EQF7C2Z.js +0 -415
  171. package/dist/umami-5REN7TGP.js +0 -388
  172. package/dist/unsplash-EIXL424F.js +0 -350
  173. package/dist/uptimerobot-KNJ3EYLY.js +0 -482
  174. package/dist/v2ex-RHJ234PZ.js +0 -666
  175. package/dist/vercel-AS6NCIC7.js +0 -1075
  176. package/dist/wordpress-KNDAAUV7.js +0 -811
  177. package/dist/workos-R6UITSJ7.js +0 -663
  178. package/dist/zhihu-AGK4HILK.js +0 -253
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  createAuthedClient
3
- } from "./chunk-XYBU3WZH.js";
4
- import "./chunk-E6JCVKW6.js";
3
+ } from "./chunk-RTW5VRTK.js";
4
+ import "./chunk-BNMLA2RC.js";
5
5
  import {
6
6
  asJsonObject,
7
7
  trimmedText
@@ -9,11 +9,10 @@ import {
9
9
  import {
10
10
  createProviderPlugin,
11
11
  upstreamError
12
- } from "./chunk-ATK45BXV.js";
13
- import "./chunk-U7B6DS2O.js";
14
- import {
15
- external_exports
16
- } from "./chunk-UZM2RXZH.js";
12
+ } from "./chunk-X7ZUTKHR.js";
13
+ import "./chunk-7ISGFRC6.js";
14
+ import "./chunk-UY6ANCOY.js";
15
+ import "./chunk-HA4BGL6C.js";
17
16
  import "./chunk-U67V476Y.js";
18
17
 
19
18
  // ../plugins/src/front/api.ts
@@ -184,119 +183,120 @@ async function listTeammates(_input, ctx) {
184
183
  }
185
184
 
186
185
  // ../plugins/src/front/schema.ts
187
- var listContactsInput = external_exports.strictObject({
188
- query: external_exports.string().min(1).describe("Optional Front contact query object string for updated_after and updated_before filters.").optional(),
189
- limit: external_exports.int().min(1).max(100).describe("Maximum number of contacts per page.").optional(),
190
- pageToken: external_exports.string().min(1).describe("Front page token returned by a previous list_contacts call.").optional(),
191
- sortBy: external_exports.enum(["created_at", "updated_at"]).describe("Field used to sort contacts.").optional(),
192
- sortOrder: external_exports.enum(["asc", "desc"]).describe("Order by which contacts should be sorted.").optional()
186
+ import { z } from "zod/v4";
187
+ var listContactsInput = z.strictObject({
188
+ query: z.string().min(1).describe("Optional Front contact query object string for updated_after and updated_before filters.").optional(),
189
+ limit: z.int().min(1).max(100).describe("Maximum number of contacts per page.").optional(),
190
+ pageToken: z.string().min(1).describe("Front page token returned by a previous list_contacts call.").optional(),
191
+ sortBy: z.enum(["created_at", "updated_at"]).describe("Field used to sort contacts.").optional(),
192
+ sortOrder: z.enum(["asc", "desc"]).describe("Order by which contacts should be sorted.").optional()
193
193
  }).describe("Input for listing Front contacts.");
194
- var listContactsOutput = external_exports.strictObject({
195
- contacts: external_exports.array(external_exports.strictObject({
196
- id: external_exports.string().describe("Unique identifier of the contact."),
197
- name: external_exports.string().describe("Contact name.").nullable(),
198
- description: external_exports.string().describe("Contact description.").nullable(),
199
- avatarUrl: external_exports.string().describe("URL of the contact avatar when Front returns one.").nullable(),
200
- links: external_exports.array(external_exports.string().describe("A contact link URL.")).describe("Links associated with the contact."),
201
- lists: external_exports.array(external_exports.strictObject({
202
- id: external_exports.string().describe("Unique identifier of the contact list."),
203
- name: external_exports.string().describe("Name of the contact list."),
204
- isPrivate: external_exports.boolean().describe("Whether the contact list is private.")
194
+ var listContactsOutput = z.strictObject({
195
+ contacts: z.array(z.strictObject({
196
+ id: z.string().describe("Unique identifier of the contact."),
197
+ name: z.string().describe("Contact name.").nullable(),
198
+ description: z.string().describe("Contact description.").nullable(),
199
+ avatarUrl: z.string().describe("URL of the contact avatar when Front returns one.").nullable(),
200
+ links: z.array(z.string().describe("A contact link URL.")).describe("Links associated with the contact."),
201
+ lists: z.array(z.strictObject({
202
+ id: z.string().describe("Unique identifier of the contact list."),
203
+ name: z.string().describe("Name of the contact list."),
204
+ isPrivate: z.boolean().describe("Whether the contact list is private.")
205
205
  }).describe("A Front contact list summary.")).describe("Contact lists that contain the contact."),
206
- handles: external_exports.array(external_exports.strictObject({
207
- handle: external_exports.string().min(1).describe("The handle value, such as an email address or phone number."),
208
- source: external_exports.enum(["twitter", "email", "phone", "facebook", "intercom", "front_chat", "custom"]).describe("The Front contact handle source.")
206
+ handles: z.array(z.strictObject({
207
+ handle: z.string().min(1).describe("The handle value, such as an email address or phone number."),
208
+ source: z.enum(["twitter", "email", "phone", "facebook", "intercom", "front_chat", "custom"]).describe("The Front contact handle source.")
209
209
  }).describe("A handle with which a Front contact can be reached.")).describe("Handles with which the contact is reachable."),
210
- customFields: external_exports.looseObject({}).describe("Custom fields keyed by the custom field name configured in Front.").optional(),
211
- isPrivate: external_exports.boolean().describe("Whether the contact is private.")
210
+ customFields: z.looseObject({}).describe("Custom fields keyed by the custom field name configured in Front.").optional(),
211
+ isPrivate: z.boolean().describe("Whether the contact is private.")
212
212
  }).describe("A normalized Front contact.")).describe("Contacts returned by Front."),
213
- pagination: external_exports.strictObject({
214
- next: external_exports.string().describe("Link to the next page of results when Front returns one.").nullable(),
215
- nextPageToken: external_exports.string().describe("Token extracted from the next page link for the next connector call.").nullable()
213
+ pagination: z.strictObject({
214
+ next: z.string().describe("Link to the next page of results when Front returns one.").nullable(),
215
+ nextPageToken: z.string().describe("Token extracted from the next page link for the next connector call.").nullable()
216
216
  }).describe("Front cursor pagination metadata.")
217
217
  }).describe("The Front contacts page.");
218
- var getContactInput = external_exports.strictObject({
219
- contactId: external_exports.string().min(1).describe("The Front contact ID, or a documented resource alias such as source:handle.")
218
+ var getContactInput = z.strictObject({
219
+ contactId: z.string().min(1).describe("The Front contact ID, or a documented resource alias such as source:handle.")
220
220
  }).describe("Input for fetching one Front contact.");
221
- var getContactOutput = external_exports.strictObject({
222
- contact: external_exports.strictObject({
223
- id: external_exports.string().describe("Unique identifier of the contact."),
224
- name: external_exports.string().describe("Contact name.").nullable(),
225
- description: external_exports.string().describe("Contact description.").nullable(),
226
- avatarUrl: external_exports.string().describe("URL of the contact avatar when Front returns one.").nullable(),
227
- links: external_exports.array(external_exports.string().describe("A contact link URL.")).describe("Links associated with the contact."),
228
- lists: external_exports.array(external_exports.strictObject({
229
- id: external_exports.string().describe("Unique identifier of the contact list."),
230
- name: external_exports.string().describe("Name of the contact list."),
231
- isPrivate: external_exports.boolean().describe("Whether the contact list is private.")
221
+ var getContactOutput = z.strictObject({
222
+ contact: z.strictObject({
223
+ id: z.string().describe("Unique identifier of the contact."),
224
+ name: z.string().describe("Contact name.").nullable(),
225
+ description: z.string().describe("Contact description.").nullable(),
226
+ avatarUrl: z.string().describe("URL of the contact avatar when Front returns one.").nullable(),
227
+ links: z.array(z.string().describe("A contact link URL.")).describe("Links associated with the contact."),
228
+ lists: z.array(z.strictObject({
229
+ id: z.string().describe("Unique identifier of the contact list."),
230
+ name: z.string().describe("Name of the contact list."),
231
+ isPrivate: z.boolean().describe("Whether the contact list is private.")
232
232
  }).describe("A Front contact list summary.")).describe("Contact lists that contain the contact."),
233
- handles: external_exports.array(external_exports.strictObject({
234
- handle: external_exports.string().min(1).describe("The handle value, such as an email address or phone number."),
235
- source: external_exports.enum(["twitter", "email", "phone", "facebook", "intercom", "front_chat", "custom"]).describe("The Front contact handle source.")
233
+ handles: z.array(z.strictObject({
234
+ handle: z.string().min(1).describe("The handle value, such as an email address or phone number."),
235
+ source: z.enum(["twitter", "email", "phone", "facebook", "intercom", "front_chat", "custom"]).describe("The Front contact handle source.")
236
236
  }).describe("A handle with which a Front contact can be reached.")).describe("Handles with which the contact is reachable."),
237
- customFields: external_exports.looseObject({}).describe("Custom fields keyed by the custom field name configured in Front.").optional(),
238
- isPrivate: external_exports.boolean().describe("Whether the contact is private.")
237
+ customFields: z.looseObject({}).describe("Custom fields keyed by the custom field name configured in Front.").optional(),
238
+ isPrivate: z.boolean().describe("Whether the contact is private.")
239
239
  }).describe("A normalized Front contact.")
240
240
  }).describe("The Front contact response.");
241
- var createContactInput = external_exports.strictObject({
242
- handles: external_exports.array(external_exports.strictObject({
243
- handle: external_exports.string().min(1).describe("The handle value, such as an email address or phone number."),
244
- source: external_exports.enum(["twitter", "email", "phone", "facebook", "intercom", "front_chat", "custom"]).describe("The Front contact handle source.")
241
+ var createContactInput = z.strictObject({
242
+ handles: z.array(z.strictObject({
243
+ handle: z.string().min(1).describe("The handle value, such as an email address or phone number."),
244
+ source: z.enum(["twitter", "email", "phone", "facebook", "intercom", "front_chat", "custom"]).describe("The Front contact handle source.")
245
245
  }).describe("A handle with which a Front contact can be reached.")).min(1).describe("Handles with which the contact is reachable."),
246
- contact: external_exports.strictObject({
247
- name: external_exports.string().min(1).describe("Contact name.").optional(),
248
- description: external_exports.string().min(1).describe("Contact description.").optional(),
249
- links: external_exports.array(external_exports.string().min(1).describe("A contact link URL.")).describe("Links associated with the contact.").optional(),
250
- listNames: external_exports.array(external_exports.string().min(1).describe("A contact list name.")).describe("Contact list names the contact belongs to. Front creates missing lists automatically.").optional(),
251
- customFields: external_exports.looseObject({}).describe("Custom fields keyed by the custom field name configured in Front.").optional()
246
+ contact: z.strictObject({
247
+ name: z.string().min(1).describe("Contact name.").optional(),
248
+ description: z.string().min(1).describe("Contact description.").optional(),
249
+ links: z.array(z.string().min(1).describe("A contact link URL.")).describe("Links associated with the contact.").optional(),
250
+ listNames: z.array(z.string().min(1).describe("A contact list name.")).describe("Contact list names the contact belongs to. Front creates missing lists automatically.").optional(),
251
+ customFields: z.looseObject({}).describe("Custom fields keyed by the custom field name configured in Front.").optional()
252
252
  }).describe("JSON fields accepted by Front for contact create and update requests.")
253
253
  }).describe("Input for creating a Front company contact.");
254
- var createContactOutput = external_exports.strictObject({
255
- contact: external_exports.strictObject({
256
- id: external_exports.string().describe("Unique identifier of the contact."),
257
- name: external_exports.string().describe("Contact name.").nullable(),
258
- description: external_exports.string().describe("Contact description.").nullable(),
259
- avatarUrl: external_exports.string().describe("URL of the contact avatar when Front returns one.").nullable(),
260
- links: external_exports.array(external_exports.string().describe("A contact link URL.")).describe("Links associated with the contact."),
261
- lists: external_exports.array(external_exports.strictObject({
262
- id: external_exports.string().describe("Unique identifier of the contact list."),
263
- name: external_exports.string().describe("Name of the contact list."),
264
- isPrivate: external_exports.boolean().describe("Whether the contact list is private.")
254
+ var createContactOutput = z.strictObject({
255
+ contact: z.strictObject({
256
+ id: z.string().describe("Unique identifier of the contact."),
257
+ name: z.string().describe("Contact name.").nullable(),
258
+ description: z.string().describe("Contact description.").nullable(),
259
+ avatarUrl: z.string().describe("URL of the contact avatar when Front returns one.").nullable(),
260
+ links: z.array(z.string().describe("A contact link URL.")).describe("Links associated with the contact."),
261
+ lists: z.array(z.strictObject({
262
+ id: z.string().describe("Unique identifier of the contact list."),
263
+ name: z.string().describe("Name of the contact list."),
264
+ isPrivate: z.boolean().describe("Whether the contact list is private.")
265
265
  }).describe("A Front contact list summary.")).describe("Contact lists that contain the contact."),
266
- handles: external_exports.array(external_exports.strictObject({
267
- handle: external_exports.string().min(1).describe("The handle value, such as an email address or phone number."),
268
- source: external_exports.enum(["twitter", "email", "phone", "facebook", "intercom", "front_chat", "custom"]).describe("The Front contact handle source.")
266
+ handles: z.array(z.strictObject({
267
+ handle: z.string().min(1).describe("The handle value, such as an email address or phone number."),
268
+ source: z.enum(["twitter", "email", "phone", "facebook", "intercom", "front_chat", "custom"]).describe("The Front contact handle source.")
269
269
  }).describe("A handle with which a Front contact can be reached.")).describe("Handles with which the contact is reachable."),
270
- customFields: external_exports.looseObject({}).describe("Custom fields keyed by the custom field name configured in Front.").optional(),
271
- isPrivate: external_exports.boolean().describe("Whether the contact is private.")
270
+ customFields: z.looseObject({}).describe("Custom fields keyed by the custom field name configured in Front.").optional(),
271
+ isPrivate: z.boolean().describe("Whether the contact is private.")
272
272
  }).describe("A normalized Front contact.")
273
273
  }).describe("The Front contact created by the API.");
274
- var updateContactInput = external_exports.strictObject({
275
- contactId: external_exports.string().min(1).describe("The Front contact ID, or a documented resource alias such as source:handle."),
276
- contact: external_exports.strictObject({
277
- name: external_exports.string().min(1).describe("Contact name.").optional(),
278
- description: external_exports.string().min(1).describe("Contact description.").optional(),
279
- links: external_exports.array(external_exports.string().min(1).describe("A contact link URL.")).describe("Links associated with the contact.").optional(),
280
- listNames: external_exports.array(external_exports.string().min(1).describe("A contact list name.")).describe("Contact list names the contact belongs to. Front creates missing lists automatically.").optional(),
281
- customFields: external_exports.looseObject({}).describe("Custom fields keyed by the custom field name configured in Front.").optional()
274
+ var updateContactInput = z.strictObject({
275
+ contactId: z.string().min(1).describe("The Front contact ID, or a documented resource alias such as source:handle."),
276
+ contact: z.strictObject({
277
+ name: z.string().min(1).describe("Contact name.").optional(),
278
+ description: z.string().min(1).describe("Contact description.").optional(),
279
+ links: z.array(z.string().min(1).describe("A contact link URL.")).describe("Links associated with the contact.").optional(),
280
+ listNames: z.array(z.string().min(1).describe("A contact list name.")).describe("Contact list names the contact belongs to. Front creates missing lists automatically.").optional(),
281
+ customFields: z.looseObject({}).describe("Custom fields keyed by the custom field name configured in Front.").optional()
282
282
  }).describe("JSON fields accepted by Front for contact create and update requests.")
283
283
  }).describe("Input for updating a Front contact.");
284
- var updateContactOutput = external_exports.strictObject({
285
- success: external_exports.boolean().describe("Whether Front accepted the update request.")
284
+ var updateContactOutput = z.strictObject({
285
+ success: z.boolean().describe("Whether Front accepted the update request.")
286
286
  }).describe("The result of updating a Front contact.");
287
- var listTeammatesInput = external_exports.strictObject({}).describe("Input for listing Front teammates.");
288
- var listTeammatesOutput = external_exports.strictObject({
289
- teammates: external_exports.array(external_exports.strictObject({
290
- id: external_exports.string().describe("Unique identifier of the teammate."),
291
- email: external_exports.string().describe("Email address of the teammate."),
292
- username: external_exports.string().describe("Username of the teammate."),
293
- firstName: external_exports.string().describe("First name of the teammate."),
294
- lastName: external_exports.string().describe("Last name of the teammate."),
295
- isAdmin: external_exports.boolean().describe("Whether the teammate is a company admin."),
296
- isAvailable: external_exports.boolean().describe("Whether the teammate is available."),
297
- isBlocked: external_exports.boolean().describe("Whether the teammate account has been blocked."),
298
- type: external_exports.string().describe("Type of teammate returned by Front."),
299
- customFields: external_exports.looseObject({}).describe("Custom fields keyed by the custom field name configured in Front.").optional()
287
+ var listTeammatesInput = z.strictObject({}).describe("Input for listing Front teammates.");
288
+ var listTeammatesOutput = z.strictObject({
289
+ teammates: z.array(z.strictObject({
290
+ id: z.string().describe("Unique identifier of the teammate."),
291
+ email: z.string().describe("Email address of the teammate."),
292
+ username: z.string().describe("Username of the teammate."),
293
+ firstName: z.string().describe("First name of the teammate."),
294
+ lastName: z.string().describe("Last name of the teammate."),
295
+ isAdmin: z.boolean().describe("Whether the teammate is a company admin."),
296
+ isAvailable: z.boolean().describe("Whether the teammate is available."),
297
+ isBlocked: z.boolean().describe("Whether the teammate account has been blocked."),
298
+ type: z.string().describe("Type of teammate returned by Front."),
299
+ customFields: z.looseObject({}).describe("Custom fields keyed by the custom field name configured in Front.").optional()
300
300
  }).describe("A normalized Front teammate.")).describe("Teammates returned by Front.")
301
301
  }).describe("The Front teammates response.");
302
302
  var frontActions = {
@@ -304,31 +304,31 @@ var frontActions = {
304
304
  description: "List Front company contacts with optional cursor pagination and sorting.",
305
305
  effect: "read",
306
306
  inputSchema: listContactsInput,
307
- outputSchema: external_exports.toJSONSchema(listContactsOutput, { io: "output", unrepresentable: "any" })
307
+ outputSchema: z.toJSONSchema(listContactsOutput, { io: "output", unrepresentable: "any" })
308
308
  },
309
309
  get_contact: {
310
310
  description: "Fetch one Front contact by contact ID or documented resource alias.",
311
311
  effect: "read",
312
312
  inputSchema: getContactInput,
313
- outputSchema: external_exports.toJSONSchema(getContactOutput, { io: "output", unrepresentable: "any" })
313
+ outputSchema: z.toJSONSchema(getContactOutput, { io: "output", unrepresentable: "any" })
314
314
  },
315
315
  create_contact: {
316
316
  description: "Create a Front company contact with JSON fields and one or more reachable handles.",
317
317
  effect: "write",
318
318
  inputSchema: createContactInput,
319
- outputSchema: external_exports.toJSONSchema(createContactOutput, { io: "output", unrepresentable: "any" })
319
+ outputSchema: z.toJSONSchema(createContactOutput, { io: "output", unrepresentable: "any" })
320
320
  },
321
321
  update_contact: {
322
322
  description: "Update JSON fields on a Front contact. Avatar uploads are intentionally not exposed.",
323
323
  effect: "write",
324
324
  inputSchema: updateContactInput,
325
- outputSchema: external_exports.toJSONSchema(updateContactOutput, { io: "output", unrepresentable: "any" })
325
+ outputSchema: z.toJSONSchema(updateContactOutput, { io: "output", unrepresentable: "any" })
326
326
  },
327
327
  list_teammates: {
328
328
  description: "List Front teammates in the company.",
329
329
  effect: "read",
330
330
  inputSchema: listTeammatesInput,
331
- outputSchema: external_exports.toJSONSchema(listTeammatesOutput, { io: "output", unrepresentable: "any" })
331
+ outputSchema: z.toJSONSchema(listTeammatesOutput, { io: "output", unrepresentable: "any" })
332
332
  }
333
333
  };
334
334
 
@@ -0,0 +1,213 @@
1
+ import {
2
+ createProviderHttpClient
3
+ } from "./chunk-BNMLA2RC.js";
4
+ import {
5
+ messageFrom
6
+ } from "./chunk-JXHMDBAY.js";
7
+ import {
8
+ createProviderPlugin,
9
+ requireApiKey,
10
+ upstreamError
11
+ } from "./chunk-X7ZUTKHR.js";
12
+ import "./chunk-7ISGFRC6.js";
13
+ import "./chunk-UY6ANCOY.js";
14
+ import {
15
+ TBError
16
+ } from "./chunk-HA4BGL6C.js";
17
+ import "./chunk-U67V476Y.js";
18
+
19
+ // ../plugins/src/geocodio/api.ts
20
+ var SERVICE = "geocodio";
21
+ var http = createProviderHttpClient({ baseUrl: "https://api.geocod.io/v1.12/", service: SERVICE });
22
+ async function request(ctx, path, query, body) {
23
+ const apiKey = requireApiKey(ctx, SERVICE);
24
+ const pairs = [
25
+ ...Object.entries(query),
26
+ ["api_key", apiKey]
27
+ ];
28
+ const { data } = await http.request({
29
+ path,
30
+ query: pairs,
31
+ ...body === void 0 ? {} : { method: "POST", json: body },
32
+ invalidJson: "text",
33
+ mapError: ({ data: payload, status }) => upstreamError(
34
+ status === 0 ? 502 : status,
35
+ messageFrom(payload, ["error", "message"], "Geocodio request failed")
36
+ ),
37
+ mapTransportError: ({ message }) => upstreamError(
38
+ 502,
39
+ message === void 0 ? "Geocodio request failed" : `Geocodio request failed: ${message}`
40
+ )
41
+ });
42
+ return data ?? null;
43
+ }
44
+ function singleGeocode(input, ctx) {
45
+ const hasAny = [
46
+ input.q,
47
+ input.street,
48
+ input.street2,
49
+ input.city,
50
+ input.state,
51
+ input.postal_code,
52
+ input.country,
53
+ input.county
54
+ ].some((value) => value !== void 0 && value.trim() !== "");
55
+ if (!hasAny) throw new TBError("invalid_argument", "q or at least one address component is required");
56
+ return request(ctx, "geocode", {
57
+ q: input.q,
58
+ street: input.street,
59
+ street2: input.street2,
60
+ city: input.city,
61
+ state: input.state,
62
+ postal_code: input.postal_code,
63
+ country: input.country,
64
+ county: input.county,
65
+ fields: input.fields,
66
+ limit: input.limit,
67
+ format: input.format
68
+ });
69
+ }
70
+ function geocodeBatch(input, ctx) {
71
+ return request(ctx, "geocode", { fields: input.fields, limit: input.limit }, input.addresses);
72
+ }
73
+ function singleReverseGeocode(input, ctx) {
74
+ return request(ctx, "reverse", {
75
+ q: `${input.lat},${input.lng}`,
76
+ fields: input.fields,
77
+ limit: input.limit,
78
+ format: input.format
79
+ });
80
+ }
81
+ function batchReverseGeocode(input, ctx) {
82
+ return request(ctx, "reverse", { fields: input.fields, limit: input.limit }, input.coordinates);
83
+ }
84
+
85
+ // ../plugins/src/geocodio/schema.ts
86
+ import { z } from "zod/v4";
87
+ var singleGeocodeInput = z.strictObject({
88
+ q: z.string().min(1).describe("The full address string to geocode.").optional(),
89
+ street: z.string().min(1).describe("The street address component.").optional(),
90
+ street2: z.string().min(1).describe("The secondary street address component.").optional(),
91
+ city: z.string().min(1).describe("The city name used for the lookup.").optional(),
92
+ state: z.string().min(1).describe("The state or province code used for the lookup.").optional(),
93
+ postal_code: z.string().min(1).describe("The postal or ZIP code used for the lookup.").optional(),
94
+ country: z.string().min(1).describe("The country context for the lookup.").optional(),
95
+ county: z.string().min(1).describe("The county name used for the lookup.").optional(),
96
+ fields: z.string().min(1).describe("A comma-separated list of Geocodio data append codes.").optional(),
97
+ limit: z.int().min(0).describe("The maximum number of results to return.").optional(),
98
+ format: z.literal("simple").describe("Return Geocodio's simplified single-result response format.").optional()
99
+ }).describe("The input payload for geocoding a single address with Geocodio.");
100
+ var singleGeocodeOutput = z.looseObject({
101
+ input: z.record(z.string(), z.unknown().describe("A property value in a JSON-like object.")).describe("A JSON-like object with arbitrary string keys.").optional(),
102
+ results: z.array(z.looseObject({
103
+ formatted_address: z.string().describe("The full formatted address.").optional(),
104
+ location: z.looseObject({
105
+ lat: z.number().describe("The latitude coordinate."),
106
+ lng: z.number().describe("The longitude coordinate.")
107
+ }).describe("Latitude and longitude returned by Geocodio.").optional(),
108
+ accuracy: z.number().describe("The match accuracy score from 0.0 to 1.0.").optional(),
109
+ accuracy_type: z.string().describe("The Geocodio accuracy type for the match.").optional(),
110
+ source: z.string().describe("The source dataset for the match.").optional(),
111
+ address_components: z.record(z.string(), z.unknown().describe("A property value in a JSON-like object.")).describe("A JSON-like object with arbitrary string keys.").optional(),
112
+ address_lines: z.array(z.string().describe("One formatted address line.")).describe("Formatted address lines.").optional(),
113
+ fields: z.record(z.string(), z.unknown().describe("A property value in a JSON-like object.")).describe("A JSON-like object with arbitrary string keys.").optional()
114
+ }).describe("A single Geocodio geocoding result.")).describe("The ordered geocoding match results.").optional(),
115
+ lat: z.number().describe("The latitude returned by Geocodio simple format.").optional(),
116
+ lng: z.number().describe("The longitude returned by Geocodio simple format.").optional(),
117
+ address: z.string().describe("The address returned by Geocodio simple format.").optional(),
118
+ source: z.string().describe("The source returned by Geocodio simple format.").optional()
119
+ }).describe("The Geocodio response for a single geocode or reverse geocode request.");
120
+ var geocodeBatchInput = z.strictObject({
121
+ addresses: z.array(z.string().min(1).describe("One address string to geocode.")).min(1).max(1e4).describe("The address strings to geocode in one batch request."),
122
+ fields: z.string().min(1).describe("A comma-separated list of Geocodio data append codes.").optional(),
123
+ limit: z.int().min(0).describe("The maximum number of results per address.").optional()
124
+ }).describe("The input payload for batch geocoding addresses with Geocodio.");
125
+ var geocodeBatchOutput = z.strictObject({
126
+ results: z.array(z.looseObject({
127
+ query: z.string().describe("The original query string from the batch request."),
128
+ response: z.record(z.string(), z.unknown().describe("A property value in a JSON-like object.")).describe("A JSON-like object with arbitrary string keys.")
129
+ }).describe("One batch geocoding or reverse geocoding result.")).describe("The ordered batch response items.")
130
+ }).describe("The Geocodio response for a batch geocoding request.");
131
+ var singleReverseGeocodeInput = z.strictObject({
132
+ lat: z.number().min(-90).max(90).describe("The latitude to reverse geocode."),
133
+ lng: z.number().min(-180).max(180).describe("The longitude to reverse geocode."),
134
+ fields: z.string().min(1).describe("A comma-separated list of Geocodio data append codes.").optional(),
135
+ limit: z.int().min(0).describe("The maximum number of results to return.").optional(),
136
+ format: z.literal("simple").describe("Return Geocodio's simplified single-result response format.").optional()
137
+ }).describe("The input payload for reverse geocoding a single latitude and longitude pair.");
138
+ var singleReverseGeocodeOutput = z.looseObject({
139
+ input: z.record(z.string(), z.unknown().describe("A property value in a JSON-like object.")).describe("A JSON-like object with arbitrary string keys.").optional(),
140
+ results: z.array(z.looseObject({
141
+ formatted_address: z.string().describe("The full formatted address.").optional(),
142
+ location: z.looseObject({
143
+ lat: z.number().describe("The latitude coordinate."),
144
+ lng: z.number().describe("The longitude coordinate.")
145
+ }).describe("Latitude and longitude returned by Geocodio.").optional(),
146
+ accuracy: z.number().describe("The match accuracy score from 0.0 to 1.0.").optional(),
147
+ accuracy_type: z.string().describe("The Geocodio accuracy type for the match.").optional(),
148
+ source: z.string().describe("The source dataset for the match.").optional(),
149
+ address_components: z.record(z.string(), z.unknown().describe("A property value in a JSON-like object.")).describe("A JSON-like object with arbitrary string keys.").optional(),
150
+ address_lines: z.array(z.string().describe("One formatted address line.")).describe("Formatted address lines.").optional(),
151
+ fields: z.record(z.string(), z.unknown().describe("A property value in a JSON-like object.")).describe("A JSON-like object with arbitrary string keys.").optional()
152
+ }).describe("A single Geocodio geocoding result.")).describe("The ordered geocoding match results.").optional(),
153
+ lat: z.number().describe("The latitude returned by Geocodio simple format.").optional(),
154
+ lng: z.number().describe("The longitude returned by Geocodio simple format.").optional(),
155
+ address: z.string().describe("The address returned by Geocodio simple format.").optional(),
156
+ source: z.string().describe("The source returned by Geocodio simple format.").optional()
157
+ }).describe("The Geocodio response for a single geocode or reverse geocode request.");
158
+ var batchReverseGeocodeInput = z.strictObject({
159
+ coordinates: z.array(z.string().min(1).describe("One `latitude,longitude` coordinate string.")).min(1).max(1e4).describe("The coordinate strings to reverse geocode in one batch request."),
160
+ fields: z.string().min(1).describe("A comma-separated list of Geocodio data append codes.").optional(),
161
+ limit: z.int().min(0).describe("The maximum number of results per coordinate.").optional()
162
+ }).describe("The input payload for batch reverse geocoding coordinate pairs with Geocodio.");
163
+ var batchReverseGeocodeOutput = z.strictObject({
164
+ results: z.array(z.looseObject({
165
+ query: z.string().describe("The original query string from the batch request."),
166
+ response: z.record(z.string(), z.unknown().describe("A property value in a JSON-like object.")).describe("A JSON-like object with arbitrary string keys.")
167
+ }).describe("One batch geocoding or reverse geocoding result.")).describe("The ordered batch response items.")
168
+ }).describe("The Geocodio response for a batch geocoding request.");
169
+ var geocodioActions = {
170
+ single_geocode: {
171
+ description: "Geocode a single address and return the official Geocodio response payload.",
172
+ effect: "write",
173
+ inputSchema: singleGeocodeInput,
174
+ outputSchema: z.toJSONSchema(singleGeocodeOutput, { io: "output", unrepresentable: "any" })
175
+ },
176
+ geocode_batch: {
177
+ description: "Geocode multiple addresses in one batch request and return Geocodio batch results.",
178
+ effect: "write",
179
+ inputSchema: geocodeBatchInput,
180
+ outputSchema: z.toJSONSchema(geocodeBatchOutput, { io: "output", unrepresentable: "any" })
181
+ },
182
+ single_reverse_geocode: {
183
+ description: "Reverse geocode a single latitude and longitude pair and return the official Geocodio response payload.",
184
+ effect: "write",
185
+ inputSchema: singleReverseGeocodeInput,
186
+ outputSchema: z.toJSONSchema(singleReverseGeocodeOutput, { io: "output", unrepresentable: "any" })
187
+ },
188
+ batch_reverse_geocode: {
189
+ description: "Reverse geocode multiple coordinate pairs in one batch request and return Geocodio batch results.",
190
+ effect: "write",
191
+ inputSchema: batchReverseGeocodeInput,
192
+ outputSchema: z.toJSONSchema(batchReverseGeocodeOutput, { io: "output", unrepresentable: "any" })
193
+ }
194
+ };
195
+
196
+ // ../plugins/src/geocodio/index.ts
197
+ function createGeocodioPlugin() {
198
+ return createProviderPlugin({
199
+ description: "Geocodio",
200
+ actions: geocodioActions,
201
+ handlers: {
202
+ single_geocode: singleGeocode,
203
+ geocode_batch: geocodeBatch,
204
+ single_reverse_geocode: singleReverseGeocode,
205
+ batch_reverse_geocode: batchReverseGeocode
206
+ }
207
+ });
208
+ }
209
+ var geocodio_default = createGeocodioPlugin();
210
+ export {
211
+ createGeocodioPlugin,
212
+ geocodio_default as default
213
+ };