@composio/client 2.0.0-rc.1 → 2.0.0-rc.2

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 (156) hide show
  1. package/dist/{api-key-revocation-BZL5FAx7.mjs → api-key-revocation-BqiqlJh6.mjs} +1 -1
  2. package/dist/{auth-CEq4JqWm.mjs → auth-ClFXmN5T.mjs} +1 -1
  3. package/dist/{auth-configs-CyksMqNB.mjs → auth-configs-COkEdwlP.mjs} +1 -1
  4. package/dist/{clanker-4wByThQJ.mjs → clanker-1ptspWLR.mjs} +1 -1
  5. package/dist/{cli-Bi4_ORQO.mjs → cli-BWTXVRT4.mjs} +3 -6
  6. package/dist/{client-CK6bm7nf.d.mts → client-D5v0_f-k.d.mts} +18 -5
  7. package/dist/{connected-accounts-B-qN_yLT.mjs → connected-accounts-DK24qYIM.mjs} +1 -1
  8. package/dist/{consumer-DWlaGBmh.mjs → consumer-Do3lg_vI.mjs} +5 -6
  9. package/dist/{custom-BQWoONFY.mjs → custom-CH7n4Dyd.mjs} +1 -1
  10. package/dist/{files-B-UnEejx.mjs → files-DoNtYu2Q.mjs} +1 -1
  11. package/dist/{files-CNZ-ttVS.mjs → files-lfGzAnJ_.mjs} +1 -1
  12. package/dist/{generate-DSqfJENZ.mjs → generate-B7ClqhN0.mjs} +1 -1
  13. package/dist/index.d.mts +2 -2
  14. package/dist/index.mjs +179 -51
  15. package/dist/{link-CukKZMxs.mjs → link-NsFv9L3R.mjs} +1 -1
  16. package/dist/{logs-B87z4hq7.mjs → logs-BhCTVSZE.mjs} +3 -3
  17. package/dist/{manage-By-b66OH.mjs → manage-7vQYn-gu.mjs} +1 -1
  18. package/dist/{mcp-B0wla_93.mjs → mcp-r-SWyCDh.mjs} +3 -3
  19. package/dist/{org-BSq_z6fP.mjs → org-C12wx9QM.mjs} +6 -6
  20. package/dist/{owner-BDkEFEVF.mjs → owner-D4ghEkrK.mjs} +1 -1
  21. package/dist/{project-_s0fWHut.mjs → project-By-OBe-4.mjs} +4 -5
  22. package/dist/{project-Cj-NKnWZ.mjs → project-Cnr9eceg.mjs} +1 -1
  23. package/dist/{project-D-c0Zrrl.mjs → project-DgdqyoZJ.mjs} +1 -1
  24. package/dist/{project-C0h91WGF.mjs → project-DzrdSIis.mjs} +1 -1
  25. package/dist/{realtime-BcHoYszT.mjs → realtime-DHJnO2Ye.mjs} +1 -1
  26. package/dist/{request-DwPfYYNF.mjs → request-zLX87M09.mjs} +290 -70
  27. package/dist/resources/api-key-revocation.d.mts +1 -1
  28. package/dist/resources/api-key-revocation.mjs +1 -1
  29. package/dist/resources/auth/auth.d.mts +1 -1
  30. package/dist/resources/auth/auth.mjs +1 -1
  31. package/dist/resources/auth/index.d.mts +1 -1
  32. package/dist/resources/auth/index.mjs +2 -2
  33. package/dist/resources/auth/session.d.mts +1 -1
  34. package/dist/resources/auth/session.mjs +1 -1
  35. package/dist/resources/auth-configs.d.mts +1 -1
  36. package/dist/resources/auth-configs.mjs +1 -1
  37. package/dist/resources/auth.d.mts +1 -1
  38. package/dist/resources/auth.mjs +2 -2
  39. package/dist/resources/cli/cli.d.mts +1 -1
  40. package/dist/resources/cli/cli.mjs +1 -1
  41. package/dist/resources/cli/index.d.mts +1 -1
  42. package/dist/resources/cli/index.mjs +2 -2
  43. package/dist/resources/cli/realtime.d.mts +1 -1
  44. package/dist/resources/cli/realtime.mjs +1 -1
  45. package/dist/resources/cli.d.mts +1 -1
  46. package/dist/resources/cli.mjs +2 -2
  47. package/dist/resources/connected-accounts.d.mts +1 -1
  48. package/dist/resources/connected-accounts.mjs +1 -1
  49. package/dist/resources/files.d.mts +1 -1
  50. package/dist/resources/files.mjs +1 -1
  51. package/dist/resources/index.d.mts +1 -1
  52. package/dist/resources/index.mjs +13 -13
  53. package/dist/resources/link.d.mts +1 -1
  54. package/dist/resources/link.mjs +1 -1
  55. package/dist/resources/logs/index.d.mts +1 -1
  56. package/dist/resources/logs/index.mjs +3 -3
  57. package/dist/resources/logs/logs.d.mts +1 -1
  58. package/dist/resources/logs/logs.mjs +1 -1
  59. package/dist/resources/logs/tools.d.mts +1 -1
  60. package/dist/resources/logs/tools.mjs +1 -1
  61. package/dist/resources/logs/triggers.d.mts +1 -1
  62. package/dist/resources/logs/triggers.mjs +1 -1
  63. package/dist/resources/logs.d.mts +1 -1
  64. package/dist/resources/logs.mjs +3 -3
  65. package/dist/resources/mcp/custom.d.mts +1 -1
  66. package/dist/resources/mcp/custom.mjs +1 -1
  67. package/dist/resources/mcp/generate.d.mts +1 -1
  68. package/dist/resources/mcp/generate.mjs +1 -1
  69. package/dist/resources/mcp/index.d.mts +1 -1
  70. package/dist/resources/mcp/index.mjs +3 -3
  71. package/dist/resources/mcp/mcp.d.mts +1 -1
  72. package/dist/resources/mcp/mcp.mjs +1 -1
  73. package/dist/resources/mcp.d.mts +1 -1
  74. package/dist/resources/mcp.mjs +3 -3
  75. package/dist/resources/org/clanker.d.mts +1 -1
  76. package/dist/resources/org/clanker.mjs +1 -1
  77. package/dist/resources/org/consumer/consumer.d.mts +1 -1
  78. package/dist/resources/org/consumer/consumer.mjs +1 -1
  79. package/dist/resources/org/consumer/index.d.mts +1 -1
  80. package/dist/resources/org/consumer/index.mjs +2 -2
  81. package/dist/resources/org/consumer/project.d.mts +1 -1
  82. package/dist/resources/org/consumer/project.mjs +1 -1
  83. package/dist/resources/org/consumer.d.mts +1 -1
  84. package/dist/resources/org/consumer.mjs +2 -2
  85. package/dist/resources/org/index.d.mts +1 -1
  86. package/dist/resources/org/index.mjs +6 -6
  87. package/dist/resources/org/org.d.mts +1 -1
  88. package/dist/resources/org/org.mjs +1 -1
  89. package/dist/resources/org/owner/index.d.mts +1 -1
  90. package/dist/resources/org/owner/index.mjs +2 -2
  91. package/dist/resources/org/owner/owner.d.mts +1 -1
  92. package/dist/resources/org/owner/owner.mjs +1 -1
  93. package/dist/resources/org/owner/project.d.mts +1 -1
  94. package/dist/resources/org/owner/project.mjs +1 -1
  95. package/dist/resources/org/owner.d.mts +1 -1
  96. package/dist/resources/org/owner.mjs +2 -2
  97. package/dist/resources/org/project.d.mts +1 -1
  98. package/dist/resources/org/project.mjs +1 -1
  99. package/dist/resources/org/usage.d.mts +1 -1
  100. package/dist/resources/org/usage.mjs +1 -1
  101. package/dist/resources/org.d.mts +1 -1
  102. package/dist/resources/org.mjs +6 -6
  103. package/dist/resources/project/index.d.mts +1 -1
  104. package/dist/resources/project/index.mjs +1 -1
  105. package/dist/resources/project/project.d.mts +1 -1
  106. package/dist/resources/project/project.mjs +1 -1
  107. package/dist/resources/project/usage.d.mts +1 -1
  108. package/dist/resources/project/usage.mjs +1 -1
  109. package/dist/resources/project.d.mts +1 -1
  110. package/dist/resources/project.mjs +1 -1
  111. package/dist/resources/tool-router/index.d.mts +1 -1
  112. package/dist/resources/tool-router/index.mjs +2 -2
  113. package/dist/resources/tool-router/session/files.d.mts +1 -1
  114. package/dist/resources/tool-router/session/files.mjs +1 -1
  115. package/dist/resources/tool-router/session/index.d.mts +1 -1
  116. package/dist/resources/tool-router/session/index.mjs +2 -2
  117. package/dist/resources/tool-router/session/session.d.mts +1 -1
  118. package/dist/resources/tool-router/session/session.mjs +1 -1
  119. package/dist/resources/tool-router/session.d.mts +1 -1
  120. package/dist/resources/tool-router/session.mjs +2 -2
  121. package/dist/resources/tool-router/tool-router.d.mts +1 -1
  122. package/dist/resources/tool-router/tool-router.mjs +1 -1
  123. package/dist/resources/tool-router.d.mts +1 -1
  124. package/dist/resources/tool-router.mjs +2 -2
  125. package/dist/resources/toolkits.d.mts +1 -1
  126. package/dist/resources/toolkits.mjs +1 -1
  127. package/dist/resources/tools.d.mts +1 -1
  128. package/dist/resources/tools.mjs +1 -1
  129. package/dist/resources/trigger-instances/index.d.mts +1 -1
  130. package/dist/resources/trigger-instances/index.mjs +2 -2
  131. package/dist/resources/trigger-instances/manage.d.mts +1 -1
  132. package/dist/resources/trigger-instances/manage.mjs +1 -1
  133. package/dist/resources/trigger-instances/trigger-instances.d.mts +1 -1
  134. package/dist/resources/trigger-instances/trigger-instances.mjs +1 -1
  135. package/dist/resources/trigger-instances.d.mts +1 -1
  136. package/dist/resources/trigger-instances.mjs +2 -2
  137. package/dist/resources/triggers-types.d.mts +1 -1
  138. package/dist/resources/triggers-types.mjs +1 -1
  139. package/dist/resources/webhook-endpoints.d.mts +1 -1
  140. package/dist/resources/webhook-endpoints.mjs +1 -1
  141. package/dist/resources/webhook-subscriptions.d.mts +1 -1
  142. package/dist/resources/webhook-subscriptions.mjs +1 -1
  143. package/dist/{session-DNm4GFO-.mjs → session-Ci0MoTTn.mjs} +1 -1
  144. package/dist/{session-Do3wHYNe.mjs → session-CmqSfXtq.mjs} +2 -2
  145. package/dist/{tool-router-5OfsPkJ_.mjs → tool-router-DbmIxiU5.mjs} +1 -1
  146. package/dist/{toolkits-CcE90C2S.mjs → toolkits-BUWB3p_C.mjs} +1 -1
  147. package/dist/{tools-B5uEInC8.mjs → tools-B4kHPHbe.mjs} +1 -1
  148. package/dist/{tools-CdVgfSpk.mjs → tools-BO1wTIiE.mjs} +2 -5
  149. package/dist/{trigger-instances-lkKWqHgd.mjs → trigger-instances-CoEohjcv.mjs} +2 -2
  150. package/dist/{triggers-DNx9yjbS.mjs → triggers-BwsETpsM.mjs} +1 -1
  151. package/dist/{triggers-types-MjEcrPbH.mjs → triggers-types-DmOurxxx.mjs} +1 -1
  152. package/dist/{usage-CKyu9RzD.mjs → usage-BJsJ4nsd.mjs} +1 -1
  153. package/dist/{usage-Cv9VNy5H.mjs → usage-D6ahTV_Y.mjs} +1 -1
  154. package/dist/{webhook-endpoints-DIyg3YlR.mjs → webhook-endpoints-CyWYVPMe.mjs} +1 -1
  155. package/dist/{webhook-subscriptions-B7AgTACq.mjs → webhook-subscriptions-BgnCTUGn.mjs} +1 -1
  156. package/package.json +3 -2
