@arbium/enterprise-agent-connect 0.1.1 → 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 (217) hide show
  1. package/README.md +157 -10
  2. package/dist/connectors/dell-techdirect/index.d.ts +8 -0
  3. package/dist/connectors/dell-techdirect/tools.d.ts +2 -0
  4. package/dist/connectors/dell-techdirect/vendor.d.ts +6 -0
  5. package/dist/connectors/dynamics-365/connector.json +213 -0
  6. package/dist/connectors/dynamics-365/index.d.ts +11 -0
  7. package/dist/connectors/dynamics-365/index.js +10 -0
  8. package/dist/connectors/dynamics-365/index.js.map +1 -0
  9. package/dist/connectors/dynamics-365/tools.d.ts +35 -0
  10. package/dist/connectors/dynamics-365/tools.js +806 -0
  11. package/dist/connectors/dynamics-365/tools.js.map +1 -0
  12. package/dist/connectors/dynamics-365/vendor.d.ts +9 -0
  13. package/dist/connectors/dynamics-365/vendor.js +110 -0
  14. package/dist/connectors/dynamics-365/vendor.js.map +1 -0
  15. package/dist/connectors/entra/index.d.ts +2 -0
  16. package/dist/connectors/entra/tools.d.ts +14 -0
  17. package/dist/connectors/fedex/index.d.ts +8 -0
  18. package/dist/connectors/fedex/tools.d.ts +3 -0
  19. package/dist/connectors/fedex/vendor.d.ts +7 -0
  20. package/dist/connectors/gong/connector.json +127 -0
  21. package/dist/connectors/gong/index.d.ts +8 -0
  22. package/dist/connectors/gong/index.js +7 -0
  23. package/dist/connectors/gong/index.js.map +1 -0
  24. package/dist/connectors/gong/tools.d.ts +8 -0
  25. package/dist/connectors/gong/tools.js +424 -0
  26. package/dist/connectors/gong/tools.js.map +1 -0
  27. package/dist/connectors/gong/vendor.d.ts +4 -0
  28. package/dist/connectors/gong/vendor.js +97 -0
  29. package/dist/connectors/gong/vendor.js.map +1 -0
  30. package/dist/connectors/http/index.d.ts +38 -0
  31. package/dist/connectors/http/index.js +151 -64
  32. package/dist/connectors/http/index.js.map +1 -1
  33. package/dist/connectors/intune/index.d.ts +2 -0
  34. package/dist/connectors/intune/tools.d.ts +12 -0
  35. package/dist/connectors/jamf/connector.json +182 -0
  36. package/dist/connectors/jamf/index.d.ts +8 -0
  37. package/dist/connectors/jamf/index.js +7 -0
  38. package/dist/connectors/jamf/index.js.map +1 -0
  39. package/dist/connectors/jamf/tools.d.ts +7 -0
  40. package/dist/connectors/jamf/tools.js +659 -0
  41. package/dist/connectors/jamf/tools.js.map +1 -0
  42. package/dist/connectors/jamf/vendor.d.ts +5 -0
  43. package/dist/connectors/jamf/vendor.js +66 -0
  44. package/dist/connectors/jamf/vendor.js.map +1 -0
  45. package/dist/connectors/jira/connector.json +144 -1
  46. package/dist/connectors/jira/index.d.ts +8 -0
  47. package/dist/connectors/jira/jql.d.ts +4 -0
  48. package/dist/connectors/jira/tools.d.ts +3 -0
  49. package/dist/connectors/jira/vendor.d.ts +3 -0
  50. package/dist/connectors/microsoft/client.d.ts +58 -0
  51. package/dist/connectors/netsuite/connector.json +315 -0
  52. package/dist/connectors/netsuite/index.d.ts +8 -0
  53. package/dist/connectors/netsuite/index.js +7 -0
  54. package/dist/connectors/netsuite/index.js.map +1 -0
  55. package/dist/connectors/netsuite/tools.d.ts +24 -0
  56. package/dist/connectors/netsuite/tools.js +447 -0
  57. package/dist/connectors/netsuite/tools.js.map +1 -0
  58. package/dist/connectors/netsuite/vendor.d.ts +26 -0
  59. package/dist/connectors/netsuite/vendor.js +248 -0
  60. package/dist/connectors/netsuite/vendor.js.map +1 -0
  61. package/dist/connectors/odata/index.d.ts +36 -0
  62. package/dist/connectors/odata/index.js +460 -0
  63. package/dist/connectors/odata/index.js.map +1 -0
  64. package/dist/connectors/okta/connector.json +193 -0
  65. package/dist/connectors/okta/index.d.ts +8 -0
  66. package/dist/connectors/okta/index.js +7 -0
  67. package/dist/connectors/okta/index.js.map +1 -0
  68. package/dist/connectors/okta/tools.d.ts +6 -0
  69. package/dist/connectors/okta/tools.js +429 -0
  70. package/dist/connectors/okta/tools.js.map +1 -0
  71. package/dist/connectors/okta/vendor.d.ts +14 -0
  72. package/dist/connectors/okta/vendor.js +203 -0
  73. package/dist/connectors/okta/vendor.js.map +1 -0
  74. package/dist/connectors/outlook-calendar/index.d.ts +2 -0
  75. package/dist/connectors/outlook-calendar/tools.d.ts +65 -0
  76. package/dist/connectors/outlook-mail/index.d.ts +2 -0
  77. package/dist/connectors/outlook-mail/tools.d.ts +8 -0
  78. package/dist/connectors/salesforce/index.d.ts +8 -0
  79. package/dist/connectors/salesforce/soql.d.ts +3 -0
  80. package/dist/connectors/salesforce/tools.d.ts +9 -0
  81. package/dist/connectors/salesforce/vendor.d.ts +3 -0
  82. package/dist/connectors/sap-s4hana/connector.json +263 -0
  83. package/dist/connectors/sap-s4hana/index.d.ts +8 -0
  84. package/dist/connectors/sap-s4hana/index.js +7 -0
  85. package/dist/connectors/sap-s4hana/index.js.map +1 -0
  86. package/dist/connectors/sap-s4hana/tools.d.ts +4 -0
  87. package/dist/connectors/sap-s4hana/tools.js +761 -0
  88. package/dist/connectors/sap-s4hana/tools.js.map +1 -0
  89. package/dist/connectors/sap-s4hana/vendor.d.ts +5 -0
  90. package/dist/connectors/sap-s4hana/vendor.js +176 -0
  91. package/dist/connectors/sap-s4hana/vendor.js.map +1 -0
  92. package/dist/connectors/servicenow/connector.json +228 -0
  93. package/dist/connectors/servicenow/index.d.ts +8 -0
  94. package/dist/connectors/servicenow/index.js +7 -0
  95. package/dist/connectors/servicenow/index.js.map +1 -0
  96. package/dist/connectors/servicenow/tools.d.ts +4 -0
  97. package/dist/connectors/servicenow/tools.js +884 -0
  98. package/dist/connectors/servicenow/tools.js.map +1 -0
  99. package/dist/connectors/servicenow/vendor.d.ts +4 -0
  100. package/dist/connectors/servicenow/vendor.js +109 -0
  101. package/dist/connectors/servicenow/vendor.js.map +1 -0
  102. package/dist/connectors/sharepoint-files/excel.d.ts +16 -0
  103. package/dist/connectors/sharepoint-files/index.d.ts +11 -0
  104. package/dist/connectors/sharepoint-files/tools.d.ts +52 -0
  105. package/dist/connectors/sharepoint-files/vendor.d.ts +11 -0
  106. package/dist/connectors/slack/connector.json +148 -0
  107. package/dist/connectors/slack/index.d.ts +8 -0
  108. package/dist/connectors/slack/index.js +7 -0
  109. package/dist/connectors/slack/index.js.map +1 -0
  110. package/dist/connectors/slack/tools.d.ts +3 -0
  111. package/dist/connectors/slack/tools.js +355 -0
  112. package/dist/connectors/slack/tools.js.map +1 -0
  113. package/dist/connectors/slack/vendor.d.ts +17 -0
  114. package/dist/connectors/slack/vendor.js +195 -0
  115. package/dist/connectors/slack/vendor.js.map +1 -0
  116. package/dist/connectors/soap/index.d.ts +19 -0
  117. package/dist/connectors/soap/index.js +248 -0
  118. package/dist/connectors/soap/index.js.map +1 -0
  119. package/dist/connectors/soap/xml.d.ts +12 -0
  120. package/dist/connectors/soap/xml.js +126 -0
  121. package/dist/connectors/soap/xml.js.map +1 -0
  122. package/dist/connectors/sql/engines.d.ts +58 -0
  123. package/dist/connectors/sql/engines.js +292 -0
  124. package/dist/connectors/sql/engines.js.map +1 -0
  125. package/dist/connectors/sql/index.d.ts +19 -0
  126. package/dist/connectors/sql/index.js +212 -0
  127. package/dist/connectors/sql/index.js.map +1 -0
  128. package/dist/connectors/teams/index.d.ts +2 -0
  129. package/dist/connectors/teams/tools.d.ts +2 -0
  130. package/dist/connectors/workday/connector.json +186 -0
  131. package/dist/connectors/workday/index.d.ts +8 -0
  132. package/dist/connectors/workday/index.js +7 -0
  133. package/dist/connectors/workday/index.js.map +1 -0
  134. package/dist/connectors/workday/tools.d.ts +33 -0
  135. package/dist/connectors/workday/tools.js +410 -0
  136. package/dist/connectors/workday/tools.js.map +1 -0
  137. package/dist/connectors/workday/vendor.d.ts +18 -0
  138. package/dist/connectors/workday/vendor.js +195 -0
  139. package/dist/connectors/workday/vendor.js.map +1 -0
  140. package/dist/packages/connector-kit/src/branding.d.ts +57 -0
  141. package/dist/packages/connector-kit/src/certificate.d.ts +19 -0
  142. package/dist/packages/connector-kit/src/common.d.ts +40 -0
  143. package/dist/packages/connector-kit/src/connector.d.ts +1346 -0
  144. package/dist/packages/connector-kit/src/connector.js +586 -44
  145. package/dist/packages/connector-kit/src/connector.js.map +1 -1
  146. package/dist/packages/connector-kit/src/index.d.ts +5 -0
  147. package/dist/packages/connector-kit/src/index.js +5 -0
  148. package/dist/packages/connector-kit/src/index.js.map +1 -0
  149. package/dist/packages/connector-kit/src/oauth.d.ts +15 -0
  150. package/dist/packages/connector-kit/src/oauth.js +21 -4
  151. package/dist/packages/connector-kit/src/oauth.js.map +1 -1
  152. package/dist/packages/connector-kit/src/types.d.ts +85 -0
  153. package/dist/packages/connector-kit/src/types.js.map +1 -1
  154. package/dist/packages/server/migrations/0007_app_events.sql +110 -0
  155. package/dist/packages/server/migrations/rollback/to-legacy.sql +3 -0
  156. package/dist/packages/server/src/api.d.ts +3714 -0
  157. package/dist/packages/server/src/api.js +135 -1
  158. package/dist/packages/server/src/api.js.map +1 -1
  159. package/dist/packages/server/src/app.d.ts +23 -0
  160. package/dist/packages/server/src/app.js +24 -1
  161. package/dist/packages/server/src/app.js.map +1 -1
  162. package/dist/packages/server/src/builtin.d.ts +4 -0
  163. package/dist/packages/server/src/builtin.js +18 -0
  164. package/dist/packages/server/src/builtin.js.map +1 -1
  165. package/dist/packages/server/src/consent.d.ts +27 -0
  166. package/dist/packages/server/src/events/admin.d.ts +156 -0
  167. package/dist/packages/server/src/events/admin.js +255 -0
  168. package/dist/packages/server/src/events/admin.js.map +1 -0
  169. package/dist/packages/server/src/events/deliver.d.ts +43 -0
  170. package/dist/packages/server/src/events/deliver.js +129 -0
  171. package/dist/packages/server/src/events/deliver.js.map +1 -0
  172. package/dist/packages/server/src/events/runtime.d.ts +28 -0
  173. package/dist/packages/server/src/events/runtime.js +397 -0
  174. package/dist/packages/server/src/events/runtime.js.map +1 -0
  175. package/dist/packages/server/src/events/store.d.ts +172 -0
  176. package/dist/packages/server/src/events/store.js +275 -0
  177. package/dist/packages/server/src/events/store.js.map +1 -0
  178. package/dist/packages/server/src/index.d.ts +40 -0
  179. package/dist/packages/server/src/index.js +67 -11
  180. package/dist/packages/server/src/index.js.map +1 -1
  181. package/dist/packages/server/src/migrate.d.ts +11 -0
  182. package/dist/packages/server/src/openapi.d.ts +4 -0
  183. package/dist/packages/server/src/openapi.js +2 -2
  184. package/dist/packages/server/src/openapi.js.map +1 -1
  185. package/dist/packages/server/src/queue.d.ts +10 -0
  186. package/dist/packages/server/src/queue.js +45 -0
  187. package/dist/packages/server/src/queue.js.map +1 -0
  188. package/dist/packages/server/src/secrets.d.ts +19 -0
  189. package/dist/packages/server/src/server.d.ts +1 -0
  190. package/dist/packages/server/src/server.js +14 -1
  191. package/dist/packages/server/src/server.js.map +1 -1
  192. package/dist/packages/server/src/service.d.ts +760 -0
  193. package/dist/packages/server/src/service.js +10 -0
  194. package/dist/packages/server/src/service.js.map +1 -1
  195. package/dist/packages/server/src/store.d.ts +158 -0
  196. package/dist/packages/server/src/store.js +4 -0
  197. package/dist/packages/server/src/store.js.map +1 -1
  198. package/dist/packages/server/src/teams/activity.d.ts +123 -0
  199. package/dist/packages/server/src/teams/activity.js +6 -5
  200. package/dist/packages/server/src/teams/activity.js.map +1 -1
  201. package/dist/packages/server/src/teams/admin.d.ts +335 -0
  202. package/dist/packages/server/src/teams/admin.js +1 -1
  203. package/dist/packages/server/src/teams/admin.js.map +1 -1
  204. package/dist/packages/server/src/teams/approval.d.ts +57 -0
  205. package/dist/packages/server/src/teams/bot.d.ts +25 -0
  206. package/dist/packages/server/src/teams/claude.d.ts +46 -0
  207. package/dist/packages/server/src/teams/jwt.d.ts +17 -0
  208. package/dist/packages/server/src/teams/package.d.ts +79 -0
  209. package/dist/packages/server/src/teams/provision.d.ts +84 -0
  210. package/dist/packages/server/src/teams/runner.d.ts +80 -0
  211. package/dist/packages/server/src/teams/runner.js +50 -6
  212. package/dist/packages/server/src/teams/runner.js.map +1 -1
  213. package/dist/packages/server/src/teams/runtime.d.ts +91 -0
  214. package/dist/packages/server/src/teams/runtime.js +25 -47
  215. package/dist/packages/server/src/teams/runtime.js.map +1 -1
  216. package/dist/packages/server/src/teams/store.d.ts +233 -0
  217. package/package.json +28 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../../connectors/workday/tools.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import { type Fetch, type Vendor } from "../../packages/connector-kit/src/types.js";
