@0xsequence/dapp-client 0.0.0-20251211205330 → 3.0.0-beta.10

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.
@@ -1,5 +1,5 @@
1
1
 
2
2
  
3
- > @0xsequence/dapp-client@0.0.0-20251211205330 build /Users/taylan/Development/Horizon/sequence.js/packages/wallet/dapp-client
3
+ > @0xsequence/dapp-client@3.0.0-beta.10 build /Users/taylan/Development/Horizon/sequence.js/packages/wallet/dapp-client
4
4
  > tsc
5
5
 
package/CHANGELOG.md CHANGED
@@ -1,21 +1,70 @@
1
1
  # @0xsequence/dapp-client
2
2
 
3
- ## 0.0.0-20251211205330
4
-
5
- ### Patch Changes
6
-
7
- - 7c6c811: 3.0.0-beta.3 with fixes
8
- - 98ce38b: 3.0.0-beta.2 with identity instrument updates
9
- - 6d5de25: 3.0.0-beta.1
10
- - 934acd1: RC5 upgrade
11
- - Updated dependencies [7c6c811]
12
- - Updated dependencies [98ce38b]
13
- - Updated dependencies [6d5de25]
14
- - Updated dependencies [934acd1]
15
- - @0xsequence/guard@0.0.0-20251211205330
16
- - @0xsequence/relayer@0.0.0-20251211205330
17
- - @0xsequence/wallet-core@0.0.0-20251211205330
18
- - @0xsequence/wallet-primitives@0.0.0-20251211205330
3
+ ## 3.0.0-beta.10
4
+
5
+ ### Patch Changes
6
+
7
+ - dapp-client updates
8
+ - Updated dependencies
9
+ - @0xsequence/guard@3.0.0-beta.10
10
+ - @0xsequence/relayer@3.0.0-beta.10
11
+ - @0xsequence/wallet-core@3.0.0-beta.10
12
+ - @0xsequence/wallet-primitives@3.0.0-beta.10
13
+
14
+ ## 3.0.0-beta.9
15
+
16
+ ### Patch Changes
17
+
18
+ - dapp client updates for EOA login
19
+ - Updated dependencies
20
+ - @0xsequence/guard@3.0.0-beta.9
21
+ - @0xsequence/relayer@3.0.0-beta.9
22
+ - @0xsequence/wallet-core@3.0.0-beta.9
23
+ - @0xsequence/wallet-primitives@3.0.0-beta.9
24
+
25
+ ## 3.0.0-beta.8
26
+
27
+ ### Patch Changes
28
+
29
+ - Apple auth fixes
30
+ - Updated dependencies
31
+ - @0xsequence/guard@3.0.0-beta.8
32
+ - @0xsequence/relayer@3.0.0-beta.8
33
+ - @0xsequence/wallet-core@3.0.0-beta.8
34
+ - @0xsequence/wallet-primitives@3.0.0-beta.8
35
+
36
+ ## 3.0.0-beta.7
37
+
38
+ ### Patch Changes
39
+
40
+ - Apple auth fix
41
+ - Updated dependencies
42
+ - @0xsequence/guard@3.0.0-beta.7
43
+ - @0xsequence/relayer@3.0.0-beta.7
44
+ - @0xsequence/wallet-core@3.0.0-beta.7
45
+ - @0xsequence/wallet-primitives@3.0.0-beta.7
46
+
47
+ ## 3.0.0-beta.6
48
+
49
+ ### Patch Changes
50
+
51
+ - Fix signer 404 error, minor fixes
52
+ - Updated dependencies
53
+ - @0xsequence/guard@3.0.0-beta.6
54
+ - @0xsequence/relayer@3.0.0-beta.6
55
+ - @0xsequence/wallet-core@3.0.0-beta.6
56
+ - @0xsequence/wallet-primitives@3.0.0-beta.6
57
+
58
+ ## 3.0.0-beta.5
59
+
60
+ ### Patch Changes
61
+
62
+ - Beta release for v3
63
+ - Updated dependencies
64
+ - @0xsequence/guard@3.0.0-beta.5
65
+ - @0xsequence/relayer@3.0.0-beta.5
66
+ - @0xsequence/wallet-core@3.0.0-beta.5
67
+ - @0xsequence/wallet-primitives@3.0.0-beta.5
19
68
 