@@ -71,6 +71,74 @@ var UnprocessableEntityError = class extends APIError {};
71
71
  var RateLimitError = class extends APIError {};
72
72
  var InternalServerError = class extends APIError {};
73
73
 
74
+ //#endregion
75
+ //#region src/compat/headers.ts
76
+ const hasEntries = (value) => typeof value === "object" && value !== null && "append" in value && typeof value.append === "function" && "delete" in value && typeof value.delete === "function" && "entries" in value && typeof value.entries === "function" && "get" in value && typeof value.get === "function";
77
+ const isHeaders = (value) => value instanceof Headers || hasEntries(value);
78
+ const isNullableHeadersLike = (headers) => {
79
+ if (!("values" in headers) || !isHeaders(headers.values) || !("nulls" in headers)) return false;
80
+ const nulls = headers.nulls;
81
+ return typeof nulls === "object" && nulls !== null && Symbol.iterator in nulls;
82
+ };
83
+ /**
84
+ * Iterates every supported input while preserving explicit deletions. Plain
85
+ * objects replace an older value for a key; tuple inputs append duplicate
86
+ * values, matching the published client.
87
+ */
88
+ function* iterateHeaders(headers) {
89
+ if (!headers) return;
90
+ if (isNullableHeadersLike(headers)) {
91
+ yield* headers.values.entries();
92
+ for (const name of headers.nulls) yield [name, null];
93
+ return;
94
+ }
95
+ const shouldReplace = !isHeaders(headers) && !Array.isArray(headers);
96
+ const entries = isHeaders(headers) ? headers.entries() : Array.isArray(headers) ? headers : Object.entries(headers);
97
+ for (const entry of entries) {
98
+ const name = entry[0];
99
+ if (typeof name !== "string") throw new TypeError("expected header name to be a string");
100
+ const rawValue = entry[1];
101
+ const values = Array.isArray(rawValue) ? rawValue : [rawValue];
102
+ let replaced = false;
103
+ for (const value of values) {
104
+ if (value === void 0) continue;
105
+ if (shouldReplace && !replaced) {
106
+ replaced = true;
107
+ yield [name, null];
108
+ }
109
+ yield [name, value];
110
+ }
111
+ }
112
+ }
113
+ /** Merge sources while retaining names explicitly deleted by the last source. */
114
+ const mergeHeaders = (sources) => {
115
+ const values = new Headers();
116
+ const nulls = /* @__PURE__ */ new Set();
117
+ for (const source of sources) {
118
+ const seen = /* @__PURE__ */ new Set();
119
+ for (const [name, value] of iterateHeaders(source)) {
120
+ const lowerName = name.toLowerCase();
121
+ if (!seen.has(lowerName)) {
122
+ values.delete(name);
123
+ seen.add(lowerName);
124
+ }
125
+ if (value === null) {
126
+ values.delete(name);
127
+ nulls.add(lowerName);
128
+ } else {
129
+ values.append(name, value);
130
+ nulls.delete(lowerName);
131
+ }
132
+ }
133
+ }
134
+ return {
135
+ values,
136
+ nulls
137
+ };
138
+ };
139
+ /** Merge sources into the native header collection sent to fetch. */
140
+ const buildHeaders = (sources) => mergeHeaders(sources).values;
141
+
74
142
  //#endregion
