@multiplatform.one/web3 7.31.1 → 7.32.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/README.md +63 -0
- package/dist/cjs/clients/evm.cjs +52 -1
- package/dist/cjs/clients/evm.native.js +56 -1
- package/dist/cjs/clients/evm.native.js.map +1 -1
- package/dist/cjs/clients/hooks.cjs +5 -2
- package/dist/cjs/clients/hooks.native.js +7 -2
- package/dist/cjs/clients/hooks.native.js.map +1 -1
- package/dist/cjs/clients/index.cjs +4 -0
- package/dist/cjs/clients/index.native.js +4 -0
- package/dist/cjs/clients/index.native.js.map +1 -1
- package/dist/cjs/clients/preparedSend.cjs +96 -0
- package/dist/cjs/clients/preparedSend.native.js +225 -0
- package/dist/cjs/clients/preparedSend.native.js.map +1 -0
- package/dist/cjs/connectkit/connectors/metaMaskConnectConnector.cjs +108 -27
- package/dist/cjs/connectkit/connectors/metaMaskConnectConnector.native.js +105 -28
- package/dist/cjs/connectkit/connectors/metaMaskConnectConnector.native.js.map +1 -1
- package/dist/cjs/connectkit/index.cjs +2 -0
- package/dist/cjs/connectkit/index.native.js +2 -0
- package/dist/cjs/connectkit/index.native.js.map +1 -1
- package/dist/cjs/connectkit/openConnector/context.cjs +16 -3
- package/dist/cjs/connectkit/openConnector/context.native.js +19 -4
- package/dist/cjs/connectkit/openConnector/context.native.js.map +1 -1
- package/dist/cjs/connectkit/openConnector/launcher.cjs +2 -2
- package/dist/cjs/connectkit/openConnector/launcher.native.js +2 -2
- package/dist/cjs/connectkit/openConnector/launcher.native.js.map +1 -1
- package/dist/cjs/wagmi/driver.cjs +13 -9
- package/dist/cjs/wagmi/driver.native.js +17 -9
- package/dist/cjs/wagmi/driver.native.js.map +1 -1
- package/dist/esm/clients/evm.mjs +53 -2
- package/dist/esm/clients/evm.mjs.map +1 -1
- package/dist/esm/clients/evm.native.js +57 -2
- package/dist/esm/clients/evm.native.js.map +1 -1
- package/dist/esm/clients/hooks.mjs +5 -2
- package/dist/esm/clients/hooks.mjs.map +1 -1
- package/dist/esm/clients/hooks.native.js +7 -2
- package/dist/esm/clients/hooks.native.js.map +1 -1
- package/dist/esm/clients/index.mjs +2 -1
- package/dist/esm/clients/index.mjs.map +1 -1
- package/dist/esm/clients/index.native.js +2 -1
- package/dist/esm/clients/index.native.js.map +1 -1
- package/dist/esm/clients/preparedSend.mjs +69 -0
- package/dist/esm/clients/preparedSend.mjs.map +1 -0
- package/dist/esm/clients/preparedSend.native.js +195 -0
- package/dist/esm/clients/preparedSend.native.js.map +1 -0
- package/dist/esm/connectkit/connectors/metaMaskConnectConnector.mjs +107 -28
- package/dist/esm/connectkit/connectors/metaMaskConnectConnector.mjs.map +1 -1
- package/dist/esm/connectkit/connectors/metaMaskConnectConnector.native.js +104 -29
- package/dist/esm/connectkit/connectors/metaMaskConnectConnector.native.js.map +1 -1
- package/dist/esm/connectkit/index.mjs +2 -2
- package/dist/esm/connectkit/index.mjs.map +1 -1
- package/dist/esm/connectkit/index.native.js +2 -2
- package/dist/esm/connectkit/index.native.js.map +1 -1
- package/dist/esm/connectkit/openConnector/context.mjs +17 -4
- package/dist/esm/connectkit/openConnector/context.mjs.map +1 -1
- package/dist/esm/connectkit/openConnector/context.native.js +20 -5
- package/dist/esm/connectkit/openConnector/context.native.js.map +1 -1
- package/dist/esm/connectkit/openConnector/launcher.mjs +2 -2
- package/dist/esm/connectkit/openConnector/launcher.mjs.map +1 -1
- package/dist/esm/connectkit/openConnector/launcher.native.js +2 -2
- package/dist/esm/connectkit/openConnector/launcher.native.js.map +1 -1
- package/dist/esm/wagmi/driver.mjs +14 -10
- package/dist/esm/wagmi/driver.mjs.map +1 -1
- package/dist/esm/wagmi/driver.native.js +18 -10
- package/dist/esm/wagmi/driver.native.js.map +1 -1
- package/dist/jsx/clients/evm.mjs +53 -2
- package/dist/jsx/clients/evm.mjs.map +1 -1
- package/dist/jsx/clients/evm.native.js +56 -1
- package/dist/jsx/clients/evm.native.js.map +1 -1
- package/dist/jsx/clients/hooks.mjs +5 -2
- package/dist/jsx/clients/hooks.mjs.map +1 -1
- package/dist/jsx/clients/hooks.native.js +7 -2
- package/dist/jsx/clients/hooks.native.js.map +1 -1
- package/dist/jsx/clients/index.mjs +2 -1
- package/dist/jsx/clients/index.mjs.map +1 -1
- package/dist/jsx/clients/index.native.js +4 -0
- package/dist/jsx/clients/index.native.js.map +1 -1
- package/dist/jsx/clients/preparedSend.mjs +69 -0
- package/dist/jsx/clients/preparedSend.mjs.map +1 -0
- package/dist/jsx/clients/preparedSend.native.js +225 -0
- package/dist/jsx/clients/preparedSend.native.js.map +1 -0
- package/dist/jsx/connectkit/connectors/metaMaskConnectConnector.mjs +107 -28
- package/dist/jsx/connectkit/connectors/metaMaskConnectConnector.mjs.map +1 -1
- package/dist/jsx/connectkit/connectors/metaMaskConnectConnector.native.js +105 -28
- package/dist/jsx/connectkit/connectors/metaMaskConnectConnector.native.js.map +1 -1
- package/dist/jsx/connectkit/index.mjs +2 -2
- package/dist/jsx/connectkit/index.mjs.map +1 -1
- package/dist/jsx/connectkit/index.native.js +2 -0
- package/dist/jsx/connectkit/index.native.js.map +1 -1
- package/dist/jsx/connectkit/openConnector/context.mjs +17 -4
- package/dist/jsx/connectkit/openConnector/context.mjs.map +1 -1
- package/dist/jsx/connectkit/openConnector/context.native.js +19 -4
- package/dist/jsx/connectkit/openConnector/context.native.js.map +1 -1
- package/dist/jsx/connectkit/openConnector/launcher.mjs +2 -2
- package/dist/jsx/connectkit/openConnector/launcher.mjs.map +1 -1
- package/dist/jsx/connectkit/openConnector/launcher.native.js +2 -2
- package/dist/jsx/connectkit/openConnector/launcher.native.js.map +1 -1
- package/dist/jsx/wagmi/driver.mjs +14 -10
- package/dist/jsx/wagmi/driver.mjs.map +1 -1
- package/dist/jsx/wagmi/driver.native.js +17 -9
- package/dist/jsx/wagmi/driver.native.js.map +1 -1
- package/dist/keycloak/login.iife.js +382 -382
- package/package.json +6 -6
- package/src/clients/evm.ts +86 -0
- package/src/clients/hooks.spec.tsx +1 -0
- package/src/clients/hooks.ts +4 -1
- package/src/clients/index.ts +12 -0
- package/src/clients/preparedSend.spec.ts +214 -0
- package/src/clients/preparedSend.ts +136 -0
- package/src/connectkit/connectors/metaMaskConnectConnector.spec.ts +256 -4
- package/src/connectkit/connectors/metaMaskConnectConnector.ts +145 -33
- package/src/connectkit/index.ts +2 -0
- package/src/connectkit/openConnector/context.tsx +10 -5
- package/src/connectkit/openConnector/launcher.spec.ts +24 -2
- package/src/connectkit/openConnector/launcher.ts +10 -3
- package/src/core/types.ts +7 -0
- package/src/wagmi/driver.spec.ts +31 -0
- package/src/wagmi/driver.ts +11 -4
- package/types/clients/evm.d.ts +32 -0
- package/types/clients/evm.d.ts.map +1 -1
- package/types/clients/hooks.d.ts.map +1 -1
- package/types/clients/index.d.ts +2 -1
- package/types/clients/index.d.ts.map +1 -1
- package/types/clients/preparedSend.d.ts +71 -0
- package/types/clients/preparedSend.d.ts.map +1 -0
- package/types/connectkit/connectors/metaMaskConnectConnector.d.ts +27 -0
- package/types/connectkit/connectors/metaMaskConnectConnector.d.ts.map +1 -1
- package/types/connectkit/index.d.ts +1 -1
- package/types/connectkit/index.d.ts.map +1 -1
- package/types/connectkit/openConnector/context.d.ts.map +1 -1
- package/types/connectkit/openConnector/launcher.d.ts +8 -1
- package/types/connectkit/openConnector/launcher.d.ts.map +1 -1
- package/types/core/types.d.ts +7 -0
- package/types/core/types.d.ts.map +1 -1
- package/types/wagmi/driver.d.ts +1 -1
- package/types/wagmi/driver.d.ts.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useMemo","useAccount","useChainId","useConfig","usePublicClient","useWalletClient","isSyntheticChainId","useOptionalConnection","bitcoinClient","connectorAdapter","evmClient","evmReadClient","suiClient","useEvmClient","parameters","connection","fromStore","chainId","connector","connectedChainId","evm","family","data","walletClient","query","enabled","publicClient","chain","id","client","
|
|
1
|
+
{"version":3,"names":["useMemo","useAccount","useChainId","useConfig","usePublicClient","useWalletClient","getAccount","isSyntheticChainId","useOptionalConnection","bitcoinClient","connectorAdapter","evmClient","evmReadClient","suiClient","useEvmClient","parameters","connection","config","fromStore","chainId","connector","connectedChainId","evm","family","data","walletClient","query","enabled","publicClient","chain","id","client","current","useEvmReadClient","currentChainId","chains","find","useSuiClient","address","adapter","useBitcoinClient"],"sources":["../../../src/clients/hooks.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -32,6 +32,7 @@ __export(hooks_exports, {
|
|
|
32
32
|
module.exports = __toCommonJS(hooks_exports);
|
|
33
33
|
var import_react = require("react");
|
|
34
34
|
var import_wagmi = require("wagmi");
|
|
35
|
+
var import_actions = require("wagmi/actions");
|
|
35
36
|
var import_syntheticChains = require("../connectkit/connectors/syntheticChains.native.js");
|
|
36
37
|
var import_react2 = require("../core/react.native.js");
|
|
37
38
|
var import_bitcoin = require("./bitcoin.native.js");
|
|
@@ -43,6 +44,7 @@ function useEvmClient() {
|
|
|
43
44
|
var parameters = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
|
|
44
45
|
var _ref;
|
|
45
46
|
var connection = (0, import_react2.useOptionalConnection)();
|
|
47
|
+
var config = (0, import_wagmi.useConfig)();
|
|
46
48
|
var fromStore = connection !== null && parameters.chainId === void 0;
|
|
47
49
|
var {
|
|
48
50
|
connector,
|
|
@@ -67,9 +69,12 @@ function useEvmClient() {
|
|
|
67
69
|
}
|
|
68
70
|
return evm && walletClient && publicClient ? (0, import_evm.evmClient)({
|
|
69
71
|
walletClient,
|
|
70
|
-
publicClient
|
|
72
|
+
publicClient,
|
|
73
|
+
current: function current() {
|
|
74
|
+
return (0, import_actions.getAccount)(config);
|
|
75
|
+
}
|
|
71
76
|
}) : void 0;
|
|
72
|
-
}, [fromStore, connection, evm, walletClient, publicClient]);
|
|
77
|
+
}, [fromStore, connection, evm, walletClient, publicClient, config]);
|
|
73
78
|
}
|
|
74
79
|
function useEvmReadClient() {
|
|
75
80
|
var parameters = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","hooks_exports","useBitcoinClient","useEvmClient","useEvmReadClient","useSuiClient","module","exports","import_react","require","import_wagmi","import_syntheticChains","import_react2","import_bitcoin","import_adapter","import_evm","import_evmRead","import_sui","parameters","arguments","length","_ref","connection","useOptionalConnection","fromStore","chainId","connector","connectedChainId","useAccount","evm","connectorAdapter","isSyntheticChainId","family","data","walletClient","useWalletClient","query","enabled","publicClient","usePublicClient","chain","id","useMemo","_connection_client","client","evmClient"],"sources":["../../../src/clients/hooks.ts"],"sourcesContent":[null],"mappings":"AAAA,YAAS;;AACT,IAAAA,SAAS,GAAAC,MAAY,CAAAC,cAAY;AACjC,IAAAC,gBAAS,GAAAF,
|
|
1
|
+
{"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","hooks_exports","useBitcoinClient","useEvmClient","useEvmReadClient","useSuiClient","module","exports","import_react","require","import_wagmi","import_actions","import_syntheticChains","import_react2","import_bitcoin","import_adapter","import_evm","import_evmRead","import_sui","parameters","arguments","length","_ref","connection","useOptionalConnection","config","useConfig","fromStore","chainId","connector","connectedChainId","useAccount","evm","connectorAdapter","isSyntheticChainId","family","data","walletClient","useWalletClient","query","enabled","publicClient","usePublicClient","chain","id","useMemo","_connection_client","client","evmClient","current","getAccount"],"sources":["../../../src/clients/hooks.ts"],"sourcesContent":[null],"mappings":"AAAA,YAAS;;AACT,IAAAA,SAAS,GAAAC,MAAY,CAAAC,cAAY;AACjC,IAAAC,gBAAS,GAAAF,MAAkB,CAAAG,wBAAA;AAC3B,IAAAC,iBAAS,GAAAJ,MAAA,CAAAK,mBAA0B;AACnC,IAAAC,YAAS,GAAAN,MAAA,CAAAO,SAAA,CAAAC,cAA6B;AACtC,IAAAC,QAAS,GAAAA,CAAAC,MAAA,EAAAC,GAAA,KAAyC;EAClD,SAASC,IAAA,IAAAD,GAAA,EACTZ,SAAS,CAAAW,MAAA,EAAAE,IAAuD;IAAAC,GAAA,EAAAF,GAAA,CAAAC,IAAA;IAAAE,UAAA;EAAA;AAChE;AACA,IAAAC,WAAS,GAAAA,CAAAC,EAAA,EAAAC,IAAiC,EAAAC,MAAA,EAAAC,IAAA;EAUnC,IAAAF,IAAS,WAAAA,IAAa,aAAoC,IAA0B,OAAAA,IAAA;IACzF,KAAM,IAAAG,GAAA,IAAAhB,iBAAa,CAAAa,IAAA,CAAsB,EACzC,IAAM,CAAAX,YAAS,CAAAe,IAAU,CAAAL,EAAA,EAAAI,GAAA,KAAAA,GAAA,KAAAF,MAAA,EACnBnB,SAAA,CAAAiB,EAAY,EAAAI,GAAA;MAAAP,GAAA,EAAAA,CAAA,KAAeI,IAAQ,CAAAG,GAAA;MAAAN,UAAW,IAAAK,IAAY,GAAAjB,gBAAA,CAAAe,IAAA,EAAAG,GAAA,MAAAD,IAAA,CAAAL;IAAA;EAChE;EACA,OAAME,EAAA;AAKN;AAA+C,IAC7CM,YAAS,GAAAC,GAAA,IAAWR,WAAA,CAAAhB,SAAA;EAAAyB,KAAA;AAAA,IAAAD,GAAA;AAAA,IACpBE,aAAS,KAAS;AAAkBhB,QACrC,CAAAgB,aAAA;EACDC,gBAAM,EAAAA,CAAA,KAAeA,gBAAkB;EACvCC,YAAO,EAAAA,CAAA,KAAQA,YAAM;EACnBC,gBAAI,EAAWA,CAAA,KAAAA,gBAAA;EACbC,YAAO,EAAAA,CAAA,KAAAA;AAEH;AAENC,MAAA,CAAAC,OAAO,GAAAT,YAAO,CAAAG,aAAgB;AAChB,IAAAO,YACR,GAAAC,OAAA;AAAA,IAAAC,YACA,GAAAD,OAAA;AAAA,IAAAE,cACS,GAAMF,OAAA,gBAAiB;AAAA,IAClCG,sBACA,GAAAH,OAAA;AAAA,IACNI,aAAe,GAAAJ,OAAA,0BAAiB;AAClC,IAAAK,cAAA,GAAAL,OAAA;AAUO,IAAAM,cAAS,GAAAN,OAAiB,sBAAoC;AACnE,IAAAO,UAAM,GAASP,OAAA,kBAAU;AACzB,IAAAQ,cAAM,GAAAR,OAAiB,sBAAW;AAGlC,IAAAS,UAAM,GAAAT,OACJ,kBAAW;AAIb,SAAMN,aAAA,EAAe;EACrB,IAAAgB,UAAO,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,iBAAAA,SAAA;EAAA,IACLE,IACE;EAEI,IACLC,UAAA,GAAY,IAAAV,aAAA,CAAAW,qBAAA;EACf,IAAAC,MAAA,OAAAf,YAAA,CAAAgB,SAAA;EACF,IAAAC,SAAA,GAAAJ,UAAA,aAAAJ,UAAA,CAAAS,OAAA;EAMO;IAAAC,SAAS;IAAAD,OAAsC,EAAAE;EAAA,QAAApB,YAAA,CAAAqB,UAAA;EACpD,IAAAC,GAAM,KAAAH,SAAa,SAAAd,cAAsB,CAAAkB,gBAAA,EAAAJ,SAAA,UAAAjB,sBAAA,CAAAsB,kBAAA,EAAAJ,gBAAA,MAAAP,UAAA,aAAAA,UAAA,CAAAY,MAAA;EACzC;IAAMC,IAAE,EAAAC;EAAW,IAAQ,EAAI,EAAA3B,YAAW,CAAA4B,eAAA;IAC1CV,OAAO,EAAAT,UAAc,CAAAS,OAAA;IACnBW,KAAI;MACFC,OAAO,EAAAR,GAAA,KAAAL;IAGT;EACA;EACA,IAAAc,YAAO,GAAS,IAAA/B,YAAU,CAAAgC,eAAqB;IACjDd,OAAI,GAAAN,IAAY,GAAAe,YAAW,KAAQ,QAAAA,YAAA,uBAAAA,YAAA,CAAAM,KAAA,CAAAC,EAAA,cAAAtB,IAAA,cAAAA,IAAA,GAAAH,UAAA,CAAAS;EACrC;EAMO,OAAS,IAAApB,YAAA,CAAAqC,OAA8C;IAC5D,IAAMlB,SAAA;MACN,IAAQmB,kBAAW;MACnB,OAAOvB,UAAc,CAAAY,MAAA,cAAAW,kBAAA,GAAAvB,UAAA,CAAAwB,MAAA,cAAAD,kBAAA,cAAAA,kBAAA;IACnB;IACE,OAAAd,GAAO,IAAAK,YAAW,IAAAI,YACZ,OAAAzB,UAAW,CAAmCgC,SAChD;MACNX,YAAA;MACAI,YAAM;MACNQ,OAAO,WAASA,OAAUA,CAAA;QACxB,WAAYtC,cAAW,CAAAuC,UAAQ,EAAAzB,MAAA;MACrC","ignoreList":[]}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { ReadOnlyClientError, UnsupportedClientMethodError } from "./types.mjs";
|
|
2
2
|
import { classifyTxError, evmClient, ReceiptPendingError, ReceiptWaitAbortedError, TransactionReplacedError, TransactionRevertedError } from "./evm.mjs";
|
|
3
|
+
import { DEFAULT_PREPARED_SEND_MAX_AGE_MS, prepareEvmSend, PreparedSendStaleError } from "./preparedSend.mjs";
|
|
3
4
|
import { evmReadClient, evmReadClients } from "./evmRead.mjs";
|
|
4
5
|
import { suiClient } from "./sui.mjs";
|
|
5
6
|
import { bitcoinClient } from "./bitcoin.mjs";
|
|
@@ -8,5 +9,5 @@ import { connectorAdapter } from "./adapter.mjs";
|
|
|
8
9
|
import { clientForConnector } from "./connector.mjs";
|
|
9
10
|
import { solanaMessageClient } from "./solanaMessage.mjs";
|
|
10
11
|
import { useBitcoinClient, useEvmClient, useEvmReadClient, useSuiClient } from "./hooks.mjs";
|
|
11
|
-
export { ReadOnlyClientError, ReceiptPendingError, ReceiptWaitAbortedError, TransactionReplacedError, TransactionRevertedError, UnsupportedClientMethodError, assertGpgSignature, bitcoinClient, classifyTxError, clientForConnector, connectorAdapter, createGpgSigner, evmClient, evmReadClient, evmReadClients, gpgSignCommand, solanaMessageClient, suiClient, useBitcoinClient, useEvmClient, useEvmReadClient, useGpgSigner, useSuiClient };
|
|
12
|
+
export { DEFAULT_PREPARED_SEND_MAX_AGE_MS, PreparedSendStaleError, ReadOnlyClientError, ReceiptPendingError, ReceiptWaitAbortedError, TransactionReplacedError, TransactionRevertedError, UnsupportedClientMethodError, assertGpgSignature, bitcoinClient, classifyTxError, clientForConnector, connectorAdapter, createGpgSigner, evmClient, evmReadClient, evmReadClients, gpgSignCommand, prepareEvmSend, solanaMessageClient, suiClient, useBitcoinClient, useEvmClient, useEvmReadClient, useGpgSigner, useSuiClient };
|
|
12
13
|
//# sourceMappingURL=index.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ReadOnlyClientError","UnsupportedClientMethodError","classifyTxError","evmClient","ReceiptPendingError","ReceiptWaitAbortedError","TransactionReplacedError","TransactionRevertedError","evmReadClient","evmReadClients","suiClient","bitcoinClient","assertGpgSignature","createGpgSigner","gpgSignCommand","useGpgSigner","connectorAdapter","clientForConnector","solanaMessageClient","useBitcoinClient","useEvmClient","useEvmReadClient","useSuiClient"],"sources":["../../../src/clients/index.ts"],"sourcesContent":[null],"mappings":"AAMA,SACEA,mBAAA,EACAC,4BAAA,QAIK;AACP,SACEC,eAAA,EACAC,SAAA,EACAC,mBAAA,EACAC,uBAAA,EACAC,wBAAA,EACAC,wBAAA,
|
|
1
|
+
{"version":3,"names":["ReadOnlyClientError","UnsupportedClientMethodError","classifyTxError","evmClient","ReceiptPendingError","ReceiptWaitAbortedError","TransactionReplacedError","TransactionRevertedError","DEFAULT_PREPARED_SEND_MAX_AGE_MS","prepareEvmSend","PreparedSendStaleError","evmReadClient","evmReadClients","suiClient","bitcoinClient","assertGpgSignature","createGpgSigner","gpgSignCommand","useGpgSigner","connectorAdapter","clientForConnector","solanaMessageClient","useBitcoinClient","useEvmClient","useEvmReadClient","useSuiClient"],"sources":["../../../src/clients/index.ts"],"sourcesContent":[null],"mappings":"AAMA,SACEA,mBAAA,EACAC,4BAAA,QAIK;AACP,SACEC,eAAA,EACAC,SAAA,EACAC,mBAAA,EACAC,uBAAA,EACAC,wBAAA,EACAC,wBAAA,QAYK;AACP,SACEC,gCAAA,EACAC,cAAA,EACAC,sBAAA,QAMK;AACP,SACEC,aAAA,EACAC,cAAA,QAKK;AAEP,SAASC,SAAA,QAAiC;AAC1C,SAASC,aAAA,QAAyC;AAClD,SACEC,kBAAA,EACAC,eAAA,EACAC,cAAA,EACAC,YAAA,QAGK;AACP,SAASC,gBAAA,QAAwB;AACjC,SAASC,kBAAA,QAA0E;AACnF,SACEC,mBAAA,QAIK;AACP,SAASC,gBAAA,EAAkBC,YAAA,EAAcC,gBAAA,EAAkBC,YAAA,QAAoB","ignoreList":[]}
|
|
@@ -24,6 +24,8 @@ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
|
24
24
|
}), mod);
|
|
25
25
|
var clients_exports = {};
|
|
26
26
|
__export(clients_exports, {
|
|
27
|
+
DEFAULT_PREPARED_SEND_MAX_AGE_MS: () => import_preparedSend.DEFAULT_PREPARED_SEND_MAX_AGE_MS,
|
|
28
|
+
PreparedSendStaleError: () => import_preparedSend.PreparedSendStaleError,
|
|
27
29
|
ReadOnlyClientError: () => import_types.ReadOnlyClientError,
|
|
28
30
|
ReceiptPendingError: () => import_evm.ReceiptPendingError,
|
|
29
31
|
ReceiptWaitAbortedError: () => import_evm.ReceiptWaitAbortedError,
|
|
@@ -40,6 +42,7 @@ __export(clients_exports, {
|
|
|
40
42
|
evmReadClient: () => import_evmRead.evmReadClient,
|
|
41
43
|
evmReadClients: () => import_evmRead.evmReadClients,
|
|
42
44
|
gpgSignCommand: () => import_gpg.gpgSignCommand,
|
|
45
|
+
prepareEvmSend: () => import_preparedSend.prepareEvmSend,
|
|
43
46
|
solanaMessageClient: () => import_solanaMessage.solanaMessageClient,
|
|
44
47
|
suiClient: () => import_sui.suiClient,
|
|
45
48
|
useBitcoinClient: () => import_hooks.useBitcoinClient,
|
|
@@ -51,6 +54,7 @@ __export(clients_exports, {
|
|
|
51
54
|
module.exports = __toCommonJS(clients_exports);
|
|
52
55
|
var import_types = require("./types.native.js");
|
|
53
56
|
var import_evm = require("./evm.native.js");
|
|
57
|
+
var import_preparedSend = require("./preparedSend.native.js");
|
|
54
58
|
var import_evmRead = require("./evmRead.native.js");
|
|
55
59
|
var import_sui = require("./sui.native.js");
|
|
56
60
|
var import_bitcoin = require("./bitcoin.native.js");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","clients_exports","ReadOnlyClientError","import_types","ReceiptPendingError","import_evm","ReceiptWaitAbortedError","TransactionReplacedError","TransactionRevertedError","UnsupportedClientMethodError","assertGpgSignature","import_gpg","bitcoinClient","import_bitcoin","classifyTxError","clientForConnector","import_connector"],"sources":["../../../src/clients/index.ts"],"sourcesContent":[null],"mappings":"AAMA;;AAAA,IACEA,SAAA,GAAAC,MAAA,CAAAC,cAAA;AAAA,IACAC,gBAAA,GAAAF,MAAA,CAAAG,wBAAA;AAAA,IAAAC,iBAIK,GAAAJ,MAAA,CAAAK,mBAAA;AACP,IAAAC,YAAA,GAAAN,MAAA,CAAAO,SAAA,CAAAC,cAAA;AAAA,IACEC,QAAA,GAAAA,CAAAC,MAAA,EAAAC,GAAA;EACA,SAAAC,IAAA,IAAAD,GAAA,EACAZ,SAAA,CAAAW,MAAA,EAAAE,IAAA;IAAAC,GAAA,EAAAF,GAAA,CAAAC,IAAA;IAAAE,UAAA;EAAA;AAAA;AACA,IACAC,WAAA,GAAAA,CAAAC,EAAA,EAAAC,IAAA,EAAAC,MAAA,EAAAC,IAAA;EACA,IAAAF,IAAA,WAAAA,IAAA,wBAAAA,IAAA;IAAA,
|
|
1
|
+
{"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","clients_exports","DEFAULT_PREPARED_SEND_MAX_AGE_MS","import_preparedSend","PreparedSendStaleError","ReadOnlyClientError","import_types","ReceiptPendingError","import_evm","ReceiptWaitAbortedError","TransactionReplacedError","TransactionRevertedError","UnsupportedClientMethodError","assertGpgSignature","import_gpg","bitcoinClient","import_bitcoin","classifyTxError","clientForConnector","import_connector","connectorAdapter","import_adapter","createGpgSigner","evmClient"],"sources":["../../../src/clients/index.ts"],"sourcesContent":[null],"mappings":"AAMA;;AAAA,IACEA,SAAA,GAAAC,MAAA,CAAAC,cAAA;AAAA,IACAC,gBAAA,GAAAF,MAAA,CAAAG,wBAAA;AAAA,IAAAC,iBAIK,GAAAJ,MAAA,CAAAK,mBAAA;AACP,IAAAC,YAAA,GAAAN,MAAA,CAAAO,SAAA,CAAAC,cAAA;AAAA,IACEC,QAAA,GAAAA,CAAAC,MAAA,EAAAC,GAAA;EACA,SAAAC,IAAA,IAAAD,GAAA,EACAZ,SAAA,CAAAW,MAAA,EAAAE,IAAA;IAAAC,GAAA,EAAAF,GAAA,CAAAC,IAAA;IAAAE,UAAA;EAAA;AAAA;AACA,IACAC,WAAA,GAAAA,CAAAC,EAAA,EAAAC,IAAA,EAAAC,MAAA,EAAAC,IAAA;EACA,IAAAF,IAAA,WAAAA,IAAA,wBAAAA,IAAA;IAAA,KAYK,IAAAG,GAAA,IAAAhB,iBAAA,CAAAa,IAAA,GACP,KAAAX,YAAA,CAAAe,IAAA,CAAAL,EAAA,EAAAI,GAAA,KAAAA,GAAA,KAAAF,MAAA,EACEnB,SAAA,CAAAiB,EAAA,EAAAI,GAAA;MAAAP,GAAA,EAAAA,CAAA,KAAAI,IAAA,CAAAG,GAAA;MAAAN,UAAA,IAAAK,IAAA,GAAAjB,gBAAA,CAAAe,IAAA,EAAAG,GAAA,MAAAD,IAAA,CAAAL;IAAA;EACA;EACA,OAAAE,EAAA;AAAA;AAOF,IAAAM,YAAA,GAAAC,GAAA,IAAAR,WAAA,CAAAhB,SAAA;EAAAyB,KAAA;AAAA,IAAAD,GAAA;AAAA,IACEE,eAAA;AAAAhB,QACA,CAAAgB,eAAA;EAAAC,gCAKK,EAAAA,CAAA,KAAAC,mBAAA,CAAAD,gCAAA;EAEPE,sBAAS,EAAiCA,CAAA,KAAAD,mBAAA,CAAAC,sBAAA;EAC1CC,mBAAS,EAAAA,CAAA,KAAAC,YAAyC,CAAAD,mBAAA;EAClDE,mBAAA,EAAAA,CAAA,KAAAC,UAAA,CAAAD,mBAAA;EACEE,uBAAA,EAAAA,CAAA,KAAAD,UAAA,CAAAC,uBAAA;EACAC,wBAAA,EAAAA,CAAA,KAAAF,UAAA,CAAAE,wBAAA;EACAC,wBAAA,EAAAA,CAAA,KAAAH,UAAA,CAAAG,wBAAA;EACAC,4BAAA,EAAAA,CAAA,KAAAN,YAAA,CAAAM,4BAAA;EAAAC,kBAGK,EAAAA,CAAA,KAAAC,UAAA,CAAAD,kBAAA;EACPE,aAAS,EAAAA,CAAA,KAAAC,cAAwB,CAAAD,aAAA;EACjCE,eAAS,EAAAA,CAAA,KAAAT,UAA0E,CAAAS,eAAA;EACnFC,kBAAA,EAAAA,CAAA,KAAAC,gBAAA,CAAAD,kBAAA;EACEE,gBAAA,EAAAA,CAAA,KAAAC,cAAA,CAAAD,gBAAA;EAAAE,eAIK,EAAAA,CAAA,KAAAR,UAAA,CAAAQ,eAAA;EACPC,SAAS,EAAAA,CAAA,KAAAf,UAAkB,CAAAe,SAAA","ignoreList":[]}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { formatTransactionRequest, numberToHex } from "viem";
|
|
2
|
+
class PreparedSendStaleError extends Error {
|
|
3
|
+
reason;
|
|
4
|
+
constructor(reason, detail) {
|
|
5
|
+
super(`Prepared transaction is stale (${reason}): ${detail}. Prepare it again.`);
|
|
6
|
+
this.name = "PreparedSendStaleError";
|
|
7
|
+
this.reason = reason;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
const DEFAULT_PREPARED_SEND_MAX_AGE_MS = 6e4;
|
|
11
|
+
const same = (a, b) => !!a && !!b && a.toLowerCase() === b.toLowerCase();
|
|
12
|
+
async function prepareEvmSend(parameters) {
|
|
13
|
+
const {
|
|
14
|
+
publicClient,
|
|
15
|
+
request,
|
|
16
|
+
from,
|
|
17
|
+
chainId,
|
|
18
|
+
current
|
|
19
|
+
} = parameters;
|
|
20
|
+
const maxAgeMs = parameters.maxAgeMs ?? DEFAULT_PREPARED_SEND_MAX_AGE_MS;
|
|
21
|
+
const prepared = await publicClient.prepareTransactionRequest({
|
|
22
|
+
account: from,
|
|
23
|
+
chain: publicClient.chain,
|
|
24
|
+
to: parameters.to,
|
|
25
|
+
...(parameters.data ? {
|
|
26
|
+
data: parameters.data
|
|
27
|
+
} : {}),
|
|
28
|
+
...(parameters.value !== void 0 ? {
|
|
29
|
+
value: parameters.value
|
|
30
|
+
} : {}),
|
|
31
|
+
...(parameters.gas !== void 0 ? {
|
|
32
|
+
gas: parameters.gas
|
|
33
|
+
} : {}),
|
|
34
|
+
...(parameters.nonce !== void 0 ? {
|
|
35
|
+
nonce: parameters.nonce
|
|
36
|
+
} : {}),
|
|
37
|
+
parameters: ["fees", "gas", "nonce", "type"]
|
|
38
|
+
});
|
|
39
|
+
const {
|
|
40
|
+
account: _account,
|
|
41
|
+
chain: _chain,
|
|
42
|
+
...transaction
|
|
43
|
+
} = prepared;
|
|
44
|
+
const rpc = {
|
|
45
|
+
...formatTransactionRequest(transaction),
|
|
46
|
+
from,
|
|
47
|
+
chainId: numberToHex(chainId)
|
|
48
|
+
};
|
|
49
|
+
const preparedAt = Date.now();
|
|
50
|
+
return Object.freeze({
|
|
51
|
+
request: Object.freeze(rpc),
|
|
52
|
+
from,
|
|
53
|
+
chainId,
|
|
54
|
+
preparedAt,
|
|
55
|
+
send() {
|
|
56
|
+
const age = Date.now() - preparedAt;
|
|
57
|
+
if (age > maxAgeMs) return Promise.reject(new PreparedSendStaleError("expired", `prepared ${age} ms ago, limit ${maxAgeMs} ms`));
|
|
58
|
+
const now = current?.();
|
|
59
|
+
if (now?.address !== void 0 && !same(now.address, from)) return Promise.reject(new PreparedSendStaleError("account", `prepared for ${from}, wallet is on ${now.address}`));
|
|
60
|
+
if (now?.chainId !== void 0 && now.chainId !== chainId) return Promise.reject(new PreparedSendStaleError("chain", `prepared for ${chainId}, wallet is on ${now.chainId}`));
|
|
61
|
+
return request({
|
|
62
|
+
method: "eth_sendTransaction",
|
|
63
|
+
params: [rpc]
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
export { DEFAULT_PREPARED_SEND_MAX_AGE_MS, PreparedSendStaleError, prepareEvmSend };
|
|
69
|
+
//# sourceMappingURL=preparedSend.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["formatTransactionRequest","numberToHex","PreparedSendStaleError","Error","reason","constructor","detail","name","DEFAULT_PREPARED_SEND_MAX_AGE_MS","same","a","b","toLowerCase","prepareEvmSend","parameters","publicClient","request","from","chainId","current","maxAgeMs","prepared","prepareTransactionRequest","account","chain","to","data","value","gas","nonce","_account","_chain","transaction","rpc","preparedAt","Date","now","Object","freeze","send","age","Promise","reject","address","method","params"],"sources":["../../../src/clients/preparedSend.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,225 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all) __defProp(target, name, {
|
|
9
|
+
get: all[name],
|
|
10
|
+
enumerable: true
|
|
11
|
+
});
|
|
12
|
+
};
|
|
13
|
+
var __copyProps = (to, from, except, desc) => {
|
|
14
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
15
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
16
|
+
get: () => from[key],
|
|
17
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
return to;
|
|
21
|
+
};
|
|
22
|
+
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
23
|
+
value: true
|
|
24
|
+
}), mod);
|
|
25
|
+
var preparedSend_exports = {};
|
|
26
|
+
__export(preparedSend_exports, {
|
|
27
|
+
DEFAULT_PREPARED_SEND_MAX_AGE_MS: () => DEFAULT_PREPARED_SEND_MAX_AGE_MS,
|
|
28
|
+
PreparedSendStaleError: () => PreparedSendStaleError,
|
|
29
|
+
prepareEvmSend: () => prepareEvmSend
|
|
30
|
+
});
|
|
31
|
+
module.exports = __toCommonJS(preparedSend_exports);
|
|
32
|
+
var import_viem = require("viem");
|
|
33
|
+
function _assert_this_initialized(self) {
|
|
34
|
+
if (self === void 0) {
|
|
35
|
+
throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
|
|
36
|
+
}
|
|
37
|
+
return self;
|
|
38
|
+
}
|
|
39
|
+
function _call_super(_this, derived, args) {
|
|
40
|
+
derived = _get_prototype_of(derived);
|
|
41
|
+
return _possible_constructor_return(_this, _is_native_reflect_construct() ? Reflect.construct(derived, args || [], _get_prototype_of(_this).constructor) : derived.apply(_this, args));
|
|
42
|
+
}
|
|
43
|
+
function _class_call_check(instance, Constructor) {
|
|
44
|
+
if (!(instance instanceof Constructor)) {
|
|
45
|
+
throw new TypeError("Cannot call a class as a function");
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
function _construct(Parent, args, Class) {
|
|
49
|
+
if (_is_native_reflect_construct()) {
|
|
50
|
+
_construct = Reflect.construct;
|
|
51
|
+
} else {
|
|
52
|
+
_construct = function construct(Parent2, args2, Class2) {
|
|
53
|
+
var a = [null];
|
|
54
|
+
a.push.apply(a, args2);
|
|
55
|
+
var Constructor = Function.bind.apply(Parent2, a);
|
|
56
|
+
var instance = new Constructor();
|
|
57
|
+
if (Class2) _set_prototype_of(instance, Class2.prototype);
|
|
58
|
+
return instance;
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
return _construct.apply(null, arguments);
|
|
62
|
+
}
|
|
63
|
+
function _define_property(obj, key, value) {
|
|
64
|
+
if (key in obj) {
|
|
65
|
+
Object.defineProperty(obj, key, {
|
|
66
|
+
value,
|
|
67
|
+
enumerable: true,
|
|
68
|
+
configurable: true,
|
|
69
|
+
writable: true
|
|
70
|
+
});
|
|
71
|
+
} else {
|
|
72
|
+
obj[key] = value;
|
|
73
|
+
}
|
|
74
|
+
return obj;
|
|
75
|
+
}
|
|
76
|
+
function _get_prototype_of(o) {
|
|
77
|
+
_get_prototype_of = Object.setPrototypeOf ? Object.getPrototypeOf : function getPrototypeOf(o2) {
|
|
78
|
+
return o2.__proto__ || Object.getPrototypeOf(o2);
|
|
79
|
+
};
|
|
80
|
+
return _get_prototype_of(o);
|
|
81
|
+
}
|
|
82
|
+
function _inherits(subClass, superClass) {
|
|
83
|
+
if (typeof superClass !== "function" && superClass !== null) {
|
|
84
|
+
throw new TypeError("Super expression must either be null or a function");
|
|
85
|
+
}
|
|
86
|
+
subClass.prototype = Object.create(superClass && superClass.prototype, {
|
|
87
|
+
constructor: {
|
|
88
|
+
value: subClass,
|
|
89
|
+
writable: true,
|
|
90
|
+
configurable: true
|
|
91
|
+
}
|
|
92
|
+
});
|
|
93
|
+
if (superClass) _set_prototype_of(subClass, superClass);
|
|
94
|
+
}
|
|
95
|
+
function _is_native_function(fn) {
|
|
96
|
+
return Function.toString.call(fn).indexOf("[native code]") !== -1;
|
|
97
|
+
}
|
|
98
|
+
function _possible_constructor_return(self, call) {
|
|
99
|
+
if (call && (_type_of(call) === "object" || typeof call === "function")) {
|
|
100
|
+
return call;
|
|
101
|
+
}
|
|
102
|
+
return _assert_this_initialized(self);
|
|
103
|
+
}
|
|
104
|
+
function _set_prototype_of(o, p) {
|
|
105
|
+
_set_prototype_of = Object.setPrototypeOf || function setPrototypeOf(o2, p2) {
|
|
106
|
+
o2.__proto__ = p2;
|
|
107
|
+
return o2;
|
|
108
|
+
};
|
|
109
|
+
return _set_prototype_of(o, p);
|
|
110
|
+
}
|
|
111
|
+
function _type_of(obj) {
|
|
112
|
+
"@swc/helpers - typeof";
|
|
113
|
+
|
|
114
|
+
return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
|
|
115
|
+
}
|
|
116
|
+
function _wrap_native_super(Class) {
|
|
117
|
+
var _cache = typeof Map === "function" ? /* @__PURE__ */new Map() : void 0;
|
|
118
|
+
_wrap_native_super = function wrapNativeSuper(Class2) {
|
|
119
|
+
if (Class2 === null || !_is_native_function(Class2)) return Class2;
|
|
120
|
+
if (typeof Class2 !== "function") {
|
|
121
|
+
throw new TypeError("Super expression must either be null or a function");
|
|
122
|
+
}
|
|
123
|
+
if (typeof _cache !== "undefined") {
|
|
124
|
+
if (_cache.has(Class2)) return _cache.get(Class2);
|
|
125
|
+
_cache.set(Class2, Wrapper);
|
|
126
|
+
}
|
|
127
|
+
function Wrapper() {
|
|
128
|
+
return _construct(Class2, arguments, _get_prototype_of(this).constructor);
|
|
129
|
+
}
|
|
130
|
+
Wrapper.prototype = Object.create(Class2.prototype, {
|
|
131
|
+
constructor: {
|
|
132
|
+
value: Wrapper,
|
|
133
|
+
enumerable: false,
|
|
134
|
+
writable: true,
|
|
135
|
+
configurable: true
|
|
136
|
+
}
|
|
137
|
+
});
|
|
138
|
+
return _set_prototype_of(Wrapper, Class2);
|
|
139
|
+
};
|
|
140
|
+
return _wrap_native_super(Class);
|
|
141
|
+
}
|
|
142
|
+
function _is_native_reflect_construct() {
|
|
143
|
+
try {
|
|
144
|
+
var result = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));
|
|
145
|
+
} catch (_) {}
|
|
146
|
+
return (_is_native_reflect_construct = function () {
|
|
147
|
+
return !!result;
|
|
148
|
+
})();
|
|
149
|
+
}
|
|
150
|
+
var PreparedSendStaleError = /* @__PURE__ */function (Error1) {
|
|
151
|
+
"use strict";
|
|
152
|
+
|
|
153
|
+
_inherits(PreparedSendStaleError2, Error1);
|
|
154
|
+
function PreparedSendStaleError2(reason, detail) {
|
|
155
|
+
_class_call_check(this, PreparedSendStaleError2);
|
|
156
|
+
var _this;
|
|
157
|
+
_this = _call_super(this, PreparedSendStaleError2, [`Prepared transaction is stale (${reason}): ${detail}. Prepare it again.`]), _define_property(_this, "reason", void 0);
|
|
158
|
+
_this.name = "PreparedSendStaleError";
|
|
159
|
+
_this.reason = reason;
|
|
160
|
+
return _this;
|
|
161
|
+
}
|
|
162
|
+
return PreparedSendStaleError2;
|
|
163
|
+
}(_wrap_native_super(Error));
|
|
164
|
+
var DEFAULT_PREPARED_SEND_MAX_AGE_MS = 6e4;
|
|
165
|
+
var same = function same2(a, b) {
|
|
166
|
+
return !!a && !!b && a.toLowerCase() === b.toLowerCase();
|
|
167
|
+
};
|
|
168
|
+
async function prepareEvmSend(parameters) {
|
|
169
|
+
var _parameters_maxAgeMs;
|
|
170
|
+
var {
|
|
171
|
+
publicClient,
|
|
172
|
+
request,
|
|
173
|
+
from,
|
|
174
|
+
chainId,
|
|
175
|
+
current
|
|
176
|
+
} = parameters;
|
|
177
|
+
var maxAgeMs = (_parameters_maxAgeMs = parameters.maxAgeMs) !== null && _parameters_maxAgeMs !== void 0 ? _parameters_maxAgeMs : DEFAULT_PREPARED_SEND_MAX_AGE_MS;
|
|
178
|
+
var prepared = await publicClient.prepareTransactionRequest({
|
|
179
|
+
account: from,
|
|
180
|
+
chain: publicClient.chain,
|
|
181
|
+
to: parameters.to,
|
|
182
|
+
...(parameters.data ? {
|
|
183
|
+
data: parameters.data
|
|
184
|
+
} : {}),
|
|
185
|
+
...(parameters.value !== void 0 ? {
|
|
186
|
+
value: parameters.value
|
|
187
|
+
} : {}),
|
|
188
|
+
...(parameters.gas !== void 0 ? {
|
|
189
|
+
gas: parameters.gas
|
|
190
|
+
} : {}),
|
|
191
|
+
...(parameters.nonce !== void 0 ? {
|
|
192
|
+
nonce: parameters.nonce
|
|
193
|
+
} : {}),
|
|
194
|
+
parameters: ["fees", "gas", "nonce", "type"]
|
|
195
|
+
});
|
|
196
|
+
var {
|
|
197
|
+
account: _account,
|
|
198
|
+
chain: _chain,
|
|
199
|
+
...transaction
|
|
200
|
+
} = prepared;
|
|
201
|
+
var rpc = {
|
|
202
|
+
...(0, import_viem.formatTransactionRequest)(transaction),
|
|
203
|
+
from,
|
|
204
|
+
chainId: (0, import_viem.numberToHex)(chainId)
|
|
205
|
+
};
|
|
206
|
+
var preparedAt = Date.now();
|
|
207
|
+
return Object.freeze({
|
|
208
|
+
request: Object.freeze(rpc),
|
|
209
|
+
from,
|
|
210
|
+
chainId,
|
|
211
|
+
preparedAt,
|
|
212
|
+
send() {
|
|
213
|
+
var age = Date.now() - preparedAt;
|
|
214
|
+
if (age > maxAgeMs) return Promise.reject(new PreparedSendStaleError("expired", `prepared ${age} ms ago, limit ${maxAgeMs} ms`));
|
|
215
|
+
var now = current === null || current === void 0 ? void 0 : current();
|
|
216
|
+
if ((now === null || now === void 0 ? void 0 : now.address) !== void 0 && !same(now.address, from)) return Promise.reject(new PreparedSendStaleError("account", `prepared for ${from}, wallet is on ${now.address}`));
|
|
217
|
+
if ((now === null || now === void 0 ? void 0 : now.chainId) !== void 0 && now.chainId !== chainId) return Promise.reject(new PreparedSendStaleError("chain", `prepared for ${chainId}, wallet is on ${now.chainId}`));
|
|
218
|
+
return request({
|
|
219
|
+
method: "eth_sendTransaction",
|
|
220
|
+
params: [rpc]
|
|
221
|
+
});
|
|
222
|
+
}
|
|
223
|
+
});
|
|
224
|
+
}
|
|
225
|
+
//# sourceMappingURL=preparedSend.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","preparedSend_exports","DEFAULT_PREPARED_SEND_MAX_AGE_MS","PreparedSendStaleError","prepareEvmSend","module","exports","import_viem","require","_assert_this_initialized","self","ReferenceError","_call_super","_this","derived","args","_get_prototype_of","_possible_constructor_return","_is_native_reflect_construct","Reflect","construct","constructor","apply","_class_call_check","instance","Constructor","TypeError","_construct","Parent","Class","Parent2","args2","Class2","a","push","Function","bind","_set_prototype_of","arguments","_define_property","obj","configurable"],"sources":["../../../src/clients/preparedSend.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|