@marcohefti/request-network-api-client 0.5.10 → 0.5.12

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 (40) hide show
  1. package/README.md +4 -4
  2. package/dist/cjs/domains/client-ids/index.js +5 -5
  3. package/dist/cjs/domains/client-ids/index.js.map +1 -1
  4. package/dist/cjs/domains/currencies/index.js +15 -15
  5. package/dist/cjs/domains/currencies/index.js.map +1 -1
  6. package/dist/cjs/domains/payee-destination/index.js +276 -0
  7. package/dist/cjs/domains/payee-destination/index.js.map +1 -0
  8. package/dist/cjs/domains/payouts/index.js +2 -2
  9. package/dist/cjs/domains/payouts/index.js.map +1 -1
  10. package/dist/cjs/domains/requests/index.js +7 -5
  11. package/dist/cjs/domains/requests/index.js.map +1 -1
  12. package/dist/cjs/index.js +271 -112
  13. package/dist/cjs/index.js.map +1 -1
  14. package/dist/esm/domains/client-ids/index.d.mts +2 -2
  15. package/dist/esm/domains/client-ids/index.js +5 -5
  16. package/dist/esm/domains/client-ids/index.js.map +1 -1
  17. package/dist/esm/domains/currencies/index.d.mts +2 -2
  18. package/dist/esm/domains/currencies/index.js +15 -15
  19. package/dist/esm/domains/currencies/index.js.map +1 -1
  20. package/dist/esm/domains/payee-destination/index.d.mts +2 -0
  21. package/dist/esm/domains/payee-destination/index.js +274 -0
  22. package/dist/esm/domains/payee-destination/index.js.map +1 -0
  23. package/dist/esm/domains/payer/index.d.mts +2 -2
  24. package/dist/esm/domains/payouts/index.d.mts +2 -2
  25. package/dist/esm/domains/payouts/index.js +2 -2
  26. package/dist/esm/domains/payouts/index.js.map +1 -1
  27. package/dist/esm/domains/requests/index.d.mts +2 -2
  28. package/dist/esm/domains/requests/index.js +7 -5
  29. package/dist/esm/domains/requests/index.js.map +1 -1
  30. package/dist/esm/{index-Bum0bfZQ.d.mts → index-DJGHELE1.d.mts} +16 -16
  31. package/dist/esm/{index-Q2g0D7V8.d.mts → index-DJjp2Jbk.d.mts} +1 -1
  32. package/dist/esm/index-DQIf9k5x.d.mts +31 -0
  33. package/dist/esm/{index-BmWmfcnn.d.mts → index-DbnV_D6L.d.mts} +1 -1
  34. package/dist/esm/{index-CNK36ZX5.d.mts → index-hYoC2ndH.d.mts} +1 -1
  35. package/dist/esm/{index-Cd7x0Hv-.d.mts → index-y1nxa55y.d.mts} +1 -1
  36. package/dist/esm/index.d.mts +124 -120
  37. package/dist/esm/index.js +271 -113
  38. package/dist/esm/index.js.map +1 -1
  39. package/dist/esm/{openapi-types-CtUFCrk4.d.mts → openapi-types-CQ1z27_K.d.mts} +310 -51
  40. package/package.json +13 -7
@@ -1,2 +1,2 @@
1
- export { d as ClientIdCreateBody, b as ClientIdListResponse, a as ClientIdResponse, e as ClientIdUpdateBody, C as ClientIdsApi, c as createClientIdsApi } from '../../index-CNK36ZX5.mjs';
2
- import '../../openapi-types-CtUFCrk4.mjs';
1
+ export { d as ClientIdCreateBody, b as ClientIdListResponse, a as ClientIdResponse, e as ClientIdUpdateBody, C as ClientIdsApi, c as createClientIdsApi } from '../../index-hYoC2ndH.mjs';
2
+ import '../../openapi-types-CQ1z27_K.mjs';
@@ -263,9 +263,9 @@ var ClientIdV2Controller_findAll_v2_401 = ErrorEnvelopeSchema;
263
263
  schemaRegistry.register({ key: { operationId: "ClientIdV2Controller_findAll_v2", kind: "response", status: 401 }, schema: ClientIdV2Controller_findAll_v2_401 });
264
264
  var ClientIdV2Controller_findAll_v2_429 = ErrorEnvelopeSchema;
265
265
  schemaRegistry.register({ key: { operationId: "ClientIdV2Controller_findAll_v2", kind: "response", status: 429 }, schema: ClientIdV2Controller_findAll_v2_429 });
266
- var ClientIdV2Controller_create_v2_Request = z.object({ "label": z.string(), "allowedDomains": z.array(z.string()), "feePercentage": z.string().optional(), "feeAddress": z.string().optional() }).passthrough();
266
+ var ClientIdV2Controller_create_v2_Request = z.object({ "label": z.string(), "allowedDomains": z.array(z.string()), "feePercentage": z.string().optional(), "feeAddress": z.string().optional(), "operatorWalletAddress": z.string().optional(), "defaultPreApprovalExpiry": z.number().optional(), "defaultAuthorizationExpiry": z.number().optional() }).passthrough();
267
267
  schemaRegistry.register({ key: { operationId: "ClientIdV2Controller_create_v2", kind: "request", variant: "application/json" }, schema: ClientIdV2Controller_create_v2_Request });
268
- var ClientIdV2Controller_create_v2_201 = z.object({ "id": z.string().optional(), "clientId": z.string().optional(), "label": z.string().optional(), "allowedDomains": z.array(z.string()).optional(), "feePercentage": z.string().nullable().optional(), "feeAddress": z.string().nullable().optional(), "status": z.string().optional(), "createdAt": z.string().optional() }).passthrough();
268
+ var ClientIdV2Controller_create_v2_201 = z.object({ "id": z.string().optional(), "clientId": z.string().optional(), "label": z.string().optional(), "allowedDomains": z.array(z.string()).optional(), "feePercentage": z.string().nullable().optional(), "feeAddress": z.string().nullable().optional(), "operatorWalletAddress": z.string().nullable().optional(), "defaultPreApprovalExpiry": z.number().nullable().optional(), "defaultAuthorizationExpiry": z.number().nullable().optional(), "status": z.string().optional(), "createdAt": z.string().optional() }).passthrough();
269
269
  schemaRegistry.register({ key: { operationId: "ClientIdV2Controller_create_v2", kind: "response", status: 201 }, schema: ClientIdV2Controller_create_v2_201 });
270
270
  var ClientIdV2Controller_create_v2_400 = ErrorEnvelopeSchema;
271
271
  schemaRegistry.register({ key: { operationId: "ClientIdV2Controller_create_v2", kind: "response", status: 400 }, schema: ClientIdV2Controller_create_v2_400 });
@@ -273,7 +273,7 @@ var ClientIdV2Controller_create_v2_401 = ErrorEnvelopeSchema;
273
273
  schemaRegistry.register({ key: { operationId: "ClientIdV2Controller_create_v2", kind: "response", status: 401 }, schema: ClientIdV2Controller_create_v2_401 });
274
274
  var ClientIdV2Controller_create_v2_429 = ErrorEnvelopeSchema;
275
275
  schemaRegistry.register({ key: { operationId: "ClientIdV2Controller_create_v2", kind: "response", status: 429 }, schema: ClientIdV2Controller_create_v2_429 });
276
- var ClientIdV2Controller_findOne_v2_200 = z.object({ "id": z.string().optional(), "clientId": z.string().optional(), "label": z.string().optional(), "allowedDomains": z.array(z.string()).optional(), "feePercentage": z.string().nullable().optional(), "feeAddress": z.string().nullable().optional(), "status": z.string().optional(), "createdAt": z.string().optional(), "updatedAt": z.string().optional(), "lastUsedAt": z.string().nullable().optional() }).passthrough();
276
+ var ClientIdV2Controller_findOne_v2_200 = z.object({ "id": z.string().optional(), "clientId": z.string().optional(), "label": z.string().optional(), "allowedDomains": z.array(z.string()).optional(), "feePercentage": z.string().nullable().optional(), "feeAddress": z.string().nullable().optional(), "operatorWalletAddress": z.string().nullable().optional(), "defaultPreApprovalExpiry": z.number().nullable().optional(), "defaultAuthorizationExpiry": z.number().nullable().optional(), "status": z.string().optional(), "createdAt": z.string().optional(), "updatedAt": z.string().optional(), "lastUsedAt": z.string().nullable().optional() }).passthrough();
277
277
  schemaRegistry.register({ key: { operationId: "ClientIdV2Controller_findOne_v2", kind: "response", status: 200 }, schema: ClientIdV2Controller_findOne_v2_200 });
278
278
  var ClientIdV2Controller_findOne_v2_401 = ErrorEnvelopeSchema;
279
279
  schemaRegistry.register({ key: { operationId: "ClientIdV2Controller_findOne_v2", kind: "response", status: 401 }, schema: ClientIdV2Controller_findOne_v2_401 });
@@ -281,9 +281,9 @@ var ClientIdV2Controller_findOne_v2_404 = ErrorEnvelopeSchema;
281
281
  schemaRegistry.register({ key: { operationId: "ClientIdV2Controller_findOne_v2", kind: "response", status: 404 }, schema: ClientIdV2Controller_findOne_v2_404 });
282
282
  var ClientIdV2Controller_findOne_v2_429 = ErrorEnvelopeSchema;
283
283
  schemaRegistry.register({ key: { operationId: "ClientIdV2Controller_findOne_v2", kind: "response", status: 429 }, schema: ClientIdV2Controller_findOne_v2_429 });
284
- var ClientIdV2Controller_update_v2_Request = z.object({ "label": z.string().optional(), "allowedDomains": z.array(z.string()).optional(), "feePercentage": z.string().nullable().optional(), "feeAddress": z.string().nullable().optional(), "status": z.enum(["active", "inactive", "revoked"]).optional() }).passthrough();
284
+ var ClientIdV2Controller_update_v2_Request = z.object({ "label": z.string().optional(), "allowedDomains": z.array(z.string()).optional(), "feePercentage": z.string().nullable().optional(), "feeAddress": z.string().nullable().optional(), "operatorWalletAddress": z.string().nullable().optional(), "defaultPreApprovalExpiry": z.number().nullable().optional(), "defaultAuthorizationExpiry": z.number().nullable().optional(), "status": z.enum(["active", "inactive", "revoked"]).optional() }).passthrough();
285
285
  schemaRegistry.register({ key: { operationId: "ClientIdV2Controller_update_v2", kind: "request", variant: "application/json" }, schema: ClientIdV2Controller_update_v2_Request });
286
- var ClientIdV2Controller_update_v2_200 = z.object({ "id": z.string().optional(), "clientId": z.string().optional(), "label": z.string().optional(), "allowedDomains": z.array(z.string()).optional(), "feePercentage": z.string().nullable().optional(), "feeAddress": z.string().nullable().optional(), "status": z.string().optional(), "updatedAt": z.string().optional() }).passthrough();
286
+ var ClientIdV2Controller_update_v2_200 = z.object({ "id": z.string().optional(), "clientId": z.string().optional(), "label": z.string().optional(), "allowedDomains": z.array(z.string()).optional(), "feePercentage": z.string().nullable().optional(), "feeAddress": z.string().nullable().optional(), "operatorWalletAddress": z.string().nullable().optional(), "defaultPreApprovalExpiry": z.number().nullable().optional(), "defaultAuthorizationExpiry": z.number().nullable().optional(), "status": z.string().optional(), "updatedAt": z.string().optional() }).passthrough();
287
287
  schemaRegistry.register({ key: { operationId: "ClientIdV2Controller_update_v2", kind: "response", status: 200 }, schema: ClientIdV2Controller_update_v2_200 });
288
288
  var ClientIdV2Controller_update_v2_400 = ErrorEnvelopeSchema;
