@marcohefti/request-network-api-client 0.5.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 (39) hide show
  1. package/LICENSE +22 -0
  2. package/README.md +97 -0
  3. package/dist/cjs/domains/client-ids/index.js +309 -0
  4. package/dist/cjs/domains/client-ids/index.js.map +1 -0
  5. package/dist/cjs/domains/currencies/index.js +347 -0
  6. package/dist/cjs/domains/currencies/index.js.map +1 -0
  7. package/dist/cjs/domains/payer/index.js +450 -0
  8. package/dist/cjs/domains/payer/index.js.map +1 -0
  9. package/dist/cjs/domains/payouts/index.js +304 -0
  10. package/dist/cjs/domains/payouts/index.js.map +1 -0
  11. package/dist/cjs/domains/requests/index.js +544 -0
  12. package/dist/cjs/domains/requests/index.js.map +1 -0
  13. package/dist/cjs/index.js +3466 -0
  14. package/dist/cjs/index.js.map +1 -0
  15. package/dist/esm/domains/client-ids/index.d.mts +2 -0
  16. package/dist/esm/domains/client-ids/index.js +307 -0
  17. package/dist/esm/domains/client-ids/index.js.map +1 -0
  18. package/dist/esm/domains/currencies/index.d.mts +3 -0
  19. package/dist/esm/domains/currencies/index.js +344 -0
  20. package/dist/esm/domains/currencies/index.js.map +1 -0
  21. package/dist/esm/domains/payer/index.d.mts +2 -0
  22. package/dist/esm/domains/payer/index.js +446 -0
  23. package/dist/esm/domains/payer/index.js.map +1 -0
  24. package/dist/esm/domains/payouts/index.d.mts +2 -0
  25. package/dist/esm/domains/payouts/index.js +302 -0
  26. package/dist/esm/domains/payouts/index.js.map +1 -0
  27. package/dist/esm/domains/requests/index.d.mts +2 -0
  28. package/dist/esm/domains/requests/index.js +542 -0
  29. package/dist/esm/domains/requests/index.js.map +1 -0
  30. package/dist/esm/index-BmWmfcnn.d.mts +113 -0
  31. package/dist/esm/index-CNK36ZX5.d.mts +26 -0
  32. package/dist/esm/index-Cd7x0Hv-.d.mts +39 -0
  33. package/dist/esm/index-Q2g0D7V8.d.mts +79 -0
  34. package/dist/esm/index-ziziGrHN.d.mts +220 -0
  35. package/dist/esm/index.d.mts +5478 -0
  36. package/dist/esm/index.js +3435 -0
  37. package/dist/esm/index.js.map +1 -0
  38. package/dist/esm/openapi-types-CtUFCrk4.d.mts +3368 -0
  39. package/package.json +168 -0