2
+ export type ReportPrompt = {
3
+ name: string;
4
+ type: "date" | "text";
5
+ };
6
+ export type Report = {
7
+ name: string;
8
+ owner: string;
9
+ report: string;
10
+ prompts: ReportPrompt[];
11
+ };
12
+ export declare function parseEndpoint(raw: string): {
13
+ host: string;
14
+ tenant: string;
15
+ };
16
+ export declare function parseReports(raw: string, host: string, tenant: string): Report[];
17
+ export declare function connectedReports(config: Record<string, string>): Report[];
18
+ export declare function workdayVendor(fetchImpl?: Fetch): Vendor;
@@ -0,0 +1,195 @@
1
+ import { createHash } from "node:crypto";
2
+ import { vendorError } from "../../packages/connector-kit/src/oauth.js";
3
+ import { ConnectError, TokenCache, } from "../../packages/connector-kit/src/types.js";
4
+ // A Workday API client for integrations, signing in as its Integration System User with a
5
+ // non-expiring refresh token (OAuth 2.0 refresh token grant at /ccx/oauth2/<tenant>/token, the
6
+ // client id and secret as HTTP Basic). REST calls under /ccx/api/<service>/<version>/<tenant>,
7
+ // custom reports (Reports-as-a-Service) under /ccx/service/customreport2/<tenant>. Service
8
+ // paths are Workday's REST directory (developer.workday.com, services_oas3.json, read October
9
+ // 27, 2026); its spec files need a Workday sign-in, so answer fields follow CData's Workday
10
+ // tables, which are generated from them.
11
+ const HOST = /^[a-z0-9-]+(\.[a-z0-9-]+)*\.(myworkday|workday)\.com$/;
12
+ const TENANT = /^[A-Za-z0-9_]{1,64}$/;
13
+ const REPORT_SEGMENT = /^[A-Za-z0-9_.\-]{1,200}$/;
14
+ const PROMPT = /^[A-Za-z0-9_!.\-]{1,100}$/;
15
+ const MAX_REPORTS = 30;
16
+ // Workday's token answer may carry no lifetime: reuse a token this long, re-mint once on a 401.
17
+ const DEFAULT_TOKEN_SECONDS = 600;
18
+ // The REST API endpoint shown on Workday's View API Clients page, e.g.
19
+ // https://wd5-services1.myworkday.com/ccx/api/v1/acme: host and tenant.
20
+ export function parseEndpoint(raw) {
21
+ let url;
22
+ try {
23
+ url = new URL(raw.trim());
24
+ }
25
+ catch {
26
+ throw new ConnectError("Enter the Workday REST API endpoint, such as https://wd5-services1.myworkday.com/ccx/api/v1/acme");
27
+ }
28
+ const host = url.hostname.toLowerCase();
29
+ if (url.protocol !== "https:" || url.port || !HOST.test(host))
30
+ throw new ConnectError(`${url.host} is not a Workday address (ending myworkday.com or workday.com)`);
31
+ const tenant = /^\/ccx\/api\/(?:[A-Za-z]+\/)?v\d+\/([^/]+)\/?$/.exec(url.pathname)?.[1];
32
+ if (!tenant || !TENANT.test(tenant))
33
+ throw new ConnectError("The endpoint should end with /ccx/api/v1/<tenant>, as shown on the View API Clients page");
34
+ return { host, tenant };
35
+ }
36
+ // Each report's JSON link from Workday (the report's Actions > Web Service > View URLs > JSON),
37
+ // separated by spaces or new lines. Its query names are the report's prompts; one whose example
38
+ // value is a date takes dates.
39
+ export function parseReports(raw, host, tenant) {
40
+ const links = raw.split(/\s+/).filter(Boolean);
41
+ if (links.length > MAX_REPORTS)
42
+ throw new ConnectError(`Enter at most ${MAX_REPORTS} reports`);
43
+ const reports = links.map((link) => {
44
+ let url;
45
+ try {
46
+ url = new URL(link);
47
+ }
48
+ catch {
49
+ throw new ConnectError(`${link.slice(0, 100)} is not a report link`);
50
+ }
51
+ const parts = url.pathname.split("/").map((p) => decodeURIComponent(p));
52
+ const [, ccx, service, kind, t, owner, report] = parts;
53
+ if (url.protocol !== "https:" ||
54
+ url.hostname.toLowerCase() !== host ||
55
+ ccx !== "ccx" ||
56
+ service !== "service" ||
57
+ kind !== "customreport2" ||
58
+ parts.length !== 7 ||
59
+ !REPORT_SEGMENT.test(owner ?? "") ||
60
+ !REPORT_SEGMENT.test(report ?? ""))
61
+ throw new ConnectError(`${link.slice(0, 100)} is not a custom report link on ${host} (…/ccx/service/customreport2/${tenant}/<owner>/<report>)`);
62
+ if (t !== tenant)
63
+ throw new ConnectError(`${report} belongs to tenant ${t}, not ${tenant}`);
64
+ const prompts = [];
65
+ for (const [name, value] of url.searchParams) {
66
+ if (name === "format")
67
+ continue;
68
+ if (!PROMPT.test(name))
69
+ throw new ConnectError(`${report}: ${name} is not a prompt name`);
70
+ prompts.push({ name, type: /^\d{4}-\d{2}-\d{2}/.test(value) ? "date" : "text" });
71
+ }
72
+ return { name: report, owner, report, prompts };
73
+ });
74
+ const names = reports.map((r) => r.name);
75
+ const twice = names.find((n, i) => names.indexOf(n) !== i);
76
+ if (twice)
77
+ throw new ConnectError(`${twice} is entered twice`);
78
+ return reports;
79
+ }
80
+ export function connectedReports(config) {
81
+ return config.reports ? JSON.parse(config.reports) : [];
82
+ }
83
+ export function workdayVendor(fetchImpl = fetch) {
84
+ const tokens = new TokenCache();
85
+ const key = (c) => createHash("sha256")
86
+ .update(`${c.config.host}\n${c.config.tenant}\n${c.secret.client_id}\n${c.secret.refresh_token}`)
87
+ .digest("hex");
88
+ async function mint(c) {
89
+ const { host, tenant } = c.config;
90
+ const res = await fetchImpl(`https://${host}/ccx/oauth2/${tenant}/token`, {
91
+ method: "POST",
92
+ headers: {
93
+ authorization: `Basic ${Buffer.from(`${c.secret.client_id}:${c.secret.client_secret}`).toString("base64")}`,
94
+ "content-type": "application/x-www-form-urlencoded",
95
+ accept: "application/json",
96
+ },
97
+ body: new URLSearchParams({
98
+ grant_type: "refresh_token",
99
+ refresh_token: c.secret.refresh_token,
100
+ }),
101
+ redirect: "manual",
102
+ });
103
+ const raw = await res.text();
104
+ const body = parse(raw);
105
+ if (!res.ok)
106
+ throw new ConnectError(`Workday refused the sign-in (${res.status}${vendorError(body) ? `: ${vendorError(body)}` : ""}). Check the client ID, secret and refresh token, and that the refresh token was made for this API client.`);
107
+ if (typeof body !== "object" || !body || typeof body.access_token !== "string")
108
+ throw new ConnectError("Workday answered the sign-in without a token");
109
+ const expiresIn = Number(body.expires_in);
110
+ return {
111
+ token: body.access_token,
112
+ expiresIn: Number.isFinite(expiresIn) && expiresIn > 60 ? expiresIn : DEFAULT_TOKEN_SECONDS,
113
+ };
114
+ }
115
+ async function send(c, access, request) {
116
+ const res = await fetchImpl(`https://${c.config.host}${request.path}`, {
117
+ method: request.method,
118
+ headers: {
119
+ authorization: `Bearer ${access}`,
120
+ accept: "application/json",
121
+ ...(request.body === undefined ? {} : { "content-type": "application/json" }),
122
+ },
123
+ body: request.body === undefined ? undefined : JSON.stringify(request.body),
124
+ redirect: "manual",
125
+ });
126
+ const raw = await res.text();
127
+ return { status: res.status, data: raw ? parse(raw) : null };
128
+ }
129
+ const call = async (c, request) => {
130
+ if (!HOST.test(c.config.host ?? "") || !TENANT.test(c.config.tenant ?? ""))
131
+ throw new Error("Workday connection has no host or tenant");
132
+ if (!request.path.startsWith("/ccx/"))
133
+ throw new Error(`Not a Workday path: ${request.path}`);
134
+ let res = await send(c, await tokens.get(key(c), () => mint(c)), request);
135
+ if (res.status === 401) {
136
+ tokens.forget(key(c));
137
+ res = await send(c, await tokens.get(key(c), () => mint(c)), request);
138
+ }
139
+ return res;
140
+ };
141
+ return {
142
+ async connect(fields) {
143
+ const { host, tenant } = parseEndpoint(fields.endpoint ?? "");
144
+ const clientId = fields.client_id?.trim();
145
+ const clientSecret = fields.client_secret?.trim();
146
+ const refreshToken = fields.refresh_token?.trim();
147
+ if (!clientId || !clientSecret || !refreshToken)
148
+ throw new ConnectError("Enter the client ID, client secret and refresh token");
149
+ const reports = parseReports(fields.reports ?? "", host, tenant);
150
+ const orgColumn = fields.report_org_column?.trim() ?? "";
151
+ if (orgColumn && !PROMPT.test(orgColumn))
152
+ throw new ConnectError(`${orgColumn} is not a report column name`);
153
+ const conn = {
154
+ config: {
155
+ host,
156
+ tenant,
157
+ account: `${host}/${tenant}`,
158
+ reports: JSON.stringify(reports),
159
+ ...(orgColumn ? { reportOrgColumn: orgColumn } : {}),
160
+ },
161
+ secret: { client_id: clientId, client_secret: clientSecret, refresh_token: refreshToken },
162
+ };
163
+ tokens.forget(key(conn));
164
+ await tokens.get(key(conn), () => mint(conn));
165
+ return { ...conn, accountLabel: `${tenant} (${host})` };
166
+ },
167
+ call,
168
+ checks: {
169
+ // One worker read proves the account reaches staffing data; nothing of it is shown.
170
+ async tenant(connection) {
171
+ const res = await call(connection, {
172
+ method: "GET",
173
+ path: `/ccx/api/staffing/v7/${connection.config.tenant}/workers?limit=1`,
174
+ });
175
+ if (res.status === 401 || res.status === 403)
176
+ throw new ConnectError(`Workday refused to list workers (${res.status}). Give the account's security group View on Worker Data: Public Worker Reports, activate the pending security policy changes, then check again.`);
177
+ if (res.status < 200 || res.status >= 300)
178
+ throw new ConnectError(`Workday answered ${res.status}: ${vendorError(res.data) || "no reason given"}`);
179
+ return { values: [`${connection.config.tenant} (${connection.config.host})`] };
180
+ },
181
+ async reports(connection) {
182
+ return { values: connectedReports(connection.config).map((r) => r.name) };
183
+ },
184
+ },
185
+ };
186
+ }
187
+ function parse(raw) {
188
+ try {
189
+ return JSON.parse(raw);
190
+ }
191
+ catch {
192
+ return raw;
193
+ }
194
+ }
195
+ //# sourceMappingURL=vendor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vendor.js","sourceRoot":"","sources":["../../../connectors/workday/vendor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,57 @@
1
+ import { z } from "zod";
2
+ export declare const brandingSchema: z.ZodObject<{
3
+ productName: z.ZodDefault<z.ZodString>;
4
+ logoUrl: z.ZodOptional<z.ZodURL>;
5
+ resourcePrefix: z.ZodDefault<z.ZodString>;
6
+ microsoft: z.ZodDefault<z.ZodObject<{
7
+ appName: z.ZodDefault<z.ZodString>;
8
+ mailboxGroup: z.ZodDefault<z.ZodString>;
9
+ mailboxGroupAlias: z.ZodDefault<z.ZodString>;
10
+ botRole: z.ZodDefault<z.ZodString>;
11
+ }, z.core.$strict>>;
12
+ teams: z.ZodDefault<z.ZodObject<{
13
+ resourceGroup: z.ZodDefault<z.ZodString>;
14
+ developer: z.ZodOptional<z.ZodObject<{
15
+ name: z.ZodString;
16
+ websiteUrl: z.ZodURL;
17
+ privacyUrl: z.ZodURL;
18
+ termsOfUseUrl: z.ZodURL;
19
+ }, z.core.$strict>>;
20
+ }, z.core.$strict>>;
21
+ }, z.core.$strict>;
22
+ export type Branding = z.infer<typeof brandingSchema>;
23
+ export type BrandingInput = z.input<typeof brandingSchema>;
24
+ export declare const DEFAULT_BRANDING: Branding;
25
+ export declare function parseBranding(raw: unknown): Branding;
26
+ export declare const brand: () => {
27
+ productName: string;
28
+ resourcePrefix: string;
29
+ microsoft: {
30
+ appName: string;
31
+ mailboxGroup: string;
32
+ mailboxGroupAlias: string;
33
+ botRole: string;
34
+ };
35
+ teams: {
36
+ resourceGroup: string;
37
+ developer?: {
38
+ name: string;
39
+ websiteUrl: string;
40
+ privacyUrl: string;
41
+ termsOfUseUrl: string;
42
+ } | undefined;
43
+ };
44
+ logoUrl?: string | undefined;
45
+ };
46
+ export declare function setBranding(b: Branding): void;
47
+ /** Fills `{brand.a.b}` placeholders; one naming no text field of the branding throws. */
48
+ export declare function fillBrand(text: string, b?: Branding): string;
49
+ /** fillBrand over every string in a parsed JSON value. */
50
+ export declare function fillBrandDeep<T>(value: T, b?: Branding): T;
51
+ /** The Teams manifest's developer, which a package needs. */
52
+ export declare function teamsDeveloper(b?: Branding): {
53
+ name: string;
54
+ websiteUrl: string;
55
+ privacyUrl: string;
56
+ termsOfUseUrl: string;
57
+ };
@@ -0,0 +1,19 @@
1
+ export type NewCertificate = {
2
+ certificate: string;
3
+ privateKey: string;
4
+ };
5
+ export declare function newCertificate(commonName: string, now?: Date): NewCertificate;
6
+ /** What the admin sees of a certificate: Entra lists it by its SHA-1 thumbprint. */
7
+ export declare function describeCertificate(pem: string): {
8
+ thumbprint: string;
9
+ expiresAt: string;
10
+ };
11
+ /** A signed client assertion (RFC 7523) for Microsoft's token endpoint, valid five minutes.
12
+ * Microsoft pairs the x5t#S256 header with PS256 (RSA-PSS). */
13
+ export declare function clientAssertion(input: {
14
+ clientId: string;
15
+ tokenUrl: string;
16
+ certificate: string;
17
+ privateKey: string;
18
+ now?: number;
19
+ }): string;
@@ -0,0 +1,40 @@
1
+ import type { CallToolResult, McpServer } from "@modelcontextprotocol/server";
2
+ import type { Limits } from "../../server/src/store.js";
3
+ import type { TeamsAccess } from "../../server/src/teams/runtime.js";
4
+ import type { VendorRequest, VendorResponse } from "./types.js";
5
+ export type ToolContext = {
6
+ limits: Limits;
7
+ /** The connection's settings, e.g. the sites it was connected with. */
8
+ config: Record<string, string>;
9
+ call(request: VendorRequest): Promise<VendorResponse>;
10
+ /** Per tool: what to add to a 403 from the app (its capability's `forbidden`). */
11
+ forbidden?: Record<string, string>;
12
+ /** Teams only: the agent's own bot. */
13
+ teams?: TeamsAccess;
14
+ audit(entry: {
15
+ tool: string;
16
+ target: string | null;
17
+ decision: "allowed" | "denied" | "failed";
18
+ reason: string | null;
19
+ vendorStatus: number | null;
20
+ }): Promise<void>;
21
+ };
22
+ export type Toolset = {
23
+ names: readonly string[];
24
+ register(server: McpServer, ctx: ToolContext, allowed: ReadonlySet<string>): void;
25
+ };
26
+ /** One app's tools from several sets, e.g. SharePoint's files and spreadsheets. */
27
+ export declare const toolsets: (...sets: Toolset[]) => Toolset;
28
+ export declare class Denied extends Error {
29
+ }
30
+ export declare class VendorFailed extends Error {
31
+ readonly status: number;
32
+ readonly hintTool?: string | undefined;
33
+ constructor(status: number, message: string, hintTool?: string | undefined);
34
+ }
35
+ export declare function listLimit(limits: Limits, id: string): string[] | null;
36
+ export declare function mapLimit(limits: Limits, id: string): Record<string, string> | null;
37
+ export declare function textLimit(limits: Limits, id: string): string | null;
38
+ export declare const argumentsTarget: (args: unknown) => string | null;
39
+ export declare const json: (data: unknown) => CallToolResult;
40
+ export declare function audited(ctx: ToolContext, tool: string, target: string | null, run: (vendorStatus: (status: number) => void, retarget: (sent: string) => void) => Promise<CallToolResult>): Promise<CallToolResult>;