viem 2.21.13 → 2.21.14
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 +6 -0
 - package/_cjs/errors/version.js +1 -1
 - package/_cjs/experimental/eip7702/actions/signAuthorization.js +5 -1
 - package/_cjs/experimental/eip7702/actions/signAuthorization.js.map +1 -1
 - package/_esm/errors/version.js +1 -1
 - package/_esm/experimental/eip7702/actions/signAuthorization.js +5 -1
 - package/_esm/experimental/eip7702/actions/signAuthorization.js.map +1 -1
 - package/_types/errors/version.d.ts +1 -1
 - package/_types/experimental/eip7702/actions/signAuthorization.d.ts +5 -1
 - package/_types/experimental/eip7702/actions/signAuthorization.d.ts.map +1 -1
 - package/errors/version.ts +1 -1
 - package/experimental/eip7702/actions/signAuthorization.ts +12 -1
 - package/package.json +1 -1
 
    
        package/CHANGELOG.md
    CHANGED
    
    | 
         @@ -1,5 +1,11 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            # viem
         
     | 
| 
       2 
2 
     | 
    
         | 
| 
      
 3 
     | 
    
         
            +
            ## 2.21.14
         
     | 
| 
      
 4 
     | 
    
         
            +
             
     | 
| 
      
 5 
     | 
    
         
            +
            ### Patch Changes
         
     | 
| 
      
 6 
     | 
    
         
            +
             
     | 
