@orq-ai/node 3.2.6 → 3.3.0-rc.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 (211) hide show
  1. package/bin/mcp-server.js +33 -36
  2. package/bin/mcp-server.js.map +20 -20
  3. package/jsr.json +1 -1
  4. package/lib/config.d.ts +3 -3
  5. package/lib/config.js +3 -3
  6. package/lib/config.js.map +1 -1
  7. package/mcp-server/mcp-server.js +1 -1
  8. package/mcp-server/mcp-server.js.map +1 -1
  9. package/mcp-server/server.js +1 -1
  10. package/mcp-server/server.js.map +1 -1
  11. package/models/operations/bulkcreatedatapoints.js +2 -2
  12. package/models/operations/createcontact.js +2 -2
  13. package/models/operations/createdataset.js +2 -2
  14. package/models/operations/createdatasetitem.js +2 -2
  15. package/models/operations/fileget.js +2 -2
  16. package/models/operations/filelist.js +2 -2
  17. package/models/operations/fileupload.js +2 -2
  18. package/models/operations/listdatasetdatapoints.js +2 -2
  19. package/models/operations/listdatasets.js +2 -2
  20. package/models/operations/retrievedatapoint.js +2 -2
  21. package/models/operations/retrievedataset.js +2 -2
  22. package/models/operations/updatedatapoint.js +2 -2
  23. package/models/operations/updatedataset.js +2 -2
  24. package/package.json +3 -2
  25. package/src/lib/config.ts +3 -3
  26. package/src/mcp-server/mcp-server.ts +1 -1
  27. package/src/mcp-server/server.ts +1 -1
  28. package/src/models/operations/bulkcreatedatapoints.ts +2 -2
  29. package/src/models/operations/createcontact.ts +2 -2
  30. package/src/models/operations/createdataset.ts +2 -2
  31. package/src/models/operations/createdatasetitem.ts +2 -2
  32. package/src/models/operations/fileget.ts +2 -2
  33. package/src/models/operations/filelist.ts +2 -2
  34. package/src/models/operations/fileupload.ts +2 -2
  35. package/src/models/operations/listdatasetdatapoints.ts +2 -2
  36. package/src/models/operations/listdatasets.ts +2 -2
  37. package/src/models/operations/retrievedatapoint.ts +2 -2
  38. package/src/models/operations/retrievedataset.ts +2 -2
  39. package/src/models/operations/updatedatapoint.ts +2 -2
  40. package/src/models/operations/updatedataset.ts +2 -2
  41. package/packages/orq-rc/FUNCTIONS.md +0 -106
  42. package/packages/orq-rc/README.md +0 -622
  43. package/packages/orq-rc/RUNTIMES.md +0 -48
  44. package/packages/orq-rc/docs/sdks/contacts/README.md +0 -84
  45. package/packages/orq-rc/docs/sdks/datasets/README.md +0 -934
  46. package/packages/orq-rc/docs/sdks/deployments/README.md +0 -235
  47. package/packages/orq-rc/docs/sdks/feedback/README.md +0 -92
  48. package/packages/orq-rc/docs/sdks/files/README.md +0 -305
  49. package/packages/orq-rc/docs/sdks/metrics/README.md +0 -86
  50. package/packages/orq-rc/docs/sdks/orq/README.md +0 -10
  51. package/packages/orq-rc/docs/sdks/prompts/README.md +0 -608
  52. package/packages/orq-rc/docs/sdks/remoteconfigs/README.md +0 -80
  53. package/packages/orq-rc/jsr.json +0 -27
  54. package/packages/orq-rc/package-lock.json +0 -3217
  55. package/packages/orq-rc/package.json +0 -45
  56. package/packages/orq-rc/src/core.ts +0 -13
  57. package/packages/orq-rc/src/funcs/contactsCreate.ts +0 -154
  58. package/packages/orq-rc/src/funcs/datasetsClear.ts +0 -161
  59. package/packages/orq-rc/src/funcs/datasetsCreate.ts +0 -159
  60. package/packages/orq-rc/src/funcs/datasetsCreateDatapoint.ts +0 -161
  61. package/packages/orq-rc/src/funcs/datasetsCreateDatapoints.ts +0 -165
  62. package/packages/orq-rc/src/funcs/datasetsDelete.ts +0 -161
  63. package/packages/orq-rc/src/funcs/datasetsDeleteDatapoint.ts +0 -176
  64. package/packages/orq-rc/src/funcs/datasetsList.ts +0 -162
  65. package/packages/orq-rc/src/funcs/datasetsListDatapoints.ts +0 -169
  66. package/packages/orq-rc/src/funcs/datasetsRetrieve.ts +0 -169
  67. package/packages/orq-rc/src/funcs/datasetsRetrieveDatapoint.ts +0 -175
  68. package/packages/orq-rc/src/funcs/datasetsUpdate.ts +0 -170
  69. package/packages/orq-rc/src/funcs/datasetsUpdateDatapoint.ts +0 -173
  70. package/packages/orq-rc/src/funcs/deploymentsGetConfig.ts +0 -162
  71. package/packages/orq-rc/src/funcs/deploymentsInvoke.ts +0 -170
  72. package/packages/orq-rc/src/funcs/deploymentsList.ts +0 -171
  73. package/packages/orq-rc/src/funcs/deploymentsMetricsCreate.ts +0 -162
  74. package/packages/orq-rc/src/funcs/feedbackCreate.ts +0 -154
  75. package/packages/orq-rc/src/funcs/filesCreate.ts +0 -177
  76. package/packages/orq-rc/src/funcs/filesDelete.ts +0 -158
  77. package/packages/orq-rc/src/funcs/filesGet.ts +0 -160
  78. package/packages/orq-rc/src/funcs/filesList.ts +0 -162
  79. package/packages/orq-rc/src/funcs/promptsCreate.ts +0 -154
  80. package/packages/orq-rc/src/funcs/promptsDelete.ts +0 -158
  81. package/packages/orq-rc/src/funcs/promptsGetVersion.ts +0 -175
  82. package/packages/orq-rc/src/funcs/promptsList.ts +0 -162
  83. package/packages/orq-rc/src/funcs/promptsListVersions.ts +0 -168
  84. package/packages/orq-rc/src/funcs/promptsRetrieve.ts +0 -160
  85. package/packages/orq-rc/src/funcs/promptsUpdate.ts +0 -167
  86. package/packages/orq-rc/src/funcs/remoteconfigsRetrieve.ts +0 -155
  87. package/packages/orq-rc/src/hooks/global.ts +0 -44
  88. package/packages/orq-rc/src/hooks/hooks.ts +0 -132
  89. package/packages/orq-rc/src/hooks/index.ts +0 -6
  90. package/packages/orq-rc/src/hooks/registration.ts +0 -15
  91. package/packages/orq-rc/src/hooks/types.ts +0 -110
  92. package/packages/orq-rc/src/index.ts +0 -7
  93. package/packages/orq-rc/src/lib/base64.ts +0 -37
  94. package/packages/orq-rc/src/lib/config.ts +0 -70
  95. package/packages/orq-rc/src/lib/dlv.ts +0 -53
  96. package/packages/orq-rc/src/lib/encodings.ts +0 -483
  97. package/packages/orq-rc/src/lib/env.ts +0 -73
  98. package/packages/orq-rc/src/lib/files.ts +0 -40
  99. package/packages/orq-rc/src/lib/http.ts +0 -323
  100. package/packages/orq-rc/src/lib/is-plain-object.ts +0 -43
  101. package/packages/orq-rc/src/lib/logger.ts +0 -9
  102. package/packages/orq-rc/src/lib/matchers.ts +0 -322
  103. package/packages/orq-rc/src/lib/primitives.ts +0 -150
  104. package/packages/orq-rc/src/lib/retries.ts +0 -218
  105. package/packages/orq-rc/src/lib/schemas.ts +0 -91
  106. package/packages/orq-rc/src/lib/sdks.ts +0 -395
  107. package/packages/orq-rc/src/lib/security.ts +0 -253
  108. package/packages/orq-rc/src/lib/url.ts +0 -33
  109. package/packages/orq-rc/src/mcp-server/cli/start/command.ts +0 -125
  110. package/packages/orq-rc/src/mcp-server/cli/start/impl.ts +0 -140
  111. package/packages/orq-rc/src/mcp-server/cli.ts +0 -13
  112. package/packages/orq-rc/src/mcp-server/console-logger.ts +0 -71
  113. package/packages/orq-rc/src/mcp-server/extensions.ts +0 -17
  114. package/packages/orq-rc/src/mcp-server/mcp-server.ts +0 -26
  115. package/packages/orq-rc/src/mcp-server/prompts.ts +0 -110
  116. package/packages/orq-rc/src/mcp-server/resources.ts +0 -158
  117. package/packages/orq-rc/src/mcp-server/scopes.ts +0 -7
  118. package/packages/orq-rc/src/mcp-server/server.ts +0 -123
  119. package/packages/orq-rc/src/mcp-server/shared.ts +0 -75
  120. package/packages/orq-rc/src/mcp-server/tools/contactsCreate.ts +0 -37
  121. package/packages/orq-rc/src/mcp-server/tools/datasetsClear.ts +0 -35
  122. package/packages/orq-rc/src/mcp-server/tools/datasetsCreate.ts +0 -37
  123. package/packages/orq-rc/src/mcp-server/tools/datasetsCreateDatapoint.ts +0 -37
  124. package/packages/orq-rc/src/mcp-server/tools/datasetsCreateDatapoints.ts +0 -37
  125. package/packages/orq-rc/src/mcp-server/tools/datasetsDelete.ts +0 -35
  126. package/packages/orq-rc/src/mcp-server/tools/datasetsDeleteDatapoint.ts +0 -35
  127. package/packages/orq-rc/src/mcp-server/tools/datasetsList.ts +0 -37
  128. package/packages/orq-rc/src/mcp-server/tools/datasetsListDatapoints.ts +0 -37
  129. package/packages/orq-rc/src/mcp-server/tools/datasetsRetrieve.ts +0 -37
  130. package/packages/orq-rc/src/mcp-server/tools/datasetsRetrieveDatapoint.ts +0 -37
  131. package/packages/orq-rc/src/mcp-server/tools/datasetsUpdate.ts +0 -37
  132. package/packages/orq-rc/src/mcp-server/tools/datasetsUpdateDatapoint.ts +0 -35
  133. package/packages/orq-rc/src/mcp-server/tools/deploymentsGetConfig.ts +0 -37
  134. package/packages/orq-rc/src/mcp-server/tools/deploymentsInvoke.ts +0 -37
  135. package/packages/orq-rc/src/mcp-server/tools/deploymentsList.ts +0 -37
  136. package/packages/orq-rc/src/mcp-server/tools/deploymentsMetricsCreate.ts +0 -37
  137. package/packages/orq-rc/src/mcp-server/tools/feedbackCreate.ts +0 -37
  138. package/packages/orq-rc/src/mcp-server/tools/filesCreate.ts +0 -37
  139. package/packages/orq-rc/src/mcp-server/tools/filesDelete.ts +0 -33
  140. package/packages/orq-rc/src/mcp-server/tools/filesGet.ts +0 -37
  141. package/packages/orq-rc/src/mcp-server/tools/filesList.ts +0 -37
  142. package/packages/orq-rc/src/mcp-server/tools/promptsCreate.ts +0 -35
  143. package/packages/orq-rc/src/mcp-server/tools/promptsDelete.ts +0 -33
  144. package/packages/orq-rc/src/mcp-server/tools/promptsGetVersion.ts +0 -37
  145. package/packages/orq-rc/src/mcp-server/tools/promptsList.ts +0 -37
  146. package/packages/orq-rc/src/mcp-server/tools/promptsListVersions.ts +0 -37
  147. package/packages/orq-rc/src/mcp-server/tools/promptsRetrieve.ts +0 -37
  148. package/packages/orq-rc/src/mcp-server/tools/promptsUpdate.ts +0 -35
  149. package/packages/orq-rc/src/mcp-server/tools/remoteconfigsRetrieve.ts +0 -36
  150. package/packages/orq-rc/src/mcp-server/tools.ts +0 -126
  151. package/packages/orq-rc/src/models/components/deployments.ts +0 -4164
  152. package/packages/orq-rc/src/models/components/index.ts +0 -6
  153. package/packages/orq-rc/src/models/components/security.ts +0 -71
  154. package/packages/orq-rc/src/models/errors/apierror.ts +0 -27
  155. package/packages/orq-rc/src/models/errors/getpromptversion.ts +0 -71
  156. package/packages/orq-rc/src/models/errors/honoapierror.ts +0 -82
  157. package/packages/orq-rc/src/models/errors/httpclienterrors.ts +0 -62
  158. package/packages/orq-rc/src/models/errors/index.ts +0 -10
  159. package/packages/orq-rc/src/models/errors/sdkvalidationerror.ts +0 -97
  160. package/packages/orq-rc/src/models/errors/updateprompt.ts +0 -71
  161. package/packages/orq-rc/src/models/operations/bulkcreatedatapoints.ts +0 -1816
  162. package/packages/orq-rc/src/models/operations/cleardataset.ts +0 -75
  163. package/packages/orq-rc/src/models/operations/createcontact.ts +0 -256
  164. package/packages/orq-rc/src/models/operations/createdataset.ts +0 -296
  165. package/packages/orq-rc/src/models/operations/createdatasetitem.ts +0 -1740
  166. package/packages/orq-rc/src/models/operations/createfeedback.ts +0 -286
  167. package/packages/orq-rc/src/models/operations/createprompt.ts +0 -3816
  168. package/packages/orq-rc/src/models/operations/deletedatapoint.ts +0 -81
  169. package/packages/orq-rc/src/models/operations/deletedataset.ts +0 -75
  170. package/packages/orq-rc/src/models/operations/deleteprompt.ts +0 -69
  171. package/packages/orq-rc/src/models/operations/deploymentcreatemetric.ts +0 -4936
  172. package/packages/orq-rc/src/models/operations/deploymentgetconfig.ts +0 -6090
  173. package/packages/orq-rc/src/models/operations/deploymentinvoke.ts +0 -1199
  174. package/packages/orq-rc/src/models/operations/deployments.ts +0 -2194
  175. package/packages/orq-rc/src/models/operations/filedelete.ts +0 -78
  176. package/packages/orq-rc/src/models/operations/fileget.ts +0 -223
  177. package/packages/orq-rc/src/models/operations/filelist.ts +0 -377
  178. package/packages/orq-rc/src/models/operations/fileupload.ts +0 -324
  179. package/packages/orq-rc/src/models/operations/getallprompts.ts +0 -2165
  180. package/packages/orq-rc/src/models/operations/getoneprompt.ts +0 -1989
  181. package/packages/orq-rc/src/models/operations/getpromptversion.ts +0 -1987
  182. package/packages/orq-rc/src/models/operations/index.ts +0 -34
  183. package/packages/orq-rc/src/models/operations/listdatasetdatapoints.ts +0 -1115
  184. package/packages/orq-rc/src/models/operations/listdatasets.ts +0 -448
  185. package/packages/orq-rc/src/models/operations/listpromptversions.ts +0 -2163
  186. package/packages/orq-rc/src/models/operations/remoteconfigsgetconfig.ts +0 -190
  187. package/packages/orq-rc/src/models/operations/retrievedatapoint.ts +0 -924
  188. package/packages/orq-rc/src/models/operations/retrievedataset.ts +0 -288
  189. package/packages/orq-rc/src/models/operations/updatedatapoint.ts +0 -1729
  190. package/packages/orq-rc/src/models/operations/updatedataset.ts +0 -374
  191. package/packages/orq-rc/src/models/operations/updateprompt.ts +0 -3831
  192. package/packages/orq-rc/src/sdk/contacts.ts +0 -27
  193. package/packages/orq-rc/src/sdk/datasets.ts +0 -222
  194. package/packages/orq-rc/src/sdk/deployments.ts +0 -70
  195. package/packages/orq-rc/src/sdk/feedback.ts +0 -27
  196. package/packages/orq-rc/src/sdk/files.ts +0 -78
  197. package/packages/orq-rc/src/sdk/index.ts +0 -5
  198. package/packages/orq-rc/src/sdk/metrics.ts +0 -27
  199. package/packages/orq-rc/src/sdk/prompts.ts +0 -126
  200. package/packages/orq-rc/src/sdk/remoteconfigs.ts +0 -24
  201. package/packages/orq-rc/src/sdk/sdk.ts +0 -49
  202. package/packages/orq-rc/src/types/async.ts +0 -68
  203. package/packages/orq-rc/src/types/blobs.ts +0 -31
  204. package/packages/orq-rc/src/types/constdatetime.ts +0 -15
  205. package/packages/orq-rc/src/types/enums.ts +0 -16
  206. package/packages/orq-rc/src/types/fp.ts +0 -50
  207. package/packages/orq-rc/src/types/index.ts +0 -11
  208. package/packages/orq-rc/src/types/operations.ts +0 -105
  209. package/packages/orq-rc/src/types/rfcdate.ts +0 -54
  210. package/packages/orq-rc/src/types/streams.ts +0 -21
  211. package/packages/orq-rc/tsconfig.json +0 -41
