@commandable/integration-data 0.5.0 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (665) hide show
  1. package/dist/credentials-index.d.ts +2 -7
  2. package/dist/credentials-index.d.ts.map +1 -1
  3. package/dist/credentials-index.js +11 -684
  4. package/dist/credentials-index.js.map +1 -1
  5. package/dist/generated/registry.d.ts +3 -0
  6. package/dist/generated/registry.d.ts.map +1 -0
  7. package/dist/generated/registry.js +11907 -0
  8. package/dist/generated/registry.js.map +1 -0
  9. package/dist/index.d.ts +2 -2
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/index.js +1 -1
  12. package/dist/index.js.map +1 -1
  13. package/dist/loader.d.ts +1 -122
  14. package/dist/loader.d.ts.map +1 -1
  15. package/dist/loader.js +81 -178
  16. package/dist/loader.js.map +1 -1
  17. package/dist/tools.d.ts +1 -1
  18. package/dist/tools.d.ts.map +1 -1
  19. package/dist/types.d.ts +92 -0
  20. package/dist/types.d.ts.map +1 -0
  21. package/dist/types.js +2 -0
  22. package/dist/types.js.map +1 -0
  23. package/package.json +6 -4
  24. package/integrations/README.md +0 -52
  25. package/integrations/__tests__/liveHarness.ts +0 -97
  26. package/integrations/__tests__/usageParity.ts +0 -54
  27. package/integrations/airtable/.env.test.example +0 -11
  28. package/integrations/airtable/README.md +0 -27
  29. package/integrations/airtable/__tests__/get_handlers.test.ts +0 -187
  30. package/integrations/airtable/__tests__/usage_parity.test.ts +0 -9
  31. package/integrations/airtable/__tests__/write_and_admin_handlers.test.ts +0 -116
  32. package/integrations/airtable/credentials.json +0 -26
  33. package/integrations/airtable/credentials_hint.md +0 -4
  34. package/integrations/airtable/handlers/create_record.js +0 -12
  35. package/integrations/airtable/handlers/delete_record.js +0 -7
  36. package/integrations/airtable/handlers/get_record.js +0 -4
  37. package/integrations/airtable/handlers/get_table_schema.js +0 -6
  38. package/integrations/airtable/handlers/list_bases.js +0 -4
  39. package/integrations/airtable/handlers/list_records.js +0 -25
  40. package/integrations/airtable/handlers/list_table_fields.js +0 -6
  41. package/integrations/airtable/handlers/list_tables.js +0 -4
  42. package/integrations/airtable/handlers/list_views.js +0 -6
  43. package/integrations/airtable/handlers/search_records.js +0 -6
  44. package/integrations/airtable/handlers/update_record.js +0 -11
  45. package/integrations/airtable/manifest.json +0 -84
  46. package/integrations/airtable/schemas/create_record.json +0 -12
  47. package/integrations/airtable/schemas/delete_record.json +0 -11
  48. package/integrations/airtable/schemas/empty.json +0 -6
  49. package/integrations/airtable/schemas/get_record.json +0 -11
  50. package/integrations/airtable/schemas/id_base.json +0 -9
  51. package/integrations/airtable/schemas/id_base_table.json +0 -10
  52. package/integrations/airtable/schemas/list_records.json +0 -26
  53. package/integrations/airtable/schemas/search_records.json +0 -12
  54. package/integrations/airtable/schemas/update_record.json +0 -13
  55. package/integrations/confluence/.env.test.example +0 -36
  56. package/integrations/confluence/README.md +0 -28
  57. package/integrations/confluence/__tests__/get_handlers.test.ts +0 -121
  58. package/integrations/confluence/__tests__/usage_parity.test.ts +0 -14
  59. package/integrations/confluence/__tests__/write_handlers.test.ts +0 -131
  60. package/integrations/confluence/credentials.json +0 -39
  61. package/integrations/confluence/credentials_hint.md +0 -4
  62. package/integrations/confluence/credentials_hint_api_token.md +0 -9
  63. package/integrations/confluence/credentials_hint_oauth_token.md +0 -8
  64. package/integrations/confluence/handlers/add_comment.js +0 -19
  65. package/integrations/confluence/handlers/add_label.js +0 -16
  66. package/integrations/confluence/handlers/create_page.js +0 -22
  67. package/integrations/confluence/handlers/delete_page.js +0 -17
  68. package/integrations/confluence/handlers/get_comments.js +0 -33
  69. package/integrations/confluence/handlers/get_page_children.js +0 -30
  70. package/integrations/confluence/handlers/get_space.js +0 -22
  71. package/integrations/confluence/handlers/list_spaces.js +0 -39
  72. package/integrations/confluence/handlers/read_page.js +0 -49
  73. package/integrations/confluence/handlers/search_pages.js +0 -42
  74. package/integrations/confluence/handlers/update_page.js +0 -42
  75. package/integrations/confluence/manifest.json +0 -85
  76. package/integrations/confluence/prompt.md +0 -55
  77. package/integrations/confluence/schemas/add_comment.json +0 -22
  78. package/integrations/confluence/schemas/add_label.json +0 -19
  79. package/integrations/confluence/schemas/create_page.json +0 -33
  80. package/integrations/confluence/schemas/delete_page.json +0 -23
  81. package/integrations/confluence/schemas/empty.json +0 -6
  82. package/integrations/confluence/schemas/get_comments.json +0 -24
  83. package/integrations/confluence/schemas/get_page_children.json +0 -28
  84. package/integrations/confluence/schemas/get_space.json +0 -18
  85. package/integrations/confluence/schemas/list_spaces.json +0 -36
  86. package/integrations/confluence/schemas/read_page.json +0 -28
  87. package/integrations/confluence/schemas/search_pages.json +0 -26
  88. package/integrations/confluence/schemas/update_page.json +0 -31
  89. package/integrations/github/.env.test.example +0 -17
  90. package/integrations/github/README.md +0 -75
  91. package/integrations/github/__tests__/get_handlers.test.ts +0 -305
  92. package/integrations/github/__tests__/usage_parity.test.ts +0 -22
  93. package/integrations/github/__tests__/write_handlers.test.ts +0 -496
  94. package/integrations/github/credentials.json +0 -47
  95. package/integrations/github/credentials_hint.md +0 -7
  96. package/integrations/github/credentials_hint_classic_pat.md +0 -8
  97. package/integrations/github/credentials_hint_fine_grained_pat.md +0 -9
  98. package/integrations/github/handlers/add_labels_to_issue.js +0 -12
  99. package/integrations/github/handlers/close_issue.js +0 -5
  100. package/integrations/github/handlers/comment_on_issue.js +0 -5
  101. package/integrations/github/handlers/create_branch.js +0 -33
  102. package/integrations/github/handlers/create_commit.js +0 -84
  103. package/integrations/github/handlers/create_file.js +0 -46
  104. package/integrations/github/handlers/create_issue.js +0 -10
  105. package/integrations/github/handlers/create_or_update_file.js +0 -21
  106. package/integrations/github/handlers/create_pull_request.js +0 -16
  107. package/integrations/github/handlers/create_pull_request_review.js +0 -10
  108. package/integrations/github/handlers/create_release.js +0 -14
  109. package/integrations/github/handlers/create_repo.js +0 -11
  110. package/integrations/github/handlers/delete_branch.js +0 -8
  111. package/integrations/github/handlers/delete_file.js +0 -22
  112. package/integrations/github/handlers/delete_repo.js +0 -6
  113. package/integrations/github/handlers/edit_file.js +0 -52
  114. package/integrations/github/handlers/edit_files.js +0 -107
  115. package/integrations/github/handlers/fork_repo.js +0 -10
  116. package/integrations/github/handlers/get_commit.js +0 -8
  117. package/integrations/github/handlers/get_file_contents.js +0 -21
  118. package/integrations/github/handlers/get_issue.js +0 -4
  119. package/integrations/github/handlers/get_job_logs.js +0 -6
  120. package/integrations/github/handlers/get_latest_release.js +0 -4
  121. package/integrations/github/handlers/get_me.js +0 -4
  122. package/integrations/github/handlers/get_pull_request.js +0 -4
  123. package/integrations/github/handlers/get_pull_request_diff.js +0 -8
  124. package/integrations/github/handlers/get_repo.js +0 -4
  125. package/integrations/github/handlers/get_repo_tree.js +0 -12
  126. package/integrations/github/handlers/get_workflow_run.js +0 -4
  127. package/integrations/github/handlers/list_branches.js +0 -9
  128. package/integrations/github/handlers/list_commits.js +0 -11
  129. package/integrations/github/handlers/list_issue_comments.js +0 -8
  130. package/integrations/github/handlers/list_issues.js +0 -11
  131. package/integrations/github/handlers/list_labels.js +0 -8
  132. package/integrations/github/handlers/list_pull_request_comments.js +0 -8
  133. package/integrations/github/handlers/list_pull_request_files.js +0 -8
  134. package/integrations/github/handlers/list_pull_requests.js +0 -13
  135. package/integrations/github/handlers/list_releases.js +0 -8
  136. package/integrations/github/handlers/list_repos_install.js +0 -4
  137. package/integrations/github/handlers/list_repos_user.js +0 -16
  138. package/integrations/github/handlers/list_tags.js +0 -8
  139. package/integrations/github/handlers/list_workflow_runs.js +0 -11
  140. package/integrations/github/handlers/merge_pull_request.js +0 -14
  141. package/integrations/github/handlers/request_pull_request_reviewers.js +0 -10
  142. package/integrations/github/handlers/search_code.js +0 -8
  143. package/integrations/github/handlers/search_issues.js +0 -8
  144. package/integrations/github/handlers/search_pull_requests.js +0 -8
  145. package/integrations/github/handlers/search_repos.js +0 -10
  146. package/integrations/github/handlers/update_issue.js +0 -15
  147. package/integrations/github/handlers/update_pull_request.js +0 -13
  148. package/integrations/github/manifest.json +0 -92
  149. package/integrations/github/prompt.md +0 -36
  150. package/integrations/github/schemas/add_labels_to_issue.json +0 -12
  151. package/integrations/github/schemas/close_issue.json +0 -10
  152. package/integrations/github/schemas/comment_on_issue.json +0 -11
  153. package/integrations/github/schemas/create_branch.json +0 -12
  154. package/integrations/github/schemas/create_commit.json +0 -25
  155. package/integrations/github/schemas/create_file.json +0 -13
  156. package/integrations/github/schemas/create_issue.json +0 -13
  157. package/integrations/github/schemas/create_or_update_file.json +0 -15
  158. package/integrations/github/schemas/create_pull_request.json +0 -15
  159. package/integrations/github/schemas/create_pull_request_review.json +0 -17
  160. package/integrations/github/schemas/create_release.json +0 -16
  161. package/integrations/github/schemas/create_repo.json +0 -12
  162. package/integrations/github/schemas/delete_branch.json +0 -10
  163. package/integrations/github/schemas/delete_file.json +0 -13
  164. package/integrations/github/schemas/delete_repo.json +0 -10
  165. package/integrations/github/schemas/edit_file.json +0 -26
  166. package/integrations/github/schemas/edit_files.json +0 -39
  167. package/integrations/github/schemas/empty.json +0 -5
  168. package/integrations/github/schemas/fork_repo.json +0 -11
  169. package/integrations/github/schemas/get_commit.json +0 -12
  170. package/integrations/github/schemas/get_file_contents.json +0 -11
  171. package/integrations/github/schemas/get_issue.json +0 -10
  172. package/integrations/github/schemas/get_job_logs.json +0 -10
  173. package/integrations/github/schemas/get_pull_request.json +0 -10
  174. package/integrations/github/schemas/get_pull_request_diff.json +0 -10
  175. package/integrations/github/schemas/get_repo.json +0 -9
  176. package/integrations/github/schemas/get_repo_tree.json +0 -12
  177. package/integrations/github/schemas/get_workflow_run.json +0 -10
  178. package/integrations/github/schemas/list_branches.json +0 -12
  179. package/integrations/github/schemas/list_commits.json +0 -14
  180. package/integrations/github/schemas/list_issue_comments.json +0 -12
  181. package/integrations/github/schemas/list_issues.json +0 -14
  182. package/integrations/github/schemas/list_labels.json +0 -11
  183. package/integrations/github/schemas/list_pull_request_comments.json +0 -12
  184. package/integrations/github/schemas/list_pull_request_files.json +0 -12
  185. package/integrations/github/schemas/list_pull_requests.json +0 -16
  186. package/integrations/github/schemas/list_releases.json +0 -11
  187. package/integrations/github/schemas/list_tags.json +0 -11
  188. package/integrations/github/schemas/list_workflow_runs.json +0 -18
  189. package/integrations/github/schemas/merge_pull_request.json +0 -14
  190. package/integrations/github/schemas/owner_repo.json +0 -9
  191. package/integrations/github/schemas/request_pull_request_reviewers.json +0 -20
  192. package/integrations/github/schemas/search_code.json +0 -10
  193. package/integrations/github/schemas/search_issues.json +0 -10
  194. package/integrations/github/schemas/search_pull_requests.json +0 -10
  195. package/integrations/github/schemas/search_repos.json +0 -12
  196. package/integrations/github/schemas/update_issue.json +0 -15
  197. package/integrations/github/schemas/update_pull_request.json +0 -15
  198. package/integrations/google-calendar/.env.test.example +0 -11
  199. package/integrations/google-calendar/README.md +0 -41
  200. package/integrations/google-calendar/__tests__/get_handlers.test.ts +0 -120
  201. package/integrations/google-calendar/__tests__/usage_parity.test.ts +0 -9
  202. package/integrations/google-calendar/__tests__/write_and_admin_handlers.test.ts +0 -155
  203. package/integrations/google-calendar/credentials.json +0 -59
  204. package/integrations/google-calendar/credentials_hint.md +0 -9
  205. package/integrations/google-calendar/credentials_hint_oauth_token.md +0 -8
  206. package/integrations/google-calendar/credentials_hint_service_account.md +0 -10
  207. package/integrations/google-calendar/handlers/create_event.js +0 -6
  208. package/integrations/google-calendar/handlers/delete_acl.js +0 -6
  209. package/integrations/google-calendar/handlers/delete_event.js +0 -7
  210. package/integrations/google-calendar/handlers/freebusy_query.js +0 -4
  211. package/integrations/google-calendar/handlers/get_acl.js +0 -5
  212. package/integrations/google-calendar/handlers/get_calendar.js +0 -4
  213. package/integrations/google-calendar/handlers/get_event.js +0 -9
  214. package/integrations/google-calendar/handlers/insert_acl.js +0 -6
  215. package/integrations/google-calendar/handlers/list_acl.js +0 -5
  216. package/integrations/google-calendar/handlers/list_calendars.js +0 -4
  217. package/integrations/google-calendar/handlers/list_colors.js +0 -4
  218. package/integrations/google-calendar/handlers/list_events.js +0 -23
  219. package/integrations/google-calendar/handlers/list_settings.js +0 -4
  220. package/integrations/google-calendar/handlers/move_event.js +0 -6
  221. package/integrations/google-calendar/handlers/patch_event.js +0 -5
  222. package/integrations/google-calendar/handlers/quick_add.js +0 -6
  223. package/integrations/google-calendar/handlers/update_acl.js +0 -7
  224. package/integrations/google-calendar/manifest.json +0 -36
  225. package/integrations/google-calendar/prompt.md +0 -68
  226. package/integrations/google-calendar/schemas/create_event.json +0 -34
  227. package/integrations/google-calendar/schemas/delete_acl.json +0 -9
  228. package/integrations/google-calendar/schemas/empty.json +0 -1
  229. package/integrations/google-calendar/schemas/freebusy_query.json +0 -13
  230. package/integrations/google-calendar/schemas/get_acl.json +0 -9
  231. package/integrations/google-calendar/schemas/id_calendar.json +0 -8
  232. package/integrations/google-calendar/schemas/id_calendar_event.json +0 -11
  233. package/integrations/google-calendar/schemas/insert_acl.json +0 -18
  234. package/integrations/google-calendar/schemas/list_events.json +0 -17
  235. package/integrations/google-calendar/schemas/move_event.json +0 -10
  236. package/integrations/google-calendar/schemas/patch_event.json +0 -10
  237. package/integrations/google-calendar/schemas/quick_add.json +0 -9
  238. package/integrations/google-calendar/schemas/update_acl.json +0 -10
  239. package/integrations/google-docs/README.md +0 -30
  240. package/integrations/google-docs/__tests__/get_handlers.test.ts +0 -83
  241. package/integrations/google-docs/__tests__/usage_parity.test.ts +0 -9
  242. package/integrations/google-docs/__tests__/write_handlers.test.ts +0 -238
  243. package/integrations/google-docs/credentials.json +0 -59
  244. package/integrations/google-docs/credentials_hint.md +0 -9
  245. package/integrations/google-docs/credentials_hint_oauth_token.md +0 -8
  246. package/integrations/google-docs/credentials_hint_service_account.md +0 -10
  247. package/integrations/google-docs/handlers/append_text.js +0 -12
  248. package/integrations/google-docs/handlers/batch_update.js +0 -13
  249. package/integrations/google-docs/handlers/create_document.js +0 -9
  250. package/integrations/google-docs/handlers/delete_first_match.js +0 -50
  251. package/integrations/google-docs/handlers/insert_inline_image_after_first_match.js +0 -41
  252. package/integrations/google-docs/handlers/insert_page_break_after_first_match.js +0 -49
  253. package/integrations/google-docs/handlers/insert_table_after_first_match.js +0 -49
  254. package/integrations/google-docs/handlers/insert_text_after_first_match.js +0 -51
  255. package/integrations/google-docs/handlers/read_document.js +0 -189
  256. package/integrations/google-docs/handlers/replace_all_text.js +0 -8
  257. package/integrations/google-docs/handlers/style_first_match.js +0 -42
  258. package/integrations/google-docs/handlers/update_document_style.js +0 -8
  259. package/integrations/google-docs/handlers/update_paragraph_style_for_first_match.js +0 -48
  260. package/integrations/google-docs/manifest.json +0 -44
  261. package/integrations/google-docs/prompt.md +0 -49
  262. package/integrations/google-docs/schemas/append_text.json +0 -10
  263. package/integrations/google-docs/schemas/apply_text_style.json +0 -13
  264. package/integrations/google-docs/schemas/batch_update.json +0 -16
  265. package/integrations/google-docs/schemas/create_document.json +0 -8
  266. package/integrations/google-docs/schemas/delete_content_range.json +0 -11
  267. package/integrations/google-docs/schemas/delete_first_match.json +0 -10
  268. package/integrations/google-docs/schemas/insert_inline_image.json +0 -12
  269. package/integrations/google-docs/schemas/insert_inline_image_after_first_match.json +0 -12
  270. package/integrations/google-docs/schemas/insert_page_break.json +0 -10
  271. package/integrations/google-docs/schemas/insert_page_break_after_first_match.json +0 -11
  272. package/integrations/google-docs/schemas/insert_table.json +0 -12
  273. package/integrations/google-docs/schemas/insert_table_after_first_match.json +0 -13
  274. package/integrations/google-docs/schemas/insert_text_after_first_match.json +0 -12
  275. package/integrations/google-docs/schemas/insert_text_at.json +0 -11
  276. package/integrations/google-docs/schemas/read_document.json +0 -12
  277. package/integrations/google-docs/schemas/replace_all_text.json +0 -12
  278. package/integrations/google-docs/schemas/style_first_match.json +0 -12
  279. package/integrations/google-docs/schemas/update_document_style.json +0 -11
  280. package/integrations/google-docs/schemas/update_paragraph_style.json +0 -13
  281. package/integrations/google-docs/schemas/update_paragraph_style_for_first_match.json +0 -12
  282. package/integrations/google-docs/todo.md +0 -18
  283. package/integrations/google-drive/README.md +0 -26
  284. package/integrations/google-drive/__tests__/handlers.test.ts +0 -145
  285. package/integrations/google-drive/__tests__/usage_parity.test.ts +0 -9
  286. package/integrations/google-drive/credentials.json +0 -59
  287. package/integrations/google-drive/credentials_hint_oauth_token.md +0 -8
  288. package/integrations/google-drive/credentials_hint_service_account.md +0 -10
  289. package/integrations/google-drive/handlers/create_file.js +0 -15
  290. package/integrations/google-drive/handlers/create_folder.js +0 -15
  291. package/integrations/google-drive/handlers/delete_file.js +0 -14
  292. package/integrations/google-drive/handlers/get_file.js +0 -5
  293. package/integrations/google-drive/handlers/get_file_content.js +0 -41
  294. package/integrations/google-drive/handlers/list_files.js +0 -15
  295. package/integrations/google-drive/handlers/move_file.js +0 -12
  296. package/integrations/google-drive/handlers/search_files.js +0 -20
  297. package/integrations/google-drive/handlers/share_file.js +0 -20
  298. package/integrations/google-drive/manifest.json +0 -70
  299. package/integrations/google-drive/prompt.md +0 -59
  300. package/integrations/google-drive/schemas/create_file.json +0 -12
  301. package/integrations/google-drive/schemas/create_folder.json +0 -11
  302. package/integrations/google-drive/schemas/delete_file.json +0 -10
  303. package/integrations/google-drive/schemas/get_file.json +0 -10
  304. package/integrations/google-drive/schemas/get_file_content.json +0 -11
  305. package/integrations/google-drive/schemas/list_files.json +0 -12
  306. package/integrations/google-drive/schemas/move_file.json +0 -12
  307. package/integrations/google-drive/schemas/search_files.json +0 -14
  308. package/integrations/google-drive/schemas/share_file.json +0 -23
  309. package/integrations/google-gmail/.env.test.example +0 -11
  310. package/integrations/google-gmail/README.md +0 -49
  311. package/integrations/google-gmail/__tests__/get_handlers.test.ts +0 -134
  312. package/integrations/google-gmail/__tests__/usage_parity.test.ts +0 -9
  313. package/integrations/google-gmail/__tests__/write_and_admin_handlers.test.ts +0 -211
  314. package/integrations/google-gmail/credentials.json +0 -59
  315. package/integrations/google-gmail/credentials_hint_oauth_token.md +0 -8
  316. package/integrations/google-gmail/credentials_hint_service_account.md +0 -10
  317. package/integrations/google-gmail/handlers/create_draft_email.js +0 -27
  318. package/integrations/google-gmail/handlers/create_label.js +0 -12
  319. package/integrations/google-gmail/handlers/delete_draft.js +0 -13
  320. package/integrations/google-gmail/handlers/delete_label.js +0 -13
  321. package/integrations/google-gmail/handlers/delete_message.js +0 -13
  322. package/integrations/google-gmail/handlers/delete_thread.js +0 -13
  323. package/integrations/google-gmail/handlers/get_draft.js +0 -6
  324. package/integrations/google-gmail/handlers/get_label.js +0 -6
  325. package/integrations/google-gmail/handlers/get_message.js +0 -14
  326. package/integrations/google-gmail/handlers/get_profile.js +0 -5
  327. package/integrations/google-gmail/handlers/get_thread.js +0 -14
  328. package/integrations/google-gmail/handlers/list_drafts.js +0 -15
  329. package/integrations/google-gmail/handlers/list_labels.js +0 -5
  330. package/integrations/google-gmail/handlers/list_messages.js +0 -19
  331. package/integrations/google-gmail/handlers/list_threads.js +0 -19
  332. package/integrations/google-gmail/handlers/modify_message.js +0 -11
  333. package/integrations/google-gmail/handlers/modify_thread.js +0 -11
  334. package/integrations/google-gmail/handlers/read_email.js +0 -56
  335. package/integrations/google-gmail/handlers/send_draft.js +0 -15
  336. package/integrations/google-gmail/handlers/send_email.js +0 -22
  337. package/integrations/google-gmail/handlers/trash_message.js +0 -6
  338. package/integrations/google-gmail/handlers/trash_thread.js +0 -6
  339. package/integrations/google-gmail/handlers/untrash_message.js +0 -6
  340. package/integrations/google-gmail/handlers/untrash_thread.js +0 -6
  341. package/integrations/google-gmail/handlers/update_label.js +0 -15
  342. package/integrations/google-gmail/manifest.json +0 -45
  343. package/integrations/google-gmail/prompt.md +0 -52
  344. package/integrations/google-gmail/schemas/create_draft_email.json +0 -16
  345. package/integrations/google-gmail/schemas/create_label.json +0 -26
  346. package/integrations/google-gmail/schemas/get_message.json +0 -20
  347. package/integrations/google-gmail/schemas/get_profile.json +0 -11
  348. package/integrations/google-gmail/schemas/get_thread.json +0 -20
  349. package/integrations/google-gmail/schemas/id_draft.json +0 -16
  350. package/integrations/google-gmail/schemas/id_label.json +0 -16
  351. package/integrations/google-gmail/schemas/id_message.json +0 -16
  352. package/integrations/google-gmail/schemas/id_thread.json +0 -16
  353. package/integrations/google-gmail/schemas/list_drafts.json +0 -30
  354. package/integrations/google-gmail/schemas/list_labels.json +0 -11
  355. package/integrations/google-gmail/schemas/list_messages.json +0 -35
  356. package/integrations/google-gmail/schemas/list_threads.json +0 -35
  357. package/integrations/google-gmail/schemas/modify_message.json +0 -24
  358. package/integrations/google-gmail/schemas/modify_thread.json +0 -24
  359. package/integrations/google-gmail/schemas/read_email.json +0 -10
  360. package/integrations/google-gmail/schemas/send_draft.json +0 -29
  361. package/integrations/google-gmail/schemas/send_email.json +0 -17
  362. package/integrations/google-gmail/schemas/update_label.json +0 -33
  363. package/integrations/google-sheet/README.md +0 -27
  364. package/integrations/google-sheet/__tests__/get_handlers.test.ts +0 -76
  365. package/integrations/google-sheet/__tests__/usage_parity.test.ts +0 -9
  366. package/integrations/google-sheet/__tests__/write_handlers.test.ts +0 -153
  367. package/integrations/google-sheet/credentials.json +0 -59
  368. package/integrations/google-sheet/credentials_hint.md +0 -9
  369. package/integrations/google-sheet/credentials_hint_oauth_token.md +0 -8
  370. package/integrations/google-sheet/credentials_hint_service_account.md +0 -10
  371. package/integrations/google-sheet/handlers/append_values.js +0 -18
  372. package/integrations/google-sheet/handlers/batch_clear_values.js +0 -6
  373. package/integrations/google-sheet/handlers/batch_update.js +0 -14
  374. package/integrations/google-sheet/handlers/batch_update_values.js +0 -16
  375. package/integrations/google-sheet/handlers/clear_values.js +0 -6
  376. package/integrations/google-sheet/handlers/copy_to_spreadsheet.js +0 -6
  377. package/integrations/google-sheet/handlers/create_spreadsheet.js +0 -5
  378. package/integrations/google-sheet/handlers/get_spreadsheet.js +0 -14
  379. package/integrations/google-sheet/handlers/read_sheet.js +0 -75
  380. package/integrations/google-sheet/handlers/update_values.js +0 -16
  381. package/integrations/google-sheet/manifest.json +0 -77
  382. package/integrations/google-sheet/prompt.md +0 -49
  383. package/integrations/google-sheet/schemas/append_values.json +0 -16
  384. package/integrations/google-sheet/schemas/batch_clear_values.json +0 -10
  385. package/integrations/google-sheet/schemas/batch_update.json +0 -13
  386. package/integrations/google-sheet/schemas/batch_update_values.json +0 -25
  387. package/integrations/google-sheet/schemas/clear_values.json +0 -10
  388. package/integrations/google-sheet/schemas/copy_to_spreadsheet.json +0 -11
  389. package/integrations/google-sheet/schemas/create_spreadsheet.json +0 -11
  390. package/integrations/google-sheet/schemas/get_spreadsheet.json +0 -16
  391. package/integrations/google-sheet/schemas/read_sheet.json +0 -21
  392. package/integrations/google-sheet/schemas/update_values.json +0 -15
  393. package/integrations/google-slides/README.md +0 -28
  394. package/integrations/google-slides/__tests__/get_handlers.test.ts +0 -74
  395. package/integrations/google-slides/__tests__/usage_parity.test.ts +0 -9
  396. package/integrations/google-slides/__tests__/write_handlers.test.ts +0 -131
  397. package/integrations/google-slides/credentials.json +0 -59
  398. package/integrations/google-slides/credentials_hint.md +0 -9
  399. package/integrations/google-slides/credentials_hint_oauth_token.md +0 -8
  400. package/integrations/google-slides/credentials_hint_service_account.md +0 -10
  401. package/integrations/google-slides/handlers/append_text_to_title_of_first_slide.js +0 -17
  402. package/integrations/google-slides/handlers/batch_update.js +0 -15
  403. package/integrations/google-slides/handlers/create_presentation.js +0 -8
  404. package/integrations/google-slides/handlers/create_slide_after_first_match.js +0 -20
  405. package/integrations/google-slides/handlers/get_page_thumbnail.js +0 -12
  406. package/integrations/google-slides/handlers/insert_image_after_first_match.js +0 -19
  407. package/integrations/google-slides/handlers/insert_shape_after_first_match.js +0 -21
  408. package/integrations/google-slides/handlers/read_presentation.js +0 -51
  409. package/integrations/google-slides/handlers/replace_text_first_match.js +0 -9
  410. package/integrations/google-slides/handlers/set_background_color_for_slide_index.js +0 -15
  411. package/integrations/google-slides/handlers/style_text_first_match.js +0 -48
  412. package/integrations/google-slides/manifest.json +0 -42
  413. package/integrations/google-slides/prompt.md +0 -56
  414. package/integrations/google-slides/schemas/append_text_to_title_of_first_slide.json +0 -11
  415. package/integrations/google-slides/schemas/batch_update.json +0 -13
  416. package/integrations/google-slides/schemas/create_presentation.json +0 -8
  417. package/integrations/google-slides/schemas/create_slide_after_first_match.json +0 -11
  418. package/integrations/google-slides/schemas/get_page_thumbnail.json +0 -12
  419. package/integrations/google-slides/schemas/get_presentation.json +0 -9
  420. package/integrations/google-slides/schemas/insert_image_after_first_match.json +0 -13
  421. package/integrations/google-slides/schemas/insert_shape_after_first_match.json +0 -13
  422. package/integrations/google-slides/schemas/replace_text_first_match.json +0 -12
  423. package/integrations/google-slides/schemas/set_background_color_for_slide_index.json +0 -11
  424. package/integrations/google-slides/schemas/style_text_first_match.json +0 -12
  425. package/integrations/hubspot/.env.test.example +0 -20
  426. package/integrations/hubspot/README.md +0 -48
  427. package/integrations/hubspot/__tests__/get_handlers.test.ts +0 -151
  428. package/integrations/hubspot/__tests__/usage_parity.test.ts +0 -10
  429. package/integrations/hubspot/__tests__/write_handlers.test.ts +0 -244
  430. package/integrations/hubspot/credentials.json +0 -50
  431. package/integrations/hubspot/credentials_hint.md +0 -20
  432. package/integrations/hubspot/credentials_hint_oauth_token.md +0 -16
  433. package/integrations/hubspot/handlers/archive_company.js +0 -13
  434. package/integrations/hubspot/handlers/archive_contact.js +0 -13
  435. package/integrations/hubspot/handlers/archive_deal.js +0 -13
  436. package/integrations/hubspot/handlers/archive_ticket.js +0 -13
  437. package/integrations/hubspot/handlers/create_association.js +0 -18
  438. package/integrations/hubspot/handlers/create_company.js +0 -13
  439. package/integrations/hubspot/handlers/create_contact.js +0 -14
  440. package/integrations/hubspot/handlers/create_deal.js +0 -16
  441. package/integrations/hubspot/handlers/create_note.js +0 -44
  442. package/integrations/hubspot/handlers/create_task.js +0 -48
  443. package/integrations/hubspot/handlers/create_ticket.js +0 -15
  444. package/integrations/hubspot/handlers/get_associations.js +0 -14
  445. package/integrations/hubspot/handlers/get_company.js +0 -18
  446. package/integrations/hubspot/handlers/get_contact.js +0 -18
  447. package/integrations/hubspot/handlers/get_deal.js +0 -18
  448. package/integrations/hubspot/handlers/get_ticket.js +0 -20
  449. package/integrations/hubspot/handlers/list_owners.js +0 -12
  450. package/integrations/hubspot/handlers/list_pipelines.js +0 -5
  451. package/integrations/hubspot/handlers/list_properties.js +0 -11
  452. package/integrations/hubspot/handlers/remove_association.js +0 -22
  453. package/integrations/hubspot/handlers/search_companies.js +0 -43
  454. package/integrations/hubspot/handlers/search_contacts.js +0 -43
  455. package/integrations/hubspot/handlers/search_deals.js +0 -43
  456. package/integrations/hubspot/handlers/search_notes.js +0 -43
  457. package/integrations/hubspot/handlers/search_tasks.js +0 -43
  458. package/integrations/hubspot/handlers/search_tickets.js +0 -43
  459. package/integrations/hubspot/handlers/update_company.js +0 -13
  460. package/integrations/hubspot/handlers/update_contact.js +0 -14
  461. package/integrations/hubspot/handlers/update_deal.js +0 -16
  462. package/integrations/hubspot/handlers/update_task.js +0 -17
  463. package/integrations/hubspot/handlers/update_ticket.js +0 -15
  464. package/integrations/hubspot/manifest.json +0 -231
  465. package/integrations/hubspot/prompt.md +0 -69
  466. package/integrations/hubspot/schemas/archive_company.json +0 -13
  467. package/integrations/hubspot/schemas/archive_contact.json +0 -13
  468. package/integrations/hubspot/schemas/archive_deal.json +0 -9
  469. package/integrations/hubspot/schemas/archive_ticket.json +0 -9
  470. package/integrations/hubspot/schemas/create_association.json +0 -24
  471. package/integrations/hubspot/schemas/create_company.json +0 -14
  472. package/integrations/hubspot/schemas/create_contact.json +0 -15
  473. package/integrations/hubspot/schemas/create_deal.json +0 -20
  474. package/integrations/hubspot/schemas/create_note.json +0 -37
  475. package/integrations/hubspot/schemas/create_task.json +0 -51
  476. package/integrations/hubspot/schemas/create_ticket.json +0 -16
  477. package/integrations/hubspot/schemas/empty.json +0 -6
  478. package/integrations/hubspot/schemas/get_associations.json +0 -30
  479. package/integrations/hubspot/schemas/get_company.json +0 -27
  480. package/integrations/hubspot/schemas/get_contact.json +0 -27
  481. package/integrations/hubspot/schemas/get_deal.json +0 -20
  482. package/integrations/hubspot/schemas/get_ticket.json +0 -20
  483. package/integrations/hubspot/schemas/list_owners.json +0 -25
  484. package/integrations/hubspot/schemas/list_pipelines.json +0 -13
  485. package/integrations/hubspot/schemas/list_properties.json +0 -17
  486. package/integrations/hubspot/schemas/remove_association.json +0 -24
  487. package/integrations/hubspot/schemas/search_companies.json +0 -56
  488. package/integrations/hubspot/schemas/search_contacts.json +0 -56
  489. package/integrations/hubspot/schemas/search_deals.json +0 -43
  490. package/integrations/hubspot/schemas/search_notes.json +0 -43
  491. package/integrations/hubspot/schemas/search_tasks.json +0 -43
  492. package/integrations/hubspot/schemas/search_tickets.json +0 -43
  493. package/integrations/hubspot/schemas/update_company.json +0 -20
  494. package/integrations/hubspot/schemas/update_contact.json +0 -21
  495. package/integrations/hubspot/schemas/update_deal.json +0 -19
  496. package/integrations/hubspot/schemas/update_task.json +0 -31
  497. package/integrations/hubspot/schemas/update_ticket.json +0 -18
  498. package/integrations/jira/.env.test.example +0 -41
  499. package/integrations/jira/README.md +0 -46
  500. package/integrations/jira/__tests__/get_handlers.test.ts +0 -193
  501. package/integrations/jira/__tests__/usage_parity.test.ts +0 -14
  502. package/integrations/jira/__tests__/write_handlers.test.ts +0 -157
  503. package/integrations/jira/credentials.json +0 -39
  504. package/integrations/jira/credentials_hint.md +0 -4
  505. package/integrations/jira/credentials_hint_api_token.md +0 -6
  506. package/integrations/jira/credentials_hint_oauth_token.md +0 -6
  507. package/integrations/jira/handlers/add_comment.js +0 -9
  508. package/integrations/jira/handlers/assign_issue.js +0 -11
  509. package/integrations/jira/handlers/create_issue.js +0 -37
  510. package/integrations/jira/handlers/create_sprint.js +0 -19
  511. package/integrations/jira/handlers/delete_issue.js +0 -10
  512. package/integrations/jira/handlers/get_backlog_issues.js +0 -13
  513. package/integrations/jira/handlers/get_board.js +0 -6
  514. package/integrations/jira/handlers/get_issue.js +0 -63
  515. package/integrations/jira/handlers/get_issue_comments.js +0 -31
  516. package/integrations/jira/handlers/get_myself.js +0 -14
  517. package/integrations/jira/handlers/get_project.js +0 -28
  518. package/integrations/jira/handlers/get_sprint.js +0 -5
  519. package/integrations/jira/handlers/get_sprint_issues.js +0 -13
  520. package/integrations/jira/handlers/get_transitions.js +0 -23
  521. package/integrations/jira/handlers/list_boards.js +0 -34
  522. package/integrations/jira/handlers/list_projects.js +0 -29
  523. package/integrations/jira/handlers/list_sprints.js +0 -29
  524. package/integrations/jira/handlers/move_issues_to_sprint.js +0 -11
  525. package/integrations/jira/handlers/search_issues.js +0 -43
  526. package/integrations/jira/handlers/search_users.js +0 -21
  527. package/integrations/jira/handlers/transition_issue.js +0 -44
  528. package/integrations/jira/handlers/update_issue.js +0 -40
  529. package/integrations/jira/handlers/update_sprint.js +0 -20
  530. package/integrations/jira/manifest.json +0 -204
  531. package/integrations/jira/prompt.md +0 -80
  532. package/integrations/jira/schemas/add_comment.json +0 -16
  533. package/integrations/jira/schemas/assign_issue.json +0 -16
  534. package/integrations/jira/schemas/create_issue.json +0 -49
  535. package/integrations/jira/schemas/create_sprint.json +0 -29
  536. package/integrations/jira/schemas/delete_issue.json +0 -12
  537. package/integrations/jira/schemas/empty.json +0 -6
  538. package/integrations/jira/schemas/get_backlog_issues.json +0 -33
  539. package/integrations/jira/schemas/get_board.json +0 -13
  540. package/integrations/jira/schemas/get_issue.json +0 -23
  541. package/integrations/jira/schemas/get_issue_comments.json +0 -23
  542. package/integrations/jira/schemas/get_project.json +0 -17
  543. package/integrations/jira/schemas/get_sprint.json +0 -13
  544. package/integrations/jira/schemas/get_sprint_issues.json +0 -33
  545. package/integrations/jira/schemas/get_transitions.json +0 -12
  546. package/integrations/jira/schemas/list_boards.json +0 -27
  547. package/integrations/jira/schemas/list_projects.json +0 -22
  548. package/integrations/jira/schemas/list_sprints.json +0 -29
  549. package/integrations/jira/schemas/move_issues_to_sprint.json +0 -19
  550. package/integrations/jira/schemas/search_issues.json +0 -28
  551. package/integrations/jira/schemas/search_users.json +0 -18
  552. package/integrations/jira/schemas/transition_issue.json +0 -38
  553. package/integrations/jira/schemas/update_issue.json +0 -47
  554. package/integrations/jira/schemas/update_sprint.json +0 -33
  555. package/integrations/new_integration_prompt.md +0 -216
  556. package/integrations/notion/.env.test.example +0 -13
  557. package/integrations/notion/README.md +0 -42
  558. package/integrations/notion/__tests__/get_handlers.test.ts +0 -156
  559. package/integrations/notion/__tests__/usage_parity.test.ts +0 -9
  560. package/integrations/notion/__tests__/write_and_admin_handlers.test.ts +0 -186
  561. package/integrations/notion/credentials.json +0 -27
  562. package/integrations/notion/credentials_hint.md +0 -5
  563. package/integrations/notion/handlers/append_block_children.js +0 -7
  564. package/integrations/notion/handlers/create_comment.js +0 -10
  565. package/integrations/notion/handlers/create_database.js +0 -11
  566. package/integrations/notion/handlers/create_page.js +0 -13
  567. package/integrations/notion/handlers/delete_block.js +0 -8
  568. package/integrations/notion/handlers/get_me.js +0 -4
  569. package/integrations/notion/handlers/list_block_children.js +0 -10
  570. package/integrations/notion/handlers/list_comments.js +0 -14
  571. package/integrations/notion/handlers/list_users.js +0 -10
  572. package/integrations/notion/handlers/query_database.js +0 -10
  573. package/integrations/notion/handlers/retrieve_block.js +0 -4
  574. package/integrations/notion/handlers/retrieve_database.js +0 -4
  575. package/integrations/notion/handlers/retrieve_page.js +0 -4
  576. package/integrations/notion/handlers/retrieve_page_property_item.js +0 -10
  577. package/integrations/notion/handlers/retrieve_user.js +0 -4
  578. package/integrations/notion/handlers/search.js +0 -11
  579. package/integrations/notion/handlers/update_block.js +0 -7
  580. package/integrations/notion/handlers/update_database.js +0 -10
  581. package/integrations/notion/handlers/update_page_properties.js +0 -10
  582. package/integrations/notion/manifest.json +0 -169
  583. package/integrations/notion/prompt.md +0 -26
  584. package/integrations/notion/schemas/append_block_children.json +0 -10
  585. package/integrations/notion/schemas/create_comment.json +0 -18
  586. package/integrations/notion/schemas/create_database.json +0 -18
  587. package/integrations/notion/schemas/create_page.json +0 -22
  588. package/integrations/notion/schemas/delete_block.json +0 -9
  589. package/integrations/notion/schemas/empty.json +0 -6
  590. package/integrations/notion/schemas/id_block.json +0 -9
  591. package/integrations/notion/schemas/id_database.json +0 -9
  592. package/integrations/notion/schemas/id_page.json +0 -9
  593. package/integrations/notion/schemas/id_user.json +0 -9
  594. package/integrations/notion/schemas/list_block_children.json +0 -11
  595. package/integrations/notion/schemas/list_comments.json +0 -15
  596. package/integrations/notion/schemas/list_users.json +0 -9
  597. package/integrations/notion/schemas/query_database.json +0 -13
  598. package/integrations/notion/schemas/retrieve_page_property_item.json +0 -12
  599. package/integrations/notion/schemas/search.json +0 -27
  600. package/integrations/notion/schemas/update_block.json +0 -10
  601. package/integrations/notion/schemas/update_database.json +0 -13
  602. package/integrations/notion/schemas/update_page_properties.json +0 -13
  603. package/integrations/trello/.env.test.example +0 -9
  604. package/integrations/trello/README.md +0 -50
  605. package/integrations/trello/__tests__/get_handlers.test.ts +0 -225
  606. package/integrations/trello/__tests__/usage_parity.test.ts +0 -9
  607. package/integrations/trello/__tests__/write_and_admin_handlers.test.ts +0 -171
  608. package/integrations/trello/credentials.json +0 -32
  609. package/integrations/trello/credentials_hint.md +0 -4
  610. package/integrations/trello/handlers/add_checklist_to_card.js +0 -5
  611. package/integrations/trello/handlers/add_member_to_card.js +0 -5
  612. package/integrations/trello/handlers/archive_list.js +0 -5
  613. package/integrations/trello/handlers/close_board.js +0 -6
  614. package/integrations/trello/handlers/create_board.js +0 -11
  615. package/integrations/trello/handlers/create_card.js +0 -13
  616. package/integrations/trello/handlers/create_list.js +0 -7
  617. package/integrations/trello/handlers/delete_board.js +0 -13
  618. package/integrations/trello/handlers/delete_card.js +0 -9
  619. package/integrations/trello/handlers/get_board.js +0 -4
  620. package/integrations/trello/handlers/get_board_cards.js +0 -4
  621. package/integrations/trello/handlers/get_board_custom_fields.js +0 -4
  622. package/integrations/trello/handlers/get_board_labels.js +0 -4
  623. package/integrations/trello/handlers/get_board_lists.js +0 -4
  624. package/integrations/trello/handlers/get_board_members.js +0 -4
  625. package/integrations/trello/handlers/get_board_memberships.js +0 -4
  626. package/integrations/trello/handlers/get_card.js +0 -4
  627. package/integrations/trello/handlers/get_card_actions.js +0 -4
  628. package/integrations/trello/handlers/get_card_attachments.js +0 -4
  629. package/integrations/trello/handlers/get_card_checklists.js +0 -4
  630. package/integrations/trello/handlers/get_card_custom_field_items.js +0 -4
  631. package/integrations/trello/handlers/get_card_members.js +0 -4
  632. package/integrations/trello/handlers/get_list.js +0 -4
  633. package/integrations/trello/handlers/get_list_cards.js +0 -4
  634. package/integrations/trello/handlers/get_member.js +0 -4
  635. package/integrations/trello/handlers/get_member_boards.js +0 -4
  636. package/integrations/trello/handlers/get_member_organizations.js +0 -4
  637. package/integrations/trello/handlers/get_organization.js +0 -4
  638. package/integrations/trello/handlers/get_organization_boards.js +0 -4
  639. package/integrations/trello/handlers/move_card_to_list.js +0 -5
  640. package/integrations/trello/handlers/remove_member_from_card.js +0 -9
  641. package/integrations/trello/handlers/search.js +0 -5
  642. package/integrations/trello/handlers/update_card.js +0 -19
  643. package/integrations/trello/handlers/update_list.js +0 -11
  644. package/integrations/trello/manifest.json +0 -245
  645. package/integrations/trello/schemas/add_checklist_to_card.json +0 -10
  646. package/integrations/trello/schemas/add_member_to_card.json +0 -10
  647. package/integrations/trello/schemas/archive_list.json +0 -9
  648. package/integrations/trello/schemas/close_board.json +0 -10
  649. package/integrations/trello/schemas/create_board.json +0 -12
  650. package/integrations/trello/schemas/create_card.json +0 -13
  651. package/integrations/trello/schemas/create_list.json +0 -11
  652. package/integrations/trello/schemas/delete_board.json +0 -10
  653. package/integrations/trello/schemas/delete_card.json +0 -9
  654. package/integrations/trello/schemas/display_trello_cards.json +0 -45
  655. package/integrations/trello/schemas/empty.json +0 -5
  656. package/integrations/trello/schemas/get_member.json +0 -5
  657. package/integrations/trello/schemas/id_board.json +0 -8
  658. package/integrations/trello/schemas/id_card.json +0 -8
  659. package/integrations/trello/schemas/id_list.json +0 -8
  660. package/integrations/trello/schemas/id_org.json +0 -8
  661. package/integrations/trello/schemas/move_card_to_list.json +0 -10
  662. package/integrations/trello/schemas/remove_member_from_card.json +0 -10
  663. package/integrations/trello/schemas/search.json +0 -8
  664. package/integrations/trello/schemas/update_card.json +0 -16
  665. package/integrations/trello/schemas/update_list.json +0 -12
