@eco-foundation/api-schemas 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -14,35 +14,94 @@ While the package is 0.x, pin the patch range or the exact version:
14
14
  ```json
15
15
  {
16
16
  "dependencies": {
17
- "@eco-foundation/api-schemas": "~0.1.0"
17
+ "@eco-foundation/api-schemas": "~0.2.0"
18
18
  }
19
19
  }
20
20
  ```
21
21
 
22
22
  **Never write `^0`.** npm resolves `^0.x` as `>=0.0.0 <1.0.0`, so it silently accepts every
23
- future breaking `0.y` — it is not a pin at all. Use `~0.1.0` or the exact `0.1.0`.
23
+ future breaking `0.y` — it is not a pin at all. Use `~0.2.0` or the exact `0.2.0`.
24
24
 
25
25
  A matching version string is not evidence of a matching artifact: also compare
26
26
  `V1_SCHEMA_DIGEST` (see [Invariants](#invariants-enforced-in-ci)). Two builds both called
27
- `0.1.0` — a registry copy and a `file:` tarball, say — can carry different schemas.
27
+ `0.2.0` — a registry copy and a `file:` tarball, say — can carry different schemas.
28
+
29
+ ## Migrating 0.1.0 -> 0.2.0
30
+
31
+ `0.2.0` is a BREAKING release under 0.x semver (breaking bumps the minor while the major
32
+ is 0). Three tightenings reject request bodies `0.1.0` accepted, and one packaging change
33
+ alters how `zod` is resolved. Nothing here is a silent behavior change — every item below
34
+ turns something that used to succeed into a named 400 or a failed install.
35
+
36
+ **Install-time — `zod` is now a `peerDependency` (`^4.3.0`), not a dependency.** A consumer
37
+ that relied on the transitive copy must now declare `zod` itself. This is the fix for the
38
+ two-zod-instance failure: the old exact `4.4.3` pin materialised a second nested zod for any
39
+ consumer not on that exact version, producing `TS2345` on `_zod.version.minor` and `tsc`
40
+ OOMing at 4 GB with no message.
41
+
42
+ **Newly rejected — an amount at or above 2^256.** Every field typed `UintString` (quote
43
+ `source.amount`, `destination.amount`, fee/step amounts, `permit.value`, `permit.nonce`,
44
+ erc-3009 `value`/`validAfter`/`validBefore`, `gasLimit`, ...) is now bounded at `2^256-1`.
45
+ `0.1.0` validated a 200-digit value cleanly and let it revert or truncate on-chain. The
46
+ published OpenAPI carries the coarse `maxLength: 78`; the exact ceiling is enforced on every
47
+ parse.
48
+
49
+ **Newly rejected — an unknown key on `POST /v1/deposit-addresses`.** All three
50
+ `kind` variants of `DepositAddressCreateRequestSchema` are `strictObject`. In `0.1.0` a
51
+ misspelled field, or a field belonging to a different `kind` (`destinationChainId` on the
52
+ same-chain `gateway` variant), was silently STRIPPED and answered with a `201` — a
53
+ funds-receiving address created with semantics the caller did not request. It is now a 400
54
+ naming the offending key. Read paths and the lookup query are unchanged.
55
+
56
+ **Newly rejected — a redirected `permit.spender` on
57
+ `POST /v1/deposit-addresses/submit/erc-2612`.** `permit.spender` must equal
58
+ `target.depositAddress`, the same binding all three erc-3009 variants already enforced on
59
+ `authorization.to`. A redirected spender was previously accepted here and then silently
60
+ RE-ADDRESSED by the permit-transfer path.
61
+
62
+ **Changed error rendering (not a rejection).** Both binding refinements now carry the
63
+ `deposit-address-mismatch` catalog code as issue data, so a consumer rendering through the
64
+ new `problemFromZodError` gets that code and its 400 instead of the generic
65
+ `invalid-request` — on the erc-3009 lane that is a code CHANGE for an already-rejected body.
66
+ The code's catalog `title` generalizes to "The signed counterparty does not equal
67
+ target.depositAddress" (it named erc-3009 only); code, status and legacy refs are untouched.
68
+
69
+ **No validation change, but worth knowing.** `AnyAddress` now tries `TvmAddress` before
70
+ `SvmAddress`, so the `anyOf` branch ORDER in the published document differs. Every branch is
71
+ a plain string, so accepted values and parsed output are identical — and `AnyAddress` must
72
+ never be used to infer a VM either way (see its docblock). `V1_SCHEMA_DIGEST` changes, as it
73
+ must: it is the artifact identity, not the version string.
74
+
75
+ **New, additive:** the zod-free `./v1/signature` subpath; `MAX_UINT256`; and
76
+ `problemFromZodError` / `v1ErrorCodeFromIssues` / `v1IssueParams` / `V1_ISSUE_CODE_PARAM`.
28
77
 
29
78
  ## Consumers
30
79
 
31
80
  | Consumer | Import | Zod requirement |
32
81
  | ------------------------------------ | ---------------------------------------------------------------------------------------- | -------------------------------------- |
33
- | eco-router (serves /v1) | `import { v1 } from '@eco-foundation/api-schemas'` | none extra — zod ships as a dependency |
34
- | deposit-addresses (native endpoints) | same, plus `assertMatchesV1Schema` from `./testing` in CI | none extra |
82
+ | eco-router (serves /v1) | `import { v1 } from '@eco-foundation/api-schemas'` | own zod satisfying the peer range |
83
+ | deposit-addresses (native endpoints) | same, plus `assertMatchesV1Schema` from `./testing` in CI | own zod satisfying the peer range |
35
84
  | solver-v2 (Zod 3 — must not upgrade) | `import type { V1QuoteResponse } from '@eco-foundation/api-schemas/v1/types'` + fixtures | ZERO zod at runtime and in the `.d.ts` |
85
+ | any consumer needing `signatureHash` | `import { signatureHash } from '@eco-foundation/api-schemas/v1/signature'` | NONE — that subpath is zod-free |
36
86
 
37
87
  Zod-major compatibility is the reason there are two interfaces, not one:
38
88
 
39
89
  - **Zod-4 consumers** (eco-router `^4.4.3`, deposit-addresses `^4.3.5`) import the schemas
40
- directly. `zod` is a regular dependency of this package pinned **exact `4.4.3`** — nobody has
41
- to install Zod 4 themselves, and the exact pin is what keeps the generated OpenAPI byte-stable
42
- across zod patches. pnpm dedupes it against a consumer's own Zod 4.
90
+ directly. Since `0.2.0`, `zod` is a **`peerDependency` with a range (`^4.3.0`)**, not a
91
+ hard-pinned dependency: the consumer's own single copy satisfies it. The previous exact
92
+ `dependencies` pin at `4.4.3` materialised a SECOND nested zod for every consumer not on that
93
+ exact version, and two zod instances in one type graph is the documented failure — `TS2345` on
94
+ `_zod.version.minor` when a package schema is passed to a local `z.ZodType<T>`, and `tsc`
95
+ OOMing at 4 GB with no message. A consumer therefore installs zod itself (any `4.3.x`+ `4.x`);
96
+ the package keeps an exact `4.4.3` **devDependency** so its own build and its generated
97
+ OpenAPI stay byte-stable.
43
98
  - **solver-v2 is on Zod 3 and must never be forced to Zod 4.** It consumes the zod-free
44
99
  `./v1/types` subpath (plain `type` aliases, no zod in the emitted `.d.ts`) plus the golden
45
- fixtures. Root-level type re-exports from the bare package name exist as a convenience for
100
+ fixtures. Since `0.2.0` it can ALSO import `./v1/signature` — runtime code, zod-free — which
101
+ is the subpath that could replace its vendored local `canonicalizeSignature`. Both zod-free
102
+ subpaths carry a physical `v1/<name>.{js,d.ts}` forwarder, because TypeScript under
103
+ `moduleResolution: node10` (the default for `module: commonjs`, which is what solver-v2
104
+ compiles with) IGNORES the `exports` map and the specifier otherwise fails with TS2307. Root-level type re-exports from the bare package name exist as a convenience for
46
105
  Zod-4 consumers, but their `.d.ts` reaches zod through the `v1` namespace — solver-v2 must use
47
106
  the subpath.
48
107
  - `viem` is a **dev-only** dependency (the reference implementation the signature and
@@ -55,6 +114,7 @@ Zod-major compatibility is the reason there are two interfaces, not one:
55
114
  | ------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ |
56
115
  | `.` | `v1` namespace, `V1_SCHEMA_DIGEST`, `assertMatchesV1Schema`, `loadV1Fixtures`, `generateOpenApiDocument`, root type re-exports |
57
116
  | `./v1/types` | zod-free `type` aliases (the solver-v2 interface) |
117
+ | `./v1/signature` | `signatureHash` + `canonicalizeSignature` alone — **zod-free**, loads no schema module |
58
118
  | `./testing` | `assertMatchesV1Schema`, `loadV1Fixtures`, `V1Fixture` |
59
119
  | `./openapi/v1.json` | the generated OpenAPI 3.1 document |
60
120
  | `./fixtures/signature-hash/vectors.json` | cross-repo `signatureHash` vectors |
@@ -101,6 +161,11 @@ which needs no server.
101
161
  - `fixtures/signature-hash/vectors.json` is the cross-repo `signatureHash` contract: eco-router
102
162
  and deposit-addresses import the util and assert these vectors; solver-v2 keeps a local copy
103
163
  of the util ONLY with this file copied into its fixtures and asserted byte-for-byte.
164
+ Those copies are held in sync by `scripts/check-vendored-signature-vectors.sh` at the repo
165
+ root (`pnpm run canon:check`): it diffs every vendored copy against this file where the
166
+ sibling checkout is present, and pins this file's sha256 so a vector revision fails in the
167
+ same PR that makes it — a consuming repo cannot notice on its own, because each one asserts
168
+ only its own copy.
104
169
  - `fixtures/quote-signature/vector-*.json` are the F3 quote-signature golden vectors (EIP-712
105
170
  `EcoQuoteV1` domain); eco-router's signing path must reproduce every `digest`/`signature`.
106
171
  - `V1_SCHEMA_DIGEST` is sha256 over `errors/catalog.lock.json` then `openapi/v1.json`,
@@ -154,7 +219,7 @@ workflow verifies and publishes. It fails with `::error::tag version <x> != pack
154
219
  if the two drift, so a stale tag can never publish a mismatched artifact.
155
220
 
156
221
  Semver: breaking schema change = major, additive = minor; consumers pin minor. **While the
157
- package is 0.x, "pin minor" means `~0.1.0` or the exact `0.1.0` — never `^0`** (see
222
+ package is 0.x, "pin minor" means `~0.2.0` or the exact `0.2.0` — never `^0`** (see
158
223
  [Install](#install)). Consumers additionally compare `V1_SCHEMA_DIGEST`: a matching version
159
224
  string is not evidence of a matching artifact. `/v1/routes` is draft-tagged and exempt until its
160
225
  stability flips.
@@ -1,5 +1,5 @@
1
1
  {
2
- "digest": "72dceef6f939c524c595a94c80bdf2b545478022511aa58009573c8cd69dc432",
2
+ "digest": "f909fa0c8091743dea695cf673a24bea9cd671ee1a8d0b6b54060c09bf5cbbb3",
3
3
  "inputs": [
4
4
  "errors/catalog.lock.json",
5
5
  "openapi/v1.json"
@@ -1,12 +1,12 @@
1
1
  import { z } from 'zod';
2
2
  export declare const ChainContractsSchema: z.ZodObject<{
3
- portal: z.ZodUnion<readonly [z.ZodString, z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodString]>]>;
4
- executor: z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodString]>]>>;
3
+ portal: z.ZodUnion<readonly [z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodString]>, z.ZodString]>;
4
+ executor: z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodString]>, z.ZodString]>>;
5
5
  }, z.core.$loose>;
6
6
  export declare const ChainSchema: z.ZodObject<{
7
7
  chainId: z.ZodNumber;
8
8
  name: z.ZodString;
9
- quoteSigner: z.ZodUnion<readonly [z.ZodString, z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodString]>]>;
9
+ quoteSigner: z.ZodUnion<readonly [z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodString]>, z.ZodString]>;
10
10
  type: z.ZodEnum<{
11
11
  evm: "evm";
12
12
  svm: "svm";
@@ -21,8 +21,8 @@ export declare const ChainSchema: z.ZodObject<{
21
21
  paused: "paused";
22
22
  }>;
23
23
  contracts: z.ZodObject<{
24
- portal: z.ZodUnion<readonly [z.ZodString, z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodString]>]>;
25
- executor: z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodString]>]>>;
24
+ portal: z.ZodUnion<readonly [z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodString]>, z.ZodString]>;
25
+ executor: z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodString]>, z.ZodString]>>;
26
26
  }, z.core.$loose>;
27
27
  }, z.core.$loose>;
28
28
  export type Chain = z.input<typeof ChainSchema>;
@@ -30,7 +30,7 @@ export declare const ChainsResponseSchema: z.ZodObject<{
30
30
  chains: z.ZodArray<z.ZodObject<{
31
31
  chainId: z.ZodNumber;
32
32
  name: z.ZodString;
33
- quoteSigner: z.ZodUnion<readonly [z.ZodString, z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodString]>]>;
33
+ quoteSigner: z.ZodUnion<readonly [z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodString]>, z.ZodString]>;
34
34
  type: z.ZodEnum<{
35
35
  evm: "evm";
36
36
  svm: "svm";
@@ -45,8 +45,8 @@ export declare const ChainsResponseSchema: z.ZodObject<{
45
45
  paused: "paused";
46
46
  }>;
47
47
  contracts: z.ZodObject<{
48
- portal: z.ZodUnion<readonly [z.ZodString, z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodString]>]>;
49
- executor: z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodString]>]>>;
48
+ portal: z.ZodUnion<readonly [z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodString]>, z.ZodString]>;
49
+ executor: z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodString]>, z.ZodString]>>;
50
50
  }, z.core.$loose>;
51
51
  }, z.core.$loose>>;
52
52
  }, z.core.$loose>;
@@ -11,18 +11,18 @@ export declare const DepositAddressCreateRequestSchema: z.ZodDiscriminatedUnion<
11
11
  depositor: z.ZodString;
12
12
  kind: z.ZodLiteral<"solana">;
13
13
  destinationAddress: z.ZodString;
14
- }, z.core.$strip>, z.ZodObject<{
14
+ }, z.core.$strict>, z.ZodObject<{
15
15
  chainId: z.ZodNumber;
16
16
  depositor: z.ZodString;
17
17
  kind: z.ZodLiteral<"gateway">;
18
18
  destinationAddress: z.ZodString;
19
- }, z.core.$strip>, z.ZodObject<{
19
+ }, z.core.$strict>, z.ZodObject<{
20
20
  chainId: z.ZodNumber;
21
21
  depositor: z.ZodString;
22
22
  kind: z.ZodLiteral<"gateway-erc20">;
23
23
  destinationAddress: z.ZodString;
24
24
  destinationChainId: z.ZodNumber;
25
- }, z.core.$strip>], "kind">;
25
+ }, z.core.$strict>], "kind">;
26
26
  export type DepositAddressCreateRequest = z.infer<typeof DepositAddressCreateRequestSchema>;
27
27
  export declare const DepositAddressSchema: z.ZodObject<{
28
28
  id: z.ZodString;
@@ -34,7 +34,7 @@ export declare const DepositAddressSchema: z.ZodObject<{
34
34
  solana: "solana";
35
35
  "gateway-erc20": "gateway-erc20";
36
36
  }>;
37
- destinationAddress: z.ZodUnion<readonly [z.ZodString, z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodString]>]>;
37
+ destinationAddress: z.ZodUnion<readonly [z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodString]>, z.ZodString]>;
38
38
  destinationChainId: z.ZodOptional<z.ZodNumber>;
39
39
  expiresAt: z.ZodNullable<z.ZodNumber>;
40
40
  createdAt: z.ZodNumber;
@@ -50,7 +50,7 @@ export declare const DepositAddressCreateResponseSchema: z.ZodObject<{
50
50
  solana: "solana";
51
51
  "gateway-erc20": "gateway-erc20";
52
52
  }>;
53
- destinationAddress: z.ZodUnion<readonly [z.ZodString, z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodString]>]>;
53
+ destinationAddress: z.ZodUnion<readonly [z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodString]>, z.ZodString]>;
54
54
  destinationChainId: z.ZodOptional<z.ZodNumber>;
55
55
  expiresAt: z.ZodNullable<z.ZodNumber>;
56
56
  createdAt: z.ZodNumber;
@@ -60,7 +60,7 @@ export declare const DEPOSIT_ADDRESS_LOOKUP_QUERY_SHAPE: {
60
60
  limit: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
61
61
  depositAddress: z.ZodOptional<z.ZodString>;
62
62
  depositor: z.ZodOptional<z.ZodString>;
63
- destinationAddress: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodString]>]>>;
63
+ destinationAddress: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodString]>, z.ZodString]>>;
64
64
  chainId: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
65
65
  kind: z.ZodOptional<z.ZodEnum<{
66
66
  gateway: "gateway";
@@ -73,7 +73,7 @@ export declare const DepositAddressLookupQuerySchema: z.ZodObject<{
73
73
  limit: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
74
74
  depositAddress: z.ZodOptional<z.ZodString>;
75
75
  depositor: z.ZodOptional<z.ZodString>;
76
- destinationAddress: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodString]>]>>;
76
+ destinationAddress: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodString]>, z.ZodString]>>;
77
77
  chainId: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
78
78
  kind: z.ZodOptional<z.ZodEnum<{
79
79
  gateway: "gateway";
@@ -92,7 +92,7 @@ export declare const DepositAddressLookupResponseSchema: z.ZodObject<{
92
92
  solana: "solana";
93
93
  "gateway-erc20": "gateway-erc20";
94
94
  }>;
95
- destinationAddress: z.ZodUnion<readonly [z.ZodString, z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodString]>]>;
95
+ destinationAddress: z.ZodUnion<readonly [z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodString]>, z.ZodString]>;
96
96
  destinationChainId: z.ZodOptional<z.ZodNumber>;
97
97
  expiresAt: z.ZodNullable<z.ZodNumber>;
98
98
  createdAt: z.ZodNumber;
@@ -7,19 +7,19 @@ const status_1 = require("./status");
7
7
  exports.DEPOSIT_ADDRESS_KINDS = ['solana', 'gateway', 'gateway-erc20'];
8
8
  exports.DepositAddressKind = zod_1.z.enum(exports.DEPOSIT_ADDRESS_KINDS);
9
9
  exports.DepositAddressCreateRequestSchema = zod_1.z.discriminatedUnion('kind', [
10
- zod_1.z.object({
10
+ zod_1.z.strictObject({
11
11
  chainId: primitives_1.ChainId,
12
12
  depositor: primitives_1.EvmAddress,
13
13
  kind: zod_1.z.literal('solana'),
14
14
  destinationAddress: primitives_1.SvmAddress,
15
15
  }),
16
- zod_1.z.object({
16
+ zod_1.z.strictObject({
17
17
  chainId: primitives_1.ChainId,
18
18
  depositor: primitives_1.EvmAddress,
19
19
  kind: zod_1.z.literal('gateway'),
20
20
  destinationAddress: primitives_1.EvmAddress,
21
21
  }),
22
- zod_1.z.object({
22
+ zod_1.z.strictObject({
23
23
  chainId: primitives_1.ChainId,
24
24
  depositor: primitives_1.EvmAddress,
25
25
  kind: zod_1.z.literal('gateway-erc20'),
@@ -1 +1 @@
1
- {"version":3,"file":"deposit-addresses.js","sourceRoot":"","sources":["../../../src/v1/endpoints/deposit-addresses.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AAExB,8CAOuB;AACvB,qCAAiE;AAepD,QAAA,qBAAqB,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE,eAAe,CAAU,CAAC;AACxE,QAAA,kBAAkB,GAAG,OAAC,CAAC,IAAI,CAAC,6BAAqB,CAAC,CAAC;AAGnD,QAAA,iCAAiC,GAAG,OAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IAC5E,OAAC,CAAC,MAAM,CAAC;QACP,OAAO,EAAE,oBAAO;QAChB,SAAS,EAAE,uBAAU;QACrB,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;QACzB,kBAAkB,EAAE,uBAAU;KAC/B,CAAC;IACF,OAAC,CAAC,MAAM,CAAC;QACP,OAAO,EAAE,oBAAO;QAChB,SAAS,EAAE,uBAAU;QACrB,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,SAAS,CAAC;QAC1B,kBAAkB,EAAE,uBAAU;KAC/B,CAAC;IACF,OAAC,CAAC,MAAM,CAAC;QACP,OAAO,EAAE,oBAAO;QAChB,SAAS,EAAE,uBAAU;QACrB,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,eAAe,CAAC;QAChC,kBAAkB,EAAE,uBAAU;QAC9B,kBAAkB,EAAE,oBAAO;KAC5B,CAAC;CACH,CAAC,CAAC;AASU,QAAA,oBAAoB,GAAG,OAAC,CAAC,WAAW,CAAC;IAChD,EAAE,EAAE,6BAAgB;IACpB,cAAc,EAAE,uBAAU;IAC1B,OAAO,EAAE,oBAAO;IAChB,SAAS,EAAE,uBAAU;IACrB,IAAI,EAAE,0BAAkB;IACxB,kBAAkB,EAAE,uBAAU;IAC9B,kBAAkB,EAAE,oBAAO,CAAC,QAAQ,EAAE;IACtC,SAAS,EAAE,wBAAW,CAAC,QAAQ,EAAE;IACjC,SAAS,EAAE,wBAAW;CACvB,CAAC,CAAC;AAIU,QAAA,kCAAkC,GAAG,4BAAoB,CAAC;AAUvE,MAAM,8BAA8B,GAAG;IACrC,gBAAgB;IAChB,WAAW;IACX,oBAAoB;CACZ,CAAC;AAoCE,QAAA,kCAAkC,GAAG;IAChD,cAAc,EAAE,uBAAU,CAAC,QAAQ,EAAE;IACrC,SAAS,EAAE,uBAAU,CAAC,QAAQ,EAAE;IAChC,kBAAkB,EAAE,uBAAU,CAAC,QAAQ,EAAE;IAGzC,OAAO,EAAE,OAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,QAAQ,EAAE;IACnF,IAAI,EAAE,0BAAkB,CAAC,QAAQ,EAAE;IACnC,GAAG,qBAAY;CAChB,CAAC;AAEW,QAAA,+BAA+B,GAAG,OAAC;KAC7C,MAAM,CAAC,0CAAkC,CAAC;KAC1C,WAAW,CAAC,IAAA,gCAAuB,EAAC,8BAA8B,CAAC,CAAC,CAAC;AAE3D,QAAA,kCAAkC,GAAG,OAAC,CAAC,WAAW,CAAC;IAC9D,OAAO,EAAE,OAAC,CAAC,KAAK,CAAC,4BAAoB,CAAC;CACvC,CAAC,CAAC"}
1
+ {"version":3,"file":"deposit-addresses.js","sourceRoot":"","sources":["../../../src/v1/endpoints/deposit-addresses.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AAExB,8CAOuB;AACvB,qCAAiE;AAepD,QAAA,qBAAqB,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE,eAAe,CAAU,CAAC;AACxE,QAAA,kBAAkB,GAAG,OAAC,CAAC,IAAI,CAAC,6BAAqB,CAAC,CAAC;AAkBnD,QAAA,iCAAiC,GAAG,OAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IAC5E,OAAC,CAAC,YAAY,CAAC;QACb,OAAO,EAAE,oBAAO;QAChB,SAAS,EAAE,uBAAU;QACrB,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;QACzB,kBAAkB,EAAE,uBAAU;KAC/B,CAAC;IACF,OAAC,CAAC,YAAY,CAAC;QACb,OAAO,EAAE,oBAAO;QAChB,SAAS,EAAE,uBAAU;QACrB,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,SAAS,CAAC;QAC1B,kBAAkB,EAAE,uBAAU;KAC/B,CAAC;IACF,OAAC,CAAC,YAAY,CAAC;QACb,OAAO,EAAE,oBAAO;QAChB,SAAS,EAAE,uBAAU;QACrB,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,eAAe,CAAC;QAChC,kBAAkB,EAAE,uBAAU;QAC9B,kBAAkB,EAAE,oBAAO;KAC5B,CAAC;CACH,CAAC,CAAC;AASU,QAAA,oBAAoB,GAAG,OAAC,CAAC,WAAW,CAAC;IAChD,EAAE,EAAE,6BAAgB;IACpB,cAAc,EAAE,uBAAU;IAC1B,OAAO,EAAE,oBAAO;IAChB,SAAS,EAAE,uBAAU;IACrB,IAAI,EAAE,0BAAkB;IACxB,kBAAkB,EAAE,uBAAU;IAC9B,kBAAkB,EAAE,oBAAO,CAAC,QAAQ,EAAE;IACtC,SAAS,EAAE,wBAAW,CAAC,QAAQ,EAAE;IACjC,SAAS,EAAE,wBAAW;CACvB,CAAC,CAAC;AAIU,QAAA,kCAAkC,GAAG,4BAAoB,CAAC;AAUvE,MAAM,8BAA8B,GAAG;IACrC,gBAAgB;IAChB,WAAW;IACX,oBAAoB;CACZ,CAAC;AAoCE,QAAA,kCAAkC,GAAG;IAChD,cAAc,EAAE,uBAAU,CAAC,QAAQ,EAAE;IACrC,SAAS,EAAE,uBAAU,CAAC,QAAQ,EAAE;IAChC,kBAAkB,EAAE,uBAAU,CAAC,QAAQ,EAAE;IAGzC,OAAO,EAAE,OAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,QAAQ,EAAE;IACnF,IAAI,EAAE,0BAAkB,CAAC,QAAQ,EAAE;IACnC,GAAG,qBAAY;CAChB,CAAC;AAEW,QAAA,+BAA+B,GAAG,OAAC;KAC7C,MAAM,CAAC,0CAAkC,CAAC;KAC1C,WAAW,CAAC,IAAA,gCAAuB,EAAC,8BAA8B,CAAC,CAAC,CAAC;AAE3D,QAAA,kCAAkC,GAAG,OAAC,CAAC,WAAW,CAAC;IAC9D,OAAO,EAAE,OAAC,CAAC,KAAK,CAAC,4BAAoB,CAAC;CACvC,CAAC,CAAC"}