brightspace-mcp-server 3.1.0 → 3.3.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 (281) hide show
  1. package/README.md +1 -0
  2. package/build/api/cache.js +0 -1
  3. package/build/api/client.js +0 -1
  4. package/build/api/errors.js +0 -1
  5. package/build/api/index.js +0 -1
  6. package/build/api/paginate.js +0 -1
  7. package/build/api/rate-limiter.js +0 -1
  8. package/build/api/retry.js +0 -1
  9. package/build/api/types.js +0 -1
  10. package/build/api/version-discovery.js +0 -1
  11. package/build/auth/auth-cooldown.js +0 -1
  12. package/build/auth/auth-lock.js +0 -1
  13. package/build/auth/auth-runner.js +0 -1
  14. package/build/auth/browser-auth.js +0 -1
  15. package/build/auth/browser-state-store.js +0 -1
  16. package/build/auth/credential-store.js +0 -1
  17. package/build/auth/duo-mfa.js +0 -1
  18. package/build/auth/encrypted-store.js +0 -1
  19. package/build/auth/index.js +0 -1
  20. package/build/auth/legacy-profile.js +0 -1
  21. package/build/auth/legacy-state.js +0 -1
  22. package/build/auth/purdue-sso.js +0 -1
  23. package/build/auth/session-store.js +0 -1
  24. package/build/auth/sso-flow.js +0 -1
  25. package/build/auth/suny-sso.js +0 -1
  26. package/build/auth/token-manager.js +0 -1
  27. package/build/auth/token-mint.js +0 -1
  28. package/build/auth/western-sso.js +0 -1
  29. package/build/auth-cli.js +0 -1
  30. package/build/index.js +4 -4
  31. package/build/setup.js +0 -1
  32. package/build/tools/download-file.js +0 -1
  33. package/build/tools/get-announcements.js +0 -3
  34. package/build/tools/get-assignment-files.js +0 -1
  35. package/build/tools/get-assignments.js +5 -6
  36. package/build/tools/get-classlist-emails.js +0 -1
  37. package/build/tools/get-course-content.js +8 -9
  38. package/build/tools/get-discussions.js +0 -1
  39. package/build/tools/get-my-courses.js +0 -1
  40. package/build/tools/get-my-grades.js +0 -1
  41. package/build/tools/get-roster.js +0 -1
  42. package/build/tools/get-syllabus.js +1 -2
  43. package/build/tools/get-upcoming-due-dates.js +0 -1
  44. package/build/tools/get-video-transcript.js +167 -0
  45. package/build/tools/index.js +1 -1
  46. package/build/tools/schemas.js +12 -1
  47. package/build/tools/tool-helpers.js +1 -2
  48. package/build/types/index.js +0 -1
  49. package/build/update.js +0 -1
  50. package/build/utils/atomic-write.js +0 -1
  51. package/build/utils/browser-install.js +0 -1
  52. package/build/utils/commands.js +0 -1
  53. package/build/utils/config-store.js +0 -1
  54. package/build/utils/config.js +0 -1
  55. package/build/utils/course-filter.js +0 -1
  56. package/build/utils/deep-links.js +0 -1
  57. package/build/utils/download-errors.js +0 -1
  58. package/build/utils/download-helpers.js +0 -1
  59. package/build/utils/errors.js +0 -1
  60. package/build/utils/file-validator.js +10 -2
  61. package/build/utils/html-converter.js +16 -11
  62. package/build/utils/install-sites.js +0 -1
  63. package/build/utils/logger.js +0 -1
  64. package/build/utils/mcp-client-cli.js +0 -1
  65. package/build/utils/modified-since.js +0 -1
  66. package/build/utils/pdf-extractor.js +0 -1
  67. package/build/utils/secure-config.js +0 -1
  68. package/build/utils/self-update.js +0 -1
  69. package/build/utils/transcript/captions.js +62 -0
  70. package/build/utils/transcript/errors.js +19 -0
  71. package/build/utils/transcript/kaltura.js +93 -0
  72. package/build/utils/transcript/platform.js +97 -0
  73. package/build/utils/transcript/types.js +6 -0
  74. package/build/utils/transcript/youtube.js +56 -0
  75. package/build/utils/update-checker.js +0 -1
  76. package/build/utils/zip-extract.js +0 -1
  77. package/package.json +1 -2
  78. package/build/api/cache.d.ts +0 -15
  79. package/build/api/cache.d.ts.map +0 -1
  80. package/build/api/cache.js.map +0 -1
  81. package/build/api/client.d.ts +0 -141
  82. package/build/api/client.d.ts.map +0 -1
  83. package/build/api/client.js.map +0 -1
  84. package/build/api/errors.d.ts +0 -27
  85. package/build/api/errors.d.ts.map +0 -1
  86. package/build/api/errors.js.map +0 -1
  87. package/build/api/index.d.ts +0 -13
  88. package/build/api/index.d.ts.map +0 -1
  89. package/build/api/index.js.map +0 -1
  90. package/build/api/paginate.d.ts +0 -23
  91. package/build/api/paginate.d.ts.map +0 -1
  92. package/build/api/paginate.js.map +0 -1
  93. package/build/api/rate-limiter.d.ts +0 -17
  94. package/build/api/rate-limiter.d.ts.map +0 -1
  95. package/build/api/rate-limiter.js.map +0 -1
  96. package/build/api/retry.d.ts +0 -42
  97. package/build/api/retry.d.ts.map +0 -1
  98. package/build/api/retry.js.map +0 -1
  99. package/build/api/types.d.ts +0 -39
  100. package/build/api/types.d.ts.map +0 -1
  101. package/build/api/types.js.map +0 -1
  102. package/build/api/version-discovery.d.ts +0 -16
  103. package/build/api/version-discovery.d.ts.map +0 -1
  104. package/build/api/version-discovery.js.map +0 -1
  105. package/build/auth/auth-cooldown.d.ts +0 -24
  106. package/build/auth/auth-cooldown.d.ts.map +0 -1
  107. package/build/auth/auth-cooldown.js.map +0 -1
  108. package/build/auth/auth-lock.d.ts +0 -7
  109. package/build/auth/auth-lock.d.ts.map +0 -1
  110. package/build/auth/auth-lock.js.map +0 -1
  111. package/build/auth/auth-runner.d.ts +0 -61
  112. package/build/auth/auth-runner.d.ts.map +0 -1
  113. package/build/auth/auth-runner.js.map +0 -1
  114. package/build/auth/browser-auth.d.ts +0 -94
  115. package/build/auth/browser-auth.d.ts.map +0 -1
  116. package/build/auth/browser-auth.js.map +0 -1
  117. package/build/auth/browser-state-store.d.ts +0 -19
  118. package/build/auth/browser-state-store.d.ts.map +0 -1
  119. package/build/auth/browser-state-store.js.map +0 -1
  120. package/build/auth/credential-store.d.ts +0 -29
  121. package/build/auth/credential-store.d.ts.map +0 -1
  122. package/build/auth/credential-store.js.map +0 -1
  123. package/build/auth/duo-mfa.d.ts +0 -23
  124. package/build/auth/duo-mfa.d.ts.map +0 -1
  125. package/build/auth/duo-mfa.js.map +0 -1
  126. package/build/auth/encrypted-store.d.ts +0 -25
  127. package/build/auth/encrypted-store.d.ts.map +0 -1
  128. package/build/auth/encrypted-store.js.map +0 -1
  129. package/build/auth/index.d.ts +0 -14
  130. package/build/auth/index.d.ts.map +0 -1
  131. package/build/auth/index.js.map +0 -1
  132. package/build/auth/legacy-profile.d.ts +0 -3
  133. package/build/auth/legacy-profile.d.ts.map +0 -1
  134. package/build/auth/legacy-profile.js.map +0 -1
  135. package/build/auth/legacy-state.d.ts +0 -14
  136. package/build/auth/legacy-state.d.ts.map +0 -1
  137. package/build/auth/legacy-state.js.map +0 -1
  138. package/build/auth/purdue-sso.d.ts +0 -57
  139. package/build/auth/purdue-sso.d.ts.map +0 -1
  140. package/build/auth/purdue-sso.js.map +0 -1
  141. package/build/auth/session-store.d.ts +0 -28
  142. package/build/auth/session-store.d.ts.map +0 -1
  143. package/build/auth/session-store.js.map +0 -1
  144. package/build/auth/sso-flow.d.ts +0 -42
  145. package/build/auth/sso-flow.d.ts.map +0 -1
  146. package/build/auth/sso-flow.js.map +0 -1
  147. package/build/auth/suny-sso.d.ts +0 -53
  148. package/build/auth/suny-sso.d.ts.map +0 -1
  149. package/build/auth/suny-sso.js.map +0 -1
  150. package/build/auth/token-manager.d.ts +0 -74
  151. package/build/auth/token-manager.d.ts.map +0 -1
  152. package/build/auth/token-manager.js.map +0 -1
  153. package/build/auth/token-mint.d.ts +0 -32
  154. package/build/auth/token-mint.d.ts.map +0 -1
  155. package/build/auth/token-mint.js.map +0 -1
  156. package/build/auth/western-sso.d.ts +0 -15
  157. package/build/auth/western-sso.d.ts.map +0 -1
  158. package/build/auth/western-sso.js.map +0 -1
  159. package/build/auth-cli.d.ts +0 -4
  160. package/build/auth-cli.d.ts.map +0 -1
  161. package/build/auth-cli.js.map +0 -1
  162. package/build/index.d.ts +0 -10
  163. package/build/index.d.ts.map +0 -1
  164. package/build/index.js.map +0 -1
  165. package/build/setup.d.ts +0 -10
  166. package/build/setup.d.ts.map +0 -1
  167. package/build/setup.js.map +0 -1
  168. package/build/tools/download-file.d.ts +0 -16
  169. package/build/tools/download-file.d.ts.map +0 -1
  170. package/build/tools/download-file.js.map +0 -1
  171. package/build/tools/get-announcements.d.ts +0 -77
  172. package/build/tools/get-announcements.d.ts.map +0 -1
  173. package/build/tools/get-announcements.js.map +0 -1
  174. package/build/tools/get-assignment-files.d.ts +0 -12
  175. package/build/tools/get-assignment-files.d.ts.map +0 -1
  176. package/build/tools/get-assignment-files.js.map +0 -1
  177. package/build/tools/get-assignments.d.ts +0 -19
  178. package/build/tools/get-assignments.d.ts.map +0 -1
  179. package/build/tools/get-assignments.js.map +0 -1
  180. package/build/tools/get-classlist-emails.d.ts +0 -12
  181. package/build/tools/get-classlist-emails.d.ts.map +0 -1
  182. package/build/tools/get-classlist-emails.js.map +0 -1
  183. package/build/tools/get-course-content.d.ts +0 -12
  184. package/build/tools/get-course-content.d.ts.map +0 -1
  185. package/build/tools/get-course-content.js.map +0 -1
  186. package/build/tools/get-discussions.d.ts +0 -12
  187. package/build/tools/get-discussions.d.ts.map +0 -1
  188. package/build/tools/get-discussions.js.map +0 -1
  189. package/build/tools/get-my-courses.d.ts +0 -13
  190. package/build/tools/get-my-courses.d.ts.map +0 -1
  191. package/build/tools/get-my-courses.js.map +0 -1
  192. package/build/tools/get-my-grades.d.ts +0 -13
  193. package/build/tools/get-my-grades.d.ts.map +0 -1
  194. package/build/tools/get-my-grades.js.map +0 -1
  195. package/build/tools/get-roster.d.ts +0 -12
  196. package/build/tools/get-roster.d.ts.map +0 -1
  197. package/build/tools/get-roster.js.map +0 -1
  198. package/build/tools/get-syllabus.d.ts +0 -12
  199. package/build/tools/get-syllabus.d.ts.map +0 -1
  200. package/build/tools/get-syllabus.js.map +0 -1
  201. package/build/tools/get-upcoming-due-dates.d.ts +0 -13
  202. package/build/tools/get-upcoming-due-dates.d.ts.map +0 -1
  203. package/build/tools/get-upcoming-due-dates.js.map +0 -1
  204. package/build/tools/index.d.ts +0 -20
  205. package/build/tools/index.d.ts.map +0 -1
  206. package/build/tools/index.js.map +0 -1
  207. package/build/tools/schemas.d.ts +0 -76
  208. package/build/tools/schemas.d.ts.map +0 -1
  209. package/build/tools/schemas.js.map +0 -1
  210. package/build/tools/tool-helpers.d.ts +0 -27
  211. package/build/tools/tool-helpers.d.ts.map +0 -1
  212. package/build/tools/tool-helpers.js.map +0 -1
  213. package/build/types/index.d.ts +0 -63
  214. package/build/types/index.d.ts.map +0 -1
  215. package/build/types/index.js.map +0 -1
  216. package/build/update.d.ts +0 -10
  217. package/build/update.d.ts.map +0 -1
  218. package/build/update.js.map +0 -1
  219. package/build/utils/atomic-write.d.ts +0 -18
  220. package/build/utils/atomic-write.d.ts.map +0 -1
  221. package/build/utils/atomic-write.js.map +0 -1
  222. package/build/utils/browser-install.d.ts +0 -23
  223. package/build/utils/browser-install.d.ts.map +0 -1
  224. package/build/utils/browser-install.js.map +0 -1
  225. package/build/utils/commands.d.ts +0 -26
  226. package/build/utils/commands.d.ts.map +0 -1
  227. package/build/utils/commands.js.map +0 -1
  228. package/build/utils/config-store.d.ts +0 -24
  229. package/build/utils/config-store.d.ts.map +0 -1
  230. package/build/utils/config-store.js.map +0 -1
  231. package/build/utils/config.d.ts +0 -10
  232. package/build/utils/config.d.ts.map +0 -1
  233. package/build/utils/config.js.map +0 -1
  234. package/build/utils/course-filter.d.ts +0 -31
  235. package/build/utils/course-filter.d.ts.map +0 -1
  236. package/build/utils/course-filter.js.map +0 -1
  237. package/build/utils/deep-links.d.ts +0 -17
  238. package/build/utils/deep-links.d.ts.map +0 -1
  239. package/build/utils/deep-links.js.map +0 -1
  240. package/build/utils/download-errors.d.ts +0 -45
  241. package/build/utils/download-errors.d.ts.map +0 -1
  242. package/build/utils/download-errors.js.map +0 -1
  243. package/build/utils/download-helpers.d.ts +0 -31
  244. package/build/utils/download-helpers.d.ts.map +0 -1
  245. package/build/utils/download-helpers.js.map +0 -1
  246. package/build/utils/errors.d.ts +0 -21
  247. package/build/utils/errors.d.ts.map +0 -1
  248. package/build/utils/errors.js.map +0 -1
  249. package/build/utils/file-validator.d.ts +0 -56
  250. package/build/utils/file-validator.d.ts.map +0 -1
  251. package/build/utils/file-validator.js.map +0 -1
  252. package/build/utils/html-converter.d.ts +0 -17
  253. package/build/utils/html-converter.d.ts.map +0 -1
  254. package/build/utils/html-converter.js.map +0 -1
  255. package/build/utils/install-sites.d.ts +0 -60
  256. package/build/utils/install-sites.d.ts.map +0 -1
  257. package/build/utils/install-sites.js.map +0 -1
  258. package/build/utils/logger.d.ts +0 -10
  259. package/build/utils/logger.d.ts.map +0 -1
  260. package/build/utils/logger.js.map +0 -1
  261. package/build/utils/mcp-client-cli.d.ts +0 -12
  262. package/build/utils/mcp-client-cli.d.ts.map +0 -1
  263. package/build/utils/mcp-client-cli.js.map +0 -1
  264. package/build/utils/modified-since.d.ts +0 -19
  265. package/build/utils/modified-since.d.ts.map +0 -1
  266. package/build/utils/modified-since.js.map +0 -1
  267. package/build/utils/pdf-extractor.d.ts +0 -14
  268. package/build/utils/pdf-extractor.d.ts.map +0 -1
  269. package/build/utils/pdf-extractor.js.map +0 -1
  270. package/build/utils/secure-config.d.ts +0 -6
  271. package/build/utils/secure-config.d.ts.map +0 -1
  272. package/build/utils/secure-config.js.map +0 -1
  273. package/build/utils/self-update.d.ts +0 -61
  274. package/build/utils/self-update.d.ts.map +0 -1
  275. package/build/utils/self-update.js.map +0 -1
  276. package/build/utils/update-checker.d.ts +0 -112
  277. package/build/utils/update-checker.d.ts.map +0 -1
  278. package/build/utils/update-checker.js.map +0 -1
  279. package/build/utils/zip-extract.d.ts +0 -15
  280. package/build/utils/zip-extract.d.ts.map +0 -1
  281. package/build/utils/zip-extract.js.map +0 -1
