thirdweb 5.108.13 → 5.108.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/dist/cjs/cli/commands/stylus/create.js +16 -0
- package/dist/cjs/cli/commands/stylus/create.js.map +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/cjs/wallets/coinbase/coinbase-web.js +9 -1
- package/dist/cjs/wallets/coinbase/coinbase-web.js.map +1 -1
- package/dist/cjs/x402/fetchWithPayment.js +3 -3
- package/dist/cjs/x402/fetchWithPayment.js.map +1 -1
- package/dist/esm/cli/commands/stylus/create.js +16 -0
- package/dist/esm/cli/commands/stylus/create.js.map +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/esm/wallets/coinbase/coinbase-web.js +9 -1
- package/dist/esm/wallets/coinbase/coinbase-web.js.map +1 -1
- package/dist/esm/x402/fetchWithPayment.js +3 -3
- package/dist/esm/x402/fetchWithPayment.js.map +1 -1
- package/dist/scripts/bridge-widget.js +3 -3
- package/dist/types/cli/commands/stylus/create.d.ts.map +1 -1
- package/dist/types/version.d.ts +1 -1
- package/dist/types/wallets/coinbase/coinbase-web.d.ts.map +1 -1
- package/dist/types/x402/fetchWithPayment.d.ts.map +1 -1
- package/package.json +3 -3
- package/src/cli/commands/stylus/create.ts +14 -0
- package/src/extensions/erc721/read/getNFT.test.ts +1 -1
- package/src/extensions/erc721/read/getNFTs.test.ts +5 -6
- package/src/version.ts +1 -1
- package/src/wallets/coinbase/coinbase-web.ts +11 -1
- package/src/x402/fetchWithPayment.ts +3 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../../../src/cli/commands/stylus/create.ts"],"names":[],"mappings":"AAKA,wBAAsB,mBAAmB,
|
|
1
|
+
{"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../../../src/cli/commands/stylus/create.ts"],"names":[],"mappings":"AAKA,wBAAsB,mBAAmB,kBA2IxC"}
|
package/dist/types/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const version = "5.108.
|
|
1
|
+
export declare const version = "5.108.14";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"coinbase-web.d.ts","sourceRoot":"","sources":["../../../../src/wallets/coinbase/coinbase-web.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sDAAsD,CAAC;AAKvF,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAEnD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAU7D,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAQ3C,OAAO,KAAK,EACV,OAAO,EAEP,MAAM,EACP,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAI5E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EACV,gBAAgB,EAChB,sBAAsB,EACvB,MAAM,oBAAoB,CAAC;AAG5B,MAAM,MAAM,6BAA6B,GACrC;IACE;;;;;;;;;;;;;;;OAeG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC;IAE1B;;;;;;;;;;;OAWG;IACH,YAAY,CAAC,EAAE,UAAU,CAAC;IAE1B;;;;;;;;OAQG;IACH,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC;IAEjB,YAAY,CAAC,EAAE;QACb;;;;WAIG;QACH,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;CACH,GACD,SAAS,CAAC;AAEd;;GAEG;AACH,MAAM,MAAM,kCAAkC,GAAG;IAC/C;;OAEG;IACH,MAAM,EAAE,cAAc,CAAC;IAEvB;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC;CACf,CAAC;AAMF;;GAEG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,CAAC,EAAE,gBAAgB,CAAC,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,GAC7C,OAAO,CAAC,iBAAiB,CAAC,CA8B5B;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,MAAM,GACb,MAAM,IAAI,MAAM,CAAC,OAAO,QAAQ,CAAC,CAEnC;
|
|
1
|
+
{"version":3,"file":"coinbase-web.d.ts","sourceRoot":"","sources":["../../../../src/wallets/coinbase/coinbase-web.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sDAAsD,CAAC;AAKvF,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAEnD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAU7D,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAQ3C,OAAO,KAAK,EACV,OAAO,EAEP,MAAM,EACP,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAI5E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EACV,gBAAgB,EAChB,sBAAsB,EACvB,MAAM,oBAAoB,CAAC;AAG5B,MAAM,MAAM,6BAA6B,GACrC;IACE;;;;;;;;;;;;;;;OAeG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC;IAE1B;;;;;;;;;;;OAWG;IACH,YAAY,CAAC,EAAE,UAAU,CAAC;IAE1B;;;;;;;;OAQG;IACH,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC;IAEjB,YAAY,CAAC,EAAE;QACb;;;;WAIG;QACH,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;CACH,GACD,SAAS,CAAC;AAEd;;GAEG;AACH,MAAM,MAAM,kCAAkC,GAAG;IAC/C;;OAEG;IACH,MAAM,EAAE,cAAc,CAAC;IAEvB;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC;CACf,CAAC;AAMF;;GAEG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,CAAC,EAAE,gBAAgB,CAAC,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,GAC7C,OAAO,CAAC,iBAAiB,CAAC,CA8B5B;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,MAAM,GACb,MAAM,IAAI,MAAM,CAAC,OAAO,QAAQ,CAAC,CAEnC;AAkLD,iBAAS,SAAS,CAChB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,iBAAiB,EAC3B,OAAO,EAAE,aAAa,CAAC,OAAO,QAAQ,CAAC,EACvC,MAAM,EAAE,cAAc,GACrB,CAAC,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,aAAa,CAAC,CA6C/C;AAED;;GAEG;AACH,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,sBAAsB,CAAC,OAAO,QAAQ,CAAC,EAChD,OAAO,EAAE,aAAa,CAAC,OAAO,QAAQ,CAAC,EACvC,QAAQ,EAAE,iBAAiB,GAC1B,OAAO,CAAC,UAAU,CAAC,OAAO,SAAS,CAAC,CAAC,CA2BvC;AAED;;GAEG;AACH,wBAAsB,4BAA4B,CAChD,OAAO,EAAE,sBAAsB,CAAC,OAAO,QAAQ,CAAC,EAChD,OAAO,EAAE,aAAa,CAAC,OAAO,QAAQ,CAAC,EACvC,QAAQ,EAAE,iBAAiB,GAC1B,OAAO,CAAC,UAAU,CAAC,OAAO,SAAS,CAAC,CAAC,CAsBvC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetchWithPayment.d.ts","sourceRoot":"","sources":["../../../src/x402/fetchWithPayment.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iCAAiC,CAAC;AAQ9D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,OAAO,UAAU,CAAC,KAAK,EAC9B,MAAM,EAAE,cAAc,EACtB,MAAM,EAAE,MAAM,EACd,QAAQ,GAAE,MAA4B,IAExB,OAAO,WAAW,EAAE,OAAO,WAAW,
|
|
1
|
+
{"version":3,"file":"fetchWithPayment.d.ts","sourceRoot":"","sources":["../../../src/x402/fetchWithPayment.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iCAAiC,CAAC;AAQ9D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,OAAO,UAAU,CAAC,KAAK,EAC9B,MAAM,EAAE,cAAc,EACtB,MAAM,EAAE,MAAM,EACd,QAAQ,GAAE,MAA4B,IAExB,OAAO,WAAW,EAAE,OAAO,WAAW,uBAkFrD"}
|
package/package.json
CHANGED
|
@@ -40,8 +40,8 @@
|
|
|
40
40
|
"viem": "2.37.9",
|
|
41
41
|
"x402": "0.6.1",
|
|
42
42
|
"zod": "3.25.75",
|
|
43
|
-
"@thirdweb-dev/
|
|
44
|
-
"@thirdweb-dev/
|
|
43
|
+
"@thirdweb-dev/insight": "1.1.1",
|
|
44
|
+
"@thirdweb-dev/engine": "3.3.0"
|
|
45
45
|
},
|
|
46
46
|
"devDependencies": {
|
|
47
47
|
"@aws-sdk/client-kms": "3.592.0",
|
|
@@ -399,7 +399,7 @@
|
|
|
399
399
|
}
|
|
400
400
|
},
|
|
401
401
|
"typings": "./dist/types/exports/thirdweb.d.ts",
|
|
402
|
-
"version": "5.108.
|
|
402
|
+
"version": "5.108.14",
|
|
403
403
|
"scripts": {
|
|
404
404
|
"bench": "vitest -c ./test/vitest.config.ts bench",
|
|
405
405
|
"bench:compare": "bun run ./benchmarks/run.ts",
|
|
@@ -58,6 +58,8 @@ export async function createStylusProject() {
|
|
|
58
58
|
{ title: "Airdrop ERC20", value: "airdrop20" },
|
|
59
59
|
{ title: "Airdrop ERC721", value: "airdrop721" },
|
|
60
60
|
{ title: "Airdrop ERC1155", value: "airdrop1155" },
|
|
61
|
+
{ title: "ZK ERC721", value: "zk-erc721" },
|
|
62
|
+
{ title: "ZK ERC20", value: "zk-erc20" },
|
|
61
63
|
],
|
|
62
64
|
message: "Select a template:",
|
|
63
65
|
name: "projectType",
|
|
@@ -119,6 +121,18 @@ export async function createStylusProject() {
|
|
|
119
121
|
newProject = spawnSync("git", ["clone", repoUrl, projectName], {
|
|
120
122
|
stdio: "inherit",
|
|
121
123
|
});
|
|
124
|
+
} else if (projectType === "zk-erc721") {
|
|
125
|
+
const repoUrl = "git@github.com:thirdweb-example/stylus-zk-erc721.git";
|
|
126
|
+
spinner.start(`Creating new ZK ERC721 Stylus project: ${projectName}...`);
|
|
127
|
+
newProject = spawnSync("git", ["clone", repoUrl, projectName], {
|
|
128
|
+
stdio: "inherit",
|
|
129
|
+
});
|
|
130
|
+
} else if (projectType === "zk-erc20") {
|
|
131
|
+
const repoUrl = "git@github.com:thirdweb-example/stylus-zk-erc20.git";
|
|
132
|
+
spinner.start(`Creating new ZK ERC20 Stylus project: ${projectName}...`);
|
|
133
|
+
newProject = spawnSync("git", ["clone", repoUrl, projectName], {
|
|
134
|
+
stdio: "inherit",
|
|
135
|
+
});
|
|
122
136
|
}
|
|
123
137
|
|
|
124
138
|
if (!newProject || newProject.status !== 0) {
|
|
@@ -44,7 +44,7 @@ describe.runIf(process.env.TW_SECRET_KEY)("erc721.getNFT", () => {
|
|
|
44
44
|
"uri": "ipfs://QmPMc4tcBsMqLRuCQtPmPe84bpSjrC3Ky7t3JWuHXYB4aS/1",
|
|
45
45
|
},
|
|
46
46
|
"owner": null,
|
|
47
|
-
"tokenAddress": "
|
|
47
|
+
"tokenAddress": "0x8a90CAb2b38dba80c64b7734e58Ee1dB38B8992e",
|
|
48
48
|
"tokenURI": "ipfs://QmPMc4tcBsMqLRuCQtPmPe84bpSjrC3Ky7t3JWuHXYB4aS/1",
|
|
49
49
|
"type": "ERC721",
|
|
50
50
|
}
|
|
@@ -13,7 +13,6 @@ describe.runIf(process.env.TW_SECRET_KEY)("erc721.getNFTs", () => {
|
|
|
13
13
|
});
|
|
14
14
|
|
|
15
15
|
expect(nfts.length).toBe(5);
|
|
16
|
-
// TODO (insight): re-enable once insight fixes the client id caching issue
|
|
17
16
|
expect(nfts).toMatchInlineSnapshot(`
|
|
18
17
|
[
|
|
19
18
|
{
|
|
@@ -49,7 +48,7 @@ describe.runIf(process.env.TW_SECRET_KEY)("erc721.getNFTs", () => {
|
|
|
49
48
|
"uri": "ipfs://QmPMc4tcBsMqLRuCQtPmPe84bpSjrC3Ky7t3JWuHXYB4aS/0",
|
|
50
49
|
},
|
|
51
50
|
"owner": null,
|
|
52
|
-
"tokenAddress": "
|
|
51
|
+
"tokenAddress": "0x8a90CAb2b38dba80c64b7734e58Ee1dB38B8992e",
|
|
53
52
|
"tokenURI": "ipfs://QmPMc4tcBsMqLRuCQtPmPe84bpSjrC3Ky7t3JWuHXYB4aS/0",
|
|
54
53
|
"type": "ERC721",
|
|
55
54
|
},
|
|
@@ -86,7 +85,7 @@ describe.runIf(process.env.TW_SECRET_KEY)("erc721.getNFTs", () => {
|
|
|
86
85
|
"uri": "ipfs://QmPMc4tcBsMqLRuCQtPmPe84bpSjrC3Ky7t3JWuHXYB4aS/1",
|
|
87
86
|
},
|
|
88
87
|
"owner": null,
|
|
89
|
-
"tokenAddress": "
|
|
88
|
+
"tokenAddress": "0x8a90CAb2b38dba80c64b7734e58Ee1dB38B8992e",
|
|
90
89
|
"tokenURI": "ipfs://QmPMc4tcBsMqLRuCQtPmPe84bpSjrC3Ky7t3JWuHXYB4aS/1",
|
|
91
90
|
"type": "ERC721",
|
|
92
91
|
},
|
|
@@ -123,7 +122,7 @@ describe.runIf(process.env.TW_SECRET_KEY)("erc721.getNFTs", () => {
|
|
|
123
122
|
"uri": "ipfs://QmPMc4tcBsMqLRuCQtPmPe84bpSjrC3Ky7t3JWuHXYB4aS/2",
|
|
124
123
|
},
|
|
125
124
|
"owner": null,
|
|
126
|
-
"tokenAddress": "
|
|
125
|
+
"tokenAddress": "0x8a90CAb2b38dba80c64b7734e58Ee1dB38B8992e",
|
|
127
126
|
"tokenURI": "ipfs://QmPMc4tcBsMqLRuCQtPmPe84bpSjrC3Ky7t3JWuHXYB4aS/2",
|
|
128
127
|
"type": "ERC721",
|
|
129
128
|
},
|
|
@@ -160,7 +159,7 @@ describe.runIf(process.env.TW_SECRET_KEY)("erc721.getNFTs", () => {
|
|
|
160
159
|
"uri": "ipfs://QmPMc4tcBsMqLRuCQtPmPe84bpSjrC3Ky7t3JWuHXYB4aS/3",
|
|
161
160
|
},
|
|
162
161
|
"owner": null,
|
|
163
|
-
"tokenAddress": "
|
|
162
|
+
"tokenAddress": "0x8a90CAb2b38dba80c64b7734e58Ee1dB38B8992e",
|
|
164
163
|
"tokenURI": "ipfs://QmPMc4tcBsMqLRuCQtPmPe84bpSjrC3Ky7t3JWuHXYB4aS/3",
|
|
165
164
|
"type": "ERC721",
|
|
166
165
|
},
|
|
@@ -197,7 +196,7 @@ describe.runIf(process.env.TW_SECRET_KEY)("erc721.getNFTs", () => {
|
|
|
197
196
|
"uri": "ipfs://QmPMc4tcBsMqLRuCQtPmPe84bpSjrC3Ky7t3JWuHXYB4aS/4",
|
|
198
197
|
},
|
|
199
198
|
"owner": null,
|
|
200
|
-
"tokenAddress": "
|
|
199
|
+
"tokenAddress": "0x8a90CAb2b38dba80c64b7734e58Ee1dB38B8992e",
|
|
201
200
|
"tokenURI": "ipfs://QmPMc4tcBsMqLRuCQtPmPe84bpSjrC3Ky7t3JWuHXYB4aS/4",
|
|
202
201
|
"type": "ERC721",
|
|
203
202
|
},
|
package/src/version.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const version = "5.108.
|
|
1
|
+
export const version = "5.108.14";
|
|
@@ -188,7 +188,17 @@ function createAccount({
|
|
|
188
188
|
onTransactionRequested: async () => {
|
|
189
189
|
// make sure to show the coinbase popup BEFORE doing any transaction preprocessing
|
|
190
190
|
// otherwise the popup might get blocked in safari
|
|
191
|
-
|
|
191
|
+
// but only if using cb smart wallet (web based)
|
|
192
|
+
if (window.localStorage) {
|
|
193
|
+
// this is the local storage key for the signer type in the cb web sdk
|
|
194
|
+
// value can be "scw" (web) or "walletlink" (mobile wallet)
|
|
195
|
+
const signerType = window.localStorage.getItem(
|
|
196
|
+
"-CBWSDK:SignerConfigurator:SignerType",
|
|
197
|
+
);
|
|
198
|
+
if (signerType === "scw") {
|
|
199
|
+
await showCoinbasePopup(provider);
|
|
200
|
+
}
|
|
201
|
+
}
|
|
192
202
|
},
|
|
193
203
|
async sendTransaction(tx: SendTransactionOption) {
|
|
194
204
|
const transactionHash = (await provider.request({
|
|
@@ -82,6 +82,7 @@ export function wrapFetchWithPayment(
|
|
|
82
82
|
parsedPaymentRequirements,
|
|
83
83
|
chain.id,
|
|
84
84
|
"exact",
|
|
85
|
+
error,
|
|
85
86
|
);
|
|
86
87
|
|
|
87
88
|
if (!selectedPaymentRequirements) {
|
|
@@ -141,10 +142,11 @@ function defaultPaymentRequirementsSelector(
|
|
|
141
142
|
paymentRequirements: RequestedPaymentRequirements[],
|
|
142
143
|
chainId: number,
|
|
143
144
|
scheme: "exact",
|
|
145
|
+
error?: string,
|
|
144
146
|
) {
|
|
145
147
|
if (!paymentRequirements.length) {
|
|
146
148
|
throw new Error(
|
|
147
|
-
|
|
149
|
+
`No valid payment requirements found in server 402 response. ${error}`,
|
|
148
150
|
);
|
|
149
151
|
}
|
|
150
152
|
const currentWalletNetwork = ChainIdToNetwork[chainId] || `eip155:${chainId}`;
|