75
143
  //#region src/compat/credentials.ts
76
144
  /**
@@ -257,6 +325,19 @@ const parseHTTPURL = (value) => {
257
325
  return null;
258
326
  }
259
327
  };
328
+ /**
329
+ * The URL `target` names, resolved against `base`, when it lands on http(s);
330
+ * `null` when it cannot be parsed or names a scheme this client does not
331
+ * speak. The one spelling of "resolve against a base, http(s) only" — the
332
+ * redirect follower and the deprecation link resolver both need exactly this.
333
+ */
334
+ const resolveHTTPURL = (target, base) => {
335
+ try {
336
+ return parseHTTPURL(new URL(target, base).href);
337
+ } catch {
338
+ return null;
339
+ }
340
+ };
260
341
  /** Whether a credential may be sent to this origin at all. */
261
342
  const isCredentialSafeOrigin = (url) => url.protocol === "https:" || url.protocol === "http:" && isLoopbackHostname(url.hostname);
262
343
  const LOOPBACK_DESCRIPTION = "localhost, *.localhost, 127.0.0.0/8, [::1]";
@@ -336,18 +417,8 @@ const FOREIGN_CREDENTIAL_HEADERS = ["x-user-api-key", "x-org-api-key"];
336
417
  * may carry `null` to delete what an earlier one set (`buildHeaders`).
337
418
  */
338
419
  const callerPlacedCredential = (sources) => {
339
- const placed = /* @__PURE__ */ new Set();
340
- for (const source of sources) {
341
- if (!source) continue;
342
- for (const [name, value] of Object.entries(source)) {
343
- const header = name.toLowerCase();
344
- if (!FOREIGN_CREDENTIAL_HEADERS.includes(header)) continue;
345
- if (value === void 0) continue;
346
- if (value === null) placed.delete(header);
347
- else placed.add(header);
348
- }
349
- }
350
- return placed.size > 0;
420
+ const headers = buildHeaders(sources);
421
+ return FOREIGN_CREDENTIAL_HEADERS.some((name) => headers.has(name));
351
422
  };
352
423
  /**
353
424
  * Header names that carry a credential and must not survive an origin change.
@@ -425,6 +496,32 @@ const carriesCredentials = (headers) => CREDENTIAL_HEADERS.some((name) => header
425
496
  //#endregion
426
497
  //#region src/compat/deprecation.ts
427
498
  /**
499
+ * Runtime deprecation notices, read off the response.
500
+ *
501
+ * The server announces a deprecated operation with three standard fields:
502
+ *
503
+ * - `Deprecation` (RFC 9745) — an Item Structured Field whose value is a Date
504
+ * (RFC 9651 §3.3.7): an `@` followed by integer seconds since the Unix
505
+ * epoch, e.g. `Deprecation: @1688169599`.
506
+ * - `Sunset` (RFC 8594) — an HTTP-date, e.g. `Sunset: Sat, 31 Dec 2018
507
+ * 23:59:59 GMT`, naming the date the operation stops being served.
508
+ * - `Link` (RFC 8288) — `rel="deprecation"` points at human-readable notes
509
+ * (RFC 9745 registers that relation); `rel="successor-version"` (RFC 5829)
510
+ * points at the replacement resource, which this module maps back to a
511
+ * public client chain when it can.
512
+ *
513
+ * The authoring-time half of the same contract already exists: an operation
514
+ * the input schema marks `deprecated: true` reaches the generated method as a
515
+ * `@deprecated` annotation. This is the runtime half, and the two are
516
+ * independent — a notice fires because the *server* said so, never because the
517
+ * committed snapshot did, so it stays correct between spec syncs.
518
+ *
519
+ * Everything here is defensive by construction. A deprecation notice is
520
+ * advisory; it must never break a live call, so a field that is oversized,
521
+ * carries control characters, or simply does not parse is dropped rather than
522
+ * raised.
523
+ */
524
+ /**
428
525
  * Field-size ceiling. A deprecation notice is decoration on a response that
429
526
  * has already been paid for, so an oversized field is dropped rather than
430
527
  * parsed — there is no message worth building out of 2 KiB of `Link`.
@@ -633,14 +730,7 @@ const parseLinkField = (value) => {
633
730
  }
634
731
  return links;
635
732
  };
636
- const httpURL = (target, baseURL) => {
637
- try {
638
- const url = new URL(target, baseURL);
639
- return url.protocol === "http:" || url.protocol === "https:" ? url : null;
640
- } catch {
641
- return null;
642
- }
643
- };
733
+ const httpURL = (target, baseURL) => resolveHTTPURL(target, baseURL);
644
734
  /**
645
735
  * A successor is only followed as far as *naming* it, and only when it lands
646
736
  * on the API this client is configured against.
@@ -686,6 +776,20 @@ const parseDeprecation = (headers, contextURL, baseURL) => {
686
776
  };
687
777
  };
688
778
  const pathSegments = (path) => (path.split(/[?#]/, 1)[0] ?? "").split("/").filter((segment) => segment !== "");
779
+ /**
780
+ * Template segments, keyed by descriptor so the cache holds only entries the
781
+ * operations table (or a test's stand-in for it) is still keeping alive. The
782
+ * table is module-level and immutable, so every logical call re-split the same
783
+ * 104 templates for nothing once the match became unconditional.
784
+ */
785
+ const templateSegments = /* @__PURE__ */ new WeakMap();
786
+ const segmentsOf = (operation) => {
787
+ const cached = templateSegments.get(operation);
788
+ if (cached !== void 0) return cached;
789
+ const segments = pathSegments(operation.path);
790
+ templateSegments.set(operation, segments);
791
+ return segments;
792
+ };
689
793
  const isTemplateParam = (segment) => segment.startsWith("{") && segment.endsWith("}");
