{"id":20974181,"url":"https://github.com/thirdweb-example/eip5792-demo","last_synced_at":"2026-02-16T14:05:28.984Z","repository":{"id":240106605,"uuid":"801312946","full_name":"thirdweb-example/eip5792-demo","owner":"thirdweb-example","description":null,"archived":false,"fork":false,"pushed_at":"2024-06-13T18:50:57.000Z","size":1096,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-09-17T20:00:49.468Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://eip5792-demo.thirdweb-preview.com","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/thirdweb-example.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-05-16T01:53:07.000Z","updated_at":"2025-07-29T21:31:29.000Z","dependencies_parsed_at":"2024-11-19T04:41:50.677Z","dependency_job_id":null,"html_url":"https://github.com/thirdweb-example/eip5792-demo","commit_stats":null,"previous_names":["thirdweb-example/eip5792-demo"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/thirdweb-example/eip5792-demo","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thirdweb-example%2Feip5792-demo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thirdweb-example%2Feip5792-demo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thirdweb-example%2Feip5792-demo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thirdweb-example%2Feip5792-demo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/thirdweb-example","download_url":"https://codeload.github.com/thirdweb-example/eip5792-demo/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thirdweb-example%2Feip5792-demo/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29509290,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-16T09:05:14.864Z","status":"ssl_error","status_checked_at":"2026-02-16T08:55:59.364Z","response_time":115,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-19T04:27:05.024Z","updated_at":"2026-02-16T14:05:28.968Z","avatar_url":"https://github.com/thirdweb-example.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# EIP-5792 with thirdweb\n\n## Example Usage\n\n### `getCapabilities`\n\nReturns the capabilities of the wallet according to EIP-5792.\n\n```ts\nimport { getCapabilities } from \"thirdweb/wallets/eip5792\";\n\nconst capabilities = await getCapabilities({ wallet });\n```\n\n### `sendCalls`\n\nSends the given calls to the wallet for execution, and attempts to fallback to normal execution if the wallet does not support EIP-5792.\n\n```ts\nimport { sendCalls } from \"thirdweb/wallets/eip5792\";\n\nconst transfer1 = transfer({\n  contract: USDC_CONTRACT,\n  amount: 5000,\n  to: \"0x33d9B8BEfE81027E2C859EDc84F5636cbb202Ed6\",\n});\n\nconst transfer2 = transfer({\n  contract: USDT_CONTRACT,\n  amount: 1000,\n  to: \"0x33d9B8BEfE81027E2C859EDc84F5636cbb202Ed6\",\n});\n\nconst bundleId = await sendCalls({\n  wallet,\n  client,\n  calls: [transfer1, transfer2],\n});\n```\n\n### `getCallsStatus`\n\nReturns the status of the given bundle ID and the transaction receipts if completed.\n\n```ts\nimport { getCallsStatus } from \"thirdweb/wallets/eip5792\";\n\nconst status = await getCallsStatus({ wallet, bundleId });\n```\n\n### `useSendCalls`\n`useSendCalls` will automatically revalidate all reads from contracts that are interacted with.\n\n```ts\nimport { useSendCalls } from \"thirdweb/react\";\n\nconst sendTx1 = approve({\n  contract: USDT_CONTRACT,\n  amount: 100,\n  spender: \"0x33d9B8BEfE81027E2C859EDc84F5636cbb202Ed6\",\n});\nconst sendTx2 = approve({\n  contract: USDT_CONTRACT,\n  amount: 100,\n  spender: \"0x2a4f24F935Eb178e3e7BA9B53A5Ee6d8407C0709\",\n});\nconst { mutate: sendCalls, data: bundleId } = useSendCalls({ client });\nawait sendCalls({\n  wallet,\n  client,\n  calls: [sendTx1, sendTx2],\n});\n```\n\nAwait the bundle's full confirmation:\n\n```ts\nconst { mutate: sendCalls, data: bundleId } = useSendCalls({\n  client,\n  waitForResult: true,\n});\nawait sendCalls({\n  wallet,\n  client,\n  calls: [sendTx1, sendTx2],\n});\n```\n\nSponsor transactions with a paymaster:\n\n```ts\nconst { mutate: sendCalls, data: bundleId } = useSendCalls();\nawait sendCalls({\n  client,\n  calls: [sendTx1, sendTx2],\n  capabilities: {\n    paymasterService: {\n      url: `https://${CHAIN.id}.bundler.thirdweb.com/${client.clientId}`,\n    },\n  },\n});\n```\n\u003e [!NOTE]\n\u003e It's recommended to setup a proxy route for your thirdweb paymaster url (shown above) so you can properly restrict the domains that utilize it.\n\n### `useCapabilities`\n\n```ts\nimport { useCapabilities } from \"thirdweb/react\";\nconst { data: capabilities, isLoading } = useCapabilities();\n```\n### `useCallsStatus`\n```ts\nimport { useCallsStatus } from \"thirdweb/react\";\nconst { data: status, isLoading } = useCallsStatus({ bundleId, client });\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthirdweb-example%2Feip5792-demo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fthirdweb-example%2Feip5792-demo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthirdweb-example%2Feip5792-demo/lists"}