20
69
  ## 3.0.0-beta.4
21
70
 
package/dist/index.d.ts CHANGED
@@ -1,12 +1,13 @@
1
1
  export { DappClient } from './DappClient.js';
2
2
  export type { DappClientEventListener } from './DappClient.js';
3
- export type { LoginMethod, GuardConfig, Transaction, SignatureResponse, SequenceSessionStorage, RandomPrivateKeyFn, SignMessagePayload, SessionResponse, AddExplicitSessionPayload, CreateNewSessionPayload, CreateNewSessionResponse, SignTypedDataPayload, ModifyExplicitSessionPayload, DappClientWalletActionEventListener, DappClientExplicitSessionEventListener, TransactionRequest, SendWalletTransactionPayload, SendWalletTransactionResponse, WalletActionResponse, GetFeeTokensResponse, FeeToken, FeeOption, } from './types/index.js';
4
- export { RequestActionType, TransportMode } from './types/index.js';
3
+ export type { LoginMethod, GuardConfig, Transaction, SignatureResponse, SequenceSessionStorage, RandomPrivateKeyFn, SignMessagePayload, SessionResponse, AddExplicitSessionPayload, CreateNewSessionPayload, CreateNewSessionResponse, SignTypedDataPayload, ModifyExplicitSessionPayload, DappClientWalletActionEventListener, DappClientExplicitSessionEventListener, TransactionRequest, SendWalletTransactionPayload, SendWalletTransactionResponse, WalletActionResponse, GetFeeTokensResponse, FeeToken, FeeOption, TransportMessage, } from './types/index.js';
4
+ export { RequestActionType, TransportMode, MessageType } from './types/index.js';
5
5
  export { FeeOptionError, TransactionError, AddExplicitSessionError, ConnectionError, InitializationError, SigningError, ModifyExplicitSessionError, } from './utils/errors.js';
6
- export { getExplorerUrl, jsonReplacers, jsonRevivers } from './utils/index.js';
6
+ export { createExplicitSessionConfig, getExplorerUrl, getNetwork, getRelayerUrl, getRpcUrl, jsonReplacers, jsonRevivers, VALUE_FORWARDER_ADDRESS, } from './utils/index.js';
7
+ export type { ExplicitSessionParams, NativeTokenSpending, SessionDuration } from './utils/index.js';
7
8
  export type { SequenceStorage, ExplicitSessionData, ImplicitSessionData, SessionlessConnectionData, PendingRequestContext, PendingPayload, } from './utils/storage.js';
8
9
  export { WebStorage } from './utils/storage.js';
9
- export { Attestation, Permission, Extensions, SessionConfig, Constants, Payload } from '@0xsequence/wallet-primitives';
10
+ export { Attestation, Permission, Extensions, SessionConfig, Constants, Payload, Network, } from '@0xsequence/wallet-primitives';
10
11
  export type { ExplicitSessionConfig, ExplicitSession, ImplicitSession, Session } from '@0xsequence/wallet-core';
11
12
  export { Signers, Wallet, Utils, Envelope, State } from '@0xsequence/wallet-core';