@@ -0,0 +1,542 @@
1
+ import { z } from 'zod';
2
+
3
+ // src/domains/requests/request.helpers.ts
4
+ function buildRequestQuery(input) {
5
+ if (!input) return void 0;
6
+ const entries = Object.entries(input).filter(([, value]) => value !== void 0);
7
+ if (entries.length === 0) return void 0;
8
+ return Object.fromEntries(entries);
9
+ }
10
+ var STATUS_KIND_MAP = {
11
+ paid: "paid",
12
+ completed: "paid",
13
+ settled: "paid",
14
+ pending: "pending",
15
+ processing: "pending",
16
+ open: "pending",
17
+ awaitingpayment: "pending",
18
+ awaiting_payment: "pending",
19
+ cancelled: "cancelled",
20
+ canceled: "cancelled",
21
+ voided: "cancelled",
22
+ overdue: "overdue",
23
+ expired: "overdue"
24
+ };
25
+ function normalizeReference(value) {
26
+ if (value === void 0) return void 0;
27
+ return value;
28
+ }
29
+ function normalizeCustomerInfo(value) {
30
+ if (value === void 0) return void 0;
31
+ if (value === null) return null;
32
+ return {
33
+ firstName: value.firstName ?? void 0,
34
+ lastName: value.lastName ?? void 0,
35
+ email: value.email ?? void 0,
36
+ address: value.address ? {
37
+ street: value.address.street ?? void 0,
38
+ city: value.address.city ?? void 0,
39
+ state: value.address.state ?? void 0,
40
+ postalCode: value.address.postalCode ?? void 0,
41
+ country: value.address.country ?? void 0
42
+ } : void 0
43
+ };
44
+ }
45
+ function normalizePayments(payments) {
46
+ if (!payments) return void 0;
47
+ return payments.map((payment) => ({ ...payment }));
48
+ }
49
+ function buildStatusBase(raw, overrides) {
50
+ return {
51
+ paymentReference: raw.paymentReference ?? void 0,
52
+ requestId: raw.requestId ?? void 0,
53
+ isListening: "isListening" in raw ? raw.isListening ?? void 0 : void 0,
54
+ txHash: raw.txHash ?? null,
55
+ hasBeenPaid: raw.hasBeenPaid ?? false,
56
+ status: "status" in raw ? raw.status ?? void 0 : void 0,
57
+ recurrence: "recurrence" in raw ? raw.recurrence : void 0,
58
+ originalRequestId: "originalRequestId" in raw ? raw.originalRequestId ?? void 0 : void 0,
59
+ originalRequestPaymentReference: "originalRequestPaymentReference" in raw ? raw.originalRequestPaymentReference ?? void 0 : void 0,
60
+ isRecurrenceStopped: "isRecurrenceStopped" in raw ? raw.isRecurrenceStopped ?? void 0 : void 0,
61
+ isCryptoToFiatAvailable: "isCryptoToFiatAvailable" in raw ? raw.isCryptoToFiatAvailable ?? void 0 : void 0,
62
+ payments: "payments" in raw ? normalizePayments(raw.payments) : void 0,
63
+ customerInfo: "customerInfo" in raw ? normalizeCustomerInfo(
64
+ raw.customerInfo
65
+ ) : void 0,
66
+ reference: "reference" in raw ? normalizeReference(raw.reference ?? null) : void 0,
67
+ ...overrides
68
+ };
69
+ }
70
+ function normalizeRequestStatusResponse(raw) {
71
+ const statusKey = raw.status?.trim().toLowerCase();
72
+ const mapped = statusKey ? STATUS_KIND_MAP[statusKey] : void 0;
73
+ const kind = raw.hasBeenPaid ? "paid" : mapped ?? (statusKey ? "unknown" : "pending");
74
+ if (kind === "paid") {
75
+ return {
76
+ kind,
77
+ ...buildStatusBase(raw, { hasBeenPaid: true }),
78
+ hasBeenPaid: true
79
+ };
80
+ }
81
+ return {
82
+ kind,
83
+ ...buildStatusBase(raw, { hasBeenPaid: false }),
84
+ hasBeenPaid: false
85
+ };
86
+ }
87
+
88
+ // src/core/http/validation.config.ts
89
+ function normaliseBoolean(flag, fallback) {
90
+ return typeof flag === "boolean" ? flag : fallback;
91
+ }
92
+ function mergeRuntimeValidation(base, override) {
93
+ if (override === void 0) {
94
+ return base;
95
+ }
96
+ if (typeof override === "boolean") {
97
+ return {
98
+ requests: override,
99
+ responses: override,
100
+ errors: override
101
+ };
102
+ }
103
+ return {
104
+ requests: normaliseBoolean(override.requests, base.requests),
105
+ responses: normaliseBoolean(override.responses, base.responses),
106
+ errors: normaliseBoolean(override.errors, base.errors)
107
+ };
108
+ }
109
+
110
+ // src/validation/schema.registry.ts
111
+ function serialiseKey(key) {
112
+ const variant = key.variant ?? "default";
113
+ const status = key.status?.toString() ?? "any";
114
+ return `${key.operationId}|${key.kind}|${variant}|${status}`;
115
+ }
116
+ var SchemaRegistry = class {
117
+ store = /* @__PURE__ */ new Map();
118
+ register(entry) {
119
+ const id = serialiseKey(entry.key);
120
+ this.store.set(id, entry);
121
+ }
122
+ get(key) {
123
+ const id = serialiseKey(key);
124
+ return this.store.get(id)?.schema;
125
+ }
126
+ /**
127
+ * Removes every registered schema — primarily useful in tests.
128
+ */
129
+ clear() {
130
+ this.store.clear();
131
+ }
132
+ };
133
+ var schemaRegistry = new SchemaRegistry();
134
+
135
+ // src/validation/zod.helpers.ts
136
+ var ValidationError = class extends Error {
137
+ constructor(message, cause) {
138
+ super(message, { cause });
139
+ this.cause = cause;
140
+ this.name = "ClientValidationError";
141
+ }
142
+ };
143
+ function parseWithSchema(options) {
144
+ const { schema, value, description } = options;
145
+ const outcome = schema.safeParse(value);
146
+ if (outcome.success) {
147
+ return { success: true, data: outcome.data };
148
+ }
149
+ const error = new ValidationError(description ?? "Validation failed", outcome.error);
150
+ return { success: false, error };
151
+ }
152
+ function parseWithRegistry(options) {
153
+ const schema = schemaRegistry.get(options.key);
154
+ if (!schema) {
155
+ if (options.skipOnMissingSchema) {
156
+ return { success: true, data: options.value };
157
+ }
158
+ return { success: false, error: new ValidationError(`No schema registered for ${options.key.operationId}`) };
159
+ }
160
+ return parseWithSchema({ schema, value: options.value, description: options.description });
161
+ }
162
+
163
+ // src/core/http/operation.helper.ts
164
+ async function requestJson(http, params) {
165
+ const {
166
+ operationId,
167
+ method,
168
+ path,
169
+ query,
170
+ body,
171
+ schemaKey,
172
+ requestSchemaKey,
173
+ description,
174
+ querySerializer,
175
+ signal,
176
+ timeoutMs,
177
+ validation,
178
+ meta
179
+ } = params;
180
+ const runtimeValidation = mergeRuntimeValidation(http.getRuntimeValidationConfig(), validation);
181
+ let requestBody = body;
182
+ if (runtimeValidation.requests && requestSchemaKey && body !== void 0) {
183
+ const parsedRequest = parseWithRegistry({
184
+ key: requestSchemaKey,
185
+ value: body,
186
+ description: `${description ?? operationId} request`,
187
+ skipOnMissingSchema: true
188
+ });
189
+ if (!parsedRequest.success) {
190
+ throw parsedRequest.error;
191
+ }
192
+ requestBody = parsedRequest.data;
193
+ }
194
+ const metaValidation = validation ?? meta?.validation;
195
+ const requestMeta = {
196
+ ...meta ?? {},
197
+ operationId,
198
+ validation: metaValidation
199
+ };
200
+ const res = await http.request({
201
+ method,
202
+ path,
203
+ query,
204
+ body: requestBody,
205
+ querySerializer,
206
+ signal,
207
+ timeoutMs,
208
+ meta: requestMeta
209
+ });
210
+ if (!runtimeValidation.responses) {
211
+ return res.data;
212
+ }
213
+ const parsedResponse = parseWithRegistry({ key: schemaKey, value: res.data, description });
214
+ if (!parsedResponse.success) throw parsedResponse.error;
215
+ return parsedResponse.data;
216
+ }
217
+ async function requestVoid(http, params) {
218
+ const { operationId, method, path, query, body, querySerializer, signal, timeoutMs, requestSchemaKey, validation, meta } = params;
219
+ const runtimeValidation = mergeRuntimeValidation(http.getRuntimeValidationConfig(), validation);
220
+ let requestBody = body;
221
+ if (runtimeValidation.requests && requestSchemaKey && body !== void 0) {
222
+ const parsedRequest = parseWithRegistry({
223
+ key: requestSchemaKey,
224
+ value: body,
225
+ description: `${operationId} request`,
226
+ skipOnMissingSchema: true
227
+ });
228
+ if (!parsedRequest.success) {
229
+ throw parsedRequest.error;
230
+ }
231
+ requestBody = parsedRequest.data;
232
+ }
233
+ const metaValidation = validation ?? meta?.validation;
234
+ const requestMeta = {
235
+ ...meta ?? {},
236
+ operationId,
237
+ validation: metaValidation
238
+ };
239
+ await http.request({
240
+ method,
241
+ path,
242
+ query,
243
+ body: requestBody,
244
+ querySerializer,
245
+ signal,
246
+ timeoutMs,
247
+ meta: requestMeta
248
+ });
249
+ }
250
+
251
+ // src/domains/requests/requests.facade.ts
252
+ var OP_CREATE = "RequestControllerV2_createRequest_v2";
253
+ var OP_PAYMENT_ROUTES = "RequestControllerV2_getRequestPaymentRoutes_v2";
254
+ var OP_PAYMENT_CALLDATA = "RequestControllerV2_getPaymentCalldata_v2";
255
+ var OP_UPDATE = "RequestControllerV2_updateRequest_v2";
256
+ var OP_SEND_PAYMENT_INTENT = "RequestControllerV2_sendPaymentIntent_v2";
257
+ var OP_REQUEST_STATUS = "RequestControllerV2_getRequestStatus_v2";
258
+ var KIND_CALLDATA = "calldata";
259
+ var KIND_PAYMENT_INTENT = "paymentIntent";
260
+ function isPaymentIntentPayload(payload) {
261
+ return "paymentIntentId" in payload;
262
+ }
263
+ function isCalldataPayload(payload) {
264
+ return "transactions" in payload;
265
+ }
266
+ function createRequestsApi(http) {
267
+ return {
268
+ async create(body, options) {
269
+ return requestJson(http, {
270
+ operationId: OP_CREATE,
271
+ method: "POST",
272
+ path: "/v2/request",
273
+ body,
274
+ requestSchemaKey: { operationId: OP_CREATE, kind: "request", variant: "application/json" },
275
+ schemaKey: { operationId: OP_CREATE, kind: "response", status: 201 },
276
+ description: "Create request",
277
+ signal: options?.signal,
278
+ timeoutMs: options?.timeoutMs,
279
+ validation: options?.validation,
280
+ meta: options?.meta
281
+ });
282
+ },
283
+ async getRequestStatus(requestId, options) {
284
+ const path = `/v2/request/${encodeURIComponent(requestId)}`;
285
+ const raw = await requestJson(http, {
286
+ operationId: OP_REQUEST_STATUS,
287
+ method: "GET",
288
+ path,
289
+ schemaKey: { operationId: OP_REQUEST_STATUS, kind: "response", status: 200 },
290
+ description: "Request status",
291
+ signal: options?.signal,
292
+ timeoutMs: options?.timeoutMs,
293
+ validation: options?.validation,
294
+ meta: options?.meta
295
+ });
296
+ return normalizeRequestStatusResponse(raw);
297
+ },
298
+ async getPaymentRoutes(requestId, options) {
299
+ const path = `/v2/request/${encodeURIComponent(requestId)}/routes`;
300
+ return requestJson(http, {
301
+ operationId: OP_PAYMENT_ROUTES,
302
+ method: "GET",
303
+ path,
304
+ query: buildRequestQuery({
305
+ wallet: options.wallet,
306
+ amount: options.amount,
307
+ feePercentage: options.feePercentage,
308
+ feeAddress: options.feeAddress
309
+ }),
310
+ schemaKey: { operationId: OP_PAYMENT_ROUTES, kind: "response", status: 200 },
311
+ description: "Payment routes",
312
+ signal: options.signal,
313
+ timeoutMs: options.timeoutMs,
314
+ validation: options.validation,
315
+ meta: options.meta
316
+ });
317
+ },
318
+ async getPaymentCalldata(requestId, options) {
319
+ const path = `/v2/request/${encodeURIComponent(requestId)}/pay`;
320
+ const queryInput = {
321
+ wallet: options?.wallet,
322
+ chain: options?.chain,
323
+ token: options?.token,
324
+ amount: options?.amount,
325
+ clientUserId: options?.clientUserId,
326
+ paymentDetailsId: options?.paymentDetailsId,
327
+ feePercentage: options?.feePercentage,
328
+ feeAddress: options?.feeAddress
329
+ };
330
+ const raw = await requestJson(http, {
331
+ operationId: OP_PAYMENT_CALLDATA,
332
+ method: "GET",
333
+ path,
334
+ query: buildRequestQuery(queryInput),
335
+ schemaKey: { operationId: OP_PAYMENT_CALLDATA, kind: "response", status: 200 },
336
+ description: "Payment calldata",
337
+ signal: options?.signal,
338
+ timeoutMs: options?.timeoutMs,
339
+ validation: options?.validation,
340
+ meta: options?.meta
341
+ });
342
+ if (isCalldataPayload(raw)) {
343
+ return { kind: KIND_CALLDATA, ...raw };
344
+ }
345
+ if (isPaymentIntentPayload(raw)) {
346
+ return { kind: KIND_PAYMENT_INTENT, ...raw };
347
+ }
348
+ throw new ValidationError("Unexpected payment calldata response", raw);
349
+ },
350
+ async update(requestId, options) {
351
+ const path = `/v2/request/${encodeURIComponent(requestId)}`;
352
+ await requestVoid(http, {
353
+ operationId: OP_UPDATE,
354
+ method: "PATCH",
355
+ path,
356
+ signal: options?.signal,
357
+ timeoutMs: options?.timeoutMs,
358
+ validation: options?.validation,
359
+ meta: options?.meta
360
+ });
361
+ },
362
+ async sendPaymentIntent(paymentIntentId, body, options) {
363
+ const path = `/v2/request/payment-intents/${encodeURIComponent(paymentIntentId)}`;
364
+ await requestVoid(http, {
365
+ operationId: OP_SEND_PAYMENT_INTENT,
366
+ method: "POST",
367
+ path,
368
+ body,
369
+ requestSchemaKey: { operationId: OP_SEND_PAYMENT_INTENT, kind: "request", variant: "application/json" },
370
+ signal: options?.signal,
371
+ timeoutMs: options?.timeoutMs,
372
+ validation: options?.validation,
373
+ meta: options?.meta
374
+ });
375
+ }
376
+ };
377
+ }
378
+ var ErrorDetailSchema = z.object({
379
+ message: z.string(),
380
+ code: z.string().optional(),
381
+ field: z.string().optional(),
382
+ source: z.object({
383
+ pointer: z.string().optional(),
384
+ parameter: z.string().optional()
385
+ }).passthrough().optional(),
386
+ meta: z.record(z.unknown()).optional()
387
+ }).passthrough();
388
+ var ErrorEnvelopeSchema = z.object({
389
+ status: z.number().optional(),
390
+ statusCode: z.number().optional(),
391
+ code: z.string().optional(),
392
+ error: z.string().optional(),
393
+ message: z.union([
394
+ z.string(),
395
+ z.array(z.union([z.string(), ErrorDetailSchema])),
396
+ ErrorDetailSchema
397
+ ]).optional(),
398
+ detail: z.unknown().optional(),
399
+ errors: z.array(ErrorDetailSchema).optional(),
400
+ requestId: z.string().optional(),
401
+ correlationId: z.string().optional(),
402
+ retryAfter: z.union([z.number(), z.string()]).optional(),
403
+ retryAfterMs: z.number().optional(),
404
+ meta: z.record(z.unknown()).optional()
405
+ }).passthrough();
406
+ var RequestControllerV1_createRequest_v1_Request = z.object({ "payer": z.string().optional(), "payee": z.string(), "amount": z.string(), "invoiceCurrency": z.string(), "paymentCurrency": z.string(), "recurrence": z.object({ "startDate": z.string(), "frequency": z.enum(["DAILY", "WEEKLY", "MONTHLY", "YEARLY"]) }).passthrough().optional() }).passthrough();
407
+ schemaRegistry.register({ key: { operationId: "RequestControllerV1_createRequest_v1", kind: "request", variant: "application/json" }, schema: RequestControllerV1_createRequest_v1_Request });
408
+ var RequestControllerV1_createRequest_v1_201 = z.object({ "paymentReference": z.string().optional(), "requestID": z.string().optional() }).passthrough();
409
+ schemaRegistry.register({ key: { operationId: "RequestControllerV1_createRequest_v1", kind: "response", status: 201 }, schema: RequestControllerV1_createRequest_v1_201 });
410
+ var RequestControllerV1_createRequest_v1_400 = ErrorEnvelopeSchema;
411
+ schemaRegistry.register({ key: { operationId: "RequestControllerV1_createRequest_v1", kind: "response", status: 400 }, schema: RequestControllerV1_createRequest_v1_400 });
412
+ var RequestControllerV1_createRequest_v1_401 = ErrorEnvelopeSchema;
413
+ schemaRegistry.register({ key: { operationId: "RequestControllerV1_createRequest_v1", kind: "response", status: 401 }, schema: RequestControllerV1_createRequest_v1_401 });
414
+ var RequestControllerV1_createRequest_v1_404 = ErrorEnvelopeSchema;
415
+ schemaRegistry.register({ key: { operationId: "RequestControllerV1_createRequest_v1", kind: "response", status: 404 }, schema: RequestControllerV1_createRequest_v1_404 });
416
+ var RequestControllerV1_createRequest_v1_429 = ErrorEnvelopeSchema;
417
+ schemaRegistry.register({ key: { operationId: "RequestControllerV1_createRequest_v1", kind: "response", status: 429 }, schema: RequestControllerV1_createRequest_v1_429 });
418
+ var RequestControllerV1_getRequestStatus_v1_200 = z.object({ "hasBeenPaid": z.boolean().optional(), "paymentReference": z.string().optional(), "requestId": z.string().optional(), "isListening": z.boolean().optional(), "txHash": z.string().nullable().optional() }).passthrough();
419
+ schemaRegistry.register({ key: { operationId: "RequestControllerV1_getRequestStatus_v1", kind: "response", status: 200 }, schema: RequestControllerV1_getRequestStatus_v1_200 });
420
+ var RequestControllerV1_getRequestStatus_v1_401 = ErrorEnvelopeSchema;
421
+ schemaRegistry.register({ key: { operationId: "RequestControllerV1_getRequestStatus_v1", kind: "response", status: 401 }, schema: RequestControllerV1_getRequestStatus_v1_401 });
422
+ var RequestControllerV1_getRequestStatus_v1_404 = ErrorEnvelopeSchema;
423
+ schemaRegistry.register({ key: { operationId: "RequestControllerV1_getRequestStatus_v1", kind: "response", status: 404 }, schema: RequestControllerV1_getRequestStatus_v1_404 });
424
+ var RequestControllerV1_getRequestStatus_v1_429 = ErrorEnvelopeSchema;
425
+ schemaRegistry.register({ key: { operationId: "RequestControllerV1_getRequestStatus_v1", kind: "response", status: 429 }, schema: RequestControllerV1_getRequestStatus_v1_429 });
426
+ var RequestControllerV1_stopRecurrenceRequest_v1_200 = z.unknown();
427
+ schemaRegistry.register({ key: { operationId: "RequestControllerV1_stopRecurrenceRequest_v1", kind: "response", status: 200 }, schema: RequestControllerV1_stopRecurrenceRequest_v1_200 });
428
+ var RequestControllerV1_stopRecurrenceRequest_v1_401 = ErrorEnvelopeSchema;
429
+ schemaRegistry.register({ key: { operationId: "RequestControllerV1_stopRecurrenceRequest_v1", kind: "response", status: 401 }, schema: RequestControllerV1_stopRecurrenceRequest_v1_401 });
430
+ var RequestControllerV1_stopRecurrenceRequest_v1_404 = ErrorEnvelopeSchema;
431
+ schemaRegistry.register({ key: { operationId: "RequestControllerV1_stopRecurrenceRequest_v1", kind: "response", status: 404 }, schema: RequestControllerV1_stopRecurrenceRequest_v1_404 });
432
+ var RequestControllerV1_stopRecurrenceRequest_v1_429 = ErrorEnvelopeSchema;
433
+ schemaRegistry.register({ key: { operationId: "RequestControllerV1_stopRecurrenceRequest_v1", kind: "response", status: 429 }, schema: RequestControllerV1_stopRecurrenceRequest_v1_429 });
434
+ var RequestControllerV1_getPaymentCalldata_v1_200 = z.union([z.object({ "transactions": z.array(z.object({ "data": z.string(), "to": z.string(), "value": z.object({ "type": z.enum(["BigNumber"]).optional(), "hex": z.string().optional() }).passthrough() }).passthrough()), "metadata": z.object({ "stepsRequired": z.number(), "needsApproval": z.boolean(), "approvalTransactionIndex": z.number().nullable().optional(), "hasEnoughBalance": z.boolean(), "hasEnoughGas": z.boolean() }).passthrough() }).passthrough(), z.object({ "paymentIntentId": z.string(), "paymentIntent": z.string(), "approvalPermitPayload": z.string().nullable().optional(), "approvalCalldata": z.object({ "to": z.string().optional(), "data": z.string().optional(), "value": z.string().optional() }).passthrough().nullable().optional(), "metadata": z.object({ "supportsEIP2612": z.boolean() }).passthrough() }).passthrough()]);
435
+ schemaRegistry.register({ key: { operationId: "RequestControllerV1_getPaymentCalldata_v1", kind: "response", status: 200 }, schema: RequestControllerV1_getPaymentCalldata_v1_200 });
436
+ var RequestControllerV1_getPaymentCalldata_v1_400 = ErrorEnvelopeSchema;
437
+ schemaRegistry.register({ key: { operationId: "RequestControllerV1_getPaymentCalldata_v1", kind: "response", status: 400 }, schema: RequestControllerV1_getPaymentCalldata_v1_400 });
438
+ var RequestControllerV1_getPaymentCalldata_v1_401 = ErrorEnvelopeSchema;
439
+ schemaRegistry.register({ key: { operationId: "RequestControllerV1_getPaymentCalldata_v1", kind: "response", status: 401 }, schema: RequestControllerV1_getPaymentCalldata_v1_401 });
440
+ var RequestControllerV1_getPaymentCalldata_v1_404 = ErrorEnvelopeSchema;
441
+ schemaRegistry.register({ key: { operationId: "RequestControllerV1_getPaymentCalldata_v1", kind: "response", status: 404 }, schema: RequestControllerV1_getPaymentCalldata_v1_404 });
442
+ var RequestControllerV1_getPaymentCalldata_v1_429 = ErrorEnvelopeSchema;
443
+ schemaRegistry.register({ key: { operationId: "RequestControllerV1_getPaymentCalldata_v1", kind: "response", status: 429 }, schema: RequestControllerV1_getPaymentCalldata_v1_429 });
444
+ var RequestControllerV1_getRequestPaymentRoutes_v1_200 = z.object({ "routes": z.array(z.object({ "id": z.string(), "fee": z.number(), "feeBreakdown": z.array(z.object({ "type": z.enum(["gas", "platform", "crosschain", "crypto-to-fiat", "offramp"]).optional(), "stage": z.enum(["sending", "receiving", "proxying", "refunding", "overall"]).optional(), "provider": z.string().optional(), "amount": z.string().optional(), "amountInUSD": z.string().optional(), "currency": z.string().optional(), "receiverAddress": z.string().optional(), "network": z.string().optional(), "rateProvider": z.string().optional() }).passthrough()).optional(), "speed": z.union([z.string(), z.number()]), "price_impact": z.number().optional(), "chain": z.string(), "token": z.string() }).passthrough()) }).passthrough();
445
+ schemaRegistry.register({ key: { operationId: "RequestControllerV1_getRequestPaymentRoutes_v1", kind: "response", status: 200 }, schema: RequestControllerV1_getRequestPaymentRoutes_v1_200 });
446
+ var RequestControllerV1_getRequestPaymentRoutes_v1_400 = ErrorEnvelopeSchema;
447
+ schemaRegistry.register({ key: { operationId: "RequestControllerV1_getRequestPaymentRoutes_v1", kind: "response", status: 400 }, schema: RequestControllerV1_getRequestPaymentRoutes_v1_400 });
448
+ var RequestControllerV1_getRequestPaymentRoutes_v1_401 = ErrorEnvelopeSchema;
449
+ schemaRegistry.register({ key: { operationId: "RequestControllerV1_getRequestPaymentRoutes_v1", kind: "response", status: 401 }, schema: RequestControllerV1_getRequestPaymentRoutes_v1_401 });
450
+ var RequestControllerV1_getRequestPaymentRoutes_v1_404 = ErrorEnvelopeSchema;
451
+ schemaRegistry.register({ key: { operationId: "RequestControllerV1_getRequestPaymentRoutes_v1", kind: "response", status: 404 }, schema: RequestControllerV1_getRequestPaymentRoutes_v1_404 });
452
+ var RequestControllerV1_getRequestPaymentRoutes_v1_429 = ErrorEnvelopeSchema;
453
+ schemaRegistry.register({ key: { operationId: "RequestControllerV1_getRequestPaymentRoutes_v1", kind: "response", status: 429 }, schema: RequestControllerV1_getRequestPaymentRoutes_v1_429 });
454
+ var RequestControllerV1_sendPaymentIntent_v1_Request = z.object({ "signedPaymentIntent": z.object({ "signature": z.string(), "nonce": z.string(), "deadline": z.string() }).passthrough(), "signedApprovalPermit": z.object({ "signature": z.string(), "nonce": z.string(), "deadline": z.string() }).passthrough().optional() }).passthrough();
455
+ schemaRegistry.register({ key: { operationId: "RequestControllerV1_sendPaymentIntent_v1", kind: "request", variant: "application/json" }, schema: RequestControllerV1_sendPaymentIntent_v1_Request });
456
+ var RequestControllerV1_sendPaymentIntent_v1_401 = ErrorEnvelopeSchema;
457
+ schemaRegistry.register({ key: { operationId: "RequestControllerV1_sendPaymentIntent_v1", kind: "response", status: 401 }, schema: RequestControllerV1_sendPaymentIntent_v1_401 });
458
+ var RequestControllerV1_sendPaymentIntent_v1_404 = ErrorEnvelopeSchema;
459
+ schemaRegistry.register({ key: { operationId: "RequestControllerV1_sendPaymentIntent_v1", kind: "response", status: 404 }, schema: RequestControllerV1_sendPaymentIntent_v1_404 });
460
+ var RequestControllerV1_sendPaymentIntent_v1_429 = ErrorEnvelopeSchema;
461
+ schemaRegistry.register({ key: { operationId: "RequestControllerV1_sendPaymentIntent_v1", kind: "response", status: 429 }, schema: RequestControllerV1_sendPaymentIntent_v1_429 });
462
+ var RequestControllerV2_createRequest_v2_Request = z.object({ "payer": z.string().optional(), "payee": z.string().optional(), "amount": z.string(), "invoiceCurrency": z.string(), "paymentCurrency": z.string(), "recurrence": z.object({ "startDate": z.string(), "frequency": z.enum(["DAILY", "WEEKLY", "MONTHLY", "YEARLY"]) }).passthrough().optional(), "isCryptoToFiatAvailable": z.boolean().optional(), "customerInfo": z.object({ "firstName": z.string().optional(), "lastName": z.string().optional(), "email": z.string().optional(), "address": z.object({ "street": z.string().optional(), "city": z.string().optional(), "state": z.string().optional(), "postalCode": z.string().optional(), "country": z.string().optional() }).passthrough().optional() }).passthrough().optional(), "reference": z.string().optional(), "originalRequestId": z.string().optional(), "originalRequestPaymentReference": z.string().optional() }).passthrough();
463
+ schemaRegistry.register({ key: { operationId: "RequestControllerV2_createRequest_v2", kind: "request", variant: "application/json" }, schema: RequestControllerV2_createRequest_v2_Request });
464
+ var RequestControllerV2_createRequest_v2_201 = z.object({ "paymentReference": z.string().optional(), "requestId": z.string().optional() }).passthrough();
465
+ schemaRegistry.register({ key: { operationId: "RequestControllerV2_createRequest_v2", kind: "response", status: 201 }, schema: RequestControllerV2_createRequest_v2_201 });
466
+ var RequestControllerV2_createRequest_v2_400 = ErrorEnvelopeSchema;
467
+ schemaRegistry.register({ key: { operationId: "RequestControllerV2_createRequest_v2", kind: "response", status: 400 }, schema: RequestControllerV2_createRequest_v2_400 });
468
+ var RequestControllerV2_createRequest_v2_404 = ErrorEnvelopeSchema;
469
+ schemaRegistry.register({ key: { operationId: "RequestControllerV2_createRequest_v2", kind: "response", status: 404 }, schema: RequestControllerV2_createRequest_v2_404 });
470
+ var RequestControllerV2_createRequest_v2_429 = ErrorEnvelopeSchema;
471
+ schemaRegistry.register({ key: { operationId: "RequestControllerV2_createRequest_v2", kind: "response", status: 429 }, schema: RequestControllerV2_createRequest_v2_429 });
472
+ var RequestControllerV2_getRequestStatus_v2_200 = z.object({ "hasBeenPaid": z.boolean().optional(), "paymentReference": z.string().optional(), "requestId": z.string().optional(), "isListening": z.boolean().optional(), "txHash": z.string().nullable().optional(), "recurrence": z.object({}).passthrough().optional(), "originalRequestId": z.string().optional(), "status": z.string().optional(), "isCryptoToFiatAvailable": z.boolean().optional(), "originalRequestPaymentReference": z.string().optional(), "payments": z.array(z.object({}).passthrough()).optional(), "isRecurrenceStopped": z.boolean().optional(), "customerInfo": z.object({ "firstName": z.string().optional(), "lastName": z.string().optional(), "email": z.string().optional(), "address": z.object({ "street": z.string().optional(), "city": z.string().optional(), "state": z.string().optional(), "postalCode": z.string().optional(), "country": z.string().optional() }).passthrough().optional() }).passthrough().nullable().optional(), "reference": z.string().nullable().optional() }).passthrough();
473
+ schemaRegistry.register({ key: { operationId: "RequestControllerV2_getRequestStatus_v2", kind: "response", status: 200 }, schema: RequestControllerV2_getRequestStatus_v2_200 });
474
+ var RequestControllerV2_getRequestStatus_v2_404 = ErrorEnvelopeSchema;
475
+ schemaRegistry.register({ key: { operationId: "RequestControllerV2_getRequestStatus_v2", kind: "response", status: 404 }, schema: RequestControllerV2_getRequestStatus_v2_404 });
476
+ var RequestControllerV2_getRequestStatus_v2_429 = ErrorEnvelopeSchema;
477
+ schemaRegistry.register({ key: { operationId: "RequestControllerV2_getRequestStatus_v2", kind: "response", status: 429 }, schema: RequestControllerV2_getRequestStatus_v2_429 });
478
+ var RequestControllerV2_updateRequest_v2_200 = z.unknown();
479
+ schemaRegistry.register({ key: { operationId: "RequestControllerV2_updateRequest_v2", kind: "response", status: 200 }, schema: RequestControllerV2_updateRequest_v2_200 });
480
+ var RequestControllerV2_updateRequest_v2_404 = ErrorEnvelopeSchema;
481
+ schemaRegistry.register({ key: { operationId: "RequestControllerV2_updateRequest_v2", kind: "response", status: 404 }, schema: RequestControllerV2_updateRequest_v2_404 });
482
+ var RequestControllerV2_updateRequest_v2_429 = ErrorEnvelopeSchema;
483
+ schemaRegistry.register({ key: { operationId: "RequestControllerV2_updateRequest_v2", kind: "response", status: 429 }, schema: RequestControllerV2_updateRequest_v2_429 });
484
+ var RequestControllerV2_getPaymentCalldata_v2_200 = z.union([z.object({ "transactions": z.array(z.object({ "data": z.string(), "to": z.string(), "value": z.object({ "type": z.enum(["BigNumber"]).optional(), "hex": z.string().optional() }).passthrough() }).passthrough()), "metadata": z.object({ "stepsRequired": z.number(), "needsApproval": z.boolean(), "approvalTransactionIndex": z.number().nullable().optional(), "hasEnoughBalance": z.boolean(), "hasEnoughGas": z.boolean() }).passthrough() }).passthrough(), z.object({ "paymentIntentId": z.string(), "paymentIntent": z.string(), "approvalPermitPayload": z.string().nullable().optional(), "approvalCalldata": z.object({ "to": z.string().optional(), "data": z.string().optional(), "value": z.string().optional() }).passthrough().nullable().optional(), "metadata": z.object({ "supportsEIP2612": z.boolean() }).passthrough() }).passthrough()]);
485
+ schemaRegistry.register({ key: { operationId: "RequestControllerV2_getPaymentCalldata_v2", kind: "response", status: 200 }, schema: RequestControllerV2_getPaymentCalldata_v2_200 });
486
+ var RequestControllerV2_getPaymentCalldata_v2_400 = ErrorEnvelopeSchema;
487
+ schemaRegistry.register({ key: { operationId: "RequestControllerV2_getPaymentCalldata_v2", kind: "response", status: 400 }, schema: RequestControllerV2_getPaymentCalldata_v2_400 });
488
+ var RequestControllerV2_getPaymentCalldata_v2_404 = ErrorEnvelopeSchema;
489
+ schemaRegistry.register({ key: { operationId: "RequestControllerV2_getPaymentCalldata_v2", kind: "response", status: 404 }, schema: RequestControllerV2_getPaymentCalldata_v2_404 });
490
+ var RequestControllerV2_getPaymentCalldata_v2_429 = ErrorEnvelopeSchema;
491
+ schemaRegistry.register({ key: { operationId: "RequestControllerV2_getPaymentCalldata_v2", kind: "response", status: 429 }, schema: RequestControllerV2_getPaymentCalldata_v2_429 });
492
+ var RequestControllerV2_getRequestPaymentRoutes_v2_200 = z.object({ "routes": z.array(z.object({ "id": z.string(), "fee": z.number(), "feeBreakdown": z.array(z.object({ "type": z.enum(["gas", "platform", "crosschain", "crypto-to-fiat", "offramp"]).optional(), "stage": z.enum(["sending", "receiving", "proxying", "refunding", "overall"]).optional(), "provider": z.string().optional(), "amount": z.string().optional(), "amountInUSD": z.string().optional(), "currency": z.string().optional(), "receiverAddress": z.string().optional(), "network": z.string().optional(), "rateProvider": z.string().optional() }).passthrough()).optional(), "speed": z.union([z.string(), z.number()]), "price_impact": z.number().optional(), "chain": z.string(), "token": z.string() }).passthrough()) }).passthrough();
493
+ schemaRegistry.register({ key: { operationId: "RequestControllerV2_getRequestPaymentRoutes_v2", kind: "response", status: 200 }, schema: RequestControllerV2_getRequestPaymentRoutes_v2_200 });
494
+ var RequestControllerV2_getRequestPaymentRoutes_v2_400 = ErrorEnvelopeSchema;
495
+ schemaRegistry.register({ key: { operationId: "RequestControllerV2_getRequestPaymentRoutes_v2", kind: "response", status: 400 }, schema: RequestControllerV2_getRequestPaymentRoutes_v2_400 });
496
+ var RequestControllerV2_getRequestPaymentRoutes_v2_404 = ErrorEnvelopeSchema;
497
+ schemaRegistry.register({ key: { operationId: "RequestControllerV2_getRequestPaymentRoutes_v2", kind: "response", status: 404 }, schema: RequestControllerV2_getRequestPaymentRoutes_v2_404 });
498
+ var RequestControllerV2_getRequestPaymentRoutes_v2_429 = ErrorEnvelopeSchema;
499
+ schemaRegistry.register({ key: { operationId: "RequestControllerV2_getRequestPaymentRoutes_v2", kind: "response", status: 429 }, schema: RequestControllerV2_getRequestPaymentRoutes_v2_429 });
500
+ var RequestControllerV2_sendPaymentIntent_v2_Request = z.object({ "signedPaymentIntent": z.object({ "signature": z.string(), "nonce": z.string(), "deadline": z.string() }).passthrough(), "signedApprovalPermit": z.object({ "signature": z.string(), "nonce": z.string(), "deadline": z.string() }).passthrough().optional() }).passthrough();
501
+ schemaRegistry.register({ key: { operationId: "RequestControllerV2_sendPaymentIntent_v2", kind: "request", variant: "application/json" }, schema: RequestControllerV2_sendPaymentIntent_v2_Request });
502
+ var RequestControllerV2_sendPaymentIntent_v2_200 = z.unknown();
503
+ schemaRegistry.register({ key: { operationId: "RequestControllerV2_sendPaymentIntent_v2", kind: "response", status: 200 }, schema: RequestControllerV2_sendPaymentIntent_v2_200 });
504
+ var RequestControllerV2_sendPaymentIntent_v2_404 = ErrorEnvelopeSchema;
505
+ schemaRegistry.register({ key: { operationId: "RequestControllerV2_sendPaymentIntent_v2", kind: "response", status: 404 }, schema: RequestControllerV2_sendPaymentIntent_v2_404 });
506
+ var RequestControllerV2_sendPaymentIntent_v2_429 = ErrorEnvelopeSchema;
507
+ schemaRegistry.register({ key: { operationId: "RequestControllerV2_sendPaymentIntent_v2", kind: "response", status: 429 }, schema: RequestControllerV2_sendPaymentIntent_v2_429 });
508
+ var NullableRequestStatusSchema = z.preprocess((value) => {
509
+ if (!value || typeof value !== "object") {
510
+ return value;
511
+ }
512
+ const next = { ...value };
513
+ if (next.recurrence === null) {
514
+ delete next.recurrence;
515
+ }
516
+ if (next.originalRequestId === null) {
517
+ next.originalRequestId = void 0;
518
+ }
519
+ if (next.originalRequestPaymentReference === null) {
520
+ next.originalRequestPaymentReference = void 0;
521
+ }
522
+ return next;
523
+ }, RequestControllerV2_getRequestStatus_v2_200);
524
+ schemaRegistry.register({
525
+ key: { operationId: "RequestControllerV2_getRequestStatus_v2", kind: "response", status: 200 },
526
+ schema: NullableRequestStatusSchema
527
+ });
528
+ var FlexibleRoutesSchema = z.object({
529
+ routes: z.array(
530
+ z.object({
531
+ fee: z.union([z.number(), z.string()]).optional()
532
+ }).passthrough()
533
+ )
534
+ }).passthrough();
535
+ schemaRegistry.register({
536
+ key: { operationId: "RequestControllerV2_getRequestPaymentRoutes_v2", kind: "response", status: 200 },
537
+ schema: FlexibleRoutesSchema
538
+ });
539
+
540
+ export { createRequestsApi };
541
+ //# sourceMappingURL=index.js.map
542
+ //# sourceMappingURL=index.js.map