@zackbart/connecta 0.7.9 → 0.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (199) hide show
  1. package/CHANGELOG.md +135 -0
  2. package/README.md +47 -148
  3. package/dist/activity.d.ts +0 -8
  4. package/dist/activity.d.ts.map +1 -1
  5. package/dist/activity.js +0 -1
  6. package/dist/activity.js.map +1 -1
  7. package/dist/auth/bearer.d.ts +1 -7
  8. package/dist/auth/bearer.d.ts.map +1 -1
  9. package/dist/auth/bearer.js +3 -24
  10. package/dist/auth/bearer.js.map +1 -1
  11. package/dist/auth/clerk.d.ts +2 -11
  12. package/dist/auth/clerk.d.ts.map +1 -1
  13. package/dist/auth/clerk.js +31 -46
  14. package/dist/auth/clerk.js.map +1 -1
  15. package/dist/call-admission.d.ts.map +1 -1
  16. package/dist/call-admission.js +9 -4
  17. package/dist/call-admission.js.map +1 -1
  18. package/dist/catalog-fingerprint.d.ts +20 -0
  19. package/dist/catalog-fingerprint.d.ts.map +1 -0
  20. package/dist/catalog-fingerprint.js +34 -0
  21. package/dist/catalog-fingerprint.js.map +1 -0
  22. package/dist/catalog-limits.d.ts +10 -0
  23. package/dist/catalog-limits.d.ts.map +1 -0
  24. package/dist/catalog-limits.js +10 -0
  25. package/dist/catalog-limits.js.map +1 -0
  26. package/dist/catalog-service.d.ts +137 -0
  27. package/dist/catalog-service.d.ts.map +1 -0
  28. package/dist/catalog-service.js +401 -0
  29. package/dist/catalog-service.js.map +1 -0
  30. package/dist/catalog.d.ts +6 -0
  31. package/dist/catalog.d.ts.map +1 -1
  32. package/dist/catalog.js +53 -2
  33. package/dist/catalog.js.map +1 -1
  34. package/dist/concurrency.d.ts +4 -0
  35. package/dist/concurrency.d.ts.map +1 -0
  36. package/dist/concurrency.js +31 -0
  37. package/dist/concurrency.js.map +1 -0
  38. package/dist/connectors/api.d.ts.map +1 -1
  39. package/dist/connectors/api.js +22 -12
  40. package/dist/connectors/api.js.map +1 -1
  41. package/dist/connectors/remote-mcp.d.ts.map +1 -1
  42. package/dist/connectors/remote-mcp.js +53 -41
  43. package/dist/connectors/remote-mcp.js.map +1 -1
  44. package/dist/credentials.d.ts +3 -2
  45. package/dist/credentials.d.ts.map +1 -1
  46. package/dist/errors.d.ts +19 -1
  47. package/dist/errors.d.ts.map +1 -1
  48. package/dist/errors.js.map +1 -1
  49. package/dist/execute.d.ts +10 -16
  50. package/dist/execute.d.ts.map +1 -1
  51. package/dist/execute.js +143 -330
  52. package/dist/execute.js.map +1 -1
  53. package/dist/executor-result.d.ts +0 -3
  54. package/dist/executor-result.d.ts.map +1 -1
  55. package/dist/executor-result.js +3 -3
  56. package/dist/executor-result.js.map +1 -1
  57. package/dist/executors/quickjs-child.js +3 -3
  58. package/dist/executors/quickjs-child.js.map +1 -1
  59. package/dist/executors/quickjs-protocol.d.ts +4 -1
  60. package/dist/executors/quickjs-protocol.d.ts.map +1 -1
  61. package/dist/executors/quickjs-runtime.d.ts.map +1 -1
  62. package/dist/executors/quickjs-runtime.js +7 -2
  63. package/dist/executors/quickjs-runtime.js.map +1 -1
  64. package/dist/executors/quickjs.d.ts.map +1 -1
  65. package/dist/executors/quickjs.js +4 -1
  66. package/dist/executors/quickjs.js.map +1 -1
  67. package/dist/favicon.js +2 -2
  68. package/dist/favicon.js.map +1 -1
  69. package/dist/index.d.ts +8 -82
  70. package/dist/index.d.ts.map +1 -1
  71. package/dist/index.js +58 -104
  72. package/dist/index.js.map +1 -1
  73. package/dist/invocation.d.ts +101 -0
  74. package/dist/invocation.d.ts.map +1 -0
  75. package/dist/invocation.js +405 -0
  76. package/dist/invocation.js.map +1 -0
  77. package/dist/meta-tools.d.ts +9 -95
  78. package/dist/meta-tools.d.ts.map +1 -1
  79. package/dist/meta-tools.js +235 -725
  80. package/dist/meta-tools.js.map +1 -1
  81. package/dist/operator-ui/generated.d.ts +3 -0
  82. package/dist/operator-ui/generated.d.ts.map +1 -0
  83. package/dist/operator-ui/generated.js +5 -0
  84. package/dist/operator-ui/generated.js.map +1 -0
  85. package/dist/operator-ui/model.d.ts +73 -0
  86. package/dist/operator-ui/model.d.ts.map +1 -0
  87. package/dist/operator-ui/model.js +28 -0
  88. package/dist/operator-ui/model.js.map +1 -0
  89. package/dist/registry.d.ts +33 -184
  90. package/dist/registry.d.ts.map +1 -1
  91. package/dist/registry.js +345 -330
  92. package/dist/registry.js.map +1 -1
  93. package/dist/retired-toolkits.d.ts +3 -0
  94. package/dist/retired-toolkits.d.ts.map +1 -0
  95. package/dist/retired-toolkits.js +9 -0
  96. package/dist/retired-toolkits.js.map +1 -0
  97. package/dist/routes/activity.d.ts +3 -0
  98. package/dist/routes/activity.d.ts.map +1 -0
  99. package/dist/routes/activity.js +170 -0
  100. package/dist/routes/activity.js.map +1 -0
  101. package/dist/routes/credentials.d.ts +3 -0
  102. package/dist/routes/credentials.d.ts.map +1 -0
  103. package/dist/routes/credentials.js +170 -0
  104. package/dist/routes/credentials.js.map +1 -0
  105. package/dist/routes/mcp.d.ts +8 -0
  106. package/dist/routes/mcp.d.ts.map +1 -0
  107. package/dist/routes/mcp.js +270 -0
  108. package/dist/routes/mcp.js.map +1 -0
  109. package/dist/routes/oauth.d.ts +4 -0
  110. package/dist/routes/oauth.d.ts.map +1 -0
  111. package/dist/routes/oauth.js +263 -0
  112. package/dist/routes/oauth.js.map +1 -0
  113. package/dist/routes/shared.d.ts +76 -0
  114. package/dist/routes/shared.d.ts.map +1 -0
  115. package/dist/routes/shared.js +140 -0
  116. package/dist/routes/shared.js.map +1 -0
  117. package/dist/routes/ui.d.ts +3 -0
  118. package/dist/routes/ui.d.ts.map +1 -0
  119. package/dist/routes/ui.js +116 -0
  120. package/dist/routes/ui.js.map +1 -0
  121. package/dist/server.d.ts +9 -40
  122. package/dist/server.d.ts.map +1 -1
  123. package/dist/server.js +62 -1322
  124. package/dist/server.js.map +1 -1
  125. package/dist/skills.d.ts +3 -21
  126. package/dist/skills.d.ts.map +1 -1
  127. package/dist/skills.js +15 -43
  128. package/dist/skills.js.map +1 -1
  129. package/dist/storage/file.d.ts.map +1 -1
  130. package/dist/storage/file.js +3 -1
  131. package/dist/storage/file.js.map +1 -1
  132. package/dist/storage/memory.d.ts.map +1 -1
  133. package/dist/storage/memory.js +3 -1
  134. package/dist/storage/memory.js.map +1 -1
  135. package/dist/timeout.d.ts.map +1 -1
  136. package/dist/timeout.js +2 -4
  137. package/dist/timeout.js.map +1 -1
  138. package/dist/types.d.ts +9 -59
  139. package/dist/types.d.ts.map +1 -1
  140. package/dist/ui.d.ts +3 -94
  141. package/dist/ui.d.ts.map +1 -1
  142. package/dist/ui.js +30 -1427
  143. package/dist/ui.js.map +1 -1
  144. package/dist/version.d.ts +1 -1
  145. package/dist/version.js +1 -1
  146. package/package.json +15 -8
  147. package/src/activity.ts +0 -9
  148. package/src/auth/bearer.ts +4 -33
  149. package/src/auth/clerk.ts +35 -48
  150. package/src/call-admission.ts +8 -6
  151. package/src/catalog-fingerprint.ts +52 -0
  152. package/src/catalog-limits.ts +11 -0
  153. package/src/catalog-service.ts +601 -0
  154. package/src/catalog.ts +57 -2
  155. package/src/concurrency.ts +39 -0
  156. package/src/connectors/api.ts +22 -12
  157. package/src/connectors/remote-mcp.ts +63 -45
  158. package/src/credentials.ts +2 -2
  159. package/src/errors.ts +21 -1
  160. package/src/execute.ts +193 -423
  161. package/src/executor-result.ts +3 -3
  162. package/src/executors/quickjs-child.ts +8 -4
  163. package/src/executors/quickjs-protocol.ts +1 -1
  164. package/src/executors/quickjs-runtime.ts +5 -1
  165. package/src/executors/quickjs.ts +11 -8
  166. package/src/favicon.ts +2 -2
  167. package/src/index.ts +70 -222
  168. package/src/invocation.ts +580 -0
  169. package/src/meta-tools.ts +393 -985
  170. package/src/operator-ui/browser.css +360 -0
  171. package/src/operator-ui/browser.ts +987 -0
  172. package/src/operator-ui/generated.ts +4 -0
  173. package/src/operator-ui/model.ts +105 -0
  174. package/src/registry.ts +459 -439
  175. package/src/retired-toolkits.ts +14 -0
  176. package/src/routes/activity.ts +215 -0
  177. package/src/routes/credentials.ts +254 -0
  178. package/src/routes/mcp.ts +339 -0
  179. package/src/routes/oauth.ts +322 -0
  180. package/src/routes/shared.ts +240 -0
  181. package/src/routes/ui.ts +143 -0
  182. package/src/server.ts +64 -1731
  183. package/src/skills.ts +15 -43
  184. package/src/storage/file.ts +3 -1
  185. package/src/storage/memory.ts +3 -1
  186. package/src/timeout.ts +2 -4
  187. package/src/types.ts +8 -60
  188. package/src/ui.ts +60 -1538
  189. package/src/version.ts +1 -1
  190. package/dist/credential-health.d.ts +0 -227
  191. package/dist/credential-health.d.ts.map +0 -1
  192. package/dist/credential-health.js +0 -606
  193. package/dist/credential-health.js.map +0 -1
  194. package/dist/toolkits.d.ts +0 -146
  195. package/dist/toolkits.d.ts.map +0 -1
  196. package/dist/toolkits.js +0 -322
  197. package/dist/toolkits.js.map +0 -1
  198. package/src/credential-health.ts +0 -832
  199. package/src/toolkits.ts +0 -461
