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