690
794
  /**
691
795
  * The operation a dispatched request belongs to, recovered from the path it
@@ -717,7 +821,7 @@ const matchOperation = (method, path, operations) => {
717
821
  let bestLiterals = -1;
718
822
  for (const operation of operations) {
719
823
  if (operation.method !== method) continue;
720
- const template = pathSegments(operation.path);
824
+ const template = segmentsOf(operation);
721
825
  if (template.length !== segments.length) continue;
722
826
  let literals = 0;
723
827
  let matched = true;
@@ -804,9 +908,69 @@ const inspectDeprecation = ({ response, method, path, baseURL, operations, seen,
804
908
  const subject = operation === null ? `${method.toUpperCase()} ${path}` : chainLabel(operation.chain);
805
909
  warn(formatDeprecationWarning(subject, notice, successorChain));
806
910
  };
911
+ /**
912
+ * The keys a value map will actually carry on the wire. Both serializers drop
913
+ * an entry whose value is `undefined` outright — `JSON.stringify` for a body
914
+ * property, `stringifyQuery` for a query entry — while `null` is sent (JSON
915
+ * `null`, or `key=`), so only `undefined` reads as "not sent". `bodyKeys`
916
+ * relies on the same rule for its half of the surface.
917
+ */
918
+ const presentKeys = (values) => new Set(Object.entries(values).filter(([, value]) => value !== void 0).map(([key]) => key));
919
+ /**
920
+ * The keys `body` will actually carry on the wire, at its top level, when it
921
+ * is a plain object — `presentKeys` over it, narrowed to objects: a resource
922
+ * method always passes an object (even an omitted optional body arrives as
923
+ * `{}`), so this covers every real call; a non-object `body` (the raw escape
924
+ * hatch dispatching something else entirely) has no top-level keys to check.
925
+ */
926
+ const bodyKeys = (body) => typeof body === "object" && body !== null && !Array.isArray(body) ? presentKeys(body) : /* @__PURE__ */ new Set();
927
+ /**
928
+ * The static parameter-level warning: fires when the client sends an input
929
+ * the committed spec marks `deprecated: true`, decided entirely from the
930
+ * request the caller is about to send. Unlike `inspectDeprecation`, this
931
+ * needs no response — it runs before dispatch, so a connection failure never
932
+ * swallows it.
933
+ *
934
+ * One notice per (operation, sorted set of deprecated wire names present) per
935
+ * client instance, but every input in that set is named in its own `warn`
936
+ * call — the once-only key only suppresses an exact-repeat call, it does not
937
+ * collapse several inputs on one call into a single message.
938
+ */
939
+ const inspectDeprecatedInputs = ({ operation, query, body, headers, table, seen, warn }) => {
940
+ if (operation === null) return;
941
+ const declared = table.get(operation.chain.join("."));
942
+ if (declared === void 0 || declared.length === 0) return;
943
+ const queryKeys = presentKeys(query);
944
+ const bodyKeySet = bodyKeys(body);
945
+ const present = declared.filter((input) => {
946
+ if (input.in === "query") return queryKeys.has(input.wire);
947
+ if (input.in === "body") return bodyKeySet.has(input.wire);
948
+ return headers.has(input.wire);
949
+ });
950
+ if (present.length === 0) return;
951
+ const wireSet = [...new Set(present.map((input) => input.wire))].sort();
952
+ const key = `param${KEY_SEPARATOR}${operation.chain.join(".")}${KEY_SEPARATOR}${wireSet.join(",")}`;
953
+ if (seen.has(key)) return;
954
+ if (seen.size >= MAX_TRACKED_NOTICES) return;
955
+ seen.add(key);
956
+ const subject = chainLabel(operation.chain);
957
+ for (const input of present) {
958
+ const clause = input.replacementWire === null ? "" : ` Use \`${input.replacementWire}\` instead.`;
959
+ warn(`Composio: the \`${input.wire}\` parameter of ${subject} is deprecated.${clause}`);
960
+ }
961
+ };
807
962
 
808
963
  //#endregion
809
964
  //#region src/compat/request.ts
965
+ /** A request label safe to print: dynamic path values and URL secrets are excluded. */
966
+ const printableURL = (url, operation) => `${new URL(url).origin}${operation?.path ?? "/<custom>"}`;
967
+ const emitLog = (config, level, message, metadata) => {
968
+ try {
969
+ config.onLog?.(level, message, metadata);
970
+ } catch {}
971
+ };
972
+ const monotonicMillis = () => globalThis.performance?.now?.() ?? Date.now();
973
+ const elapsedMillis = (startedAt) => Math.max(0, monotonicMillis() - startedAt);
810
974
  /**
811
975
  * Percent-encode everything that isn't a RFC-3986 pchar, leaving safe chars
812
976
  * (unreserved / sub-delims / ":" / "@") readable.
@@ -865,23 +1029,10 @@ const buildURL = (config, options) => {
865
1029
  };
866
1030
  const search = stringifyQuery(query);
867
1031
  if (search) url.search = search;
868
- return url.toString();
869
- };
870
- /**
871
- * Merges header sources in Stainless precedence order (later wins); a `null`
872
- * value deletes the header, `undefined` leaves it untouched.
873
- */
874
- const buildHeaders = (sources) => {
875
- const headers = new Headers();
876
- for (const source of sources) {
877
- if (!source) continue;
878
- for (const [name, value] of Object.entries(source)) {
879
- if (value === void 0) continue;
880
- if (value === null) headers.delete(name);
881
- else headers.set(name, value);
882
- }
883
- }
884
- return headers;
1032
+ return {
1033
+ url: url.toString(),
1034
+ query
1035
+ };
885
1036
  };