@@ -1,97 +0,0 @@
1
- import { IntegrationProxy } from '../../../core/src/integrations/proxy.js'
2
- import { loadIntegrationTools } from '../../../core/src/integrations/dataLoader.js'
3
- import { createSafeHandlerFromString } from '../../../core/src/integrations/sandbox.js'
4
- import { buildSandboxUtils } from '../../../core/src/integrations/sandboxUtils.js'
5
-
6
- type ToolDef = {
7
- name: string
8
- handlerCode: string
9
- utils?: string[]
10
- }
11
-
12
- type ToolSet = {
13
- read: ToolDef[]
14
- write: ToolDef[]
15
- admin: ToolDef[]
16
- }
17
-
18
- export function hasEnv(...keys: string[]) {
19
- const env = process.env as Record<string, string | undefined>
20
- return keys.every(k => Boolean(env[k] && String(env[k]).trim().length > 0))
21
- }
22
-
23
- export function safeCleanup(fn: () => Promise<any>) {
24
- return fn().catch(() => {})
25
- }
26
-
27
- export function createCredentialStore(getCredentials: () => Promise<any>) {
28
- return { getCredentials }
29
- }
30
-
31
- export function createIntegrationNode(type: string, opts?: { id?: string, label?: string, credentialId?: string, credentialVariant?: string }) {
32
- const id = opts?.id || `node-${type}`
33
- return {
34
- spaceId: 'ci',
35
- id,
36
- referenceId: id,
37
- type,
38
- label: opts?.label || type,
39
- connectionMethod: 'credentials',
40
- credentialId: opts?.credentialId || `${type}-creds`,
41
- credentialVariant: opts?.credentialVariant,
42
- } as any
43
- }
44
-
45
- export function createProxy(credentialStore: { getCredentials: () => Promise<any> }) {
46
- return new IntegrationProxy({ credentialStore })
47
- }
48
-
49
- function getTools(type: string, credentialVariant?: string): ToolSet {
50
- const tools = loadIntegrationTools(type, { credentialVariant })
51
- if (!tools)
52
- throw new Error(`Missing integration tools for '${type}'`)
53
- return tools as any
54
- }
55
-
56
- function compileTool(proxy: IntegrationProxy, node: any, tool: ToolDef) {
57
- const integration = { fetch: (path: string, init?: RequestInit) => proxy.call(node, path, init) }
58
- const wrapper = `async (input) => {\n const integration = getIntegration('${String(node?.id || 'node')}');\n const __inner = ${tool.handlerCode};\n return await __inner(input);\n}`
59
- const utils = buildSandboxUtils(Array.isArray(tool.utils) ? tool.utils : undefined)
60
- const safeHandler = createSafeHandlerFromString(wrapper, () => integration, utils)
61
- return async (input: any) => {
62
- const res = await safeHandler(input)
63
- if (!res.success)
64
- throw res.result
65
- return res.result
66
- }
67
- }
68
-
69
- export function createToolbox(type: string, proxy: IntegrationProxy, node: any, credentialVariant?: string) {
70
- const tools = getTools(type, credentialVariant)
71
-
72
- const findTool = (scope: keyof ToolSet, name: string) => tools[scope].find(t => t.name === name)
73
-
74
- return {
75
- /** Returns true if the tool exists in this variant's toolset. */
76
- hasTool: (scope: keyof ToolSet, name: string) => !!findTool(scope, name),
77
-
78
- read: (name: string) => {
79
- const tool = findTool('read', name)
80
- if (!tool)
81
- throw new Error(`Missing read tool '${name}' for '${type}' (variant: ${credentialVariant ?? 'default'})`)
82
- return compileTool(proxy, node, tool)
83
- },
84
- write: (name: string) => {
85
- const tool = findTool('write', name)
86
- if (!tool)
87
- throw new Error(`Missing write tool '${name}' for '${type}' (variant: ${credentialVariant ?? 'default'})`)
88
- return compileTool(proxy, node, tool)
89
- },
90
- admin: (name: string) => {
91
- const tool = findTool('admin', name) || findTool('write', name) || findTool('read', name)
92
- if (!tool)
93
- throw new Error(`Missing admin tool '${name}' for '${type}' (variant: ${credentialVariant ?? 'default'})`)
94
- return compileTool(proxy, node, tool)
95
- },
96
- }
97
- }
@@ -1,54 +0,0 @@
1
- import { existsSync, readdirSync, readFileSync } from 'node:fs'
2
- import { resolve } from 'node:path'
3
- import { fileURLToPath } from 'node:url'
4
- import { loadIntegrationManifest } from '../../../core/src/integrations/dataLoader.js'
5
-
6
- function escapeRegExp(str: string): string {
7
- return str.replace(/[.*+?^${}()|[\]\\]/g, '\\$&')
8
- }
9
-
10
- /**
11
- * Returns tool names from the manifest that are not exercised in any test file,
12
- * excluding tools that are restricted to specific credential variants (those are
13
- * covered by their own variant-specific test suites).
14
- */
15
- export function getMissingToolUsages(opts: { integrationName: string, importMetaUrl: string, credentialVariant?: string }): string[] {
16
- const manifest = loadIntegrationManifest(opts.integrationName)
17
- if (!manifest)
18
- throw new Error(`Missing integration manifest for '${opts.integrationName}'`)
19
-
20
- const tools = manifest.tools as any[]
21
-
22
- const relevantTools = tools.filter((t) => {
23
- if (!t.credentialVariants || !Array.isArray(t.credentialVariants) || t.credentialVariants.length === 0)
24
- return true
25
- if (opts.credentialVariant)
26
- return t.credentialVariants.includes(opts.credentialVariant)
27
- return false
28
- })
29
-
30
- const toolNames = relevantTools.map(t => t.name)
31
-
32
- const testsDir = fileURLToPath(new URL('.', opts.importMetaUrl))
33
- if (!existsSync(testsDir))
34
- throw new Error(`Missing tests directory: ${testsDir}`)
35
-
36
- const testFiles = readdirSync(testsDir)
37
- .filter(f => /\.test\.(t|j)s$/.test(f) && !f.includes('usage_parity.test'))
38
- .map(f => resolve(testsDir, f))
39
-
40
- const fileContents = testFiles.map(f => readFileSync(f, 'utf8'))
41
-
42
- const missing: string[] = []
43
- for (const name of toolNames) {
44
- const nameRe = new RegExp(
45
- `(?:build(?:Read|Write|Admin)?(?:Handler)?|\\.(?:read|write|admin))\\(\\s*['\"\`]${escapeRegExp(name)}['\"\`]\\s*\\)`,
46
- 'm',
47
- )
48
- const found = fileContents.some(src => nameRe.test(src))
49
- if (!found)
50
- missing.push(name)
51
- }
52
-
53
- return missing
54
- }
@@ -1,11 +0,0 @@
1
- # Airtable live integration tests
2
- #
3
- # Get a personal access token at: https://airtable.com/create/tokens
4
- # Ensure it has access to the base below with data.records:read + data.records:write.
5
- AIRTABLE_TOKEN=
6
- #
7
- # Required for write tests (the suite creates/updates/deletes records; it does NOT create
8
- # bases/tables). Base/table IDs can be found in the Airtable UI/API docs for your base.
9
- # The table must have a writable text field named `Name`.
10
- AIRTABLE_TEST_WRITE_BASE_ID=
11
- AIRTABLE_TEST_WRITE_TABLE_ID=
@@ -1,27 +0,0 @@
1
- # Airtable
2
-
3
- **11 tools**
4
-
5
- ![Airtable tests](https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/theomccabe/771bd329f303087690c522afa1baa6f3/raw/test-airtable.json)
6
-
7
- ## Credential variants
8
-
9
- | Variant | Label |
10
- |---|---|
11
- | `personal_access_token` | Personal Access Token _(default)_ |
12
-
13
- ## Tools
14
-
15
- | Tool | Scope | Description |
16
- |---|---|---|
17
- | `list_bases` | read | List bases available to the authenticated user. |
18
- | `list_tables` | read | List tables in a base (metadata). |
19
- | `get_table_schema` | read | Fetch a table's schema (fields, views) by tableId via metadata. |
20
- | `list_table_fields` | read | List fields for a table (metadata). |
21
- | `list_views` | read | List views for a table (metadata). |
22
- | `list_records` | read | List records from a table with optional filters. |
23
- | `get_record` | read | Fetch a single record by recordId. |
24
- | `search_records` | read | Search records in a table using a field and value (filterByFormula). |
25
- | `create_record` | write | Create a record in a table. |
26
- | `update_record` | write | Update a record in a table. |
27
- | `delete_record` | write | Delete a record from a table. |
@@ -1,187 +0,0 @@
1
- import { afterAll, beforeAll, describe, expect, it } from 'vitest'
2
- import { IntegrationProxy } from '../../../../core/src/integrations/proxy.js'
3
- import { loadIntegrationTools } from '../../../../core/src/integrations/dataLoader.js'
4
-
5
- // LIVE Airtable integration tests using credentials
6
- // Required env vars:
7
- // - AIRTABLE_TOKEN
8
- // Optional (pins read tests to a specific base/table instead of auto-discovering):
9
- // - AIRTABLE_TEST_WRITE_BASE_ID
10
- // - AIRTABLE_TEST_WRITE_TABLE_ID
11
-
12
- interface Ctx {
13
- baseId?: string
14
- tableId?: string
15
- recordId?: string
16
- ownedRecordId?: string
17
- }
18
-
19
- const env = process.env as Record<string, string>
20
- const hasEnv = (...keys: string[]) => keys.every(k => !!env[k] && env[k].trim().length > 0)
21
- const suite = hasEnv(
22
- 'AIRTABLE_TOKEN',
23
- )
24
- ? describe
25
- : describe.skip
26
-
27
- suite('airtable read handlers (live)', () => {
28
- const ctx: Ctx = {}
29
- let buildHandler: (name: string) => ((input: any) => Promise<any>)
30
- let buildWriteHandler: (name: string) => ((input: any) => Promise<any>)
31
-
32
- beforeAll(async () => {
33
- const credentialStore = {
34
- getCredentials: async () => ({ token: env.AIRTABLE_TOKEN || '' }),
35
- }
36
-
37
- const proxy = new IntegrationProxy({ credentialStore })
38
- const integrationNode = {
39
- spaceId: 'ci',
40
- id: 'node-airtable',
41
- referenceId: 'node-airtable',
42
- type: 'airtable',
43
- label: 'Airtable',
44
- connectionMethod: 'credentials',
45
- credentialId: 'airtable-creds',
46
- } as any
47
-
48
- const tools = loadIntegrationTools('airtable')
49
- expect(tools).toBeTruthy()
50
-
51
- buildHandler = (name: string) => {
52
- const tool = tools!.read.find(t => t.name === name)
53
- expect(tool, `tool ${name} exists`).toBeTruthy()
54
- const integration = {
55
- fetch: (path: string, init?: RequestInit) => proxy.call(integrationNode, path, init),
56
- }
57
- const build = new Function('integration', `return (${tool!.handlerCode});`)
58
- return build(integration) as (input: any) => Promise<any>
59
- }
60
-
61
- buildWriteHandler = (name: string) => {
62
- const tool = tools!.write.find(t => t.name === name)
63
- expect(tool, `write tool ${name} exists`).toBeTruthy()
64
- const integration = {
65
- fetch: (path: string, init?: RequestInit) => proxy.call(integrationNode, path, init),
66
- }
67
- const build = new Function('integration', `return (${tool!.handlerCode});`)
68
- return build(integration) as (input: any) => Promise<any>
69
- }
70
-
71
- // Use explicit test base/table if provided, otherwise auto-discover from first base
72
- if (env.AIRTABLE_TEST_WRITE_BASE_ID && env.AIRTABLE_TEST_WRITE_TABLE_ID) {
73
- ctx.baseId = env.AIRTABLE_TEST_WRITE_BASE_ID
74
- ctx.tableId = env.AIRTABLE_TEST_WRITE_TABLE_ID
75
- }
76
- else {
77
- const list_bases = buildHandler('list_bases')
78
- const bases = await list_bases({})
79
- ctx.baseId = bases?.bases?.[0]?.id || bases?.[0]?.id
80
-
81
- if (ctx.baseId) {
82
- const list_tables = buildHandler('list_tables')
83
- const tablesResp = await list_tables({ baseId: ctx.baseId })
84
- const tables = tablesResp?.tables || tablesResp
85
- ctx.tableId = tables?.[0]?.id
86
- }
87
- }
88
-
89
- // Create a dedicated record so get_record has a stable ID that the concurrent
90
- // write suite cannot accidentally delete out from under us.
91
- if (ctx.baseId && ctx.tableId) {
92
- try {
93
- const create_record = buildWriteHandler('create_record')
94
- const created = await create_record({
95
- baseId: ctx.baseId,
96
- tableId: ctx.tableId,
97
- fields: { Name: `ReadTest ${Date.now()}` },
98
- })
99
- const rec = created?.records?.[0] || created
100
- ctx.ownedRecordId = rec?.id
101
- ctx.recordId = rec?.id
102
- }
103
- catch {
104
- // If create fails (e.g. no write permission), fall back to discovering a record
105
- const list_records = buildHandler('list_records')
106
- const recs = await list_records({ baseId: ctx.baseId, tableId: ctx.tableId, pageSize: 1 })
107
- const records = recs?.records || recs
108
- ctx.recordId = records?.[0]?.id
109
- }
110
- }
111
- }, 60000)
112
-
113
- afterAll(async () => {
114
- if (ctx.ownedRecordId && ctx.baseId && ctx.tableId) {
115
- try {
116
- const delete_record = buildWriteHandler('delete_record')
117
- await delete_record({ baseId: ctx.baseId, tableId: ctx.tableId, recordId: ctx.ownedRecordId })
118
- }
119
- catch {}
120
- }
121
- })
122
-
123
- it('list_bases returns bases', async () => {
124
- const handler = buildHandler('list_bases')
125
- const result = await handler({})
126
- expect(result).toBeTruthy()
127
- }, 30000)
128
-
129
- it('list_tables returns tables for base', async () => {
130
- if (!ctx.baseId)
131
- return expect(true).toBe(true)
132
- const handler = buildHandler('list_tables')
133
- const result = await handler({ baseId: ctx.baseId })
134
- expect(result).toBeTruthy()
135
- }, 30000)
136
-
137
- it('get_table_schema returns a table schema', async () => {
138
- if (!ctx.baseId || !ctx.tableId)
139
- return expect(true).toBe(true)
140
- const handler = buildHandler('get_table_schema')
141
- const result = await handler({ baseId: ctx.baseId, tableId: ctx.tableId })
142
- expect(result?.id || result?.name).toBeTruthy()
143
- }, 30000)
144
-
145
- it('list_table_fields returns fields', async () => {
146
- if (!ctx.baseId || !ctx.tableId)
147
- return expect(true).toBe(true)
148
- const handler = buildHandler('list_table_fields')
149
- const result = await handler({ baseId: ctx.baseId, tableId: ctx.tableId })
150
- expect(Array.isArray(result)).toBe(true)
151
- }, 30000)
152
-
153
- it('list_views returns views', async () => {
154
- if (!ctx.baseId || !ctx.tableId)
155
- return expect(true).toBe(true)
156
- const handler = buildHandler('list_views')
157
- const result = await handler({ baseId: ctx.baseId, tableId: ctx.tableId })
158
- expect(Array.isArray(result)).toBe(true)
159
- }, 30000)
160
-
161
- it('list_records returns records', async () => {
162
- if (!ctx.baseId || !ctx.tableId)
163
- return expect(true).toBe(true)
164
- const handler = buildHandler('list_records')
165
- const result = await handler({ baseId: ctx.baseId, tableId: ctx.tableId, pageSize: 3 })
166
- expect(result).toBeTruthy()
167
- }, 30000)
168
-
169
- it('get_record returns a record by id', async () => {
170
- if (!ctx.baseId || !ctx.tableId || !ctx.recordId)
171
- return expect(true).toBe(true)
172
- const handler = buildHandler('get_record')
173
- const result = await handler({ baseId: ctx.baseId, tableId: ctx.tableId, recordId: ctx.recordId })
174
- expect(result?.id).toBe(ctx.recordId)
175
- }, 30000)
176
-
177
- it('search_records returns matching records', async () => {
178
- if (!ctx.baseId || !ctx.tableId)
179
- return expect(true).toBe(true)
180
- const list_fields = buildHandler('list_table_fields')
181
- const fields: any[] = await list_fields({ baseId: ctx.baseId, tableId: ctx.tableId })
182
- const fieldName = fields?.[0]?.name || 'Name'
183
- const handler = buildHandler('search_records')
184
- const result = await handler({ baseId: ctx.baseId, tableId: ctx.tableId, field: fieldName, value: '' })
185
- expect(result).toBeTruthy()
186
- }, 30000)
187
- })
@@ -1,9 +0,0 @@
1
- import { describe, expect, it } from 'vitest'
2
- import { getMissingToolUsages } from '../../__tests__/usageParity.js'
3
-
4
- describe('airtable static usage parity', () => {
5
- it('every manifest tool is referenced in tests', () => {
6
- const missing = getMissingToolUsages({ integrationName: 'airtable', importMetaUrl: import.meta.url })
7
- expect(missing, `Missing handler usages in tests: ${missing.join(', ')}`).toEqual([])
8
- })
9
- })
@@ -1,116 +0,0 @@
1
- import { beforeAll, describe, expect, it } from 'vitest'
2
- import { IntegrationProxy } from '../../../../core/src/integrations/proxy.js'
3
- import { loadIntegrationTools } from '../../../../core/src/integrations/dataLoader.js'
4
-
5
- // LIVE Airtable write tests using credentials
6
- // Required env vars:
7
- // - AIRTABLE_TOKEN
8
- // Optional env for choosing base/table (otherwise picks first available):
9
- // - AIRTABLE_TEST_WRITE_BASE_ID
10
- // - AIRTABLE_TEST_WRITE_TABLE_ID
11
-
12
- interface Ctx {
13
- baseId?: string
14
- tableId?: string
15
- createdRecordId?: string
16
- }
17
-
18
- const env = process.env as Record<string, string>
19
- const hasEnv = (...keys: string[]) => keys.every(k => !!env[k] && env[k].trim().length > 0)
20
- const suite = hasEnv(
21
- 'AIRTABLE_TOKEN',
22
- )
23
- ? describe
24
- : describe.skip
25
-
26
- suite('airtable write handlers (live)', () => {
27
- const ctx: Ctx = {}
28
- let buildWriteHandler: (name: string) => ((input: any) => Promise<any>)
29
- let buildReadHandler: (name: string) => ((input: any) => Promise<any>)
30
-
31
- beforeAll(async () => {
32
- const credentialStore = {
33
- getCredentials: async () => ({ token: env.AIRTABLE_TOKEN || '' }),
34
- }
35
-
36
- const proxy = new IntegrationProxy({ credentialStore })
37
- const integrationNode = {
38
- spaceId: 'ci',
39
- id: 'node-airtable',
40
- referenceId: 'node-airtable',
41
- type: 'airtable',
42
- label: 'Airtable',
43
- connectionMethod: 'credentials',
44
- credentialId: 'airtable-creds',
45
- } as any
46
-
47
- const tools = loadIntegrationTools('airtable')
48
- expect(tools).toBeTruthy()
49
-
50
- buildWriteHandler = (name: string) => {
51
- const tool = tools!.write.find(t => t.name === name)
52
- expect(tool, `write tool ${name} exists`).toBeTruthy()
53
- const integration = { fetch: (path: string, init?: RequestInit) => proxy.call(integrationNode, path, init) }
54
- const build = new Function('integration', `return (${tool!.handlerCode});`)
55
- return build(integration) as (input: any) => Promise<any>
56
- }
57
-
58
- buildReadHandler = (name: string) => {
59
- const tool = tools!.read.find(t => t.name === name)
60
- expect(tool, `read tool ${name} exists`).toBeTruthy()
61
- const integration = { fetch: (path: string, init?: RequestInit) => proxy.call(integrationNode, path, init) }
62
- const build = new Function('integration', `return (${tool!.handlerCode});`)
63
- return build(integration) as (input: any) => Promise<any>
64
- }
65
-
66
- // Resolve base/table for write tests
67
- ctx.baseId = env.AIRTABLE_TEST_WRITE_BASE_ID
68
- ctx.tableId = env.AIRTABLE_TEST_WRITE_TABLE_ID
69
-
70
- if (!ctx.baseId || !ctx.tableId) {
71
- const list_bases = buildReadHandler('list_bases')
72
- const bases = await list_bases({})
73
- ctx.baseId = ctx.baseId || (bases?.bases?.[0]?.id || bases?.[0]?.id)
74
- if (ctx.baseId) {
75
- const list_tables = buildReadHandler('list_tables')
76
- const tablesResp = await list_tables({ baseId: ctx.baseId })
77
- const tables = tablesResp?.tables || tablesResp
78
- ctx.tableId = ctx.tableId || tables?.[0]?.id
79
- }
80
- }
81
- }, 60000)
82
-
83
- it('create_record -> get_record -> update_record -> delete_record roundtrip', async () => {
84
- if (!ctx.baseId || !ctx.tableId)
85
- return expect(true).toBe(true)
86
-
87
- // Assume a single writable column named 'Name' per test setup
88
- const fieldName = 'Name'
89
-
90
- // Create
91
- const create_record = buildWriteHandler('create_record')
92
- const created = await create_record({ baseId: ctx.baseId, tableId: ctx.tableId, fields: { [fieldName]: `CmdTest ${Date.now()}` } })
93
- const createdRec = created?.records?.[0] || created
94
- expect(createdRec?.id).toBeTruthy()
95
- ctx.createdRecordId = createdRec.id
96
-
97
- // Read
98
- const get_record = buildReadHandler('get_record')
99
- const got = await get_record({ baseId: ctx.baseId, tableId: ctx.tableId, recordId: ctx.createdRecordId })
100
- expect(got?.id).toBe(ctx.createdRecordId)
101
-
102
- // Update
103
- const update_record = buildWriteHandler('update_record')
104
- const updated = await update_record({ baseId: ctx.baseId, tableId: ctx.tableId, recordId: ctx.createdRecordId, fields: { [fieldName]: `CmdTest Updated ${Date.now()}` } })
105
- const updatedRec = updated?.records?.[0] || updated
106
- expect(updatedRec?.id).toBe(ctx.createdRecordId)
107
-
108
- // Delete
109
- const delete_record = buildWriteHandler('delete_record')
110
- const del = await delete_record({ baseId: ctx.baseId, tableId: ctx.tableId, recordId: ctx.createdRecordId })
111
- const deletedRec = del?.records?.[0] || del
112
- expect(deletedRec?.deleted === true || deletedRec?.id === ctx.createdRecordId).toBe(true)
113
- }, 90000)
114
- })
115
-
116
- // Admin operations are not available on standard plans; omitted.
@@ -1,26 +0,0 @@
1
- {
2
- "variants": {
3
- "personal_access_token": {
4
- "label": "Personal Access Token",
5
- "schema": {
6
- "type": "object",
7
- "properties": {
8
- "token": {
9
- "type": "string",
10
- "title": "Personal Access Token",
11
- "description": "Airtable personal access token."
12
- }
13
- },
14
- "required": ["token"],
15
- "additionalProperties": false
16
- },
17
- "injection": {
18
- "headers": {
19
- "Authorization": "Bearer {{token}}"
20
- }
21
- },
22
- "healthCheck": { "path": "/meta/whoami" }
23
- }
24
- },
25
- "default": "personal_access_token"
26
- }
@@ -1,4 +0,0 @@
1
- Create an Airtable personal access token and paste it here.
2
-
3
- You can generate one in Airtable account settings under developer tools / personal access tokens.
4
-
@@ -1,12 +0,0 @@
1
- async (input) => {
2
- const path = `/${input.baseId}/${input.tableId}`
3
- const body = {
4
- records: [
5
- { fields: input.fields },
6
- ],
7
- typecast: !!input.typecast,
8
- }
9
- const res = await integration.fetch(path, { method: 'POST', body })
10
- const data = await res.json()
11
- return data
12
- }
@@ -1,7 +0,0 @@
1
- async (input) => {
2
- const path = `/${input.baseId}/${input.tableId}`
3
- const params = new URLSearchParams()
4
- params.set('records[]', input.recordId)
5
- const res = await integration.fetch(`${path}?${params.toString()}`, { method: 'DELETE' })
6
- return await res.json()
7
- }
@@ -1,4 +0,0 @@
1
- async (input) => {
2
- const res = await integration.fetch(`/${input.baseId}/${input.tableId}/${input.recordId}`)
3
- return await res.json()
4
- }
@@ -1,6 +0,0 @@
1
- async (input) => {
2
- const res = await integration.fetch(`/meta/bases/${input.baseId}/tables`)
3
- const data = await res.json()
4
- const table = (data?.tables || data)?.find?.(t => t.id === input.tableId || t.name === input.tableId)
5
- return table || null
6
- }
@@ -1,4 +0,0 @@
1
- async (input) => {
2
- const res = await integration.fetch(`/meta/bases`)
3
- return await res.json()
4
- }
@@ -1,25 +0,0 @@
1
- async (input) => {
2
- const params = new URLSearchParams()
3
- if (input.view)
4
- params.set('view', input.view)
5
- if (input.maxRecords)
6
- params.set('maxRecords', String(input.maxRecords))
7
- if (input.pageSize)
8
- params.set('pageSize', String(input.pageSize))
9
- if (input.filterByFormula)
10
- params.set('filterByFormula', input.filterByFormula)
11
- if (input.sort && Array.isArray(input.sort)) {
12
- input.sort.forEach((s, i) => {
13
- if (s && typeof s === 'object') {
14
- if (s.field)
15
- params.set(`sort[${i}][field]`, String(s.field))
16
- if (s.direction)
17
- params.set(`sort[${i}][direction]`, String(s.direction))
18
- }
19
- })
20
- }
21
- const qs = params.toString()
22
- const path = `/${input.baseId}/${input.tableId}${qs ? `?${qs}` : ''}`
23
- const res = await integration.fetch(path)
24
- return await res.json()
25
- }
@@ -1,6 +0,0 @@
1
- async (input) => {
2
- const res = await integration.fetch(`/meta/bases/${input.baseId}/tables`)
3
- const data = await res.json()
4
- const table = (data?.tables || data)?.find?.(t => t.id === input.tableId || t.name === input.tableId)
5
- return table?.fields || []
6
- }
@@ -1,4 +0,0 @@
1
- async (input) => {
2
- const res = await integration.fetch(`/meta/bases/${input.baseId}/tables`)
3
- return await res.json()
4
- }
@@ -1,6 +0,0 @@
1
- async (input) => {
2
- const res = await integration.fetch(`/meta/bases/${input.baseId}/tables`)
3
- const data = await res.json()
4
- const table = (data?.tables || data)?.find?.(t => t.id === input.tableId || t.name === input.tableId)
5
- return table?.views || []
6
- }
@@ -1,6 +0,0 @@
1
- async (input) => {
2
- const formula = `{${input.field}} = "${input.value}"`
3
- const params = new URLSearchParams({ filterByFormula: formula })
4
- const res = await integration.fetch(`/${input.baseId}/${input.tableId}?${params.toString()}`)
5
- return await res.json()
6
- }
@@ -1,11 +0,0 @@
1
- async (input) => {
2
- const path = `/${input.baseId}/${input.tableId}`
3
- const body = {
4
- records: [
5
- { id: input.recordId, fields: input.fields },
6
- ],
7
- typecast: !!input.typecast,
8
- }
9
- const res = await integration.fetch(path, { method: 'PATCH', body })
10
- return await res.json()
11
- }