thirdweb 5.59.0-nightly-5ab3a81f79e96cb7caed6f591969942b2b67dbb6-20240926000312 → 5.59.1-nightly-21b032d1b845276817c2f8ada5566f4719a41ad0-20240927000336
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/dist/cjs/contract/actions/compiler-metadata.js +16 -10
- package/dist/cjs/contract/actions/compiler-metadata.js.map +1 -1
- package/dist/cjs/contract/deployment/publisher.js +2 -0
- package/dist/cjs/contract/deployment/publisher.js.map +1 -1
- package/dist/cjs/contract/deployment/utils/bootstrap.js +3 -2
- package/dist/cjs/contract/deployment/utils/bootstrap.js.map +1 -1
- package/dist/cjs/exports/utils.js +4 -2
- package/dist/cjs/exports/utils.js.map +1 -1
- package/dist/cjs/extensions/prebuilts/deploy-published.js +6 -3
- package/dist/cjs/extensions/prebuilts/deploy-published.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/Details.js +4 -1
- package/dist/cjs/react/web/ui/ConnectWallet/Details.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatStatusScreen.js +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatStatusScreen.js.map +1 -1
- package/dist/cjs/transaction/actions/zksync/send-eip712-transaction.js +10 -2
- package/dist/cjs/transaction/actions/zksync/send-eip712-transaction.js.map +1 -1
- package/dist/cjs/utils/any-evm/deploy-metadata.js +14 -5
- package/dist/cjs/utils/any-evm/deploy-metadata.js.map +1 -1
- package/dist/cjs/utils/any-evm/zksync/isZkSyncChain.js +4 -1
- package/dist/cjs/utils/any-evm/zksync/isZkSyncChain.js.map +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/cjs/wallets/in-app/web/lib/auth/iframe-auth.js +6 -0
- package/dist/cjs/wallets/in-app/web/lib/auth/iframe-auth.js.map +1 -1
- package/dist/esm/contract/actions/compiler-metadata.js +16 -10
- package/dist/esm/contract/actions/compiler-metadata.js.map +1 -1
- package/dist/esm/contract/deployment/publisher.js +2 -0
- package/dist/esm/contract/deployment/publisher.js.map +1 -1
- package/dist/esm/contract/deployment/utils/bootstrap.js +3 -2
- package/dist/esm/contract/deployment/utils/bootstrap.js.map +1 -1
- package/dist/esm/exports/utils.js +1 -0
- package/dist/esm/exports/utils.js.map +1 -1
- package/dist/esm/extensions/prebuilts/deploy-published.js +6 -3
- package/dist/esm/extensions/prebuilts/deploy-published.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/Details.js +4 -1
- package/dist/esm/react/web/ui/ConnectWallet/Details.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatStatusScreen.js +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatStatusScreen.js.map +1 -1
- package/dist/esm/transaction/actions/zksync/send-eip712-transaction.js +11 -3
- package/dist/esm/transaction/actions/zksync/send-eip712-transaction.js.map +1 -1
- package/dist/esm/utils/any-evm/deploy-metadata.js +14 -5
- package/dist/esm/utils/any-evm/deploy-metadata.js.map +1 -1
- package/dist/esm/utils/any-evm/zksync/isZkSyncChain.js +4 -1
- package/dist/esm/utils/any-evm/zksync/isZkSyncChain.js.map +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/esm/wallets/in-app/web/lib/auth/iframe-auth.js +6 -0
- package/dist/esm/wallets/in-app/web/lib/auth/iframe-auth.js.map +1 -1
- package/dist/types/contract/actions/compiler-metadata.d.ts +2 -1
- package/dist/types/contract/actions/compiler-metadata.d.ts.map +1 -1
- package/dist/types/contract/deployment/publisher.d.ts +2 -0
- package/dist/types/contract/deployment/publisher.d.ts.map +1 -1
- package/dist/types/contract/deployment/utils/bootstrap.d.ts +1 -0
- package/dist/types/contract/deployment/utils/bootstrap.d.ts.map +1 -1
- package/dist/types/exports/utils.d.ts +1 -0
- package/dist/types/exports/utils.d.ts.map +1 -1
- package/dist/types/extensions/prebuilts/deploy-published.d.ts +2 -0
- package/dist/types/extensions/prebuilts/deploy-published.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/Details.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatStatusScreen.d.ts.map +1 -1
- package/dist/types/transaction/actions/zksync/send-eip712-transaction.d.ts.map +1 -1
- package/dist/types/utils/any-evm/deploy-metadata.d.ts +2 -0
- package/dist/types/utils/any-evm/deploy-metadata.d.ts.map +1 -1
- package/dist/types/utils/any-evm/zksync/isZkSyncChain.d.ts.map +1 -1
- package/dist/types/version.d.ts +1 -1
- package/dist/types/wallets/in-app/web/lib/auth/iframe-auth.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/contract/actions/compiler-metadata.ts +20 -11
- package/src/contract/deployment/publisher.ts +4 -0
- package/src/contract/deployment/utils/bootstrap.ts +4 -1
- package/src/exports/utils.ts +1 -0
- package/src/extensions/erc1155/drop1155.test.ts +4 -4
- package/src/extensions/erc20/drop20.test.ts +4 -4
- package/src/extensions/erc721/drop721.test.ts +4 -4
- package/src/extensions/prebuilts/deploy-published.test.ts +1 -1
- package/src/extensions/prebuilts/deploy-published.ts +8 -1
- package/src/react/web/ui/ConnectWallet/Details.tsx +4 -1
- package/src/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatStatusScreen.tsx +0 -1
- package/src/transaction/actions/zksync/send-eip712-transaction.ts +21 -20
- package/src/utils/any-evm/deploy-metadata.ts +26 -11
- package/src/utils/any-evm/zksync/isZkSyncChain.ts +3 -1
- package/src/version.ts +1 -1
- package/src/wallets/in-app/web/lib/auth/iframe-auth.ts +7 -0
@@ -1,4 +1,4 @@
|
|
1
|
-
import { toRlp } from "viem";
|
1
|
+
import { hexToBytes, toRlp } from "viem";
|
2
2
|
import { eth_sendRawTransaction } from "../../../rpc/actions/eth_sendRawTransaction.js";
|
3
3
|
import { getRpcClient } from "../../../rpc/rpc.js";
|
4
4
|
import { toBigInt } from "../../../utils/bigint.js";
|
@@ -87,25 +87,17 @@ export async function populateEip712Transaction(
|
|
87
87
|
options: SendEip712TransactionOptions,
|
88
88
|
): Promise<EIP721TransactionSerializable> {
|
89
89
|
const { account, transaction } = options;
|
90
|
-
let [
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
resolvePromisedValue(transaction.value),
|
102
|
-
resolvePromisedValue(transaction.gas),
|
103
|
-
resolvePromisedValue(transaction.maxFeePerGas),
|
104
|
-
resolvePromisedValue(transaction.maxPriorityFeePerGas),
|
105
|
-
resolvePromisedValue(transaction.eip712).then(
|
106
|
-
(eip712) => eip712?.gasPerPubdata,
|
107
|
-
),
|
108
|
-
]);
|
90
|
+
let [data, to, value, gas, maxFeePerGas, maxPriorityFeePerGas, eip712] =
|
91
|
+
await Promise.all([
|
92
|
+
encode(transaction),
|
93
|
+
resolvePromisedValue(transaction.to),
|
94
|
+
resolvePromisedValue(transaction.value),
|
95
|
+
resolvePromisedValue(transaction.gas),
|
96
|
+
resolvePromisedValue(transaction.maxFeePerGas),
|
97
|
+
resolvePromisedValue(transaction.maxPriorityFeePerGas),
|
98
|
+
resolvePromisedValue(transaction.eip712),
|
99
|
+
]);
|
100
|
+
let gasPerPubdata = eip712?.gasPerPubdata;
|
109
101
|
if (!gas || !maxFeePerGas || !maxPriorityFeePerGas) {
|
110
102
|
// fetch fees and gas
|
111
103
|
const rpc = getRpcClient(transaction);
|
@@ -118,6 +110,15 @@ export async function populateEip712Transaction(
|
|
118
110
|
to,
|
119
111
|
data,
|
120
112
|
value: value ? numberToHex(value) : undefined,
|
113
|
+
gasPerPubdata,
|
114
|
+
eip712Meta: {
|
115
|
+
...eip712,
|
116
|
+
gasPerPubdata: gasPerPubdata ? toHex(gasPerPubdata) : toHex(50000n),
|
117
|
+
factoryDeps: eip712?.factoryDeps?.map((dep) =>
|
118
|
+
Array.from(hexToBytes(dep)),
|
119
|
+
),
|
120
|
+
},
|
121
|
+
type: "0x71",
|
121
122
|
// biome-ignore lint/suspicious/noExplicitAny: TODO add to RPC method types
|
122
123
|
} as any,
|
123
124
|
],
|
@@ -8,6 +8,7 @@ import type { Prettify } from "../type-utils.js";
|
|
8
8
|
type FetchDeployMetadataOptions = {
|
9
9
|
uri: string;
|
10
10
|
client: ThirdwebClient;
|
11
|
+
compilerType?: "solc" | "zksolc";
|
11
12
|
};
|
12
13
|
|
13
14
|
export type FetchDeployMetadataResult = Partial<ExtendedMetadata> &
|
@@ -22,19 +23,25 @@ export type FetchDeployMetadataResult = Partial<ExtendedMetadata> &
|
|
22
23
|
export async function fetchDeployMetadata(
|
23
24
|
options: FetchDeployMetadataOptions,
|
24
25
|
): Promise<FetchDeployMetadataResult> {
|
26
|
+
const isZksolc = options.compilerType === "zksolc";
|
25
27
|
const rawMeta: RawCompilerMetadata = await download({
|
26
28
|
uri: options.uri,
|
27
29
|
client: options.client,
|
28
30
|
}).then((r) => r.json());
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
31
|
+
|
32
|
+
if (
|
33
|
+
isZksolc &&
|
34
|
+
(!rawMeta.compilers?.zksolc || rawMeta.compilers?.zksolc.length === 0)
|
35
|
+
) {
|
36
|
+
throw new Error(`No zksolc metadata found for contract: ${rawMeta.name}`);
|
37
|
+
}
|
38
|
+
|
39
|
+
const metadataUri = isZksolc
|
40
|
+
? rawMeta.compilers.zksolc[0].metadataUri
|
41
|
+
: rawMeta.metadataUri;
|
42
|
+
const bytecodeUri = isZksolc
|
43
|
+
? rawMeta.compilers.zksolc[0].bytecodeUri
|
44
|
+
: rawMeta.bytecodeUri;
|
38
45
|
const [deployBytecode, parsedMeta] = await Promise.all([
|
39
46
|
download({ uri: bytecodeUri, client: options.client }).then(
|
40
47
|
(res) => res.text() as Promise<Hex>,
|
@@ -42,6 +49,7 @@ export async function fetchDeployMetadata(
|
|
42
49
|
fetchAndParseCompilerMetadata({
|
43
50
|
client: options.client,
|
44
51
|
uri: metadataUri,
|
52
|
+
compilerType: options.compilerType,
|
45
53
|
}),
|
46
54
|
]);
|
47
55
|
|
@@ -66,12 +74,18 @@ async function fetchAndParseCompilerMetadata(
|
|
66
74
|
requestTimeoutMs: CONTRACT_METADATA_TIMEOUT_SEC,
|
67
75
|
})
|
68
76
|
).json();
|
69
|
-
if (
|
77
|
+
if (
|
78
|
+
(!metadata || !metadata.output) &&
|
79
|
+
(!metadata.source_metadata || !metadata.source_metadata.output)
|
80
|
+
) {
|
70
81
|
throw new Error(
|
71
82
|
`Could not resolve metadata for contract at ${options.uri}`,
|
72
83
|
);
|
73
84
|
}
|
74
|
-
return {
|
85
|
+
return {
|
86
|
+
...metadata,
|
87
|
+
...formatCompilerMetadata(metadata, options.compilerType),
|
88
|
+
};
|
75
89
|
}
|
76
90
|
|
77
91
|
// types
|
@@ -128,6 +142,7 @@ type ParsedCompilerMetadata = {
|
|
128
142
|
};
|
129
143
|
licenses: string[];
|
130
144
|
isPartialAbi?: boolean;
|
145
|
+
zk_version?: string;
|
131
146
|
};
|
132
147
|
|
133
148
|
export type CompilerMetadata = Prettify<
|
package/src/version.ts
CHANGED
@@ -1 +1 @@
|
|
1
|
-
export const version = "5.59.
|
1
|
+
export const version = "5.59.1-nightly-21b032d1b845276817c2f8ada5566f4719a41ad0-20240927000336";
|
@@ -321,6 +321,13 @@ export class Auth {
|
|
321
321
|
* @internal
|
322
322
|
*/
|
323
323
|
async logout(): Promise<LogoutReturnType> {
|
324
|
+
if (this.AuthQuerier) {
|
325
|
+
await this.AuthQuerier.call<LogoutReturnType>({
|
326
|
+
procedureName: "logout",
|
327
|
+
params: undefined,
|
328
|
+
});
|
329
|
+
}
|
330
|
+
|
324
331
|
const isRemoveAuthCookie = await this.localStorage.removeAuthCookie();
|
325
332
|
const isRemoveUserId = await this.localStorage.removeWalletUserId();
|
326
333
|
|