12
13
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,YAAY,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAA;AAC9D,YAAY,EACV,WAAW,EACX,WAAW,EACX,WAAW,EACX,iBAAiB,EACjB,sBAAsB,EACtB,kBAAkB,EAClB,kBAAkB,EAClB,eAAe,EACf,yBAAyB,EACzB,uBAAuB,EACvB,wBAAwB,EACxB,oBAAoB,EACpB,4BAA4B,EAC5B,mCAAmC,EACnC,sCAAsC,EACtC,kBAAkB,EAClB,4BAA4B,EAC5B,6BAA6B,EAC7B,oBAAoB,EACpB,oBAAoB,EACpB,QAAQ,EACR,SAAS,GACV,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AACnE,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,uBAAuB,EACvB,eAAe,EACf,mBAAmB,EACnB,YAAY,EACZ,0BAA0B,GAC3B,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC9E,YAAY,EACV,eAAe,EACf,mBAAmB,EACnB,mBAAmB,EACnB,yBAAyB,EACzB,qBAAqB,EACrB,cAAc,GACf,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAE/C,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,aAAa,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAA;AACtH,YAAY,EAAE,qBAAqB,EAAE,eAAe,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAA;AAC/G,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,YAAY,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAA;AAC9D,YAAY,EACV,WAAW,EACX,WAAW,EACX,WAAW,EACX,iBAAiB,EACjB,sBAAsB,EACtB,kBAAkB,EAClB,kBAAkB,EAClB,eAAe,EACf,yBAAyB,EACzB,uBAAuB,EACvB,wBAAwB,EACxB,oBAAoB,EACpB,4BAA4B,EAC5B,mCAAmC,EACnC,sCAAsC,EACtC,kBAAkB,EAClB,4BAA4B,EAC5B,6BAA6B,EAC7B,oBAAoB,EACpB,oBAAoB,EACpB,QAAQ,EACR,SAAS,EACT,gBAAgB,GACjB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAChF,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,uBAAuB,EACvB,eAAe,EACf,mBAAmB,EACnB,YAAY,EACZ,0BAA0B,GAC3B,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EACL,2BAA2B,EAC3B,cAAc,EACd,UAAU,EACV,aAAa,EACb,SAAS,EACT,aAAa,EACb,YAAY,EACZ,uBAAuB,GACxB,MAAM,kBAAkB,CAAA;AACzB,YAAY,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AACnG,YAAY,EACV,eAAe,EACf,mBAAmB,EACnB,mBAAmB,EACnB,yBAAyB,EACzB,qBAAqB,EACrB,cAAc,GACf,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAE/C,OAAO,EACL,WAAW,EACX,UAAU,EACV,UAAU,EACV,aAAa,EACb,SAAS,EACT,OAAO,EACP,OAAO,GACR,MAAM,+BAA+B,CAAA;AACtC,YAAY,EAAE,qBAAqB,EAAE,eAAe,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAA;AAC/G,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAA"}
package/dist/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  export { DappClient } from './DappClient.js';
2
- export { RequestActionType, TransportMode } from './types/index.js';
2
+ export { RequestActionType, TransportMode, MessageType } from './types/index.js';
3
3
  export { FeeOptionError, TransactionError, AddExplicitSessionError, ConnectionError, InitializationError, SigningError, ModifyExplicitSessionError, } from './utils/errors.js';
4
- export { getExplorerUrl, jsonReplacers, jsonRevivers } from './utils/index.js';
4
+ export { createExplicitSessionConfig, getExplorerUrl, getNetwork, getRelayerUrl, getRpcUrl, jsonReplacers, jsonRevivers, VALUE_FORWARDER_ADDRESS, } from './utils/index.js';
5
5
  export { WebStorage } from './utils/storage.js';
6
- export { Attestation, Permission, Extensions, SessionConfig, Constants, Payload } from '@0xsequence/wallet-primitives';
6
+ export { Attestation, Permission, Extensions, SessionConfig, Constants, Payload, Network, } from '@0xsequence/wallet-primitives';
7
7
  export { Signers, Wallet, Utils, Envelope, State } from '@0xsequence/wallet-core';
@@ -15,7 +15,7 @@ export declare const RequestActionType: {
15
15
  readonly SIGN_TYPED_DATA: "signTypedData";
16
16
  readonly SEND_WALLET_TRANSACTION: "sendWalletTransaction";
17
17
  };
