@coinbase/cdp-core 0.0.20 → 0.0.22

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 (62) hide show
  1. package/README.md +75 -1
  2. package/dist/esm/index.js +29 -27
  3. package/dist/esm/index15.js +8 -8
  4. package/dist/esm/index16.js +2 -2
  5. package/dist/esm/index2.js +154 -87
  6. package/dist/esm/index20.js +1 -1
  7. package/dist/esm/index25.js +8 -12
  8. package/dist/esm/index26.js +17 -11
  9. package/dist/esm/index27.js +45 -8
  10. package/dist/esm/index28.js +13 -17
  11. package/dist/esm/index29.js +50 -40
  12. package/dist/esm/index30.js +6 -13
  13. package/dist/esm/index31.js +20 -54
  14. package/dist/esm/index32.js +11 -6
  15. package/dist/esm/index33.js +3 -21
  16. package/dist/esm/index34.js +3 -3
  17. package/dist/esm/index35.js +34 -3
  18. package/dist/esm/index36.js +10 -32
  19. package/dist/esm/index37.js +4 -12
  20. package/dist/esm/index38.js +28 -4
  21. package/dist/esm/index39.js +6 -28
  22. package/dist/esm/index40.js +24 -6
  23. package/dist/esm/index41.js +16 -24
  24. package/dist/esm/index42.js +54 -16
  25. package/dist/esm/index43.js +22 -53
  26. package/dist/esm/index44.js +11 -23
  27. package/dist/esm/index45.js +26 -10
  28. package/dist/esm/index46.js +41 -26
  29. package/dist/esm/index47.js +54 -41
  30. package/dist/esm/index48.js +126 -54
  31. package/dist/esm/index49.js +11 -126
  32. package/dist/esm/index50.js +101 -9
  33. package/dist/esm/index51.js +6 -104
  34. package/dist/esm/index52.js +3 -7
  35. package/dist/esm/index53.js +15 -3
  36. package/dist/esm/index54.js +42 -14
  37. package/dist/esm/index55.js +74 -38
  38. package/dist/esm/index56.js +2 -79
  39. package/dist/esm/index57.js +2 -2
  40. package/dist/esm/index58.js +13 -2
  41. package/dist/esm/index59.js +2 -2
  42. package/dist/esm/index60.js +1 -1
  43. package/dist/esm/index61.js +1 -1
  44. package/dist/esm/index62.js +2 -2
  45. package/dist/esm/index63.js +2 -2
  46. package/dist/esm/index64.js +1 -1
  47. package/dist/esm/index65.js +1 -1
  48. package/dist/esm/index66.js +3 -3
  49. package/dist/esm/index7.js +7 -6
  50. package/dist/esm/index73.js +2 -104
  51. package/dist/esm/index74.js +17 -75
  52. package/dist/esm/index75.js +20 -80
  53. package/dist/esm/index76.js +80 -2
  54. package/dist/esm/index77.js +100 -17
  55. package/dist/esm/index78.js +31 -18
  56. package/dist/esm/index79.js +6 -32
  57. package/dist/esm/index8.js +10 -8
  58. package/dist/esm/index80.js +78 -6
  59. package/dist/esm/index89.js +4 -4
  60. package/dist/esm/index90.js +5 -5
  61. package/dist/types/index.d.ts +33 -0
  62. package/package.json +3 -3
