@arbium/enterprise-agent-connect 0.0.0-stage → 0.1.2-dev.d2aa5ca

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 (319) hide show
  1. package/LICENSE +202 -0
  2. package/README.md +264 -2
  3. package/dist/connectors/dell-techdirect/connector.json +39 -0
  4. package/dist/connectors/dell-techdirect/index.d.ts +8 -0
  5. package/dist/connectors/dell-techdirect/index.js +7 -0
  6. package/dist/connectors/dell-techdirect/index.js.map +1 -0
  7. package/dist/connectors/dell-techdirect/tools.d.ts +2 -0
  8. package/dist/connectors/dell-techdirect/tools.js +49 -0
  9. package/dist/connectors/dell-techdirect/tools.js.map +1 -0
  10. package/dist/connectors/dell-techdirect/vendor.d.ts +6 -0
  11. package/dist/connectors/dell-techdirect/vendor.js +57 -0
  12. package/dist/connectors/dell-techdirect/vendor.js.map +1 -0
  13. package/dist/connectors/dynamics-365/connector.json +213 -0
  14. package/dist/connectors/dynamics-365/index.d.ts +11 -0
  15. package/dist/connectors/dynamics-365/index.js +10 -0
  16. package/dist/connectors/dynamics-365/index.js.map +1 -0
  17. package/dist/connectors/dynamics-365/tools.d.ts +35 -0
  18. package/dist/connectors/dynamics-365/tools.js +806 -0
  19. package/dist/connectors/dynamics-365/tools.js.map +1 -0
  20. package/dist/connectors/dynamics-365/vendor.d.ts +9 -0
  21. package/dist/connectors/dynamics-365/vendor.js +110 -0
  22. package/dist/connectors/dynamics-365/vendor.js.map +1 -0
  23. package/dist/connectors/entra/connector.json +85 -0
  24. package/dist/connectors/entra/index.d.ts +2 -0
  25. package/dist/connectors/entra/index.js +4 -0
  26. package/dist/connectors/entra/index.js.map +1 -0
  27. package/dist/connectors/entra/tools.d.ts +14 -0
  28. package/dist/connectors/entra/tools.js +262 -0
  29. package/dist/connectors/entra/tools.js.map +1 -0
  30. package/dist/connectors/fedex/connector.json +118 -0
  31. package/dist/connectors/fedex/index.d.ts +8 -0
  32. package/dist/connectors/fedex/index.js +7 -0
  33. package/dist/connectors/fedex/index.js.map +1 -0
  34. package/dist/connectors/fedex/tools.d.ts +3 -0
  35. package/dist/connectors/fedex/tools.js +152 -0
  36. package/dist/connectors/fedex/tools.js.map +1 -0
  37. package/dist/connectors/fedex/vendor.d.ts +7 -0
  38. package/dist/connectors/fedex/vendor.js +98 -0
  39. package/dist/connectors/fedex/vendor.js.map +1 -0
  40. package/dist/connectors/gong/connector.json +127 -0
  41. package/dist/connectors/gong/index.d.ts +8 -0
  42. package/dist/connectors/gong/index.js +7 -0
  43. package/dist/connectors/gong/index.js.map +1 -0
  44. package/dist/connectors/gong/tools.d.ts +8 -0
  45. package/dist/connectors/gong/tools.js +424 -0
  46. package/dist/connectors/gong/tools.js.map +1 -0
  47. package/dist/connectors/gong/vendor.d.ts +4 -0
  48. package/dist/connectors/gong/vendor.js +97 -0
  49. package/dist/connectors/gong/vendor.js.map +1 -0
  50. package/dist/connectors/http/index.d.ts +38 -0
  51. package/dist/connectors/http/index.js +322 -0
  52. package/dist/connectors/http/index.js.map +1 -0
  53. package/dist/connectors/intune/connector.json +106 -0
  54. package/dist/connectors/intune/index.d.ts +2 -0
  55. package/dist/connectors/intune/index.js +4 -0
  56. package/dist/connectors/intune/index.js.map +1 -0
  57. package/dist/connectors/intune/tools.d.ts +12 -0
  58. package/dist/connectors/intune/tools.js +416 -0
  59. package/dist/connectors/intune/tools.js.map +1 -0
  60. package/dist/connectors/jamf/connector.json +182 -0
  61. package/dist/connectors/jamf/index.d.ts +8 -0
  62. package/dist/connectors/jamf/index.js +7 -0
  63. package/dist/connectors/jamf/index.js.map +1 -0
  64. package/dist/connectors/jamf/tools.d.ts +7 -0
  65. package/dist/connectors/jamf/tools.js +659 -0
  66. package/dist/connectors/jamf/tools.js.map +1 -0
  67. package/dist/connectors/jamf/vendor.d.ts +5 -0
  68. package/dist/connectors/jamf/vendor.js +66 -0
  69. package/dist/connectors/jamf/vendor.js.map +1 -0
  70. package/dist/connectors/jira/connector.json +272 -0
  71. package/dist/connectors/jira/index.d.ts +8 -0
  72. package/dist/connectors/jira/index.js +7 -0
  73. package/dist/connectors/jira/index.js.map +1 -0
  74. package/dist/connectors/jira/jql.d.ts +4 -0
  75. package/dist/connectors/jira/jql.js +67 -0
  76. package/dist/connectors/jira/jql.js.map +1 -0
  77. package/dist/connectors/jira/tools.d.ts +3 -0
  78. package/dist/connectors/jira/tools.js +464 -0
  79. package/dist/connectors/jira/tools.js.map +1 -0
  80. package/dist/connectors/jira/vendor.d.ts +3 -0
  81. package/dist/connectors/jira/vendor.js +94 -0
  82. package/dist/connectors/jira/vendor.js.map +1 -0
  83. package/dist/connectors/microsoft/client.d.ts +58 -0
  84. package/dist/connectors/microsoft/client.js +434 -0
  85. package/dist/connectors/microsoft/client.js.map +1 -0
  86. package/dist/connectors/microsoft/provider.json +118 -0
  87. package/dist/connectors/netsuite/connector.json +315 -0
  88. package/dist/connectors/netsuite/index.d.ts +8 -0
  89. package/dist/connectors/netsuite/index.js +7 -0
  90. package/dist/connectors/netsuite/index.js.map +1 -0
  91. package/dist/connectors/netsuite/tools.d.ts +24 -0
  92. package/dist/connectors/netsuite/tools.js +447 -0
  93. package/dist/connectors/netsuite/tools.js.map +1 -0
  94. package/dist/connectors/netsuite/vendor.d.ts +26 -0
  95. package/dist/connectors/netsuite/vendor.js +248 -0
  96. package/dist/connectors/netsuite/vendor.js.map +1 -0
  97. package/dist/connectors/odata/index.d.ts +36 -0
  98. package/dist/connectors/odata/index.js +460 -0
  99. package/dist/connectors/odata/index.js.map +1 -0
  100. package/dist/connectors/okta/connector.json +193 -0
  101. package/dist/connectors/okta/index.d.ts +8 -0
  102. package/dist/connectors/okta/index.js +7 -0
  103. package/dist/connectors/okta/index.js.map +1 -0
  104. package/dist/connectors/okta/tools.d.ts +6 -0
  105. package/dist/connectors/okta/tools.js +429 -0
  106. package/dist/connectors/okta/tools.js.map +1 -0
  107. package/dist/connectors/okta/vendor.d.ts +14 -0
  108. package/dist/connectors/okta/vendor.js +203 -0
  109. package/dist/connectors/okta/vendor.js.map +1 -0
  110. package/dist/connectors/outlook-calendar/connector.json +136 -0
  111. package/dist/connectors/outlook-calendar/index.d.ts +2 -0
  112. package/dist/connectors/outlook-calendar/index.js +4 -0
  113. package/dist/connectors/outlook-calendar/index.js.map +1 -0
  114. package/dist/connectors/outlook-calendar/tools.d.ts +65 -0
  115. package/dist/connectors/outlook-calendar/tools.js +398 -0
  116. package/dist/connectors/outlook-calendar/tools.js.map +1 -0
  117. package/dist/connectors/outlook-mail/connector.json +154 -0
  118. package/dist/connectors/outlook-mail/index.d.ts +2 -0
  119. package/dist/connectors/outlook-mail/index.js +4 -0
  120. package/dist/connectors/outlook-mail/index.js.map +1 -0
  121. package/dist/connectors/outlook-mail/tools.d.ts +8 -0
  122. package/dist/connectors/outlook-mail/tools.js +236 -0
  123. package/dist/connectors/outlook-mail/tools.js.map +1 -0
  124. package/dist/connectors/salesforce/connector.json +122 -0
  125. package/dist/connectors/salesforce/index.d.ts +8 -0
  126. package/dist/connectors/salesforce/index.js +7 -0
  127. package/dist/connectors/salesforce/index.js.map +1 -0
  128. package/dist/connectors/salesforce/soql.d.ts +3 -0
  129. package/dist/connectors/salesforce/soql.js +60 -0
  130. package/dist/connectors/salesforce/soql.js.map +1 -0
  131. package/dist/connectors/salesforce/tools.d.ts +9 -0
  132. package/dist/connectors/salesforce/tools.js +234 -0
  133. package/dist/connectors/salesforce/tools.js.map +1 -0
  134. package/dist/connectors/salesforce/vendor.d.ts +3 -0
  135. package/dist/connectors/salesforce/vendor.js +107 -0
  136. package/dist/connectors/salesforce/vendor.js.map +1 -0
  137. package/dist/connectors/sap-s4hana/connector.json +263 -0
  138. package/dist/connectors/sap-s4hana/index.d.ts +8 -0
  139. package/dist/connectors/sap-s4hana/index.js +7 -0
  140. package/dist/connectors/sap-s4hana/index.js.map +1 -0
  141. package/dist/connectors/sap-s4hana/tools.d.ts +4 -0
  142. package/dist/connectors/sap-s4hana/tools.js +761 -0
  143. package/dist/connectors/sap-s4hana/tools.js.map +1 -0
  144. package/dist/connectors/sap-s4hana/vendor.d.ts +5 -0
  145. package/dist/connectors/sap-s4hana/vendor.js +176 -0
  146. package/dist/connectors/sap-s4hana/vendor.js.map +1 -0
  147. package/dist/connectors/servicenow/connector.json +228 -0
  148. package/dist/connectors/servicenow/index.d.ts +8 -0
  149. package/dist/connectors/servicenow/index.js +7 -0
  150. package/dist/connectors/servicenow/index.js.map +1 -0
  151. package/dist/connectors/servicenow/tools.d.ts +4 -0
  152. package/dist/connectors/servicenow/tools.js +884 -0
  153. package/dist/connectors/servicenow/tools.js.map +1 -0
  154. package/dist/connectors/servicenow/vendor.d.ts +4 -0
  155. package/dist/connectors/servicenow/vendor.js +109 -0
  156. package/dist/connectors/servicenow/vendor.js.map +1 -0
  157. package/dist/connectors/sharepoint-files/connector.json +194 -0
  158. package/dist/connectors/sharepoint-files/excel.d.ts +16 -0
  159. package/dist/connectors/sharepoint-files/excel.js +300 -0
  160. package/dist/connectors/sharepoint-files/excel.js.map +1 -0
  161. package/dist/connectors/sharepoint-files/index.d.ts +11 -0
  162. package/dist/connectors/sharepoint-files/index.js +12 -0
  163. package/dist/connectors/sharepoint-files/index.js.map +1 -0
  164. package/dist/connectors/sharepoint-files/tools.d.ts +52 -0
  165. package/dist/connectors/sharepoint-files/tools.js +365 -0
  166. package/dist/connectors/sharepoint-files/tools.js.map +1 -0
  167. package/dist/connectors/sharepoint-files/vendor.d.ts +11 -0
  168. package/dist/connectors/sharepoint-files/vendor.js +167 -0
  169. package/dist/connectors/sharepoint-files/vendor.js.map +1 -0
  170. package/dist/connectors/slack/connector.json +148 -0
  171. package/dist/connectors/slack/index.d.ts +8 -0
  172. package/dist/connectors/slack/index.js +7 -0
  173. package/dist/connectors/slack/index.js.map +1 -0
  174. package/dist/connectors/slack/tools.d.ts +3 -0
  175. package/dist/connectors/slack/tools.js +355 -0
  176. package/dist/connectors/slack/tools.js.map +1 -0
  177. package/dist/connectors/slack/vendor.d.ts +17 -0
  178. package/dist/connectors/slack/vendor.js +195 -0
  179. package/dist/connectors/slack/vendor.js.map +1 -0
  180. package/dist/connectors/soap/index.d.ts +19 -0
  181. package/dist/connectors/soap/index.js +248 -0
  182. package/dist/connectors/soap/index.js.map +1 -0
  183. package/dist/connectors/soap/xml.d.ts +12 -0
  184. package/dist/connectors/soap/xml.js +126 -0
  185. package/dist/connectors/soap/xml.js.map +1 -0
  186. package/dist/connectors/sql/engines.d.ts +58 -0
  187. package/dist/connectors/sql/engines.js +292 -0
  188. package/dist/connectors/sql/engines.js.map +1 -0
  189. package/dist/connectors/sql/index.d.ts +19 -0
  190. package/dist/connectors/sql/index.js +212 -0
  191. package/dist/connectors/sql/index.js.map +1 -0
  192. package/dist/connectors/teams/connector.json +298 -0
  193. package/dist/connectors/teams/index.d.ts +2 -0
  194. package/dist/connectors/teams/index.js +5 -0
  195. package/dist/connectors/teams/index.js.map +1 -0
  196. package/dist/connectors/teams/tools.d.ts +2 -0
  197. package/dist/connectors/teams/tools.js +391 -0
  198. package/dist/connectors/teams/tools.js.map +1 -0
  199. package/dist/connectors/workday/connector.json +186 -0
  200. package/dist/connectors/workday/index.d.ts +8 -0
  201. package/dist/connectors/workday/index.js +7 -0
  202. package/dist/connectors/workday/index.js.map +1 -0
  203. package/dist/connectors/workday/tools.d.ts +33 -0
  204. package/dist/connectors/workday/tools.js +410 -0
  205. package/dist/connectors/workday/tools.js.map +1 -0
  206. package/dist/connectors/workday/vendor.d.ts +18 -0
  207. package/dist/connectors/workday/vendor.js +195 -0
  208. package/dist/connectors/workday/vendor.js.map +1 -0
  209. package/dist/packages/connector-kit/src/branding.d.ts +57 -0
  210. package/dist/packages/connector-kit/src/branding.js +102 -0
  211. package/dist/packages/connector-kit/src/branding.js.map +1 -0
  212. package/dist/packages/connector-kit/src/certificate.d.ts +19 -0
  213. package/dist/packages/connector-kit/src/certificate.js +84 -0
  214. package/dist/packages/connector-kit/src/certificate.js.map +1 -0
  215. package/dist/packages/connector-kit/src/common.d.ts +40 -0
  216. package/dist/packages/connector-kit/src/common.js +107 -0
  217. package/dist/packages/connector-kit/src/common.js.map +1 -0
  218. package/dist/packages/connector-kit/src/connector.d.ts +1346 -0
  219. package/dist/packages/connector-kit/src/connector.js +1034 -0
  220. package/dist/packages/connector-kit/src/connector.js.map +1 -0
  221. package/dist/packages/connector-kit/src/index.d.ts +5 -0
  222. package/dist/packages/connector-kit/src/index.js +5 -0
  223. package/dist/packages/connector-kit/src/index.js.map +1 -0
  224. package/dist/packages/connector-kit/src/oauth.d.ts +15 -0
  225. package/dist/packages/connector-kit/src/oauth.js +96 -0
  226. package/dist/packages/connector-kit/src/oauth.js.map +1 -0
  227. package/dist/packages/connector-kit/src/types.d.ts +85 -0
  228. package/dist/packages/connector-kit/src/types.js +20 -0
  229. package/dist/packages/connector-kit/src/types.js.map +1 -0
  230. package/dist/packages/server/migrations/0001_tables.sql +268 -0
  231. package/dist/packages/server/migrations/0002_organizations.sql +72 -0
  232. package/dist/packages/server/migrations/0003_drop_unused.sql +3 -0
  233. package/dist/packages/server/migrations/0004_trigger_runners.sql +15 -0
  234. package/dist/packages/server/migrations/0005_run_runner.sql +3 -0
  235. package/dist/packages/server/migrations/0006_approvals.sql +36 -0
  236. package/dist/packages/server/migrations/0007_app_events.sql +110 -0
  237. package/dist/packages/server/migrations/rollback/to-legacy.sql +90 -0
  238. package/dist/packages/server/src/api.d.ts +3714 -0
  239. package/dist/packages/server/src/api.js +818 -0
  240. package/dist/packages/server/src/api.js.map +1 -0
  241. package/dist/packages/server/src/app.d.ts +23 -0
  242. package/dist/packages/server/src/app.js +467 -0
  243. package/dist/packages/server/src/app.js.map +1 -0
  244. package/dist/packages/server/src/builtin.d.ts +4 -0
  245. package/dist/packages/server/src/builtin.js +42 -0
  246. package/dist/packages/server/src/builtin.js.map +1 -0
  247. package/dist/packages/server/src/consent.d.ts +27 -0
  248. package/dist/packages/server/src/consent.js +36 -0
  249. package/dist/packages/server/src/consent.js.map +1 -0
  250. package/dist/packages/server/src/events/admin.d.ts +156 -0
  251. package/dist/packages/server/src/events/admin.js +255 -0
  252. package/dist/packages/server/src/events/admin.js.map +1 -0
  253. package/dist/packages/server/src/events/deliver.d.ts +43 -0
  254. package/dist/packages/server/src/events/deliver.js +129 -0
  255. package/dist/packages/server/src/events/deliver.js.map +1 -0
  256. package/dist/packages/server/src/events/runtime.d.ts +28 -0
  257. package/dist/packages/server/src/events/runtime.js +397 -0
  258. package/dist/packages/server/src/events/runtime.js.map +1 -0
  259. package/dist/packages/server/src/events/store.d.ts +172 -0
  260. package/dist/packages/server/src/events/store.js +275 -0
  261. package/dist/packages/server/src/events/store.js.map +1 -0
  262. package/dist/packages/server/src/index.d.ts +40 -0
  263. package/dist/packages/server/src/index.js +185 -0
  264. package/dist/packages/server/src/index.js.map +1 -0
  265. package/dist/packages/server/src/migrate.d.ts +11 -0
  266. package/dist/packages/server/src/migrate.js +134 -0
  267. package/dist/packages/server/src/migrate.js.map +1 -0
  268. package/dist/packages/server/src/openapi.d.ts +4 -0
  269. package/dist/packages/server/src/openapi.js +101 -0
  270. package/dist/packages/server/src/openapi.js.map +1 -0
  271. package/dist/packages/server/src/queue.d.ts +10 -0
  272. package/dist/packages/server/src/queue.js +45 -0
  273. package/dist/packages/server/src/queue.js.map +1 -0
  274. package/dist/packages/server/src/secrets.d.ts +19 -0
  275. package/dist/packages/server/src/secrets.js +76 -0
  276. package/dist/packages/server/src/secrets.js.map +1 -0
  277. package/dist/packages/server/src/server.d.ts +1 -0
  278. package/dist/packages/server/src/server.js +82 -0
  279. package/dist/packages/server/src/server.js.map +1 -0
  280. package/dist/packages/server/src/service.d.ts +760 -0
  281. package/dist/packages/server/src/service.js +918 -0
  282. package/dist/packages/server/src/service.js.map +1 -0
  283. package/dist/packages/server/src/store.d.ts +158 -0
  284. package/dist/packages/server/src/store.js +415 -0
  285. package/dist/packages/server/src/store.js.map +1 -0
  286. package/dist/packages/server/src/teams/activity.d.ts +123 -0
  287. package/dist/packages/server/src/teams/activity.js +188 -0
  288. package/dist/packages/server/src/teams/activity.js.map +1 -0
  289. package/dist/packages/server/src/teams/admin.d.ts +335 -0
  290. package/dist/packages/server/src/teams/admin.js +699 -0
  291. package/dist/packages/server/src/teams/admin.js.map +1 -0
  292. package/dist/packages/server/src/teams/approval.d.ts +57 -0
  293. package/dist/packages/server/src/teams/approval.js +118 -0
  294. package/dist/packages/server/src/teams/approval.js.map +1 -0
  295. package/dist/packages/server/src/teams/bot.d.ts +25 -0
  296. package/dist/packages/server/src/teams/bot.js +124 -0
  297. package/dist/packages/server/src/teams/bot.js.map +1 -0
  298. package/dist/packages/server/src/teams/claude.d.ts +46 -0
  299. package/dist/packages/server/src/teams/claude.js +165 -0
  300. package/dist/packages/server/src/teams/claude.js.map +1 -0
  301. package/dist/packages/server/src/teams/jwt.d.ts +17 -0
  302. package/dist/packages/server/src/teams/jwt.js +121 -0
  303. package/dist/packages/server/src/teams/jwt.js.map +1 -0
  304. package/dist/packages/server/src/teams/package.d.ts +79 -0
  305. package/dist/packages/server/src/teams/package.js +319 -0
  306. package/dist/packages/server/src/teams/package.js.map +1 -0
  307. package/dist/packages/server/src/teams/provision.d.ts +84 -0
  308. package/dist/packages/server/src/teams/provision.js +505 -0
  309. package/dist/packages/server/src/teams/provision.js.map +1 -0
  310. package/dist/packages/server/src/teams/runner.d.ts +80 -0
  311. package/dist/packages/server/src/teams/runner.js +187 -0
  312. package/dist/packages/server/src/teams/runner.js.map +1 -0
  313. package/dist/packages/server/src/teams/runtime.d.ts +91 -0
  314. package/dist/packages/server/src/teams/runtime.js +679 -0
  315. package/dist/packages/server/src/teams/runtime.js.map +1 -0
  316. package/dist/packages/server/src/teams/store.d.ts +233 -0
  317. package/dist/packages/server/src/teams/store.js +507 -0
  318. package/dist/packages/server/src/teams/store.js.map +1 -0
  319. package/package.json +68 -4
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../../connectors/servicenow/tools.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { type Fetch, type Vendor } from "../../packages/connector-kit/src/types.js";
2
+ export declare function normalizeInstance(input: string): string;
3
+ export declare function noRedirects(fetchImpl: Fetch): Fetch;
4
+ export declare function servicenowVendor(unguarded?: Fetch): Vendor;
@@ -0,0 +1,109 @@
1
+ import { clientCredentials } from "../../packages/connector-kit/src/oauth.js";
2
+ import { ConnectError, } from "../../packages/connector-kit/src/types.js";
3
+ // A ServiceNow integration user, signing in through an OAuth application registry entry
4
+ // (client credentials, token at /oauth_token.do, run as the entry's OAuth Application User) or
5
+ // with its user name and password (basic). Every call goes to the instance the admin named
6
+ // (a bare name is <name>.service-now.com; a company's own domain is accepted as entered), and
7
+ // a redirect is refused rather than followed, so nothing leaves that origin.
8
+ export function normalizeInstance(input) {
9
+ const typed = input.trim().toLowerCase();
10
+ if (/^[a-z0-9][a-z0-9-]{0,62}$/.test(typed))
11
+ return `${typed}.service-now.com`;
12
+ const url = URL.parse(/^[a-z][a-z0-9+.-]*:\/\//.test(typed) ? typed : `https://${typed}`);
13
+ if (!url ||
14
+ url.protocol !== "https:" ||
15
+ url.username ||
16
+ url.password ||
17
+ // A one-word host after https:// is more likely a typo than an instance.
18
+ !/[.[]/.test(url.hostname))
19
+ throw new ConnectError("Enter your instance address, for example https://your-company.service-now.com or your own https address");
20
+ return url.host;
21
+ }
22
+ function base(config) {
23
+ const url = URL.parse(`https://${config.instance ?? ""}`);
24
+ if (!config.instance || url?.host !== config.instance)
25
+ throw new Error("ServiceNow connection has no instance");
26
+ return url.origin;
27
+ }
28
+ // Paths come from the tools; one not starting with a single / could name another host.
29
+ function checkPath(path) {
30
+ if (!/^\/(?![/\\])/.test(path))
31
+ throw new Error(`Refused ServiceNow path ${path.slice(0, 50)}`);
32
+ }
33
+ export function noRedirects(fetchImpl) {
34
+ return (async (input, init) => {
35
+ const res = await fetchImpl(input, { ...init, redirect: "manual" });
36
+ if (res.status >= 300 && res.status < 400)
37
+ throw new ConnectError(`ServiceNow answered with a redirect (${res.status}), which is not followed. Enter the address the instance is served at.`);
38
+ return res;
39
+ });
40
+ }
41
+ export function servicenowVendor(unguarded = fetch) {
42
+ const fetchImpl = noRedirects(unguarded);
43
+ const oauth = clientCredentials("ServiceNow", fetchImpl);
44
+ const creds = (c) => ({
45
+ tokenUrl: `${base(c.config)}/oauth_token.do`,
46
+ clientId: c.secret.client_id,
47
+ clientSecret: c.secret.client_secret,
48
+ });
49
+ async function basic(c, request) {
50
+ const auth = Buffer.from(`${c.secret.username}:${c.secret.password}`).toString("base64");
51
+ const res = await fetchImpl(`${base(c.config)}${request.path}`, {
52
+ method: request.method,
53
+ headers: {
54
+ authorization: `Basic ${auth}`,
55
+ accept: "application/json",
56
+ ...(request.body === undefined ? {} : { "content-type": "application/json" }),
57
+ },
58
+ body: request.body === undefined ? undefined : JSON.stringify(request.body),
59
+ });
60
+ const raw = await res.text();
61
+ return { status: res.status, data: raw ? safeJson(raw) : null };
62
+ }
63
+ const call = async (c, request) => {
64
+ checkPath(request.path);
65
+ return c.config.auth === "basic"
66
+ ? basic(c, request)
67
+ : oauth.call(creds(c), base(c.config), request);
68
+ };
69
+ return {
70
+ async connect(fields) {
71
+ const instance = normalizeInstance(fields.instance ?? "");
72
+ const auth = fields.auth === "basic" ? "basic" : "oauth";
73
+ const [idField, secretField] = auth === "basic" ? ["username", "password"] : ["client_id", "client_secret"];
74
+ const id = fields[idField]?.trim();
75
+ const secret = fields[secretField]?.trim();
76
+ if (!id || !secret)
77
+ throw new ConnectError(auth === "basic"
78
+ ? "Enter the integration user's user name and password"
79
+ : "Enter the client ID and client secret of the application registry entry");
80
+ const conn = {
81
+ config: { instance, auth },
82
+ secret: { [idField]: id, [secretField]: secret },
83
+ };
84
+ if (auth === "oauth")
85
+ await oauth.signIn(creds(conn));
86
+ else {
87
+ const res = await basic(conn, {
88
+ method: "GET",
89
+ path: "/api/now/table/sys_user?sysparm_limit=1&sysparm_fields=sys_id",
90
+ });
91
+ if (res.status === 401)
92
+ throw new ConnectError("ServiceNow did not accept the user name and password");
93
+ if (res.status < 200 || res.status >= 300)
94
+ throw new ConnectError(`ServiceNow answered ${res.status} to the sign-in check`);
95
+ }
96
+ return { ...conn, accountLabel: instance };
97
+ },
98
+ call,
99
+ };
100
+ }
101
+ function safeJson(raw) {
102
+ try {
103
+ return JSON.parse(raw);
104
+ }
105
+ catch {
106
+ return raw;
107
+ }
108
+ }
109
+ //# sourceMappingURL=vendor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vendor.js","sourceRoot":"","sources":["../../../connectors/servicenow/vendor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,194 @@
1
+ {
2
+ "id": "sharepoint-files",
3
+ "name": "SharePoint",
4
+ "description": "Let agents work with files and Excel spreadsheets in the SharePoint sites you add, and look up people in your organization. Agents have no OneDrive of their own: a person's OneDrive is a site too, reached only if you add it and give the app access to it.",
5
+ "logo": "/brand/registry/sharepoint.svg",
6
+ "identity": "Your Microsoft app registration, through the Microsoft connection. It reaches only the files and spreadsheets in the sites you give it, unless you choose all sites, read-only.",
7
+ "provider": "microsoft",
8
+ "order": 3,
9
+ "accountKey": "tenantId",
10
+ "connectionKind": "guided",
11
+ "setup": [
12
+ {
13
+ "title": "Add these Microsoft Graph permissions to the app",
14
+ "body": "In the app, open API permissions, select Add a permission, then Microsoft Graph, then Application permissions, and add exactly these. Sites.Selected reaches only the sites you give the app, one by one. Unless you choose all sites, read-only, do not add Sites.Read.All, Sites.ReadWrite.All or Files.Read.All: they reach every site and file in your organization.",
15
+ "copy": [
16
+ "az ad app permission add --id {clientId} --api 00000003-0000-0000-c000-000000000000 --api-permissions \"$(az ad sp show --id 00000003-0000-0000-c000-000000000000 --query \"appRoles[?value=='{scope}'].id\" -o tsv)=Role\""
17
+ ],
18
+ "click": [
19
+ "In the Microsoft Entra admin center, go to Entra ID, then App registrations, and open {brand.microsoft.appName}.",
20
+ "Select API permissions, then Add a permission, then Microsoft Graph, then Application permissions.",
21
+ "Tick {scopes} and select Add permissions."
22
+ ],
23
+ "shell": "bash"
24
+ },
25
+ {
26
+ "title": "Grant admin consent",
27
+ "body": "Still under API permissions, select \"Grant admin consent\". This needs a Global Administrator or Privileged Role Administrator, and is needed again whenever you add a permission. Each permission should then show Granted. With Commands, a permission that was granted already is answered with \"Permission being assigned already exists\", which is fine.",
28
+ "click": [
29
+ "Still under API permissions, select Grant admin consent for your organization, then Yes.",
30
+ "Each permission should show Granted under Status."
31
+ ],
32
+ "copy": [
33
+ "SP=$(az ad sp show --id {clientId} --query id -o tsv)",
34
+ "GRAPH=$(az ad sp show --id 00000003-0000-0000-c000-000000000000 --query id -o tsv)",
35
+ "az rest --method post --url \"https://graph.microsoft.com/v1.0/servicePrincipals/$SP/appRoleAssignments\" --body \"{\\\"principalId\\\": \\\"$SP\\\", \\\"resourceId\\\": \\\"$GRAPH\\\", \\\"appRoleId\\\": \\\"$(az ad sp show --id 00000003-0000-0000-c000-000000000000 --query \"appRoles[?value=='{scope}'].id\" -o tsv)\\\"}\""
36
+ ],
37
+ "shell": "bash"
38
+ }
39
+ ],
40
+ "afterConnect": [],
41
+ "fields": [
42
+ {
43
+ "id": "access",
44
+ "label": "Which sites the app can reach",
45
+ "secret": false,
46
+ "options": [
47
+ {
48
+ "value": "selected",
49
+ "label": "Only the sites you give it",
50
+ "description": "Recommended. The app reaches a site only after it is given access to that site."
51
+ },
52
+ {
53
+ "value": "all_read",
54
+ "label": "All sites, read-only",
55
+ "description": "The app can read every site and every person's OneDrive in your organization, files and spreadsheets alike, with no grant per site. Each API key still reaches only the sites and folders you choose for it. To let agents add files or edit spreadsheets in a site, give the app write access to that site as well.",
56
+ "scopes": ["Sites.Read.All"]
57
+ }
58
+ ]
59
+ }
60
+ ],
61
+ "capabilities": [
62
+ {
63
+ "id": "read_files",
64
+ "label": "Read files",
65
+ "description": "List and read files in the sites you add, and only those.",
66
+ "scopes": ["Sites.Selected"],
67
+ "permissions": [],
68
+ "fill": {
69
+ "site_role": "read"
70
+ },
71
+ "tools": ["graph_list_sites", "graph_list_files", "graph_read_file"],
72
+ "forbidden": "Microsoft refused this. An administrator has to give the app read access to this site (the SharePoint page in {brand.productName} shows the command). A new grant can take a few minutes to apply."
73
+ },
74
+ {
75
+ "id": "read_sheets",
76
+ "label": "Read spreadsheets",
77
+ "description": "List Excel workbooks, their sheets and tables, and read cells in the sites you add.",
78
+ "scopes": ["Sites.Selected"],
79
+ "permissions": [],
80
+ "fill": {
81
+ "site_role": "read"
82
+ },
83
+ "tools": [
84
+ "excel_list_workbooks",
85
+ "excel_list_worksheets",
86
+ "excel_read_range",
87
+ "excel_list_tables",
88
+ "excel_read_table"
89
+ ],
90
+ "forbidden": "Microsoft refused this. An administrator has to give the app read access to this site (the SharePoint page in {brand.productName} shows the command). A new grant can take a few minutes to apply."
91
+ },
92
+ {
93
+ "id": "write_files",
94
+ "label": "Add and change files",
95
+ "destructive": true,
96
+ "description": "Add files to those sites and replace existing ones. The app needs write access to each of them, not read.",
97
+ "scopes": ["Sites.Selected"],
98
+ "permissions": [],
99
+ "fill": {
100
+ "site_role": "write"
101
+ },
102
+ "tools": ["graph_upload_file"],
103
+ "forbidden": "Microsoft refused this. Adding or changing files needs the app to have write access to this site; a site given read access only refuses changes. The SharePoint page in {brand.productName} shows the command. A new grant can take a few minutes to apply."
104
+ },
105
+ {
106
+ "id": "write_sheets",
107
+ "label": "Edit spreadsheets",
108
+ "description": "Change cells and add rows to tables in those workbooks. The app needs write access to each of those sites, not read.",
109
+ "scopes": ["Sites.Selected"],
110
+ "permissions": [],
111
+ "fill": {
112
+ "site_role": "write"
113
+ },
114
+ "tools": ["excel_update_range", "excel_add_table_rows"],
115
+ "forbidden": "Microsoft refused this. Editing spreadsheets needs the app to have write access to this site; a site given read access only refuses changes. The SharePoint page in {brand.productName} shows the command. A new grant can take a few minutes to apply."
116
+ },
117
+ {
118
+ "id": "read_directory",
119
+ "label": "Read users and groups",
120
+ "description": "Look up people's names, email addresses and job titles, and list group members.",
121
+ "note": "Reaches everyone in your organization, not just chosen sites. Read-only. Leave it off unless agents need to look people up.",
122
+ "scopes": ["User.Read.All", "GroupMember.Read.All"],
123
+ "permissions": [],
124
+ "tools": ["graph_list_users"],
125
+ "forbidden": "Microsoft refused this. The app needs {scopes} with admin consent."
126
+ }
127
+ ],
128
+ "limits": [
129
+ {
130
+ "id": "sites",
131
+ "label": "Sites",
132
+ "help": "The sites whose files and spreadsheets this key may use, from the sites the app can open. It can use no others.",
133
+ "kind": "list",
134
+ "required": true,
135
+ "pattern": "^https://[A-Za-z0-9-]+\\.sharepoint\\.com(/(sites|teams|personal)/[A-Za-z0-9][A-Za-z0-9._-]*)?/?$"
136
+ },
137
+ {
138
+ "id": "folders",
139
+ "label": "Folder",
140
+ "help": "Optional, for each site: the one folder this key may use there, for files and spreadsheets alike, such as Contracts/Signed. Leave it empty for the whole site.",
141
+ "kind": "map",
142
+ "keys": "sites",
143
+ "required": false,
144
+ "pattern": "^(?!(?:.*/)?\\.{1,2}(?:/|$))[^\\\\:?#*\"<>|%]+$"
145
+ }
146
+ ],
147
+ "siteAccess": {
148
+ "grant": [
149
+ {
150
+ "title": "With Microsoft Graph PowerShell",
151
+ "body": "Run by a SharePoint or Global Administrator.",
152
+ "clickUnavailable": true,
153
+ "link": {
154
+ "label": "Install Microsoft Graph PowerShell",
155
+ "href": "https://learn.microsoft.com/powershell/microsoftgraph/installation"
156
+ },
157
+ "copy": [
158
+ "# Needs Microsoft Graph PowerShell: Install-Module Microsoft.Graph -Scope CurrentUser",
159
+ "Connect-MgGraph -Scopes \"Sites.FullControl.All\"",
160
+ "$site = Get-MgSite -SiteId '{siteRef}'",
161
+ "New-MgSitePermission -SiteId $site.Id -BodyParameter @{ roles = @('{site_role}'); grantedToIdentities = @(@{ application = @{ id = '{clientId}'; displayName = \"{brand.microsoft.appName}\" } }) }"
162
+ ],
163
+ "shell": "powershell"
164
+ },
165
+ {
166
+ "title": "Or raise a site the app already reads",
167
+ "siteRole": "write",
168
+ "body": "A site given read access refuses changes. To let agents add files or edit spreadsheets there, change that grant to write.",
169
+ "clickUnavailable": true,
170
+ "copy": [
171
+ "# Needs Microsoft Graph PowerShell: Install-Module Microsoft.Graph -Scope CurrentUser",
172
+ "Connect-MgGraph -Scopes \"Sites.FullControl.All\"",
173
+ "$site = Get-MgSite -SiteId '{siteRef}'",
174
+ "$p = Get-MgSitePermission -SiteId $site.Id | Where-Object { $_.GrantedToIdentitiesV2.Application.Id -eq '{clientId}' }",
175
+ "Update-MgSitePermission -SiteId $site.Id -PermissionId $p.Id -Roles '{site_role}'"
176
+ ],
177
+ "shell": "powershell"
178
+ }
179
+ ],
180
+ "request": "Hello, please grant the Microsoft app {brand.microsoft.appName} (application ID {clientId}) {site_role} access to the SharePoint site {site}. It is the app our AI agents use, and it reaches only the sites it is given. A SharePoint or Global Administrator can do it with Microsoft Graph PowerShell:\n\n{grantCommands}\n\nThank you.",
181
+ "write": ["write_files", "write_sheets"]
182
+ },
183
+ "verify": {
184
+ "label": "Microsoft permissions the app has",
185
+ "check": "permissions",
186
+ "ifEmpty": "The app has no Microsoft Graph application permissions yet. Add the permissions above and grant admin consent."
187
+ },
188
+ "discover": {
189
+ "label": "Sites agents can use",
190
+ "check": "sites",
191
+ "ifEmpty": "No sites yet. Add the sites agents may use below."
192
+ },
193
+ "revoke": "Remove the app's access to each site (Remove-MgSitePermission), or remove its Sites.Selected and Sites.Read.All permissions. To stop every Microsoft app at once, remove the app registration (see the Microsoft connection)."
194
+ }
@@ -0,0 +1,16 @@
1
+ import { type Toolset } from "../../packages/connector-kit/src/common.js";
2
+ import { type DriveItem } from "./tools.js";
3
+ export declare const MAX_CELLS = 10000;
4
+ export declare const MAX_TABLE_ROWS = 500;
5
+ type Cell = string | number | boolean | null;
6
+ /** A1 or A1:D20, upper-cased, with its size. Whole rows or columns are refused: their size
7
+ * is the whole sheet. */
8
+ export declare function parseRange(raw: string): {
9
+ address: string;
10
+ rows: number;
11
+ columns: number;
12
+ };
13
+ export declare function isWorkbook(item: DriveItem): boolean;
14
+ export declare const literal: (rows: Cell[][]) => Cell[][];
15
+ export declare const excelTools: Toolset;
16
+ export {};