289
289
  schemaRegistry.register({ key: { operationId: "ClientIdV2Controller_update_v2", kind: "response", status: 400 }, schema: ClientIdV2Controller_update_v2_400 });
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/core/http/validation.config.ts","../../../../src/validation/schema.registry.ts","../../../../src/validation/zod.helpers.ts","../../../../src/core/http/operation.helper.ts","../../../../src/core/http/path.builder.ts","../../../../src/domains/client-ids/client-ids.facade.ts","../../../../src/validation/generated/groups/client-ids.schemas.generated.ts"],"names":[],"mappings":"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","file":"index.js","sourcesContent":["import type { RuntimeValidationConfig, RuntimeValidationOption } from \"./http.types\";\n\nconst DEFAULT_RUNTIME_VALIDATION: RuntimeValidationConfig = {\n requests: true,\n responses: true,\n errors: true,\n};\n\nfunction normaliseBoolean(flag: boolean | undefined, fallback: boolean): boolean {\n return typeof flag === \"boolean\" ? flag : fallback;\n}\n\nexport function normaliseRuntimeValidation(option?: RuntimeValidationOption): RuntimeValidationConfig {\n if (typeof option === \"boolean\") {\n return {\n requests: option,\n responses: option,\n errors: option,\n } satisfies RuntimeValidationConfig;\n }\n\n return {\n requests: normaliseBoolean(option?.requests, DEFAULT_RUNTIME_VALIDATION.requests),\n responses: normaliseBoolean(option?.responses, DEFAULT_RUNTIME_VALIDATION.responses),\n errors: normaliseBoolean(option?.errors, DEFAULT_RUNTIME_VALIDATION.errors),\n } satisfies RuntimeValidationConfig;\n}\n\nexport function mergeRuntimeValidation(base: RuntimeValidationConfig, override?: RuntimeValidationOption): RuntimeValidationConfig {\n if (override === undefined) {\n return base;\n }\n\n if (typeof override === \"boolean\") {\n return {\n requests: override,\n responses: override,\n errors: override,\n } satisfies RuntimeValidationConfig;\n }\n\n return {\n requests: normaliseBoolean(override.requests, base.requests),\n responses: normaliseBoolean(override.responses, base.responses),\n errors: normaliseBoolean(override.errors, base.errors),\n } satisfies RuntimeValidationConfig;\n}\n\nexport function cloneRuntimeValidation(config: RuntimeValidationConfig): RuntimeValidationConfig {\n return { ...config };\n}\n","import type { ZodTypeAny } from \"zod\";\n\nexport type SchemaKind = \"request\" | \"response\" | \"webhook\";\n\nexport interface SchemaKey {\n operationId: string;\n kind: SchemaKind;\n variant?: string;\n status?: number;\n}\n\nexport interface SchemaEntry<TSchema extends ZodTypeAny = ZodTypeAny> {\n key: SchemaKey;\n schema: TSchema;\n}\n\nfunction serialiseKey(key: SchemaKey): string {\n const variant = key.variant ?? \"default\";\n const status = key.status?.toString() ?? \"any\";\n return `${key.operationId}|${key.kind}|${variant}|${status}`;\n}\n\n/**\n * Lightweight registry that associates OpenAPI operation IDs with validation schemas.\n * Generators can populate this map while domain modules retrieve the schemas at runtime.\n */\nexport class SchemaRegistry {\n private readonly store = new Map<string, SchemaEntry>();\n\n register(entry: SchemaEntry): void {\n const id = serialiseKey(entry.key);\n this.store.set(id, entry);\n }\n\n get(key: SchemaKey): ZodTypeAny | undefined {\n const id = serialiseKey(key);\n return this.store.get(id)?.schema;\n }\n\n /**\n * Removes every registered schema — primarily useful in tests.\n */\n clear(): void {\n this.store.clear();\n }\n}\n\nexport const schemaRegistry = new SchemaRegistry();\n","import { type SafeParseReturnType, type ZodTypeAny } from \"zod\";\n\nimport type { SchemaKey } from \"./schema.registry\";\nimport { schemaRegistry } from \"./schema.registry\";\n\nexport type SchemaOutput<TSchema extends ZodTypeAny> = TSchema[\"_output\"];\n\nexport interface ParseWithSchemaOptions<TSchema extends ZodTypeAny> {\n schema: TSchema;\n value: unknown;\n description?: string;\n}\n\nexport interface ParseRegistryOptions {\n key: SchemaKey;\n value: unknown;\n description?: string;\n skipOnMissingSchema?: boolean;\n}\n\nexport interface ParseResult<T> {\n success: boolean;\n data?: T;\n error?: unknown;\n}\n\nexport class ValidationError extends Error {\n constructor(message: string, readonly cause?: unknown) {\n super(message, { cause });\n this.name = \"ClientValidationError\";\n }\n}\n\nexport function parseWithSchema<TSchema extends ZodTypeAny>(\n options: ParseWithSchemaOptions<TSchema>,\n): ParseResult<SchemaOutput<TSchema>> {\n const { schema, value, description } = options;\n const outcome: SafeParseReturnType<unknown, SchemaOutput<TSchema>> = schema.safeParse(value);\n if (outcome.success) {\n return { success: true, data: outcome.data };\n }\n\n const error = new ValidationError(description ?? \"Validation failed\", outcome.error);\n return { success: false, error };\n}\n\nexport function parseWithRegistry<TSchema extends ZodTypeAny>(options: ParseRegistryOptions): ParseResult<SchemaOutput<TSchema>> {\n const schema = schemaRegistry.get(options.key) as TSchema | undefined;\n if (!schema) {\n if (options.skipOnMissingSchema) {\n return { success: true, data: options.value as SchemaOutput<TSchema> };\n }\n return { success: false, error: new ValidationError(`No schema registered for ${options.key.operationId}`) };\n }\n\n return parseWithSchema({ schema, value: options.value, description: options.description });\n}\n","import type { HttpClient, HttpMethod, RequestOptions, RuntimeValidationOption } from \"./http.types\";\nimport { mergeRuntimeValidation } from \"./validation.config\";\nimport type { SchemaKey } from \"../../validation/schema.registry\";\nimport { parseWithRegistry } from \"../../validation/zod.helpers\";\n\ntype Query = NonNullable<RequestOptions[\"query\"]>;\n\nexport interface RequestJsonParams {\n operationId: string;\n method: HttpMethod;\n path: string;\n query?: Query;\n body?: unknown;\n schemaKey: SchemaKey;\n requestSchemaKey?: SchemaKey;\n description?: string;\n querySerializer?: RequestOptions[\"querySerializer\"];\n signal?: RequestOptions[\"signal\"];\n timeoutMs?: RequestOptions[\"timeoutMs\"];\n validation?: RuntimeValidationOption;\n meta?: RequestOptions[\"meta\"];\n}\n\nexport async function requestJson<T>(http: HttpClient, params: RequestJsonParams): Promise<T> {\n const {\n operationId,\n method,\n path,\n query,\n body,\n schemaKey,\n requestSchemaKey,\n description,\n querySerializer,\n signal,\n timeoutMs,\n validation,\n meta,\n } = params;\n\n const runtimeValidation = mergeRuntimeValidation(http.getRuntimeValidationConfig(), validation);\n\n let requestBody = body;\n if (runtimeValidation.requests && requestSchemaKey && body !== undefined) {\n const parsedRequest = parseWithRegistry({\n key: requestSchemaKey,\n value: body,\n description: `${description ?? operationId} request`,\n skipOnMissingSchema: true,\n });\n if (!parsedRequest.success) {\n throw parsedRequest.error;\n }\n requestBody = parsedRequest.data;\n }\n\n const metaValidation = validation ?? meta?.validation;\n const requestMeta: RequestOptions[\"meta\"] = {\n ...(meta ?? {}),\n operationId,\n validation: metaValidation,\n };\n\n const res = await http.request({\n method,\n path,\n query,\n body: requestBody,\n querySerializer,\n signal,\n timeoutMs,\n meta: requestMeta,\n });\n\n if (!runtimeValidation.responses) {\n return res.data as T;\n }\n\n const parsedResponse = parseWithRegistry({ key: schemaKey, value: res.data, description });\n if (!parsedResponse.success) throw parsedResponse.error;\n return parsedResponse.data as T;\n}\n\nexport interface RequestVoidParams {\n operationId: string;\n method: HttpMethod;\n path: string;\n query?: Query;\n body?: unknown;\n querySerializer?: RequestOptions[\"querySerializer\"];\n signal?: RequestOptions[\"signal\"];\n timeoutMs?: RequestOptions[\"timeoutMs\"];\n requestSchemaKey?: SchemaKey;\n validation?: RuntimeValidationOption;\n meta?: RequestOptions[\"meta\"];\n}\n\nexport async function requestVoid(http: HttpClient, params: RequestVoidParams): Promise<void> {\n const { operationId, method, path, query, body, querySerializer, signal, timeoutMs, requestSchemaKey, validation, meta } = params;\n\n const runtimeValidation = mergeRuntimeValidation(http.getRuntimeValidationConfig(), validation);\n\n let requestBody = body;\n if (runtimeValidation.requests && requestSchemaKey && body !== undefined) {\n const parsedRequest = parseWithRegistry({\n key: requestSchemaKey,\n value: body,\n description: `${operationId} request`,\n skipOnMissingSchema: true,\n });\n if (!parsedRequest.success) {\n throw parsedRequest.error;\n }\n requestBody = parsedRequest.data;\n }\n\n const metaValidation = validation ?? meta?.validation;\n const requestMeta: RequestOptions[\"meta\"] = {\n ...(meta ?? {}),\n operationId,\n validation: metaValidation,\n };\n\n await http.request({\n method,\n path,\n query,\n body: requestBody,\n querySerializer,\n signal,\n timeoutMs,\n meta: requestMeta,\n });\n}\n","export function buildPath(template: string, params: Record<string, string | number>): string {\n return template.replace(/\\{(.*?)\\}/g, (_, key: string) => encodeURIComponent(String(params[key] ?? \"\")));\n}\n\n","import type { HttpClient } from \"../../core/http/http.types\";\nimport { requestJson, requestVoid } from \"../../core/http/operation.helper\";\nimport { buildPath } from \"../../core/http/path.builder\";\nimport type { operations } from \"../../generated/openapi-types\";\n\nexport type ClientIdListResponse = operations[\"ClientIdV2Controller_findAll_v2\"][\"responses\"][200][\"content\"][\"application/json\"]; // array\nexport type ClientIdCreateBody = operations[\"ClientIdV2Controller_create_v2\"][\"requestBody\"][\"content\"][\"application/json\"]; // input\nexport type ClientIdResponse = operations[\"ClientIdV2Controller_findOne_v2\"][\"responses\"][200][\"content\"][\"application/json\"]; // single\nexport type ClientIdUpdateBody = operations[\"ClientIdV2Controller_update_v2\"][\"requestBody\"][\"content\"][\"application/json\"]; // input\n\nexport interface ClientIdsApi {\n list(): Promise<ClientIdListResponse>;\n create(body: ClientIdCreateBody): Promise<ClientIdResponse>;\n findOne(id: string): Promise<ClientIdResponse>;\n update(id: string, body: ClientIdUpdateBody): Promise<ClientIdResponse>;\n revoke(id: string): Promise<void>;\n}\n\nexport function createClientIdsApi(http: HttpClient): ClientIdsApi {\n const PATH_BASE = \"/v2/client-ids\" as const;\n return {\n async list() {\n const OP = \"ClientIdV2Controller_findAll_v2\" as const;\n return requestJson<ClientIdListResponse>(http, {\n operationId: OP,\n method: \"GET\",\n path: PATH_BASE,\n schemaKey: { operationId: OP, kind: \"response\", status: 200 },\n description: \"List client IDs\",\n });\n },\n async create(body) {\n const OP = \"ClientIdV2Controller_create_v2\" as const;\n return requestJson<ClientIdResponse>(http, {\n operationId: OP,\n method: \"POST\",\n path: PATH_BASE,\n body,\n requestSchemaKey: { operationId: OP, kind: \"request\", variant: \"application/json\" },\n schemaKey: { operationId: OP, kind: \"response\", status: 201 },\n description: \"Create client ID\",\n });\n },\n async findOne(id) {\n const path = buildPath(`${PATH_BASE}/{id}`, { id });\n const OP = \"ClientIdV2Controller_findOne_v2\" as const;\n return requestJson<ClientIdResponse>(http, {\n operationId: OP,\n method: \"GET\",\n path,\n schemaKey: { operationId: OP, kind: \"response\", status: 200 },\n description: \"Get client ID\",\n });\n },\n async update(id, body) {\n const path = buildPath(`${PATH_BASE}/{id}`, { id });\n const OP = \"ClientIdV2Controller_update_v2\" as const;\n return requestJson<ClientIdResponse>(http, {\n operationId: OP,\n method: \"PUT\",\n path,\n body,\n requestSchemaKey: { operationId: OP, kind: \"request\", variant: \"application/json\" },\n schemaKey: { operationId: OP, kind: \"response\", status: 200 },\n description: \"Update client ID\",\n });\n },\n async revoke(id) {\n const path = buildPath(`${PATH_BASE}/{id}`, { id });\n const OP = \"ClientIdV2Controller_delete_v2\" as const;\n await requestVoid(http, {\n operationId: OP,\n method: \"DELETE\",\n path,\n });\n },\n };\n}\n","// Auto-generated by scripts/generate-zod.mjs. Do not edit.\nimport { z } from 'zod';\n\nimport { schemaRegistry } from '../../schema.registry';\n\nconst ErrorDetailSchema = z\n .object({\n message: z.string(),\n code: z.string().optional(),\n field: z.string().optional(),\n source: z\n .object({\n pointer: z.string().optional(),\n parameter: z.string().optional(),\n })\n .passthrough()\n .optional(),\n meta: z.record(z.unknown()).optional(),\n })\n .passthrough();\n\nconst ErrorEnvelopeSchema = z\n .object({\n status: z.number().optional(),\n statusCode: z.number().optional(),\n code: z.string().optional(),\n error: z.string().optional(),\n message: z\n .union([\n z.string(),\n z.array(z.union([z.string(), ErrorDetailSchema])),\n ErrorDetailSchema,\n ])\n .optional(),\n detail: z.unknown().optional(),\n errors: z.array(ErrorDetailSchema).optional(),\n requestId: z.string().optional(),\n correlationId: z.string().optional(),\n retryAfter: z.union([z.number(), z.string()]).optional(),\n retryAfterMs: z.number().optional(),\n meta: z.record(z.unknown()).optional(),\n })\n .passthrough();\n\n// GET /v2/client-ids -> ClientIdV2Controller_findAll_v2 (200)\nexport const ClientIdV2Controller_findAll_v2_200 = z.array(z.object({ \"id\": (z.string()).optional(), \"clientId\": (z.string()).optional(), \"label\": (z.string()).optional(), \"allowedDomains\": (z.array(z.string())).optional(), \"status\": (z.string()).optional(), \"createdAt\": (z.string()).optional(), \"lastUsedAt\": (z.string().nullable()).optional() }).passthrough());\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_findAll_v2', kind: 'response', status: 200 }, schema: ClientIdV2Controller_findAll_v2_200 });\n\n// GET /v2/client-ids -> ClientIdV2Controller_findAll_v2 (401)\nexport const ClientIdV2Controller_findAll_v2_401 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_findAll_v2', kind: 'response', status: 401 }, schema: ClientIdV2Controller_findAll_v2_401 });\n\n// GET /v2/client-ids -> ClientIdV2Controller_findAll_v2 (429)\nexport const ClientIdV2Controller_findAll_v2_429 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_findAll_v2', kind: 'response', status: 429 }, schema: ClientIdV2Controller_findAll_v2_429 });\n\n// POST /v2/client-ids -> ClientIdV2Controller_create_v2 request (application/json)\nexport const ClientIdV2Controller_create_v2_Request = z.object({ \"label\": z.string(), \"allowedDomains\": z.array(z.string()), \"feePercentage\": (z.string()).optional(), \"feeAddress\": (z.string()).optional() }).passthrough();\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_create_v2', kind: 'request', variant: 'application/json' }, schema: ClientIdV2Controller_create_v2_Request });\n\n// POST /v2/client-ids -> ClientIdV2Controller_create_v2 (201)\nexport const ClientIdV2Controller_create_v2_201 = z.object({ \"id\": (z.string()).optional(), \"clientId\": (z.string()).optional(), \"label\": (z.string()).optional(), \"allowedDomains\": (z.array(z.string())).optional(), \"feePercentage\": (z.string().nullable()).optional(), \"feeAddress\": (z.string().nullable()).optional(), \"status\": (z.string()).optional(), \"createdAt\": (z.string()).optional() }).passthrough();\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_create_v2', kind: 'response', status: 201 }, schema: ClientIdV2Controller_create_v2_201 });\n\n// POST /v2/client-ids -> ClientIdV2Controller_create_v2 (400)\nexport const ClientIdV2Controller_create_v2_400 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_create_v2', kind: 'response', status: 400 }, schema: ClientIdV2Controller_create_v2_400 });\n\n// POST /v2/client-ids -> ClientIdV2Controller_create_v2 (401)\nexport const ClientIdV2Controller_create_v2_401 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_create_v2', kind: 'response', status: 401 }, schema: ClientIdV2Controller_create_v2_401 });\n\n// POST /v2/client-ids -> ClientIdV2Controller_create_v2 (429)\nexport const ClientIdV2Controller_create_v2_429 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_create_v2', kind: 'response', status: 429 }, schema: ClientIdV2Controller_create_v2_429 });\n\n// GET /v2/client-ids/{id} -> ClientIdV2Controller_findOne_v2 (200)\nexport const ClientIdV2Controller_findOne_v2_200 = z.object({ \"id\": (z.string()).optional(), \"clientId\": (z.string()).optional(), \"label\": (z.string()).optional(), \"allowedDomains\": (z.array(z.string())).optional(), \"feePercentage\": (z.string().nullable()).optional(), \"feeAddress\": (z.string().nullable()).optional(), \"status\": (z.string()).optional(), \"createdAt\": (z.string()).optional(), \"updatedAt\": (z.string()).optional(), \"lastUsedAt\": (z.string().nullable()).optional() }).passthrough();\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_findOne_v2', kind: 'response', status: 200 }, schema: ClientIdV2Controller_findOne_v2_200 });\n\n// GET /v2/client-ids/{id} -> ClientIdV2Controller_findOne_v2 (401)\nexport const ClientIdV2Controller_findOne_v2_401 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_findOne_v2', kind: 'response', status: 401 }, schema: ClientIdV2Controller_findOne_v2_401 });\n\n// GET /v2/client-ids/{id} -> ClientIdV2Controller_findOne_v2 (404)\nexport const ClientIdV2Controller_findOne_v2_404 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_findOne_v2', kind: 'response', status: 404 }, schema: ClientIdV2Controller_findOne_v2_404 });\n\n// GET /v2/client-ids/{id} -> ClientIdV2Controller_findOne_v2 (429)\nexport const ClientIdV2Controller_findOne_v2_429 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_findOne_v2', kind: 'response', status: 429 }, schema: ClientIdV2Controller_findOne_v2_429 });\n\n// PUT /v2/client-ids/{id} -> ClientIdV2Controller_update_v2 request (application/json)\nexport const ClientIdV2Controller_update_v2_Request = z.object({ \"label\": (z.string()).optional(), \"allowedDomains\": (z.array(z.string())).optional(), \"feePercentage\": (z.string().nullable()).optional(), \"feeAddress\": (z.string().nullable()).optional(), \"status\": (z.enum(['active', 'inactive', 'revoked'])).optional() }).passthrough();\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_update_v2', kind: 'request', variant: 'application/json' }, schema: ClientIdV2Controller_update_v2_Request });\n\n// PUT /v2/client-ids/{id} -> ClientIdV2Controller_update_v2 (200)\nexport const ClientIdV2Controller_update_v2_200 = z.object({ \"id\": (z.string()).optional(), \"clientId\": (z.string()).optional(), \"label\": (z.string()).optional(), \"allowedDomains\": (z.array(z.string())).optional(), \"feePercentage\": (z.string().nullable()).optional(), \"feeAddress\": (z.string().nullable()).optional(), \"status\": (z.string()).optional(), \"updatedAt\": (z.string()).optional() }).passthrough();\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_update_v2', kind: 'response', status: 200 }, schema: ClientIdV2Controller_update_v2_200 });\n\n// PUT /v2/client-ids/{id} -> ClientIdV2Controller_update_v2 (400)\nexport const ClientIdV2Controller_update_v2_400 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_update_v2', kind: 'response', status: 400 }, schema: ClientIdV2Controller_update_v2_400 });\n\n// PUT /v2/client-ids/{id} -> ClientIdV2Controller_update_v2 (401)\nexport const ClientIdV2Controller_update_v2_401 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_update_v2', kind: 'response', status: 401 }, schema: ClientIdV2Controller_update_v2_401 });\n\n// PUT /v2/client-ids/{id} -> ClientIdV2Controller_update_v2 (404)\nexport const ClientIdV2Controller_update_v2_404 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_update_v2', kind: 'response', status: 404 }, schema: ClientIdV2Controller_update_v2_404 });\n\n// PUT /v2/client-ids/{id} -> ClientIdV2Controller_update_v2 (429)\nexport const ClientIdV2Controller_update_v2_429 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_update_v2', kind: 'response', status: 429 }, schema: ClientIdV2Controller_update_v2_429 });\n\n// DELETE /v2/client-ids/{id} -> ClientIdV2Controller_delete_v2 (200)\nexport const ClientIdV2Controller_delete_v2_200 = z.unknown();\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_delete_v2', kind: 'response', status: 200 }, schema: ClientIdV2Controller_delete_v2_200 });\n\n// DELETE /v2/client-ids/{id} -> ClientIdV2Controller_delete_v2 (401)\nexport const ClientIdV2Controller_delete_v2_401 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_delete_v2', kind: 'response', status: 401 }, schema: ClientIdV2Controller_delete_v2_401 });\n\n// DELETE /v2/client-ids/{id} -> ClientIdV2Controller_delete_v2 (404)\nexport const ClientIdV2Controller_delete_v2_404 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_delete_v2', kind: 'response', status: 404 }, schema: ClientIdV2Controller_delete_v2_404 });\n\n// DELETE /v2/client-ids/{id} -> ClientIdV2Controller_delete_v2 (429)\nexport const ClientIdV2Controller_delete_v2_429 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_delete_v2', kind: 'response', status: 429 }, schema: ClientIdV2Controller_delete_v2_429 });\n"]}
1
+ {"version":3,"sources":["../../../../src/core/http/validation.config.ts","../../../../src/validation/schema.registry.ts","../../../../src/validation/zod.helpers.ts","../../../../src/core/http/operation.helper.ts","../../../../src/core/http/path.builder.ts","../../../../src/domains/client-ids/client-ids.facade.ts","../../../../src/validation/generated/groups/client-ids.schemas.generated.ts"],"names":[],"mappings":"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","file":"index.js","sourcesContent":["import type { RuntimeValidationConfig, RuntimeValidationOption } from \"./http.types\";\n\nconst DEFAULT_RUNTIME_VALIDATION: RuntimeValidationConfig = {\n requests: true,\n responses: true,\n errors: true,\n};\n\nfunction normaliseBoolean(flag: boolean | undefined, fallback: boolean): boolean {\n return typeof flag === \"boolean\" ? flag : fallback;\n}\n\nexport function normaliseRuntimeValidation(option?: RuntimeValidationOption): RuntimeValidationConfig {\n if (typeof option === \"boolean\") {\n return {\n requests: option,\n responses: option,\n errors: option,\n } satisfies RuntimeValidationConfig;\n }\n\n return {\n requests: normaliseBoolean(option?.requests, DEFAULT_RUNTIME_VALIDATION.requests),\n responses: normaliseBoolean(option?.responses, DEFAULT_RUNTIME_VALIDATION.responses),\n errors: normaliseBoolean(option?.errors, DEFAULT_RUNTIME_VALIDATION.errors),\n } satisfies RuntimeValidationConfig;\n}\n\nexport function mergeRuntimeValidation(base: RuntimeValidationConfig, override?: RuntimeValidationOption): RuntimeValidationConfig {\n if (override === undefined) {\n return base;\n }\n\n if (typeof override === \"boolean\") {\n return {\n requests: override,\n responses: override,\n errors: override,\n } satisfies RuntimeValidationConfig;\n }\n\n return {\n requests: normaliseBoolean(override.requests, base.requests),\n responses: normaliseBoolean(override.responses, base.responses),\n errors: normaliseBoolean(override.errors, base.errors),\n } satisfies RuntimeValidationConfig;\n}\n\nexport function cloneRuntimeValidation(config: RuntimeValidationConfig): RuntimeValidationConfig {\n return { ...config };\n}\n","import type { ZodTypeAny } from \"zod\";\n\nexport type SchemaKind = \"request\" | \"response\" | \"webhook\";\n\nexport interface SchemaKey {\n operationId: string;\n kind: SchemaKind;\n variant?: string;\n status?: number;\n}\n\nexport interface SchemaEntry<TSchema extends ZodTypeAny = ZodTypeAny> {\n key: SchemaKey;\n schema: TSchema;\n}\n\nfunction serialiseKey(key: SchemaKey): string {\n const variant = key.variant ?? \"default\";\n const status = key.status?.toString() ?? \"any\";\n return `${key.operationId}|${key.kind}|${variant}|${status}`;\n}\n\n/**\n * Lightweight registry that associates OpenAPI operation IDs with validation schemas.\n * Generators can populate this map while domain modules retrieve the schemas at runtime.\n */\nexport class SchemaRegistry {\n private readonly store = new Map<string, SchemaEntry>();\n\n register(entry: SchemaEntry): void {\n const id = serialiseKey(entry.key);\n this.store.set(id, entry);\n }\n\n get(key: SchemaKey): ZodTypeAny | undefined {\n const id = serialiseKey(key);\n return this.store.get(id)?.schema;\n }\n\n /**\n * Removes every registered schema — primarily useful in tests.\n */\n clear(): void {\n this.store.clear();\n }\n}\n\nexport const schemaRegistry = new SchemaRegistry();\n","import { type SafeParseReturnType, type ZodTypeAny } from \"zod\";\n\nimport type { SchemaKey } from \"./schema.registry\";\nimport { schemaRegistry } from \"./schema.registry\";\n\nexport type SchemaOutput<TSchema extends ZodTypeAny> = TSchema[\"_output\"];\n\nexport interface ParseWithSchemaOptions<TSchema extends ZodTypeAny> {\n schema: TSchema;\n value: unknown;\n description?: string;\n}\n\nexport interface ParseRegistryOptions {\n key: SchemaKey;\n value: unknown;\n description?: string;\n skipOnMissingSchema?: boolean;\n}\n\nexport interface ParseResult<T> {\n success: boolean;\n data?: T;\n error?: unknown;\n}\n\nexport class ValidationError extends Error {\n constructor(message: string, readonly cause?: unknown) {\n super(message, { cause });\n this.name = \"ClientValidationError\";\n }\n}\n\nexport function parseWithSchema<TSchema extends ZodTypeAny>(\n options: ParseWithSchemaOptions<TSchema>,\n): ParseResult<SchemaOutput<TSchema>> {\n const { schema, value, description } = options;\n const outcome: SafeParseReturnType<unknown, SchemaOutput<TSchema>> = schema.safeParse(value);\n if (outcome.success) {\n return { success: true, data: outcome.data };\n }\n\n const error = new ValidationError(description ?? \"Validation failed\", outcome.error);\n return { success: false, error };\n}\n\nexport function parseWithRegistry<TSchema extends ZodTypeAny>(options: ParseRegistryOptions): ParseResult<SchemaOutput<TSchema>> {\n const schema = schemaRegistry.get(options.key) as TSchema | undefined;\n if (!schema) {\n if (options.skipOnMissingSchema) {\n return { success: true, data: options.value as SchemaOutput<TSchema> };\n }\n return { success: false, error: new ValidationError(`No schema registered for ${options.key.operationId}`) };\n }\n\n return parseWithSchema({ schema, value: options.value, description: options.description });\n}\n","import type { HttpClient, HttpMethod, RequestOptions, RuntimeValidationOption } from \"./http.types\";\nimport { mergeRuntimeValidation } from \"./validation.config\";\nimport type { SchemaKey } from \"../../validation/schema.registry\";\nimport { parseWithRegistry } from \"../../validation/zod.helpers\";\n\ntype Query = NonNullable<RequestOptions[\"query\"]>;\n\nexport interface RequestJsonParams {\n operationId: string;\n method: HttpMethod;\n path: string;\n query?: Query;\n body?: unknown;\n schemaKey: SchemaKey;\n requestSchemaKey?: SchemaKey;\n description?: string;\n querySerializer?: RequestOptions[\"querySerializer\"];\n signal?: RequestOptions[\"signal\"];\n timeoutMs?: RequestOptions[\"timeoutMs\"];\n validation?: RuntimeValidationOption;\n meta?: RequestOptions[\"meta\"];\n}\n\nexport async function requestJson<T>(http: HttpClient, params: RequestJsonParams): Promise<T> {\n const {\n operationId,\n method,\n path,\n query,\n body,\n schemaKey,\n requestSchemaKey,\n description,\n querySerializer,\n signal,\n timeoutMs,\n validation,\n meta,\n } = params;\n\n const runtimeValidation = mergeRuntimeValidation(http.getRuntimeValidationConfig(), validation);\n\n let requestBody = body;\n if (runtimeValidation.requests && requestSchemaKey && body !== undefined) {\n const parsedRequest = parseWithRegistry({\n key: requestSchemaKey,\n value: body,\n description: `${description ?? operationId} request`,\n skipOnMissingSchema: true,\n });\n if (!parsedRequest.success) {\n throw parsedRequest.error;\n }\n requestBody = parsedRequest.data;\n }\n\n const metaValidation = validation ?? meta?.validation;\n const requestMeta: RequestOptions[\"meta\"] = {\n ...(meta ?? {}),\n operationId,\n validation: metaValidation,\n };\n\n const res = await http.request({\n method,\n path,\n query,\n body: requestBody,\n querySerializer,\n signal,\n timeoutMs,\n meta: requestMeta,\n });\n\n if (!runtimeValidation.responses) {\n return res.data as T;\n }\n\n const parsedResponse = parseWithRegistry({ key: schemaKey, value: res.data, description });\n if (!parsedResponse.success) throw parsedResponse.error;\n return parsedResponse.data as T;\n}\n\nexport interface RequestVoidParams {\n operationId: string;\n method: HttpMethod;\n path: string;\n query?: Query;\n body?: unknown;\n querySerializer?: RequestOptions[\"querySerializer\"];\n signal?: RequestOptions[\"signal\"];\n timeoutMs?: RequestOptions[\"timeoutMs\"];\n requestSchemaKey?: SchemaKey;\n validation?: RuntimeValidationOption;\n meta?: RequestOptions[\"meta\"];\n}\n\nexport async function requestVoid(http: HttpClient, params: RequestVoidParams): Promise<void> {\n const { operationId, method, path, query, body, querySerializer, signal, timeoutMs, requestSchemaKey, validation, meta } = params;\n\n const runtimeValidation = mergeRuntimeValidation(http.getRuntimeValidationConfig(), validation);\n\n let requestBody = body;\n if (runtimeValidation.requests && requestSchemaKey && body !== undefined) {\n const parsedRequest = parseWithRegistry({\n key: requestSchemaKey,\n value: body,\n description: `${operationId} request`,\n skipOnMissingSchema: true,\n });\n if (!parsedRequest.success) {\n throw parsedRequest.error;\n }\n requestBody = parsedRequest.data;\n }\n\n const metaValidation = validation ?? meta?.validation;\n const requestMeta: RequestOptions[\"meta\"] = {\n ...(meta ?? {}),\n operationId,\n validation: metaValidation,\n };\n\n await http.request({\n method,\n path,\n query,\n body: requestBody,\n querySerializer,\n signal,\n timeoutMs,\n meta: requestMeta,\n });\n}\n","export function buildPath(template: string, params: Record<string, string | number>): string {\n return template.replace(/\\{(.*?)\\}/g, (_, key: string) => encodeURIComponent(String(params[key] ?? \"\")));\n}\n\n","import type { HttpClient } from \"../../core/http/http.types\";\nimport { requestJson, requestVoid } from \"../../core/http/operation.helper\";\nimport { buildPath } from \"../../core/http/path.builder\";\nimport type { operations } from \"../../generated/openapi-types\";\n\nexport type ClientIdListResponse = operations[\"ClientIdV2Controller_findAll_v2\"][\"responses\"][200][\"content\"][\"application/json\"]; // array\nexport type ClientIdCreateBody = operations[\"ClientIdV2Controller_create_v2\"][\"requestBody\"][\"content\"][\"application/json\"]; // input\nexport type ClientIdResponse = operations[\"ClientIdV2Controller_findOne_v2\"][\"responses\"][200][\"content\"][\"application/json\"]; // single\nexport type ClientIdUpdateBody = operations[\"ClientIdV2Controller_update_v2\"][\"requestBody\"][\"content\"][\"application/json\"]; // input\n\nexport interface ClientIdsApi {\n list(): Promise<ClientIdListResponse>;\n create(body: ClientIdCreateBody): Promise<ClientIdResponse>;\n findOne(id: string): Promise<ClientIdResponse>;\n update(id: string, body: ClientIdUpdateBody): Promise<ClientIdResponse>;\n revoke(id: string): Promise<void>;\n}\n\nexport function createClientIdsApi(http: HttpClient): ClientIdsApi {\n const PATH_BASE = \"/v2/client-ids\" as const;\n return {\n async list() {\n const OP = \"ClientIdV2Controller_findAll_v2\" as const;\n return requestJson<ClientIdListResponse>(http, {\n operationId: OP,\n method: \"GET\",\n path: PATH_BASE,\n schemaKey: { operationId: OP, kind: \"response\", status: 200 },\n description: \"List client IDs\",\n });\n },\n async create(body) {\n const OP = \"ClientIdV2Controller_create_v2\" as const;\n return requestJson<ClientIdResponse>(http, {\n operationId: OP,\n method: \"POST\",\n path: PATH_BASE,\n body,\n requestSchemaKey: { operationId: OP, kind: \"request\", variant: \"application/json\" },\n schemaKey: { operationId: OP, kind: \"response\", status: 201 },\n description: \"Create client ID\",\n });\n },\n async findOne(id) {\n const path = buildPath(`${PATH_BASE}/{id}`, { id });\n const OP = \"ClientIdV2Controller_findOne_v2\" as const;\n return requestJson<ClientIdResponse>(http, {\n operationId: OP,\n method: \"GET\",\n path,\n schemaKey: { operationId: OP, kind: \"response\", status: 200 },\n description: \"Get client ID\",\n });\n },\n async update(id, body) {\n const path = buildPath(`${PATH_BASE}/{id}`, { id });\n const OP = \"ClientIdV2Controller_update_v2\" as const;\n return requestJson<ClientIdResponse>(http, {\n operationId: OP,\n method: \"PUT\",\n path,\n body,\n requestSchemaKey: { operationId: OP, kind: \"request\", variant: \"application/json\" },\n schemaKey: { operationId: OP, kind: \"response\", status: 200 },\n description: \"Update client ID\",\n });\n },\n async revoke(id) {\n const path = buildPath(`${PATH_BASE}/{id}`, { id });\n const OP = \"ClientIdV2Controller_delete_v2\" as const;\n await requestVoid(http, {\n operationId: OP,\n method: \"DELETE\",\n path,\n });\n },\n };\n}\n","// Auto-generated by scripts/generate-zod.mjs. Do not edit.\nimport { z } from 'zod';\n\nimport { schemaRegistry } from '../../schema.registry';\n\nconst ErrorDetailSchema = z\n .object({\n message: z.string(),\n code: z.string().optional(),\n field: z.string().optional(),\n source: z\n .object({\n pointer: z.string().optional(),\n parameter: z.string().optional(),\n })\n .passthrough()\n .optional(),\n meta: z.record(z.unknown()).optional(),\n })\n .passthrough();\n\nconst ErrorEnvelopeSchema = z\n .object({\n status: z.number().optional(),\n statusCode: z.number().optional(),\n code: z.string().optional(),\n error: z.string().optional(),\n message: z\n .union([\n z.string(),\n z.array(z.union([z.string(), ErrorDetailSchema])),\n ErrorDetailSchema,\n ])\n .optional(),\n detail: z.unknown().optional(),\n errors: z.array(ErrorDetailSchema).optional(),\n requestId: z.string().optional(),\n correlationId: z.string().optional(),\n retryAfter: z.union([z.number(), z.string()]).optional(),\n retryAfterMs: z.number().optional(),\n meta: z.record(z.unknown()).optional(),\n })\n .passthrough();\n\n// GET /v2/client-ids -> ClientIdV2Controller_findAll_v2 (200)\nexport const ClientIdV2Controller_findAll_v2_200 = z.array(z.object({ \"id\": (z.string()).optional(), \"clientId\": (z.string()).optional(), \"label\": (z.string()).optional(), \"allowedDomains\": (z.array(z.string())).optional(), \"status\": (z.string()).optional(), \"createdAt\": (z.string()).optional(), \"lastUsedAt\": (z.string().nullable()).optional() }).passthrough());\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_findAll_v2', kind: 'response', status: 200 }, schema: ClientIdV2Controller_findAll_v2_200 });\n\n// GET /v2/client-ids -> ClientIdV2Controller_findAll_v2 (401)\nexport const ClientIdV2Controller_findAll_v2_401 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_findAll_v2', kind: 'response', status: 401 }, schema: ClientIdV2Controller_findAll_v2_401 });\n\n// GET /v2/client-ids -> ClientIdV2Controller_findAll_v2 (429)\nexport const ClientIdV2Controller_findAll_v2_429 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_findAll_v2', kind: 'response', status: 429 }, schema: ClientIdV2Controller_findAll_v2_429 });\n\n// POST /v2/client-ids -> ClientIdV2Controller_create_v2 request (application/json)\nexport const ClientIdV2Controller_create_v2_Request = z.object({ \"label\": z.string(), \"allowedDomains\": z.array(z.string()), \"feePercentage\": (z.string()).optional(), \"feeAddress\": (z.string()).optional(), \"operatorWalletAddress\": (z.string()).optional(), \"defaultPreApprovalExpiry\": (z.number()).optional(), \"defaultAuthorizationExpiry\": (z.number()).optional() }).passthrough();\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_create_v2', kind: 'request', variant: 'application/json' }, schema: ClientIdV2Controller_create_v2_Request });\n\n// POST /v2/client-ids -> ClientIdV2Controller_create_v2 (201)\nexport const ClientIdV2Controller_create_v2_201 = z.object({ \"id\": (z.string()).optional(), \"clientId\": (z.string()).optional(), \"label\": (z.string()).optional(), \"allowedDomains\": (z.array(z.string())).optional(), \"feePercentage\": (z.string().nullable()).optional(), \"feeAddress\": (z.string().nullable()).optional(), \"operatorWalletAddress\": (z.string().nullable()).optional(), \"defaultPreApprovalExpiry\": (z.number().nullable()).optional(), \"defaultAuthorizationExpiry\": (z.number().nullable()).optional(), \"status\": (z.string()).optional(), \"createdAt\": (z.string()).optional() }).passthrough();\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_create_v2', kind: 'response', status: 201 }, schema: ClientIdV2Controller_create_v2_201 });\n\n// POST /v2/client-ids -> ClientIdV2Controller_create_v2 (400)\nexport const ClientIdV2Controller_create_v2_400 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_create_v2', kind: 'response', status: 400 }, schema: ClientIdV2Controller_create_v2_400 });\n\n// POST /v2/client-ids -> ClientIdV2Controller_create_v2 (401)\nexport const ClientIdV2Controller_create_v2_401 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_create_v2', kind: 'response', status: 401 }, schema: ClientIdV2Controller_create_v2_401 });\n\n// POST /v2/client-ids -> ClientIdV2Controller_create_v2 (429)\nexport const ClientIdV2Controller_create_v2_429 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_create_v2', kind: 'response', status: 429 }, schema: ClientIdV2Controller_create_v2_429 });\n\n// GET /v2/client-ids/{id} -> ClientIdV2Controller_findOne_v2 (200)\nexport const ClientIdV2Controller_findOne_v2_200 = z.object({ \"id\": (z.string()).optional(), \"clientId\": (z.string()).optional(), \"label\": (z.string()).optional(), \"allowedDomains\": (z.array(z.string())).optional(), \"feePercentage\": (z.string().nullable()).optional(), \"feeAddress\": (z.string().nullable()).optional(), \"operatorWalletAddress\": (z.string().nullable()).optional(), \"defaultPreApprovalExpiry\": (z.number().nullable()).optional(), \"defaultAuthorizationExpiry\": (z.number().nullable()).optional(), \"status\": (z.string()).optional(), \"createdAt\": (z.string()).optional(), \"updatedAt\": (z.string()).optional(), \"lastUsedAt\": (z.string().nullable()).optional() }).passthrough();\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_findOne_v2', kind: 'response', status: 200 }, schema: ClientIdV2Controller_findOne_v2_200 });\n\n// GET /v2/client-ids/{id} -> ClientIdV2Controller_findOne_v2 (401)\nexport const ClientIdV2Controller_findOne_v2_401 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_findOne_v2', kind: 'response', status: 401 }, schema: ClientIdV2Controller_findOne_v2_401 });\n\n// GET /v2/client-ids/{id} -> ClientIdV2Controller_findOne_v2 (404)\nexport const ClientIdV2Controller_findOne_v2_404 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_findOne_v2', kind: 'response', status: 404 }, schema: ClientIdV2Controller_findOne_v2_404 });\n\n// GET /v2/client-ids/{id} -> ClientIdV2Controller_findOne_v2 (429)\nexport const ClientIdV2Controller_findOne_v2_429 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_findOne_v2', kind: 'response', status: 429 }, schema: ClientIdV2Controller_findOne_v2_429 });\n\n// PUT /v2/client-ids/{id} -> ClientIdV2Controller_update_v2 request (application/json)\nexport const ClientIdV2Controller_update_v2_Request = z.object({ \"label\": (z.string()).optional(), \"allowedDomains\": (z.array(z.string())).optional(), \"feePercentage\": (z.string().nullable()).optional(), \"feeAddress\": (z.string().nullable()).optional(), \"operatorWalletAddress\": (z.string().nullable()).optional(), \"defaultPreApprovalExpiry\": (z.number().nullable()).optional(), \"defaultAuthorizationExpiry\": (z.number().nullable()).optional(), \"status\": (z.enum(['active', 'inactive', 'revoked'])).optional() }).passthrough();\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_update_v2', kind: 'request', variant: 'application/json' }, schema: ClientIdV2Controller_update_v2_Request });\n\n// PUT /v2/client-ids/{id} -> ClientIdV2Controller_update_v2 (200)\nexport const ClientIdV2Controller_update_v2_200 = z.object({ \"id\": (z.string()).optional(), \"clientId\": (z.string()).optional(), \"label\": (z.string()).optional(), \"allowedDomains\": (z.array(z.string())).optional(), \"feePercentage\": (z.string().nullable()).optional(), \"feeAddress\": (z.string().nullable()).optional(), \"operatorWalletAddress\": (z.string().nullable()).optional(), \"defaultPreApprovalExpiry\": (z.number().nullable()).optional(), \"defaultAuthorizationExpiry\": (z.number().nullable()).optional(), \"status\": (z.string()).optional(), \"updatedAt\": (z.string()).optional() }).passthrough();\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_update_v2', kind: 'response', status: 200 }, schema: ClientIdV2Controller_update_v2_200 });\n\n// PUT /v2/client-ids/{id} -> ClientIdV2Controller_update_v2 (400)\nexport const ClientIdV2Controller_update_v2_400 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_update_v2', kind: 'response', status: 400 }, schema: ClientIdV2Controller_update_v2_400 });\n\n// PUT /v2/client-ids/{id} -> ClientIdV2Controller_update_v2 (401)\nexport const ClientIdV2Controller_update_v2_401 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_update_v2', kind: 'response', status: 401 }, schema: ClientIdV2Controller_update_v2_401 });\n\n// PUT /v2/client-ids/{id} -> ClientIdV2Controller_update_v2 (404)\nexport const ClientIdV2Controller_update_v2_404 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_update_v2', kind: 'response', status: 404 }, schema: ClientIdV2Controller_update_v2_404 });\n\n// PUT /v2/client-ids/{id} -> ClientIdV2Controller_update_v2 (429)\nexport const ClientIdV2Controller_update_v2_429 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_update_v2', kind: 'response', status: 429 }, schema: ClientIdV2Controller_update_v2_429 });\n\n// DELETE /v2/client-ids/{id} -> ClientIdV2Controller_delete_v2 (200)\nexport const ClientIdV2Controller_delete_v2_200 = z.unknown();\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_delete_v2', kind: 'response', status: 200 }, schema: ClientIdV2Controller_delete_v2_200 });\n\n// DELETE /v2/client-ids/{id} -> ClientIdV2Controller_delete_v2 (401)\nexport const ClientIdV2Controller_delete_v2_401 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_delete_v2', kind: 'response', status: 401 }, schema: ClientIdV2Controller_delete_v2_401 });\n\n// DELETE /v2/client-ids/{id} -> ClientIdV2Controller_delete_v2 (404)\nexport const ClientIdV2Controller_delete_v2_404 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_delete_v2', kind: 'response', status: 404 }, schema: ClientIdV2Controller_delete_v2_404 });\n\n// DELETE /v2/client-ids/{id} -> ClientIdV2Controller_delete_v2 (429)\nexport const ClientIdV2Controller_delete_v2_429 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_delete_v2', kind: 'response', status: 429 }, schema: ClientIdV2Controller_delete_v2_429 });\n"]}
@@ -1,3 +1,3 @@
1
- export { k as ConversionRoutes, b as CurrenciesApi, C as CurrenciesV1Api, j as CurrencyList, h as CurrencyRequestOptions, d as CurrencyToken, a as CurrencyV1RequestOptions, g as GetConversionRoutesQuery, G as GetConversionRoutesV1Query, f as ListCurrenciesQuery, L as ListCurrenciesV1Query, e as createCurrenciesApi, c as createCurrenciesV1Api } from '../../index-Bum0bfZQ.mjs';
1
+ export { k as ConversionRoutes, b as CurrenciesApi, C as CurrenciesV1Api, j as CurrencyList, h as CurrencyRequestOptions, d as CurrencyToken, a as CurrencyV1RequestOptions, g as GetConversionRoutesQuery, G as GetConversionRoutesV1Query, f as ListCurrenciesQuery, L as ListCurrenciesV1Query, e as createCurrenciesApi, c as createCurrenciesV1Api } from '../../index-DJGHELE1.mjs';
2
2
  import 'zod';
