@tatumio/wallet-sdk 0.2.1 → 0.3.1

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 (63) hide show
  1. package/README.md +18 -10
  2. package/dist/chains.d.ts +6 -2
  3. package/dist/chains.d.ts.map +1 -1
  4. package/dist/chains.js.map +1 -1
  5. package/dist/constants/index.d.ts +0 -1
  6. package/dist/constants/index.d.ts.map +1 -1
  7. package/dist/constants/index.js +0 -1
  8. package/dist/constants/index.js.map +1 -1
  9. package/dist/constants/urls.d.ts +2 -8
  10. package/dist/constants/urls.d.ts.map +1 -1
  11. package/dist/constants/urls.js +2 -8
  12. package/dist/constants/urls.js.map +1 -1
  13. package/dist/eject/curves.d.ts +2 -2
  14. package/dist/eject/curves.js +2 -2
  15. package/dist/eject/matrix.d.ts +1 -1
  16. package/dist/eject/matrix.d.ts.map +1 -1
  17. package/dist/eject/matrix.js +1 -1
  18. package/dist/eject/matrix.js.map +1 -1
  19. package/dist/errors.d.ts +28 -1
  20. package/dist/errors.d.ts.map +1 -1
  21. package/dist/errors.js +34 -2
  22. package/dist/errors.js.map +1 -1
  23. package/dist/http.d.ts +2 -2
  24. package/dist/http.d.ts.map +1 -1
  25. package/dist/index.d.ts +2 -1
  26. package/dist/index.d.ts.map +1 -1
  27. package/dist/index.js +1 -1
  28. package/dist/index.js.map +1 -1
  29. package/dist/portal/client-api.d.ts +2 -2
  30. package/dist/portal/client-api.js +2 -2
  31. package/dist/portal/custodian.d.ts +3 -3
  32. package/dist/portal/custodian.d.ts.map +1 -1
  33. package/dist/portal/custodian.js +3 -3
  34. package/dist/portal/custodian.js.map +1 -1
  35. package/dist/portal/enclave-api.d.ts +5 -7
  36. package/dist/portal/enclave-api.d.ts.map +1 -1
  37. package/dist/portal/enclave-api.js +15 -44
  38. package/dist/portal/enclave-api.js.map +1 -1
  39. package/dist/portal/types/client.d.ts +2 -2
  40. package/dist/portal/types/enclave.d.ts +4 -4
  41. package/dist/portal/types/enclave.d.ts.map +1 -1
  42. package/dist/portal/types/shared.d.ts +1 -1
  43. package/dist/portal/wallets-client.d.ts +9 -10
  44. package/dist/portal/wallets-client.d.ts.map +1 -1
  45. package/dist/portal/wallets-client.js +10 -10
  46. package/dist/portal/wallets-client.js.map +1 -1
  47. package/dist/sdk.d.ts +31 -15
  48. package/dist/sdk.d.ts.map +1 -1
  49. package/dist/sdk.js +38 -20
  50. package/dist/sdk.js.map +1 -1
  51. package/dist/tatum/api-client.js +1 -1
  52. package/dist/tatum/api-client.js.map +1 -1
  53. package/dist/types.d.ts +2 -1
  54. package/dist/types.d.ts.map +1 -1
  55. package/package.json +1 -1
  56. package/dist/constants/paths.d.ts +0 -5
  57. package/dist/constants/paths.d.ts.map +0 -1
  58. package/dist/constants/paths.js +0 -5
  59. package/dist/constants/paths.js.map +0 -1
  60. package/dist/tatum/provider.d.ts +0 -26
  61. package/dist/tatum/provider.d.ts.map +0 -1
  62. package/dist/tatum/provider.js +0 -46
  63. package/dist/tatum/provider.js.map +0 -1
package/README.md CHANGED
@@ -13,13 +13,21 @@ npm install @tatumio/wallet-sdk
13
13
  ```ts
14
14
  import { TatumWalletsSdk } from "@tatumio/wallet-sdk";
15
15
 
16
+ // Backend: pass your Tatum API key to use custodian operations.
16
17
  const wallets = new TatumWalletsSdk({
17
18
  apiKey: process.env.TATUM_API_KEY!,
18
19
  baseUrl: "https://api.tatum.io",
19
20
  });
21
+
22
+ // Client-side (browser/mobile): no apiKey — authenticate with a client token only.
23
+ const clientSide = new TatumWalletsSdk();
24
+ const client = clientSide.initClient({ token: clientSessionToken });
20
25
  ```
21
26
 
22
- For lower-level or not-yet-modeled Tatum calls, use `wallets.api.request(...)` directly.
27
+ The `apiKey` is **required only for custodian / `sdk.api` operations** (backend). Client-scoped
28
+ operations (`initClient`) authenticate with a client token and need no Tatum key, so the
29
+ SDK is safe to run client-side. For lower-level or not-yet-modeled Tatum calls, use
30
+ `wallets.api.request(...)` directly.
23
31
 
24
32
  See [docs/USAGE.md](docs/USAGE.md) for the full guide and complete API reference.
25
33
 
@@ -67,6 +75,7 @@ await client.sendAssets({
67
75
  to: "0x...",
68
76
  token: "NATIVE",
69
77
  amount: "0.01",
78
+ rpcUrl: "https://ethereum-mainnet.gateway.tatum.io/<your-key>", // required — see RPC URL below
70
79
  },
71
80
  });