package/dist/index.js CHANGED
@@ -2,7 +2,6 @@ import { CredentialVault, credentialTestRule, describeCredentialTestMismatch, }
2
2
  import { Registry } from "./registry.js";
3
3
  import { createFetchHandler } from "./server.js";
4
4
  import { droppedBrandingUrls, droppedUiAuthUrls } from "./ui.js";
5
- import { resolveToolkits, validateToolkitBindings, } from "./toolkits.js";
6
5
  import { memoryStorage } from "./storage/memory.js";
7
6
  import { CONNECTA_VERSION } from "./version.js";
8
7
  import { AdmissionController, isAdmittingExecutor, withExecutorAdmission, } from "./executor-admission.js";
@@ -46,7 +45,6 @@ const LEGACY_CONFIG_MIGRATIONS = [
46
45
  ["activityReadGate", "activity.readGate"],
47
46
  ["activityDeploymentId", "activity.deploymentId"],
48
47
  ["credentialEncryptionKey", "credentials.encryptionKey"],
49
- ["credentialHealth", "credentials.health"],
50
48
  ["toolCacheTtlSeconds", "discovery.catalogTtlSeconds"],
51
49
  ["persistToolCatalog", "discovery.persistCatalog"],
52
50
  ["toolCatalogStaleSeconds", "discovery.staleCatalogSeconds"],
@@ -62,6 +60,18 @@ const hasOwn = (value, key) => Object.prototype.hasOwnProperty.call(value, key);
62
60
  */
63
61
  function assertNoLegacyConfig(config) {
64
62
  const candidate = config;
63
+ if (hasOwn(candidate, "toolkits")) {
64
+ throw new Error("ConnectaConfig.toolkits was removed in issue #178. Deploy one " +
65
+ "connecta instance per audience instead; see ethos.md.");
66
+ }
67
+ const credentials = candidate.credentials;
68
+ const hasNestedHealth = typeof credentials === "object" &&
69
+ credentials !== null &&
70
+ hasOwn(credentials, "health");
71
+ if (hasOwn(candidate, "credentialHealth") || hasNestedHealth) {
72
+ throw new Error("`credentials.health` and legacy `credentialHealth` were removed in " +
73
+ "issue #179. Credentials now fail at use; see ethos.md.");
74
+ }
65
75
  const found = [];
66
76
  if (hasOwn(candidate, "activity")) {
67
77
  const activity = candidate.activity;
@@ -93,7 +103,7 @@ function assertNoLegacyConfig(config) {
93
103
  * each deployment-wide condition emits at most one `logger.warn`, and each
94
104
  * per-connector condition at most one per connector it names.
95
105
  */
96
- function warnInsecureConfig(config, inboundAuth, toolkits, logger) {
106
+ function warnInsecureConfig(config, inboundAuth, logger) {
97
107
  const oauthConnectors = config.connectors.filter((c) => c.finishAuth);
98
108
  const hasCredentialConnector = config.connectors.some((c) => c.credential);
99
109
  // Open mode (no inbound auth) with connectors that expose credentials or
@@ -113,59 +123,6 @@ function warnInsecureConfig(config, inboundAuth, toolkits, logger) {
113
123
  "it at their own host and capture the authorization code. Set " +
114
124
  "`publicUrl` to a fixed https origin.");
115
125
  }
116
- // Toolkits that nothing binds to an identity: selection is then self-service,
117
- // and the boundary organizes the surface rather than protecting it. Three
118
- // distinct shapes, so three distinct warnings — an operator can only act on
119
- // the one they are actually in.
120
- //
121
- // All are keyed off the RESOLVED toolkits, which is the same map `?toolkit=`
122
- // resolves against, rather than the presence of the config key: `toolkits: {}`
123
- // is a truthy object that resolves to nothing selectable, so warning about a
124
- // choice no caller can make would name a risk that does not exist.
125
- if (toolkits) {
126
- const unbound = inboundAuth.filter((provider) => !provider.toolkitBinding);
127
- if (inboundAuth.length === 0) {
128
- // No auth at all ⇒ no identity exists to bind, so binding is not even the
129
- // fix here. The open-mode warning above covers the wider exposure.
130
- logger.warn("[connecta] toolkits are configured but there is no inbound " +
131
- "authentication: with no identity to bind a toolkit to, any caller " +
132
- "can choose any toolkit or omit ?toolkit= and see every connector. " +
133
- "Configure `auth` (for example bearerToken(...) or Clerk), then bind " +
134
- "each credential with `toolkits: [...]`.");
135
- }
136
- else if (unbound.length === inboundAuth.length) {
137
- // Authenticated, but every credential may still select every view. This is
138
- // the shape issue #37 exists to close, and it is invisible without a line
139
- // saying so: nothing fails, the teams are simply not separated.
140
- logger.warn("[connecta] toolkits are configured but no inbound identity is bound " +
141
- "to one: every credential `auth` admits can select any toolkit, or " +
142
- "omit ?toolkit= and see the whole deployment, so a token handed to " +
143
- "one team also opens the others' views. Bind each credential with " +
144
- "`toolkits: [...]` on its auth adapter (add `unscoped: true` for an " +
145
- "operator credential that should still see everything).");
146
- }
147
- else if (unbound.length > 0) {
148
- // The dangerous middle: SOME credentials are bound, which is exactly when
149
- // an operator believes the deployment is separated — while one forgotten
150
- // provider still opens every view and the whole deployment-wide surface.
151
- // Naming the unbound providers is the point; an intentionally unrestricted
152
- // credential says so with `unscoped: true` and stops appearing here.
153
- const counted = new Map();
154
- for (const provider of unbound) {
155
- counted.set(provider.kind, (counted.get(provider.kind) ?? 0) + 1);
156
- }
157
- const named = [...counted]
158
- .map(([kind, count]) => (count > 1 ? `${kind} x${count}` : kind))
159
- .join(", ");
160
- logger.warn(`[connecta] toolkits are bound on some inbound auth providers but not ` +
161
- `all: ${named} ${unbound.length === 1 ? "declares" : "declare"} no ` +
162
- "binding, so a caller that provider admits can still select any " +
163
- "toolkit, connect unscoped, and read the deployment-wide operator " +
164
- "surfaces — whatever the bound credentials beside it allow. Bind it " +
165
- "too, or declare the exemption with `toolkits: [...], unscoped: true` " +
166
- "if it is meant to be an operator credential.");
167
- }
168
- }
169
126
  // Branding URLs that failed their scheme gate. Rendering silently falls back
170
127
  // (a bad URL must not take the page down), so this warning is the only way an
171
128
  // operator learns their value never reached the page.
@@ -231,7 +188,9 @@ export function createConnecta(config) {
231
188
  const credentialConnectors = config.connectors.filter((c) => c.credential);
232
189
  const encryptionKey = config.credentials?.encryptionKey;
233
190
  if (credentialConnectors.length > 0 && !encryptionKey) {
234
- throw new Error(`credentials.encryptionKey is required by connector credentials: ${credentialConnectors.map((c) => c.id).join(", ")}`);
191
+ logger.warn("Operator-managed credentials are unavailable because " +
192
+ "credentials.encryptionKey is not configured for connectors: " +
193
+ credentialConnectors.map((c) => c.id).join(", "));
235
194
  }
236
195
  const credentialVault = encryptionKey
237
196
  ? new CredentialVault(storage, encryptionKey)
@@ -239,25 +198,25 @@ export function createConnecta(config) {
239
198
  const registry = new Registry(config.connectors, {
240
199
  storage,
241
200
  logger,
242
- credentialVault,
243
- toolCacheTtlSeconds: config.discovery?.catalogTtlSeconds,
244
- persistToolCatalog: config.discovery?.persistCatalog,
245
- toolCatalogStaleSeconds: config.discovery?.staleCatalogSeconds,
246
- maxResultBytes: config.calls?.maxResultBytes,
247
- maxBatchResultBytes: config.calls?.maxBatchResultBytes,
248
- credentialHealth: config.credentials?.health,
201
+ ...(credentialVault !== undefined ? { credentialVault } : {}),
202
+ ...(config.discovery?.catalogTtlSeconds !== undefined
203
+ ? { toolCacheTtlSeconds: config.discovery.catalogTtlSeconds }
204
+ : {}),
205
+ ...(config.discovery?.persistCatalog !== undefined
206
+ ? { persistToolCatalog: config.discovery.persistCatalog }
207
+ : {}),
208
+ ...(config.discovery?.staleCatalogSeconds !== undefined
209
+ ? { toolCatalogStaleSeconds: config.discovery.staleCatalogSeconds }
210
+ : {}),
211
+ ...(config.calls?.maxResultBytes !== undefined
212
+ ? { maxResultBytes: config.calls.maxResultBytes }
213
+ : {}),
214
+ ...(config.calls?.maxBatchResultBytes !== undefined
215
+ ? { maxBatchResultBytes: config.calls.maxBatchResultBytes }
216
+ : {}),
249
217
  });
250
- // Throws on every structural mistake it can see (see resolveToolkits): a
251
- // typo must not become a scope the operator never wrote. Note this is about
252
- // the scope being *intended*, not about it being an access check — a toolkit
253
- // scopes visibility, and `auth` remains the thing deciding who gets in.
254
- const toolkits = resolveToolkits(config.toolkits, config.connectors);
255
218
  const inboundAuth = normalizeAuth(config.auth);
256
- // Same contract for the identity half: a binding that names a toolkit this
257
- // deployment does not declare would deny that credential every connection,
258
- // with a 403 its client reports as a transport failure. Throw here instead.
259
- validateToolkitBindings(inboundAuth, toolkits);
260
- warnInsecureConfig(config, inboundAuth, toolkits, logger);
219
+ warnInsecureConfig(config, inboundAuth, logger);
261
220
  const requestAdmission = admissionController(config.admission?.requests, REQUEST_ADMISSION_DEFAULTS);
262
221
  const configuredCodeAdmission = admissionController(config.admission?.code, CODE_ADMISSION_DEFAULTS);
263
222
  let codeAdmission;
@@ -274,24 +233,38 @@ export function createConnecta(config) {
274
233
  const handler = createFetchHandler({
275
234
  registry,
276
235
  auth: inboundAuth,
277
- publicUrl: config.publicUrl,
236
+ ...(config.publicUrl !== undefined ? { publicUrl: config.publicUrl } : {}),
278
237
  serverInfo: {
279
238
  ...config.serverInfo,
280
239
  name: config.serverInfo?.name ?? "connecta",
281
240
  version: config.serverInfo?.version ?? CONNECTA_VERSION,
282
241
  },
283
242
  logger,
284
- activity: config.activity?.store,
285
- activityReadGate: config.activity?.readGate,
286
- activityDeploymentId: config.activity?.deploymentId,
287
- executor,
243
+ ...(config.activity?.store !== undefined
244
+ ? { activity: config.activity.store }
245
+ : {}),
246
+ ...(config.activity?.readGate !== undefined
247
+ ? { activityReadGate: config.activity.readGate }
248
+ : {}),
249
+ ...(config.activity?.deploymentId !== undefined
250
+ ? { activityDeploymentId: config.activity.deploymentId }
251
+ : {}),
252
+ ...(executor !== undefined ? { executor } : {}),
288
253
  requestAdmission,
289
- defaultToolTimeoutMs: config.calls?.defaultTimeoutMs,
290
- probeTimeoutMs: config.discovery?.probeTimeoutMs,
291
- credentialVault,
292
- deploymentInfo: config.deploymentInfo,
293
- branding: config.branding,
294
- ...(toolkits ? { toolkits } : {}),
254
+ ...(config.calls?.defaultTimeoutMs !== undefined
255
+ ? { defaultToolTimeoutMs: config.calls.defaultTimeoutMs }
256
+ : {}),
257
+ ...(config.discovery?.probeTimeoutMs !== undefined
258
+ ? { probeTimeoutMs: config.discovery.probeTimeoutMs }
259
+ : {}),
260
+ ...(config.discovery?.concurrency !== undefined
261
+ ? { discoveryConcurrency: config.discovery.concurrency }
262
+ : {}),
263
+ ...(credentialVault !== undefined ? { credentialVault } : {}),
264
+ ...(config.deploymentInfo !== undefined
265
+ ? { deploymentInfo: config.deploymentInfo }
266
+ : {}),
267
+ ...(config.branding !== undefined ? { branding: config.branding } : {}),
295
268
  });
296
269
  let closePromise;
297
270
  return {
@@ -299,25 +272,6 @@ export function createConnecta(config) {
299
272
  ? ctx
300
273
  : undefined),
301
274
  registry,
302
- checkCredentials: (opts = {}) => {
303
- // A scheduled check has no inbound request to derive an origin from, and
304
- // a connector context without one would mint OAuth redirect URIs against
305
- // a guess. Say so instead: the fix is one config line.
306
- const baseUrl = opts.baseUrl ?? config.publicUrl;
307
- if (!baseUrl) {
308
- // Rejected, not thrown: the callers this is written for are
309
- // `ctx.waitUntil(...)` and `.catch(...)` on the returned promise, and a
310
- // synchronous throw escapes both — it would take down a scheduled
311
- // handler instead of being reported by it.
312
- return Promise.reject(new Error("checkCredentials() needs a base URL: set `publicUrl` on the " +
313
- "config (recommended — it is also what downstream OAuth " +
314
- "callbacks use) or pass checkCredentials({ baseUrl })."));
315
- }
316
- return registry.checkCredentialHealth(baseUrl, {
317
- ...(opts.force !== undefined ? { force: opts.force } : {}),
318
- ...(opts.ids ? { ids: opts.ids } : {}),
319
- }, opts.defer);
320
- },
321
275
  close: async () => {
322
276
  closePromise ??= Promise.resolve().then(async () => {
323
277
  requestAdmission.close();
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,kBAAkB,EAClB,8BAA8B,GAC/B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,GACtB,MAAM,yBAAyB,CAAC;AA6KjC,MAAM,0BAA0B,GAAG;IACjC,WAAW,EAAE,EAAE;IACf,YAAY,EAAE,EAAE;IAChB,cAAc,EAAE,KAAK;IACrB,YAAY,EAAE,KAAK;CACX,CAAC;AAEX,MAAM,uBAAuB,GAAG;IAC9B,WAAW,EAAE,CAAC;IACd,YAAY,EAAE,CAAC;IACf,cAAc,EAAE,KAAK;IACrB,YAAY,EAAE,KAAK;CACX,CAAC;AAEX,SAAS,mBAAmB,CAC1B,OAAwC,EACxC,QAA4E;IAE5E,OAAO,IAAI,mBAAmB,CAAC;QAC7B,WAAW,EAAE,OAAO,EAAE,WAAW,IAAI,QAAQ,CAAC,WAAW;QACzD,YAAY,EAAE,OAAO,EAAE,YAAY,IAAI,QAAQ,CAAC,YAAY;QAC5D,cAAc,EAAE,OAAO,EAAE,cAAc,IAAI,QAAQ,CAAC,cAAc;QAClE,YAAY,EAAE,OAAO,EAAE,YAAY,IAAI,QAAQ,CAAC,YAAY;KAC7D,CAAC,CAAC;AACL,CAAC;AAED,SAAS,aAAa;IACpB,OAAO;QACL,KAAK,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;QAClD,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;QAChD,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;QAChD,KAAK,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;KACnD,CAAC;AACJ,CAAC;AAED,4DAA4D;AAC5D,SAAS,aAAa,CAAC,IAA4B;IACjD,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/D,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QAC7B,MAAM,IAAI,GAAG,CAAC,CAAc,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/D,OAAO,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,wBAAwB,GAAG;IAC/B,CAAC,kBAAkB,EAAE,mBAAmB,CAAC;IACzC,CAAC,sBAAsB,EAAE,uBAAuB,CAAC;IACjD,CAAC,yBAAyB,EAAE,2BAA2B,CAAC;IACxD,CAAC,qBAAqB,EAAE,6BAA6B,CAAC;IACtD,CAAC,oBAAoB,EAAE,0BAA0B,CAAC;IAClD,CAAC,yBAAyB,EAAE,+BAA+B,CAAC;IAC5D,CAAC,gBAAgB,EAAE,0BAA0B,CAAC;IAC9C,CAAC,sBAAsB,EAAE,wBAAwB,CAAC;IAClD,CAAC,gBAAgB,EAAE,sBAAsB,CAAC;CAClC,CAAC;AAEX,MAAM,MAAM,GAAG,CAAC,KAAa,EAAE,GAAgB,EAAW,EAAE,CAC1D,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAEnD;;;;GAIG;AACH,SAAS,oBAAoB,CAAC,MAAsB;IAClD,MAAM,SAAS,GAAG,MAAiD,CAAC;IACpE,IAAI,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CACb,gEAAgE;YAC9D,uDAAuD,CAC1D,CAAC;IACJ,CAAC;IACD,MAAM,WAAW,GAAG,SAAS,CAAC,WAAW,CAAC;IAC1C,MAAM,eAAe,GACnB,OAAO,WAAW,KAAK,QAAQ;QAC/B,WAAW,KAAK,IAAI;QACpB,MAAM,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IAChC,IAAI,MAAM,CAAC,SAAS,EAAE,kBAAkB,CAAC,IAAI,eAAe,EAAE,CAAC;QAC7D,MAAM,IAAI,KAAK,CACb,qEAAqE;YACnE,wDAAwD,CAC3D,CAAC;IACJ,CAAC;IACD,MAAM,KAAK,GAAqC,EAAE,CAAC;IACnD,IAAI,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,EAAE,CAAC;QAClC,MAAM,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC;QACpC,MAAM,QAAQ,GACZ,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,IAAI,CAAC;QACpD,2EAA2E;QAC3E,wEAAwE;QACxE,yDAAyD;QACzD,MAAM,eAAe,GACnB,QAAQ;YACR,OAAQ,QAAiC,CAAC,MAAM,KAAK,UAAU,CAAC;QAClE,IACE,QAAQ,KAAK,SAAS;YACtB,CAAC,CAAC,QAAQ;gBACR,eAAe;gBACf,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,EAC7B,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC;IACD,KAAK,MAAM,SAAS,IAAI,wBAAwB,EAAE,CAAC;QACjD,IAAI,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC7D,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAC/B,MAAM,IAAI,KAAK,CACb,4EAA4E;QAC1E,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,KAAK,OAAO,OAAO,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAC7E,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,SAAS,kBAAkB,CACzB,MAAsB,EACtB,WAA0B,EAC1B,MAAc;IAEd,MAAM,eAAe,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IACtE,MAAM,sBAAsB,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IAE3E,yEAAyE;IACzE,wEAAwE;IACxE,IACE,WAAW,CAAC,MAAM,KAAK,CAAC;QACxB,CAAC,sBAAsB,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,EACtD,CAAC;QACD,MAAM,CAAC,IAAI,CACT,oEAAoE;YAClE,mEAAmE;YACnE,0EAA0E,CAC7E,CAAC;IACJ,CAAC;IAED,wEAAwE;IACxE,wEAAwE;IACxE,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;QACpD,MAAM,CAAC,IAAI,CACT,uEAAuE;YACrE,oEAAoE;YACpE,yEAAyE;YACzE,+DAA+D;YAC/D,sCAAsC,CACzC,CAAC;IACJ,CAAC;IAED,6EAA6E;IAC7E,8EAA8E;IAC9E,sDAAsD;IACtD,MAAM,OAAO,GAAG,mBAAmB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACrD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,MAAM,CAAC,IAAI,CACT,uBAAuB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,8BAA8B;YACrE,uEAAuE;YACvE,qEAAqE,CACxE,CAAC;IACJ,CAAC;IAED,6EAA6E;IAC7E,uEAAuE;IACvE,oEAAoE;IACpE,6EAA6E;IAC7E,8EAA8E;IAC9E,2EAA2E;IAC3E,8EAA8E;IAC9E,0EAA0E;IAC1E,4EAA4E;IAC5E,iBAAiB;IACjB,MAAM,cAAc,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACvE,MAAM,aAAa,GAAG,iBAAiB,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;IAChE,IAAI,cAAc,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/C,MAAM,CAAC,IAAI,CACT,qCAAqC,cAAc,CAAC,IAAI,QAAQ;YAC9D,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,yCAAyC;YACpE,sEAAsE;YACtE,kEAAkE;YAClE,uFAAuF;YACvF,wEAAwE;YACxE,uCAAuC,CAC1C,CAAC;IACJ,CAAC;IAED,yEAAyE;IACzE,2EAA2E;IAC3E,qFAAqF;IACrF,2EAA2E;IAC3E,8DAA8D;IAC9D,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;QAC1C,MAAM,EAAE,QAAQ,EAAE,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;QACnD,IAAI,CAAC,QAAQ;YAAE,SAAS;QACxB,MAAM,CAAC,IAAI,CACT,yBAAyB,SAAS,CAAC,EAAE,gCAAgC;YACnE,GAAG,8BAA8B,CAAC,QAAQ,CAAC,gCAAgC;YAC3E,mCAAmC,SAAS,CAAC,EAAE,oBAAoB;YACnE,yCAAyC,CAC5C,CAAC;IACJ,CAAC;IAED,yEAAyE;IACzE,4EAA4E;IAC5E,6EAA6E;IAC7E,qEAAqE;IACrE,KAAK,MAAM,SAAS,IAAI,eAAe,EAAE,CAAC;QACxC,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;YAC3B,MAAM,CAAC,IAAI,CACT,yBAAyB,SAAS,CAAC,EAAE,kCAAkC;gBACrE,qCAAqC,SAAS,CAAC,EAAE,iBAAiB;gBAClE,8DAA8D;gBAC9D,iEAAiE;gBACjE,0BAA0B,CAC7B,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,MAAsB;IACnD,oBAAoB,CAAC,MAAM,CAAC,CAAC;IAC7B,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,aAAa,EAAE,CAAC;IAClD,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,aAAa,EAAE,CAAC;IAChD,MAAM,oBAAoB,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IAC3E,MAAM,aAAa,GAAG,MAAM,CAAC,WAAW,EAAE,aAAa,CAAC;IACxD,IAAI,oBAAoB,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;QACtD,MAAM,CAAC,IAAI,CACT,uDAAuD;YACrD,8DAA8D;YAC9D,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CACnD,CAAC;IACJ,CAAC;IACD,MAAM,eAAe,GAAG,aAAa;QACnC,CAAC,CAAC,IAAI,eAAe,CAAC,OAAO,EAAE,aAAa,CAAC;QAC7C,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,UAAU,EAAE;QAC/C,OAAO;QACP,MAAM;QACN,GAAG,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7D,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,iBAAiB,KAAK,SAAS;YACnD,CAAC,CAAC,EAAE,mBAAmB,EAAE,MAAM,CAAC,SAAS,CAAC,iBAAiB,EAAE;YAC7D,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,cAAc,KAAK,SAAS;YAChD,CAAC,CAAC,EAAE,kBAAkB,EAAE,MAAM,CAAC,SAAS,CAAC,cAAc,EAAE;YACzD,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,mBAAmB,KAAK,SAAS;YACrD,CAAC,CAAC,EAAE,uBAAuB,EAAE,MAAM,CAAC,SAAS,CAAC,mBAAmB,EAAE;YACnE,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,cAAc,KAAK,SAAS;YAC5C,CAAC,CAAC,EAAE,cAAc,EAAE,MAAM,CAAC,KAAK,CAAC,cAAc,EAAE;YACjD,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,mBAAmB,KAAK,SAAS;YACjD,CAAC,CAAC,EAAE,mBAAmB,EAAE,MAAM,CAAC,KAAK,CAAC,mBAAmB,EAAE;YAC3D,CAAC,CAAC,EAAE,CAAC;KACR,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC/C,kBAAkB,CAAC,MAAM,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;IAChD,MAAM,gBAAgB,GAAG,mBAAmB,CAC1C,MAAM,CAAC,SAAS,EAAE,QAAQ,EAC1B,0BAA0B,CAC3B,CAAC;IACF,MAAM,uBAAuB,GAAG,mBAAmB,CACjD,MAAM,CAAC,SAAS,EAAE,IAAI,EACtB,uBAAuB,CACxB,CAAC;IACF,IAAI,aAA8C,CAAC;IACnD,IAAI,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;IAC/B,IAAI,QAAQ,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC/C,aAAa,GAAG,uBAAuB,CAAC;QACxC,QAAQ,GAAG,qBAAqB,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IAC5D,CAAC;SAAM,IAAI,QAAQ,IAAI,MAAM,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC;QAC9C,MAAM,CAAC,IAAI,CACT,uEAAuE;YACrE,mEAAmE;YACnE,mDAAmD,CACtD,CAAC;IACJ,CAAC;IACD,MAAM,OAAO,GAAG,kBAAkB,CAAC;QACjC,QAAQ;QACR,IAAI,EAAE,WAAW;QACjB,GAAG,CAAC,MAAM,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1E,UAAU,EAAE;YACV,GAAG,MAAM,CAAC,UAAU;YACpB,IAAI,EAAE,MAAM,CAAC,UAAU,EAAE,IAAI,IAAI,UAAU;YAC3C,OAAO,EAAE,MAAM,CAAC,UAAU,EAAE,OAAO,IAAI,gBAAgB;SACxD;QACD,MAAM;QACN,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,KAAK,SAAS;YACtC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE;YACrC,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,QAAQ,KAAK,SAAS;YACzC,CAAC,CAAC,EAAE,gBAAgB,EAAE,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE;YAChD,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,YAAY,KAAK,SAAS;YAC7C,CAAC,CAAC,EAAE,oBAAoB,EAAE,MAAM,CAAC,QAAQ,CAAC,YAAY,EAAE;YACxD,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/C,gBAAgB;QAChB,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,gBAAgB,KAAK,SAAS;YAC9C,CAAC,CAAC,EAAE,oBAAoB,EAAE,MAAM,CAAC,KAAK,CAAC,gBAAgB,EAAE;YACzD,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,cAAc,KAAK,SAAS;YAChD,CAAC,CAAC,EAAE,cAAc,EAAE,MAAM,CAAC,SAAS,CAAC,cAAc,EAAE;YACrD,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,WAAW,KAAK,SAAS;YAC7C,CAAC,CAAC,EAAE,oBAAoB,EAAE,MAAM,CAAC,SAAS,CAAC,WAAW,EAAE;YACxD,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7D,GAAG,CAAC,MAAM,CAAC,cAAc,KAAK,SAAS;YACrC,CAAC,CAAC,EAAE,cAAc,EAAE,MAAM,CAAC,cAAc,EAAE;YAC3C,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACxE,CAAC,CAAC;IACH,IAAI,YAAuC,CAAC;IAC5C,OAAO;QACL,KAAK,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,CAC5B,OAAO,CACL,OAAO,EACP,GAAG,IAAI,OAAQ,GAA+B,CAAC,SAAS,KAAK,UAAU;YACrE,CAAC,CAAE,GAAsD;YACzD,CAAC,CAAC,SAAS,CACd;QACH,QAAQ;QACR,KAAK,EAAE,KAAK,IAAI,EAAE;YAChB,YAAY,KAAK,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE;gBACjD,gBAAgB,CAAC,KAAK,EAAE,CAAC;gBACzB,aAAa,EAAE,KAAK,EAAE,CAAC;gBACvB,QAAQ,CAAC,kBAAkB,EAAE,CAAC;gBAC9B,MAAM,MAAM,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC;YACnC,CAAC,CAAC,CAAC;YACH,MAAM,YAAY,CAAC;QACrB,CAAC;KACF,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAC;AAC1C,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEjD,yEAAyE;AACzE,4EAA4E;AAC5E,qDAAqD;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAElD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAuDhD,OAAO,EAAE,0BAA0B,EAAE,MAAM,eAAe,CAAC"}
@@ -0,0 +1,101 @@
1
+ import { type ActivityCallSource, type ActivityRequestContext } from "./activity.js";
2
+ import { CatalogService, type ResolvedCatalogTool } from "./catalog-service.js";
3
+ import { type CallErrorDetails } from "./errors.js";
4
+ import type { RegistryView } from "./registry.js";
5
+ /**
6
+ * The longest the engine will park a synchronous inbound request in *waiting
7
+ * alone*. The engine already treats ~15 s as the outer bound of one reasonable
8
+ * connector call (EXECUTE_HOST_CALL_TIMEOUT_MS), so sleeping for minutes trades
9
+ * a fast, informative failure for a hung one. A connector-reported window this
10
+ * long isn't truncated — it's declined (see `retryBackoffMs`) and reported
11
+ * verbatim as `error.retryAfterMs`, so the agent, which can afford to wait,
12
+ * decides when to re-issue.
13
+ */
14
+ export declare const MAX_RETRY_BACKOFF_MS = 10000;
15
+ /**
16
+ * How long to wait before the next attempt, or `undefined` for "don't retry".
17
+ *
18
+ * A connector that read a `Retry-After` header knows the window exactly, so it
19
+ * is honoured **exactly or not at all**: truncating an exponential *guess* is
20
+ * harmless, but truncating a *known* window means deliberately retrying inside
21
+ * a rate limit — the harm this channel exists to prevent. A window longer than
22
+ * `MAX_RETRY_BACKOFF_MS` therefore declines the retry rather than shortening
23
+ * it. (`retryAfterMs` is normalized non-negative, so `0` means "retry now".)
24
+ * Connectors that report no window keep the historical exponential guess.
25
+ *
26
+ * Waits are per attempt, matching the per-attempt `timeoutMs` race in
27
+ * `InvocationService.invoke`. Exported for direct testing.
28
+ */
29
+ export declare function retryBackoffMs(attempt: number, retryAfterMs: number | undefined): number | undefined;
30
+ export interface InvocationTiming {
31
+ catalogMs: number;
32
+ admissionMs: number;
33
+ connectorMs: number;
34
+ backoffMs: number;
35
+ resultProcessingMs: number;
36
+ totalMs: number;
37
+ }
38
+ interface InvocationBase {
39
+ durationMs: number;
40
+ attempts: number;
41
+ timing: InvocationTiming;
42
+ resolved?: ResolvedCatalogTool;
43
+ }
44
+ export type InvocationOutcome<T> = (InvocationBase & {
45
+ ok: true;
46
+ value: T;
47
+ resolved: ResolvedCatalogTool;
48
+ }) | (InvocationBase & {
49
+ ok: false;
50
+ error: CallErrorDetails;
51
+ });
52
+ export interface InvocationContext<T> {
53
+ source: ActivityCallSource;
54
+ allowDestructive?: boolean;
55
+ timeoutMs?: number;
56
+ maxRetries?: number;
57
+ requestSignal?: AbortSignal;
58
+ unwrapResult?: boolean;
59
+ /**
60
+ * Caller-owned result policy. MCP passes fields + paging here; code mode
61
+ * normally accepts the already-unwrapped value unchanged.
62
+ */
63
+ processResult?: (value: unknown, resolved: ResolvedCatalogTool) => T | Promise<T>;
64
+ /**
65
+ * Called after address/catalog/safety admission and before the first provider
66
+ * attempt. Code mode uses it for its host-call budget.
67
+ */
68
+ beforeDispatch?: () => void;
69
+ }
70
+ export declare class InvocationFailure extends Error {
71
+ readonly details: CallErrorDetails;
72
+ readonly code: string;
73
+ readonly retryable: boolean;
74
+ readonly retryAfterMs: number | undefined;
75
+ readonly connector: string | undefined;
76
+ readonly operation: string | undefined;
77
+ readonly recovery: CallErrorDetails["recovery"];
78
+ readonly nextAction: CallErrorDetails["nextAction"];
79
+ readonly retry: string | undefined;
80
+ constructor(details: CallErrorDetails);
81
+ }
82
+ /**
83
+ * Shared downstream invocation engine. Address/catalog resolution is delegated
84
+ * to the request-local CatalogService; every remaining call semantic lives
85
+ * here so MCP and code mode cannot drift independently.
86
+ */
87
+ export declare class InvocationService {
88
+ private readonly registry;
89
+ private readonly catalog;
90
+ private readonly activity?;
91
+ constructor(registry: RegistryView, catalog: CatalogService, activity?: ActivityRequestContext | undefined);
92
+ invoke<T = unknown>(address: string, args: unknown, context: InvocationContext<T>): Promise<InvocationOutcome<T>>;
93
+ /**
94
+ * Code-mode namespace dispatch preserves JavaScript-safe tool aliases while
95
+ * still feeding the resolved catalog entry through the one invocation path.
96
+ */
97
+ invokeToolAlias<T = unknown>(connectorId: string, toolAlias: string, aliasFor: (toolName: string) => string, args: unknown, context: InvocationContext<T>): Promise<InvocationOutcome<T>>;
98
+ private invokeWithResolution;
99
+ }
100
+ export {};
101
+ //# sourceMappingURL=invocation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"invocation.d.ts","sourceRoot":"","sources":["../src/invocation.ts"],"names":[],"mappings":"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"}