18
- export type LoginMethod = 'google' | 'apple' | 'email' | 'passkey' | 'mnemonic';
18
+ export type LoginMethod = 'google' | 'apple' | 'email' | 'passkey' | 'mnemonic' | 'eoa';
19
19
  export interface GuardConfig {
20
20
  url: string;
21
21
  moduleAddresses: Map<Address.Address, Address.Address>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AACzD,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAA;AACpE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,IAAI,CAAA;AACjC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAI7C,MAAM,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAA;AACvC,MAAM,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAA;AACzC,MAAM,MAAM,qBAAqB,GAAG,OAAO,CAAC,qBAAqB,CAAA;AACjE,MAAM,MAAM,eAAe,GAAG,OAAO,CAAC,eAAe,CAAA;AAErD,eAAO,MAAM,iBAAiB;;;;;;;CAOpB,CAAA;AAEV,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,OAAO,GAAG,OAAO,GAAG,SAAS,GAAG,UAAU,GAAG,KAAK,CAAA;AAEvF,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAA;IACX,eAAe,EAAE,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAA;CACvD;AAID,MAAM,WAAW,uBAAuB;IACtC,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,eAAe,CAAA;IACzB,sBAAsB,CAAC,EAAE,OAAO,CAAA;IAChC,oBAAoB,CAAC,EAAE,WAAW,CAAA;IAClC,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,yBAAyB;IACxC,OAAO,EAAE,eAAe,CAAA;IACxB,oBAAoB,CAAC,EAAE,WAAW,CAAA;IAClC,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,4BAA4B;IAC3C,aAAa,EAAE,OAAO,CAAC,OAAO,CAAA;IAC9B,OAAO,EAAE,eAAe,CAAA;CACzB;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAA;IACxB,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAA;IACxB,SAAS,EAAE,SAAS,CAAA;IACpB,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,4BAA4B;IAC3C,OAAO,EAAE,OAAO,CAAC,OAAO,CAAA;IACxB,kBAAkB,EAAE,kBAAkB,CAAA;IACtC,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,MAAM,kBAAkB,GAAG;IAC/B,EAAE,EAAE,OAAO,CAAC,OAAO,CAAA;IACnB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,GAAG,CAAC,GAAG,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,MAAM,WAAW,wBAAwB;IACvC,aAAa,EAAE,MAAM,CAAA;IACrB,WAAW,CAAC,EAAE,WAAW,CAAC,WAAW,CAAA;IACrC,SAAS,CAAC,EAAE,GAAG,CAAC,GAAG,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,KAAK,CAAC,EAAE,WAAW,CAAA;CACpB;AAED,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,GAAG,CAAC,GAAG,CAAA;IAClB,aAAa,EAAE,MAAM,CAAA;CACtB;AAED,MAAM,WAAW,6BAA6B;IAC5C,eAAe,EAAE,GAAG,CAAC,GAAG,CAAA;IACxB,aAAa,EAAE,MAAM,CAAA;CACtB;AAED,MAAM,MAAM,oBAAoB,GAAG,iBAAiB,GAAG,6BAA6B,CAAA;AAEpF,MAAM,WAAW,eAAe;IAC9B,aAAa,EAAE,MAAM,CAAA;IACrB,cAAc,EAAE,MAAM,CAAA;CACvB;AAID,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;AAEjE,KAAK,YAAY,GAAG,IAAI,GAAG,MAAM,GAAG,OAAO,CAAA;AAE3C,MAAM,MAAM,WAAW,GAErB,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,YAAY,CAAC,GAE9B,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAA;AAI7C,MAAM,MAAM,4BAA4B,GAAG,CAAC,IAAI,EAAE;IAChD,MAAM,EAAE,CAAC,OAAO,iBAAiB,CAAC,CAAC,sBAAsB,GAAG,yBAAyB,CAAC,CAAA;IACtF,QAAQ,CAAC,EAAE,eAAe,CAAA;IAC1B,KAAK,CAAC,EAAE,GAAG,CAAA;CACZ,KAAK,IAAI,CAAA;AAGV,MAAM,MAAM,uBAAuB,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,KAAK,IAAI,CAAA;AAE1D,MAAM,MAAM,mCAAmC,GAAG,CAAC,IAAI,EAAE;IACvD,MAAM,EAAE,CAAC,OAAO,iBAAiB,CAAC,CAAC,cAAc,GAAG,iBAAiB,GAAG,yBAAyB,CAAC,CAAA;IAClG,QAAQ,CAAC,EAAE,oBAAoB,CAAA;IAC/B,KAAK,CAAC,EAAE,GAAG,CAAA;IACX,OAAO,EAAE,MAAM,CAAA;CAChB,KAAK,IAAI,CAAA;AAEV,MAAM,MAAM,sCAAsC,GAAG,CAAC,IAAI,EAAE;IAC1D,MAAM,EAAE,CAAC,OAAO,iBAAiB,CAAC,CAAC,sBAAsB,GAAG,yBAAyB,CAAC,CAAA;IACtF,QAAQ,CAAC,EAAE,eAAe,CAAA;IAC1B,KAAK,CAAC,EAAE,GAAG,CAAA;IACX,OAAO,EAAE,MAAM,CAAA;CAChB,KAAK,IAAI,CAAA;AAIV,MAAM,WAAW,sBAAsB;IACrC,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;IAC5D,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACzD,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CAC9C;AAED,oBAAY,WAAW;IACrB,aAAa,kBAAkB;IAC/B,IAAI,SAAS;IACb,OAAO,YAAY;IACnB,QAAQ,aAAa;CACtB;AAED,oBAAY,aAAa;IACvB,KAAK,UAAU;IACf,QAAQ,aAAa;CACtB;AAED,MAAM,WAAW,gBAAgB;IAC/B,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,kBAAkB,CAAC,EAAE,MAAM,CAAA;CAC5B;AAED,MAAM,WAAW,gBAAgB,CAAC,CAAC,GAAG,GAAG;IACvC,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,WAAW,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,CAAC,CAAA;IACX,KAAK,CAAC,EAAE,GAAG,CAAA;CACZ;AAED,eAAO,MAAM,UAAU;;;CAGtB,CAAA;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,CAAC,OAAO,EAAE,GAAG,KAAK,IAAI,CAAA;IAC/B,MAAM,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAA;IAC5B,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;CACf;AACD,MAAM,WAAW,kBAAkB;IACjC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,aAAa,EAAE,OAAO,CAAA;IACtB,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAA;IACnB,cAAc,CAAC,EAAE,OAAO,CAAC,OAAO,CAAA;CACjC,CAAA"}
@@ -1,11 +1,29 @@
1
- import { Network } from '@0xsequence/wallet-primitives';
1
+ import type { ExplicitSessionConfig } from '@0xsequence/wallet-core';
2
+ import { Network, Permission } from '@0xsequence/wallet-primitives';
3
+ import { type Address } from 'ox';
4
+ export { VALUE_FORWARDER_ADDRESS } from './constants.js';
2
5
  type JsonReplacer = (key: string, value: any) => any;
3
6
  type JsonReviver = (key: string, value: any) => any;
4
7
  export declare const jsonRevivers: JsonReviver;
5
8
  export declare const jsonReplacers: JsonReplacer;
9
+ export type SessionDuration = {
10
+ days?: number;
11
+ hours?: number;
12
+ minutes?: number;
13
+ };
14
+ export type NativeTokenSpending = {
15
+ valueLimit: bigint;
16
+ allowedRecipients?: Address.Address[];
17
+ };
18
+ export type ExplicitSessionParams = {
19
+ chainId: number;
20
+ expiresIn: SessionDuration;
21
+ permissions: Permission.Permission[];
22
+ nativeTokenSpending?: NativeTokenSpending;
23
+ };
24
+ export declare const createExplicitSessionConfig: (params: ExplicitSessionParams) => ExplicitSessionConfig;
6
25
  export declare const getNetwork: (chainId: Network.ChainId | bigint | number) => Network.Network;
7
26
  export declare const getRpcUrl: (chainId: Network.ChainId | bigint | number, nodesUrl: string, projectAccessKey: string) => string;
8
27
  export declare const getRelayerUrl: (chainId: Network.ChainId | bigint | number, relayerUrl: string) => string;
9
28
  export declare const getExplorerUrl: (chainId: Network.ChainId | bigint | number, txHash: string) => string;
10
- export {};
11
29
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAA;AAGvD,KAAK,YAAY,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,GAAG,CAAA;AACpD,KAAK,WAAW,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,GAAG,CAAA;AAsHnD,eAAO,MAAM,YAAY,aAAgE,CAAA;AACzF,eAAO,MAAM,aAAa,cAAoE,CAAA;AAuB9F,eAAO,MAAM,UAAU,GAAI,SAAS,OAAO,CAAC,OAAO,GAAG,MAAM,GAAG,MAAM,oBAQpE,CAAA;AAED,eAAO,MAAM,SAAS,GAAI,SAAS,OAAO,CAAC,OAAO,GAAG,MAAM,GAAG,MAAM,EAAE,UAAU,MAAM,EAAE,kBAAkB,MAAM,WAU/G,CAAA;AAED,eAAO,MAAM,aAAa,GAAI,SAAS,OAAO,CAAC,OAAO,GAAG,MAAM,GAAG,MAAM,EAAE,YAAY,MAAM,WAM3F,CAAA;AAED,eAAO,MAAM,cAAc,GAAI,SAAS,OAAO,CAAC,OAAO,GAAG,MAAM,GAAG,MAAM,EAAE,QAAQ,MAAM,WAQxF,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AACpE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAA;AACnE,OAAO,EAAc,KAAK,OAAO,EAAE,MAAM,IAAI,CAAA;AAC7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAA;AAExD,KAAK,YAAY,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,GAAG,CAAA;AACpD,KAAK,WAAW,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,GAAG,CAAA;AAsHnD,eAAO,MAAM,YAAY,aAAgE,CAAA;AACzF,eAAO,MAAM,aAAa,cAAoE,CAAA;AAE9F,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG;IAChC,UAAU,EAAE,MAAM,CAAA;IAClB,iBAAiB,CAAC,EAAE,OAAO,CAAC,OAAO,EAAE,CAAA;CACtC,CAAA;AAED,MAAM,MAAM,qBAAqB,GAAG;IAClC,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,eAAe,CAAA;IAC1B,WAAW,EAAE,UAAU,CAAC,UAAU,EAAE,CAAA;IACpC,mBAAmB,CAAC,EAAE,mBAAmB,CAAA;CAC1C,CAAA;AAED,eAAO,MAAM,2BAA2B,GAAI,QAAQ,qBAAqB,KAAG,qBAwB3E,CAAA;AAuBD,eAAO,MAAM,UAAU,GAAI,SAAS,OAAO,CAAC,OAAO,GAAG,MAAM,GAAG,MAAM,oBAQpE,CAAA;AAED,eAAO,MAAM,SAAS,GAAI,SAAS,OAAO,CAAC,OAAO,GAAG,MAAM,GAAG,MAAM,EAAE,UAAU,MAAM,EAAE,kBAAkB,MAAM,WAU/G,CAAA;AAED,eAAO,MAAM,aAAa,GAAI,SAAS,OAAO,CAAC,OAAO,GAAG,MAAM,GAAG,MAAM,EAAE,YAAY,MAAM,WAM3F,CAAA;AAED,eAAO,MAAM,cAAc,GAAI,SAAS,OAAO,CAAC,OAAO,GAAG,MAAM,GAAG,MAAM,EAAE,QAAQ,MAAM,WAQxF,CAAA"}
@@ -1,6 +1,6 @@
1
- /* eslint-disable @typescript-eslint/no-explicit-any */
2
1
  import { Network } from '@0xsequence/wallet-primitives';
3
2
  import { Bytes, Hex } from 'ox';
3
+ export { VALUE_FORWARDER_ADDRESS } from './constants.js';
4
4
  /**
5
5
  * Creates a single JSON replacer by chaining multiple replacers.
6
6
  * The first replacer to transform a value wins.
@@ -114,6 +114,28 @@ const uint8ArrayReviver = (key, value) => {
114
114
  };
115
115
  export const jsonRevivers = chainRevivers([mapReviver, bigIntReviver, uint8ArrayReviver]);
116
116
  export const jsonReplacers = chainReplacers([mapReplacer, bigIntReplacer, uint8ArrayReplacer]);
117
+ export const createExplicitSessionConfig = (params) => {
118
+ const nowInSeconds = BigInt(Math.floor(Date.now() / 1000));
119
+ const { days = 0, hours = 0, minutes = 0 } = params.expiresIn;
120
+ const sessionLifetimeSeconds = days * 24 * 60 * 60 + hours * 60 * 60 + minutes * 60;
121
+ const deadline = nowInSeconds + BigInt(sessionLifetimeSeconds);
122
+ if (params.permissions.length === 0) {
123
+ throw new Error('createExplicitSessionConfig: At least one permission is required.');
124
+ }
125
+ const nativeTokenSpending = params.nativeTokenSpending;
126
+ const valueLimit = nativeTokenSpending?.valueLimit ?? 0n;
127
+ const nativeTokenReceivers = [...(nativeTokenSpending?.allowedRecipients || [])];
128
+ const nativeTokenSpendingPermissions = nativeTokenReceivers.map((receiver) => ({
129
+ target: receiver,
130
+ rules: [],
131
+ }));
132
+ return {
133
+ chainId: params.chainId,
134
+ valueLimit,
135
+ deadline,
136
+ permissions: [...params.permissions, ...nativeTokenSpendingPermissions],
137
+ };
138
+ };
117
139
  /**
118
140
  * Apply a template to a string.
119
141
  *
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@0xsequence/dapp-client",
3
- "version": "0.0.0-20251211205330",
3
+ "version": "3.0.0-beta.10",
4
4
  "license": "Apache-2.0",
5
5
  "type": "module",
6
6
  "publishConfig": {
@@ -14,21 +14,21 @@
14
14
  }
15
15
  },
16
16
  "devDependencies": {
17
- "@types/node": "^24.10.1",
18
- "@vitest/coverage-v8": "^4.0.14",
17
+ "@types/node": "^25.0.2",
18
+ "@vitest/coverage-v8": "^4.0.15",
19
19
  "dotenv": "^17.2.3",
20
20
  "fake-indexeddb": "^6.2.5",
21
- "happy-dom": "^20.0.10",
21
+ "happy-dom": "^20.0.11",
22
22
  "typescript": "^5.9.3",
23
- "vitest": "^4.0.14",
24
- "@repo/typescript-config": "^0.0.0-20251211205330"
23
+ "vitest": "^4.0.15",
24
+ "@repo/typescript-config": "^0.0.1-beta.1"
25
25
  },
26
26
  "dependencies": {
27
27
  "ox": "^0.9.17",
28
- "@0xsequence/guard": "^0.0.0-20251211205330",
29
- "@0xsequence/relayer": "^0.0.0-20251211205330",
30
- "@0xsequence/wallet-primitives": "^0.0.0-20251211205330",
31
- "@0xsequence/wallet-core": "^0.0.0-20251211205330"
28
+ "@0xsequence/guard": "^3.0.0-beta.10",
29
+ "@0xsequence/relayer": "^3.0.0-beta.10",
30
+ "@0xsequence/wallet-primitives": "^3.0.0-beta.10",
31
+ "@0xsequence/wallet-core": "^3.0.0-beta.10"
32
32
  },
33
33
  "scripts": {
34
34
  "build": "tsc",
package/src/index.ts CHANGED
@@ -23,8 +23,9 @@ export type {
23
23
  GetFeeTokensResponse,
24
24
  FeeToken,
25
25
  FeeOption,
26
+ TransportMessage,
26
27
  } from './types/index.js'
27
- export { RequestActionType, TransportMode } from './types/index.js'
28
+ export { RequestActionType, TransportMode, MessageType } from './types/index.js'
28
29
  export {
29
30
  FeeOptionError,
30
31
  TransactionError,
@@ -34,7 +35,17 @@ export {
34
35
  SigningError,
35
36
  ModifyExplicitSessionError,
36
37
  } from './utils/errors.js'
37
- export { getExplorerUrl, jsonReplacers, jsonRevivers } from './utils/index.js'
38
+ export {
39
+ createExplicitSessionConfig,
40
+ getExplorerUrl,
41
+ getNetwork,
42
+ getRelayerUrl,
43
+ getRpcUrl,
44
+ jsonReplacers,
45
+ jsonRevivers,
46
+ VALUE_FORWARDER_ADDRESS,
47
+ } from './utils/index.js'
48
+ export type { ExplicitSessionParams, NativeTokenSpending, SessionDuration } from './utils/index.js'
38
49
  export type {
39
50
  SequenceStorage,
40
51
  ExplicitSessionData,
@@ -45,6 +56,14 @@ export type {
45
56
  } from './utils/storage.js'
46
57
  export { WebStorage } from './utils/storage.js'
47
58
 
48
- export { Attestation, Permission, Extensions, SessionConfig, Constants, Payload } from '@0xsequence/wallet-primitives'
59
+ export {
60
+ Attestation,
61
+ Permission,
62
+ Extensions,
63
+ SessionConfig,
64
+ Constants,
65
+ Payload,
66
+ Network,
67
+ } from '@0xsequence/wallet-primitives'
49
68
  export type { ExplicitSessionConfig, ExplicitSession, ImplicitSession, Session } from '@0xsequence/wallet-core'
50
69
  export { Signers, Wallet, Utils, Envelope, State } from '@0xsequence/wallet-core'
@@ -21,7 +21,7 @@ export const RequestActionType = {
21
21
  SEND_WALLET_TRANSACTION: 'sendWalletTransaction',
22
22
  } as const
23
23
 
24
- export type LoginMethod = 'google' | 'apple' | 'email' | 'passkey' | 'mnemonic'
24
+ export type LoginMethod = 'google' | 'apple' | 'email' | 'passkey' | 'mnemonic' | 'eoa'
25
25
 
26
26
  export interface GuardConfig {
27
27
  url: string
@@ -1,6 +1,8 @@
1
1
  /* eslint-disable @typescript-eslint/no-explicit-any */
2
- import { Network } from '@0xsequence/wallet-primitives'
3
- import { Bytes, Hex } from 'ox'
2
+ import type { ExplicitSessionConfig } from '@0xsequence/wallet-core'
3
+ import { Network, Permission } from '@0xsequence/wallet-primitives'
4
+ import { Bytes, Hex, type Address } from 'ox'
5
+ export { VALUE_FORWARDER_ADDRESS } from './constants.js'
4
6
 
5
7
  type JsonReplacer = (key: string, value: any) => any
6
8
  type JsonReviver = (key: string, value: any) => any
@@ -124,6 +126,50 @@ const uint8ArrayReviver: JsonReviver = (key, value) => {
124
126
  export const jsonRevivers = chainRevivers([mapReviver, bigIntReviver, uint8ArrayReviver])
125
127
  export const jsonReplacers = chainReplacers([mapReplacer, bigIntReplacer, uint8ArrayReplacer])
126
128
 
129
+ export type SessionDuration = {
130
+ days?: number
131
+ hours?: number
132
+ minutes?: number
133
+ }
134
+
135
+ export type NativeTokenSpending = {
136
+ valueLimit: bigint
137
+ allowedRecipients?: Address.Address[]
138
+ }
139
+
140
+ export type ExplicitSessionParams = {
141
+ chainId: number
142
+ expiresIn: SessionDuration
143
+ permissions: Permission.Permission[]
144
+ nativeTokenSpending?: NativeTokenSpending
145
+ }
146
+
147
+ export const createExplicitSessionConfig = (params: ExplicitSessionParams): ExplicitSessionConfig => {
148
+ const nowInSeconds = BigInt(Math.floor(Date.now() / 1000))
149
+ const { days = 0, hours = 0, minutes = 0 } = params.expiresIn
150
+ const sessionLifetimeSeconds = days * 24 * 60 * 60 + hours * 60 * 60 + minutes * 60
151
+ const deadline = nowInSeconds + BigInt(sessionLifetimeSeconds)
152
+
153
+ if (params.permissions.length === 0) {
154
+ throw new Error('createExplicitSessionConfig: At least one permission is required.')
155
+ }
156
+
157
+ const nativeTokenSpending = params.nativeTokenSpending
158
+ const valueLimit = nativeTokenSpending?.valueLimit ?? 0n
159
+ const nativeTokenReceivers = [...(nativeTokenSpending?.allowedRecipients || [])]
160
+ const nativeTokenSpendingPermissions = nativeTokenReceivers.map((receiver) => ({
161
+ target: receiver,
162
+ rules: [],
163
+ }))
164
+
165
+ return {
166
+ chainId: params.chainId,
167
+ valueLimit,
168
+ deadline,
169
+ permissions: [...params.permissions, ...nativeTokenSpendingPermissions],
170
+ }
171
+ }
172
+
127
173
  /**
128
174
  * Apply a template to a string.
129
175
  *