72
81
  ```
@@ -85,6 +94,7 @@ const signed = await client.sign({
85
94
  params: ["0x48656c6c6f"],
86
95
  chainId: WalletChain.ETHEREUM_MAINNET,
87
96
  to: "0x...",
97
+ rpcUrl: "https://ethereum-mainnet.gateway.tatum.io/<your-key>", // required
88
98
  },
89
99
  });
90
100
 
@@ -153,7 +163,13 @@ const recovered = await client.recoverWallet({
153
163
  }); // typed as RecoverWalletResponse
154
164
  ```
155
165
 
156
- Custodian-scoped calls are authenticated with your Tatum `x-api-key` — that single key is all you ever pass. Enclave operations that need an RPC URL get one automatically — the SDK builds `https://<network>.gateway.tatum.io/<your-api-key>` from the chain's `tatumNetwork` (see `WALLET_CHAINS`) — unless you pass an explicit `rpcUrl` in the body.
166
+ ### RPC URL
167
+
168
+ Enclave operations that touch a chain (`sign`, `sendAssets`) **require an explicit `rpcUrl`** in
169
+ the body
170
+
171
+ Authentication note: custodian-scoped calls use your Tatum `x-api-key`. Client-scoped calls
172
+ (`initClient`) use the client token and need **no** Tatum key.
157
173
 
158
174
  ## Development
159
175
 
@@ -163,11 +179,3 @@ npm test
163
179
  npm run typecheck
164
180
  npm run build
165
181
  ```
166
-
167
- ## Publishing
168
-
169
- The package is configured for public npm publishing under the scoped package name:
170
-
171
- ```sh
172
- npm publish --access public
173
- ```
package/dist/chains.d.ts CHANGED
@@ -26,9 +26,13 @@ export interface WalletChainConfig {
26
26
  chainId: WalletChain;
27
27
  /** Signing curve this chain uses — picks which `shares[curve]` to pass to sign/sendAssets. */
28
28
  curve: Curve;
29
- /** Whether an explicit `rpcUrl` is required for enclave operations on this chain. */
29
+ /**
30
+ * Whether the API hard-requires an explicit `rpcUrl` server-side (no managed
31
+ * default node). Informational: the SDK always expects callers to pass
32
+ * `rpcUrl` on `sign`/`sendAssets` regardless.
33
+ */
30
34
  requiresRpcUrl: boolean;
31
- /** Tatum RPC gateway network slug (`<slug>.gateway.tatum.io`). */
35
+ /** Tatum network slug — used for Tatum custodian proxy paths and `<slug>.gateway.tatum.io` RPC URLs. */
32
36
  tatumNetwork: string;
33
37
  }
34
38
  /** Per-chain configuration, keyed by {@link WalletChain}. */
@@ -1 +1 @@
1
- {"version":3,"file":"chains.d.ts","sourceRoot":"","sources":["../src/chains.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAEtD;;;;;;GAMG;AACH,oBAAY,WAAW;IACrB,aAAa,eAAe;IAC5B,gBAAgB,aAAa;IAC7B,gBAAgB,oBAAoB;IACpC,cAAc,4CAA4C;IAC1D,eAAe,mBAAmB;IAClC,YAAY,iBAAiB;IAC7B,eAAe,mDAAmD;IAClE,gBAAgB,iBAAiB;IACjC,iBAAiB,iBAAiB;IAClC,YAAY,gBAAgB;IAC5B,gBAAgB,cAAc;IAC9B,eAAe,eAAe;IAC9B,YAAY,iBAAiB;CAC9B;AAED,MAAM,WAAW,iBAAiB;IAChC,4EAA4E;IAC5E,OAAO,EAAE,WAAW,CAAC;IACrB,8FAA8F;IAC9F,KAAK,EAAE,KAAK,CAAC;IACb,qFAAqF;IACrF,cAAc,EAAE,OAAO,CAAC;IACxB,kEAAkE;IAClE,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,6DAA6D;AAC7D,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,WAAW,EAAE,iBAAiB,CA+EhE,CAAC;AAEF,uDAAuD;AACvD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,WAAW,GAAG,iBAAiB,CAE1E"}
1
+ {"version":3,"file":"chains.d.ts","sourceRoot":"","sources":["../src/chains.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAEtD;;;;;;GAMG;AACH,oBAAY,WAAW;IACrB,aAAa,eAAe;IAC5B,gBAAgB,aAAa;IAC7B,gBAAgB,oBAAoB;IACpC,cAAc,4CAA4C;IAC1D,eAAe,mBAAmB;IAClC,YAAY,iBAAiB;IAC7B,eAAe,mDAAmD;IAClE,gBAAgB,iBAAiB;IACjC,iBAAiB,iBAAiB;IAClC,YAAY,gBAAgB;IAC5B,gBAAgB,cAAc;IAC9B,eAAe,eAAe;IAC9B,YAAY,iBAAiB;CAC9B;AAED,MAAM,WAAW,iBAAiB;IAChC,4EAA4E;IAC5E,OAAO,EAAE,WAAW,CAAC;IACrB,8FAA8F;IAC9F,KAAK,EAAE,KAAK,CAAC;IACb;;;;OAIG;IACH,cAAc,EAAE,OAAO,CAAC;IACxB,wGAAwG;IACxG,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,6DAA6D;AAC7D,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,WAAW,EAAE,iBAAiB,CA+EhE,CAAC;AAEF,uDAAuD;AACvD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,WAAW,GAAG,iBAAiB,CAE1E"}
@@ -1 +1 @@
1
- {"version":3,"file":"chains.js","sourceRoot":"","sources":["../src/chains.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chains.js","sourceRoot":"","sources":["../src/chains.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,2 @@
1
- export * from './paths.js';
2
1
  export * from './urls.js';
3
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/constants/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/constants/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC"}
@@ -1,3 +1,2 @@
1
- export * from './paths.js';
2
1
  export * from './urls.js';
3
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/constants/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/constants/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC"}
@@ -1,13 +1,7 @@
1
1
  /** Tatum API base URL (default; overridable via `config.baseUrl`). */
2
2
  export declare const TATUM_API_BASE_URL = "https://api.tatum.io";
3
- /** Portal REST API base (custodian- and client-scoped endpoints). */
3
+ /** REST API base (custodian- and client-scoped endpoints). */
4
4
  export declare const PORTAL_API_BASE_URL = "https://api.portalhq.io/api/v3";
5
- /** Portal Enclave MPC API base (generate/backup/recover/sign/sendAssets). */
5
+ /** Enclave MPC API base (generate/backup/recover/sign/sendAssets). */
6
6
  export declare const PORTAL_ENCLAVE_BASE_URL = "https://mpc-client.portalhq.io";
7
- /**
8
- * Tatum RPC gateway domain. Per-chain RPC URLs are built as
9
- * `https://<network>.${TATUM_RPC_GATEWAY_DOMAIN}/<apiKey>` (the `<network>`
10
- * slug comes from each chain's {@link WalletChainConfig.tatumNetwork}).
11
- */
12
- export declare const TATUM_RPC_GATEWAY_DOMAIN = "gateway.tatum.io";
13
7
  //# sourceMappingURL=urls.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"urls.d.ts","sourceRoot":"","sources":["../../src/constants/urls.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,eAAO,MAAM,kBAAkB,yBAAyB,CAAC;AAEzD,qEAAqE;AACrE,eAAO,MAAM,mBAAmB,mCAAmC,CAAC;AAEpE,6EAA6E;AAC7E,eAAO,MAAM,uBAAuB,mCAAmC,CAAC;AAExE;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,qBAAqB,CAAC"}