| 
      
 7 
     | 
    
         
            +
            - [`c7c737a4`](https://github.com/wevm/viem/commit/c7c737a472a7b5a46b12340071f9e9480d3975dd) Thanks [@jxom](https://github.com/jxom)! - Added `delegate` parameter to `signAuthorization`.
         
     | 
| 
      
 8 
     | 
    
         
            +
             
     | 
| 
       3 
9 
     | 
    
         
             
            ## 2.21.13
         
     | 
| 
       4 
10 
     | 
    
         | 
| 
       5 
11 
     | 
    
         
             
            ### Patch Changes
         
     | 
    
        package/_cjs/errors/version.js
    CHANGED
    
    
| 
         @@ -5,14 +5,16 @@ const parseAccount_js_1 = require("../../../accounts/utils/parseAccount.js"); 
     | 
|
| 
       5 
5 
     | 
    
         
             
            const getChainId_js_1 = require("../../../actions/public/getChainId.js");
         
     | 
| 
       6 
6 
     | 
    
         
             
            const getTransactionCount_js_1 = require("../../../actions/public/getTransactionCount.js");
         
     | 
| 
       7 
7 
     | 
    
         
             
            const account_js_1 = require("../../../errors/account.js");
         
     | 
| 
      
 8 
     | 
    
         
            +
            const isAddressEqual_js_1 = require("../../../utils/address/isAddressEqual.js");
         
     | 
| 
       8 
9 
     | 
    
         
             
            const getAction_js_1 = require("../../../utils/getAction.js");
         
     | 
| 
       9 
10 
     | 
    
         
             
            async function signAuthorization(client, parameters) {
         
     | 
| 
       10 
     | 
    
         
            -
                const { account: account_ = client.account, contractAddress, chainId, nonce, } = parameters;
         
     | 
| 
      
 11 
     | 
    
         
            +
                const { account: account_ = client.account, contractAddress, chainId, nonce, delegate: delegate_, } = parameters;
         
     | 
| 
       11 
12 
     | 
    
         
             
                if (!account_)
         
     | 
| 
       12 
13 
     | 
    
         
             
                    throw new account_js_1.AccountNotFoundError({
         
     | 
| 
       13 
14 
     | 
    
         
             
                        docsPath: '/experimental/eip7702/signAuthorization',
         
     | 
| 
       14 
15 
     | 
    
         
             
                    });
         
     | 
| 
       15 
16 
     | 
    
         
             
                const account = (0, parseAccount_js_1.parseAccount)(account_);
         
     | 
| 
      
 17 
     | 
    
         
            +
                const delegate = delegate_ ? (0, parseAccount_js_1.parseAccount)(delegate_) : undefined;
         
     | 
| 
       16 
18 
     | 
    
         
             
                if (!account.experimental_signAuthorization)
         
     | 
| 
       17 
19 
     | 
    
         
             
                    throw new account_js_1.AccountTypeNotSupportedError({
         
     | 
| 
       18 
20 
     | 
    
         
             
                        docsPath: '/experimental/eip7702/signAuthorization',
         
     | 
| 
         @@ -35,6 +37,8 @@ async function signAuthorization(client, parameters) { 
     | 
|
| 
       35 
37 
     | 
    
         
             
                        address: account.address,
         
     | 
| 
       36 
38 
     | 
    
         
             
                        blockTag: 'pending',
         
     | 
| 
       37 
39 
     | 
    
         
             
                    });
         
     | 
| 
      
 40 
     | 
    
         
            +
                    if (!delegate || (0, isAddressEqual_js_1.isAddressEqual)(account.address, delegate.address))
         
     | 
| 
      
 41 
     | 
    
         
            +
                        authorization.nonce += 1;
         
     | 
| 
       38 
42 
     | 
    
         
             
                }
         
     | 
| 
       39 
43 
     | 
    
         
             
                return account.experimental_signAuthorization(authorization);
         
     | 
| 
       40 
44 
     | 
    
         
             
            }
         
     | 
| 
         @@ -1 +1 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            {"version":3,"file":"signAuthorization.js","sourceRoot":"","sources":["../../../../experimental/eip7702/actions/signAuthorization.ts"],"names":[],"mappings":";; 
     | 
| 
      
 1 
     | 
    
         
            +
            {"version":3,"file":"signAuthorization.js","sourceRoot":"","sources":["../../../../experimental/eip7702/actions/signAuthorization.ts"],"names":[],"mappings":";;AAyFA,8CAyDC;AAhJD,6EAGgD;AAKhD,yEAAkE;AAClE,2FAAoF;AAGpF,2DAKmC;AAKnC,gFAAyE;AAEzE,8DAAuD;AA+DhD,KAAK,UAAU,iBAAiB,CAIrC,MAAyC,EACzC,UAAgD;IAEhD,MAAM,EACJ,OAAO,EAAE,QAAQ,GAAG,MAAM,CAAC,OAAO,EAClC,eAAe,EACf,OAAO,EACP,KAAK,EACL,QAAQ,EAAE,SAAS,GACpB,GAAG,UAAU,CAAA;IAEd,IAAI,CAAC,QAAQ;QACX,MAAM,IAAI,iCAAoB,CAAC;YAC7B,QAAQ,EAAE,yCAAyC;SACpD,CAAC,CAAA;IACJ,MAAM,OAAO,GAAG,IAAA,8BAAY,EAAC,QAAQ,CAAC,CAAA;IAEtC,MAAM,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,IAAA,8BAAY,EAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAEhE,IAAI,CAAC,OAAO,CAAC,8BAA8B;QACzC,MAAM,IAAI,yCAA4B,CAAC;YACrC,QAAQ,EAAE,yCAAyC;YACnD,YAAY,EAAE;gBACZ,oEAAoE;aACrE;YACD,IAAI,EAAE,OAAO,CAAC,IAAI;SACnB,CAAC,CAAA;IAEJ,MAAM,aAAa,GAAG;QACpB,eAAe;QACf,OAAO;QACP,KAAK;KACW,CAAA;IAElB,IAAI,OAAO,aAAa,CAAC,OAAO,KAAK,WAAW;QAC9C,aAAa,CAAC,OAAO;YACnB,MAAM,CAAC,KAAK,EAAE,EAAE;gBAChB,CAAC,MAAM,IAAA,wBAAS,EAAC,MAAM,EAAE,0BAAU,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IAE3D,IAAI,OAAO,aAAa,CAAC,KAAK,KAAK,WAAW,EAAE,CAAC;QAC/C,aAAa,CAAC,KAAK,GAAG,MAAM,IAAA,wBAAS,EACnC,MAAM,EACN,4CAAmB,EACnB,qBAAqB,CACtB,CAAC;YACA,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,QAAQ,EAAE,SAAS;SACpB,CAAC,CAAA;QACF,IAAI,CAAC,QAAQ,IAAI,IAAA,kCAAc,EAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC;YAChE,aAAa,CAAC,KAAK,IAAI,CAAC,CAAA;IAC5B,CAAC;IAED,OAAO,OAAO,CAAC,8BAA8B,CAAC,aAAa,CAAC,CAAA;AAC9D,CAAC"}
         
     | 
    
        package/_esm/errors/version.js
    CHANGED
    
    | 
         @@ -1,2 +1,2 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            export const version = '2.21. 
     | 
| 
      
 1 
     | 
    
         
            +
            export const version = '2.21.14';
         
     | 
| 
       2 
2 
     | 
    
         
             
            //# sourceMappingURL=version.js.map
         
     | 
| 
         @@ -2,6 +2,7 @@ import { parseAccount, } from '../../../accounts/utils/parseAccount.js'; 
     | 
|
| 
       2 
2 
     | 
    
         
             
            import { getChainId } from '../../../actions/public/getChainId.js';
         
     | 
| 
       3 
3 
     | 
    
         
             
            import { getTransactionCount } from '../../../actions/public/getTransactionCount.js';
         
     | 
| 
       4 
4 
     | 
    
         
             
            import { AccountNotFoundError, AccountTypeNotSupportedError, } from '../../../errors/account.js';
         
     | 
| 
      
 5 
     | 
    
         
            +
            import { isAddressEqual } from '../../../utils/address/isAddressEqual.js';
         
     | 
| 
       5 
6 
     | 
    
         
             
            import { getAction } from '../../../utils/getAction.js';
         
     | 
| 
       6 
7 
     | 
    
         
             
            /**
         
     | 
| 
       7 
8 
     | 
    
         
             
             * Signs an [EIP-7702 Authorization](https://eips.ethereum.org/EIPS/eip-7702) object.
         
     | 
| 
         @@ -46,12 +47,13 @@ import { getAction } from '../../../utils/getAction.js'; 
     | 
|
| 
       46 
47 
     | 
    
         
             
             * })
         
     | 
| 
       47 
48 
     | 
    
         
             
             */
         
     | 
| 
       48 
49 
     | 
    
         
             
            export async function signAuthorization(client, parameters) {
         
     | 
| 
       49 
     | 
    
         
            -
                const { account: account_ = client.account, contractAddress, chainId, nonce, } = parameters;
         
     | 
| 
      
 50 
     | 
    
         
            +
                const { account: account_ = client.account, contractAddress, chainId, nonce, delegate: delegate_, } = parameters;
         
     | 
| 
       50 
51 
     | 
    
         
             
                if (!account_)
         
     | 
| 
       51 
52 
     | 
    
         
             
                    throw new AccountNotFoundError({
         
     | 
| 
       52 
53 
     | 
    
         
             
                        docsPath: '/experimental/eip7702/signAuthorization',
         
     | 
| 
       53 
54 
     | 
    
         
             
                    });
         
     | 
| 
       54 
55 
     | 
    
         
             
                const account = parseAccount(account_);
         
     | 
| 
      
 56 
     | 
    
         
            +
                const delegate = delegate_ ? parseAccount(delegate_) : undefined;
         
     | 
| 
       55 
57 
     | 
    
         
             
                if (!account.experimental_signAuthorization)
         
     | 
| 
       56 
58 
     | 
    
         
             
                    throw new AccountTypeNotSupportedError({
         
     | 
| 
       57 
59 
     | 
    
         
             
                        docsPath: '/experimental/eip7702/signAuthorization',
         
     | 
| 
         @@ -74,6 +76,8 @@ export async function signAuthorization(client, parameters) { 
     | 
|
| 
       74 
76 
     | 
    
         
             
                        address: account.address,
         
     | 
| 
       75 
77 
     | 
    
         
             
                        blockTag: 'pending',
         
     | 
| 
       76 
78 
     | 
    
         
             
                    });
         
     | 
| 
      
 79 
     | 
    
         
            +
                    if (!delegate || isAddressEqual(account.address, delegate.address))
         
     | 
| 
      
 80 
     | 
    
         
            +
                        authorization.nonce += 1;
         
     | 
| 
       77 
81 
     | 
    
         
             
                }
         
     | 
| 
       78 
82 
     | 
    
         
             
                return account.experimental_signAuthorization(authorization);
         
     | 
| 
       79 
83 
     | 
    
         
             
            }
         
     | 
| 
         @@ -1 +1 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            {"version":3,"file":"signAuthorization.js","sourceRoot":"","sources":["../../../../experimental/eip7702/actions/signAuthorization.ts"],"names":[],"mappings":" 
     | 
| 
      
 1 
     | 
    
         
            +
            {"version":3,"file":"signAuthorization.js","sourceRoot":"","sources":["../../../../experimental/eip7702/actions/signAuthorization.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,YAAY,GACb,MAAM,yCAAyC,CAAA;AAKhD,OAAO,EAAE,UAAU,EAAE,MAAM,uCAAuC,CAAA;AAClE,OAAO,EAAE,mBAAmB,EAAE,MAAM,gDAAgD,CAAA;AAGpF,OAAO,EACL,oBAAoB,EAEpB,4BAA4B,GAE7B,MAAM,4BAA4B,CAAA;AAKnC,OAAO,EAAE,cAAc,EAAE,MAAM,0CAA0C,CAAA;AAEzE,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AAqBvD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAIrC,MAAyC,EACzC,UAAgD;IAEhD,MAAM,EACJ,OAAO,EAAE,QAAQ,GAAG,MAAM,CAAC,OAAO,EAClC,eAAe,EACf,OAAO,EACP,KAAK,EACL,QAAQ,EAAE,SAAS,GACpB,GAAG,UAAU,CAAA;IAEd,IAAI,CAAC,QAAQ;QACX,MAAM,IAAI,oBAAoB,CAAC;YAC7B,QAAQ,EAAE,yCAAyC;SACpD,CAAC,CAAA;IACJ,MAAM,OAAO,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAA;IAEtC,MAAM,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAEhE,IAAI,CAAC,OAAO,CAAC,8BAA8B;QACzC,MAAM,IAAI,4BAA4B,CAAC;YACrC,QAAQ,EAAE,yCAAyC;YACnD,YAAY,EAAE;gBACZ,oEAAoE;aACrE;YACD,IAAI,EAAE,OAAO,CAAC,IAAI;SACnB,CAAC,CAAA;IAEJ,MAAM,aAAa,GAAG;QACpB,eAAe;QACf,OAAO;QACP,KAAK;KACW,CAAA;IAElB,IAAI,OAAO,aAAa,CAAC,OAAO,KAAK,WAAW;QAC9C,aAAa,CAAC,OAAO;YACnB,MAAM,CAAC,KAAK,EAAE,EAAE;gBAChB,CAAC,MAAM,SAAS,CAAC,MAAM,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IAE3D,IAAI,OAAO,aAAa,CAAC,KAAK,KAAK,WAAW,EAAE,CAAC;QAC/C,aAAa,CAAC,KAAK,GAAG,MAAM,SAAS,CACnC,MAAM,EACN,mBAAmB,EACnB,qBAAqB,CACtB,CAAC;YACA,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,QAAQ,EAAE,SAAS;SACpB,CAAC,CAAA;QACF,IAAI,CAAC,QAAQ,IAAI,cAAc,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC;YAChE,aAAa,CAAC,KAAK,IAAI,CAAC,CAAA;IAC5B,CAAC;IAED,OAAO,OAAO,CAAC,8BAA8B,CAAC,aAAa,CAAC,CAAA;AAC9D,CAAC"}
         
     | 
| 
         @@ -1,2 +1,2 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            export declare const version = "2.21. 
     | 
| 
      
 1 
     | 
    
         
            +
            export declare const version = "2.21.14";
         
     | 
| 
       2 
2 
     | 
    
         
             
            //# sourceMappingURL=version.d.ts.map
         
     | 
| 
         @@ -1,3 +1,4 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            import type { Address } from 'abitype';
         
     | 
| 
       1 
2 
     | 
    
         
             
            import type { Account } from '../../../accounts/types.js';
         
     | 
| 
       2 
3 
     | 
    
         
             
            import { type ParseAccountErrorType } from '../../../accounts/utils/parseAccount.js';
         
     | 
| 
       3 
4 
     | 
    
         
             
            import type { SignAuthorizationErrorType as SignAuthorizationErrorType_account, SignAuthorizationReturnType as SignAuthorizationReturnType_account } from '../../../accounts/utils/signAuthorization.js';
         
     | 
| 
         @@ -10,7 +11,10 @@ import type { Chain } from '../../../types/chain.js'; 
     | 
|
| 
       10 
11 
     | 
    
         
             
            import type { PartialBy } from '../../../types/utils.js';
         
     | 
| 
       11 
12 
     | 
    
         
             
            import type { RequestErrorType } from '../../../utils/buildRequest.js';
         
     | 
| 
       12 
13 
     | 
    
         
             
            import type { Authorization } from '../types/authorization.js';
         
     | 
| 
       13 
     | 
    
         
            -
            export type SignAuthorizationParameters<account extends Account | undefined = Account | undefined> = GetAccountParameter<account> & PartialBy<Authorization, 'chainId' | 'nonce' 
     | 
| 
      
 14 
     | 
    
         
            +
            export type SignAuthorizationParameters<account extends Account | undefined = Account | undefined> = GetAccountParameter<account> & PartialBy<Authorization, 'chainId' | 'nonce'> & {
         
     | 
| 
      
 15 
     | 
    
         
            +
                /** Delegate of the EIP-7702 Authorization Transaction. @default `account` */
         
     | 
| 
      
 16 
     | 
    
         
            +
                delegate?: Address | Account | undefined;
         
     | 
| 
      
 17 
     | 
    
         
            +
            };
         
     | 
| 
       14 
18 
     | 
    
         
             
            export type SignAuthorizationReturnType = SignAuthorizationReturnType_account;
         
     | 
| 
       15 
19 
     | 
    
         
             
            export type SignAuthorizationErrorType = ParseAccountErrorType | RequestErrorType | AccountNotFoundErrorType | AccountTypeNotSupportedErrorType | SignAuthorizationErrorType_account | ErrorType;
         
     | 
| 
       16 
20 
     | 
    
         
             
            /**
         
     | 
| 
         @@ -1 +1 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            {"version":3,"file":"signAuthorization.d.ts","sourceRoot":"","sources":["../../../../experimental/eip7702/actions/signAuthorization.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AACzD,OAAO,EACL,KAAK,qBAAqB,EAE3B,MAAM,yCAAyC,CAAA;AAChD,OAAO,KAAK,EACV,0BAA0B,IAAI,kCAAkC,EAChE,2BAA2B,IAAI,mCAAmC,EACnE,MAAM,8CAA8C,CAAA;AAGrD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAA;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gDAAgD,CAAA;AAC/E,OAAO,EAEL,KAAK,wBAAwB,EAE7B,KAAK,gCAAgC,EACtC,MAAM,4BAA4B,CAAA;AACnC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAA;AACpE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAA;AACpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA; 
     | 
| 
      
 1 
     | 
    
         
            +
            {"version":3,"file":"signAuthorization.d.ts","sourceRoot":"","sources":["../../../../experimental/eip7702/actions/signAuthorization.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AACzD,OAAO,EACL,KAAK,qBAAqB,EAE3B,MAAM,yCAAyC,CAAA;AAChD,OAAO,KAAK,EACV,0BAA0B,IAAI,kCAAkC,EAChE,2BAA2B,IAAI,mCAAmC,EACnE,MAAM,8CAA8C,CAAA;AAGrD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAA;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gDAAgD,CAAA;AAC/E,OAAO,EAEL,KAAK,wBAAwB,EAE7B,KAAK,gCAAgC,EACtC,MAAM,4BAA4B,CAAA;AACnC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAA;AACpE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAA;AACpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAExD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AAEtE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAE9D,MAAM,MAAM,2BAA2B,CACrC,OAAO,SAAS,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,IACvD,mBAAmB,CAAC,OAAO,CAAC,GAC9B,SAAS,CAAC,aAAa,EAAE,SAAS,GAAG,OAAO,CAAC,GAAG;IAC9C,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,SAAS,CAAA;CACzC,CAAA;AAEH,MAAM,MAAM,2BAA2B,GAAG,mCAAmC,CAAA;AAE7E,MAAM,MAAM,0BAA0B,GAClC,qBAAqB,GACrB,gBAAgB,GAChB,wBAAwB,GACxB,gCAAgC,GAChC,kCAAkC,GAClC,SAAS,CAAA;AAEb;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,wBAAsB,iBAAiB,CACrC,KAAK,SAAS,KAAK,GAAG,SAAS,EAC/B,OAAO,SAAS,OAAO,GAAG,SAAS,EAEnC,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,EACzC,UAAU,EAAE,2BAA2B,CAAC,OAAO,CAAC,GAC/C,OAAO,CAAC,2BAA2B,CAAC,CAmDtC"}
         
     | 
    
        package/errors/version.ts
    CHANGED
    
    | 
         @@ -1 +1 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            export const version = '2.21. 
     | 
| 
      
 1 
     | 
    
         
            +
            export const version = '2.21.14'
         
     | 
| 
         @@ -1,3 +1,4 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            import type { Address } from 'abitype'
         
     | 
| 
       1 
2 
     | 
    
         
             
            import type { Account } from '../../../accounts/types.js'
         
     | 
| 
       2 
3 
     | 
    
         
             
            import {
         
     | 
| 
       3 
4 
     | 
    
         
             
              type ParseAccountErrorType,
         
     | 
| 
         @@ -21,13 +22,18 @@ import type { ErrorType } from '../../../errors/utils.js' 
     | 
|
| 
       21 
22 
     | 
    
         
             
            import type { GetAccountParameter } from '../../../types/account.js'
         
     | 
| 
       22 
23 
     | 
    
         
             
            import type { Chain } from '../../../types/chain.js'
         
     | 
| 
       23 
24 
     | 
    
         
             
            import type { PartialBy } from '../../../types/utils.js'
         
     | 
| 
      
 25 
     | 
    
         
            +
            import { isAddressEqual } from '../../../utils/address/isAddressEqual.js'
         
     | 
| 
       24 
26 
     | 
    
         
             
            import type { RequestErrorType } from '../../../utils/buildRequest.js'
         
     | 
| 
       25 
27 
     | 
    
         
             
            import { getAction } from '../../../utils/getAction.js'
         
     | 
| 
       26 
28 
     | 
    
         
             
            import type { Authorization } from '../types/authorization.js'
         
     | 
| 
       27 
29 
     | 
    
         | 
| 
       28 
30 
     | 
    
         
             
            export type SignAuthorizationParameters<
         
     | 
| 
       29 
31 
     | 
    
         
             
              account extends Account | undefined = Account | undefined,
         
     | 
| 
       30 
     | 
    
         
            -
            > = GetAccountParameter<account> & 
     | 
| 
      
 32 
     | 
    
         
            +
            > = GetAccountParameter<account> &
         
     | 
| 
      
 33 
     | 
    
         
            +
              PartialBy<Authorization, 'chainId' | 'nonce'> & {
         
     | 
| 
      
 34 
     | 
    
         
            +
                /** Delegate of the EIP-7702 Authorization Transaction. @default `account` */
         
     | 
| 
      
 35 
     | 
    
         
            +
                delegate?: Address | Account | undefined
         
     | 
| 
      
 36 
     | 
    
         
            +
              }
         
     | 
| 
       31 
37 
     | 
    
         | 
| 
       32 
38 
     | 
    
         
             
            export type SignAuthorizationReturnType = SignAuthorizationReturnType_account
         
     | 
| 
       33 
39 
     | 
    
         | 
| 
         @@ -93,6 +99,7 @@ export async function signAuthorization< 
     | 
|
| 
       93 
99 
     | 
    
         
             
                contractAddress,
         
     | 
| 
       94 
100 
     | 
    
         
             
                chainId,
         
     | 
| 
       95 
101 
     | 
    
         
             
                nonce,
         
     | 
| 
      
 102 
     | 
    
         
            +
                delegate: delegate_,
         
     | 
| 
       96 
103 
     | 
    
         
             
              } = parameters
         
     | 
| 
       97 
104 
     | 
    
         | 
| 
       98 
105 
     | 
    
         
             
              if (!account_)
         
     | 
| 
         @@ -101,6 +108,8 @@ export async function signAuthorization< 
     | 
|
| 
       101 
108 
     | 
    
         
             
                })
         
     | 
