@dynamic-labs/ethereum-gasless-extension 4.85.0 → 4.86.0
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 +13 -0
- package/package.cjs +1 -1
- package/package.js +1 -1
- package/package.json +6 -6
- package/src/lib/EthereumGaslessExtension/EthereumGaslessExtension.cjs +4 -14
- package/src/lib/EthereumGaslessExtension/EthereumGaslessExtension.js +4 -14
- package/src/lib/EthereumGaslessExtension/toWireParams/index.d.ts +1 -0
- package/src/lib/EthereumGaslessExtension/toWireParams/toWireParams.cjs +19 -0
- package/src/lib/EthereumGaslessExtension/toWireParams/toWireParams.d.ts +8 -0
- package/src/lib/EthereumGaslessExtension/toWireParams/toWireParams.js +15 -0
- package/src/lib/types.d.ts +9 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,4 +1,17 @@
|
|
|
1
1
|
|
|
2
|
+
## [4.86.0](https://github.com/dynamic-labs/dynamic-auth/compare/v4.85.0...v4.86.0) (2026-06-01)
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
### Features
|
|
6
|
+
|
|
7
|
+
* add support to new MetaMask SDK ([#11056](https://github.com/dynamic-labs/dynamic-auth/issues/11056)) ([8a6c973](https://github.com/dynamic-labs/dynamic-auth/commit/8a6c973876207256c06b04f6a16454f07446393d))
|
|
8
|
+
* **ethereum-gasless:** expose optional nonce on sign/send/relay ([#11422](https://github.com/dynamic-labs/dynamic-auth/issues/11422)) ([d2d074e](https://github.com/dynamic-labs/dynamic-auth/commit/d2d074ebe82452990281eba14a73f52a0af1e98b))
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
### Bug Fixes
|
|
12
|
+
|
|
13
|
+
* **sdk-react-core:** retry auto wallet creation on transient failures before erroring ([#11408](https://github.com/dynamic-labs/dynamic-auth/issues/11408)) ([8175460](https://github.com/dynamic-labs/dynamic-auth/commit/8175460bdee6f041ead0ea3f020cfd2168683239)), closes [#11399](https://github.com/dynamic-labs/dynamic-auth/issues/11399) [forward-mpc-client#286](https://github.com/dynamic-labs/forward-mpc-client/issues/286) [#11396](https://github.com/dynamic-labs/dynamic-auth/issues/11396)
|
|
14
|
+
|
|
2
15
|
## [4.85.0](https://github.com/dynamic-labs/dynamic-auth/compare/v4.84.1...v4.85.0) (2026-05-29)
|
|
3
16
|
|
|
4
17
|
|
package/package.cjs
CHANGED
package/package.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dynamic-labs/ethereum-gasless-extension",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.86.0",
|
|
4
4
|
"main": "./src/index.cjs",
|
|
5
5
|
"module": "./src/index.js",
|
|
6
6
|
"types": "./src/index.d.ts",
|
|
@@ -14,11 +14,11 @@
|
|
|
14
14
|
"./package.json": "./package.json"
|
|
15
15
|
},
|
|
16
16
|
"dependencies": {
|
|
17
|
-
"@dynamic-labs/ethereum-gasless-core": "4.
|
|
18
|
-
"@dynamic-labs/assert-package-version": "4.
|
|
19
|
-
"@dynamic-labs/client": "4.
|
|
20
|
-
"@dynamic-labs/message-transport": "4.
|
|
21
|
-
"@dynamic-labs/webview-messages": "4.
|
|
17
|
+
"@dynamic-labs/ethereum-gasless-core": "4.86.0",
|
|
18
|
+
"@dynamic-labs/assert-package-version": "4.86.0",
|
|
19
|
+
"@dynamic-labs/client": "4.86.0",
|
|
20
|
+
"@dynamic-labs/message-transport": "4.86.0",
|
|
21
|
+
"@dynamic-labs/webview-messages": "4.86.0"
|
|
22
22
|
},
|
|
23
23
|
"peerDependencies": {
|
|
24
24
|
"viem": "^2.45.3"
|
|
@@ -3,9 +3,8 @@
|
|
|
3
3
|
|
|
4
4
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
5
5
|
|
|
6
|
-
var _tslib = require('../../../_virtual/_tslib.cjs');
|
|
7
6
|
var messageTransport = require('@dynamic-labs/message-transport');
|
|
8
|
-
var
|
|
7
|
+
var toWireParams = require('./toWireParams/toWireParams.cjs');
|
|
9
8
|
|
|
10
9
|
const ethereumGaslessExtensionName = 'ethereumGasless';
|
|
11
10
|
const EthereumGaslessExtension = () => (_, core) => {
|
|
@@ -17,18 +16,9 @@ const EthereumGaslessExtension = () => (_, core) => {
|
|
|
17
16
|
getStatus: (params) => requestChannel.request('ethereumGasless_getStatus', params),
|
|
18
17
|
is7702DelegationActive: (params) => requestChannel.request('ethereumGasless_is7702DelegationActive', params),
|
|
19
18
|
isEnabled: () => requestChannel.request('ethereumGasless_isEnabled'),
|
|
20
|
-
relay: (
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
},
|
|
24
|
-
send: (_a) => {
|
|
25
|
-
var { calls } = _a, rest = _tslib.__rest(_a, ["calls"]);
|
|
26
|
-
return requestChannel.request('ethereumGasless_send', Object.assign({ calls: toWireCalls.toWireCalls(calls) }, rest));
|
|
27
|
-
},
|
|
28
|
-
sign: (_a) => {
|
|
29
|
-
var { calls } = _a, rest = _tslib.__rest(_a, ["calls"]);
|
|
30
|
-
return requestChannel.request('ethereumGasless_sign', Object.assign({ calls: toWireCalls.toWireCalls(calls) }, rest));
|
|
31
|
-
},
|
|
19
|
+
relay: (params) => requestChannel.request('ethereumGasless_relay', toWireParams.toWireParams(params)),
|
|
20
|
+
send: (params) => requestChannel.request('ethereumGasless_send', toWireParams.toWireParams(params)),
|
|
21
|
+
sign: (params) => requestChannel.request('ethereumGasless_sign', toWireParams.toWireParams(params)),
|
|
32
22
|
sign7702Authorization: (params) => requestChannel.request('ethereumGasless_sign7702Authorization', params),
|
|
33
23
|
waitFor: (params) => requestChannel.request('ethereumGasless_waitFor', params),
|
|
34
24
|
},
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
'use client'
|
|
2
|
-
import { __rest } from '../../../_virtual/_tslib.js';
|
|
3
2
|
import { createRequestChannel } from '@dynamic-labs/message-transport';
|
|
4
|
-
import {
|
|
3
|
+
import { toWireParams } from './toWireParams/toWireParams.js';
|
|
5
4
|
|
|
6
5
|
const ethereumGaslessExtensionName = 'ethereumGasless';
|
|
7
6
|
const EthereumGaslessExtension = () => (_, core) => {
|
|
@@ -13,18 +12,9 @@ const EthereumGaslessExtension = () => (_, core) => {
|
|
|
13
12
|
getStatus: (params) => requestChannel.request('ethereumGasless_getStatus', params),
|
|
14
13
|
is7702DelegationActive: (params) => requestChannel.request('ethereumGasless_is7702DelegationActive', params),
|
|
15
14
|
isEnabled: () => requestChannel.request('ethereumGasless_isEnabled'),
|
|
16
|
-
relay: (
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
},
|
|
20
|
-
send: (_a) => {
|
|
21
|
-
var { calls } = _a, rest = __rest(_a, ["calls"]);
|
|
22
|
-
return requestChannel.request('ethereumGasless_send', Object.assign({ calls: toWireCalls(calls) }, rest));
|
|
23
|
-
},
|
|
24
|
-
sign: (_a) => {
|
|
25
|
-
var { calls } = _a, rest = __rest(_a, ["calls"]);
|
|
26
|
-
return requestChannel.request('ethereumGasless_sign', Object.assign({ calls: toWireCalls(calls) }, rest));
|
|
27
|
-
},
|
|
15
|
+
relay: (params) => requestChannel.request('ethereumGasless_relay', toWireParams(params)),
|
|
16
|
+
send: (params) => requestChannel.request('ethereumGasless_send', toWireParams(params)),
|
|
17
|
+
sign: (params) => requestChannel.request('ethereumGasless_sign', toWireParams(params)),
|
|
28
18
|
sign7702Authorization: (params) => requestChannel.request('ethereumGasless_sign7702Authorization', params),
|
|
29
19
|
waitFor: (params) => requestChannel.request('ethereumGasless_waitFor', params),
|
|
30
20
|
},
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { toWireParams } from './toWireParams';
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
'use client'
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
5
|
+
|
|
6
|
+
var _tslib = require('../../../../_virtual/_tslib.cjs');
|
|
7
|
+
var toWireCalls = require('../toWireCalls/toWireCalls.cjs');
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Serializes the consumer-facing unsigned-calls input into the wire shape that
|
|
11
|
+
* survives `postMessage`: the `bigint` call values and the optional `bigint`
|
|
12
|
+
* nonce are stringified so the request can cross `messageTransport`.
|
|
13
|
+
*/
|
|
14
|
+
const toWireParams = (_a) => {
|
|
15
|
+
var { calls, nonce } = _a, rest = _tslib.__rest(_a, ["calls", "nonce"]);
|
|
16
|
+
return (Object.assign(Object.assign({}, rest), { calls: toWireCalls.toWireCalls(calls), nonce: nonce === null || nonce === void 0 ? void 0 : nonce.toString() }));
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
exports.toWireParams = toWireParams;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { EthereumGaslessUnsignedCallsArgs } from '@dynamic-labs/webview-messages';
|
|
2
|
+
import type { IEthereumGaslessExtensionInput } from '../../types';
|
|
3
|
+
/**
|
|
4
|
+
* Serializes the consumer-facing unsigned-calls input into the wire shape that
|
|
5
|
+
* survives `postMessage`: the `bigint` call values and the optional `bigint`
|
|
6
|
+
* nonce are stringified so the request can cross `messageTransport`.
|
|
7
|
+
*/
|
|
8
|
+
export declare const toWireParams: ({ calls, nonce, ...rest }: IEthereumGaslessExtensionInput) => EthereumGaslessUnsignedCallsArgs;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
'use client'
|
|
2
|
+
import { __rest } from '../../../../_virtual/_tslib.js';
|
|
3
|
+
import { toWireCalls } from '../toWireCalls/toWireCalls.js';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Serializes the consumer-facing unsigned-calls input into the wire shape that
|
|
7
|
+
* survives `postMessage`: the `bigint` call values and the optional `bigint`
|
|
8
|
+
* nonce are stringified so the request can cross `messageTransport`.
|
|
9
|
+
*/
|
|
10
|
+
const toWireParams = (_a) => {
|
|
11
|
+
var { calls, nonce } = _a, rest = __rest(_a, ["calls", "nonce"]);
|
|
12
|
+
return (Object.assign(Object.assign({}, rest), { calls: toWireCalls(calls), nonce: nonce === null || nonce === void 0 ? void 0 : nonce.toString() }));
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
export { toWireParams };
|
package/src/lib/types.d.ts
CHANGED
|
@@ -11,6 +11,15 @@ export type IEthereumGaslessExtensionInput = {
|
|
|
11
11
|
calls: SponsoredTransactionCall[];
|
|
12
12
|
authorization?: SerializedAuthorization;
|
|
13
13
|
autoDelegate?: boolean;
|
|
14
|
+
/**
|
|
15
|
+
* Optional bitmap nonce to sign the intent with. When provided, nonce
|
|
16
|
+
* generation (and its on-chain `isNonceUsed` check) is skipped and the
|
|
17
|
+
* supplied value is used as-is. Matches the `nonce` field returned on the
|
|
18
|
+
* signed-transaction result so callers can reuse it. Useful for
|
|
19
|
+
* mutually-exclusive / cancel-replace intents. Serialized to a string at the
|
|
20
|
+
* `messageTransport` boundary since `bigint` does not survive `postMessage`.
|
|
21
|
+
*/
|
|
22
|
+
nonce?: bigint;
|
|
14
23
|
validForSeconds?: number;
|
|
15
24
|
};
|
|
16
25
|
export type IEthereumGaslessExtension = {
|