@@ -1,150 +0,0 @@
1
- /*
2
- * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
- */
4
-
5
- class InvariantError extends Error {
6
- constructor(message: string) {
7
- super(message);
8
- this.name = "InvariantError";
9
- }
10
- }
11
-
12
- export function invariant(
13
- condition: unknown,
14
- message: string,
15
- ): asserts condition {
16
- if (!condition) {
17
- throw new InvariantError(message);
18
- }
19
- }
20
-
21
- export type ExactPartial<T> = {
22
- [P in keyof T]?: T[P] | undefined;
23
- };
24
-
25
- export type Remap<Inp, Mapping extends { [k in keyof Inp]?: string | null }> = {
26
- [k in keyof Inp as Mapping[k] extends string /* if we have a string mapping for this key then use it */
27
- ? Mapping[k]
28
- : Mapping[k] extends null /* if the mapping is to `null` then drop the key */
29
- ? never
30
- : k /* otherwise keep the key as-is */]: Inp[k];
31
- };
32
-
33
- /**
34
- * Converts or omits an object's keys according to a mapping.
35
- *
36
- * @param inp An object whose keys will be remapped
37
- * @param mappings A mapping of original keys to new keys. If a key is not present in the mapping, it will be left as is. If a key is mapped to `null`, it will be removed in the resulting object.
38
- * @returns A new object with keys remapped or omitted according to the mappings
39
- */
40
- export function remap<
41
- Inp extends Record<string, unknown>,
42
- const Mapping extends { [k in keyof Inp]?: string | null },
43
- >(inp: Inp, mappings: Mapping): Remap<Inp, Mapping> {
44
- let out: any = {};
45
-
46
- if (!Object.keys(mappings).length) {
47
- out = inp;
48
- return out;
49
- }
50
-
51
- for (const [k, v] of Object.entries(inp)) {
52
- const j = mappings[k];
53
- if (j === null) {
54
- continue;
55
- }
56
- out[j ?? k] = v;
57
- }
58
-
59
- return out;
60
- }
61
-
62
- export function combineSignals(
63
- ...signals: Array<AbortSignal | null | undefined>
64
- ): AbortSignal | null {
65
- const filtered: AbortSignal[] = [];
66
- for (const signal of signals) {
67
- if (signal) {
68
- filtered.push(signal);
69
- }
70
- }
71
-
72
- switch (filtered.length) {
73
- case 0:
74
- case 1:
75
- return filtered[0] || null;
76
- default:
77
- if ("any" in AbortSignal && typeof AbortSignal.any === "function") {
78
- return AbortSignal.any(filtered);
79
- }
80
- return abortSignalAny(filtered);
81
- }
82
- }
83
-
84
- export function abortSignalAny(signals: AbortSignal[]): AbortSignal {
85
- const controller = new AbortController();
86
- const result = controller.signal;
87
- if (!signals.length) {
88
- return controller.signal;
89
- }
90
-
91
- if (signals.length === 1) {
92
- return signals[0] || controller.signal;
93
- }
94
-
95
- for (const signal of signals) {
96
- if (signal.aborted) {
97
- return signal;
98
- }
99
- }
100
-
101
- function abort(this: AbortSignal) {
102
- controller.abort(this.reason);
103
- clean();
104
- }
105
-
106
- const signalRefs: WeakRef<AbortSignal>[] = [];
107
- function clean() {
108
- for (const signalRef of signalRefs) {
109
- const signal = signalRef.deref();
110
- if (signal) {
111
- signal.removeEventListener("abort", abort);
112
- }
113
- }
114
- }
115
-
116
- for (const signal of signals) {
117
- signalRefs.push(new WeakRef(signal));
118
- signal.addEventListener("abort", abort);
119
- }
120
-
121
- return result;
122
- }
123
-
124
- export function compactMap<T>(
125
- values: Record<string, T | undefined>,
126
- ): Record<string, T> {
127
- const out: Record<string, T> = {};
128
-
129
- for (const [k, v] of Object.entries(values)) {
130
- if (typeof v !== "undefined") {
131
- out[k] = v;
132
- }
133
- }
134
-
135
- return out;
136
- }
137
-
138
- export function allRequired<V extends Record<string, unknown>>(
139
- v: V,
140
- ):
141
- | {
142
- [K in keyof V]: NonNullable<V[K]>;
143
- }
144
- | undefined {
145
- if (Object.values(v).every((x) => x == null)) {
146
- return void 0;
147
- }
148
-
149
- return v as ReturnType<typeof allRequired<V>>;
150
- }
@@ -1,218 +0,0 @@
1
- /*
2
- * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
- */
4
-
5
- import { isConnectionError, isTimeoutError } from "./http.js";
6
-
7
- export type BackoffStrategy = {
8
- initialInterval: number;
9
- maxInterval: number;
10
- exponent: number;
11
- maxElapsedTime: number;
12
- };
13
-
14
- const defaultBackoff: BackoffStrategy = {
15
- initialInterval: 500,
16
- maxInterval: 60000,
17
- exponent: 1.5,
18
- maxElapsedTime: 3600000,
19
- };
20
-
21
- export type RetryConfig =
22
- | { strategy: "none" }
23
- | {
24
- strategy: "backoff";
25
- backoff?: BackoffStrategy;
26
- retryConnectionErrors?: boolean;
27
- };
28
-
29
- /**
30
- * PermanentError is an error that is not recoverable. Throwing this error will
31
- * cause a retry loop to terminate.
32
- */
33
- export class PermanentError extends Error {
34
- /** The underlying cause of the error. */
35
- override readonly cause: unknown;
36
-
37
- constructor(message: string, options?: { cause?: unknown }) {
38
- let msg = message;
39
- if (options?.cause) {
40
- msg += `: ${options.cause}`;
41
- }
42
-
43
- super(msg, options);
44
- this.name = "PermanentError";
45
- // In older runtimes, the cause field would not have been assigned through
46
- // the super() call.
47
- if (typeof this.cause === "undefined") {
48
- this.cause = options?.cause;
49
- }
50
-
51
- Object.setPrototypeOf(this, PermanentError.prototype);
52
- }
53
- }
54
-
55
- /**
56
- * TemporaryError is an error is used to signal that an HTTP request can be
57
- * retried as part of a retry loop. If retry attempts are exhausted and this
58
- * error is thrown, the response will be returned to the caller.
59
- */
60
- export class TemporaryError extends Error {
61
- response: Response;
62
-
63
- constructor(message: string, response: Response) {
64
- super(message);
65
- this.response = response;
66
- this.name = "TemporaryError";
67
-
68
- Object.setPrototypeOf(this, TemporaryError.prototype);
69
- }
70
- }
71
-
72
- export async function retry(
73
- fetchFn: () => Promise<Response>,
74
- options: {
75
- config: RetryConfig;
76
- statusCodes: string[];
77
- },
78
- ): Promise<Response> {
79
- switch (options.config.strategy) {
80
- case "backoff":
81
- return retryBackoff(
82
- wrapFetcher(fetchFn, {
83
- statusCodes: options.statusCodes,
84
- retryConnectionErrors: !!options.config.retryConnectionErrors,
85
- }),
86
- options.config.backoff ?? defaultBackoff,
87
- );
88
- default:
89
- return await fetchFn();
90
- }
91
- }
92
-
93
- function wrapFetcher(
94
- fn: () => Promise<Response>,
95
- options: {
96
- statusCodes: string[];
97
- retryConnectionErrors: boolean;
98
- },
99
- ): () => Promise<Response> {
100
- return async () => {
101
- try {
102
- const res = await fn();
103
- if (isRetryableResponse(res, options.statusCodes)) {
104
- throw new TemporaryError(
105
- "Response failed with retryable status code",
106
- res,
107
- );
108
- }
109
-
110
- return res;
111
- } catch (err: unknown) {
112
- if (err instanceof TemporaryError) {
113
- throw err;
114
- }
115
-
116
- if (
117
- options.retryConnectionErrors &&
118
- (isTimeoutError(err) || isConnectionError(err))
119
- ) {
120
- throw err;
121
- }
122
-
123
- throw new PermanentError("Permanent error", { cause: err });
124
- }
125
- };
126
- }
127
-
128
- const codeRangeRE = new RegExp("^[0-9]xx$", "i");
129
-
130
- function isRetryableResponse(res: Response, statusCodes: string[]): boolean {
131
- const actual = `${res.status}`;
132
-
133
- return statusCodes.some((code) => {
134
- if (!codeRangeRE.test(code)) {
135
- return code === actual;
136
- }
137
-
138
- const expectFamily = code.charAt(0);
139
- if (!expectFamily) {
140
- throw new Error("Invalid status code range");
141
- }
142
-
143
- const actualFamily = actual.charAt(0);
144
- if (!actualFamily) {
145
- throw new Error(`Invalid response status code: ${actual}`);
146
- }
147
-
148
- return actualFamily === expectFamily;
149
- });
150
- }
151
-
152
- async function retryBackoff(
153
- fn: () => Promise<Response>,
154
- strategy: BackoffStrategy,
155
- ): Promise<Response> {
156
- const { maxElapsedTime, initialInterval, exponent, maxInterval } = strategy;
157
-
158
- const start = Date.now();
159
- let x = 0;
160
-
161
- while (true) {
162
- try {
163
- const res = await fn();
164
- return res;
165
- } catch (err: unknown) {
166
- if (err instanceof PermanentError) {
167
- throw err.cause;
168
- }
169
- const elapsed = Date.now() - start;
170
- if (elapsed > maxElapsedTime) {
171
- if (err instanceof TemporaryError) {
172
- return err.response;
173
- }
174
-
175
- throw err;
176
- }
177
-
178
- let retryInterval = 0;
179
- if (err instanceof TemporaryError) {
180
- retryInterval = retryIntervalFromResponse(err.response);
181
- }
182
-
183
- if (retryInterval <= 0) {
184
- retryInterval =
185
- initialInterval * Math.pow(x, exponent) + Math.random() * 1000;
186
- }
187
-
188
- const d = Math.min(retryInterval, maxInterval);
189
-
190
- await delay(d);
191
- x++;
192
- }
193
- }
194
- }
195
-
196
- function retryIntervalFromResponse(res: Response): number {
197
- const retryVal = res.headers.get("retry-after") || "";
198
- if (!retryVal) {
199
- return 0;
200
- }
201
-
202
- const parsedNumber = Number(retryVal);
203
- if (Number.isInteger(parsedNumber)) {
204
- return parsedNumber * 1000;
205
- }
206
-
207
- const parsedDate = Date.parse(retryVal);
208
- if (Number.isInteger(parsedDate)) {
209
- const deltaMS = parsedDate - Date.now();
210
- return deltaMS > 0 ? Math.ceil(deltaMS) : 0;
211
- }
212
-
213
- return 0;
214
- }
215
-
216
- async function delay(delay: number): Promise<void> {
217
- return new Promise((resolve) => setTimeout(resolve, delay));
218
- }
@@ -1,91 +0,0 @@
1
- /*
2
- * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
- */
4
-
5
- import {
6
- output,
7
- ZodEffects,
8
- ZodError,
9
- ZodObject,
10
- ZodRawShape,
11
- ZodTypeAny,
12
- } from "zod";
13
- import { SDKValidationError } from "../models/errors/sdkvalidationerror.js";
14
- import { ERR, OK, Result } from "../types/fp.js";
15
-
16
- /**
17
- * Utility function that executes some code which may throw a ZodError. It
18
- * intercepts this error and converts it to an SDKValidationError so as to not
19
- * leak Zod implementation details to user code.
20
- */
21
- export function parse<Inp, Out>(
22
- rawValue: Inp,
23
- fn: (value: Inp) => Out,
24
- errorMessage: string,
25
- ): Out {
26
- try {
27
- return fn(rawValue);
28
- } catch (err) {
29
- if (err instanceof ZodError) {
30
- throw new SDKValidationError(errorMessage, err, rawValue);
31
- }
32
- throw err;
33
- }
34
- }
35
-
36
- /**
37
- * Utility function that executes some code which may result in a ZodError. It
38
- * intercepts this error and converts it to an SDKValidationError so as to not
39
- * leak Zod implementation details to user code.
40
- */
41
- export function safeParse<Inp, Out>(
42
- rawValue: Inp,
43
- fn: (value: Inp) => Out,
44
- errorMessage: string,
45
- ): Result<Out, SDKValidationError> {
46
- try {
47
- return OK(fn(rawValue));
48
- } catch (err) {
49
- return ERR(new SDKValidationError(errorMessage, err, rawValue));
50
- }
51
- }
52
-
53
- export function collectExtraKeys<
54
- Shape extends ZodRawShape,
55
- Catchall extends ZodTypeAny,
56
- K extends string,
57
- >(
58
- obj: ZodObject<Shape, "strip", Catchall>,
59
- extrasKey: K,
60
- optional: boolean,
61
- ): ZodEffects<
62
- typeof obj,
63
- & output<ZodObject<Shape, "strict">>
64
- & {
65
- [k in K]: Record<string, output<Catchall>>;
66
- }
67
- > {
68
- return obj.transform((val) => {
69
- const extras: Record<string, output<Catchall>> = {};
70
- const { shape } = obj;
71
- for (const [key] of Object.entries(val)) {
72
- if (key in shape) {
73
- continue;
74
- }
75
-
76
- const v = val[key];
77
- if (typeof v === "undefined") {
78
- continue;
79
- }
80
-
81
- extras[key] = v;
82
- delete val[key];
83
- }
84
-
85
- if (optional && Object.keys(extras).length === 0) {
86
- return val;
87
- }
88
-
89
- return { ...val, [extrasKey]: extras };
90
- });
91
- }