3
- import '../../openapi-types-CtUFCrk4.mjs';
3
+ import '../../openapi-types-CQ1z27_K.mjs';
@@ -90,7 +90,7 @@ var OP_LIST = "CurrenciesV2Controller_getNetworkTokens_v2";
90
90
  var OP_CONVERSION_ROUTES = "CurrenciesV2Controller_getConversionRoutes_v2";
91
91
  var CurrencyTokenSchema = z.object({
92
92
  id: z.string(),
93
- name: z.string(),
93
+ name: z.string().optional(),
94
94
  symbol: z.string(),
95
95
  decimals: z.number(),
96
96
  address: z.string().optional(),
@@ -107,6 +107,20 @@ var ConversionRoutesSchema = z.object({
107
107
  }).passthrough();
108
108
  schemaRegistry.register({ key: { operationId: OP_LIST, kind: "response", status: 200 }, schema: CurrenciesListSchema });
109
109
  schemaRegistry.register({ key: { operationId: OP_CONVERSION_ROUTES, kind: "response", status: 200 }, schema: ConversionRoutesSchema });
110
+ var OP_LIST_V1 = "CurrenciesV1Controller_getNetworkTokens_v1";
111
+ var OP_CONVERSION_ROUTES_V1 = "CurrenciesV1Controller_getConversionRoutes_v1";
112
+ var DESCRIPTION_LIST = "Legacy currencies list";
113
+ var DESCRIPTION_CONVERSION_ROUTES = "Legacy conversion routes";
114
+ var CurrenciesV1ListSchema = z.union([CurrenciesListSchema, CurrencyTokenSchema]);
115
+ schemaRegistry.register({ key: { operationId: OP_LIST_V1, kind: "response", status: 200 }, schema: CurrenciesV1ListSchema });
116
+ schemaRegistry.register({
117
+ key: { operationId: OP_CONVERSION_ROUTES_V1, kind: "response", status: 200 },
118
+ schema: ConversionRoutesSchema
119
+ });
120
+ var DESCRIPTIONS = {
121
+ list: DESCRIPTION_LIST,
122
+ conversionRoutes: DESCRIPTION_CONVERSION_ROUTES
123
+ };
110
124
 
111
125
  // src/core/http/validation.config.ts
112
126
  function normaliseBoolean(flag, fallback) {
@@ -212,20 +226,6 @@ async function requestJson(http, params) {
212
226
  if (!parsedResponse.success) throw parsedResponse.error;
213
227
  return parsedResponse.data;
214
228
  }
215
- var OP_LIST_V1 = "CurrenciesV1Controller_getNetworkTokens_v1";
216
- var OP_CONVERSION_ROUTES_V1 = "CurrenciesV1Controller_getConversionRoutes_v1";
217
- var DESCRIPTION_LIST = "Legacy currencies list";
218
- var DESCRIPTION_CONVERSION_ROUTES = "Legacy conversion routes";
219
- var CurrenciesV1ListSchema = z.union([CurrenciesListSchema, CurrencyTokenSchema]);
220
- schemaRegistry.register({ key: { operationId: OP_LIST_V1, kind: "response", status: 200 }, schema: CurrenciesV1ListSchema });
221
- schemaRegistry.register({
222
- key: { operationId: OP_CONVERSION_ROUTES_V1, kind: "response", status: 200 },
223
- schema: ConversionRoutesSchema
224
- });
225
- var DESCRIPTIONS = {
226
- list: DESCRIPTION_LIST,
227
- conversionRoutes: DESCRIPTION_CONVERSION_ROUTES
228
- };
229
229
 
230
230
  // src/domains/currencies/v1/currencies.v1.facade.ts
231
231
  var CURRENCIES_V1_PATH = "/v1/currencies";
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/validation/schema.registry.ts","../../../../src/validation/generated/groups/currencies.schemas.generated.ts","../../../../src/domains/currencies/currencies.schemas.ts","../../../../src/core/http/validation.config.ts","../../../../src/validation/zod.helpers.ts","../../../../src/core/http/operation.helper.ts","../../../../src/domains/currencies/v1/currencies.v1.schemas.ts","../../../../src/domains/currencies/v1/currencies.v1.facade.ts","../../../../src/domains/currencies/currencies.facade.ts"],"names":["z","CONVERSION_ROUTES_SEGMENT","DESCRIPTION_LIST","DESCRIPTION_CONVERSION_ROUTES","toQuery"],"mappings":"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","file":"index.js","sourcesContent":["import type { ZodTypeAny } from \"zod\";\n\nexport type SchemaKind = \"request\" | \"response\" | \"webhook\";\n\nexport interface SchemaKey {\n operationId: string;\n kind: SchemaKind;\n variant?: string;\n status?: number;\n}\n\nexport interface SchemaEntry<TSchema extends ZodTypeAny = ZodTypeAny> {\n key: SchemaKey;\n schema: TSchema;\n}\n\nfunction serialiseKey(key: SchemaKey): string {\n const variant = key.variant ?? \"default\";\n const status = key.status?.toString() ?? \"any\";\n return `${key.operationId}|${key.kind}|${variant}|${status}`;\n}\n\n/**\n * Lightweight registry that associates OpenAPI operation IDs with validation schemas.\n * Generators can populate this map while domain modules retrieve the schemas at runtime.\n */\nexport class SchemaRegistry {\n private readonly store = new Map<string, SchemaEntry>();\n\n register(entry: SchemaEntry): void {\n const id = serialiseKey(entry.key);\n this.store.set(id, entry);\n }\n\n get(key: SchemaKey): ZodTypeAny | undefined {\n const id = serialiseKey(key);\n return this.store.get(id)?.schema;\n }\n\n /**\n * Removes every registered schema — primarily useful in tests.\n */\n clear(): void {\n this.store.clear();\n }\n}\n\nexport const schemaRegistry = new SchemaRegistry();\n","// Auto-generated by scripts/generate-zod.mjs. Do not edit.\nimport { z } from 'zod';\n\nimport { schemaRegistry } from '../../schema.registry';\n\nconst ErrorDetailSchema = z\n .object({\n message: z.string(),\n code: z.string().optional(),\n field: z.string().optional(),\n source: z\n .object({\n pointer: z.string().optional(),\n parameter: z.string().optional(),\n })\n .passthrough()\n .optional(),\n meta: z.record(z.unknown()).optional(),\n })\n .passthrough();\n\nconst ErrorEnvelopeSchema = z\n .object({\n status: z.number().optional(),\n statusCode: z.number().optional(),\n code: z.string().optional(),\n error: z.string().optional(),\n message: z\n .union([\n z.string(),\n z.array(z.union([z.string(), ErrorDetailSchema])),\n ErrorDetailSchema,\n ])\n .optional(),\n detail: z.unknown().optional(),\n errors: z.array(ErrorDetailSchema).optional(),\n requestId: z.string().optional(),\n correlationId: z.string().optional(),\n retryAfter: z.union([z.number(), z.string()]).optional(),\n retryAfterMs: z.number().optional(),\n meta: z.record(z.unknown()).optional(),\n })\n .passthrough();\n\n// GET /v1/currencies -> CurrenciesV1Controller_getNetworkTokens_v1 (200)\nexport const CurrenciesV1Controller_getNetworkTokens_v1_200 = z.unknown();\nschemaRegistry.register({ key: { operationId: 'CurrenciesV1Controller_getNetworkTokens_v1', kind: 'response', status: 200 }, schema: CurrenciesV1Controller_getNetworkTokens_v1_200 });\n\n// GET /v1/currencies -> CurrenciesV1Controller_getNetworkTokens_v1 (400)\nexport const CurrenciesV1Controller_getNetworkTokens_v1_400 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'CurrenciesV1Controller_getNetworkTokens_v1', kind: 'response', status: 400 }, schema: CurrenciesV1Controller_getNetworkTokens_v1_400 });\n\n// GET /v1/currencies -> CurrenciesV1Controller_getNetworkTokens_v1 (404)\nexport const CurrenciesV1Controller_getNetworkTokens_v1_404 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'CurrenciesV1Controller_getNetworkTokens_v1', kind: 'response', status: 404 }, schema: CurrenciesV1Controller_getNetworkTokens_v1_404 });\n\n// GET /v1/currencies -> CurrenciesV1Controller_getNetworkTokens_v1 (429)\nexport const CurrenciesV1Controller_getNetworkTokens_v1_429 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'CurrenciesV1Controller_getNetworkTokens_v1', kind: 'response', status: 429 }, schema: CurrenciesV1Controller_getNetworkTokens_v1_429 });\n\n// GET /v1/currencies/{currencyId}/conversion-routes -> CurrenciesV1Controller_getConversionRoutes_v1 (200)\nexport const CurrenciesV1Controller_getConversionRoutes_v1_200 = z.unknown();\nschemaRegistry.register({ key: { operationId: 'CurrenciesV1Controller_getConversionRoutes_v1', kind: 'response', status: 200 }, schema: CurrenciesV1Controller_getConversionRoutes_v1_200 });\n\n// GET /v1/currencies/{currencyId}/conversion-routes -> CurrenciesV1Controller_getConversionRoutes_v1 (404)\nexport const CurrenciesV1Controller_getConversionRoutes_v1_404 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'CurrenciesV1Controller_getConversionRoutes_v1', kind: 'response', status: 404 }, schema: CurrenciesV1Controller_getConversionRoutes_v1_404 });\n\n// GET /v1/currencies/{currencyId}/conversion-routes -> CurrenciesV1Controller_getConversionRoutes_v1 (429)\nexport const CurrenciesV1Controller_getConversionRoutes_v1_429 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'CurrenciesV1Controller_getConversionRoutes_v1', kind: 'response', status: 429 }, schema: CurrenciesV1Controller_getConversionRoutes_v1_429 });\n\n// GET /v2/currencies -> CurrenciesV2Controller_getNetworkTokens_v2 (200)\nexport const CurrenciesV2Controller_getNetworkTokens_v2_200 = z.unknown();\nschemaRegistry.register({ key: { operationId: 'CurrenciesV2Controller_getNetworkTokens_v2', kind: 'response', status: 200 }, schema: CurrenciesV2Controller_getNetworkTokens_v2_200 });\n\n// GET /v2/currencies -> CurrenciesV2Controller_getNetworkTokens_v2 (400)\nexport const CurrenciesV2Controller_getNetworkTokens_v2_400 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'CurrenciesV2Controller_getNetworkTokens_v2', kind: 'response', status: 400 }, schema: CurrenciesV2Controller_getNetworkTokens_v2_400 });\n\n// GET /v2/currencies -> CurrenciesV2Controller_getNetworkTokens_v2 (404)\nexport const CurrenciesV2Controller_getNetworkTokens_v2_404 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'CurrenciesV2Controller_getNetworkTokens_v2', kind: 'response', status: 404 }, schema: CurrenciesV2Controller_getNetworkTokens_v2_404 });\n\n// GET /v2/currencies -> CurrenciesV2Controller_getNetworkTokens_v2 (429)\nexport const CurrenciesV2Controller_getNetworkTokens_v2_429 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'CurrenciesV2Controller_getNetworkTokens_v2', kind: 'response', status: 429 }, schema: CurrenciesV2Controller_getNetworkTokens_v2_429 });\n\n// GET /v2/currencies/{currencyId}/conversion-routes -> CurrenciesV2Controller_getConversionRoutes_v2 (200)\nexport const CurrenciesV2Controller_getConversionRoutes_v2_200 = z.unknown();\nschemaRegistry.register({ key: { operationId: 'CurrenciesV2Controller_getConversionRoutes_v2', kind: 'response', status: 200 }, schema: CurrenciesV2Controller_getConversionRoutes_v2_200 });\n\n// GET /v2/currencies/{currencyId}/conversion-routes -> CurrenciesV2Controller_getConversionRoutes_v2 (404)\nexport const CurrenciesV2Controller_getConversionRoutes_v2_404 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'CurrenciesV2Controller_getConversionRoutes_v2', kind: 'response', status: 404 }, schema: CurrenciesV2Controller_getConversionRoutes_v2_404 });\n\n// GET /v2/currencies/{currencyId}/conversion-routes -> CurrenciesV2Controller_getConversionRoutes_v2 (429)\nexport const CurrenciesV2Controller_getConversionRoutes_v2_429 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'CurrenciesV2Controller_getConversionRoutes_v2', kind: 'response', status: 429 }, schema: CurrenciesV2Controller_getConversionRoutes_v2_429 });\n","import { z } from \"zod\";\n\nimport \"../../validation/generated/groups/currencies.schemas.generated\";\nimport { schemaRegistry } from \"../../validation/schema.registry\";\n\nexport const OP_LIST = \"CurrenciesV2Controller_getNetworkTokens_v2\";\nexport const OP_CONVERSION_ROUTES = \"CurrenciesV2Controller_getConversionRoutes_v2\";\n\nexport const CurrencyTokenSchema = z\n .object({\n id: z.string(),\n name: z.string(),\n symbol: z.string(),\n decimals: z.number(),\n address: z.string().optional(),\n network: z.string().optional(),\n type: z.string().optional(),\n hash: z.string().optional(),\n chainId: z.number().optional(),\n })\n .passthrough();\n\nexport const CurrenciesListSchema = z.array(CurrencyTokenSchema);\nexport type CurrencyToken = z.infer<typeof CurrencyTokenSchema>;\nexport type CurrencyList = z.infer<typeof CurrenciesListSchema>;\n\nexport const ConversionRoutesSchema = z\n .object({\n currencyId: z.string(),\n network: z.string().nullable().optional(),\n conversionRoutes: z.array(CurrencyTokenSchema),\n })\n .passthrough();\n\nexport type ConversionRoutes = z.infer<typeof ConversionRoutesSchema>;\n\nschemaRegistry.register({ key: { operationId: OP_LIST, kind: \"response\", status: 200 }, schema: CurrenciesListSchema });\nschemaRegistry.register({ key: { operationId: OP_CONVERSION_ROUTES, kind: \"response\", status: 200 }, schema: ConversionRoutesSchema });\n","import type { RuntimeValidationConfig, RuntimeValidationOption } from \"./http.types\";\n\nconst DEFAULT_RUNTIME_VALIDATION: RuntimeValidationConfig = {\n requests: true,\n responses: true,\n errors: true,\n};\n\nfunction normaliseBoolean(flag: boolean | undefined, fallback: boolean): boolean {\n return typeof flag === \"boolean\" ? flag : fallback;\n}\n\nexport function normaliseRuntimeValidation(option?: RuntimeValidationOption): RuntimeValidationConfig {\n if (typeof option === \"boolean\") {\n return {\n requests: option,\n responses: option,\n errors: option,\n } satisfies RuntimeValidationConfig;\n }\n\n return {\n requests: normaliseBoolean(option?.requests, DEFAULT_RUNTIME_VALIDATION.requests),\n responses: normaliseBoolean(option?.responses, DEFAULT_RUNTIME_VALIDATION.responses),\n errors: normaliseBoolean(option?.errors, DEFAULT_RUNTIME_VALIDATION.errors),\n } satisfies RuntimeValidationConfig;\n}\n\nexport function mergeRuntimeValidation(base: RuntimeValidationConfig, override?: RuntimeValidationOption): RuntimeValidationConfig {\n if (override === undefined) {\n return base;\n }\n\n if (typeof override === \"boolean\") {\n return {\n requests: override,\n responses: override,\n errors: override,\n } satisfies RuntimeValidationConfig;\n }\n\n return {\n requests: normaliseBoolean(override.requests, base.requests),\n responses: normaliseBoolean(override.responses, base.responses),\n errors: normaliseBoolean(override.errors, base.errors),\n } satisfies RuntimeValidationConfig;\n}\n\nexport function cloneRuntimeValidation(config: RuntimeValidationConfig): RuntimeValidationConfig {\n return { ...config };\n}\n","import { type SafeParseReturnType, type ZodTypeAny } from \"zod\";\n\nimport type { SchemaKey } from \"./schema.registry\";\nimport { schemaRegistry } from \"./schema.registry\";\n\nexport type SchemaOutput<TSchema extends ZodTypeAny> = TSchema[\"_output\"];\n\nexport interface ParseWithSchemaOptions<TSchema extends ZodTypeAny> {\n schema: TSchema;\n value: unknown;\n description?: string;\n}\n\nexport interface ParseRegistryOptions {\n key: SchemaKey;\n value: unknown;\n description?: string;\n skipOnMissingSchema?: boolean;\n}\n\nexport interface ParseResult<T> {\n success: boolean;\n data?: T;\n error?: unknown;\n}\n\nexport class ValidationError extends Error {\n constructor(message: string, readonly cause?: unknown) {\n super(message, { cause });\n this.name = \"ClientValidationError\";\n }\n}\n\nexport function parseWithSchema<TSchema extends ZodTypeAny>(\n options: ParseWithSchemaOptions<TSchema>,\n): ParseResult<SchemaOutput<TSchema>> {\n const { schema, value, description } = options;\n const outcome: SafeParseReturnType<unknown, SchemaOutput<TSchema>> = schema.safeParse(value);\n if (outcome.success) {\n return { success: true, data: outcome.data };\n }\n\n const error = new ValidationError(description ?? \"Validation failed\", outcome.error);\n return { success: false, error };\n}\n\nexport function parseWithRegistry<TSchema extends ZodTypeAny>(options: ParseRegistryOptions): ParseResult<SchemaOutput<TSchema>> {\n const schema = schemaRegistry.get(options.key) as TSchema | undefined;\n if (!schema) {\n if (options.skipOnMissingSchema) {\n return { success: true, data: options.value as SchemaOutput<TSchema> };\n }\n return { success: false, error: new ValidationError(`No schema registered for ${options.key.operationId}`) };\n }\n\n return parseWithSchema({ schema, value: options.value, description: options.description });\n}\n","import type { HttpClient, HttpMethod, RequestOptions, RuntimeValidationOption } from \"./http.types\";\nimport { mergeRuntimeValidation } from \"./validation.config\";\nimport type { SchemaKey } from \"../../validation/schema.registry\";\nimport { parseWithRegistry } from \"../../validation/zod.helpers\";\n\ntype Query = NonNullable<RequestOptions[\"query\"]>;\n\nexport interface RequestJsonParams {\n operationId: string;\n method: HttpMethod;\n path: string;\n query?: Query;\n body?: unknown;\n schemaKey: SchemaKey;\n requestSchemaKey?: SchemaKey;\n description?: string;\n querySerializer?: RequestOptions[\"querySerializer\"];\n signal?: RequestOptions[\"signal\"];\n timeoutMs?: RequestOptions[\"timeoutMs\"];\n validation?: RuntimeValidationOption;\n meta?: RequestOptions[\"meta\"];\n}\n\nexport async function requestJson<T>(http: HttpClient, params: RequestJsonParams): Promise<T> {\n const {\n operationId,\n method,\n path,\n query,\n body,\n schemaKey,\n requestSchemaKey,\n description,\n querySerializer,\n signal,\n timeoutMs,\n validation,\n meta,\n } = params;\n\n const runtimeValidation = mergeRuntimeValidation(http.getRuntimeValidationConfig(), validation);\n\n let requestBody = body;\n if (runtimeValidation.requests && requestSchemaKey && body !== undefined) {\n const parsedRequest = parseWithRegistry({\n key: requestSchemaKey,\n value: body,\n description: `${description ?? operationId} request`,\n skipOnMissingSchema: true,\n });\n if (!parsedRequest.success) {\n throw parsedRequest.error;\n }\n requestBody = parsedRequest.data;\n }\n\n const metaValidation = validation ?? meta?.validation;\n const requestMeta: RequestOptions[\"meta\"] = {\n ...(meta ?? {}),\n operationId,\n validation: metaValidation,\n };\n\n const res = await http.request({\n method,\n path,\n query,\n body: requestBody,\n querySerializer,\n signal,\n timeoutMs,\n meta: requestMeta,\n });\n\n if (!runtimeValidation.responses) {\n return res.data as T;\n }\n\n const parsedResponse = parseWithRegistry({ key: schemaKey, value: res.data, description });\n if (!parsedResponse.success) throw parsedResponse.error;\n return parsedResponse.data as T;\n}\n\nexport interface RequestVoidParams {\n operationId: string;\n method: HttpMethod;\n path: string;\n query?: Query;\n body?: unknown;\n querySerializer?: RequestOptions[\"querySerializer\"];\n signal?: RequestOptions[\"signal\"];\n timeoutMs?: RequestOptions[\"timeoutMs\"];\n requestSchemaKey?: SchemaKey;\n validation?: RuntimeValidationOption;\n meta?: RequestOptions[\"meta\"];\n}\n\nexport async function requestVoid(http: HttpClient, params: RequestVoidParams): Promise<void> {\n const { operationId, method, path, query, body, querySerializer, signal, timeoutMs, requestSchemaKey, validation, meta } = params;\n\n const runtimeValidation = mergeRuntimeValidation(http.getRuntimeValidationConfig(), validation);\n\n let requestBody = body;\n if (runtimeValidation.requests && requestSchemaKey && body !== undefined) {\n const parsedRequest = parseWithRegistry({\n key: requestSchemaKey,\n value: body,\n description: `${operationId} request`,\n skipOnMissingSchema: true,\n });\n if (!parsedRequest.success) {\n throw parsedRequest.error;\n }\n requestBody = parsedRequest.data;\n }\n\n const metaValidation = validation ?? meta?.validation;\n const requestMeta: RequestOptions[\"meta\"] = {\n ...(meta ?? {}),\n operationId,\n validation: metaValidation,\n };\n\n await http.request({\n method,\n path,\n query,\n body: requestBody,\n querySerializer,\n signal,\n timeoutMs,\n meta: requestMeta,\n });\n}\n","import { z } from \"zod\";\n\nimport { schemaRegistry } from \"../../../validation/schema.registry\";\nimport {\n ConversionRoutesSchema,\n CurrencyTokenSchema,\n CurrenciesListSchema,\n type ConversionRoutes,\n type CurrencyList,\n} from \"../currencies.schemas\";\n\nexport const OP_LIST_V1 = \"CurrenciesV1Controller_getNetworkTokens_v1\";\nexport const OP_CONVERSION_ROUTES_V1 = \"CurrenciesV1Controller_getConversionRoutes_v1\";\n\nconst DESCRIPTION_LIST = \"Legacy currencies list\";\nconst DESCRIPTION_CONVERSION_ROUTES = \"Legacy conversion routes\";\n\nexport const CurrenciesV1ListSchema = z.union([CurrenciesListSchema, CurrencyTokenSchema]);\n\nexport type LegacyCurrencyList = CurrencyList;\nexport type LegacyConversionRoutes = ConversionRoutes;\n\nschemaRegistry.register({ key: { operationId: OP_LIST_V1, kind: \"response\", status: 200 }, schema: CurrenciesV1ListSchema });\nschemaRegistry.register({\n key: { operationId: OP_CONVERSION_ROUTES_V1, kind: \"response\", status: 200 },\n schema: ConversionRoutesSchema,\n});\n\nexport const DESCRIPTIONS = {\n list: DESCRIPTION_LIST,\n conversionRoutes: DESCRIPTION_CONVERSION_ROUTES,\n} as const;\n","import type { HttpClient, RuntimeValidationOption } from \"../../../core/http/http.types\";\nimport { requestJson } from \"../../../core/http/operation.helper\";\nimport type { operations } from \"../../../generated/openapi-types\";\nimport { parseWithSchema } from \"../../../validation/zod.helpers\";\nimport { type ConversionRoutes, type CurrencyList, ConversionRoutesSchema } from \"../currencies.schemas\";\nimport {\n CurrenciesV1ListSchema,\n DESCRIPTIONS,\n OP_CONVERSION_ROUTES_V1,\n OP_LIST_V1,\n} from \"./currencies.v1.schemas\";\n\nexport type ListCurrenciesV1Query = operations[typeof OP_LIST_V1][\"parameters\"][\"query\"];\nexport type GetConversionRoutesV1Query = operations[typeof OP_CONVERSION_ROUTES_V1][\"parameters\"][\"query\"];\n\nconst CURRENCIES_V1_PATH = \"/v1/currencies\";\nconst CONVERSION_ROUTES_SEGMENT = \"conversion-routes\";\n\nexport interface CurrencyV1RequestOptions {\n signal?: AbortSignal;\n timeoutMs?: number;\n validation?: RuntimeValidationOption;\n}\n\nexport interface CurrenciesV1Api {\n list(query?: ListCurrenciesV1Query, options?: CurrencyV1RequestOptions): Promise<CurrencyList>;\n getConversionRoutes(currencyId: string, query?: GetConversionRoutesV1Query, options?: CurrencyV1RequestOptions): Promise<ConversionRoutes>;\n}\n\nfunction toQuery(\n input?: Record<string, unknown>,\n): Record<string, string | number | boolean | (string | number | boolean)[] | undefined> | undefined {\n return input as Record<string, string | number | boolean | (string | number | boolean)[] | undefined> | undefined;\n}\n\nexport function createCurrenciesV1Api(http: HttpClient): CurrenciesV1Api {\n return {\n async list(query, options) {\n const data = await requestJson<unknown>(http, {\n operationId: OP_LIST_V1,\n method: \"GET\",\n path: CURRENCIES_V1_PATH,\n query: toQuery(query ?? undefined),\n schemaKey: { operationId: OP_LIST_V1, kind: \"response\", status: 200 },\n description: DESCRIPTIONS.list,\n signal: options?.signal,\n timeoutMs: options?.timeoutMs,\n validation: options?.validation,\n });\n\n const parsed = parseWithSchema({\n schema: CurrenciesV1ListSchema,\n value: data,\n description: DESCRIPTIONS.list,\n });\n if (!parsed.success) throw parsed.error;\n const payload = parsed.data;\n const tokens = Array.isArray(payload) ? payload : [payload];\n return tokens as CurrencyList;\n },\n\n async getConversionRoutes(currencyId, query, options) {\n const path = `${CURRENCIES_V1_PATH}/${encodeURIComponent(currencyId)}/${CONVERSION_ROUTES_SEGMENT}`;\n const data = await requestJson<unknown>(http, {\n operationId: OP_CONVERSION_ROUTES_V1,\n method: \"GET\",\n path,\n query: toQuery(query ?? undefined),\n schemaKey: { operationId: OP_CONVERSION_ROUTES_V1, kind: \"response\", status: 200 },\n description: DESCRIPTIONS.conversionRoutes,\n signal: options?.signal,\n timeoutMs: options?.timeoutMs,\n validation: options?.validation,\n });\n\n const parsed = parseWithSchema({\n schema: ConversionRoutesSchema,\n value: data,\n description: DESCRIPTIONS.conversionRoutes,\n });\n if (!parsed.success) throw parsed.error;\n return parsed.data as ConversionRoutes;\n },\n };\n}\n","import { OP_CONVERSION_ROUTES, OP_LIST, CurrenciesListSchema, ConversionRoutesSchema } from \"./currencies.schemas\";\nimport type { CurrencyList, ConversionRoutes } from \"./currencies.schemas\";\nimport { createCurrenciesV1Api, type CurrenciesV1Api } from \"./v1\";\nimport type { HttpClient, RequestOptions, RuntimeValidationOption } from \"../../core/http/http.types\";\nimport { requestJson } from \"../../core/http/operation.helper\";\nimport type { operations } from \"../../generated/openapi-types\";\nimport { parseWithSchema } from \"../../validation/zod.helpers\";\n\nexport type ListCurrenciesQuery = operations[\"CurrenciesV2Controller_getNetworkTokens_v2\"][\"parameters\"][\"query\"];\nexport type GetConversionRoutesQuery = operations[\"CurrenciesV2Controller_getConversionRoutes_v2\"][\"parameters\"][\"query\"];\n\nconst CURRENCIES_PATH = \"/v2/currencies\";\nconst CONVERSION_ROUTES_SEGMENT = \"conversion-routes\";\nconst DESCRIPTION_LIST = \"Currencies list\";\nconst DESCRIPTION_CONVERSION_ROUTES = \"Conversion routes\";\n\nexport interface CurrencyRequestOptions {\n signal?: AbortSignal;\n timeoutMs?: number;\n validation?: RuntimeValidationOption;\n meta?: RequestOptions[\"meta\"];\n}\n\nexport interface CurrenciesApi {\n list(query?: ListCurrenciesQuery, options?: CurrencyRequestOptions): Promise<CurrencyList>;\n getConversionRoutes(currencyId: string, query?: GetConversionRoutesQuery, options?: CurrencyRequestOptions): Promise<ConversionRoutes>;\n legacy: CurrenciesV1Api;\n}\n\nexport function createCurrenciesApi(http: HttpClient): CurrenciesApi {\n const legacy = createCurrenciesV1Api(http);\n function toQuery(input?: Record<string, unknown>): Record<string, string | number | boolean | (string | number | boolean)[] | undefined> | undefined {\n return input as Record<string, string | number | boolean | (string | number | boolean)[] | undefined> | undefined;\n }\n\n return {\n legacy,\n async list(query, options) {\n const data = await requestJson<unknown>(http, {\n operationId: OP_LIST,\n method: \"GET\",\n path: CURRENCIES_PATH,\n query: toQuery(query ?? undefined),\n schemaKey: { operationId: OP_LIST, kind: \"response\", status: 200 },\n description: DESCRIPTION_LIST,\n signal: options?.signal,\n timeoutMs: options?.timeoutMs,\n validation: options?.validation,\n meta: options?.meta,\n });\n\n const parsed = parseWithSchema({\n schema: CurrenciesListSchema,\n value: data,\n description: DESCRIPTION_LIST,\n });\n if (!parsed.success) throw parsed.error;\n const list = parsed.data as CurrencyList;\n return list;\n },\n async getConversionRoutes(currencyId, query, options) {\n const path = `${CURRENCIES_PATH}/${encodeURIComponent(currencyId)}/${CONVERSION_ROUTES_SEGMENT}`;\n const data = await requestJson<unknown>(http, {\n operationId: OP_CONVERSION_ROUTES,\n method: \"GET\",\n path,\n query: toQuery(query ?? undefined),\n schemaKey: { operationId: OP_CONVERSION_ROUTES, kind: \"response\", status: 200 },\n description: DESCRIPTION_CONVERSION_ROUTES,\n signal: options?.signal,\n timeoutMs: options?.timeoutMs,\n validation: options?.validation,\n meta: options?.meta,\n });\n\n const parsed = parseWithSchema({\n schema: ConversionRoutesSchema,\n value: data,\n description: DESCRIPTION_CONVERSION_ROUTES,\n });\n if (!parsed.success) throw parsed.error;\n const routes = parsed.data as ConversionRoutes;\n return routes;\n },\n };\n}\n"]}
1
+ {"version":3,"sources":["../../../../src/validation/schema.registry.ts","../../../../src/validation/generated/groups/currencies.schemas.generated.ts","../../../../src/domains/currencies/currencies.schemas.ts","../../../../src/domains/currencies/v1/currencies.v1.schemas.ts","../../../../src/core/http/validation.config.ts","../../../../src/validation/zod.helpers.ts","../../../../src/core/http/operation.helper.ts","../../../../src/domains/currencies/v1/currencies.v1.facade.ts","../../../../src/domains/currencies/currencies.facade.ts"],"names":["z","CONVERSION_ROUTES_SEGMENT","DESCRIPTION_LIST","DESCRIPTION_CONVERSION_ROUTES","toQuery"],"mappings":"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","file":"index.js","sourcesContent":["import type { ZodTypeAny } from \"zod\";\n\nexport type SchemaKind = \"request\" | \"response\" | \"webhook\";\n\nexport interface SchemaKey {\n operationId: string;\n kind: SchemaKind;\n variant?: string;\n status?: number;\n}\n\nexport interface SchemaEntry<TSchema extends ZodTypeAny = ZodTypeAny> {\n key: SchemaKey;\n schema: TSchema;\n}\n\nfunction serialiseKey(key: SchemaKey): string {\n const variant = key.variant ?? \"default\";\n const status = key.status?.toString() ?? \"any\";\n return `${key.operationId}|${key.kind}|${variant}|${status}`;\n}\n\n/**\n * Lightweight registry that associates OpenAPI operation IDs with validation schemas.\n * Generators can populate this map while domain modules retrieve the schemas at runtime.\n */\nexport class SchemaRegistry {\n private readonly store = new Map<string, SchemaEntry>();\n\n register(entry: SchemaEntry): void {\n const id = serialiseKey(entry.key);\n this.store.set(id, entry);\n }\n\n get(key: SchemaKey): ZodTypeAny | undefined {\n const id = serialiseKey(key);\n return this.store.get(id)?.schema;\n }\n\n /**\n * Removes every registered schema — primarily useful in tests.\n */\n clear(): void {\n this.store.clear();\n }\n}\n\nexport const schemaRegistry = new SchemaRegistry();\n","// Auto-generated by scripts/generate-zod.mjs. Do not edit.\nimport { z } from 'zod';\n\nimport { schemaRegistry } from '../../schema.registry';\n\nconst ErrorDetailSchema = z\n .object({\n message: z.string(),\n code: z.string().optional(),\n field: z.string().optional(),\n source: z\n .object({\n pointer: z.string().optional(),\n parameter: z.string().optional(),\n })\n .passthrough()\n .optional(),\n meta: z.record(z.unknown()).optional(),\n })\n .passthrough();\n\nconst ErrorEnvelopeSchema = z\n .object({\n status: z.number().optional(),\n statusCode: z.number().optional(),\n code: z.string().optional(),\n error: z.string().optional(),\n message: z\n .union([\n z.string(),\n z.array(z.union([z.string(), ErrorDetailSchema])),\n ErrorDetailSchema,\n ])\n .optional(),\n detail: z.unknown().optional(),\n errors: z.array(ErrorDetailSchema).optional(),\n requestId: z.string().optional(),\n correlationId: z.string().optional(),\n retryAfter: z.union([z.number(), z.string()]).optional(),\n retryAfterMs: z.number().optional(),\n meta: z.record(z.unknown()).optional(),\n })\n .passthrough();\n\n// GET /v1/currencies -> CurrenciesV1Controller_getNetworkTokens_v1 (200)\nexport const CurrenciesV1Controller_getNetworkTokens_v1_200 = z.unknown();\nschemaRegistry.register({ key: { operationId: 'CurrenciesV1Controller_getNetworkTokens_v1', kind: 'response', status: 200 }, schema: CurrenciesV1Controller_getNetworkTokens_v1_200 });\n\n// GET /v1/currencies -> CurrenciesV1Controller_getNetworkTokens_v1 (400)\nexport const CurrenciesV1Controller_getNetworkTokens_v1_400 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'CurrenciesV1Controller_getNetworkTokens_v1', kind: 'response', status: 400 }, schema: CurrenciesV1Controller_getNetworkTokens_v1_400 });\n\n// GET /v1/currencies -> CurrenciesV1Controller_getNetworkTokens_v1 (404)\nexport const CurrenciesV1Controller_getNetworkTokens_v1_404 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'CurrenciesV1Controller_getNetworkTokens_v1', kind: 'response', status: 404 }, schema: CurrenciesV1Controller_getNetworkTokens_v1_404 });\n\n// GET /v1/currencies -> CurrenciesV1Controller_getNetworkTokens_v1 (429)\nexport const CurrenciesV1Controller_getNetworkTokens_v1_429 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'CurrenciesV1Controller_getNetworkTokens_v1', kind: 'response', status: 429 }, schema: CurrenciesV1Controller_getNetworkTokens_v1_429 });\n\n// GET /v1/currencies/{currencyId}/conversion-routes -> CurrenciesV1Controller_getConversionRoutes_v1 (200)\nexport const CurrenciesV1Controller_getConversionRoutes_v1_200 = z.unknown();\nschemaRegistry.register({ key: { operationId: 'CurrenciesV1Controller_getConversionRoutes_v1', kind: 'response', status: 200 }, schema: CurrenciesV1Controller_getConversionRoutes_v1_200 });\n\n// GET /v1/currencies/{currencyId}/conversion-routes -> CurrenciesV1Controller_getConversionRoutes_v1 (404)\nexport const CurrenciesV1Controller_getConversionRoutes_v1_404 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'CurrenciesV1Controller_getConversionRoutes_v1', kind: 'response', status: 404 }, schema: CurrenciesV1Controller_getConversionRoutes_v1_404 });\n\n// GET /v1/currencies/{currencyId}/conversion-routes -> CurrenciesV1Controller_getConversionRoutes_v1 (429)\nexport const CurrenciesV1Controller_getConversionRoutes_v1_429 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'CurrenciesV1Controller_getConversionRoutes_v1', kind: 'response', status: 429 }, schema: CurrenciesV1Controller_getConversionRoutes_v1_429 });\n\n// GET /v2/currencies -> CurrenciesV2Controller_getNetworkTokens_v2 (200)\nexport const CurrenciesV2Controller_getNetworkTokens_v2_200 = z.unknown();\nschemaRegistry.register({ key: { operationId: 'CurrenciesV2Controller_getNetworkTokens_v2', kind: 'response', status: 200 }, schema: CurrenciesV2Controller_getNetworkTokens_v2_200 });\n\n// GET /v2/currencies -> CurrenciesV2Controller_getNetworkTokens_v2 (400)\nexport const CurrenciesV2Controller_getNetworkTokens_v2_400 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'CurrenciesV2Controller_getNetworkTokens_v2', kind: 'response', status: 400 }, schema: CurrenciesV2Controller_getNetworkTokens_v2_400 });\n\n// GET /v2/currencies -> CurrenciesV2Controller_getNetworkTokens_v2 (404)\nexport const CurrenciesV2Controller_getNetworkTokens_v2_404 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'CurrenciesV2Controller_getNetworkTokens_v2', kind: 'response', status: 404 }, schema: CurrenciesV2Controller_getNetworkTokens_v2_404 });\n\n// GET /v2/currencies -> CurrenciesV2Controller_getNetworkTokens_v2 (429)\nexport const CurrenciesV2Controller_getNetworkTokens_v2_429 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'CurrenciesV2Controller_getNetworkTokens_v2', kind: 'response', status: 429 }, schema: CurrenciesV2Controller_getNetworkTokens_v2_429 });\n\n// GET /v2/currencies/{currencyId}/conversion-routes -> CurrenciesV2Controller_getConversionRoutes_v2 (200)\nexport const CurrenciesV2Controller_getConversionRoutes_v2_200 = z.unknown();\nschemaRegistry.register({ key: { operationId: 'CurrenciesV2Controller_getConversionRoutes_v2', kind: 'response', status: 200 }, schema: CurrenciesV2Controller_getConversionRoutes_v2_200 });\n\n// GET /v2/currencies/{currencyId}/conversion-routes -> CurrenciesV2Controller_getConversionRoutes_v2 (404)\nexport const CurrenciesV2Controller_getConversionRoutes_v2_404 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'CurrenciesV2Controller_getConversionRoutes_v2', kind: 'response', status: 404 }, schema: CurrenciesV2Controller_getConversionRoutes_v2_404 });\n\n// GET /v2/currencies/{currencyId}/conversion-routes -> CurrenciesV2Controller_getConversionRoutes_v2 (429)\nexport const CurrenciesV2Controller_getConversionRoutes_v2_429 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'CurrenciesV2Controller_getConversionRoutes_v2', kind: 'response', status: 429 }, schema: CurrenciesV2Controller_getConversionRoutes_v2_429 });\n","import { z } from \"zod\";\n\nimport \"../../validation/generated/groups/currencies.schemas.generated\";\nimport { schemaRegistry } from \"../../validation/schema.registry\";\n\nexport const OP_LIST = \"CurrenciesV2Controller_getNetworkTokens_v2\";\nexport const OP_CONVERSION_ROUTES = \"CurrenciesV2Controller_getConversionRoutes_v2\";\n\nexport const CurrencyTokenSchema = z\n .object({\n id: z.string(),\n name: z.string().optional(),\n symbol: z.string(),\n decimals: z.number(),\n address: z.string().optional(),\n network: z.string().optional(),\n type: z.string().optional(),\n hash: z.string().optional(),\n chainId: z.number().optional(),\n })\n .passthrough();\n\nexport const CurrenciesListSchema = z.array(CurrencyTokenSchema);\nexport type CurrencyToken = z.infer<typeof CurrencyTokenSchema>;\nexport type CurrencyList = z.infer<typeof CurrenciesListSchema>;\n\nexport const ConversionRoutesSchema = z\n .object({\n currencyId: z.string(),\n network: z.string().nullable().optional(),\n conversionRoutes: z.array(CurrencyTokenSchema),\n })\n .passthrough();\n\nexport type ConversionRoutes = z.infer<typeof ConversionRoutesSchema>;\n\nschemaRegistry.register({ key: { operationId: OP_LIST, kind: \"response\", status: 200 }, schema: CurrenciesListSchema });\nschemaRegistry.register({ key: { operationId: OP_CONVERSION_ROUTES, kind: \"response\", status: 200 }, schema: ConversionRoutesSchema });\n","import { z } from \"zod\";\n\nimport { schemaRegistry } from \"../../../validation/schema.registry\";\nimport {\n ConversionRoutesSchema,\n CurrencyTokenSchema,\n CurrenciesListSchema,\n type ConversionRoutes,\n type CurrencyList,\n} from \"../currencies.schemas\";\n\nexport const OP_LIST_V1 = \"CurrenciesV1Controller_getNetworkTokens_v1\";\nexport const OP_CONVERSION_ROUTES_V1 = \"CurrenciesV1Controller_getConversionRoutes_v1\";\n\nconst DESCRIPTION_LIST = \"Legacy currencies list\";\nconst DESCRIPTION_CONVERSION_ROUTES = \"Legacy conversion routes\";\n\nexport const CurrenciesV1ListSchema = z.union([CurrenciesListSchema, CurrencyTokenSchema]);\n\nexport type LegacyCurrencyList = CurrencyList;\nexport type LegacyConversionRoutes = ConversionRoutes;\n\nschemaRegistry.register({ key: { operationId: OP_LIST_V1, kind: \"response\", status: 200 }, schema: CurrenciesV1ListSchema });\nschemaRegistry.register({\n key: { operationId: OP_CONVERSION_ROUTES_V1, kind: \"response\", status: 200 },\n schema: ConversionRoutesSchema,\n});\n\nexport const DESCRIPTIONS = {\n list: DESCRIPTION_LIST,\n conversionRoutes: DESCRIPTION_CONVERSION_ROUTES,\n} as const;\n","import type { RuntimeValidationConfig, RuntimeValidationOption } from \"./http.types\";\n\nconst DEFAULT_RUNTIME_VALIDATION: RuntimeValidationConfig = {\n requests: true,\n responses: true,\n errors: true,\n};\n\nfunction normaliseBoolean(flag: boolean | undefined, fallback: boolean): boolean {\n return typeof flag === \"boolean\" ? flag : fallback;\n}\n\nexport function normaliseRuntimeValidation(option?: RuntimeValidationOption): RuntimeValidationConfig {\n if (typeof option === \"boolean\") {\n return {\n requests: option,\n responses: option,\n errors: option,\n } satisfies RuntimeValidationConfig;\n }\n\n return {\n requests: normaliseBoolean(option?.requests, DEFAULT_RUNTIME_VALIDATION.requests),\n responses: normaliseBoolean(option?.responses, DEFAULT_RUNTIME_VALIDATION.responses),\n errors: normaliseBoolean(option?.errors, DEFAULT_RUNTIME_VALIDATION.errors),\n } satisfies RuntimeValidationConfig;\n}\n\nexport function mergeRuntimeValidation(base: RuntimeValidationConfig, override?: RuntimeValidationOption): RuntimeValidationConfig {\n if (override === undefined) {\n return base;\n }\n\n if (typeof override === \"boolean\") {\n return {\n requests: override,\n responses: override,\n errors: override,\n } satisfies RuntimeValidationConfig;\n }\n\n return {\n requests: normaliseBoolean(override.requests, base.requests),\n responses: normaliseBoolean(override.responses, base.responses),\n errors: normaliseBoolean(override.errors, base.errors),\n } satisfies RuntimeValidationConfig;\n}\n\nexport function cloneRuntimeValidation(config: RuntimeValidationConfig): RuntimeValidationConfig {\n return { ...config };\n}\n","import { type SafeParseReturnType, type ZodTypeAny } from \"zod\";\n\nimport type { SchemaKey } from \"./schema.registry\";\nimport { schemaRegistry } from \"./schema.registry\";\n\nexport type SchemaOutput<TSchema extends ZodTypeAny> = TSchema[\"_output\"];\n\nexport interface ParseWithSchemaOptions<TSchema extends ZodTypeAny> {\n schema: TSchema;\n value: unknown;\n description?: string;\n}\n\nexport interface ParseRegistryOptions {\n key: SchemaKey;\n value: unknown;\n description?: string;\n skipOnMissingSchema?: boolean;\n}\n\nexport interface ParseResult<T> {\n success: boolean;\n data?: T;\n error?: unknown;\n}\n\nexport class ValidationError extends Error {\n constructor(message: string, readonly cause?: unknown) {\n super(message, { cause });\n this.name = \"ClientValidationError\";\n }\n}\n\nexport function parseWithSchema<TSchema extends ZodTypeAny>(\n options: ParseWithSchemaOptions<TSchema>,\n): ParseResult<SchemaOutput<TSchema>> {\n const { schema, value, description } = options;\n const outcome: SafeParseReturnType<unknown, SchemaOutput<TSchema>> = schema.safeParse(value);\n if (outcome.success) {\n return { success: true, data: outcome.data };\n }\n\n const error = new ValidationError(description ?? \"Validation failed\", outcome.error);\n return { success: false, error };\n}\n\nexport function parseWithRegistry<TSchema extends ZodTypeAny>(options: ParseRegistryOptions): ParseResult<SchemaOutput<TSchema>> {\n const schema = schemaRegistry.get(options.key) as TSchema | undefined;\n if (!schema) {\n if (options.skipOnMissingSchema) {\n return { success: true, data: options.value as SchemaOutput<TSchema> };\n }\n return { success: false, error: new ValidationError(`No schema registered for ${options.key.operationId}`) };\n }\n\n return parseWithSchema({ schema, value: options.value, description: options.description });\n}\n","import type { HttpClient, HttpMethod, RequestOptions, RuntimeValidationOption } from \"./http.types\";\nimport { mergeRuntimeValidation } from \"./validation.config\";\nimport type { SchemaKey } from \"../../validation/schema.registry\";\nimport { parseWithRegistry } from \"../../validation/zod.helpers\";\n\ntype Query = NonNullable<RequestOptions[\"query\"]>;\n\nexport interface RequestJsonParams {\n operationId: string;\n method: HttpMethod;\n path: string;\n query?: Query;\n body?: unknown;\n schemaKey: SchemaKey;\n requestSchemaKey?: SchemaKey;\n description?: string;\n querySerializer?: RequestOptions[\"querySerializer\"];\n signal?: RequestOptions[\"signal\"];\n timeoutMs?: RequestOptions[\"timeoutMs\"];\n validation?: RuntimeValidationOption;\n meta?: RequestOptions[\"meta\"];\n}\n\nexport async function requestJson<T>(http: HttpClient, params: RequestJsonParams): Promise<T> {\n const {\n operationId,\n method,\n path,\n query,\n body,\n schemaKey,\n requestSchemaKey,\n description,\n querySerializer,\n signal,\n timeoutMs,\n validation,\n meta,\n } = params;\n\n const runtimeValidation = mergeRuntimeValidation(http.getRuntimeValidationConfig(), validation);\n\n let requestBody = body;\n if (runtimeValidation.requests && requestSchemaKey && body !== undefined) {\n const parsedRequest = parseWithRegistry({\n key: requestSchemaKey,\n value: body,\n description: `${description ?? operationId} request`,\n skipOnMissingSchema: true,\n });\n if (!parsedRequest.success) {\n throw parsedRequest.error;\n }\n requestBody = parsedRequest.data;\n }\n\n const metaValidation = validation ?? meta?.validation;\n const requestMeta: RequestOptions[\"meta\"] = {\n ...(meta ?? {}),\n operationId,\n validation: metaValidation,\n };\n\n const res = await http.request({\n method,\n path,\n query,\n body: requestBody,\n querySerializer,\n signal,\n timeoutMs,\n meta: requestMeta,\n });\n\n if (!runtimeValidation.responses) {\n return res.data as T;\n }\n\n const parsedResponse = parseWithRegistry({ key: schemaKey, value: res.data, description });\n if (!parsedResponse.success) throw parsedResponse.error;\n return parsedResponse.data as T;\n}\n\nexport interface RequestVoidParams {\n operationId: string;\n method: HttpMethod;\n path: string;\n query?: Query;\n body?: unknown;\n querySerializer?: RequestOptions[\"querySerializer\"];\n signal?: RequestOptions[\"signal\"];\n timeoutMs?: RequestOptions[\"timeoutMs\"];\n requestSchemaKey?: SchemaKey;\n validation?: RuntimeValidationOption;\n meta?: RequestOptions[\"meta\"];\n}\n\nexport async function requestVoid(http: HttpClient, params: RequestVoidParams): Promise<void> {\n const { operationId, method, path, query, body, querySerializer, signal, timeoutMs, requestSchemaKey, validation, meta } = params;\n\n const runtimeValidation = mergeRuntimeValidation(http.getRuntimeValidationConfig(), validation);\n\n let requestBody = body;\n if (runtimeValidation.requests && requestSchemaKey && body !== undefined) {\n const parsedRequest = parseWithRegistry({\n key: requestSchemaKey,\n value: body,\n description: `${operationId} request`,\n skipOnMissingSchema: true,\n });\n if (!parsedRequest.success) {\n throw parsedRequest.error;\n }\n requestBody = parsedRequest.data;\n }\n\n const metaValidation = validation ?? meta?.validation;\n const requestMeta: RequestOptions[\"meta\"] = {\n ...(meta ?? {}),\n operationId,\n validation: metaValidation,\n };\n\n await http.request({\n method,\n path,\n query,\n body: requestBody,\n querySerializer,\n signal,\n timeoutMs,\n meta: requestMeta,\n });\n}\n","import {\n CurrenciesV1ListSchema,\n DESCRIPTIONS,\n OP_CONVERSION_ROUTES_V1,\n OP_LIST_V1,\n} from \"./currencies.v1.schemas\";\nimport type { HttpClient, RuntimeValidationOption } from \"../../../core/http/http.types\";\nimport { requestJson } from \"../../../core/http/operation.helper\";\nimport type { operations } from \"../../../generated/openapi-types\";\nimport { parseWithSchema } from \"../../../validation/zod.helpers\";\nimport { type ConversionRoutes, type CurrencyList, ConversionRoutesSchema } from \"../currencies.schemas\";\n\nexport type ListCurrenciesV1Query = operations[typeof OP_LIST_V1][\"parameters\"][\"query\"];\nexport type GetConversionRoutesV1Query = operations[typeof OP_CONVERSION_ROUTES_V1][\"parameters\"][\"query\"];\n\nconst CURRENCIES_V1_PATH = \"/v1/currencies\";\nconst CONVERSION_ROUTES_SEGMENT = \"conversion-routes\";\n\nexport interface CurrencyV1RequestOptions {\n signal?: AbortSignal;\n timeoutMs?: number;\n validation?: RuntimeValidationOption;\n}\n\nexport interface CurrenciesV1Api {\n list(query?: ListCurrenciesV1Query, options?: CurrencyV1RequestOptions): Promise<CurrencyList>;\n getConversionRoutes(currencyId: string, query?: GetConversionRoutesV1Query, options?: CurrencyV1RequestOptions): Promise<ConversionRoutes>;\n}\n\nfunction toQuery(\n input?: Record<string, unknown>,\n): Record<string, string | number | boolean | (string | number | boolean)[] | undefined> | undefined {\n return input as Record<string, string | number | boolean | (string | number | boolean)[] | undefined> | undefined;\n}\n\nexport function createCurrenciesV1Api(http: HttpClient): CurrenciesV1Api {\n return {\n async list(query, options) {\n const data = await requestJson<unknown>(http, {\n operationId: OP_LIST_V1,\n method: \"GET\",\n path: CURRENCIES_V1_PATH,\n query: toQuery(query ?? undefined),\n schemaKey: { operationId: OP_LIST_V1, kind: \"response\", status: 200 },\n description: DESCRIPTIONS.list,\n signal: options?.signal,\n timeoutMs: options?.timeoutMs,\n validation: options?.validation,\n });\n\n const parsed = parseWithSchema({\n schema: CurrenciesV1ListSchema,\n value: data,\n description: DESCRIPTIONS.list,\n });\n if (!parsed.success) throw parsed.error;\n const payload = parsed.data;\n const tokens = Array.isArray(payload) ? payload : [payload];\n return tokens as CurrencyList;\n },\n\n async getConversionRoutes(currencyId, query, options) {\n const path = `${CURRENCIES_V1_PATH}/${encodeURIComponent(currencyId)}/${CONVERSION_ROUTES_SEGMENT}`;\n const data = await requestJson<unknown>(http, {\n operationId: OP_CONVERSION_ROUTES_V1,\n method: \"GET\",\n path,\n query: toQuery(query ?? undefined),\n schemaKey: { operationId: OP_CONVERSION_ROUTES_V1, kind: \"response\", status: 200 },\n description: DESCRIPTIONS.conversionRoutes,\n signal: options?.signal,\n timeoutMs: options?.timeoutMs,\n validation: options?.validation,\n });\n\n const parsed = parseWithSchema({\n schema: ConversionRoutesSchema,\n value: data,\n description: DESCRIPTIONS.conversionRoutes,\n });\n if (!parsed.success) throw parsed.error;\n return parsed.data as ConversionRoutes;\n },\n };\n}\n","import { OP_CONVERSION_ROUTES, OP_LIST, CurrenciesListSchema, ConversionRoutesSchema } from \"./currencies.schemas\";\nimport type { CurrencyList, ConversionRoutes } from \"./currencies.schemas\";\nimport { createCurrenciesV1Api, type CurrenciesV1Api } from \"./v1\";\nimport type { HttpClient, RequestOptions, RuntimeValidationOption } from \"../../core/http/http.types\";\nimport { requestJson } from \"../../core/http/operation.helper\";\nimport type { operations } from \"../../generated/openapi-types\";\nimport { parseWithSchema } from \"../../validation/zod.helpers\";\n\nexport type ListCurrenciesQuery = operations[\"CurrenciesV2Controller_getNetworkTokens_v2\"][\"parameters\"][\"query\"];\nexport type GetConversionRoutesQuery = operations[\"CurrenciesV2Controller_getConversionRoutes_v2\"][\"parameters\"][\"query\"];\n\nconst CURRENCIES_PATH = \"/v2/currencies\";\nconst CONVERSION_ROUTES_SEGMENT = \"conversion-routes\";\nconst DESCRIPTION_LIST = \"Currencies list\";\nconst DESCRIPTION_CONVERSION_ROUTES = \"Conversion routes\";\n\nexport interface CurrencyRequestOptions {\n signal?: AbortSignal;\n timeoutMs?: number;\n validation?: RuntimeValidationOption;\n meta?: RequestOptions[\"meta\"];\n}\n\nexport interface CurrenciesApi {\n list(query?: ListCurrenciesQuery, options?: CurrencyRequestOptions): Promise<CurrencyList>;\n getConversionRoutes(currencyId: string, query?: GetConversionRoutesQuery, options?: CurrencyRequestOptions): Promise<ConversionRoutes>;\n legacy: CurrenciesV1Api;\n}\n\nexport function createCurrenciesApi(http: HttpClient): CurrenciesApi {\n const legacy = createCurrenciesV1Api(http);\n function toQuery(input?: Record<string, unknown>): Record<string, string | number | boolean | (string | number | boolean)[] | undefined> | undefined {\n return input as Record<string, string | number | boolean | (string | number | boolean)[] | undefined> | undefined;\n }\n\n return {\n legacy,\n async list(query, options) {\n const data = await requestJson<unknown>(http, {\n operationId: OP_LIST,\n method: \"GET\",\n path: CURRENCIES_PATH,\n query: toQuery(query ?? undefined),\n schemaKey: { operationId: OP_LIST, kind: \"response\", status: 200 },\n description: DESCRIPTION_LIST,\n signal: options?.signal,\n timeoutMs: options?.timeoutMs,\n validation: options?.validation,\n meta: options?.meta,\n });\n\n const parsed = parseWithSchema({\n schema: CurrenciesListSchema,\n value: data,\n description: DESCRIPTION_LIST,\n });\n if (!parsed.success) throw parsed.error;\n const list = parsed.data as CurrencyList;\n return list;\n },\n async getConversionRoutes(currencyId, query, options) {\n const path = `${CURRENCIES_PATH}/${encodeURIComponent(currencyId)}/${CONVERSION_ROUTES_SEGMENT}`;\n const data = await requestJson<unknown>(http, {\n operationId: OP_CONVERSION_ROUTES,\n method: \"GET\",\n path,\n query: toQuery(query ?? undefined),\n schemaKey: { operationId: OP_CONVERSION_ROUTES, kind: \"response\", status: 200 },\n description: DESCRIPTION_CONVERSION_ROUTES,\n signal: options?.signal,\n timeoutMs: options?.timeoutMs,\n validation: options?.validation,\n meta: options?.meta,\n });\n\n const parsed = parseWithSchema({\n schema: ConversionRoutesSchema,\n value: data,\n description: DESCRIPTION_CONVERSION_ROUTES,\n });\n if (!parsed.success) throw parsed.error;\n const routes = parsed.data as ConversionRoutes;\n return routes;\n },\n };\n}\n"]}
@@ -0,0 +1,2 @@
1
+ export { P as PayeeDestinationApi, a as PayeeDestinationOperationOptions, G as PayeeDestinationSigningDataQuery, c as createPayeeDestinationApi } from '../../index-DQIf9k5x.mjs';
2
+ import '../../openapi-types-CQ1z27_K.mjs';