thirdweb 5.80.1-nightly-8b1a60d5b6a6b29cd1d7a72f4f43040341d7048b-20250102000330 → 5.80.1-nightly-c948e71a16b5e27e10b417cd0ef9cece70179a57-20250104000328

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.
Files changed (52) hide show
  1. package/dist/cjs/contract/contract.js.map +1 -1
  2. package/dist/cjs/react/web/ui/prebuilt/Wallet/icon.js +27 -2
  3. package/dist/cjs/react/web/ui/prebuilt/Wallet/icon.js.map +1 -1
  4. package/dist/cjs/rpc/rpc.js +15 -19
  5. package/dist/cjs/rpc/rpc.js.map +1 -1
  6. package/dist/cjs/utils/address.js +3 -10
  7. package/dist/cjs/utils/address.js.map +1 -1
  8. package/dist/cjs/version.js +1 -1
  9. package/dist/cjs/wallets/smart/index.js +14 -1
  10. package/dist/cjs/wallets/smart/index.js.map +1 -1
  11. package/dist/esm/contract/contract.js.map +1 -1
  12. package/dist/esm/react/web/ui/prebuilt/Wallet/icon.js +26 -2
  13. package/dist/esm/react/web/ui/prebuilt/Wallet/icon.js.map +1 -1
  14. package/dist/esm/rpc/rpc.js +15 -19
  15. package/dist/esm/rpc/rpc.js.map +1 -1
  16. package/dist/esm/utils/address.js +3 -10
  17. package/dist/esm/utils/address.js.map +1 -1
  18. package/dist/esm/version.js +1 -1
  19. package/dist/esm/wallets/smart/index.js +14 -1
  20. package/dist/esm/wallets/smart/index.js.map +1 -1
  21. package/dist/types/adapters/ethers5.d.ts +1 -1
  22. package/dist/types/adapters/ethers6.d.ts +1 -1
  23. package/dist/types/contract/contract.d.ts +5 -4
  24. package/dist/types/contract/contract.d.ts.map +1 -1
  25. package/dist/types/contract/deployment/utils/bootstrap.d.ts +4 -4
  26. package/dist/types/contract/deployment/utils/bootstrap.d.ts.map +1 -1
  27. package/dist/types/contract/deployment/utils/clone-factory.d.ts +1 -1
  28. package/dist/types/contract/deployment/utils/clone-factory.d.ts.map +1 -1
  29. package/dist/types/contract/deployment/utils/create-2-factory.d.ts +1 -1
  30. package/dist/types/contract/deployment/utils/create-2-factory.d.ts.map +1 -1
  31. package/dist/types/extensions/modules/common/getOrDeployModule.d.ts +2 -2
  32. package/dist/types/extensions/modules/common/getOrDeployModule.d.ts.map +1 -1
  33. package/dist/types/extensions/thirdweb/write/publish.d.ts +1 -1
  34. package/dist/types/extensions/thirdweb/write/publish.d.ts.map +1 -1
  35. package/dist/types/react/core/hooks/connection/ConnectButtonProps.d.ts +7 -2
  36. package/dist/types/react/core/hooks/connection/ConnectButtonProps.d.ts.map +1 -1
  37. package/dist/types/react/web/ui/prebuilt/Wallet/icon.d.ts +28 -2
  38. package/dist/types/react/web/ui/prebuilt/Wallet/icon.d.ts.map +1 -1
  39. package/dist/types/rpc/rpc.d.ts.map +1 -1
  40. package/dist/types/utils/address.d.ts.map +1 -1
  41. package/dist/types/version.d.ts +1 -1
  42. package/package.json +2 -2
  43. package/src/contract/contract.ts +12 -8
  44. package/src/react/core/hooks/connection/ConnectButtonProps.ts +7 -2
  45. package/src/react/web/ui/prebuilt/Wallet/icon.test.tsx +10 -1
  46. package/src/react/web/ui/prebuilt/Wallet/icon.tsx +35 -4
  47. package/src/rpc/rpc.ts +18 -23
  48. package/src/utils/address.ts +4 -11
  49. package/src/version.ts +1 -1
  50. package/src/wallets/smart/index.ts +16 -1
  51. package/src/wallets/smart/smart-wallet-integration-v07.test.ts +17 -0
  52. package/src/wallets/smart/smart-wallet-integration.test.ts +15 -0