@@ -1,141 +0,0 @@
1
- /**
2
- * Purdue Brightspace MCP Server
3
- * Copyright (c) 2026 Rohan Muppa. All rights reserved.
4
- * Licensed under MIT — see LICENSE file for details.
5
- */
6
- import type { D2LApiClientOptions, ApiVersions } from "./types.js";
7
- /**
8
- * D2L API client with authentication, caching, rate limiting, and version discovery.
9
- *
10
- * Key features:
11
- * - Auto-discovers LP/LE versions from /d2l/api/versions/ on the first request
12
- * - Supports both Bearer tokens and cookie-based auth (auto-detected via "cookie:" prefix)
13
- * - Client-side rate limiting using token bucket algorithm
14
- * - In-memory response caching with per-data-type TTLs
15
- * - 401 recovery: refresh the token before requesting browser authentication
16
- * - HTTPS-only enforcement
17
- * - Browser-like User-Agent for requests
18
- * - Raw response passthrough (no transformation)
19
- */
20
- export declare class D2LApiClient {
21
- private readonly baseUrl;
22
- private readonly tokenManager;
23
- private readonly cache;
24
- private readonly rateLimiter;
25
- private readonly cacheTTLs;
26
- private readonly timeoutMs;
27
- private readonly onAuthExpired?;
28
- private readonly retryConfig;
29
- private versions;
30
- /** Single in-flight discovery, so concurrent first requests share one fetch. */
31
- private versionsInFlight;
32
- constructor(options: D2LApiClientOptions);
33
- /**
34
- * Discover the API versions, joining a discovery already in flight.
35
- *
36
- * Called from get() and getRaw() rather than at startup, so the server
37
- * answers tools/list without touching the network and a user who never
38
- * calls a tool never pays for a request. Nothing needs to call this
39
- * directly.
40
- */
41
- ensureVersions(): Promise<ApiVersions>;
42
- /**
43
- * Discover API versions eagerly. Idempotent, and no longer required:
44
- * requests discover on demand. Kept for callers that want the network
45
- * failure up front rather than on the first tool call.
46
- */
47
- initialize(): Promise<void>;
48
- /**
49
- * Get discovered API versions.
50
- * @throws Error if no request has discovered them yet
51
- */
52
- get apiVersions(): ApiVersions;
53
- /**
54
- * Substitute the discovered versions into a path built by lp(), le(), or
55
- * leGlobal(), discovering them first if no request has yet.
56
- *
57
- * A path that carries no placeholder is returned untouched and costs
58
- * nothing: a bookmark page whose URL came back fully resolved from D2L
59
- * does not trigger a discovery of its own.
60
- */
61
- private resolvePath;
62
- /**
63
- * Make a GET request to the D2L API.
64
- *
65
- * @param path - API path (e.g., "/d2l/api/lp/1.56/users/whoami")
66
- * @param options - Request options (ttl for caching)
67
- * @returns Parsed JSON response (raw, no transformation)
68
- * @throws ApiError on HTTP errors (401, 403, 429, etc.)
69
- * @throws NetworkError on network/fetch failures
70
- */
71
- get<T>(path: string, options?: {
72
- ttl?: number;
73
- }): Promise<T>;
74
- /**
75
- * Make a GET request to the D2L API and return raw Response object.
76
- * Used for binary file downloads where JSON parsing is not desired.
77
- * Does NOT cache responses (file downloads shouldn't be cached).
78
- *
79
- * @param path - API path (e.g., "/d2l/api/le/1.91/123456/content/topics/789/file")
80
- * @returns Raw Response object for binary data extraction
81
- * @throws ApiError on HTTP errors (401, 403, 429, etc.)
82
- * @throws NetworkError on network/fetch failures
83
- */
84
- getRaw(path: string): Promise<Response>;
85
- /** One HTTP refresh and at most one browser login per caller. */
86
- private withAuthentication;
87
- /** One rate limiter token per attempt. */
88
- private throttled;
89
- /** Retry 429, 5xx, and network failures. A 401 is never retried here. */
90
- private retrying;
91
- /**
92
- * Attempt auto-reauthentication via the onAuthExpired callback.
93
- * If successful, returns the fresh token. Otherwise throws 401 ApiError.
94
- */
95
- private tryAutoReauth;
96
- /**
97
- * Make one HTTP request. Authentication recovery is shared with raw downloads.
98
- */
99
- private makeRequest;
100
- /**
101
- * Make one HTTP request for raw binary data.
102
- */
103
- private makeRawRequest;
104
- /**
105
- * Build authentication headers for a request.
106
- * Supports both Bearer tokens and cookie-based auth.
107
- */
108
- private buildAuthHeaders;
109
- /**
110
- * Build path for LP (Learning Platform) API endpoints.
111
- *
112
- * The version is left as a placeholder and substituted by get() or getRaw()
113
- * once it has been discovered. See LP_VERSION above.
114
- *
115
- * @param path - Path within LP API (e.g., "/users/whoami")
116
- * @returns Versioned path template (e.g., "/d2l/api/lp/{lp}/users/whoami")
117
- */
118
- lp(path: string): string;
119
- /**
120
- * Build path for LE (Learning Environment) API endpoints with orgUnitId.
121
- * @param orgUnitId - Organizational unit ID (course ID)
122
- * @param path - Path within LE API (e.g., "/content/root/")
123
- * @returns Versioned path template (e.g., "/d2l/api/le/{le}/123456/content/root/")
124
- */
125
- le(orgUnitId: number, path: string): string;
126
- /**
127
- * Build path for global LE (Learning Environment) API endpoints without orgUnitId.
128
- * @param path - Path within LE API (e.g., "/enrollments/myenrollments/")
129
- * @returns Versioned path template (e.g., "/d2l/api/le/{le}/enrollments/myenrollments/")
130
- */
131
- leGlobal(path: string): string;
132
- /**
133
- * Clear all cached responses.
134
- */
135
- clearCache(): void;
136
- /**
137
- * Get current cache size (number of cached entries).
138
- */
139
- get cacheSize(): number;
140
- }
141
- //# sourceMappingURL=client.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/api/client.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,WAAW,EAAwB,MAAM,YAAY,CAAC;AAsDzF;;;;;;;;;;;;GAYG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAsC;IACnE,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAW;IACjC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAc;IAC1C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAY;IACtC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAyB;IACxD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAc;IAC1C,OAAO,CAAC,QAAQ,CAA4B;IAC5C,gFAAgF;IAChF,OAAO,CAAC,gBAAgB,CAAqC;gBAEjD,OAAO,EAAE,mBAAmB;IAuCxC;;;;;;;OAOG;IACG,cAAc,IAAI,OAAO,CAAC,WAAW,CAAC;IAsB5C;;;;OAIG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAIjC;;;OAGG;IACH,IAAI,WAAW,IAAI,WAAW,CAO7B;IAED;;;;;;;OAOG;YACW,WAAW;IAMzB;;;;;;;;OAQG;IACG,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,CAAC,CAAC;IAmBlE;;;;;;;;;OASG;IACG,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAK7C,iEAAiE;YACnD,kBAAkB;IA+BhC,0CAA0C;YAC5B,SAAS;IAKvB,yEAAyE;IACzE,OAAO,CAAC,QAAQ;IAQhB;;;OAGG;YACW,aAAa;IAgB3B;;OAEG;YACW,WAAW;IAuFzB;;OAEG;YACW,cAAc;IA2F5B;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAoBxB;;;;;;;;OAQG;IACH,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAIxB;;;;;OAKG;IACH,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM;IAI3C;;;;OAIG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAI9B;;OAEG;IACH,UAAU,IAAI,IAAI;IAKlB;;OAEG;IACH,IAAI,SAAS,IAAI,MAAM,CAEtB;CACF"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/api/client.ts"],"names":[],"mappings":"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"}
@@ -1,27 +0,0 @@
1
- /**
2
- * Purdue Brightspace MCP Server
3
- * Copyright (c) 2026 Rohan Muppa. All rights reserved.
4
- * Licensed under MIT — see LICENSE file for details.
5
- */
6
- import { AuthError } from "../utils/errors.js";
7
- export declare class ApiError extends AuthError {
8
- readonly status: number;
9
- readonly endpoint: string;
10
- readonly responseBody?: string | undefined;
11
- constructor(status: number, endpoint: string, message: string, responseBody?: string | undefined, cause?: Error);
12
- }
13
- export declare class HttpError extends ApiError {
14
- constructor(status: number, endpoint: string, message: string, responseBody?: string, cause?: Error);
15
- }
16
- export declare class RateLimitError extends ApiError {
17
- readonly retryAfter?: number | undefined;
18
- constructor(endpoint: string, retryAfter?: number | undefined);
19
- }
20
- export declare class NetworkError extends AuthError {
21
- constructor(message: string, cause?: Error);
22
- }
23
- /** A temporary token-mint failure must never start browser authentication. */
24
- export declare class TokenRefreshError extends NetworkError {
25
- constructor(detail: string, cause?: Error);
26
- }
27
- //# sourceMappingURL=errors.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/api/errors.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAG/C,qBAAa,QAAS,SAAQ,SAAS;aAEnB,MAAM,EAAE,MAAM;aACd,QAAQ,EAAE,MAAM;aAEhB,YAAY,CAAC,EAAE,MAAM;gBAHrB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChC,OAAO,EAAE,MAAM,EACC,YAAY,CAAC,EAAE,MAAM,YAAA,EACrC,KAAK,CAAC,EAAE,KAAK;CAKhB;AAGD,qBAAa,SAAU,SAAQ,QAAQ;gBAEnC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,YAAY,CAAC,EAAE,MAAM,EACrB,KAAK,CAAC,EAAE,KAAK;CAKhB;AAGD,qBAAa,cAAe,SAAQ,QAAQ;aAGxB,UAAU,CAAC,EAAE,MAAM;gBADnC,QAAQ,EAAE,MAAM,EACA,UAAU,CAAC,EAAE,MAAM,YAAA;CAQtC;AAID,qBAAa,YAAa,SAAQ,SAAS;gBAC7B,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK;CAI3C;AAED,8EAA8E;AAC9E,qBAAa,iBAAkB,SAAQ,YAAY;gBACrC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK;CAI1C"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/api/errors.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,qCAAqC;AACrC,MAAM,OAAO,QAAS,SAAQ,SAAS;IAEnB;IACA;IAEA;IAJlB,YACkB,MAAc,EACd,QAAgB,EAChC,OAAe,EACC,YAAqB,EACrC,KAAa;QAEb,KAAK,CAAC,2BAA2B,MAAM,QAAQ,QAAQ,KAAK,OAAO,EAAE,EAAE,KAAK,CAAC,CAAC;QAN9D,WAAM,GAAN,MAAM,CAAQ;QACd,aAAQ,GAAR,QAAQ,CAAQ;QAEhB,iBAAY,GAAZ,YAAY,CAAS;QAIrC,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC;IACzB,CAAC;CACF;AAED,iEAAiE;AACjE,MAAM,OAAO,SAAU,SAAQ,QAAQ;IACrC,YACE,MAAc,EACd,QAAgB,EAChB,OAAe,EACf,YAAqB,EACrB,KAAa;QAEb,KAAK,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;QACtD,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC;IAC1B,CAAC;CACF;AAED,2CAA2C;AAC3C,MAAM,OAAO,cAAe,SAAQ,QAAQ;IAGxB;IAFlB,YACE,QAAgB,EACA,UAAmB;QAEnC,MAAM,OAAO,GAAG,UAAU;YACxB,CAAC,CAAC,0CAA0C,UAAU,GAAG;YACzD,CAAC,CAAC,2BAA2B,CAAC;QAChC,KAAK,CAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QALd,eAAU,GAAV,UAAU,CAAS;QAMnC,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAC;IAC/B,CAAC;CACF;AAED,4CAA4C;AAC5C,2CAA2C;AAC3C,MAAM,OAAO,YAAa,SAAQ,SAAS;IACzC,YAAY,OAAe,EAAE,KAAa;QACxC,KAAK,CAAC,+BAA+B,OAAO,EAAE,EAAE,KAAK,CAAC,CAAC;QACvD,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC;IAC7B,CAAC;CACF;AAED,8EAA8E;AAC9E,MAAM,OAAO,iBAAkB,SAAQ,YAAY;IACjD,YAAY,MAAc,EAAE,KAAa;QACvC,KAAK,CAAC,6CAA6C,MAAM,qDAAqD,EAAE,KAAK,CAAC,CAAC;QACvH,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAC;IAClC,CAAC;CACF"}
@@ -1,13 +0,0 @@
1
- /**
2
- * Purdue Brightspace MCP Server
3
- * Copyright (c) 2026 Rohan Muppa. All rights reserved.
4
- * Licensed under MIT — see LICENSE file for details.
5
- */
6
- export { D2LApiClient } from "./client.js";
7
- export { discoverVersions } from "./version-discovery.js";
8
- export { TTLCache } from "./cache.js";
9
- export { TokenBucket } from "./rate-limiter.js";
10
- export { ApiError, RateLimitError, NetworkError } from "./errors.js";
11
- export type { ApiVersions, CacheTTLs, RateLimitConfig, D2LApiClientOptions, } from "./types.js";
12
- export { DEFAULT_CACHE_TTLS } from "./types.js";
13
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAG1D,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGhD,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGrE,YAAY,EACV,WAAW,EACX,SAAS,EACT,eAAe,EACf,mBAAmB,GACpB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,6DAA6D;AAE7D,cAAc;AACd,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,oBAAoB;AACpB,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE1D,0BAA0B;AAC1B,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,SAAS;AACT,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AASrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC"}
@@ -1,23 +0,0 @@
1
- /**
2
- * Purdue Brightspace MCP Server
3
- * Copyright (c) 2026 Rohan Muppa. All rights reserved.
4
- * Licensed under MIT - see LICENSE file for details.
5
- */
6
- import type { D2LApiClient } from "./client.js";
7
- export interface PaginateOptions {
8
- /** Cache TTL, passed through to the client on every page. */
9
- ttl?: number;
10
- }
11
- /**
12
- * Every item across every page of a { Items, PagingInfo } endpoint, in order.
13
- */
14
- export declare function fetchAllItems<T>(apiClient: D2LApiClient, firstPath: string, options?: PaginateOptions): Promise<T[]>;
15
- /**
16
- * Every object across every page of a { Objects, Next } endpoint, in order.
17
- *
18
- * Next arrives either as a full next-page URL or as a bare bookmark, so the
19
- * absolute form is reduced to its path and query and anything else is treated
20
- * as a bookmark against the first path.
21
- */
22
- export declare function fetchAllObjects<T>(apiClient: D2LApiClient, firstPath: string, options?: PaginateOptions): Promise<T[]>;
23
- //# sourceMappingURL=paginate.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"paginate.d.ts","sourceRoot":"","sources":["../../src/api/paginate.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAyBhD,MAAM,WAAW,eAAe;IAC9B,6DAA6D;IAC7D,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAQD;;GAEG;AACH,wBAAsB,aAAa,CAAC,CAAC,EACnC,SAAS,EAAE,YAAY,EACvB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,CAAC,EAAE,CAAC,CA6Bd;AAED;;;;;;GAMG;AACH,wBAAsB,eAAe,CAAC,CAAC,EACrC,SAAS,EAAE,YAAY,EACvB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,CAAC,EAAE,CAAC,CA4Bd"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"paginate.js","sourceRoot":"","sources":["../../src/api/paginate.ts"],"names":[],"mappings":"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"}
@@ -1,17 +0,0 @@
1
- /**
2
- * Purdue Brightspace MCP Server
3
- * Copyright (c) 2026 Rohan Muppa. All rights reserved.
4
- * Licensed under MIT — see LICENSE file for details.
5
- */
6
- export declare class TokenBucket {
7
- private tokens;
8
- private lastRefill;
9
- private readonly capacity;
10
- private readonly refillRate;
11
- constructor(capacity: number, refillRate: number);
12
- private refill;
13
- consume(count?: number): Promise<void>;
14
- tryConsume(count?: number): boolean;
15
- get availableTokens(): number;
16
- }
17
- //# sourceMappingURL=rate-limiter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"rate-limiter.d.ts","sourceRoot":"","sources":["../../src/api/rate-limiter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,qBAAa,WAAW;IACtB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;gBAExB,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;IAOhD,OAAO,CAAC,MAAM;IAWR,OAAO,CAAC,KAAK,GAAE,MAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAqB/C,UAAU,CAAC,KAAK,GAAE,MAAU,GAAG,OAAO;IAWtC,IAAI,eAAe,IAAI,MAAM,CAG5B;CACF"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"rate-limiter.js","sourceRoot":"","sources":["../../src/api/rate-limiter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,2DAA2D;AAC3D,mDAAmD;AAEnD,MAAM,OAAO,WAAW;IACd,MAAM,CAAS;IACf,UAAU,CAAS;IACV,QAAQ,CAAS;IACjB,UAAU,CAAS,CAAC,oBAAoB;IAEzD,YAAY,QAAgB,EAAE,UAAkB;QAC9C,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC,yBAAyB;QACjD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC/B,CAAC;IAEO,MAAM;QACZ,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,SAAS,GAAG,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC;QACxC,MAAM,cAAc,GAAG,SAAS,GAAG,IAAI,CAAC;QAExC,mCAAmC;QACnC,MAAM,WAAW,GAAG,cAAc,GAAG,IAAI,CAAC,UAAU,CAAC;QACrD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,GAAG,WAAW,CAAC,CAAC;QACjE,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,QAAgB,CAAC;QAC7B,IAAI,CAAC,MAAM,EAAE,CAAC;QAEd,IAAI,IAAI,CAAC,MAAM,IAAI,KAAK,EAAE,CAAC;YACzB,gDAAgD;YAChD,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC;YACrB,OAAO;QACT,CAAC;QAED,0CAA0C;QAC1C,MAAM,YAAY,GAAG,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;QACzC,MAAM,UAAU,GAAG,CAAC,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC;QAE3D,4BAA4B;QAC5B,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC;QAEhE,qBAAqB;QACrB,IAAI,CAAC,MAAM,EAAE,CAAC;QACd,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC;IACvB,CAAC;IAED,UAAU,CAAC,QAAgB,CAAC;QAC1B,IAAI,CAAC,MAAM,EAAE,CAAC;QAEd,IAAI,IAAI,CAAC,MAAM,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC;YACrB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,eAAe;QACjB,IAAI,CAAC,MAAM,EAAE,CAAC;QACd,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;CACF"}
@@ -1,42 +0,0 @@
1
- /**
2
- * Purdue Brightspace MCP Server
3
- * Copyright (c) 2026 Rohan Muppa. All rights reserved.
4
- * Licensed under MIT. See LICENSE file for details.
5
- */
6
- /**
7
- * Retry transient failures with exponential backoff and jitter.
8
- *
9
- * What counts as transient is decided by the caller through `shouldRetry`,
10
- * so this module knows nothing about HTTP. A 429 that names a Retry-After is
11
- * honored verbatim, even past `maxMs`, because the server has told us
12
- * exactly when to come back and guessing sooner only earns another 429.
13
- *
14
- * `sleep` and `jitter` are injectable so the backoff sequence is testable
15
- * without fake timers.
16
- */
17
- export interface RetryConfig {
18
- /** Total attempts including the first. Default 3. */
19
- maxAttempts?: number;
20
- /** Backoff before the second attempt, doubled thereafter. Default 250. */
21
- initialMs?: number;
22
- /** Ceiling on the computed backoff. Default 5000. Retry-After ignores it. */
23
- maxMs?: number;
24
- sleep?: (ms: number) => Promise<void>;
25
- /** Returns a number in [0, 1). Default Math.random. */
26
- jitter?: () => number;
27
- }
28
- export interface RetryOptions extends RetryConfig {
29
- shouldRetry: (error: unknown) => boolean;
30
- /** Milliseconds the failure itself asked us to wait, if it did. */
31
- retryAfterMs?: (error: unknown) => number | undefined;
32
- }
33
- export declare function withRetry<T>(fn: () => Promise<T>, options: RetryOptions): Promise<T>;
34
- /**
35
- * Exactly three things get better by waiting: a rate limit, a server-side
36
- * failure, and a dropped connection. A 401 needs a new token, a 403 needs
37
- * permission, a 404 needs a different path. None of those are retried.
38
- */
39
- export declare function isRetryableFailure(error: unknown): boolean;
40
- /** The Retry-After a 429 carried, in milliseconds, or undefined. */
41
- export declare function retryAfterMsFrom(error: unknown): number | undefined;
42
- //# sourceMappingURL=retry.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"retry.d.ts","sourceRoot":"","sources":["../../src/api/retry.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH;;;;;;;;;;GAUG;AAEH,MAAM,WAAW,WAAW;IAC1B,qDAAqD;IACrD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0EAA0E;IAC1E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6EAA6E;IAC7E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,uDAAuD;IACvD,MAAM,CAAC,EAAE,MAAM,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,YAAa,SAAQ,WAAW;IAC/C,WAAW,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC;IACzC,mEAAmE;IACnE,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,MAAM,GAAG,SAAS,CAAC;CACvD;AAOD,wBAAsB,SAAS,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,CAAC,CAAC,CA4B1F;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAI1D;AAED,oEAAoE;AACpE,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAKnE"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"retry.js","sourceRoot":"","sources":["../../src/api/retry.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAgCrE,MAAM,eAAe,GAAG,GAAG,CAAC;AAE5B,MAAM,YAAY,GAAG,CAAC,EAAU,EAAiB,EAAE,CACjD,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAEpD,MAAM,CAAC,KAAK,UAAU,SAAS,CAAI,EAAoB,EAAE,OAAqB;IAC5E,MAAM,EACJ,WAAW,GAAG,CAAC,EACf,SAAS,GAAG,GAAG,EACf,KAAK,GAAG,IAAI,EACZ,KAAK,GAAG,YAAY,EACpB,MAAM,GAAG,IAAI,CAAC,MAAM,EACpB,WAAW,EACX,YAAY,GACb,GAAG,OAAO,CAAC;IAEZ,KAAK,IAAI,OAAO,GAAG,CAAC,GAAI,OAAO,EAAE,EAAE,CAAC;QAClC,IAAI,CAAC;YACH,OAAO,MAAM,EAAE,EAAE,CAAC;QACpB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,OAAO,IAAI,WAAW,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;gBAAE,MAAM,KAAK,CAAC;YAE/D,MAAM,SAAS,GAAG,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC;YACxC,IAAI,KAAa,CAAC;YAClB,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;gBAC5B,KAAK,GAAG,SAAS,CAAC;YACpB,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,GAAG,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;gBAC7D,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,GAAG,eAAe,GAAG,MAAM,EAAE,CAAC,CAAC;YAC/D,CAAC;YACD,MAAM,KAAK,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,KAAc;IAC/C,IAAI,KAAK,YAAY,cAAc;QAAE,OAAO,IAAI,CAAC;IACjD,IAAI,KAAK,YAAY,QAAQ;QAAE,OAAO,KAAK,CAAC,MAAM,IAAI,GAAG,IAAI,KAAK,CAAC,MAAM,IAAI,GAAG,CAAC;IACjF,OAAO,KAAK,YAAY,YAAY,CAAC;AACvC,CAAC;AAED,oEAAoE;AACpE,MAAM,UAAU,gBAAgB,CAAC,KAAc;IAC7C,IAAI,KAAK,YAAY,cAAc,IAAI,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ,IAAI,KAAK,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC;QACpG,OAAO,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC;IACjC,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC"}
@@ -1,39 +0,0 @@
1
- /**
2
- * Purdue Brightspace MCP Server
3
- * Copyright (c) 2026 Rohan Muppa. All rights reserved.
4
- * Licensed under MIT — see LICENSE file for details.
5
- */
6
- import type { TokenData } from "../types/index.js";
7
- import type { TokenManager } from "../auth/token-manager.js";
8
- import type { RetryConfig } from "./retry.js";
9
- export interface ApiVersions {
10
- lp: string;
11
- le: string;
12
- }
13
- export interface CacheTTLs {
14
- enrollments: number;
15
- courseContent: number;
16
- announcements: number;
17
- grades: number;
18
- assignments: number;
19
- roster: number;
20
- profile: number;
21
- }
22
- export declare const DEFAULT_CACHE_TTLS: CacheTTLs;
23
- export interface RateLimitConfig {
24
- capacity: number;
25
- refillRate: number;
26
- }
27
- export interface D2LApiClientOptions {
28
- baseUrl: string;
29
- tokenManager: TokenManager;
30
- cacheTTLs?: Partial<CacheTTLs>;
31
- rateLimitConfig?: RateLimitConfig;
32
- timeoutMs?: number;
33
- /** Called when auth is expired and retries are exhausted. Return true if re-auth succeeded. */
34
- onAuthExpired?: () => Promise<boolean>;
35
- /** Backoff for 429, 5xx, and network failures. See retry.ts for defaults. */
36
- retry?: RetryConfig;
37
- }
38
- export type { TokenData };
39
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/api/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAG9C,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;CACZ;AAGD,MAAM,WAAW,SAAS;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB;AAGD,eAAO,MAAM,kBAAkB,EAAE,SAQhC,CAAC;AAGF,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;CACpB;AAGD,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,YAAY,CAAC;IAC3B,SAAS,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IAC/B,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,+FAA+F;IAC/F,aAAa,CAAC,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IACvC,6EAA6E;IAC7E,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB;AAGD,YAAY,EAAE,SAAS,EAAE,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/api/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAuBH,uCAAuC;AACvC,MAAM,CAAC,MAAM,kBAAkB,GAAc;IAC3C,WAAW,EAAE,SAAS,EAAE,SAAS;IACjC,aAAa,EAAE,SAAS,EAAE,SAAS;IACnC,aAAa,EAAE,OAAO,EAAE,QAAQ;IAChC,MAAM,EAAE,OAAO,EAAE,QAAQ;IACzB,WAAW,EAAE,OAAO,EAAE,SAAS;IAC/B,MAAM,EAAE,SAAS,EAAE,SAAS;IAC5B,OAAO,EAAE,SAAS,EAAE,SAAS;CAC9B,CAAC"}
@@ -1,16 +0,0 @@
1
- /**
2
- * Purdue Brightspace MCP Server
3
- * Copyright (c) 2026 Rohan Muppa. All rights reserved.
4
- * Licensed under MIT — see LICENSE file for details.
5
- */
6
- import type { ApiVersions } from "./types.js";
7
- /**
8
- * Auto-discover D2L API versions from the public /d2l/api/versions/ endpoint.
9
- *
10
- * @param baseUrl - Base URL of the D2L instance (e.g., "https://purdue.brightspace.com")
11
- * @param timeoutMs - Request timeout in milliseconds (default: 15000)
12
- * @returns Object with discovered LP and LE versions
13
- * @throws NetworkError if fetch fails or versions cannot be parsed
14
- */
15
- export declare function discoverVersions(baseUrl: string, timeoutMs?: number): Promise<ApiVersions>;
16
- //# sourceMappingURL=version-discovery.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"version-discovery.d.ts","sourceRoot":"","sources":["../../src/api/version-discovery.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAS9C;;;;;;;GAOG;AACH,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,MAAM,EACf,SAAS,GAAE,MAAc,GACxB,OAAO,CAAC,WAAW,CAAC,CA0DtB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"version-discovery.js","sourceRoot":"","sources":["../../src/api/version-discovery.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;AAOzC;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,OAAe,EACf,YAAoB,KAAK;IAEzB,MAAM,GAAG,GAAG,GAAG,OAAO,oBAAoB,CAAC;IAE3C,IAAI,CAAC;QACH,GAAG,CAAC,OAAO,EAAE,iCAAiC,GAAG,EAAE,CAAC,CAAC;QAErD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAChC,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,SAAS,CAAC;YACtC,OAAO,EAAE;gBACP,gDAAgD;gBAChD,YAAY,EAAE,uHAAuH;aACtI;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,YAAY,CACpB,wCAAwC,QAAQ,CAAC,MAAM,EAAE,CAC1D,CAAC;QACJ,CAAC;QAED,MAAM,QAAQ,GAAsB,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QAE1D,qEAAqE;QACrE,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,IAAI,CAAC,CAAC;QAC3D,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,IAAI,CAAC,CAAC;QAE3D,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,YAAY,CACpB,yEAAyE,CAC1E,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,YAAY,CACpB,4EAA4E,CAC7E,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAgB;YAC1B,EAAE,EAAE,OAAO,CAAC,aAAa;YACzB,EAAE,EAAE,OAAO,CAAC,aAAa;SAC1B,CAAC;QAEF,GAAG,CAAC,MAAM,EAAE,+BAA+B,MAAM,CAAC,EAAE,QAAQ,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;QAEzE,OAAO,MAAM,CAAC;IAChB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,YAAY,EAAE,CAAC;YAClC,MAAM,KAAK,CAAC;QACd,CAAC;QAED,mEAAmE;QACnE,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,MAAM,IAAI,YAAY,CACpB,oCAAoC,OAAO,EAAE,EAC7C,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAC3C,CAAC;IACJ,CAAC;AACH,CAAC"}
@@ -1,24 +0,0 @@
1
- /**
2
- * How long automatic sign-in pauses after a missed MFA prompt.
3
- *
4
- * Long enough to stop a hot loop of phone prompts, short enough that tapping
5
- * the wrong number costs a coffee break rather than an afternoon. This was
6
- * four hours, which meant one mistyped number disabled background sign-in
7
- * until dinner, with nothing on screen explaining why.
8
- */
9
- export declare const MFA_COOLDOWN_MS: number;
10
- export declare class AuthenticationCooldownError extends Error {
11
- readonly retryAt: number;
12
- readonly code = "AUTH_COOLDOWN";
13
- constructor(retryAt: number);
14
- }
15
- /** Non-secret retry metadata. Call only while holding the authentication lock. */
16
- export declare class AuthCooldown {
17
- private readonly file;
18
- constructor(sessionDir: string);
19
- assertAllowed(): Promise<void>;
20
- recordMfaFailure(): Promise<void>;
21
- clear(): Promise<void>;
22
- private write;
23
- }
24
- //# sourceMappingURL=auth-cooldown.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth-cooldown.d.ts","sourceRoot":"","sources":["../../src/auth/auth-cooldown.ts"],"names":[],"mappings":"AAKA;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe,QAAgB,CAAC;AAE7C,qBAAa,2BAA4B,SAAQ,KAAK;aAExB,OAAO,EAAE,MAAM;IAD3C,QAAQ,CAAC,IAAI,mBAAmB;gBACJ,OAAO,EAAE,MAAM;CAU5C;AAED,kFAAkF;AAClF,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;gBAClB,UAAU,EAAE,MAAM;IAIxB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAY9B,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IAIjC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;YAId,KAAK;CAMpB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth-cooldown.js","sourceRoot":"","sources":["../../src/auth/auth-cooldown.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpD;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;AAE7C,MAAM,OAAO,2BAA4B,SAAQ,KAAK;IAExB;IADnB,IAAI,GAAG,eAAe,CAAC;IAChC,YAA4B,OAAe;QACzC,wEAAwE;QACxE,+CAA+C;QAC/C,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;QACvE,KAAK,CACH,gFAAgF,OAAO,eAAe,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI;YAClI,iDAAiD,YAAY,EAAE,CAChE,CAAC;QAPwB,YAAO,GAAP,OAAO,CAAQ;QAQzC,IAAI,CAAC,IAAI,GAAG,6BAA6B,CAAC;IAC5C,CAAC;CACF;AAED,kFAAkF;AAClF,MAAM,OAAO,YAAY;IACN,IAAI,CAAS;IAC9B,YAAY,UAAkB;QAC5B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,kBAAkB,CAAC,CAAC;IACxD,CAAC;IAED,KAAK,CAAC,aAAa;QACjB,IAAI,OAAe,CAAC;QACpB,IAAI,CAAC;YACH,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACjD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;gBAAE,OAAO;YAC/D,MAAM,KAAK,CAAC;QACd,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAyB,CAAC;QAC3D,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,IAAI,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE;YAAE,MAAM,IAAI,2BAA2B,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC/H,CAAC;IAED,KAAK,CAAC,gBAAgB;QACpB,MAAM,IAAI,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,eAAe,EAAE,CAAC,CAAC;IAC9D,CAAC;IAED,KAAK,CAAC,KAAK;QACT,MAAM,IAAI,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;IACnC,CAAC;IAEO,KAAK,CAAC,KAAK,CAAC,MAA2B;QAC7C,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1E,MAAM,SAAS,GAAG,GAAG,IAAI,CAAC,IAAI,IAAI,UAAU,EAAE,MAAM,CAAC;QACrD,MAAM,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QACnF,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;CACF"}
@@ -1,7 +0,0 @@
1
- export declare class AuthenticationInProgressError extends Error {
2
- readonly code = "AUTH_IN_PROGRESS";
3
- constructor();
4
- }
5
- /** Acquire a process-shared lock without waiting or relying on its age. */
6
- export declare function acquireProcessLock(lockPath: string): Promise<() => Promise<void>>;
7
- //# sourceMappingURL=auth-lock.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth-lock.d.ts","sourceRoot":"","sources":["../../src/auth/auth-lock.ts"],"names":[],"mappings":"AAwCA,qBAAa,6BAA8B,SAAQ,KAAK;IACtD,QAAQ,CAAC,IAAI,sBAAsB;;CAKpC;AA2DD,2EAA2E;AAC3E,wBAAsB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,CAIvF"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth-lock.js","sourceRoot":"","sources":["../../src/auth/auth-lock.ts"],"names":[],"mappings":"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"}
@@ -1,61 +0,0 @@
1
- /**
2
- * Purdue Brightspace MCP Server
3
- * Copyright (c) 2026 Rohan Muppa. All rights reserved.
4
- * Licensed under MIT — see LICENSE file for details.
5
- */
6
- import { AuthError } from "../utils/errors.js";
7
- export type AuthFailureKind = "busy" | "cooldown" | "unsupported" | "secureStorage" | "transport" | "timeout" | "failed" | "mfaPending";
8
- export declare class AuthProcessError extends AuthError {
9
- readonly kind: AuthFailureKind;
10
- /**
11
- * Entra number-match digits, when the failure is "mfaPending". Crossed
12
- * the child process boundary as a strictly-matched stdout marker (see
13
- * MFA_NUMBER_MARKER below) — already bounded to 1-3 digits at the point
14
- * it was scraped from the page, so it is safe to surface verbatim.
15
- */
16
- readonly numberMatch?: string | undefined;
17
- constructor(kind: AuthFailureKind, message: string,
18
- /**
19
- * Entra number-match digits, when the failure is "mfaPending". Crossed
20
- * the child process boundary as a strictly-matched stdout marker (see
21
- * MFA_NUMBER_MARKER below) — already bounded to 1-3 digits at the point
22
- * it was scraped from the page, so it is safe to surface verbatim.
23
- */
24
- numberMatch?: string | undefined);
25
- }
26
- export interface AuthRunnerOptions {
27
- timeoutMs?: number;
28
- onProgress?: (line: string) => void;
29
- }
30
- /**
31
- * Launches the brightspace-auth CLI as a child process to
32
- * re-authenticate when the current session has expired.
33
- *
34
- * The child inherits the parent's resolved environment and working directory,
35
- * so both processes read the same account configuration and .env file.
36
- */
37
- export declare class AuthRunner {
38
- /**
39
- * The login this process already started, if one is still running.
40
- *
41
- * Every tool call funnels here the moment the saved session is gone, and a
42
- * stdio MCP server serves tool calls concurrently. Without a latch, two cold
43
- * calls both see no token and both spawn a login: two browsers racing the
44
- * same cross-process lock, and at Purdue two Authenticator prompts on the
45
- * user's phone for one request. Holding the in-flight Promise makes every
46
- * caller await the same login and read the same outcome.
47
- */
48
- private inFlight;
49
- private readonly scriptPath;
50
- private readonly timeoutMs;
51
- private readonly onProgress?;
52
- constructor(options?: AuthRunnerOptions);
53
- /**
54
- * Authenticate, joining the login this process already started if there is
55
- * one. Returns true on success and throws a useful error on failure.
56
- */
57
- run(): Promise<boolean>;
58
- /** One child process, start to finish. */
59
- private spawnAuth;
60
- }
61
- //# sourceMappingURL=auth-runner.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth-runner.d.ts","sourceRoot":"","sources":["../../src/auth/auth-runner.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAOH,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAoB/C,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,UAAU,GAAG,aAAa,GAAG,eAAe,GAAG,WAAW,GAAG,SAAS,GAAG,QAAQ,GAAG,YAAY,CAAC;AAExI,qBAAa,gBAAiB,SAAQ,SAAS;aAE3B,IAAI,EAAE,eAAe;IAErC;;;;;OAKG;aACa,WAAW,CAAC,EAAE,MAAM;gBARpB,IAAI,EAAE,eAAe,EACrC,OAAO,EAAE,MAAM;IACf;;;;;OAKG;IACa,WAAW,CAAC,EAAE,MAAM,YAAA;CAKvC;AAED,MAAM,WAAW,iBAAiB;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACrC;AAkDD;;;;;;GAMG;AACH,qBAAa,UAAU;IACrB;;;;;;;;;OASG;IACH,OAAO,CAAC,QAAQ,CAAiC;IACjD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAyB;gBAEzC,OAAO,GAAE,iBAAsB;IAQ3C;;;OAGG;IACG,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC;IAkB7B,0CAA0C;YAC5B,SAAS;CAwGxB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth-runner.js","sourceRoot":"","sources":["../../src/auth/auth-runner.ts"],"names":[],"mappings":"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"}