886
1037
  /**
887
1038
  * JSON body encoding. A resource method always passes the `body` key when its
@@ -1009,28 +1160,35 @@ const TOO_MANY_REDIRECTS = `The API redirected more than ${MAX_REDIRECTS} times;
1009
1160
  const OPAQUE_REDIRECT = "The API responded with a redirect that this runtime will not let the client read (an opaque redirect, in a browser). Redirects are followed only where the response can be inspected, because a credential must never cross an origin change.";
1010
1161
  const isOpaqueRedirect = (response) => response.type === "opaqueredirect";
1011
1162
  /**
1012
- * Fetch's own method rewrite (§4.4 "HTTP-redirect fetch", step 13): a 303
1013
- * turns any non-GET into a GET, and a 301/302 does the same to a POST — both
1014
- * dropping the body. 307 and 308 preserve the method and the body, which is
1015
- * what they exist for. Following by hand means reproducing this, or a caller's
1016
- * POST silently becomes a POST to somewhere it was never sent before.
1017
- */
1018
- /**
1019
1163
  * The `Location` a hop points at, resolved against the URL it arrived on, or
1020
1164
  * `null` when there is nothing followable there — unparseable, or a scheme
1021
1165
  * this client does not speak (`data:`, `file:`, an app link). `null` hands the
1022
1166
  * 3xx back as the response it is, which is what `fetch` does with a `Location`
1023
1167
  * it cannot use.
1024
1168
  */
1025
- const resolveLocation = (location, from) => {
1026
- try {
1027
- return parseHTTPURL(new URL(location, from).href);
1028
- } catch {
1029
- return null;
1030
- }
1031
- };
1169
+ const resolveLocation = (location, from) => resolveHTTPURL(location, from);
1170
+ /**
1171
+ * Fetch's own method rewrite (§4.4 "HTTP-redirect fetch", step 13): a 303
1172
+ * turns any non-GET into a GET, and a 301/302 does the same to a POST — both
1173
+ * dropping the body. 307 and 308 preserve the method and the body, which is
1174
+ * what they exist for. Following by hand means reproducing this, or a caller's
1175
+ * POST silently becomes a POST to somewhere it was never sent before.
1176
+ */
1032
1177
  const rewriteForRedirect = (status, method) => status === 303 && method !== "GET" && method !== "HEAD" || (status === 301 || status === 302) && method === "POST";
1033
- const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
1178
+ const sleep = (ms, signal) => {
1179
+ if (signal?.aborted) return Promise.reject(new APIUserAbortError());
1180
+ return new Promise((resolve, reject) => {
1181
+ const onAbort = () => {
1182
+ clearTimeout(timer);
1183
+ reject(new APIUserAbortError());
1184
+ };
1185
+ const timer = setTimeout(() => {
1186
+ signal?.removeEventListener("abort", onAbort);
1187
+ resolve();
1188
+ }, ms);
1189
+ signal?.addEventListener("abort", onAbort, { once: true });
1190
+ });
1191
+ };
1034
1192
  /**
1035
1193
  * Indirection over `sleep` so kernel tests can capture retry delays instead
1036
1194
  * of waiting them out on the wall clock. Internal seam only — deliberately
@@ -1048,8 +1206,8 @@ const kernelInternals = { sleep };
1048
1206
  * caller's own credential headers, which are legitimate on the URL the caller
1049
1207
  * chose and are dropped once the *server* has chosen one.
1050
1208
  */