| 
       102 
109 
     | 
    
         
             
              const account = parseAccount(account_)
         
     | 
| 
       103 
110 
     | 
    
         | 
| 
      
 111 
     | 
    
         
            +
              const delegate = delegate_ ? parseAccount(delegate_) : undefined
         
     | 
| 
      
 112 
     | 
    
         
            +
             
     | 
| 
       104 
113 
     | 
    
         
             
              if (!account.experimental_signAuthorization)
         
     | 
| 
       105 
114 
     | 
    
         
             
                throw new AccountTypeNotSupportedError({
         
     | 
| 
       106 
115 
     | 
    
         
             
                  docsPath: '/experimental/eip7702/signAuthorization',
         
     | 
| 
         @@ -130,6 +139,8 @@ export async function signAuthorization< 
     | 
|
| 
       130 
139 
     | 
    
         
             
                  address: account.address,
         
     | 
| 
       131 
140 
     | 
    
         
             
                  blockTag: 'pending',
         
     | 
| 
       132 
141 
     | 
    
         
             
                })
         
     | 
| 
      
 142 
     | 
    
         
            +
                if (!delegate || isAddressEqual(account.address, delegate.address))
         
     | 
| 
      
 143 
     | 
    
         
            +
                  authorization.nonce += 1
         
     | 
| 
       133 
144 
     | 
    
         
             
              }
         
     | 
| 
       134 
145 
     | 
    
         | 
| 
       135 
146 
     | 
    
         
             
              return account.experimental_signAuthorization(authorization)
         
     |