1
+ {"version":3,"file":"urls.d.ts","sourceRoot":"","sources":["../../src/constants/urls.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,eAAO,MAAM,kBAAkB,yBAAyB,CAAC;AAEzD,8DAA8D;AAC9D,eAAO,MAAM,mBAAmB,mCAAmC,CAAC;AAEpE,sEAAsE;AACtE,eAAO,MAAM,uBAAuB,mCAAmC,CAAC"}
@@ -1,13 +1,7 @@
1
1
  /** Tatum API base URL (default; overridable via `config.baseUrl`). */
2
2
  export const TATUM_API_BASE_URL = 'https://api.tatum.io';
3
- /** Portal REST API base (custodian- and client-scoped endpoints). */
3
+ /** REST API base (custodian- and client-scoped endpoints). */
4
4
  export const PORTAL_API_BASE_URL = 'https://api.portalhq.io/api/v3';
5
- /** Portal Enclave MPC API base (generate/backup/recover/sign/sendAssets). */
5
+ /** Enclave MPC API base (generate/backup/recover/sign/sendAssets). */
6
6
  export const PORTAL_ENCLAVE_BASE_URL = 'https://mpc-client.portalhq.io';
7
- /**
8
- * Tatum RPC gateway domain. Per-chain RPC URLs are built as
9
- * `https://<network>.${TATUM_RPC_GATEWAY_DOMAIN}/<apiKey>` (the `<network>`
10
- * slug comes from each chain's {@link WalletChainConfig.tatumNetwork}).
11
- */
12
- export const TATUM_RPC_GATEWAY_DOMAIN = 'gateway.tatum.io';
13
7
  //# sourceMappingURL=urls.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"urls.js","sourceRoot":"","sources":["../../src/constants/urls.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,MAAM,CAAC,MAAM,kBAAkB,GAAG,sBAAsB,CAAC;AAEzD,qEAAqE;AACrE,MAAM,CAAC,MAAM,mBAAmB,GAAG,gCAAgC,CAAC;AAEpE,6EAA6E;AAC7E,MAAM,CAAC,MAAM,uBAAuB,GAAG,gCAAgC,CAAC;AAExE;;;;GAIG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,kBAAkB,CAAC"}
1
+ {"version":3,"file":"urls.js","sourceRoot":"","sources":["../../src/constants/urls.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,MAAM,CAAC,MAAM,kBAAkB,GAAG,sBAAsB,CAAC;AAEzD,8DAA8D;AAC9D,MAAM,CAAC,MAAM,mBAAmB,GAAG,gCAAgC,CAAC;AAEpE,sEAAsE;AACtE,MAAM,CAAC,MAAM,uBAAuB,GAAG,gCAAgC,CAAC"}
@@ -15,8 +15,8 @@ export declare function bigIntToBytesBE(value: bigint): Uint8Array;
15
15
  export declare function toPaddedHexBE(value: bigint): string;
16
16
  /**
17
17
  * Reverse the minimal big-endian bytes of `value` into a 32-byte buffer,
18
- * right-aligned (zero-padded at the front). This matches @portal-hq/eject-js's
19
- * ed25519 output exactly — including its treatment of scalars with leading
18
+ * right-aligned (zero-padded at the front). This matches the reference eject-js
19
+ * implementation's ed25519 output exactly — including its treatment of scalars with leading
20
20
  * zero bytes — so reconstructed keys are byte-identical to the reference.
21
21
  * Note: this is NOT a plain left-aligned little-endian encoding.
22
22
  */
@@ -67,8 +67,8 @@ export function toPaddedHexBE(value) {
67
67
  }
68
68
  /**
69
69
  * Reverse the minimal big-endian bytes of `value` into a 32-byte buffer,
70
- * right-aligned (zero-padded at the front). This matches @portal-hq/eject-js's
71
- * ed25519 output exactly — including its treatment of scalars with leading
70
+ * right-aligned (zero-padded at the front). This matches the reference eject-js
71
+ * implementation's ed25519 output exactly — including its treatment of scalars with leading
72
72
  * zero bytes — so reconstructed keys are byte-identical to the reference.
73
73
  * Note: this is NOT a plain left-aligned little-endian encoding.
74
74
  */
@@ -1,4 +1,4 @@
1
- /** Dense matrix over the integers mod `fieldOrder`. Ported from @portal-hq/eject-js. */
1
+ /** Dense matrix over the integers mod `fieldOrder`. Ported from the reference eject-js implementation. */
2
2
  export declare class Matrix {
3
3
  readonly fieldOrder: bigint;
4
4
  data: bigint[][];
@@ -1 +1 @@
1
- {"version":3,"file":"matrix.d.ts","sourceRoot":"","sources":["../../src/eject/matrix.ts"],"names":[],"mappings":"AAEA,wFAAwF;AACxF,qBAAa,MAAM;IACjB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;gBAED,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;IAOhD,IAAI,IAAI,MAAM;IAOd,SAAS,IAAI,MAAM;IAcnB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAmB/B,OAAO,IAAI,MAAM;IAyCjB,OAAO,IAAI,MAAM;IASjB,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE;IAK/B,+DAA+D;IAC/D,aAAa,IAAI,MAAM;CASxB"}
1
+ {"version":3,"file":"matrix.d.ts","sourceRoot":"","sources":["../../src/eject/matrix.ts"],"names":[],"mappings":"AAEA,0GAA0G;AAC1G,qBAAa,MAAM;IACjB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;gBAED,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;IAOhD,IAAI,IAAI,MAAM;IAOd,SAAS,IAAI,MAAM;IAcnB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAmB/B,OAAO,IAAI,MAAM;IAyCjB,OAAO,IAAI,MAAM;IASjB,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE;IAK/B,+DAA+D;IAC/D,aAAa,IAAI,MAAM;CASxB"}
@@ -1,5 +1,5 @@
1
1
  import { mod, modInverse } from './curves.js';
2
- /** Dense matrix over the integers mod `fieldOrder`. Ported from @portal-hq/eject-js. */
2
+ /** Dense matrix over the integers mod `fieldOrder`. Ported from the reference eject-js implementation. */
3
3
  export class Matrix {
4
4
  fieldOrder;
5
5
  data;
@@ -1 +1 @@
1
- {"version":3,"file":"matrix.js","sourceRoot":"","sources":["../../src/eject/matrix.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"matrix.js","sourceRoot":"","sources":["../../src/eject/matrix.ts"],"names":[],"mappings":"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"}
package/dist/errors.d.ts CHANGED
@@ -1,4 +1,31 @@
1
- import type { ApiErrorOptions } from "./types.js";
1
+ import type { ApiErrorOptions } from './types.js';
2
+ /**
3
+ * Error body shapes returned across the wallet API layers. The envelope is not
4
+ * uniform, so the field carrying the human-readable detail differs by layer:
5
+ * - Enclave MPC API: `{ id, message? }` (`id` is a short code, e.g. `RPC_OP_FAILED`).
6
+ * - Client / custodian REST: `{ error }`.
7
+ * - `simulate-transaction`: `{ requestError: { message } }`.
8
+ * - Some responses (e.g. enclave 401) are plain text.
9
+ *
10
+ * Runtime bodies may not match any of these (network proxies, non-JSON), so
11
+ * {@link WalletsApiError.body} stays `unknown` — use this union to narrow.
12
+ */
13
+ export type PortalErrorBody = {
14
+ id: string;
15
+ message?: string;
16
+ } | {
17
+ error: string;
18
+ } | {
19
+ requestError?: {
20
+ message?: string;
21
+ };
22
+ } | string;
23
+ /**
24
+ * Pull the most human-readable message out of an error body, regardless of
25
+ * which layer's envelope it uses. Returns `undefined` when nothing usable is
26
+ * present (so the caller can fall back to a generic message).
27
+ */
28
+ export declare function extractErrorDetail(body: unknown): string | undefined;
2
29
  export declare class WalletsApiError extends Error {
3
30
  readonly status: number;
4
31
  readonly statusText: string | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAElD,qBAAa,eAAgB,SAAQ,KAAK;IACxC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IACxC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,SAAS,CAAC;gBAE1B,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe;CAQtD"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAElD;;;;;;;;;;GAUG;AACH,MAAM,MAAM,eAAe,GACvB;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAChC;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,GACjB;IAAE,YAAY,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GACvC,MAAM,CAAC;AAEX;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAgCpE;AAED,qBAAa,eAAgB,SAAQ,KAAK;IACxC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IACxC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,SAAS,CAAC;gBAE1B,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe;CAStD"}
package/dist/errors.js CHANGED
@@ -1,11 +1,43 @@
1
+ /**
2
+ * Pull the most human-readable message out of an error body, regardless of
3
+ * which layer's envelope it uses. Returns `undefined` when nothing usable is
4
+ * present (so the caller can fall back to a generic message).
5
+ */
6
+ export function extractErrorDetail(body) {
7
+ if (typeof body === 'string') {
8
+ const trimmed = body.trim();
9
+ return trimmed.length > 0 ? trimmed : undefined;
10
+ }
11
+ if (body !== null && typeof body === 'object') {
12
+ const record = body;
13
+ if (typeof record.message === 'string' && record.message) {
14
+ return record.message; // enclave MPC ({ id, message })
15
+ }
16
+ if (typeof record.error === 'string' && record.error) {
17
+ return record.error; // client / custodian REST ({ error })
18
+ }
19
+ const requestError = record.requestError;
20
+ if (requestError !== null &&
21
+ typeof requestError === 'object' &&
22
+ typeof requestError.message === 'string' &&
23
+ requestError.message) {
24
+ return requestError.message; // simulate-transaction
25
+ }
26
+ if (typeof record.id === 'string' && record.id) {
27
+ return record.id; // enclave error with a code but no message
28
+ }
29
+ }
30
+ return undefined;
31
+ }
1
32
  export class WalletsApiError extends Error {
2
33
  status;
3
34
  statusText;
4
35
  body;
5
36
  headers;
6
37
  constructor(message, options) {
7
- super(message);
8
- this.name = "WalletsApiError";
38
+ const detail = extractErrorDetail(options.body);
39
+ super(detail ? `${message}: ${detail}` : message);
40
+ this.name = 'WalletsApiError';
9
41
  this.status = options.status;
10
42
  this.statusText = options.statusText;
11
43
  this.body = options.body;
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,eAAgB,SAAQ,KAAK;IAC/B,MAAM,CAAS;IACf,UAAU,CAAqB;IAC/B,IAAI,CAAU;IACd,OAAO,CAAsB;IAEtC,YAAY,OAAe,EAAE,OAAwB;QACnD,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;QAC9B,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QACrC,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IACjC,CAAC;CACF"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAmBA;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAa;IAC9C,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAC5B,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;IAClD,CAAC;IAED,IAAI,IAAI,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC9C,MAAM,MAAM,GAAG,IAA+B,CAAC;QAE/C,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACzD,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,gCAAgC;QACzD,CAAC;QACD,IAAI,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACrD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,sCAAsC;QAC7D,CAAC;QAED,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;QACzC,IACE,YAAY,KAAK,IAAI;YACrB,OAAO,YAAY,KAAK,QAAQ;YAChC,OAAQ,YAAwC,CAAC,OAAO,KAAK,QAAQ;YACpE,YAAoC,CAAC,OAAO,EAC7C,CAAC;YACD,OAAQ,YAAoC,CAAC,OAAO,CAAC,CAAC,uBAAuB;QAC/E,CAAC;QAED,IAAI,OAAO,MAAM,CAAC,EAAE,KAAK,QAAQ,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;YAC/C,OAAO,MAAM,CAAC,EAAE,CAAC,CAAC,2CAA2C;QAC/D,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,OAAO,eAAgB,SAAQ,KAAK;IAC/B,MAAM,CAAS;IACf,UAAU,CAAqB;IAC/B,IAAI,CAAU;IACd,OAAO,CAAsB;IAEtC,YAAY,OAAe,EAAE,OAAwB;QACnD,MAAM,MAAM,GAAG,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAChD,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,KAAK,MAAM,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QAClD,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;QAC9B,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QACrC,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IACjC,CAAC;CACF"}
package/dist/http.d.ts CHANGED
@@ -2,13 +2,13 @@ import type { ApiRequestOptions } from './types.js';
2
2
  /**
3
3
  * Mutates the outgoing header map to add an authentication header. Each API
4
4
  * surface supplies its own strategy (e.g. `x-api-key` for Tatum, bearer token
5
- * for Portal) so the transport stays auth-agnostic.
5
+ * for the MPC API) so the transport stays auth-agnostic.
6
6
  */
7
7
  export type ApplyAuthHeaders = (headers: Record<string, string>) => void;
8
8
  export interface HttpClientConfig {
9
9
  baseUrl: string;
10
10
  applyAuth: ApplyAuthHeaders;
11
- /** Prefix for thrown error messages, e.g. `'Wallets API'` or `'Portal API'`. */
11
+ /** Prefix for thrown error messages, e.g. `'Wallets API'` or `'MPC API'`. */
12
12
  errorLabel: string;
13
13
  headers?: Record<string, string> | undefined;
14
14
  fetch?: typeof fetch | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAc,MAAM,YAAY,CAAC;AAEhE;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,IAAI,CAAC;AAEzE,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,gBAAgB,CAAC;IAC5B,gFAAgF;IAChF,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC;IAC7C,KAAK,CAAC,EAAE,OAAO,KAAK,GAAG,SAAS,CAAC;CAClC;AAED;;;;GAIG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAyB;IACxD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAe;IACzC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAmB;IAC7C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;gBAExB,MAAM,EAAE,gBAAgB;IAY9B,OAAO,CAAC,SAAS,GAAG,OAAO,EAAE,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,SAAS,CAAC;IAiClF,OAAO,CAAC,YAAY;CAerB"}
1
+ {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAc,MAAM,YAAY,CAAC;AAEhE;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,IAAI,CAAC;AAEzE,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,gBAAgB,CAAC;IAC5B,6EAA6E;IAC7E,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC;IAC7C,KAAK,CAAC,EAAE,OAAO,KAAK,GAAG,SAAS,CAAC;CAClC;AAED;;;;GAIG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAyB;IACxD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAe;IACzC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAmB;IAC7C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;gBAExB,MAAM,EAAE,gBAAgB;IAY9B,OAAO,CAAC,SAAS,GAAG,OAAO,EAAE,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,SAAS,CAAC;IAiClF,OAAO,CAAC,YAAY;CAerB"}
package/dist/index.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  export { WALLET_CHAINS, WalletChain, getWalletChainConfig } from './chains.js';
2
- export { WalletsApiError } from './errors.js';
2
+ export { WalletsApiError, extractErrorDetail } from './errors.js';
3
+ export type { PortalErrorBody } from './errors.js';
3
4
  export { CustodianApi, custodianOperations } from './portal/custodian.js';
4
5
  export { clientOperations } from './portal/client-api.js';
5
6
  export { enclaveOperations } from './portal/enclave-api.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAC/E,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,YAAY,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACrD,YAAY,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AACzF,YAAY,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,YAAY,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAChE,YAAY,EAAE,gBAAgB,EAAE,2BAA2B,EAAE,MAAM,4BAA4B,CAAC;AAChG,YAAY,EAAE,2BAA2B,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAChF,YAAY,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAChD,YAAY,EACV,eAAe,EACf,iBAAiB,EACjB,UAAU,EACV,WAAW,EACX,UAAU,EACV,gBAAgB,EACjB,MAAM,YAAY,CAAC;AACpB,YAAY,EACV,6BAA6B,EAC7B,eAAe,EACf,gBAAgB,EAChB,oBAAoB,EACpB,wBAAwB,EACxB,oBAAoB,EACpB,wBAAwB,EACxB,aAAa,EACb,gCAAgC,EAChC,mCAAmC,EACnC,gBAAgB,EAChB,oBAAoB,EACpB,uBAAuB,EACvB,2BAA2B,EAC3B,KAAK,EACL,WAAW,EACX,uBAAuB,EACvB,qBAAqB,EACrB,iCAAiC,EACjC,eAAe,EACf,mBAAmB,EACnB,uBAAuB,EACvB,0BAA0B,EAC1B,gCAAgC,EAChC,wBAAwB,EACxB,2BAA2B,EAC3B,6BAA6B,EAC7B,6BAA6B,EAC7B,6BAA6B,EAC7B,sBAAsB,EACtB,gBAAgB,EAChB,mBAAmB,EACnB,oBAAoB,EACpB,WAAW,EACX,eAAe,EACf,iBAAiB,EACjB,qBAAqB,EACrB,cAAc,EACd,kBAAkB,EAClB,QAAQ,EACR,YAAY,EACZ,gBAAgB,EAChB,oBAAoB,EACpB,uBAAuB,EACvB,wBAAwB,EACxB,qBAAqB,EACrB,0BAA0B,EAC1B,2BAA2B,EAC3B,MAAM,EACN,WAAW,EACZ,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAC/E,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAClE,YAAY,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,YAAY,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACrD,YAAY,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AACzF,YAAY,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,YAAY,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAChE,YAAY,EAAE,gBAAgB,EAAE,2BAA2B,EAAE,MAAM,4BAA4B,CAAC;AAChG,YAAY,EAAE,2BAA2B,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAChF,YAAY,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAChD,YAAY,EACV,eAAe,EACf,iBAAiB,EACjB,UAAU,EACV,WAAW,EACX,UAAU,EACV,gBAAgB,EACjB,MAAM,YAAY,CAAC;AACpB,YAAY,EACV,6BAA6B,EAC7B,eAAe,EACf,gBAAgB,EAChB,oBAAoB,EACpB,wBAAwB,EACxB,oBAAoB,EACpB,wBAAwB,EACxB,aAAa,EACb,gCAAgC,EAChC,mCAAmC,EACnC,gBAAgB,EAChB,oBAAoB,EACpB,uBAAuB,EACvB,2BAA2B,EAC3B,KAAK,EACL,WAAW,EACX,uBAAuB,EACvB,qBAAqB,EACrB,iCAAiC,EACjC,eAAe,EACf,mBAAmB,EACnB,uBAAuB,EACvB,0BAA0B,EAC1B,gCAAgC,EAChC,wBAAwB,EACxB,2BAA2B,EAC3B,6BAA6B,EAC7B,6BAA6B,EAC7B,6BAA6B,EAC7B,sBAAsB,EACtB,gBAAgB,EAChB,mBAAmB,EACnB,oBAAoB,EACpB,WAAW,EACX,eAAe,EACf,iBAAiB,EACjB,qBAAqB,EACrB,cAAc,EACd,kBAAkB,EAClB,QAAQ,EACR,YAAY,EACZ,gBAAgB,EAChB,oBAAoB,EACpB,uBAAuB,EACvB,wBAAwB,EACxB,qBAAqB,EACrB,0BAA0B,EAC1B,2BAA2B,EAC3B,MAAM,EACN,WAAW,EACZ,MAAM,yBAAyB,CAAC"}
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  export { WALLET_CHAINS, WalletChain, getWalletChainConfig } from './chains.js';
2
- export { WalletsApiError } from './errors.js';
2
+ export { WalletsApiError, extractErrorDetail } from './errors.js';
3
3
  export { CustodianApi, custodianOperations } from './portal/custodian.js';
4
4
  export { clientOperations } from './portal/client-api.js';
5
5
  export { enclaveOperations } from './portal/enclave-api.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAC/E,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAC/E,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAElE,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -41,8 +41,8 @@ export declare const clientOperations: {
41
41
  };
42
42
  export type ClientOperation = keyof typeof clientOperations;
43
43
  /**
44
- * Client-scoped Portal REST layer (`/clients/me/...`). Authenticates with the
45
- * client's own Portal API key / Client Session Token. Internal — exposed to
44
+ * Client-scoped REST layer (`/clients/me/...`). Authenticates with the
45
+ * client's own API key / Client Session Token. Internal — exposed to
46
46
  * consumers through {@link WalletsClient}.
47
47
  */
48
48
  export declare class ClientApi {
@@ -16,8 +16,8 @@ export const clientOperations = {
16
16
  completeEject: { method: 'PATCH', path: '/clients/me/wallets/{walletId}/complete-eject' }
17
17
  };
18
18
  /**
19
- * Client-scoped Portal REST layer (`/clients/me/...`). Authenticates with the
20
- * client's own Portal API key / Client Session Token. Internal — exposed to
19
+ * Client-scoped REST layer (`/clients/me/...`). Authenticates with the
20
+ * client's own API key / Client Session Token. Internal — exposed to
21
21
  * consumers through {@link WalletsClient}.
22
22
  */
23
23
  export class ClientApi {
@@ -2,7 +2,7 @@ import type { WalletChain } from '../chains.js';
2
2
  import type { WalletsApiClient } from '../tatum/api-client.js';
3
3
  import type { RequestOptions } from '../types.js';
4
4
  import type { BuildTransactionBody, BuildTransactionResponse, ClientDetails, CreateClientBody, CreateClientResponse, CreateClientSessionBody, CreateClientSessionResponse, EjectableBackupShares, EnableEjectBody, EnableEjectResponse, GasSponsorshipChain, GetGasSponsorshipChainsQuery, ListClientsQuery, ListClientsResponse, PortalRequestOptions, UpdateGasSponsorshipBody } from './types/index.js';
5
- /** Custodian operations, proxied by Tatum under `/v4/wallets` (Tatum injects the Portal token). */
5
+ /** Custodian operations, proxied by Tatum under `/v4/wallets` (Tatum injects the upstream token). */
6
6
  export declare const custodianOperations: {
7
7
  readonly createClient: {
8
8
  readonly method: "POST";
@@ -83,14 +83,14 @@ export declare class CustodianApi {
83
83
  }>): Promise<TResponse>;
84
84
  /**
85
85
  * Enable key eject for a client's wallet until `ejectableUntil`, allowing the
86
- * client to later reconstruct its full private key off Portal.
86
+ * client to later reconstruct its full private key off-platform.
87
87
  */
88
88
  enableEject<TResponse = EnableEjectResponse>(options: PortalRequestOptions<EnableEjectBody, {
89
89
  clientId: string;
90
90
  }>): Promise<TResponse>;
91
91
  /**
92
92
  * Fetch a wallet's ejectable backup shares — the client's encrypted backup
93
- * share (if stored with Portal) plus the custodian backup share.
93
+ * share (if stored server-side) plus the custodian backup share.
94
94
  */
95
95
  getEjectableBackupShares<TResponse = EjectableBackupShares>(options: PortalRequestOptions<never, {
96
96
  clientId: string;
@@ -1 +1 @@
1
- {"version":3,"file":"custodian.d.ts","sourceRoot":"","sources":["../../src/portal/custodian.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"custodian.d.ts","sourceRoot":"","sources":["../../src/portal/custodian.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { getWalletChainConfig } from '../chains.js';
2
2
  import { buildRequestOptions } from '../operation.js';
3
- /** Custodian operations, proxied by Tatum under `/v4/wallets` (Tatum injects the Portal token). */
3
+ /** Custodian operations, proxied by Tatum under `/v4/wallets` (Tatum injects the upstream token). */
4
4
  export const custodianOperations = {
5
5
  createClient: { method: 'POST', path: '/v4/wallets/clients' },
6
6
  listClients: { method: 'GET', path: '/v4/wallets/clients' },
@@ -73,14 +73,14 @@ export class CustodianApi {
73
73
  }
74
74
  /**
75
75
  * Enable key eject for a client's wallet until `ejectableUntil`, allowing the
76
- * client to later reconstruct its full private key off Portal.
76
+ * client to later reconstruct its full private key off-platform.
77
77
  */
78
78
  enableEject(options) {
79
79
  return this.request('enableEject', options);
80
80
  }
81
81
  /**
82
82
  * Fetch a wallet's ejectable backup shares — the client's encrypted backup
83
- * share (if stored with Portal) plus the custodian backup share.
83
+ * share (if stored server-side) plus the custodian backup share.
84
84
  */
85
85
  getEjectableBackupShares(options) {
86
86
  return this.request('getEjectableBackupShares', options);
@@ -1 +1 @@
1
- {"version":3,"file":"custodian.js","sourceRoot":"","sources":["../../src/portal/custodian.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"custodian.js","sourceRoot":"","sources":["../../src/portal/custodian.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,4 @@
1
1
  import type { Curve } from './types/index.js';
2
- import type { PortalTatumProvider } from '../tatum/provider.js';
3
2
  import type { RequestOptions, WalletsSDKConfig } from '../types.js';
4
3
  import type { BackupWalletBody, BackupWalletResponse, GenerateWalletResponse, PortalRequestOptions, RawSignBody, RawSignResponse, RecoverWalletBody, RecoverWalletResponse, SendAssetsBody, SendAssetsResponse, SignBody, SignResponse } from './types/index.js';
5
4
  export declare const enclaveOperations: {
@@ -30,15 +29,15 @@ export declare const enclaveOperations: {
30
29
  };
31
30
  export type EnclaveOperation = keyof typeof enclaveOperations;
32
31
  /**
33
- * Enclave MPC layer (`mpc-client.portalhq.io/v1/...`). Operates on key shares;
34
- * auto-injects a Tatum-resolved `rpcUrl` (from the body's `chain`/`chainId`)
35
- * when one is not already present. Internal exposed through {@link WalletsClient}.
32
+ * Enclave MPC layer (`/v1/...`). Operates on key shares;
33
+ * authenticates with the client's own token (Bearer) and never touches
34
+ * the Tatum API key. Chain operations (`sign`/`sendAssets`) require the caller
35
+ * to supply an `rpcUrl`. Internal — exposed through {@link WalletsClient}.
36
36
  */
37
37
  export declare class EnclaveApi {
38
38
  private readonly token;
39
- private readonly provider;
40
39
  private readonly sdkConfig;
41
- constructor(token: string, provider: PortalTatumProvider, sdkConfig: WalletsSDKConfig);
40
+ constructor(token: string, sdkConfig: WalletsSDKConfig);
42
41
  request<TResponse = unknown>(operationName: EnclaveOperation, options?: RequestOptions): Promise<TResponse>;
43
42
  generateWallet<TResponse = GenerateWalletResponse>(options?: PortalRequestOptions): Promise<TResponse>;
44
43
  backupWallet<TResponse = BackupWalletResponse>(options: PortalRequestOptions<BackupWalletBody>): Promise<TResponse>;
@@ -48,6 +47,5 @@ export declare class EnclaveApi {
48
47
  curve: Curve;
49
48
  }>): Promise<TResponse>;
50
49
  sendAssets<TResponse = SendAssetsResponse>(options: PortalRequestOptions<SendAssetsBody>): Promise<TResponse>;
51
- private withResolvedRpcUrl;
52
50
  }
53
51
  //# sourceMappingURL=enclave-api.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"enclave-api.d.ts","sourceRoot":"","sources":["../../src/portal/enclave-api.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACpE,OAAO,KAAK,EACV,gBAAgB,EAChB,oBAAoB,EACpB,sBAAsB,EACtB,oBAAoB,EACpB,WAAW,EACX,eAAe,EACf,iBAAiB,EACjB,qBAAqB,EACrB,cAAc,EACd,kBAAkB,EAClB,QAAQ,EACR,YAAY,EACb,MAAM,kBAAkB,CAAC;AAE1B,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;CAOpB,CAAC;AAEX,MAAM,MAAM,gBAAgB,GAAG,MAAM,OAAO,iBAAiB,CAAC;AAE9D;;;;GAIG;AACH,qBAAa,UAAU;IAEnB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,SAAS;gBAFT,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,mBAAmB,EAC7B,SAAS,EAAE,gBAAgB;IAGxC,OAAO,CAAC,SAAS,GAAG,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,SAAS,CAAC;IAW/G,cAAc,CAAC,SAAS,GAAG,sBAAsB,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,SAAS,CAAC;IAM5G,YAAY,CAAC,SAAS,GAAG,oBAAoB,EAC3C,OAAO,EAAE,oBAAoB,CAAC,gBAAgB,CAAC,GAC9C,OAAO,CAAC,SAAS,CAAC;IAIrB,aAAa,CAAC,SAAS,GAAG,qBAAqB,EAC7C,OAAO,EAAE,oBAAoB,CAAC,iBAAiB,CAAC,GAC/C,OAAO,CAAC,SAAS,CAAC;IAIf,IAAI,CAAC,SAAS,GAAG,YAAY,EAAE,OAAO,EAAE,oBAAoB,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;IAM3F,OAAO,CAAC,SAAS,GAAG,eAAe,EACvC,OAAO,EAAE,oBAAoB,CAAC,WAAW,EAAE;QAAE,KAAK,EAAE,KAAK,CAAA;KAAE,CAAC,GAC3D,OAAO,CAAC,SAAS,CAAC;IAMf,UAAU,CAAC,SAAS,GAAG,kBAAkB,EAC7C,OAAO,EAAE,oBAAoB,CAAC,cAAc,CAAC,GAC5C,OAAO,CAAC,SAAS,CAAC;YAMP,kBAAkB;CAiBjC"}
1
+ {"version":3,"file":"enclave-api.d.ts","sourceRoot":"","sources":["../../src/portal/enclave-api.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACpE,OAAO,KAAK,EACV,gBAAgB,EAChB,oBAAoB,EACpB,sBAAsB,EACtB,oBAAoB,EACpB,WAAW,EACX,eAAe,EACf,iBAAiB,EACjB,qBAAqB,EACrB,cAAc,EACd,kBAAkB,EAClB,QAAQ,EACR,YAAY,EACb,MAAM,kBAAkB,CAAC;AAE1B,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;CAOpB,CAAC;AAEX,MAAM,MAAM,gBAAgB,GAAG,MAAM,OAAO,iBAAiB,CAAC;AAE9D;;;;;GAKG;AACH,qBAAa,UAAU;IAEnB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,SAAS;gBADT,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,gBAAgB;IAG9C,OAAO,CAAC,SAAS,GAAG,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,SAAS,CAAC;IAO/G,cAAc,CAAC,SAAS,GAAG,sBAAsB,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,SAAS,CAAC;IAItG,YAAY,CAAC,SAAS,GAAG,oBAAoB,EAC3C,OAAO,EAAE,oBAAoB,CAAC,gBAAgB,CAAC,GAC9C,OAAO,CAAC,SAAS,CAAC;IAIrB,aAAa,CAAC,SAAS,GAAG,qBAAqB,EAC7C,OAAO,EAAE,oBAAoB,CAAC,iBAAiB,CAAC,GAC/C,OAAO,CAAC,SAAS,CAAC;IAIrB,IAAI,CAAC,SAAS,GAAG,YAAY,EAAE,OAAO,EAAE,oBAAoB,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;IAI3F,OAAO,CAAC,SAAS,GAAG,eAAe,EACjC,OAAO,EAAE,oBAAoB,CAAC,WAAW,EAAE;QAAE,KAAK,EAAE,KAAK,CAAA;KAAE,CAAC,GAC3D,OAAO,CAAC,SAAS,CAAC;IAIrB,UAAU,CAAC,SAAS,GAAG,kBAAkB,EACvC,OAAO,EAAE,oBAAoB,CAAC,cAAc,CAAC,GAC5C,OAAO,CAAC,SAAS,CAAC;CAGtB"}