1051
- const buildRequestHeaders = (config, options, requestURL, bodyHeaders, withdrawn, scheme) => {
1052
- const credential = withdrawn || callerPlacedCredential([config.defaultHeaders, options.headers]) ? null : credentialForRequest(config.baseURL, scheme, config.credentials, requestURL);
1209
+ const buildRequestHeaders = (config, options, requestURL, bodyHeaders, withdrawn, scheme, callerPlaced) => {
1210
+ const credential = withdrawn || callerPlaced ? null : credentialForRequest(config.baseURL, scheme, config.credentials, requestURL);
1053
1211
  const headers = buildHeaders([
1054
1212
  {
1055
1213
  accept: "application/json",
@@ -1073,15 +1231,18 @@ const buildRequestHeaders = (config, options, requestURL, bodyHeaders, withdrawn
1073
1231
  * asked for is the honest answer for the whole chain, and rule 3 already
1074
1232
  * withdraws everything once a hop leaves the origin.
1075
1233
  *
1076
- * The table is skipped outright unless a second credential is configured. With
1077
- * only `apiKey` set the answer is `ApiKeyAuth` down every branch of
1078
- * {@link selectScheme}, so an existing caller pays nothing for a feature they
1079
- * do not use, and their requests are byte-identical by construction rather
1080
- * than by assertion.
1234
+ * `operation` is the match `makeRequest` already computed for the static
1235
+ * deprecated-input check, threaded in rather than re-derived: the two
1236
+ * features need the same fact, so `matchOperation` runs once per logical call
1237
+ * regardless of which of them a given client configuration actually uses.
1238
+ * With only `apiKey` set the scheme answer is still `ApiKeyAuth` down every
1239
+ * branch of {@link selectScheme}, so an existing caller's requests stay
1240
+ * byte-identical by construction; what changed is that the match itself is no
1241
+ * longer skippable, because the deprecated-input warning needs it too.
1081
1242
  */
1082
- const schemeForRequest = (config, options) => {
1243
+ const schemeForRequest = (config, operation) => {
1083
1244
  if (!hasAlternateCredential(config.credentials)) return "ApiKeyAuth";
1084
- return selectScheme(matchOperation(options.method, options.path, config.operations ?? [])?.schemes, config.credentials);
1245
+ return selectScheme(operation?.schemes, config.credentials);
1085
1246
  };
1086
1247
  /**
1087
1248
  * One attempt: the request, plus however many redirects it takes to land on a
@@ -1106,8 +1267,9 @@ const dispatchWithRedirects = async (config, options, initialURL, initialBody, i
1106
1267
  let body = initialBody;
1107
1268
  let bodyHeaders = initialBodyHeaders;
1108
1269
  let withdrawn = false;
1270
+ const callerPlaced = callerPlacedCredential([config.defaultHeaders, options.headers]);
1109
1271
  for (let hop = 0;; hop++) {
1110
- const headers = buildRequestHeaders(config, options, url, bodyHeaders, withdrawn, scheme);
1272
+ const headers = buildRequestHeaders(config, options, url, bodyHeaders, withdrawn, scheme, callerPlaced);
1111
1273
  const delegated = hop === 0 && !carriesCredentials(headers);
1112
1274
  const response = await config.fetch.call(void 0, url, {
1113
1275
  method,
@@ -1156,13 +1318,28 @@ async function makeRequest(config, options) {
1156
1318
  const maxRetries = options.maxRetries ?? config.maxRetries;
1157
1319
  validatePositiveInteger("maxRetries", maxRetries);
1158
1320
  const timeout = options.timeout ?? config.timeout;
1159
- const url = buildURL(config, options);
1321
+ const { url, query } = buildURL(config, options);
1160
1322
  const { body, bodyHeaders } = buildBody(options);
1161
1323
  const userSignal = options.signal ?? void 0;
1162
- const scheme = schemeForRequest(config, options);
1324
+ const method = options.method.toUpperCase();
1325
+ const operation = matchOperation(options.method, options.path, config.operations ?? []);
1326
+ const requestLog = config.onLog === void 0 ? void 0 : {
1327
+ method,
1328
+ url: printableURL(url, operation),
1329
+ maxAttempts: maxRetries + 1
1330
+ };
1331
+ const scheme = schemeForRequest(config, operation);
1332
+ config.onRequest?.(operation, query, options.body, buildHeaders([config.defaultHeaders, options.headers]));
1163
1333
  for (let numRetries = 0;; numRetries++) {
1164
1334
  if (userSignal?.aborted) throw new APIUserAbortError();
1335
+ const attempt = numRetries + 1;
1165
1336
  const retriesRemaining = maxRetries - numRetries;
1337
+ const startedAt = requestLog === void 0 ? 0 : monotonicMillis();
1338
+ const attemptLog = requestLog === void 0 ? void 0 : {
1339
+ ...requestLog,
1340
+ attempt
1341
+ };
1342
+ if (attemptLog !== void 0) emitLog(config, "debug", "Sending request", attemptLog);
1166
1343
  const controller = new AbortController();
1167
1344
  const abort = () => controller.abort();
1168
1345
  userSignal?.addEventListener("abort", abort, { once: true });
@@ -1171,25 +1348,68 @@ async function makeRequest(config, options) {
1171
1348
  try {
1172
1349
  result = await dispatchWithRedirects(config, options, url, body, bodyHeaders, controller.signal, scheme);
1173
1350
  } catch (cause) {
1174
- if (cause instanceof ComposioError) throw cause;
1351
+ if (cause instanceof ComposioError) {
1352
+ if (attemptLog !== void 0) emitLog(config, "info", "Request failed", {
1353
+ ...attemptLog,
1354
+ durationMs: elapsedMillis(startedAt),
1355
+ errorType: cause.constructor.name
1356
+ });
1357
+ throw cause;
1358
+ }
1175
1359
  result = castToError(cause);
1176
1360
  } finally {
1177
1361
  clearTimeout(timer);
1178
1362
  userSignal?.removeEventListener("abort", abort);
1179
1363
  }
1180
1364
  if (result instanceof Error) {
1181
- if (userSignal?.aborted) throw new APIUserAbortError();
1365
+ if (userSignal?.aborted) {
1366
+ if (attemptLog !== void 0) emitLog(config, "info", "Request failed", {
1367
+ ...attemptLog,
1368
+ durationMs: elapsedMillis(startedAt),
1369
+ errorType: APIUserAbortError.name
1370
+ });
1371
+ throw new APIUserAbortError();
1372
+ }
1182
1373
  const isTimeout = controller.signal.aborted || /timed? ?out/i.test(String(result) + ("cause" in result ? String(result.cause) : ""));
1374
+ const errorType = isTimeout ? APIConnectionTimeoutError.name : APIConnectionError.name;
1375
+ if (attemptLog !== void 0) emitLog(config, "info", "Request failed", {
1376
+ ...attemptLog,
1377
+ durationMs: elapsedMillis(startedAt),
1378
+ errorType
1379
+ });
1183
1380
  if (retriesRemaining > 0) {
1184
- await kernelInternals.sleep(retryDelayMillis(numRetries));
1381
+ const delayMs = retryDelayMillis(numRetries);
1382
+ if (attemptLog !== void 0) emitLog(config, "info", "Retrying request", {
1383
+ ...attemptLog,
1384
+ nextAttempt: attempt + 1,
1385
+ retriesRemaining,
1386
+ delayMs,
1387
+ reason: isTimeout ? "timeout" : "transport"
1388
+ });
1389
+ await kernelInternals.sleep(delayMs, userSignal);
1185
1390
  continue;
1186
1391
  }
1187
1392
  if (isTimeout) throw new APIConnectionTimeoutError();
1188
1393
  throw new APIConnectionError({ cause: result });
1189
1394
  }
1395
+ if (attemptLog !== void 0) emitLog(config, "info", "Received response", {
1396
+ ...attemptLog,
1397
+ status: result.status,
1398
+ outcome: result.ok ? "success" : "http_error",
1399
+ durationMs: elapsedMillis(startedAt)
1400
+ });
1190
1401
  if (!result.ok && retriesRemaining > 0 && shouldRetryResponse(result)) {
1191
1402
  result.body?.cancel().catch(() => void 0);
1192
- await kernelInternals.sleep(retryDelayMillis(numRetries, result.headers));
1403
+ const delayMs = retryDelayMillis(numRetries, result.headers);
1404
+ if (attemptLog !== void 0) emitLog(config, "info", "Retrying request", {
1405
+ ...attemptLog,
1406
+ nextAttempt: attempt + 1,
1407
+ retriesRemaining,
1408
+ delayMs,
1409
+ reason: "response",
1410
+ status: result.status
1411
+ });
1412
+ await kernelInternals.sleep(delayMs, userSignal);
1193
1413
  continue;
1194
1414
  }
1195
1415
  if (config.onResponse !== void 0) try {
@@ -1200,4 +1420,4 @@ async function makeRequest(config, options) {
1200
1420
  }
1201
1421
 
1202
1422
  //#endregion
1203
- export { PermissionDeniedError as _, inspectDeprecation as a, APIConnectionTimeoutError as c, AuthenticationError as d, BadRequestError as f, NotFoundError as g, InternalServerError as h, safeJSON as i, APIError as l, ConflictError as m, makeRequest as n, assertCredentialTransport as o, ComposioError as p, path as r, APIConnectionError as s, castToError as t, APIUserAbortError as u, RateLimitError as v, UnprocessableEntityError as y };
1423
+ export { InternalServerError as _, inspectDeprecatedInputs as a, RateLimitError as b, mergeHeaders as c, APIError as d, APIUserAbortError as f, ConflictError as g, ComposioError as h, safeJSON as i, APIConnectionError as l, BadRequestError as m, makeRequest as n, inspectDeprecation as o, AuthenticationError as p, path as r, assertCredentialTransport as s, castToError as t, APIConnectionTimeoutError as u, NotFoundError as v, UnprocessableEntityError as x, PermissionDeniedError as y };
@@ -1,2 +1,2 @@
1
- import { a as ApiKeyRevocation, o as ApiKeyRevocationCreateParams, s as ApiKeyRevocationCreateResponse } from "../client-CK6bm7nf.mjs";
1
+ import { a as ApiKeyRevocation, o as ApiKeyRevocationCreateParams, s as ApiKeyRevocationCreateResponse } from "../client-D5v0_f-k.mjs";
2
2
  export { ApiKeyRevocation, type ApiKeyRevocationCreateParams, type ApiKeyRevocationCreateResponse };
@@ -1,3 +1,3 @@
1
- import { t as ApiKeyRevocation } from "../api-key-revocation-BZL5FAx7.mjs";
1
+ import { t as ApiKeyRevocation } from "../api-key-revocation-BqiqlJh6.mjs";
2
2
 
3
3
  export { ApiKeyRevocation };
@@ -1,2 +1,2 @@
1
- import { c as Auth } from "../../client-CK6bm7nf.mjs";
1
+ import { c as Auth } from "../../client-D5v0_f-k.mjs";
2
2
  export { Auth };
@@ -1,3 +1,3 @@
1
- import { t as Auth } from "../../auth-CEq4JqWm.mjs";
1
+ import { t as Auth } from "../../auth-ClFXmN5T.mjs";
2
2
 
3
3
  export { Auth };
@@ -1,2 +1,2 @@
1
- import { c as Auth, l as Session, u as SessionRetrieveInfoResponse } from "../../client-CK6bm7nf.mjs";
1
+ import { c as Auth, l as Session, u as SessionRetrieveInfoResponse } from "../../client-D5v0_f-k.mjs";
2
2
  export { Auth, Session, type SessionRetrieveInfoResponse };
@@ -1,4 +1,4 @@
1
- import { t as Session } from "../../session-DNm4GFO-.mjs";
2
- import { t as Auth } from "../../auth-CEq4JqWm.mjs";
1
+ import { t as Session } from "../../session-Ci0MoTTn.mjs";
2
+ import { t as Auth } from "../../auth-ClFXmN5T.mjs";
3
3
 
4
4
  export { Auth, Session };
@@ -1,2 +1,2 @@
1
- import { l as Session, u as SessionRetrieveInfoResponse } from "../../client-CK6bm7nf.mjs";
1
+ import { l as Session, u as SessionRetrieveInfoResponse } from "../../client-D5v0_f-k.mjs";
2
2
  export { Session, type SessionRetrieveInfoResponse };
@@ -1,3 +1,3 @@
1
- import { t as Session } from "../../session-DNm4GFO-.mjs";
1
+ import { t as Session } from "../../session-Ci0MoTTn.mjs";
2
2
 
3
3
  export { Session };
@@ -1,2 +1,2 @@
1
- import { An as AuthConfigUpdateResponse, Cn as AuthConfigCreateResponse, Dn as AuthConfigListResponse, En as AuthConfigListParams, Mn as AuthConfigUpdateStatusResponse, Nn as AuthConfigs, On as AuthConfigRetrieveResponse, Sn as AuthConfigCreateParams, Tn as AuthConfigDeleteResponse, jn as AuthConfigUpdateStatusParams, kn as AuthConfigUpdateParams, wn as AuthConfigDeleteParams } from "../client-CK6bm7nf.mjs";
1
+ import { An as AuthConfigUpdateResponse, Cn as AuthConfigCreateResponse, Dn as AuthConfigListResponse, En as AuthConfigListParams, Mn as AuthConfigUpdateStatusResponse, Nn as AuthConfigs, On as AuthConfigRetrieveResponse, Sn as AuthConfigCreateParams, Tn as AuthConfigDeleteResponse, jn as AuthConfigUpdateStatusParams, kn as AuthConfigUpdateParams, wn as AuthConfigDeleteParams } from "../client-D5v0_f-k.mjs";
2
2
  export { type AuthConfigCreateParams, type AuthConfigCreateResponse, type AuthConfigDeleteParams, type AuthConfigDeleteResponse, type AuthConfigListParams, type AuthConfigListResponse, type AuthConfigRetrieveResponse, type AuthConfigUpdateParams, type AuthConfigUpdateResponse, type AuthConfigUpdateStatusParams, type AuthConfigUpdateStatusResponse, AuthConfigs };
@@ -1,3 +1,3 @@
1
- import { t as AuthConfigs } from "../auth-configs-CyksMqNB.mjs";
1
+ import { t as AuthConfigs } from "../auth-configs-COkEdwlP.mjs";
2
2
 
3
3
  export { AuthConfigs };
@@ -1,2 +1,2 @@
1
- import { c as Auth, l as Session, u as SessionRetrieveInfoResponse } from "../client-CK6bm7nf.mjs";
1
+ import { c as Auth, l as Session, u as SessionRetrieveInfoResponse } from "../client-D5v0_f-k.mjs";
2
2
  export { Auth, Session, type SessionRetrieveInfoResponse };
@@ -1,5 +1,5 @@
1
- import { t as Session } from "../session-DNm4GFO-.mjs";
2
- import { t as Auth } from "../auth-CEq4JqWm.mjs";
1
+ import { t as Session } from "../session-Ci0MoTTn.mjs";
2
+ import { t as Auth } from "../auth-ClFXmN5T.mjs";
3
3
  import "./auth/index.mjs";
4
4
 
5
5
  export { Auth, Session };
@@ -1,2 +1,2 @@
1
- import { At as CliCreateSessionParams, Dt as Cli, Mt as CliGetSessionParams, Nt as CliGetSessionResponse, Ot as CliCreateCodactFailureParams, jt as CliCreateSessionResponse, kt as CliCreateCodactFailureResponse } from "../../client-CK6bm7nf.mjs";
1
+ import { At as CliCreateSessionParams, Dt as Cli, Mt as CliGetSessionParams, Nt as CliGetSessionResponse, Ot as CliCreateCodactFailureParams, jt as CliCreateSessionResponse, kt as CliCreateCodactFailureResponse } from "../../client-D5v0_f-k.mjs";
2
2
  export { Cli, CliCreateCodactFailureParams, CliCreateCodactFailureResponse, CliCreateSessionParams, CliCreateSessionResponse, CliGetSessionParams, CliGetSessionResponse };
@@ -1,3 +1,3 @@
1
- import { t as Cli } from "../../cli-Bi4_ORQO.mjs";
1
+ import { t as Cli } from "../../cli-BWTXVRT4.mjs";
2
2
 
3
3
  export { Cli };
@@ -1,2 +1,2 @@
1
- import { At as CliCreateSessionParams, Dt as Cli, Ft as RealtimeAuthParams, It as RealtimeAuthResponse, Lt as RealtimeCredentialsResponse, Mt as CliGetSessionParams, Nt as CliGetSessionResponse, Ot as CliCreateCodactFailureParams, Pt as Realtime, jt as CliCreateSessionResponse, kt as CliCreateCodactFailureResponse } from "../../client-CK6bm7nf.mjs";
1
+ import { At as CliCreateSessionParams, Dt as Cli, Ft as RealtimeAuthParams, It as RealtimeAuthResponse, Lt as RealtimeCredentialsResponse, Mt as CliGetSessionParams, Nt as CliGetSessionResponse, Ot as CliCreateCodactFailureParams, Pt as Realtime, jt as CliCreateSessionResponse, kt as CliCreateCodactFailureResponse } from "../../client-D5v0_f-k.mjs";
2
2
  export { Cli, type CliCreateCodactFailureParams, type CliCreateCodactFailureResponse, type CliCreateSessionParams, type CliCreateSessionResponse, type CliGetSessionParams, type CliGetSessionResponse, Realtime, type RealtimeAuthParams, type RealtimeAuthResponse, type RealtimeCredentialsResponse };
@@ -1,4 +1,4 @@
1
- import { t as Realtime } from "../../realtime-BcHoYszT.mjs";
2
- import { t as Cli } from "../../cli-Bi4_ORQO.mjs";
1
+ import { t as Realtime } from "../../realtime-DHJnO2Ye.mjs";
2
+ import { t as Cli } from "../../cli-BWTXVRT4.mjs";
3
3
 
4
4
  export { Cli, Realtime };
@@ -1,2 +1,2 @@
1
- import { Ft as RealtimeAuthParams, It as RealtimeAuthResponse, Lt as RealtimeCredentialsResponse, Pt as Realtime } from "../../client-CK6bm7nf.mjs";
1
+ import { Ft as RealtimeAuthParams, It as RealtimeAuthResponse, Lt as RealtimeCredentialsResponse, Pt as Realtime } from "../../client-D5v0_f-k.mjs";
2
2
  export { Realtime, RealtimeAuthParams, RealtimeAuthResponse, RealtimeCredentialsResponse };
@@ -1,3 +1,3 @@
1
- import { t as Realtime } from "../../realtime-BcHoYszT.mjs";
1
+ import { t as Realtime } from "../../realtime-DHJnO2Ye.mjs";
2
2
 
3
3
  export { Realtime };
@@ -1,2 +1,2 @@
1
- import { At as CliCreateSessionParams, Dt as Cli, Ft as RealtimeAuthParams, It as RealtimeAuthResponse, Lt as RealtimeCredentialsResponse, Mt as CliGetSessionParams, Nt as CliGetSessionResponse, Ot as CliCreateCodactFailureParams, Pt as Realtime, jt as CliCreateSessionResponse, kt as CliCreateCodactFailureResponse } from "../client-CK6bm7nf.mjs";
1
+ import { At as CliCreateSessionParams, Dt as Cli, Ft as RealtimeAuthParams, It as RealtimeAuthResponse, Lt as RealtimeCredentialsResponse, Mt as CliGetSessionParams, Nt as CliGetSessionResponse, Ot as CliCreateCodactFailureParams, Pt as Realtime, jt as CliCreateSessionResponse, kt as CliCreateCodactFailureResponse } from "../client-D5v0_f-k.mjs";
2
2
  export { Cli, type CliCreateCodactFailureParams, type CliCreateCodactFailureResponse, type CliCreateSessionParams, type CliCreateSessionResponse, type CliGetSessionParams, type CliGetSessionResponse, Realtime, type RealtimeAuthParams, type RealtimeAuthResponse, type RealtimeCredentialsResponse };
@@ -1,5 +1,5 @@
1
- import { t as Realtime } from "../realtime-BcHoYszT.mjs";
2
- import { t as Cli } from "../cli-Bi4_ORQO.mjs";
1
+ import { t as Realtime } from "../realtime-DHJnO2Ye.mjs";
2
+ import { t as Cli } from "../cli-BWTXVRT4.mjs";
3
3
  import "./cli/index.mjs";
4
4
 
5
5
  export { Cli, Realtime };
@@ -1,2 +1,2 @@
1
- import { $n as ConnectedAccountRetrieveResponse, Gn as ConnectedAccountDeleteParams, Jn as ConnectedAccountListResponse, Kn as ConnectedAccountDeleteResponse, Qn as ConnectedAccountRefreshResponse, Un as ConnectedAccountCreateParams, Wn as ConnectedAccountCreateResponse, Xn as ConnectedAccountPatchResponse, Yn as ConnectedAccountPatchParams, Zn as ConnectedAccountRefreshParams, er as ConnectedAccountUpdateStatusParams, nr as ConnectedAccounts, qn as ConnectedAccountListParams, tr as ConnectedAccountUpdateStatusResponse } from "../client-CK6bm7nf.mjs";
1
+ import { $n as ConnectedAccountRetrieveResponse, Gn as ConnectedAccountDeleteParams, Jn as ConnectedAccountListResponse, Kn as ConnectedAccountDeleteResponse, Qn as ConnectedAccountRefreshResponse, Un as ConnectedAccountCreateParams, Wn as ConnectedAccountCreateResponse, Xn as ConnectedAccountPatchResponse, Yn as ConnectedAccountPatchParams, Zn as ConnectedAccountRefreshParams, er as ConnectedAccountUpdateStatusParams, nr as ConnectedAccounts, qn as ConnectedAccountListParams, tr as ConnectedAccountUpdateStatusResponse } from "../client-D5v0_f-k.mjs";
2
2
  export { type ConnectedAccountCreateParams, type ConnectedAccountCreateResponse, type ConnectedAccountDeleteParams, type ConnectedAccountDeleteResponse, type ConnectedAccountListParams, type ConnectedAccountListResponse, type ConnectedAccountPatchParams, type ConnectedAccountPatchResponse, type ConnectedAccountRefreshParams, type ConnectedAccountRefreshResponse, type ConnectedAccountRetrieveResponse, type ConnectedAccountUpdateStatusParams, type ConnectedAccountUpdateStatusResponse, ConnectedAccounts };
@@ -1,3 +1,3 @@
1
- import { t as ConnectedAccounts } from "../connected-accounts-B-qN_yLT.mjs";
1
+ import { t as ConnectedAccounts } from "../connected-accounts-DK24qYIM.mjs";
2
2
 
3
3
  export { ConnectedAccounts };
@@ -1,2 +1,2 @@
1
- import { ar as FileListParams, ir as FileCreatePresignedURLResponse, or as FileListResponse, rr as FileCreatePresignedURLParams, sr as Files } from "../client-CK6bm7nf.mjs";
1
+ import { ar as FileListParams, ir as FileCreatePresignedURLResponse, or as FileListResponse, rr as FileCreatePresignedURLParams, sr as Files } from "../client-D5v0_f-k.mjs";
2
2
  export { type FileCreatePresignedURLParams, type FileCreatePresignedURLResponse, type FileListParams, type FileListResponse, Files };