accounts 0.14.1 → 0.14.2

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/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # accounts
2
2
 
3
+ ## 0.14.2
4
+
5
+ ### Patch Changes
6
+
7
+ - 022d947: Simplified Privy account loading and fixed stale wallet cache handling after failed account selection.
8
+
3
9
  ## 0.14.1
4
10
 
5
11
  ### Patch Changes
@@ -159,7 +159,7 @@ export declare namespace authorize {
159
159
  /** Options for {@link authorize}. */
160
160
  type Options = {
161
161
  /** Root account that owns this access key and signs its authorization. */
162
- account: TempoAccount.Account;
162
+ account: Pick<TempoAccount.Account, 'address' | 'sign'>;
163
163
  /** Default chain ID for the authorization when `parameters.chainId` is not set. */
164
164
  chainId: bigint | number;
165
165
  /** Access key authorization parameters. */
@@ -1 +1 @@
1
- {"version":3,"file":"AccessKey.d.ts","sourceRoot":"","sources":["../../src/core/AccessKey.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,OAAO,EAAE,GAAG,EAA0B,aAAa,EAAE,MAAM,IAAI,CAAA;AACrF,OAAO,EAAE,gBAAgB,EAAqB,MAAM,UAAU,CAAA;AAC9D,OAAO,EAAa,KAAK,MAAM,EAAE,KAAK,SAAS,EAAE,MAAM,MAAM,CAAA;AAC7D,OAAO,EAAE,OAAO,IAAI,YAAY,EAAW,MAAM,YAAY,CAAA;AAE7D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAEjD,OAAO,KAAK,KAAK,KAAK,MAAM,YAAY,CAAA;AAExC,QAAA,MAAM,MAAM;IACV,+CAA+C;;IAE/C,wGAAwG;;IAExG,sDAAsD;;IAEtD,oDAAoD;;CAE5C,CAAA;AAIV,KAAK,MAAM,GAAG,CAAC,OAAO,MAAM,CAAC,CAAC,MAAM,OAAO,MAAM,CAAC,CAAA;AAElD,kDAAkD;AAClD,MAAM,MAAM,SAAS,GAAG;IACtB,0BAA0B;IAC1B,OAAO,EAAE,OAAO,CAAC,OAAO,CAAA;IACxB,+BAA+B;IAC/B,MAAM,EAAE,OAAO,CAAC,OAAO,CAAA;IACvB,2DAA2D;IAC3D,OAAO,EAAE,MAAM,CAAA;IACf,kDAAkD;IAClD,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC3B,6EAA6E;IAC7E,gBAAgB,CAAC,EAAE,gBAAgB,CAAC,MAAM,GAAG,SAAS,CAAA;IACtD,sEAAsE;IACtE,uBAAuB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAC7C,gBAAgB;IAChB,OAAO,EAAE,WAAW,GAAG,MAAM,GAAG,UAAU,GAAG,WAAW,CAAA;IACxD,iDAAiD;IACjD,MAAM,CAAC,EAAE;QAAE,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE,EAAE,GAAG,SAAS,CAAA;IAC7F,2EAA2E;IAC3E,MAAM,CAAC,EACH;QACE,OAAO,EAAE,OAAO,CAAC,OAAO,CAAA;QACxB,QAAQ,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,MAAM,GAAG,SAAS,CAAA;QACvC,UAAU,CAAC,EAAE,SAAS,OAAO,CAAC,OAAO,EAAE,GAAG,SAAS,CAAA;KACpD,EAAE,GACH,SAAS,CAAA;CACd,GAAG,KAAK,CACL,EAAE,GACF;IACE,uDAAuD;IACvD,UAAU,EAAE,GAAG,CAAC,GAAG,CAAA;CACpB,GACD;IACE,qDAAqD;IACrD,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,aAAa,CAAC,aAAa,CAAC,CAAC,CAAA;CACjE,CACJ,CAAA;AAED,6CAA6C;AAC7C,KAAK,IAAI,GAAG;IACV,qCAAqC;IACrC,EAAE,CAAC,EAAE,OAAO,CAAC,OAAO,GAAG,SAAS,CAAA;IAChC,2BAA2B;IAC3B,IAAI,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,SAAS,CAAA;CAC3B,CAAA;AAED,+BAA+B;AAC/B,KAAK,WAAW,GAAG;IACjB,4BAA4B;IAC5B,OAAO,EAAE,OAAO,CAAC,OAAO,CAAA;IACxB,4CAA4C;IAC5C,SAAS,CAAC,EAAE,OAAO,CAAC,OAAO,GAAG,SAAS,CAAA;IACvC,gDAAgD;IAChD,KAAK,CAAC,EAAE,SAAS,IAAI,EAAE,GAAG,SAAS,CAAA;IACnC,qDAAqD;IACrD,OAAO,EAAE,MAAM,CAAA;IACf,wDAAwD;IACxD,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC,CAAA;IACzB,0EAA0E;IAC1E,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACxB,4BAA4B;IAC5B,KAAK,EAAE,KAAK,CAAC,KAAK,CAAA;CACnB,CAAA;AAED,kCAAkC;AAClC,KAAK,WAAW,GAAG;IACjB,4BAA4B;IAC5B,OAAO,EAAE,OAAO,CAAC,OAAO,CAAA;IACxB,gDAAgD;IAChD,KAAK,CAAC,EAAE,SAAS,IAAI,EAAE,GAAG,SAAS,CAAA;IACnC,qDAAqD;IACrD,OAAO,EAAE,MAAM,CAAA;IACf,wDAAwD;IACxD,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC,CAAA;IACzB,0EAA0E;IAC1E,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACxB,4BAA4B;IAC5B,KAAK,EAAE,KAAK,CAAC,KAAK,CAAA;CACnB,CAAA;AAED,kCAAkC;AAClC,KAAK,GAAG,GAAG;IACT,4BAA4B;IAC5B,OAAO,EAAE,OAAO,CAAC,OAAO,CAAA;IACxB,0BAA0B;IAC1B,SAAS,EAAE,OAAO,CAAC,OAAO,CAAA;IAC1B,4CAA4C;IAC5C,OAAO,EAAE,MAAM,CAAA;IACf,4BAA4B;IAC5B,KAAK,EAAE,KAAK,CAAC,KAAK,CAAA;CACnB,CAAA;AAaD,yCAAyC;AACzC,KAAK,SAAS,GAAG;IACf,oDAAoD;IACpD,OAAO,EAAE,YAAY,CAAC,gBAAgB,CAAA;IACtC,0BAA0B;IAC1B,SAAS,EAAE,OAAO,CAAC,OAAO,CAAA;IAC1B,kFAAkF;IAClF,aAAa,CAAC,EAAE,gBAAgB,CAAC,MAAM,GAAG,SAAS,CAAA;IACnD,gCAAgC;IAChC,MAAM,EAAE,SAAS,CAAA;CAClB,CAAA;AAED,wDAAwD;AACxD,wBAAsB,QAAQ,CAAC,OAAO,GAAE,QAAQ,CAAC,OAAY,GAAG,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAQ3F;AAED,MAAM,CAAC,OAAO,WAAW,QAAQ,CAAC;IAChC,KAAK,OAAO,GAAG;QACb,gDAAgD;QAChD,OAAO,CAAC,EAAE,YAAY,CAAC,OAAO,GAAG,SAAS,CAAA;KAC3C,CAAA;IAED,KAAK,UAAU,GAAG;QAChB,wCAAwC;QACxC,SAAS,EAAE,YAAY,CAAC,gBAAgB,CAAA;QACxC,0DAA0D;QAC1D,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,OAAO,aAAa,CAAC,aAAa,CAAC,CAAC,CAAA;KAC5E,CAAA;CACF;AAED,iFAAiF;AACjF,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,oBAAoB,CAAC,OAAO,GACpC,OAAO,CAAC,oBAAoB,CAAC,UAAU,CAAC,CA6B1C;AAED,MAAM,CAAC,OAAO,WAAW,oBAAoB,CAAC;IAC5C,gDAAgD;IAChD,KAAK,OAAO,GAAG;QACb,+DAA+D;QAC/D,OAAO,CAAC,EAAE,OAAO,CAAC,OAAO,GAAG,SAAS,CAAA;QACrC,mDAAmD;QACnD,OAAO,EAAE,MAAM,GAAG,MAAM,CAAA;QACxB,2CAA2C;QAC3C,MAAM,EAAE,MAAM,CAAA;QACd,oEAAoE;QACpE,OAAO,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,UAAU,GAAG,SAAS,CAAA;QACvD,2CAA2C;QAC3C,MAAM,CAAC,EAAE,SAAS,gBAAgB,CAAC,UAAU,EAAE,GAAG,SAAS,CAAA;QAC3D,iEAAiE;QACjE,SAAS,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,SAAS,CAAA;QAC/B,2EAA2E;QAC3E,MAAM,CAAC,EAAE,SAAS,gBAAgB,CAAC,KAAK,EAAE,GAAG,SAAS,CAAA;KACvD,CAAA;IAED,2EAA2E;IAC3E,KAAK,UAAU,GAAG;QAChB,gEAAgE;QAChE,gBAAgB,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAA;QAC1D,0DAA0D;QAC1D,OAAO,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,OAAO,aAAa,CAAC,aAAa,CAAC,CAAC,GAAG,SAAS,CAAA;KACzF,CAAA;CACF;AAED,8DAA8D;AAC9D,wBAAsB,SAAS,CAAC,OAAO,EAAE,SAAS,CAAC,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC,CAoBzF;AAED,MAAM,CAAC,OAAO,WAAW,SAAS,CAAC;IACjC,qCAAqC;IACrC,KAAK,OAAO,GAAG;QACb,0EAA0E;QAC1E,OAAO,EAAE,YAAY,CAAC,OAAO,CAAA;QAC7B,mFAAmF;QACnF,OAAO,EAAE,MAAM,GAAG,MAAM,CAAA;QACxB,2CAA2C;QAC3C,UAAU,EAAE,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,SAAS,CAAC,GAAG;YAC1D,mDAAmD;YACnD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAA;SACtC,CAAA;QACD,4BAA4B;QAC5B,KAAK,EAAE,KAAK,CAAC,KAAK,CAAA;KACnB,CAAA;IAED,4CAA4C;IAC5C,KAAK,UAAU,GAAG,gBAAgB,CAAC,GAAG,CAAA;CACvC;AAED,sEAAsE;AACtE,wBAAsB,SAAS,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAiCrE;AAED,2DAA2D;AAC3D,wBAAsB,MAAM,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,CAwCjF;AAED,8CAA8C;AAC9C,wBAAgB,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,GAAG,GAAG,CAAC,UAAU,CA6BxD;AAED,MAAM,CAAC,OAAO,WAAW,GAAG,CAAC;IAC3B,+BAA+B;IAC/B,KAAK,OAAO,GAAG;QACb,sDAAsD;QACtD,OAAO,EAAE,OAAO,CAAC,OAAO,CAAA;QACxB,mDAAmD;QACnD,aAAa,EAAE,gBAAgB,CAAC,MAAM,CAAA;QACtC,uDAAuD;QACvD,UAAU,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,SAAS,CAAA;QAChC,qDAAqD;QACrD,OAAO,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,OAAO,aAAa,CAAC,aAAa,CAAC,CAAC,GAAG,SAAS,CAAA;QACxF,4BAA4B;QAC5B,KAAK,EAAE,KAAK,CAAC,KAAK,CAAA;KACnB,CAAA;IAED,gCAAgC;IAChC,KAAK,UAAU,GAAG,SAAS,CAAA;CAC5B;AAED,kEAAkE;AAClE,wBAAgB,WAAW,CAAC,OAAO,EAAE,GAAG,GAAG,IAAI,CAS9C;AAED,sFAAsF;AACtF,wBAAgB,aAAa,CAAC,OAAO,EAAE,GAAG,GAAG,IAAI,CAOhD;AAED,oCAAoC;AACpC,wBAAgB,MAAM,CAAC,OAAO,EAAE,GAAG,GAAG,IAAI,CAKzC;AAED,oFAAoF;AACpF,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAW1D"}
1
+ {"version":3,"file":"AccessKey.d.ts","sourceRoot":"","sources":["../../src/core/AccessKey.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,OAAO,EAAE,GAAG,EAA0B,aAAa,EAAE,MAAM,IAAI,CAAA;AACrF,OAAO,EAAE,gBAAgB,EAAqB,MAAM,UAAU,CAAA;AAC9D,OAAO,EAAa,KAAK,MAAM,EAAE,KAAK,SAAS,EAAE,MAAM,MAAM,CAAA;AAC7D,OAAO,EAAE,OAAO,IAAI,YAAY,EAAW,MAAM,YAAY,CAAA;AAE7D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAEjD,OAAO,KAAK,KAAK,KAAK,MAAM,YAAY,CAAA;AAExC,QAAA,MAAM,MAAM;IACV,+CAA+C;;IAE/C,wGAAwG;;IAExG,sDAAsD;;IAEtD,oDAAoD;;CAE5C,CAAA;AAIV,KAAK,MAAM,GAAG,CAAC,OAAO,MAAM,CAAC,CAAC,MAAM,OAAO,MAAM,CAAC,CAAA;AAElD,kDAAkD;AAClD,MAAM,MAAM,SAAS,GAAG;IACtB,0BAA0B;IAC1B,OAAO,EAAE,OAAO,CAAC,OAAO,CAAA;IACxB,+BAA+B;IAC/B,MAAM,EAAE,OAAO,CAAC,OAAO,CAAA;IACvB,2DAA2D;IAC3D,OAAO,EAAE,MAAM,CAAA;IACf,kDAAkD;IAClD,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC3B,6EAA6E;IAC7E,gBAAgB,CAAC,EAAE,gBAAgB,CAAC,MAAM,GAAG,SAAS,CAAA;IACtD,sEAAsE;IACtE,uBAAuB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAC7C,gBAAgB;IAChB,OAAO,EAAE,WAAW,GAAG,MAAM,GAAG,UAAU,GAAG,WAAW,CAAA;IACxD,iDAAiD;IACjD,MAAM,CAAC,EAAE;QAAE,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE,EAAE,GAAG,SAAS,CAAA;IAC7F,2EAA2E;IAC3E,MAAM,CAAC,EACH;QACE,OAAO,EAAE,OAAO,CAAC,OAAO,CAAA;QACxB,QAAQ,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,MAAM,GAAG,SAAS,CAAA;QACvC,UAAU,CAAC,EAAE,SAAS,OAAO,CAAC,OAAO,EAAE,GAAG,SAAS,CAAA;KACpD,EAAE,GACH,SAAS,CAAA;CACd,GAAG,KAAK,CACL,EAAE,GACF;IACE,uDAAuD;IACvD,UAAU,EAAE,GAAG,CAAC,GAAG,CAAA;CACpB,GACD;IACE,qDAAqD;IACrD,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,aAAa,CAAC,aAAa,CAAC,CAAC,CAAA;CACjE,CACJ,CAAA;AAED,6CAA6C;AAC7C,KAAK,IAAI,GAAG;IACV,qCAAqC;IACrC,EAAE,CAAC,EAAE,OAAO,CAAC,OAAO,GAAG,SAAS,CAAA;IAChC,2BAA2B;IAC3B,IAAI,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,SAAS,CAAA;CAC3B,CAAA;AAED,+BAA+B;AAC/B,KAAK,WAAW,GAAG;IACjB,4BAA4B;IAC5B,OAAO,EAAE,OAAO,CAAC,OAAO,CAAA;IACxB,4CAA4C;IAC5C,SAAS,CAAC,EAAE,OAAO,CAAC,OAAO,GAAG,SAAS,CAAA;IACvC,gDAAgD;IAChD,KAAK,CAAC,EAAE,SAAS,IAAI,EAAE,GAAG,SAAS,CAAA;IACnC,qDAAqD;IACrD,OAAO,EAAE,MAAM,CAAA;IACf,wDAAwD;IACxD,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC,CAAA;IACzB,0EAA0E;IAC1E,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACxB,4BAA4B;IAC5B,KAAK,EAAE,KAAK,CAAC,KAAK,CAAA;CACnB,CAAA;AAED,kCAAkC;AAClC,KAAK,WAAW,GAAG;IACjB,4BAA4B;IAC5B,OAAO,EAAE,OAAO,CAAC,OAAO,CAAA;IACxB,gDAAgD;IAChD,KAAK,CAAC,EAAE,SAAS,IAAI,EAAE,GAAG,SAAS,CAAA;IACnC,qDAAqD;IACrD,OAAO,EAAE,MAAM,CAAA;IACf,wDAAwD;IACxD,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC,CAAA;IACzB,0EAA0E;IAC1E,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACxB,4BAA4B;IAC5B,KAAK,EAAE,KAAK,CAAC,KAAK,CAAA;CACnB,CAAA;AAED,kCAAkC;AAClC,KAAK,GAAG,GAAG;IACT,4BAA4B;IAC5B,OAAO,EAAE,OAAO,CAAC,OAAO,CAAA;IACxB,0BAA0B;IAC1B,SAAS,EAAE,OAAO,CAAC,OAAO,CAAA;IAC1B,4CAA4C;IAC5C,OAAO,EAAE,MAAM,CAAA;IACf,4BAA4B;IAC5B,KAAK,EAAE,KAAK,CAAC,KAAK,CAAA;CACnB,CAAA;AAaD,yCAAyC;AACzC,KAAK,SAAS,GAAG;IACf,oDAAoD;IACpD,OAAO,EAAE,YAAY,CAAC,gBAAgB,CAAA;IACtC,0BAA0B;IAC1B,SAAS,EAAE,OAAO,CAAC,OAAO,CAAA;IAC1B,kFAAkF;IAClF,aAAa,CAAC,EAAE,gBAAgB,CAAC,MAAM,GAAG,SAAS,CAAA;IACnD,gCAAgC;IAChC,MAAM,EAAE,SAAS,CAAA;CAClB,CAAA;AAED,wDAAwD;AACxD,wBAAsB,QAAQ,CAAC,OAAO,GAAE,QAAQ,CAAC,OAAY,GAAG,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAQ3F;AAED,MAAM,CAAC,OAAO,WAAW,QAAQ,CAAC;IAChC,KAAK,OAAO,GAAG;QACb,gDAAgD;QAChD,OAAO,CAAC,EAAE,YAAY,CAAC,OAAO,GAAG,SAAS,CAAA;KAC3C,CAAA;IAED,KAAK,UAAU,GAAG;QAChB,wCAAwC;QACxC,SAAS,EAAE,YAAY,CAAC,gBAAgB,CAAA;QACxC,0DAA0D;QAC1D,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,OAAO,aAAa,CAAC,aAAa,CAAC,CAAC,CAAA;KAC5E,CAAA;CACF;AAED,iFAAiF;AACjF,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,oBAAoB,CAAC,OAAO,GACpC,OAAO,CAAC,oBAAoB,CAAC,UAAU,CAAC,CA6B1C;AAED,MAAM,CAAC,OAAO,WAAW,oBAAoB,CAAC;IAC5C,gDAAgD;IAChD,KAAK,OAAO,GAAG;QACb,+DAA+D;QAC/D,OAAO,CAAC,EAAE,OAAO,CAAC,OAAO,GAAG,SAAS,CAAA;QACrC,mDAAmD;QACnD,OAAO,EAAE,MAAM,GAAG,MAAM,CAAA;QACxB,2CAA2C;QAC3C,MAAM,EAAE,MAAM,CAAA;QACd,oEAAoE;QACpE,OAAO,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,UAAU,GAAG,SAAS,CAAA;QACvD,2CAA2C;QAC3C,MAAM,CAAC,EAAE,SAAS,gBAAgB,CAAC,UAAU,EAAE,GAAG,SAAS,CAAA;QAC3D,iEAAiE;QACjE,SAAS,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,SAAS,CAAA;QAC/B,2EAA2E;QAC3E,MAAM,CAAC,EAAE,SAAS,gBAAgB,CAAC,KAAK,EAAE,GAAG,SAAS,CAAA;KACvD,CAAA;IAED,2EAA2E;IAC3E,KAAK,UAAU,GAAG;QAChB,gEAAgE;QAChE,gBAAgB,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAA;QAC1D,0DAA0D;QAC1D,OAAO,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,OAAO,aAAa,CAAC,aAAa,CAAC,CAAC,GAAG,SAAS,CAAA;KACzF,CAAA;CACF;AAED,8DAA8D;AAC9D,wBAAsB,SAAS,CAAC,OAAO,EAAE,SAAS,CAAC,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC,CAoBzF;AAED,MAAM,CAAC,OAAO,WAAW,SAAS,CAAC;IACjC,qCAAqC;IACrC,KAAK,OAAO,GAAG;QACb,0EAA0E;QAC1E,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,SAAS,GAAG,MAAM,CAAC,CAAA;QACvD,mFAAmF;QACnF,OAAO,EAAE,MAAM,GAAG,MAAM,CAAA;QACxB,2CAA2C;QAC3C,UAAU,EAAE,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,SAAS,CAAC,GAAG;YAC1D,mDAAmD;YACnD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAA;SACtC,CAAA;QACD,4BAA4B;QAC5B,KAAK,EAAE,KAAK,CAAC,KAAK,CAAA;KACnB,CAAA;IAED,4CAA4C;IAC5C,KAAK,UAAU,GAAG,gBAAgB,CAAC,GAAG,CAAA;CACvC;AAED,sEAAsE;AACtE,wBAAsB,SAAS,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAiCrE;AAED,2DAA2D;AAC3D,wBAAsB,MAAM,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,CAwCjF;AAED,8CAA8C;AAC9C,wBAAgB,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,GAAG,GAAG,CAAC,UAAU,CA6BxD;AAED,MAAM,CAAC,OAAO,WAAW,GAAG,CAAC;IAC3B,+BAA+B;IAC/B,KAAK,OAAO,GAAG;QACb,sDAAsD;QACtD,OAAO,EAAE,OAAO,CAAC,OAAO,CAAA;QACxB,mDAAmD;QACnD,aAAa,EAAE,gBAAgB,CAAC,MAAM,CAAA;QACtC,uDAAuD;QACvD,UAAU,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,SAAS,CAAA;QAChC,qDAAqD;QACrD,OAAO,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,OAAO,aAAa,CAAC,aAAa,CAAC,CAAC,GAAG,SAAS,CAAA;QACxF,4BAA4B;QAC5B,KAAK,EAAE,KAAK,CAAC,KAAK,CAAA;KACnB,CAAA;IAED,gCAAgC;IAChC,KAAK,UAAU,GAAG,SAAS,CAAA;CAC5B;AAED,kEAAkE;AAClE,wBAAgB,WAAW,CAAC,OAAO,EAAE,GAAG,GAAG,IAAI,CAS9C;AAED,sFAAsF;AACtF,wBAAgB,aAAa,CAAC,OAAO,EAAE,GAAG,GAAG,IAAI,CAOhD;AAED,oCAAoC;AACpC,wBAAgB,MAAM,CAAC,OAAO,EAAE,GAAG,GAAG,IAAI,CAKzC;AAED,oFAAoF;AACpF,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAW1D"}
@@ -1 +1 @@
1
- {"version":3,"file":"privy.d.ts","sourceRoot":"","sources":["../../../src/core/adapters/privy.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,OAAO,EAAgB,MAAM,eAAe,CAAA;AAK1D,OAAO,KAAK,OAAO,MAAM,eAAe,CAAA;AAmBxC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,wBAAgB,KAAK,CAAC,KAAK,CAAC,MAAM,SAAS,KAAK,CAAC,MAAM,EACrD,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAC7B,OAAO,CAAC,OAAO,CA+lBjB;AAED,MAAM,CAAC,OAAO,WAAW,KAAK,CAAC;IAC7B,iCAAiC;IACjC,KAAK,OAAO,CAAC,MAAM,SAAS,MAAM,GAAG,MAAM,IAAI;QAC7C,2EAA2E;QAC3E,MAAM,EAAE,MAAM,CAAA;QACd;;;;;;;;;;WAUG;QACH,aAAa,CAAC,EACV,CAAC,CAAC,UAAU,EAAE;YACZ,gCAAgC;YAChC,MAAM,EAAE,MAAM,CAAA;YACd,0CAA0C;YAC1C,UAAU,EAAE,OAAO,CAAC,aAAa,CAAC,UAAU,CAAA;SAC7C,KAAK,OAAO,CAAC,gBAAgB,CAAC,CAAC,GAChC,SAAS,CAAA;QACb,6DAA6D;QAC7D,IAAI,CAAC,EAAE,cAAc,MAAM,EAAE,GAAG,SAAS,CAAA;QACzC;;;;;;;;;WASG;QACH,YAAY,EAAE,CAAC,UAAU,EAAE;YACzB,gCAAgC;YAChC,MAAM,EAAE,MAAM,CAAA;YACd,yCAAyC;YACzC,UAAU,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,UAAU,GAAG,SAAS,CAAA;SACzD,KAAK,OAAO,CAAC,gBAAgB,CAAC,CAAA;QAC/B,qDAAqD;QACrD,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QACzB,kDAAkD;QAClD,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KAC1B,CAAA;IAED;;;OAGG;IACH,KAAK,gBAAgB,GAAG,SAAS,OAAO,EAAE,GAAG,IAAI,CAAA;IAEjD;;;;;;;;OAQG;IACH,KAAK,MAAM,GAAG;QACZ,iDAAiD;QACjD,IAAI,EAAE;YACJ;;;eAGG;YACH,MAAM,EAAE,CAAC,UAAU,CAAC,EAAE;gBAAE,MAAM,EAAE,MAAM,CAAA;aAAE,GAAG,SAAS,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;SAC9E,CAAA;QACD,iFAAiF;QACjF,cAAc,EAAE;YACd,yEAAyE;YACzE,mBAAmB,CAAC,UAAU,EAAE;gBAC9B,MAAM,EAAE,aAAa,CAAA;gBACrB,SAAS,EAAE,MAAM,CAAA;gBACjB,iBAAiB,EAAE,MAAM,CAAA;aAC1B,GAAG,OAAO,CAAC,gBAAgB,CAAC,GAAG,gBAAgB,CAAA;SACjD,CAAA;QACD,uEAAuE;QACvE,cAAc,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;QAC5C,mFAAmF;QACnF,UAAU,CAAC,EAAE,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,SAAS,CAAA;QACrD,2FAA2F;QAC3F,IAAI,EAAE;YACJ,sDAAsD;YACtD,GAAG,EAAE,MAAM,OAAO,CAAC;gBAAE,IAAI,EAAE,IAAI,CAAA;aAAE,CAAC,CAAA;SACnC,CAAA;KACF,CAAA;IAED,uEAAuE;IACvE,KAAK,IAAI,GAAG;QACV,EAAE,EAAE,MAAM,CAAA;QACV,eAAe,CAAC,EAAE,SAAS,aAAa,EAAE,GAAG,SAAS,CAAA;KACvD,CAAA;IAED,iFAAiF;IACjF,KAAK,aAAa,GAAG;QACnB,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QAC5B,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QAC/B,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QACnC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QACzB,kBAAkB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QACvC,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KAClC,CAAA;IAED,kFAAkF;IAClF,KAAK,gBAAgB,GAAG;QACtB,OAAO,CAAC,UAAU,EAAE;YAClB,MAAM,EAAE,MAAM,CAAA;YACd,MAAM,CAAC,EAAE,SAAS,OAAO,EAAE,GAAG,SAAS,CAAA;SACxC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;KACrB,CAAA;IAED;;;;;OAKG;IACH,KAAK,cAAc,GAAG;QACpB,OAAO,EAAE,MAAM,CAAA;QACf,QAAQ,EAAE,gBAAgB,CAAA;KAC3B,CAAA;CACF"}
1
+ {"version":3,"file":"privy.d.ts","sourceRoot":"","sources":["../../../src/core/adapters/privy.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { Address as core_Address, Hex, Provider as ox_Provider, PublicKey, RpcResponse, Secp256k1, Signature, WebCryptoP256, } from 'ox';
2
- import { KeyAuthorization, SignatureEnvelope } from 'ox/tempo';
1
+ import { Address as core_Address, Hex, Provider as ox_Provider, Secp256k1, Signature } from 'ox';
2
+ import { SignatureEnvelope } from 'ox/tempo';
3
3
  import { hashMessage, hashTypedData, isAddressEqual, keccak256 } from 'viem';
4
4
  import { prepareTransactionRequest } from 'viem/actions';
5
5
  import { Actions, Transaction as TempoTransaction } from 'viem/tempo';
@@ -63,7 +63,7 @@ export function privy(options) {
63
63
  return Adapter.define({ icon, name, rdns }, ({ getClient, store }) => {
64
64
  let privyClient_promise;
65
65
  let restore_promise;
66
- let walletAccounts = [];
66
+ let walletAccounts;
67
67
  async function getPrivyClient() {
68
68
  privyClient_promise ??= (async () => {
69
69
  await options.client.initialize?.();
@@ -77,9 +77,25 @@ export function privy(options) {
77
77
  ...(label ? { label } : {}),
78
78
  };
79
79
  }
80
+ function toTempoAccount(account) {
81
+ const address = core_Address.from(account.address);
82
+ async function sign(parameters) {
83
+ return await signPayload({
84
+ payload: parameters.hash,
85
+ walletAccount: account,
86
+ });
87
+ }
88
+ return {
89
+ address,
90
+ sign,
91
+ signTransaction: async (transaction) => await privySignTransaction({ sign, transaction }),
92
+ source: 'privy',
93
+ type: 'local',
94
+ };
95
+ }
80
96
  function clear() {
81
97
  restore_promise = undefined;
82
- walletAccounts = [];
98
+ walletAccounts = undefined;
83
99
  store.setState({ accessKeys: [], accounts: [], activeAccount: 0 });
84
100
  }
85
101
  async function hasValidSession() {
@@ -144,7 +160,7 @@ export function privy(options) {
144
160
  }
145
161
  async function restore() {
146
162
  await Store.waitForHydration(store);
147
- if (walletAccounts.length > 0)
163
+ if (walletAccounts)
148
164
  return;
149
165
  if (restore_promise)
150
166
  return await restore_promise;
@@ -163,21 +179,22 @@ export function privy(options) {
163
179
  clear();
164
180
  throw new ox_Provider.DisconnectedError({ message: 'Privy session expired.' });
165
181
  });
166
- walletAccounts = persisted
182
+ walletAccounts = restored;
183
+ const accounts = persisted
167
184
  .map((account) => restored.find((walletAccount) => isAddressEqual(core_Address.from(walletAccount.address), account.address)))
168
185
  .filter((account) => !!account);
169
186
  // If the persisted accounts no longer exist in Privy (different user
170
187
  // signed in, wallets removed), wipe the stale state so callers see a
171
188
  // clean disconnected state instead of ghost accounts without providers.
172
- if (walletAccounts.length === 0) {
189
+ if (accounts.length === 0) {
173
190
  clear();
174
191
  throw new ox_Provider.DisconnectedError({
175
192
  message: 'Privy session no longer matches persisted accounts.',
176
193
  });
177
194
  }
178
195
  store.setState({
179
- accounts: walletAccounts.map((account) => toStoreAccount(account)),
180
- activeAccount: Math.min(state.activeAccount, walletAccounts.length - 1),
196
+ accounts: accounts.map((account) => toStoreAccount(account)),
197
+ activeAccount: Math.min(state.activeAccount, accounts.length - 1),
181
198
  });
182
199
  })();
183
200
  try {
@@ -193,20 +210,26 @@ export function privy(options) {
193
210
  clear();
194
211
  throw new ox_Provider.DisconnectedError({ message: 'Privy session expired.' });
195
212
  }
196
- async function accountForSigning(address) {
213
+ async function getTempoAccount(address) {
197
214
  await restore();
198
215
  await requireSession();
199
- const address_ = address ?? store.getState().accounts[store.getState().activeAccount]?.address;
216
+ const state = store.getState();
217
+ const address_ = address ?? state.accounts[state.activeAccount]?.address;
200
218
  if (!address_)
201
219
  throw new ox_Provider.DisconnectedError({ message: 'No accounts connected.' });
202
- const account = walletAccounts.find((account) => isAddressEqual(core_Address.from(account.address), address_));
203
- if (account)
204
- return account;
205
- if (walletAccounts.length === 0)
220
+ if (state.accounts.length === 0)
206
221
  throw new ox_Provider.DisconnectedError({
207
222
  message: 'No Privy account connected.',
208
223
  });
209
- throw new ox_Provider.UnauthorizedError({ message: `Account "${address_}" not found.` });
224
+ const connected = state.accounts.some((account) => isAddressEqual(account.address, address_));
225
+ if (!connected)
226
+ throw new ox_Provider.UnauthorizedError({ message: `Account "${address_}" not found.` });
227
+ const account = (walletAccounts ?? []).find((account) => isAddressEqual(core_Address.from(account.address), address_));
228
+ if (account)
229
+ return toTempoAccount(account);
230
+ throw new ox_Provider.DisconnectedError({
231
+ message: 'Privy session no longer matches persisted accounts.',
232
+ });
210
233
  }
211
234
  async function signPayload(parameters) {
212
235
  const { payload, walletAccount } = parameters;
@@ -248,90 +271,63 @@ export function privy(options) {
248
271
  });
249
272
  return signature;
250
273
  }
251
- /**
252
- * Builds, signs, and saves an access key authorization for the given Privy
253
- * wallet. Generates a local P256 key pair when no external key is provided.
254
- */
255
- async function authorizeAccessKeyFor(account, options) {
256
- const { expiry, limits, scopes } = options;
257
- const chainId = options.chainId ?? getClient().chain.id;
258
- const prepared = await (async () => {
259
- if (options.publicKey || options.address) {
260
- const address = options.address ?? core_Address.fromPublicKey(PublicKey.from(options.publicKey));
261
- return {
262
- keyAuthorization: KeyAuthorization.from({
263
- address,
264
- chainId: BigInt(chainId),
265
- expiry,
266
- limits,
267
- scopes,
268
- type: options.keyType ?? 'secp256k1',
269
- }),
270
- };
271
- }
272
- if (options.keyType && options.keyType !== 'p256')
273
- throw new RpcResponse.InvalidParamsError({
274
- message: `\`keyType: "${options.keyType}"\` requires externally generated key material; provide \`publicKey\` or \`address\`.`,
275
- });
276
- const keyPair = await WebCryptoP256.createKeyPair();
277
- const address = core_Address.fromPublicKey(PublicKey.from(keyPair.publicKey));
278
- return {
279
- keyAuthorization: KeyAuthorization.from({
280
- address,
281
- chainId: BigInt(chainId),
282
- expiry,
283
- limits,
284
- scopes,
285
- type: 'p256',
286
- }),
287
- keyPair,
288
- };
289
- })();
290
- const signature = await signPayload({
291
- payload: KeyAuthorization.getSignPayload(prepared.keyAuthorization),
292
- walletAccount: account,
293
- });
294
- const keyAuthorization = KeyAuthorization.from(prepared.keyAuthorization, {
295
- signature: SignatureEnvelope.from(signature),
296
- });
297
- AccessKey.add({
298
- account: core_Address.from(account.address),
299
- authorization: keyAuthorization,
300
- ...(prepared.keyPair ? { keyPair: prepared.keyPair } : {}),
301
- store,
302
- });
303
- return KeyAuthorization.toRpc(keyAuthorization);
304
- }
305
274
  async function signTransaction(parameters) {
306
- const account = await accountForSigning(parameters.from);
275
+ const account = await getTempoAccount(parameters.from);
307
276
  const { feePayer, ...rest } = parameters;
308
277
  const viemClient = getClient({
309
278
  chainId: parameters.chainId,
310
279
  feePayer: feePayer === true ? undefined : feePayer,
311
280
  });
312
281
  const prepared = await prepareTransactionRequest(viemClient, {
313
- account: core_Address.from(account.address),
282
+ account: account.address,
314
283
  ...rest,
315
284
  ...(feePayer ? { feePayer: true } : {}),
316
285
  type: 'tempo',
317
286
  });
318
- return await signPreparedTransaction(account, prepared);
287
+ return await account.signTransaction(prepared);
319
288
  }
320
- async function signPreparedTransaction(account, prepared) {
289
+ async function privySignTransaction(parameters) {
290
+ const { sign, transaction } = parameters;
321
291
  const presign = (() => {
322
- if (prepared &&
323
- typeof prepared === 'object' &&
324
- 'feePayerSignature' in prepared &&
325
- prepared.feePayerSignature)
326
- return { ...prepared, feePayerSignature: null };
327
- return prepared;
292
+ if (transaction &&
293
+ typeof transaction === 'object' &&
294
+ 'feePayerSignature' in transaction &&
295
+ transaction.feePayerSignature)
296
+ return { ...transaction, feePayerSignature: null };
297
+ return transaction;
328
298
  })();
329
299
  const unsignedTransaction = await TempoTransaction.serialize(presign);
330
- const signature = await signPayload({
331
- payload: keccak256(unsignedTransaction),
332
- walletAccount: account,
333
- });
334
- return await TempoTransaction.serialize(prepared, SignatureEnvelope.from(Signature.fromHex(signature)));
300
+ const signature = await sign({ hash: keccak256(unsignedTransaction) });
301
+ return await TempoTransaction.serialize(transaction, SignatureEnvelope.from(Signature.fromHex(signature)));
302
+ }
303
+ async function connectAccounts(parameters) {
304
+ const { addresses, authorizeAccessKey, label, personalSign, privyClient } = parameters;
305
+ await requireSession();
306
+ const wallets = await loadEthereumWallets(privyClient);
307
+ const selected = selectWalletAccounts(wallets, addresses);
308
+ const account = selected[0] ? toTempoAccount(selected[0]) : undefined;
309
+ if (!account && parameters.noAccountsMessage)
310
+ throw new ox_Provider.DisconnectedError({
311
+ message: parameters.noAccountsMessage,
312
+ });
313
+ const digest = personalSign ? hashMessage(personalSign.message) : parameters.digest;
314
+ const keyAuthorization = authorizeAccessKey && account
315
+ ? await AccessKey.authorize({
316
+ account,
317
+ chainId: getClient().chain.id,
318
+ parameters: authorizeAccessKey,
319
+ store,
320
+ })
321
+ : undefined;
322
+ const signature = digest && account ? await account.sign({ hash: digest }) : undefined;
323
+ walletAccounts = wallets;
324
+ restore_promise = undefined;
325
+ return {
326
+ accounts: selected.map((account, index) => toStoreAccount(account, index === 0 ? label : undefined)),
327
+ ...(personalSign ? { personalSign: { message: personalSign.message } } : {}),
328
+ ...(keyAuthorization ? { keyAuthorization } : {}),
329
+ signature,
330
+ };
335
331
  }
336
332
  async function prepareTransaction(parameters) {
337
333
  const viemClient = getClient({
@@ -446,33 +442,15 @@ export function privy(options) {
446
442
  ...(personalSign ? { personalSign } : {}),
447
443
  },
448
444
  });
449
- await requireSession();
450
- walletAccounts = selectWalletAccounts(await loadEthereumWallets(privyClient), addresses);
451
- // Drop any in-flight `restore()` (from a concurrent `accountForSigning`)
452
- // so re-entrant `restore()` calls don't `await` a stale IIFE that would
453
- // later overwrite `walletAccounts` with the intersection against
454
- // now-replaced persisted accounts.
455
- restore_promise = undefined;
456
- const account = walletAccounts[0];
457
- if (!account)
458
- throw new ox_Provider.DisconnectedError({
459
- message: 'Privy returned no wallet.',
460
- });
461
- const digest = personalSign ? hashMessage(personalSign.message) : parameters.digest;
462
- const keyAuthorization = authorizeAccessKey
463
- ? await authorizeAccessKeyFor(account, authorizeAccessKey)
464
- : undefined;
465
- return {
466
- accounts: walletAccounts.map((wallet, index) => toStoreAccount(wallet, index === 0 ? parameters.name : undefined)),
467
- ...(personalSign ? { personalSign: { message: personalSign.message } } : {}),
468
- ...(keyAuthorization ? { keyAuthorization } : {}),
469
- signature: digest
470
- ? await signPayload({
471
- payload: digest,
472
- walletAccount: account,
473
- })
474
- : undefined,
475
- };
445
+ return await connectAccounts({
446
+ addresses,
447
+ ...(authorizeAccessKey ? { authorizeAccessKey } : {}),
448
+ ...(parameters.digest ? { digest: parameters.digest } : {}),
449
+ label: parameters.name,
450
+ ...(personalSign ? { personalSign } : {}),
451
+ privyClient,
452
+ noAccountsMessage: 'Privy returned no wallet.',
453
+ });
476
454
  },
477
455
  async loadAccounts(parameters) {
478
456
  const { authorizeAccessKey, personalSign } = parameters ?? {};
@@ -480,46 +458,29 @@ export function privy(options) {
480
458
  throw new ox_Provider.ProviderRpcError(-32602, '`digest` and `personalSign` cannot both be set on `wallet_connect`.');
481
459
  const privyClient = await getPrivyClient();
482
460
  const addresses = await options.loadAccounts({ client: privyClient, parameters });
483
- await requireSession();
484
- walletAccounts = selectWalletAccounts(await loadEthereumWallets(privyClient), addresses);
485
- // Drop any in-flight `restore()` (from a concurrent `accountForSigning`)
486
- // so re-entrant `restore()` calls don't `await` a stale IIFE that would
487
- // later overwrite `walletAccounts` with the intersection against
488
- // now-replaced persisted accounts.
489
- restore_promise = undefined;
490
- const digest = personalSign ? hashMessage(personalSign.message) : parameters?.digest;
491
- const account = walletAccounts[0];
492
- const keyAuthorization = authorizeAccessKey && account
493
- ? await authorizeAccessKeyFor(account, authorizeAccessKey)
494
- : undefined;
495
- return {
496
- accounts: walletAccounts.map((account) => toStoreAccount(account)),
497
- ...(personalSign ? { personalSign: { message: personalSign.message } } : {}),
498
- ...(keyAuthorization ? { keyAuthorization } : {}),
499
- signature: digest && account
500
- ? await signPayload({
501
- payload: digest,
502
- walletAccount: account,
503
- })
504
- : undefined,
505
- };
461
+ return await connectAccounts({
462
+ addresses,
463
+ ...(authorizeAccessKey ? { authorizeAccessKey } : {}),
464
+ ...(parameters?.digest ? { digest: parameters.digest } : {}),
465
+ ...(personalSign ? { personalSign } : {}),
466
+ privyClient,
467
+ });
506
468
  },
507
469
  async authorizeAccessKey(parameters) {
508
- const account = await accountForSigning(undefined);
509
- const keyAuthorization = await authorizeAccessKeyFor(account, parameters);
510
- return { keyAuthorization, rootAddress: core_Address.from(account.address) };
470
+ const account = await getTempoAccount(undefined);
471
+ const keyAuthorization = await AccessKey.authorize({
472
+ account,
473
+ chainId: getClient().chain.id,
474
+ parameters,
475
+ store,
476
+ });
477
+ return { keyAuthorization, rootAddress: account.address };
511
478
  },
512
479
  async revokeAccessKey(parameters) {
513
- const account = await accountForSigning(parameters.address);
514
- const account_tempo = {
515
- address: core_Address.from(account.address),
516
- source: 'privy',
517
- signTransaction: async (request) => await signPreparedTransaction(account, request),
518
- type: 'local',
519
- };
480
+ const account = await getTempoAccount(parameters.address);
520
481
  try {
521
482
  await Actions.accessKey.revoke(getClient(), {
522
- account: account_tempo,
483
+ account: account,
523
484
  accessKey: parameters.accessKeyAddress,
524
485
  });
525
486
  }
@@ -529,27 +490,23 @@ export function privy(options) {
529
490
  }
530
491
  AccessKey.remove({
531
492
  accessKey: parameters.accessKeyAddress,
532
- account: core_Address.from(account.address),
493
+ account: account.address,
533
494
  chainId: store.getState().chainId,
534
495
  store,
535
496
  });
536
497
  },
537
498
  async signPersonalMessage(parameters) {
538
- const account = await accountForSigning(parameters.address);
539
- return await signPayload({
540
- payload: hashMessage({ raw: parameters.data }),
541
- walletAccount: account,
499
+ return await (await getTempoAccount(parameters.address)).sign({
500
+ hash: hashMessage({ raw: parameters.data }),
542
501
  });
543
502
  },
544
503
  async signTransaction(parameters) {
545
504
  return await (await prepareTransaction(parameters)).sign();
546
505
  },
547
506
  async signTypedData(parameters) {
548
- const account = await accountForSigning(parameters.address);
549
507
  const typedData = JSON.parse(parameters.data);
550
- return await signPayload({
551
- payload: hashTypedData(typedData),
552
- walletAccount: account,
508
+ return await (await getTempoAccount(parameters.address)).sign({
509
+ hash: hashTypedData(typedData),
553
510
  });
554
511
  },
555
512
  async sendTransaction(parameters) {
@@ -1 +1 @@
1
- {"version":3,"file":"privy.js","sourceRoot":"","sources":["../../../src/core/adapters/privy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"privy.js","sourceRoot":"","sources":["../../../src/core/adapters/privy.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "accounts",
3
3
  "description": "Tempo Accounts SDK",
4
4
  "type": "module",
5
- "version": "0.14.1",
5
+ "version": "0.14.2",
6
6
  "dependencies": {
7
7
  "hono": "^4.12.18",
8
8
  "idb-keyval": "^6.2.2",
@@ -251,7 +251,7 @@ export declare namespace authorize {
251
251
  /** Options for {@link authorize}. */
252
252
  type Options = {
253
253
  /** Root account that owns this access key and signs its authorization. */
254
- account: TempoAccount.Account
254
+ account: Pick<TempoAccount.Account, 'address' | 'sign'>
255
255
  /** Default chain ID for the authorization when `parameters.chainId` is not set. */
256
256
  chainId: bigint | number
257
257
  /** Access key authorization parameters. */
@@ -80,10 +80,34 @@ describe('privy', () => {
80
80
  `)
81
81
  })
82
82
 
83
+ test('default: createAccount can select the active embedded wallet', async () => {
84
+ const { adapter, client } = setup({ createAddresses: [other] })
85
+ client.addWallet(other)
86
+
87
+ const result = await adapter.actions.createAccount(
88
+ { digest: '0x1234', name: 'Ada' },
89
+ { method: 'wallet_connect', params: undefined },
90
+ )
91
+
92
+ expect(client.signWith).toMatchInlineSnapshot(`
93
+ [
94
+ "0x2b5ad5c4795c026514f8317c7a215e218dccd6cf",
95
+ ]
96
+ `)
97
+ expect(result.accounts).toMatchInlineSnapshot(`
98
+ [
99
+ {
100
+ "address": "0x2b5ad5c4795c026514f8317c7a215e218dccd6cf",
101
+ "label": "Ada",
102
+ },
103
+ ]
104
+ `)
105
+ })
106
+
83
107
  test('default: loadAccounts delegates login and caches embedded wallets for signing', async () => {
84
- const { adapter, client } = setup()
108
+ const { adapter, client, store } = setup()
85
109
 
86
- await adapter.actions.loadAccounts(undefined, { method: 'wallet_connect', params: undefined })
110
+ await connect({ adapter, store })
87
111
  const result = await adapter.actions.signPersonalMessage(
88
112
  { address, data: '0x68656c6c6f' },
89
113
  { method: 'personal_sign', params: ['0x68656c6c6f', address] },
@@ -100,6 +124,32 @@ describe('privy', () => {
100
124
  )
101
125
  })
102
126
 
127
+ test('default: loadAccounts can select and order embedded wallets', async () => {
128
+ const { adapter, client } = setup({ loadAddresses: [other, address] })
129
+ client.addWallet(other)
130
+
131
+ const result = await adapter.actions.loadAccounts(
132
+ { digest: '0x1234' },
133
+ { method: 'wallet_connect', params: undefined },
134
+ )
135
+
136
+ expect(client.signWith).toMatchInlineSnapshot(`
137
+ [
138
+ "0x2b5ad5c4795c026514f8317c7a215e218dccd6cf",
139
+ ]
140
+ `)
141
+ expect(result.accounts).toMatchInlineSnapshot(`
142
+ [
143
+ {
144
+ "address": "0x2b5ad5c4795c026514f8317c7a215e218dccd6cf",
145
+ },
146
+ {
147
+ "address": "0x7e5f4552091a69125d5dfcb7b8c2659029395bdf",
148
+ },
149
+ ]
150
+ `)
151
+ })
152
+
103
153
  test('default: loadAccounts can provision an external access key', async () => {
104
154
  const { adapter, client } = setup()
105
155
 
@@ -144,6 +194,39 @@ describe('privy', () => {
144
194
  `)
145
195
  })
146
196
 
197
+ test('default: signs transactions with a materialized Privy account', async () => {
198
+ const { adapter, client, store } = setup()
199
+ await connect({ adapter, store })
200
+
201
+ const result = await adapter.actions.signTransaction(
202
+ {
203
+ chainId: 1,
204
+ from: address,
205
+ gas: 21_000n,
206
+ maxFeePerGas: 1n,
207
+ maxPriorityFeePerGas: 1n,
208
+ nonce: 0,
209
+ to: other,
210
+ value: 1n,
211
+ },
212
+ { method: 'eth_signTransaction', params: [{ from: address }] },
213
+ )
214
+
215
+ expect(client.signWith).toMatchInlineSnapshot(`
216
+ [
217
+ "0x7e5f4552091a69125d5dfcb7b8c2659029395bdf",
218
+ ]
219
+ `)
220
+ expect(client.signPayloads).toMatchInlineSnapshot(`
221
+ [
222
+ "0x62f087d34b8a023e0461eb1b9a01267ba5b8400c13d2ffdac615ccec872cc288",
223
+ ]
224
+ `)
225
+ expect(result).toMatchInlineSnapshot(
226
+ `"0x76f86a010101825208d8d7942b5ad5c4795c026514f8317c7a215e218dccd6cf0180c0808080808080c0b8418b0c18077cb78666296a4c0e8149935124f70d7820ec4e4ae81de428659d6c305c098dea43ccb536e813bb1c136eab5e96611de69489be6291169b2bb2318cde1b"`,
227
+ )
228
+ })
229
+
147
230
  test('default: authorizeAccessKey signs with the connected Privy account', async () => {
148
231
  const { adapter, client, store } = setup()
149
232
  store.setState({ accounts: [{ address }], activeAccount: 0 })
@@ -386,6 +469,51 @@ describe('privy', () => {
386
469
  expect(store.getState().accounts).toMatchInlineSnapshot(`[]`)
387
470
  })
388
471
 
472
+ test('behavior: failed account selection does not poison silent restore cache', async () => {
473
+ const { adapter, store } = setup({ loadAddresses: [other] })
474
+ store.setState({ accounts: [{ address: other }], activeAccount: 0 })
475
+
476
+ await expect(
477
+ adapter.actions.loadAccounts(undefined, { method: 'wallet_connect', params: undefined }),
478
+ ).rejects.toThrowErrorMatchingInlineSnapshot(
479
+ `[Provider.UnauthorizedError: Privy callback returned address "${other}" that was not found in the user's embedded wallets.]`,
480
+ )
481
+
482
+ await expect(
483
+ adapter.actions.signPersonalMessage(
484
+ { address: other, data: '0x68656c6c6f' },
485
+ { method: 'personal_sign', params: ['0x68656c6c6f', other] },
486
+ ),
487
+ ).rejects.toMatchInlineSnapshot(
488
+ '[Provider.DisconnectedError: Privy session no longer matches persisted accounts.]',
489
+ )
490
+ expect(store.getState().accounts).toMatchInlineSnapshot(`[]`)
491
+ })
492
+
493
+ test('behavior: failed empty createAccount selection does not poison silent restore cache', async () => {
494
+ const { adapter, store } = setup({ createAddresses: [] })
495
+ store.setState({ accounts: [{ address: other }], activeAccount: 0 })
496
+
497
+ await expect(
498
+ adapter.actions.createAccount(
499
+ { digest: '0x1234', name: 'Ada' },
500
+ { method: 'wallet_connect', params: undefined },
501
+ ),
502
+ ).rejects.toThrowErrorMatchingInlineSnapshot(
503
+ `[Provider.DisconnectedError: Privy returned no wallet.]`,
504
+ )
505
+
506
+ await expect(
507
+ adapter.actions.signPersonalMessage(
508
+ { address: other, data: '0x68656c6c6f' },
509
+ { method: 'personal_sign', params: ['0x68656c6c6f', other] },
510
+ ),
511
+ ).rejects.toMatchInlineSnapshot(
512
+ '[Provider.DisconnectedError: Privy session no longer matches persisted accounts.]',
513
+ )
514
+ expect(store.getState().accounts).toMatchInlineSnapshot(`[]`)
515
+ })
516
+
389
517
  test('error: silent restore rejects non-hex secp256k1_sign results', async () => {
390
518
  const { adapter, store } = setup({ signResult: 'not-hex' })
391
519
  store.setState({ accounts: [{ address }], activeAccount: 0 })
@@ -410,8 +538,8 @@ describe('privy', () => {
410
538
  })
411
539
 
412
540
  test('error: malformed secp256k1_sign result is rejected by signer recovery', async () => {
413
- const { adapter } = setup({ signResult: '0x1234' })
414
- await adapter.actions.loadAccounts(undefined, { method: 'wallet_connect', params: undefined })
541
+ const { adapter, store } = setup({ signResult: '0x1234' })
542
+ await connect({ adapter, store })
415
543
 
416
544
  await expect(
417
545
  adapter.actions.signPersonalMessage(
@@ -424,8 +552,8 @@ describe('privy', () => {
424
552
  })
425
553
 
426
554
  test('error: signing for an unconnected address while others are connected throws Unauthorized', async () => {
427
- const { adapter } = setup()
428
- await adapter.actions.loadAccounts(undefined, { method: 'wallet_connect', params: undefined })
555
+ const { adapter, store } = setup()
556
+ await connect({ adapter, store })
429
557
 
430
558
  await expect(
431
559
  adapter.actions.signPersonalMessage(
@@ -478,8 +606,8 @@ describe('privy', () => {
478
606
  })
479
607
 
480
608
  test('error: signature recovered from a different key is rejected as Unauthorized', async () => {
481
- const { adapter } = setup({ signWithPrivateKey: privateKeyB })
482
- await adapter.actions.loadAccounts(undefined, { method: 'wallet_connect', params: undefined })
609
+ const { adapter, store } = setup({ signWithPrivateKey: privateKeyB })
610
+ await connect({ adapter, store })
483
611
 
484
612
  await expect(
485
613
  adapter.actions.signPersonalMessage(
@@ -503,12 +631,12 @@ function setup(options: setup.Options = {}) {
503
631
  : {
504
632
  createAccount: async () => {
505
633
  client.createCalls++
506
- return undefined
634
+ return options.createAddresses
507
635
  },
508
636
  }),
509
637
  loadAccounts: async () => {
510
638
  client.loadCalls++
511
- return undefined
639
+ return options.loadAddresses
512
640
  },
513
641
  })({
514
642
  getAccount: (() => {
@@ -527,10 +655,22 @@ function setup(options: setup.Options = {}) {
527
655
  return { adapter, client, store }
528
656
  }
529
657
 
658
+ async function connect(options: Pick<ReturnType<typeof setup>, 'adapter' | 'store'>) {
659
+ const { adapter, store } = options
660
+ const loaded = await adapter.actions.loadAccounts(undefined, {
661
+ method: 'wallet_connect',
662
+ params: undefined,
663
+ })
664
+ store.setState({ accounts: loaded.accounts, activeAccount: 0 })
665
+ return loaded
666
+ }
667
+
530
668
  declare namespace setup {
531
669
  type Options = {
532
670
  /** Pass `false` to omit the adapter's `createAccount` callback (tests fallback to `loadAccounts`). */
533
671
  createAccount?: false | undefined
672
+ createAddresses?: readonly Address[] | undefined
673
+ loadAddresses?: readonly Address[] | undefined
534
674
  /** Make the mock client's `user.get` throw, to test restore-side session errors. */
535
675
  restoreError?: unknown
536
676
  token?: string | null | undefined
@@ -1,14 +1,5 @@
1
- import {
2
- Address as core_Address,
3
- Hex,
4
- Provider as ox_Provider,
5
- PublicKey,
6
- RpcResponse,
7
- Secp256k1,
8
- Signature,
9
- WebCryptoP256,
10
- } from 'ox'
11
- import { KeyAuthorization, SignatureEnvelope } from 'ox/tempo'
1
+ import { Address as core_Address, Hex, Provider as ox_Provider, Secp256k1, Signature } from 'ox'
2
+ import { SignatureEnvelope } from 'ox/tempo'
12
3
  import { hashMessage, hashTypedData, isAddressEqual, keccak256 } from 'viem'
13
4
  import type { Address, LocalAccount } from 'viem/accounts'
14
5
  import { prepareTransactionRequest } from 'viem/actions'
@@ -79,7 +70,7 @@ export function privy<const client extends privy.Client>(
79
70
  return Adapter.define({ icon, name, rdns }, ({ getClient, store }) => {
80
71
  let privyClient_promise: Promise<client> | undefined
81
72
  let restore_promise: Promise<void> | undefined
82
- let walletAccounts: readonly privy.EmbeddedWallet[] = []
73
+ let walletAccounts: readonly privy.EmbeddedWallet[] | undefined
83
74
 
84
75
  async function getPrivyClient(): Promise<client> {
85
76
  privyClient_promise ??= (async () => {
@@ -96,9 +87,35 @@ export function privy<const client extends privy.Client>(
96
87
  }
97
88
  }
98
89
 
90
+ function toTempoAccount(account: privy.EmbeddedWallet) {
91
+ const address = core_Address.from(account.address)
92
+
93
+ async function sign(parameters: { hash: Hex.Hex }) {
94
+ return await signPayload({
95
+ payload: parameters.hash,
96
+ walletAccount: account,
97
+ })
98
+ }
99
+
100
+ return {
101
+ address,
102
+ sign,
103
+ signTransaction: async (transaction: unknown) =>
104
+ await privySignTransaction({ sign, transaction }),
105
+ source: 'privy',
106
+ type: 'local',
107
+ } satisfies {
108
+ address: Address
109
+ sign: (parameters: { hash: Hex.Hex }) => Promise<Hex.Hex>
110
+ signTransaction: (transaction: unknown) => Promise<Hex.Hex>
111
+ source: 'privy'
112
+ type: 'local'
113
+ }
114
+ }
115
+
99
116
  function clear() {
100
117
  restore_promise = undefined
101
- walletAccounts = []
118
+ walletAccounts = undefined
102
119
  store.setState({ accessKeys: [], accounts: [], activeAccount: 0 })
103
120
  }
104
121
 
@@ -179,7 +196,7 @@ export function privy<const client extends privy.Client>(
179
196
 
180
197
  async function restore() {
181
198
  await Store.waitForHydration(store)
182
- if (walletAccounts.length > 0) return
199
+ if (walletAccounts) return
183
200
  if (restore_promise) return await restore_promise
184
201
 
185
202
  restore_promise = (async () => {
@@ -197,7 +214,8 @@ export function privy<const client extends privy.Client>(
197
214
  clear()
198
215
  throw new ox_Provider.DisconnectedError({ message: 'Privy session expired.' })
199
216
  })
200
- walletAccounts = persisted
217
+ walletAccounts = restored
218
+ const accounts = persisted
201
219
  .map((account) =>
202
220
  restored.find((walletAccount) =>
203
221
  isAddressEqual(core_Address.from(walletAccount.address), account.address),
@@ -208,7 +226,7 @@ export function privy<const client extends privy.Client>(
208
226
  // If the persisted accounts no longer exist in Privy (different user
209
227
  // signed in, wallets removed), wipe the stale state so callers see a
210
228
  // clean disconnected state instead of ghost accounts without providers.
211
- if (walletAccounts.length === 0) {
229
+ if (accounts.length === 0) {
212
230
  clear()
213
231
  throw new ox_Provider.DisconnectedError({
214
232
  message: 'Privy session no longer matches persisted accounts.',
@@ -216,8 +234,8 @@ export function privy<const client extends privy.Client>(
216
234
  }
217
235
 
218
236
  store.setState({
219
- accounts: walletAccounts.map((account) => toStoreAccount(account)),
220
- activeAccount: Math.min(state.activeAccount, walletAccounts.length - 1),
237
+ accounts: accounts.map((account) => toStoreAccount(account)),
238
+ activeAccount: Math.min(state.activeAccount, accounts.length - 1),
221
239
  })
222
240
  })()
223
241
 
@@ -234,24 +252,31 @@ export function privy<const client extends privy.Client>(
234
252
  throw new ox_Provider.DisconnectedError({ message: 'Privy session expired.' })
235
253
  }
236
254
 
237
- async function accountForSigning(address: Address | undefined) {
255
+ async function getTempoAccount(address: Address | undefined) {
238
256
  await restore()
239
257
  await requireSession()
240
258
 
241
- const address_ = address ?? store.getState().accounts[store.getState().activeAccount]?.address
259
+ const state = store.getState()
260
+ const address_ = address ?? state.accounts[state.activeAccount]?.address
242
261
  if (!address_) throw new ox_Provider.DisconnectedError({ message: 'No accounts connected.' })
243
262
 
244
- const account = walletAccounts.find((account) =>
245
- isAddressEqual(core_Address.from(account.address), address_),
246
- )
247
- if (account) return account
248
-
249
- if (walletAccounts.length === 0)
263
+ if (state.accounts.length === 0)
250
264
  throw new ox_Provider.DisconnectedError({
251
265
  message: 'No Privy account connected.',
252
266
  })
253
267
 
254
- throw new ox_Provider.UnauthorizedError({ message: `Account "${address_}" not found.` })
268
+ const connected = state.accounts.some((account) => isAddressEqual(account.address, address_))
269
+ if (!connected)
270
+ throw new ox_Provider.UnauthorizedError({ message: `Account "${address_}" not found.` })
271
+
272
+ const account = (walletAccounts ?? []).find((account) =>
273
+ isAddressEqual(core_Address.from(account.address), address_),
274
+ )
275
+ if (account) return toTempoAccount(account)
276
+
277
+ throw new ox_Provider.DisconnectedError({
278
+ message: 'Privy session no longer matches persisted accounts.',
279
+ })
255
280
  }
256
281
 
257
282
  async function signPayload(parameters: {
@@ -303,110 +328,91 @@ export function privy<const client extends privy.Client>(
303
328
  return signature
304
329
  }
305
330
 
306
- /**
307
- * Builds, signs, and saves an access key authorization for the given Privy
308
- * wallet. Generates a local P256 key pair when no external key is provided.
309
- */
310
- async function authorizeAccessKeyFor(
311
- account: privy.EmbeddedWallet,
312
- options: Adapter.authorizeAccessKey.Parameters,
313
- ) {
314
- const { expiry, limits, scopes } = options
315
- const chainId = options.chainId ?? getClient().chain.id
316
-
317
- const prepared = await (async () => {
318
- if (options.publicKey || options.address) {
319
- const address =
320
- options.address ?? core_Address.fromPublicKey(PublicKey.from(options.publicKey!))
321
- return {
322
- keyAuthorization: KeyAuthorization.from({
323
- address,
324
- chainId: BigInt(chainId),
325
- expiry,
326
- limits,
327
- scopes,
328
- type: options.keyType ?? 'secp256k1',
329
- }),
330
- }
331
- }
332
-
333
- if (options.keyType && options.keyType !== 'p256')
334
- throw new RpcResponse.InvalidParamsError({
335
- message: `\`keyType: "${options.keyType}"\` requires externally generated key material; provide \`publicKey\` or \`address\`.`,
336
- })
337
-
338
- const keyPair = await WebCryptoP256.createKeyPair()
339
- const address = core_Address.fromPublicKey(PublicKey.from(keyPair.publicKey))
340
- return {
341
- keyAuthorization: KeyAuthorization.from({
342
- address,
343
- chainId: BigInt(chainId),
344
- expiry,
345
- limits,
346
- scopes,
347
- type: 'p256',
348
- }),
349
- keyPair,
350
- }
351
- })()
352
-
353
- const signature = await signPayload({
354
- payload: KeyAuthorization.getSignPayload(prepared.keyAuthorization),
355
- walletAccount: account,
356
- })
357
- const keyAuthorization = KeyAuthorization.from(prepared.keyAuthorization, {
358
- signature: SignatureEnvelope.from(signature),
359
- })
360
-
361
- AccessKey.add({
362
- account: core_Address.from(account.address),
363
- authorization: keyAuthorization,
364
- ...(prepared.keyPair ? { keyPair: prepared.keyPair } : {}),
365
- store,
366
- })
367
-
368
- return KeyAuthorization.toRpc(keyAuthorization)
369
- }
370
-
371
331
  async function signTransaction(parameters: Adapter.signTransaction.Parameters) {
372
- const account = await accountForSigning(parameters.from)
332
+ const account = await getTempoAccount(parameters.from)
373
333
  const { feePayer, ...rest } = parameters
374
334
  const viemClient = getClient({
375
335
  chainId: parameters.chainId,
376
336
  feePayer: feePayer === true ? undefined : feePayer,
377
337
  })
378
338
  const prepared = await prepareTransactionRequest(viemClient, {
379
- account: core_Address.from(account.address),
339
+ account: account.address,
380
340
  ...rest,
381
341
  ...(feePayer ? { feePayer: true } : {}),
382
342
  type: 'tempo',
383
343
  } as never)
384
- return await signPreparedTransaction(account, prepared)
344
+ return await account.signTransaction(prepared)
385
345
  }
386
346
 
387
- async function signPreparedTransaction(account: privy.EmbeddedWallet, prepared: unknown) {
347
+ async function privySignTransaction(parameters: {
348
+ sign: (parameters: { hash: Hex.Hex }) => Promise<Hex.Hex>
349
+ transaction: unknown
350
+ }) {
351
+ const { sign, transaction } = parameters
388
352
  const presign = (() => {
389
353
  if (
390
- prepared &&
391
- typeof prepared === 'object' &&
392
- 'feePayerSignature' in prepared &&
393
- prepared.feePayerSignature
354
+ transaction &&
355
+ typeof transaction === 'object' &&
356
+ 'feePayerSignature' in transaction &&
357
+ transaction.feePayerSignature
394
358
  )
395
- return { ...prepared, feePayerSignature: null }
396
- return prepared
359
+ return { ...transaction, feePayerSignature: null }
360
+ return transaction
397
361
  })()
398
362
  const unsignedTransaction = await TempoTransaction.serialize(presign as never)
399
363
 
400
- const signature = await signPayload({
401
- payload: keccak256(unsignedTransaction),
402
- walletAccount: account,
403
- })
364
+ const signature = await sign({ hash: keccak256(unsignedTransaction) })
404
365
  return await TempoTransaction.serialize(
405
- prepared as never,
366
+ transaction as never,
406
367
  SignatureEnvelope.from(Signature.fromHex(signature)) as never,
407
368
  )
408
369
  }
409
370
 
371
+ async function connectAccounts(parameters: {
372
+ addresses: privy.AccountSelection
373
+ authorizeAccessKey?: Adapter.authorizeAccessKey.Parameters | undefined
374
+ digest?: Hex.Hex | undefined
375
+ label?: string | undefined
376
+ noAccountsMessage?: string | undefined
377
+ personalSign?: { message: string } | undefined
378
+ privyClient: privy.Client
379
+ }) {
380
+ const { addresses, authorizeAccessKey, label, personalSign, privyClient } = parameters
381
+ await requireSession()
382
+ const wallets = await loadEthereumWallets(privyClient)
383
+ const selected = selectWalletAccounts(wallets, addresses)
384
+
385
+ const account = selected[0] ? toTempoAccount(selected[0]) : undefined
386
+ if (!account && parameters.noAccountsMessage)
387
+ throw new ox_Provider.DisconnectedError({
388
+ message: parameters.noAccountsMessage,
389
+ })
390
+
391
+ const digest = personalSign ? hashMessage(personalSign.message) : parameters.digest
392
+ const keyAuthorization =
393
+ authorizeAccessKey && account
394
+ ? await AccessKey.authorize({
395
+ account,
396
+ chainId: getClient().chain.id,
397
+ parameters: authorizeAccessKey,
398
+ store,
399
+ })
400
+ : undefined
401
+
402
+ const signature = digest && account ? await account.sign({ hash: digest }) : undefined
403
+ walletAccounts = wallets
404
+ restore_promise = undefined
405
+
406
+ return {
407
+ accounts: selected.map((account, index) =>
408
+ toStoreAccount(account, index === 0 ? label : undefined),
409
+ ),
410
+ ...(personalSign ? { personalSign: { message: personalSign.message } } : {}),
411
+ ...(keyAuthorization ? { keyAuthorization } : {}),
412
+ signature,
413
+ }
414
+ }
415
+
410
416
  async function prepareTransaction(parameters: Adapter.signTransaction.Parameters) {
411
417
  const viemClient = getClient({
412
418
  chainId: parameters.chainId,
@@ -530,38 +536,15 @@ export function privy<const client extends privy.Client>(
530
536
  ...(personalSign ? { personalSign } : {}),
531
537
  },
532
538
  })
533
- await requireSession()
534
- walletAccounts = selectWalletAccounts(await loadEthereumWallets(privyClient), addresses)
535
- // Drop any in-flight `restore()` (from a concurrent `accountForSigning`)
536
- // so re-entrant `restore()` calls don't `await` a stale IIFE that would
537
- // later overwrite `walletAccounts` with the intersection against
538
- // now-replaced persisted accounts.
539
- restore_promise = undefined
540
-
541
- const account = walletAccounts[0]
542
- if (!account)
543
- throw new ox_Provider.DisconnectedError({
544
- message: 'Privy returned no wallet.',
545
- })
546
-
547
- const digest = personalSign ? hashMessage(personalSign.message) : parameters.digest
548
- const keyAuthorization = authorizeAccessKey
549
- ? await authorizeAccessKeyFor(account, authorizeAccessKey)
550
- : undefined
551
-
552
- return {
553
- accounts: walletAccounts.map((wallet, index) =>
554
- toStoreAccount(wallet, index === 0 ? parameters.name : undefined),
555
- ),
556
- ...(personalSign ? { personalSign: { message: personalSign.message } } : {}),
557
- ...(keyAuthorization ? { keyAuthorization } : {}),
558
- signature: digest
559
- ? await signPayload({
560
- payload: digest,
561
- walletAccount: account,
562
- })
563
- : undefined,
564
- }
539
+ return await connectAccounts({
540
+ addresses,
541
+ ...(authorizeAccessKey ? { authorizeAccessKey } : {}),
542
+ ...(parameters.digest ? { digest: parameters.digest } : {}),
543
+ label: parameters.name,
544
+ ...(personalSign ? { personalSign } : {}),
545
+ privyClient,
546
+ noAccountsMessage: 'Privy returned no wallet.',
547
+ })
565
548
  },
566
549
  async loadAccounts(parameters) {
567
550
  const { authorizeAccessKey, personalSign } =
@@ -574,56 +557,29 @@ export function privy<const client extends privy.Client>(
574
557
 
575
558
  const privyClient = await getPrivyClient()
576
559
  const addresses = await options.loadAccounts({ client: privyClient, parameters })
577
- await requireSession()
578
- walletAccounts = selectWalletAccounts(await loadEthereumWallets(privyClient), addresses)
579
- // Drop any in-flight `restore()` (from a concurrent `accountForSigning`)
580
- // so re-entrant `restore()` calls don't `await` a stale IIFE that would
581
- // later overwrite `walletAccounts` with the intersection against
582
- // now-replaced persisted accounts.
583
- restore_promise = undefined
584
-
585
- const digest = personalSign ? hashMessage(personalSign.message) : parameters?.digest
586
- const account = walletAccounts[0]
587
- const keyAuthorization =
588
- authorizeAccessKey && account
589
- ? await authorizeAccessKeyFor(account, authorizeAccessKey)
590
- : undefined
591
-
592
- return {
593
- accounts: walletAccounts.map((account) => toStoreAccount(account)),
594
- ...(personalSign ? { personalSign: { message: personalSign.message } } : {}),
595
- ...(keyAuthorization ? { keyAuthorization } : {}),
596
- signature:
597
- digest && account
598
- ? await signPayload({
599
- payload: digest,
600
- walletAccount: account,
601
- })
602
- : undefined,
603
- }
560
+ return await connectAccounts({
561
+ addresses,
562
+ ...(authorizeAccessKey ? { authorizeAccessKey } : {}),
563
+ ...(parameters?.digest ? { digest: parameters.digest } : {}),
564
+ ...(personalSign ? { personalSign } : {}),
565
+ privyClient,
566
+ })
604
567
  },
605
568
  async authorizeAccessKey(parameters) {
606
- const account = await accountForSigning(undefined)
607
- const keyAuthorization = await authorizeAccessKeyFor(account, parameters)
608
- return { keyAuthorization, rootAddress: core_Address.from(account.address) }
569
+ const account = await getTempoAccount(undefined)
570
+ const keyAuthorization = await AccessKey.authorize({
571
+ account,
572
+ chainId: getClient().chain.id,
573
+ parameters,
574
+ store,
575
+ })
576
+ return { keyAuthorization, rootAddress: account.address }
609
577
  },
610
578
  async revokeAccessKey(parameters) {
611
- const account = await accountForSigning(parameters.address)
612
- const account_tempo = {
613
- address: core_Address.from(account.address),
614
- source: 'privy',
615
- signTransaction: async (request: unknown) =>
616
- await signPreparedTransaction(account, request),
617
- type: 'local',
618
- } satisfies {
619
- address: Address
620
- signTransaction: (request: unknown) => Promise<Hex.Hex>
621
- source: 'privy'
622
- type: 'local'
623
- }
579
+ const account = await getTempoAccount(parameters.address)
624
580
  try {
625
581
  await Actions.accessKey.revoke(getClient(), {
626
- account: account_tempo as LocalAccount<'privy'>,
582
+ account: account as LocalAccount<'privy'>,
627
583
  accessKey: parameters.accessKeyAddress,
628
584
  })
629
585
  } catch (error) {
@@ -631,32 +587,32 @@ export function privy<const client extends privy.Client>(
631
587
  }
632
588
  AccessKey.remove({
633
589
  accessKey: parameters.accessKeyAddress,
634
- account: core_Address.from(account.address),
590
+ account: account.address,
635
591
  chainId: store.getState().chainId,
636
592
  store,
637
593
  })
638
594
  },
639
595
  async signPersonalMessage(parameters) {
640
- const account = await accountForSigning(parameters.address)
641
- return await signPayload({
642
- payload: hashMessage({ raw: parameters.data }),
643
- walletAccount: account,
596
+ return await (
597
+ await getTempoAccount(parameters.address)
598
+ ).sign({
599
+ hash: hashMessage({ raw: parameters.data }),
644
600
  })
645
601
  },
646
602
  async signTransaction(parameters) {
647
603
  return await (await prepareTransaction(parameters)).sign()
648
604
  },
649
605
  async signTypedData(parameters) {
650
- const account = await accountForSigning(parameters.address)
651
606
  const typedData = JSON.parse(parameters.data) as {
652
607
  domain: Record<string, unknown>
653
608
  message: Record<string, unknown>
654
609
  primaryType: string
655
610
  types: Record<string, unknown>
656
611
  }
657
- return await signPayload({
658
- payload: hashTypedData(typedData as never),
659
- walletAccount: account,
612
+ return await (
613
+ await getTempoAccount(parameters.address)
614
+ ).sign({
615
+ hash: hashTypedData(typedData as never),
660
616
  })
661
617
  },
662
618
  async sendTransaction(parameters) {