@@ -1 +1 @@
1
- {"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../../../src/contract/contract.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,SAAS,CAAC;AACnC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAG1D;;GAEG;AACH,MAAM,MAAM,eAAe,CAAC,GAAG,SAAS,GAAG,GAAG,EAAE,IAAI;IAClD,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,KAAK,CAAC;IACb,QAAQ,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC;CACpB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,gBAAgB,CAAC,GAAG,SAAS,GAAG,GAAG,EAAE,IAAI,QAAQ,CAC3D,eAAe,CAAC,GAAG,CAAC,CACrB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,WAAW,CAAC,KAAK,CAAC,GAAG,SAAS,GAAG,GAAG,EAAE,EACpD,OAAO,EAAE,eAAe,CAAC,GAAG,CAAC,GAC5B,gBAAgB,CAAC,GAAG,CAAC,CAiBvB"}
1
+ {"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../../../src/contract/contract.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,SAAS,CAAC;AACnC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,KAAK,OAAO,EAAa,MAAM,qBAAqB,CAAC;AAE9D;;GAEG;AACH,MAAM,MAAM,eAAe,CACzB,GAAG,SAAS,GAAG,GAAG,EAAE,EACpB,OAAO,SAAS,MAAM,GAAG,MAAM,IAC7B;IACF,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,KAAK,CAAC;IACb,QAAQ,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC;CACpB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,gBAAgB,CAC1B,GAAG,SAAS,GAAG,GAAG,EAAE,EACpB,OAAO,SAAS,MAAM,GAAG,MAAM,IAC7B,QAAQ,CAAC,eAAe,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC;AAE5C;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,WAAW,CAAC,KAAK,CAAC,GAAG,SAAS,GAAG,GAAG,EAAE,EACpD,OAAO,EAAE,eAAe,CAAC,GAAG,CAAC,GAC5B,gBAAgB,CAAC,GAAG,EAAE,OAAO,CAAC,CAiBhC"}
@@ -30,7 +30,7 @@ export declare function getOrDeployInfraForPublishedContract(args: ClientAndChai
30
30
  * @internal
31
31
  * @returns the deployed clone factory contract
32
32
  */
33
- export declare function deployCloneFactory(options: ClientAndChainAndAccount): Promise<Readonly<import("../../contract.js").ContractOptions<[]>>>;
33
+ export declare function deployCloneFactory(options: ClientAndChainAndAccount): Promise<Readonly<import("../../contract.js").ContractOptions<[], string>>>;
34
34
  /**
35
35
  * @internal
36
36
  * @returns the deployed infra contract
@@ -40,7 +40,7 @@ export declare function deployImplementation(options: ClientAndChainAndAccount &
40
40
  constructorParams?: Record<string, unknown>;
41
41
  publisher?: string;
42
42
  version?: string;
43
- }): Promise<Readonly<import("../../contract.js").ContractOptions<[]>>>;
43
+ }): Promise<Readonly<import("../../contract.js").ContractOptions<[], string>>>;
44
44
  /**
45
45
  * Convenience function to get or deploy an infra contract
46
46
  * @internal
@@ -50,9 +50,9 @@ export declare function getOrDeployInfraContract(options: ClientAndChainAndAccou
50
50
  constructorParams?: Record<string, unknown>;
51
51
  publisher?: string;
52
52
  version?: string;
53
- }): Promise<Readonly<import("../../contract.js").ContractOptions<[]>>>;
53
+ }): Promise<Readonly<import("../../contract.js").ContractOptions<[], string>>>;
54
54
  export declare function getOrDeployInfraContractFromMetadata(options: ClientAndChainAndAccount & {
55
55
  contractMetadata: FetchDeployMetadataResult;
56
56
  constructorParams?: Record<string, unknown>;
57
- }): Promise<Readonly<import("../../contract.js").ContractOptions<[]>>>;
57
+ }): Promise<Readonly<import("../../contract.js").ContractOptions<[], string>>>;
58
58
  //# sourceMappingURL=bootstrap.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../../../../../src/contract/deployment/utils/bootstrap.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,yBAAyB,EAE/B,MAAM,2CAA2C,CAAC;AAEnD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACxE,OAAO,EAAE,KAAK,gBAAgB,EAAe,MAAM,mBAAmB,CAAC;AAavE,OAAO,EACL,KAAK,eAAe,EAIrB,MAAM,YAAY,CAAC;AAEpB;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,oCAAoC,CACxD,IAAI,EAAE,wBAAwB,GAAG;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GACA,OAAO,CAAC;IACT,oBAAoB,EAAE,gBAAgB,CAAC;IACvC,sBAAsB,EAAE,gBAAgB,CAAC;CAC1C,CAAC,CA6FD;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,wBAAwB,sEAmBzE;AAED;;;GAGG;AACH,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,wBAAwB,GAAG;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,sEASF;AAED;;;GAGG;AACH,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,wBAAwB,GAAG;IAClC,UAAU,EAAE,eAAe,CAAC;IAC5B,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,sEA2BF;AAED,wBAAsB,oCAAoC,CACxD,OAAO,EAAE,wBAAwB,GAAG;IAClC,gBAAgB,EAAE,yBAAyB,CAAC;IAC5C,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC7C,sEAkBF"}
1
+ {"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../../../../../src/contract/deployment/utils/bootstrap.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,yBAAyB,EAE/B,MAAM,2CAA2C,CAAC;AAEnD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACxE,OAAO,EAAE,KAAK,gBAAgB,EAAe,MAAM,mBAAmB,CAAC;AAavE,OAAO,EACL,KAAK,eAAe,EAIrB,MAAM,YAAY,CAAC;AAEpB;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,oCAAoC,CACxD,IAAI,EAAE,wBAAwB,GAAG;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GACA,OAAO,CAAC;IACT,oBAAoB,EAAE,gBAAgB,CAAC;IACvC,sBAAsB,EAAE,gBAAgB,CAAC;CAC1C,CAAC,CA6FD;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,wBAAwB,8EAmBzE;AAED;;;GAGG;AACH,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,wBAAwB,GAAG;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,8EASF;AAED;;;GAGG;AACH,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,wBAAwB,GAAG;IAClC,UAAU,EAAE,eAAe,CAAC;IAC5B,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,8EA2BF;AAED,wBAAsB,oCAAoC,CACxD,OAAO,EAAE,wBAAwB,GAAG;IAClC,gBAAgB,EAAE,yBAAyB,CAAC;IAC5C,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC7C,8EAkBF"}
@@ -6,5 +6,5 @@ import type { ClientAndChain } from "../../../utils/types.js";
6
6
  *
7
7
  * @internal
8
8
  */
9
- export declare function getDeployedCloneFactoryContract(args: ClientAndChain): Promise<Readonly<import("../../contract.js").ContractOptions<[]>> | null>;
9
+ export declare function getDeployedCloneFactoryContract(args: ClientAndChain): Promise<Readonly<import("../../contract.js").ContractOptions<[], string>> | null>;
10
10
  //# sourceMappingURL=clone-factory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"clone-factory.d.ts","sourceRoot":"","sources":["../../../../../src/contract/deployment/utils/clone-factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAG9D;;;;;;GAMG;AACH,wBAAsB,+BAA+B,CAAC,IAAI,EAAE,cAAc,6EAoBzE"}
1
+ {"version":3,"file":"clone-factory.d.ts","sourceRoot":"","sources":["../../../../../src/contract/deployment/utils/clone-factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAG9D;;;;;;GAMG;AACH,wBAAsB,+BAA+B,CAAC,IAAI,EAAE,cAAc,qFAoBzE"}
@@ -9,7 +9,7 @@ export declare function computeCreate2FactoryAddress(options: ClientAndChain): P
9
9
  /**
10
10
  * @internal
11
11
  */
12
- export declare function getDeployedCreate2Factory(options: ClientAndChain): Promise<Readonly<import("../../contract.js").ContractOptions<[]>> | null>;
12
+ export declare function getDeployedCreate2Factory(options: ClientAndChain): Promise<Readonly<import("../../contract.js").ContractOptions<[], `0x${string}`>> | null>;
13
13
  /**
14
14
  * Deploys the Create2 factory contract using a keyless transaction.
15
15
  * @internal
@@ -1 +1 @@
1
- {"version":3,"file":"create-2-factory.d.ts","sourceRoot":"","sources":["../../../../../src/contract/deployment/utils/create-2-factory.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EACV,cAAc,EACd,wBAAwB,EACzB,MAAM,yBAAyB,CAAC;AA0BjC;;;;;GAKG;AACH,wBAAsB,4BAA4B,CAChD,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,MAAM,CAAC,CAkFjB;AAED;;GAEG;AACH,wBAAsB,yBAAyB,CAAC,OAAO,EAAE,cAAc,6EAWtE;AAED;;;GAGG;AACH,wBAAsB,oBAAoB,CAAC,OAAO,EAAE,wBAAwB;;GAgD3E"}
1
+ {"version":3,"file":"create-2-factory.d.ts","sourceRoot":"","sources":["../../../../../src/contract/deployment/utils/create-2-factory.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EACV,cAAc,EACd,wBAAwB,EACzB,MAAM,yBAAyB,CAAC;AA0BjC;;;;;GAKG;AACH,wBAAsB,4BAA4B,CAChD,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,MAAM,CAAC,CAkFjB;AAED;;GAEG;AACH,wBAAsB,yBAAyB,CAAC,OAAO,EAAE,cAAc,4FAWtE;AAED;;;GAGG;AACH,wBAAsB,oBAAoB,CAAC,OAAO,EAAE,wBAAwB;;GAgD3E"}
@@ -26,7 +26,7 @@ export declare function getOrDeployModule(options: {
26
26
  account: Account;
27
27
  contractId: string;
28
28
  publisher?: string;
29
- }): Promise<Readonly<import("../../../contract/contract.js").ContractOptions<[]>>>;
29
+ }): Promise<Readonly<import("../../../contract/contract.js").ContractOptions<[], string>>>;
30
30
  /**
31
31
  * Gets a deployed module implementation contract.
32
32
  * @param options - The options to use.
@@ -50,5 +50,5 @@ export declare function getDeployedModule(options: {
50
50
  chain: Chain;
51
51
  contractId: string;
52
52
  publisher?: string;
53
- }): Promise<Readonly<import("../../../contract/contract.js").ContractOptions<[]>> | null>;
53
+ }): Promise<Readonly<import("../../../contract/contract.js").ContractOptions<[], string>> | null>;
54
54
  //# sourceMappingURL=getOrDeployModule.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"getOrDeployModule.d.ts","sourceRoot":"","sources":["../../../../../src/extensions/modules/common/getOrDeployModule.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAGhE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uCAAuC,CAAC;AAErE;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,EAAE;IAC/C,MAAM,EAAE,cAAc,CAAC;IACvB,KAAK,EAAE,KAAK,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,kFAUA;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,EAAE;IAC/C,MAAM,EAAE,cAAc,CAAC;IACvB,KAAK,EAAE,KAAK,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,yFAQA"}
1
+ {"version":3,"file":"getOrDeployModule.d.ts","sourceRoot":"","sources":["../../../../../src/extensions/modules/common/getOrDeployModule.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAGhE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uCAAuC,CAAC;AAErE;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,EAAE;IAC/C,MAAM,EAAE,cAAc,CAAC;IACvB,KAAK,EAAE,KAAK,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,0FAUA;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,EAAE;IAC/C,MAAM,EAAE,cAAc,CAAC;IACvB,KAAK,EAAE,KAAK,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,iGAQA"}
@@ -29,5 +29,5 @@ export declare function publishContract(options: BaseTransactionOptions<PublishC
29
29
  * Returns the default publisher contract on polygon
30
30
  * @utils
31
31
  */
32
- export declare function getContractPublisher(client: ThirdwebClient): Readonly<import("../../../contract/contract.js").ContractOptions<[]>>;
32
+ export declare function getContractPublisher(client: ThirdwebClient): Readonly<import("../../../contract/contract.js").ContractOptions<[], `0x${string}`>>;
33
33
  //# sourceMappingURL=publish.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"publish.d.ts","sourceRoot":"","sources":["../../../../../src/extensions/thirdweb/write/publish.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAMhE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,KAAK,EAEV,yBAAyB,EAC1B,MAAM,2CAA2C,CAAC;AAGnD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uCAAuC,CAAC;AAIrE,MAAM,MAAM,qBAAqB,GAAG;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,yBAAyB,GAAG;QACpC,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,gBAAgB,CAAC,EAAE,yBAAyB,CAAC;CAC9C,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,sBAAsB,CAAC,qBAAqB,CAAC,kMAsEvD;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,cAAc,yEAM1D"}
1
+ {"version":3,"file":"publish.d.ts","sourceRoot":"","sources":["../../../../../src/extensions/thirdweb/write/publish.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAMhE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,KAAK,EAEV,yBAAyB,EAC1B,MAAM,2CAA2C,CAAC;AAGnD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uCAAuC,CAAC;AAIrE,MAAM,MAAM,qBAAqB,GAAG;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,yBAAyB,GAAG;QACpC,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,gBAAgB,CAAC,EAAE,yBAAyB,CAAC;CAC9C,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,sBAAsB,CAAC,qBAAqB,CAAC,kMAsEvD;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,cAAc,wFAM1D"}
@@ -187,10 +187,15 @@ export type ConnectButton_detailsModalOptions = {
187
187
  /**
188
188
  * Show a "Request Testnet funds" link in `ConnectButton` Details Modal when user is connected to a testnet.
189
189
  *
190
- * By default it is `false`, If you want to show the "Request Testnet funds" link when user is connected to a testnet, set this prop to `true`
190
+ * By default it is `false`, If you want to show the "Request Testnet funds" link when user is connected to a testnet, set this prop to `true`.
191
+ * Keep in mind that the link will only be shown if there are faucet links registered with the chain.
191
192
  * @example
192
193
  * ```tsx
193
- * <ConnectButton showTestnetFaucet={true} />
194
+ * <ConnectButton
195
+ * detailsModal={{
196
+ * showTestnetFaucet: true,
197
+ * }}
198
+ * />
194
199
  * ```
195
200
  */
196
201
  showTestnetFaucet?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"ConnectButtonProps.d.ts","sourceRoot":"","sources":["../../../../../../src/react/core/hooks/connection/ConnectButtonProps.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAC;AACtF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;AAClF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;AACzE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8DAA8D,CAAC;AAC9F,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gDAAgD,CAAC;AAC1F,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,0CAA0C,CAAC;AAChF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AACpE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AAC7F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gDAAgD,CAAC;AACpF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,KAAK,EACV,aAAa,EACb,eAAe,EACf,SAAS,EACV,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,MAAM,MAAM,WAAW,GAAG;IACxB;;OAEG;IACH,KAAK,EAAE,KAAK,CAAC;IACb;;OAEG;IACH,aAAa,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB,GAAG,CACA;IACE;;;OAGG;IACH,MAAM,EAAE,MAAM,CAAC;CAChB,GACD;IACE;;;OAGG;IACH,SAAS,EAAE,MAAM,CAAC;CACnB,CACJ,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,QAAQ,CACjC;IACE;;;;;;;;;OASG;IACH,aAAa,CAAC,EACV,KAAK,GACL;QACE,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,aAAa,CAAC,EAAE;YACd,KAAK,EAAE,KAAK,CAAC;YACb,KAAK,CAAC,EAAE,SAAS,CAAC;YAClB,UAAU,CAAC,EAAE;gBACX,KAAK,EAAE,OAAO,CAAC;gBACf,KAAK,EAAE,OAAO,CAAC;aAChB,CAAC;SACH,CAAC;KACH,CAAC;IAEN;;;;OAIG;IACH,WAAW,CAAC,EACR;QACE,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,aAAa,CAAC,EAAE;YACd,QAAQ,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;SAClD,CAAC;QACF,iBAAiB,CAAC,EAAE,YAAY,CAAC;KAClC,GACD,KAAK,CAAC;IAEV;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;OAEG;IACH,iBAAiB,CAAC,EAAE,CAClB,IAAI,EACA;QACE,IAAI,EAAE,QAAQ,CAAC;QACf,MAAM,EAAE,mBAAmB,CAAC;KAC7B,GACD;QACE,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,iBAAiB,CAAC;KAC3B,KACF,IAAI,CAAC;IACV;;OAEG;IACH,QAAQ,CAAC,EAAE;QACT,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;CACH,GAAG,CAAC,iBAAiB,GAAG,oBAAoB,GAAG,kBAAkB,CAAC,CACpE,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB;;;;;;;;OAQG;IACH,UAAU,CAAC,EAAE;QACX,KAAK,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,SAAS,CAAC;QAClB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,UAAU,CAAC,EAAE;YACX,MAAM,EAAE,OAAO,CAAC;YAChB,KAAK,EAAE,OAAO,CAAC;YACf,KAAK,EAAE,OAAO,CAAC;SAChB,CAAC;KACH,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,EAAE,gBAAgB,CAAC;IACvB;;OAEG;IACH,WAAW,EAAE,WAAW,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,aAAa,CAAC;IACpB;;OAEG;IACH,WAAW,EAAE,mBAAmB,CAAC;CAClC,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,kCAAkC,GAAG;IAC/C;;;;;;;;OAQG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAExB;;;;;;;;;;OAUG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;;;;;;;;OAUG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;CAC7B,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,iCAAiC,GAAG;IAC9C;;;;;;;;OAQG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAE5B;;OAEG;IACH,eAAe,CAAC,EAAE,oBAAoB,CAAC;IAEvC;;;;;;;;;;OAUG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B;;;;;;;;;;OAUG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,IAAI,CAAA;KAAE,KAAK,GAAG,CAAC,OAAO,CAAC;IAEvD;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC,YAAY,EAAE;QAAE,IAAI,CAAC,EAAE,aAAa,CAAA;KAAE,CAAC,CAAC;IAE7D;;OAEG;IACH,oBAAoB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAEvC;;OAEG;IACH,yBAAyB,CAAC,EAAE,MAAM,CAAC;IAEnC;;;;OAIG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B;;;;OAIG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;OAEG;IACH,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC;IAE3B;;;;OAIG;IACH,SAAS,CAAC,EAAE,SAAS,EAAE,CAAC;IAExB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,qBAAqB,CAAC;IAE1C;;OAEG;IACH,YAAY,CAAC,EAAE;QACb;;;;WAIG;QACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;KAChC,CAAC;IAEF;;;OAGG;IACH,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;CACpC,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,kCAAkC,GAAG;IAC/C;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAE5B;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,CAAC,OAAO,CAAC;IAE3B;;;;;;;;;;;;;OAaG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAE7C;;OAEG;IACH,oBAAoB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAEvC;;OAEG;IACH,yBAAyB,CAAC,EAAE,MAAM,CAAC;IAEnC;;;OAGG;IACH,iBAAiB,CAAC,EAAE,qBAAqB,CAAC;CAC3C,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,iCAAiC,GAAG;IAC9C;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;;;;;;;;OAUG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;;;;OAMG;IACH,IAAI,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAE1B;;;;;;;;;;OAUG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B;;;;;;;;;;OAUG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;;;;;;;;;OAUG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;IACH,aAAa,CAAC,EAAE,aAAa,CAAC;IAE9B;;;;;;;;;;OAUG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAChC,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B;;;;;;;;;;;;;;OAcG;IACH,MAAM,EAAE,cAAc,CAAC;IAEvB;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,QAAQ,CAAC;IAElB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAqCG;IACH,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IAEnB;;;;;;;;;;;OAWG;IACH,WAAW,CAAC,EACR;QACE,OAAO,EAAE,MAAM,CAAC;KACjB,GACD,OAAO,CAAC;IAEZ;;;;;;;;;;;;;OAaG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC;IAE1B;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC;IAEd;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC;IAEjB;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,KAAK,CAAC;IAEjC;;;;;;;;;;;;;;OAcG;IACH,aAAa,CAAC,EAAE,kCAAkC,CAAC;IAEnD;;;;;;;;;;;;;;;OAeG;IACH,YAAY,CAAC,EAAE;QACb;;WAEG;QACH,KAAK,CAAC,EAAE,MAAM,CAAC;QAEf;;WAEG;QACH,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;QAE5B;;WAEG;QACH,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IAEF,YAAY,CAAC,EAAE;QACb;;;;;;;;;;WAUG;QACH,KAAK,CAAC,EAAE,MAAM,CAAC;QAEf;;;;;;;;;;;;WAYG;QACH,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;QAE5B;;;;;;;;;;WAUG;QACH,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IAEF;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,iCAAiC,CAAC;IAEjD;;;;;;;;;;;;OAYG;IACH,aAAa,CAAC,EAAE,kCAAkC,CAAC;IAEnD;;;OAGG;IACH,YAAY,CAAC,EAAE,iCAAiC,CAAC;IAEjD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACH,eAAe,CAAC,EAAE,eAAe,CAAC;IAElC;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,aAAa,CAAC,EAAE,aAAa,CAAC;IAE9B;;;;;;;;;;;OAWG;IACH,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAErC;;;;;;;;;;OAUG;IACH,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI,CAAC;IAEpE;;;;;;;OAOG;IACH,aAAa,CAAC,EAAE;QACd,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IAEF;;;;;;;;;;;;;OAaG;IACH,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IAExC;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAE9B;;;;OAIG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB;;;;;OAKG;IACH,IAAI,CAAC,EAAE,eAAe,CAAC;CACxB,CAAC"}
1
+ {"version":3,"file":"ConnectButtonProps.d.ts","sourceRoot":"","sources":["../../../../../../src/react/core/hooks/connection/ConnectButtonProps.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { type UseQueryOptions } from "@tanstack/react-query";
2
2
  import type { JSX } from "react";
3
+ import type { AuthOption } from "../../../../../wallets/types.js";
3
4
  import type { WalletId } from "../../../../../wallets/wallet-types.js";
4
5
  export interface WalletIconProps extends Omit<React.ImgHTMLAttributes<HTMLImageElement>, "src"> {
5
6
  /**
@@ -14,11 +15,11 @@ export interface WalletIconProps extends Omit<React.ImgHTMLAttributes<HTMLImageE
14
15
  */
15
16
  loadingComponent?: JSX.Element;
16
17
  /**
17
- * This component will be shown if the icon fails to be retreived
18
+ * This component will be shown if the icon fails to be retrieved
18
19
  * If not passed, the component will return `null`.
19
20
  *
20
21
  * You can/should pass a descriptive text/component to this prop, indicating that the
21
- * icon was not fetched succesfully
22
+ * icon was not fetched successfully
22
23
  * @example
23
24
  * ```tsx
24
25
  * <WalletIcon fallbackComponent={<span>Failed to load</span>}
@@ -78,4 +79,29 @@ export declare function WalletIcon({ loadingComponent, fallbackComponent, queryO
78
79
  export declare function fetchWalletImage(props: {
79
80
  id: WalletId;
80
81
  }): Promise<string>;
82
+ interface SocialIconProps extends Omit<React.ImgHTMLAttributes<HTMLImageElement>, "src"> {
83
+ provider: AuthOption | string;
84
+ }
85
+ /**
86
+ * Social auth provider icon
87
+ * @returns an <img /> component with the src set to the svg
88
+ *
89
+ * @example
90
+ * ```tsx
91
+ * import { SocialIcon } from "thirdweb/react";
92
+ *
93
+ * <SocialIcon provider="google" />
94
+ * ```
95
+ *
96
+ * Result: An <img /> component with the src of the icon
97
+ * ```html
98
+ * <img src="google-icon-svg" />
99
+ * ```
100
+ *
101
+ * @component
102
+ * @wallet
103
+ * @beta
104
+ */
105
+ export declare function SocialIcon({ provider, ...restProps }: SocialIconProps): import("react/jsx-runtime.js").JSX.Element;
106
+ export {};
81
107
  //# sourceMappingURL=icon.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"icon.d.ts","sourceRoot":"","sources":["../../../../../../../src/react/web/ui/prebuilt/Wallet/icon.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,eAAe,EAAY,MAAM,uBAAuB,CAAC;AACvE,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAEjC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAGvE,MAAM,WAAW,eACf,SAAQ,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,EAAE,KAAK,CAAC;IAC9D;;;;;;;;;OASG;IACH,gBAAgB,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC;IAC/B;;;;;;;;;;;OAWG;IACH,iBAAiB,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC;IAChC;;OAEG;IACH,YAAY,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,SAAS,GAAG,UAAU,CAAC,CAAC;CACtE;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,wBAAgB,UAAU,CAAC,EACzB,gBAAgB,EAChB,iBAAiB,EACjB,YAAY,EACZ,GAAG,SAAS,EACb,EAAE,eAAe,qDASjB;AAiBD;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,KAAK,EAAE;IAC5C,EAAE,EAAE,QAAQ,CAAC;CACd,mBAGA"}
1
+ {"version":3,"file":"icon.d.ts","sourceRoot":"","sources":["../../../../../../../src/react/web/ui/prebuilt/Wallet/icon.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,eAAe,EAAY,MAAM,uBAAuB,CAAC;AACvE,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAEjC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAIvE,MAAM,WAAW,eACf,SAAQ,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,EAAE,KAAK,CAAC;IAC9D;;;;;;;;;OASG;IACH,gBAAgB,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC;IAC/B;;;;;;;;;;;OAWG;IACH,iBAAiB,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC;IAChC;;OAEG;IACH,YAAY,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,SAAS,GAAG,UAAU,CAAC,CAAC;CACtE;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,wBAAgB,UAAU,CAAC,EACzB,gBAAgB,EAChB,iBAAiB,EACjB,YAAY,EACZ,GAAG,SAAS,EACb,EAAE,eAAe,qDASjB;AAiBD;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,KAAK,EAAE;IAC5C,EAAE,EAAE,QAAQ,CAAC;CACd,mBAEA;AAED,UAAU,eACR,SAAQ,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,EAAE,KAAK,CAAC;IAC9D,QAAQ,EAAE,UAAU,GAAG,MAAM,CAAC;CAC/B;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,UAAU,CAAC,EAAE,QAAQ,EAAE,GAAG,SAAS,EAAE,EAAE,eAAe,8CAGrE"}
@@ -1 +1 @@
1
- {"version":3,"file":"rpc.d.ts","sourceRoot":"","sources":["../../../src/rpc/rpc.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,MAAM,CAAC;AAC7D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AA8BhD,KAAK,UAAU,GAAG,QAAQ,CAAC;IACzB,MAAM,EAAE,cAAc,CAAC;IACvB,KAAK,EAAE,KAAK,CAAC;IACb,MAAM,CAAC,EAAE;QACP,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;KAC3B,CAAC;CACH,CAAC,CAAC;AAEH;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,YAAY,CAC1B,OAAO,EAAE,UAAU,GAClB,gBAAgB,CAAC,cAAc,CAAC,CAuLlC"}
1
+ {"version":3,"file":"rpc.d.ts","sourceRoot":"","sources":["../../../src/rpc/rpc.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,MAAM,CAAC;AAC7D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AA8BhD,KAAK,UAAU,GAAG,QAAQ,CAAC;IACzB,MAAM,EAAE,cAAc,CAAC;IACvB,KAAK,EAAE,KAAK,CAAC;IACb,MAAM,CAAC,EAAE;QACP,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;KAC3B,CAAC;CACH,CAAC,CAAC;AAEH;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,YAAY,CAC1B,OAAO,EAAE,UAAU,GAClB,gBAAgB,CAAC,cAAc,CAAC,CAkLlC"}
@@ -1 +1 @@
1
- {"version":3,"file":"address.d.ts","sourceRoot":"","sources":["../../../src/utils/address.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC;AAClC,MAAM,MAAM,OAAO,GAAG,KAAK,MAAM,EAAE,CAAC;AAKpC;;;;;;;;;;;;GAYG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,IAAI,OAAO,CAiB7D;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAoBxD;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAKnD;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,SAAI,UAGzD;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,SAAI,UAEjD"}
1
+ {"version":3,"file":"address.d.ts","sourceRoot":"","sources":["../../../src/utils/address.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC;AAClC,MAAM,MAAM,OAAO,GAAG,KAAK,MAAM,EAAE,CAAC;AAKpC;;;;;;;;;;;;GAYG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,IAAI,OAAO,CAU7D;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAoBxD;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAKnD;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,SAAI,UAGzD;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,SAAI,UAEjD"}
@@ -1,2 +1,2 @@
1
- export declare const version = "5.80.1-nightly-8b1a60d5b6a6b29cd1d7a72f4f43040341d7048b-20250102000330";
1
+ export declare const version = "5.80.1-nightly-c948e71a16b5e27e10b417cd0ef9cece70179a57-20250104000328";
2
2
  //# sourceMappingURL=version.d.ts.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "thirdweb",
3
- "version": "5.80.1-nightly-8b1a60d5b6a6b29cd1d7a72f4f43040341d7048b-20250102000330",
3
+ "version": "5.80.1-nightly-c948e71a16b5e27e10b417cd0ef9cece70179a57-20250104000328",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+https://github.com/thirdweb-dev/js.git#main"
@@ -214,6 +214,7 @@
214
214
  "@walletconnect/ethereum-provider": "2.17.3",
215
215
  "@walletconnect/sign-client": "2.17.3",
216
216
  "abitype": "1.0.7",
217
+ "cross-spawn": "7.0.6",
217
218
  "fuse.js": "7.0.0",
218
219
  "input-otp": "^1.4.1",
219
220
  "mipd": "0.0.7",
@@ -318,7 +319,6 @@
318
319
  "@vitejs/plugin-react": "^4.3.4",
319
320
  "@vitest/coverage-v8": "2.1.8",
320
321
  "@vitest/ui": "2.1.8",
321
- "cross-spawn": "7.0.6",
322
322
  "dotenv-mono": "^1.3.14",
323
323
  "ethers5": "npm:ethers@5",
324
324
  "ethers6": "npm:ethers@6",
@@ -1,14 +1,17 @@
1
1
  import type { Abi } from "abitype";
2
2
  import type { Chain } from "../chains/types.js";
3
3
  import type { ThirdwebClient } from "../client/client.js";
4
- import { isAddress } from "../utils/address.js";
4
+ import { type Address, isAddress } from "../utils/address.js";
5
5
 
6
6
  /**
7
7
  * @contract
8
8
  */
9
- export type ContractOptions<abi extends Abi = []> = {
9
+ export type ContractOptions<
10
+ abi extends Abi = [],
11
+ address extends string = string,
12
+ > = {
10
13
  client: ThirdwebClient;
11
- address: string;
14
+ address: address;
12
15
  chain: Chain;
13
16
  readonly abi?: abi;
14
17
  };
@@ -16,9 +19,10 @@ export type ContractOptions<abi extends Abi = []> = {
16
19
  /**
17
20
  * @contract
18
21
  */
19
- export type ThirdwebContract<abi extends Abi = []> = Readonly<
20
- ContractOptions<abi>
21
- >;
22
+ export type ThirdwebContract<
23
+ abi extends Abi = [],
24
+ address extends string = string,
25
+ > = Readonly<ContractOptions<abi, address>>;
22
26
 
23
27
  /**
24
28
  * Creates a Thirdweb contract by combining the Thirdweb client and contract options.
@@ -42,7 +46,7 @@ export type ThirdwebContract<abi extends Abi = []> = Readonly<
42
46
  */
43
47
  export function getContract<const abi extends Abi = []>(
44
48
  options: ContractOptions<abi>,
45
- ): ThirdwebContract<abi> {
49
+ ): ThirdwebContract<abi, Address> {
46
50
  if (!options.client) {
47
51
  throw new Error(
48
52
  `getContract validation error - invalid client: ${options.client}`,
@@ -58,5 +62,5 @@ export function getContract<const abi extends Abi = []>(
58
62
  `getContract validation error - invalid chain: ${options.chain}`,
59
63
  );
60
64
  }
61
- return options;
65
+ return options as ThirdwebContract<abi, Address>;
62
66
  }
@@ -216,10 +216,15 @@ export type ConnectButton_detailsModalOptions = {
216
216
  /**
217
217
  * Show a "Request Testnet funds" link in `ConnectButton` Details Modal when user is connected to a testnet.
218
218
  *
219
- * By default it is `false`, If you want to show the "Request Testnet funds" link when user is connected to a testnet, set this prop to `true`
219
+ * By default it is `false`, If you want to show the "Request Testnet funds" link when user is connected to a testnet, set this prop to `true`.
220
+ * Keep in mind that the link will only be shown if there are faucet links registered with the chain.
220
221
  * @example
221
222
  * ```tsx
222
- * <ConnectButton showTestnetFaucet={true} />
223
+ * <ConnectButton
224
+ * detailsModal={{
225
+ * showTestnetFaucet: true,
226
+ * }}
227
+ * />
223
228
  * ```
224
229
  */
225
230
  showTestnetFaucet?: boolean;
@@ -1,6 +1,6 @@
1
1
  import { describe, expect, it } from "vitest";
2
2
  import { render, waitFor } from "~test/react-render.js";
3
- import { WalletIcon, fetchWalletImage } from "./icon.js";
3
+ import { SocialIcon, WalletIcon, fetchWalletImage } from "./icon.js";
4
4
  import { WalletProvider } from "./provider.js";
5
5
 
6
6
  describe("WalletIcon", () => {
@@ -28,3 +28,12 @@ describe("WalletIcon", () => {
28
28
  });
29
29
  });
30
30
  });
31
+
32
+ describe("SocialIcon", () => {
33
+ it("should render an image", async () => {
34
+ const { container } = render(<SocialIcon provider="google" />);
35
+ await waitFor(() => {
36
+ expect(container.querySelector("img")).not.toBe(null);
37
+ });
38
+ });
39
+ });
@@ -3,7 +3,9 @@
3
3
  import { type UseQueryOptions, useQuery } from "@tanstack/react-query";
4
4
  import type { JSX } from "react";
5
5
  import { getWalletInfo } from "../../../../../wallets/__generated__/getWalletInfo.js";
6
+ import type { AuthOption } from "../../../../../wallets/types.js";
6
7
  import type { WalletId } from "../../../../../wallets/wallet-types.js";
8
+ import { getSocialIcon } from "../../../../core/utils/walletIcon.js";
7
9
  import { useWalletContext } from "./provider.js";
8
10
 
9
11
  export interface WalletIconProps
@@ -20,11 +22,11 @@ export interface WalletIconProps
20
22
  */
21
23
  loadingComponent?: JSX.Element;
22
24
  /**
23
- * This component will be shown if the icon fails to be retreived
25
+ * This component will be shown if the icon fails to be retrieved
24
26
  * If not passed, the component will return `null`.
25
27
  *
26
28
  * You can/should pass a descriptive text/component to this prop, indicating that the
27
- * icon was not fetched succesfully
29
+ * icon was not fetched successfully
28
30
  * @example
29
31
  * ```tsx
30
32
  * <WalletIcon fallbackComponent={<span>Failed to load</span>}
@@ -115,6 +117,35 @@ function useWalletIcon(props: {
115
117
  export async function fetchWalletImage(props: {
116
118
  id: WalletId;
117
119
  }) {
118
- const image_src = await getWalletInfo(props.id, true);
119
- return image_src;
120
+ return getWalletInfo(props.id, true);
121
+ }
122
+
123
+ interface SocialIconProps
124
+ extends Omit<React.ImgHTMLAttributes<HTMLImageElement>, "src"> {
125
+ provider: AuthOption | string;
126
+ }
127
+
128
+ /**
129
+ * Social auth provider icon
130
+ * @returns an <img /> component with the src set to the svg
131
+ *
132
+ * @example
133
+ * ```tsx
134
+ * import { SocialIcon } from "thirdweb/react";
135
+ *
136
+ * <SocialIcon provider="google" />
137
+ * ```
138
+ *
139
+ * Result: An <img /> component with the src of the icon
140
+ * ```html
141
+ * <img src="google-icon-svg" />
142
+ * ```
143
+ *
144
+ * @component
145
+ * @wallet
146
+ * @beta
147
+ */
148
+ export function SocialIcon({ provider, ...restProps }: SocialIconProps) {
149
+ const src = getSocialIcon(provider);
150
+ return <img src={src} {...restProps} alt={restProps.alt} />;
120
151
  }
package/src/rpc/rpc.ts CHANGED
@@ -138,46 +138,41 @@ export function getRpcClient(
138
138
  requestTimeoutMs: options.config?.requestTimeoutMs,
139
139
  })
140
140
  .then((responses) => {
141
- // for each response, resolve the inflight request
142
141
  activeBatch.forEach((inflight, index) => {
142
+ // Handle the inflight request promise for each response.
143
143
  const response = responses[index];
144
- // if we didn't get a response at all, reject the inflight request
144
+
145
+ // No response.
145
146
  if (!response) {
146
147
  inflight.reject(new Error("No response"));
147
- return;
148
148
  }
149
- // handle errors in the response
150
- if (response instanceof Error) {
149
+ // Response is an error or error string.
150
+ else if (response instanceof Error) {
151
151
  inflight.reject(response);
152
- return;
153
- }
154
-
155
- // handle strings as responses??
156
- if (typeof response === "string") {
152
+ } else if ("error" in response) {
153
+ inflight.reject(response.error);
154
+ } else if (typeof response === "string") {
157
155
  inflight.reject(new Error(response));
158
- return;
159
156
  }
160
-
161
- if ("error" in response) {
162
- inflight.reject(response.error);
163
- // otherwise, resolve the inflight request
164
- } else if (response.method === "eth_subscription") {
165
- // TODO: handle subscription responses
166
- throw new Error("Subscriptions not supported yet");
167
- } else {
157
+ // eth_subscription is not supported yet.
158
+ else if (response.method === "eth_subscription") {
159
+ inflight.reject("Subscriptions not supported yet");
160
+ }
161
+ // Else return the successful response for the inflight request.
162
+ else {
168
163
  inflight.resolve(response.result);
169
164
  }
170
- // remove the inflight request from the inflightRequests map
171
- inflightRequests.delete(inflight.requestKey);
172
165
  });
173
166
  })
174
167
  .catch((err) => {
175
168
  // http call failed, reject all inflight requests
176
169
  for (const inflight of activeBatch) {
177
170
  inflight.reject(err);
178
- // remove the inflight request from the inflightRequests map
179
- inflightRequests.delete(inflight.requestKey);
180
171
  }
172
+ })
173
+ .finally(() => {
174
+ // Clear the inflight requests map so any new requests are re-fetched.
175
+ inflightRequests.clear();
181
176
  });
182
177
  }
183
178
 
@@ -5,7 +5,7 @@ import { keccak256 } from "./hashing/keccak256.js";
5
5
  export type AddressInput = string;
6
6
  export type Address = `0x${string}`;
7
7
 
8
- const ADRESS_REGEX = /^0x[a-fA-F0-9]{40}$/;
8
+ const ADDRESS_REGEX = /^0x[a-fA-F0-9]{40}$/;
9
9
  const IS_ADDRESS_CACHE = new LruMap<boolean>(4096);
10
10
 
11
11
  /**
@@ -26,16 +26,9 @@ export function isAddress(address: string): address is Address {
26
26
  // biome-ignore lint/style/noNonNullAssertion: the `has` above ensures that this will always be set
27
27
  return IS_ADDRESS_CACHE.get(address)!;
28
28
  }
29
- const result = (() => {
30
- if (!ADRESS_REGEX.test(address)) {
31
- return false;
32
- }
33
- if (address.toLowerCase() === address) {
34
- return true;
35
- }
36
-
37
- return checksumAddress(address) === address;
38
- })();
29
+ const result =
30
+ ADDRESS_REGEX.test(address) &&
31
+ (address.toLowerCase() === address || checksumAddress(address) === address);
39
32
  IS_ADDRESS_CACHE.set(address, result);
40
33
  return result;
41
34
  }
package/src/version.ts CHANGED
@@ -1 +1 @@
1
- export const version = "5.80.1-nightly-8b1a60d5b6a6b29cd1d7a72f4f43040341d7048b-20250102000330";
1
+ export const version = "5.80.1-nightly-c948e71a16b5e27e10b417cd0ef9cece70179a57-20250104000328";
@@ -240,8 +240,22 @@ async function createSmartAccount(
240
240
  } else {
241
241
  paymasterOverride = options.overrides?.paymaster;
242
242
  }
243
+
244
+ const accountContractForTransaction = (() => {
245
+ // If this transaction is for a different chain than the initial one, get the account contract for that chain
246
+ if (transaction.chainId !== accountContract.chain.id) {
247
+ return getContract({
248
+ address: account.address,
249
+ chain: getCachedChain(transaction.chainId),
250
+ client: options.client,
251
+ });
252
+ }
253
+ // Default to the existing account contract
254
+ return accountContract;
255
+ })();
256
+
243
257
  const executeTx = prepareExecute({
244
- accountContract,
258
+ accountContract: accountContractForTransaction,
245
259
  transaction,
246
260
  executeOverride: options.overrides?.execute,
247
261
  });
@@ -249,6 +263,7 @@ async function createSmartAccount(
249
263
  executeTx,
250
264
  options: {
251
265
  ...options,
266
+ chain: getCachedChain(transaction.chainId),
252
267
  overrides: {
253
268
  ...options.overrides,
254
269
  paymaster: paymasterOverride,
@@ -5,7 +5,9 @@ import { verifySignature } from "../../auth/verify-signature.js";
5
5
  import { type ThirdwebContract, getContract } from "../../contract/contract.js";
6
6
  import { parseEventLogs } from "../../event/actions/parse-logs.js";
7
7
 
8
+ import { TEST_WALLET_A } from "~test/addresses.js";
8
9
  import { verifyTypedData } from "../../auth/verify-typed-data.js";
10
+ import { baseSepolia } from "../../chains/chain-definitions/base-sepolia.js";
9
11
  import { sepolia } from "../../chains/chain-definitions/sepolia.js";
10
12
  import {
11
13
  addAdmin,
@@ -18,6 +20,7 @@ import { estimateGasCost } from "../../transaction/actions/estimate-gas-cost.js"
18
20
  import { sendAndConfirmTransaction } from "../../transaction/actions/send-and-confirm-transaction.js";
19
21
  import { sendBatchTransaction } from "../../transaction/actions/send-batch-transaction.js";
20
22
  import { waitForReceipt } from "../../transaction/actions/wait-for-tx-receipt.js";
23
+ import { prepareTransaction } from "../../transaction/prepare-transaction.js";
21
24
  import { getAddress } from "../../utils/address.js";
22
25
  import { isContractDeployed } from "../../utils/bytecode/is-contract-deployed.js";
23
26
  import { sleep } from "../../utils/sleep.js";
@@ -107,6 +110,20 @@ describe.runIf(process.env.TW_SECRET_KEY)(
107
110
  expect(isValid).toEqual(true);
108
111
  });
109
112
 
113
+ it("can send a transaction on another chain", async () => {
114
+ const tx = await sendAndConfirmTransaction({
115
+ transaction: prepareTransaction({
116
+ to: TEST_WALLET_A,
117
+ client: TEST_CLIENT,
118
+ chain: baseSepolia,
119
+ value: 0n,
120
+ }),
121
+ // biome-ignore lint/style/noNonNullAssertion: Just trust me
122
+ account: wallet.getAccount()!,
123
+ });
124
+ expect(tx.transactionHash).toHaveLength(66);
125
+ });
126
+
110
127
  it("should revert on unsuccessful transactions", async () => {
111
128
  const tx = sendAndConfirmTransaction({
112
129
  transaction: setContractURI({
@@ -1,4 +1,5 @@
1
1
  import { beforeAll, describe, expect, it } from "vitest";
2
+ import { TEST_WALLET_A } from "~test/addresses.js";
2
3
  import { TEST_CLIENT } from "../../../test/src/test-clients.js";
3
4
  import { typedData } from "../../../test/src/typed-data.js";
4
5
  import { verifySignature } from "../../auth/verify-signature.js";
@@ -309,6 +310,20 @@ describe.runIf(process.env.TW_SECRET_KEY).sequential(
309
310
  expect(wallet.getChain()?.id).toEqual(baseSepolia.id);
310
311
  });
311
312
 
313
+ it("can send a transaction on another chain", async () => {
314
+ const tx = await sendAndConfirmTransaction({
315
+ transaction: prepareTransaction({
316
+ to: TEST_WALLET_A,
317
+ client: TEST_CLIENT,
318
+ chain: baseSepolia,
319
+ value: 0n,
320
+ }),
321
+ // biome-ignore lint/style/noNonNullAssertion: Just trust me
322
+ account: wallet.getAccount()!,
323
+ });
324
+ expect(tx.transactionHash).toHaveLength(66);
325
+ });
326
+
312
327
  it("can execute 2 tx in parallel", async () => {
313
328
  const newSmartWallet = smartWallet({
314
329
  chain,