@@ -1,9 +1,81 @@
1
- import { bytesToHex as i } from "./index29.js";
2
- import { sha256 as m } from "./index52.js";
3
- function f(t) {
4
- const { commitment: e, version: s = 1 } = t, n = t.to ?? (typeof e == "string" ? "hex" : "bytes"), o = m(e);
5
- return o.set([s], 0), n === "bytes" ? o : i(o);
1
+ import { Hash as g, createView as l, aexists as b, toBytes as a, abytes as d, aoutput as x, clean as w } from "./index76.js";
2
+ function y(o, t, s, n) {
3
+ if (typeof o.setBigUint64 == "function")
4
+ return o.setBigUint64(t, s, n);
5
+ const i = BigInt(32), h = BigInt(4294967295), e = Number(s >> i & h), r = Number(s & h), c = n ? 4 : 0, u = n ? 0 : 4;
6
+ o.setUint32(t + c, e, n), o.setUint32(t + u, r, n);
6
7
  }
8
+ function U(o, t, s) {
9
+ return o & t ^ ~o & s;
10
+ }
11
+ function _(o, t, s) {
12
+ return o & t ^ o & s ^ t & s;
13
+ }
14
+ class m extends g {
15
+ constructor(t, s, n, i) {
16
+ super(), this.finished = !1, this.length = 0, this.pos = 0, this.destroyed = !1, this.blockLen = t, this.outputLen = s, this.padOffset = n, this.isLE = i, this.buffer = new Uint8Array(t), this.view = l(this.buffer);
17
+ }
18
+ update(t) {
19
+ b(this), t = a(t), d(t);
20
+ const { view: s, buffer: n, blockLen: i } = this, h = t.length;
21
+ for (let e = 0; e < h; ) {
22
+ const r = Math.min(i - this.pos, h - e);
23
+ if (r === i) {
24
+ const c = l(t);
25
+ for (; i <= h - e; e += i)
26
+ this.process(c, e);
27
+ continue;
28
+ }
29
+ n.set(t.subarray(e, e + r), this.pos), this.pos += r, e += r, this.pos === i && (this.process(s, 0), this.pos = 0);
30
+ }
31
+ return this.length += t.length, this.roundClean(), this;
32
+ }
33
+ digestInto(t) {
34
+ b(this), x(t, this), this.finished = !0;
35
+ const { buffer: s, view: n, blockLen: i, isLE: h } = this;
36
+ let { pos: e } = this;
37
+ s[e++] = 128, w(this.buffer.subarray(e)), this.padOffset > i - e && (this.process(n, 0), e = 0);
38
+ for (let f = e; f < i; f++)
39
+ s[f] = 0;
40
+ y(n, i - 8, BigInt(this.length * 8), h), this.process(n, 0);
41
+ const r = l(t), c = this.outputLen;
42
+ if (c % 4)
43
+ throw new Error("_sha2: outputLen should be aligned to 32bit");
44
+ const u = c / 4, p = this.get();
45
+ if (u > p.length)
46
+ throw new Error("_sha2: outputLen bigger than state");
47
+ for (let f = 0; f < u; f++)
48
+ r.setUint32(4 * f, p[f], h);
49
+ }
50
+ digest() {
51
+ const { buffer: t, outputLen: s } = this;
52
+ this.digestInto(t);
53
+ const n = t.slice(0, s);
54
+ return this.destroy(), n;
55
+ }
56
+ _cloneInto(t) {
57
+ t || (t = new this.constructor()), t.set(...this.get());
58
+ const { blockLen: s, buffer: n, length: i, finished: h, destroyed: e, pos: r } = this;
59
+ return t.destroyed = e, t.finished = h, t.length = i, t.pos = r, i % s && t.buffer.set(n), t;
60
+ }
61
+ clone() {
62
+ return this._cloneInto();
63
+ }
64
+ }
65
+ const B = /* @__PURE__ */ Uint32Array.from([
66
+ 1779033703,
67
+ 3144134277,
68
+ 1013904242,
69
+ 2773480762,
70
+ 1359893119,
71
+ 2600822924,
72
+ 528734635,
73
+ 1541459225
74
+ ]);
7
75
  export {
8
- f as commitmentToVersionedHash
76
+ U as Chi,
77
+ m as HashMD,
78
+ _ as Maj,
79
+ B as SHA256_IV,
80
+ y as setBigUint64
9
81
  };
@@ -1,7 +1,7 @@
1
- import { hexToBigInt as n } from "./index44.js";
2
- import { defineBlock as r } from "./index41.js";
3
- import { defineTransaction as s, formatTransaction as m } from "./index43.js";
4
- import { defineTransactionReceipt as l } from "./index46.js";
1
+ import { hexToBigInt as n } from "./index43.js";
2
+ import { defineBlock as r } from "./index40.js";
3
+ import { defineTransaction as s, formatTransaction as m } from "./index42.js";
4
+ import { defineTransactionReceipt as l } from "./index45.js";
5
5
  const p = {
6
6
  block: /* @__PURE__ */ r({
7
7
  format(e) {
@@ -1,8 +1,8 @@
1
- import { InvalidAddressError as a } from "./index25.js";
2
- import { isAddress as f } from "./index26.js";
3
- import { concatHex as p } from "./index34.js";
4
- import { toHex as i } from "./index29.js";
5
- import { toRlp as x } from "./index47.js";
1
+ import { InvalidAddressError as a } from "./index58.js";
2
+ import { isAddress as f } from "./index32.js";
3
+ import { concatHex as p } from "./index33.js";
4
+ import { toHex as i } from "./index27.js";
5
+ import { toRlp as x } from "./index46.js";
6
6
  import { serializeTransaction as l } from "./index15.js";
7
7
  function T(r, e) {
8
8
  return h(r) ? z(r) : l(r, e);
@@ -4,6 +4,7 @@ import { APIErrorType } from '@coinbase/cdp-api-client';
4
4
  import { Chain } from 'viem/chains';
5
5
  import { Chain as Chain_2 } from 'viem';
6
6
  import { ErrorType } from '@coinbase/cdp-api-client';
7
+ import { EvmUserOperation } from '@coinbase/cdp-api-client';
7
8
  import { HttpErrorType } from '@coinbase/cdp-api-client';
8
9
  import { LocalAccount } from 'viem';
9
10
  import { Mutate } from 'zustand';
@@ -49,6 +50,7 @@ export declare type Config = {
49
50
  useMock?: boolean;
50
51
  debugging?: boolean;
51
52
  basePath?: string;
53
+ createAccountOnLogin?: "evm-eoa" | "evm-smart";
52
54
  };
53
55
 
54
56
  export declare function createCDPEmbeddedWallet<chains extends readonly [Chain, ...Chain[]]>(_parameters: CDPEmbeddedWalletConfig<chains>): CDPEmbeddedWallet;
@@ -100,6 +102,12 @@ export declare type EthSignRequest = {
100
102
 
101
103
  export declare type EvmAddress = `0x${string}`;
102
104
 
105
+ export declare type EvmCall = {
106
+ to: EvmAddress;
107
+ value?: bigint;
108
+ data?: Hex;
109
+ };
110
+
103
111
  export declare type ExactPartial<T> = {
104
112
  [P in keyof T]?: T[P] extends object ? ExactPartial<T[P]> : T[P];
105
113
  };
@@ -118,6 +126,16 @@ export declare const getAccessToken: () => Promise<string | null>;
118
126
 
119
127
  export declare const getCurrentUser: () => Promise<User | null>;
120
128
 
129
+ export declare const getUserOperation: (options: GetUserOperationOptions) => Promise<GetUserOperationResult>;
130
+
131
+ export declare type GetUserOperationOptions = {
132
+ userOperationHash: Hex;
133
+ evmSmartAccount: EvmAddress;
134
+ network: SendEvmTransactionWithEndUserAccountBodyNetwork;
135
+ };
136
+
137
+ export declare type GetUserOperationResult = EvmUserOperation;
138
+
121
139
  export declare type Hex = `0x${string}`;
122
140
 
123
141
  export { HttpErrorType }
@@ -191,6 +209,20 @@ export declare type SendTransactionRequestParams = [
191
209
  }
192
210
  ];
193
211
 
212
+ export declare const sendUserOperation: (options: SendUserOperationOptions) => Promise<SendUserOperationResult>;
213
+
214
+ export declare type SendUserOperationOptions = {
215
+ evmSmartAccount: EvmAddress;
216
+ network: SendEvmTransactionWithEndUserAccountBodyNetwork;
217
+ calls: EvmCall[];
218
+ useCdpPaymaster?: boolean;
219
+ paymasterUrl?: string;
220
+ };
221
+
222
+ export declare type SendUserOperationResult = {
223
+ userOperationHash: Hex;
224
+ };
225
+
194
226
  export declare const signEvmHash: (options: SignEvmHashOptions) => Promise<SignEvmHashResult>;
195
227
 
196
228
  export declare type SignEvmHashOptions = {
@@ -311,6 +343,7 @@ export declare type User = {
311
343
  userId: string;
312
344
  authenticationMethods: AuthenticationMethods;
313
345
  evmAccounts?: EvmAddress[];
346
+ evmSmartAccounts?: EvmAddress[];
314
347
  };
315
348
 
316
349
  export declare const verifyEmailOTP: (options: VerifyEmailOTPOptions) => Promise<VerifyEmailOTPResult>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@coinbase/cdp-core",
3
- "version": "0.0.20",
3
+ "version": "0.0.22",
4
4
  "type": "module",
5
5
  "files": [
6
6
  "dist/**",
@@ -17,7 +17,7 @@
17
17
  "ox": "0.8.1",
18
18
  "viem": "^2.33.0",
19
19
  "zustand": "^5.0.6",
20
- "@coinbase/cdp-api-client": "^0.0.20"
20
+ "@coinbase/cdp-api-client": "^0.0.22"
21
21
  },
22
22
  "devDependencies": {
23
23
  "@size-limit/preset-big-lib": "^11.2.0",
@@ -45,7 +45,7 @@
45
45
  "path": "./dist/esm/index.js",
46
46
  "running": false,
47
47
  "import": "{ signEvmHash, signEvmTransaction, sendEvmTransaction, signEvmMessage, signEvmTypedData }",
48
- "limit": "25 KB"
48
+ "limit": "30 KB"
49
49
  },
50
50
  {
51
51
  "name": "export",