@tonappchain/sdk 0.7.0-rc24-test-7 → 0.7.0-rc24-test-8

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 (34) hide show
  1. package/dist/artifacts/dev/tac/artifacts.d.ts +2 -24
  2. package/dist/artifacts/dev/tac/artifacts.js +4 -4
  3. package/dist/artifacts/dev/tac/internal/artifacts/@openzeppelin/contracts/token/{ERC20/ERC20.sol/ERC20.json → ERC721/IERC721.sol/IERC721.json} +116 -139
  4. package/dist/artifacts/dev/tac/internal/artifacts/contracts/interfaces/tokens/IERC20WithDecimals.sol/IERC20WithDecimals.json +207 -0
  5. package/dist/artifacts/{testnet/tac/internal/typechain-types/@openzeppelin/contracts/token/ERC721/ERC721.d.ts → dev/tac/internal/typechain-types/@openzeppelin/contracts/token/ERC721/IERC721.d.ts} +5 -17
  6. package/dist/artifacts/{mainnet/tac/internal/typechain-types/@openzeppelin/contracts/token/ERC20/ERC20.d.ts → dev/tac/internal/typechain-types/contracts/interfaces/tokens/IERC20WithDecimals.d.ts} +6 -14
  7. package/dist/artifacts/dev/tac/wrappers.d.ts +2 -2
  8. package/dist/artifacts/mainnet/tac/artifacts.d.ts +2 -24
  9. package/dist/artifacts/mainnet/tac/artifacts.js +4 -4
  10. package/dist/artifacts/{testnet/tac/internal/artifacts/@openzeppelin/contracts/token/ERC20/ERC20.sol/ERC20.json → mainnet/tac/internal/artifacts/@openzeppelin/contracts/token/ERC721/IERC721.sol/IERC721.json} +116 -139
  11. package/dist/artifacts/mainnet/tac/internal/artifacts/contracts/interfaces/tokens/IERC20WithDecimals.sol/IERC20WithDecimals.json +207 -0
  12. package/dist/artifacts/mainnet/tac/internal/typechain-types/@openzeppelin/contracts/token/ERC721/{ERC721.d.ts → IERC721.d.ts} +5 -17
  13. package/dist/artifacts/{testnet/tac/internal/typechain-types/@openzeppelin/contracts/token/ERC20/ERC20.d.ts → mainnet/tac/internal/typechain-types/contracts/interfaces/tokens/IERC20WithDecimals.d.ts} +6 -14
  14. package/dist/artifacts/mainnet/tac/wrappers.d.ts +2 -2
  15. package/dist/artifacts/tacTypes.d.ts +2 -2
  16. package/dist/artifacts/testnet/tac/artifacts.d.ts +2 -24
  17. package/dist/artifacts/testnet/tac/artifacts.js +4 -4
  18. package/dist/artifacts/{mainnet/tac/internal/artifacts/@openzeppelin/contracts/token/ERC20/ERC20.sol/ERC20.json → testnet/tac/internal/artifacts/@openzeppelin/contracts/token/ERC721/IERC721.sol/IERC721.json} +116 -139
  19. package/dist/artifacts/testnet/tac/internal/artifacts/contracts/interfaces/tokens/IERC20WithDecimals.sol/IERC20WithDecimals.json +207 -0
  20. package/dist/artifacts/{dev/tac/internal/typechain-types/@openzeppelin/contracts/token/ERC721/ERC721.d.ts → testnet/tac/internal/typechain-types/@openzeppelin/contracts/token/ERC721/IERC721.d.ts} +5 -17
  21. package/dist/artifacts/{dev/tac/internal/typechain-types/@openzeppelin/contracts/token/ERC20/ERC20.d.ts → testnet/tac/internal/typechain-types/contracts/interfaces/tokens/IERC20WithDecimals.d.ts} +6 -14
  22. package/dist/artifacts/testnet/tac/wrappers.d.ts +2 -2
  23. package/dist/src/assets/FT.js +2 -2
  24. package/dist/src/sdk/TACTransactionManager.js +2 -2
  25. package/package.json +1 -1
  26. package/dist/artifacts/dev/tac/internal/artifacts/@openzeppelin/contracts/token/ERC721/ERC721.sol/ERC721.json +0 -444
  27. package/dist/artifacts/mainnet/tac/internal/artifacts/@openzeppelin/contracts/token/ERC721/ERC721.sol/ERC721.json +0 -444
  28. package/dist/artifacts/testnet/tac/internal/artifacts/@openzeppelin/contracts/token/ERC721/ERC721.sol/ERC721.json +0 -444
  29. /package/dist/artifacts/dev/tac/internal/typechain-types/@openzeppelin/contracts/token/{ERC20/ERC20.js → ERC721/IERC721.js} +0 -0
  30. /package/dist/artifacts/dev/tac/internal/typechain-types/{@openzeppelin/contracts/token/ERC721/ERC721.js → contracts/interfaces/tokens/IERC20WithDecimals.js} +0 -0
  31. /package/dist/artifacts/mainnet/tac/internal/typechain-types/@openzeppelin/contracts/token/{ERC20/ERC20.js → ERC721/IERC721.js} +0 -0
  32. /package/dist/artifacts/mainnet/tac/internal/typechain-types/{@openzeppelin/contracts/token/ERC721/ERC721.js → contracts/interfaces/tokens/IERC20WithDecimals.js} +0 -0
  33. /package/dist/artifacts/testnet/tac/internal/typechain-types/@openzeppelin/contracts/token/{ERC20/ERC20.js → ERC721/IERC721.js} +0 -0
  34. /package/dist/artifacts/testnet/tac/internal/typechain-types/{@openzeppelin/contracts/token/ERC721/ERC721.js → contracts/interfaces/tokens/IERC20WithDecimals.js} +0 -0
@@ -1,33 +1,27 @@
1
1
  import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers";
2
2
  import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common";
3
- export interface ERC721Interface extends Interface {
4
- getFunction(nameOrSignature: "approve" | "balanceOf" | "getApproved" | "isApprovedForAll" | "name" | "ownerOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "supportsInterface" | "symbol" | "tokenURI" | "transferFrom"): FunctionFragment;
3
+ export interface IERC721Interface extends Interface {
4
+ getFunction(nameOrSignature: "approve" | "balanceOf" | "getApproved" | "isApprovedForAll" | "ownerOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "supportsInterface" | "transferFrom"): FunctionFragment;
5
5
  getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "Transfer"): EventFragment;
6
6
  encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string;
7
7
  encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string;
8
8
  encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string;
9
9
  encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string;
10
- encodeFunctionData(functionFragment: "name", values?: undefined): string;
11
10
  encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string;
12
11
  encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string;
13
12
  encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string;
14
13
  encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string;
15
14
  encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string;
16
- encodeFunctionData(functionFragment: "symbol", values?: undefined): string;
17
- encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string;
18
15
  encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string;
19
16
  decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result;
20
17
  decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result;
21
18
  decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result;
22
19
  decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result;
23
- decodeFunctionResult(functionFragment: "name", data: BytesLike): Result;
24
20
  decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result;
25
21
  decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result;
26
22
  decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result;
27
23
  decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result;
28
24
  decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result;
29
- decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result;
30
- decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result;
31
25
  decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result;
32
26
  }
33
27
  export declare namespace ApprovalEvent {
@@ -85,10 +79,10 @@ export declare namespace TransferEvent {
85
79
  type Log = TypedEventLog<Event>;
86
80
  type LogDescription = TypedLogDescription<Event>;
87
81
  }
88
- export interface ERC721 extends BaseContract {
89
- connect(runner?: ContractRunner | null): ERC721;
82
+ export interface IERC721 extends BaseContract {
83
+ connect(runner?: ContractRunner | null): IERC721;
90
84
  waitForDeployment(): Promise<this>;
91
- interface: ERC721Interface;
85
+ interface: IERC721Interface;
92
86
  queryFilter<TCEvent extends TypedContractEvent>(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>;
93
87
  queryFilter<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>;
94
88
  on<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>;
@@ -112,7 +106,6 @@ export interface ERC721 extends BaseContract {
112
106
  ], [
113
107
  boolean
114
108
  ], "view">;
115
- name: TypedContractMethod<[], [string], "view">;
116
109
  ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">;
117
110
  "safeTransferFrom(address,address,uint256)": TypedContractMethod<[
118
111
  from: AddressLike,
@@ -140,8 +133,6 @@ export interface ERC721 extends BaseContract {
140
133
  ], [
141
134
  boolean
142
135
  ], "view">;
143
- symbol: TypedContractMethod<[], [string], "view">;
144
- tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">;
145
136
  transferFrom: TypedContractMethod<[
146
137
  from: AddressLike,
147
138
  to: AddressLike,
@@ -164,7 +155,6 @@ export interface ERC721 extends BaseContract {
164
155
  ], [
165
156
  boolean
166
157
  ], "view">;
167
- getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">;
168
158
  getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">;
169
159
  getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[
170
160
  from: AddressLike,
@@ -188,8 +178,6 @@ export interface ERC721 extends BaseContract {
188
178
  void
189
179
  ], "nonpayable">;
190
180
  getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">;
191
- getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">;
192
- getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">;
193
181
  getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[
194
182
  from: AddressLike,
195
183
  to: AddressLike,
@@ -1,14 +1,12 @@
1
1
  import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers";
2
- import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common";
3
- export interface ERC20Interface extends Interface {
4
- getFunction(nameOrSignature: "allowance" | "approve" | "balanceOf" | "decimals" | "name" | "symbol" | "totalSupply" | "transfer" | "transferFrom"): FunctionFragment;
2
+ import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common";
3
+ export interface IERC20WithDecimalsInterface extends Interface {
4
+ getFunction(nameOrSignature: "allowance" | "approve" | "balanceOf" | "decimals" | "totalSupply" | "transfer" | "transferFrom"): FunctionFragment;
5
5
  getEvent(nameOrSignatureOrTopic: "Approval" | "Transfer"): EventFragment;
6
6
  encodeFunctionData(functionFragment: "allowance", values: [AddressLike, AddressLike]): string;
7
7
  encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string;
8
8
  encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string;
9
9
  encodeFunctionData(functionFragment: "decimals", values?: undefined): string;
10
- encodeFunctionData(functionFragment: "name", values?: undefined): string;
11
- encodeFunctionData(functionFragment: "symbol", values?: undefined): string;
12
10
  encodeFunctionData(functionFragment: "totalSupply", values?: undefined): string;
13
11
  encodeFunctionData(functionFragment: "transfer", values: [AddressLike, BigNumberish]): string;
14
12
  encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string;
@@ -16,8 +14,6 @@ export interface ERC20Interface extends Interface {
16
14
  decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result;
17
15
  decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result;
18
16
  decodeFunctionResult(functionFragment: "decimals", data: BytesLike): Result;
19
- decodeFunctionResult(functionFragment: "name", data: BytesLike): Result;
20
- decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result;
21
17
  decodeFunctionResult(functionFragment: "totalSupply", data: BytesLike): Result;
22
18
  decodeFunctionResult(functionFragment: "transfer", data: BytesLike): Result;
23
19
  decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result;
@@ -56,10 +52,10 @@ export declare namespace TransferEvent {
56
52
  type Log = TypedEventLog<Event>;
57
53
  type LogDescription = TypedLogDescription<Event>;
58
54
  }
59
- export interface ERC20 extends BaseContract {
60
- connect(runner?: ContractRunner | null): ERC20;
55
+ export interface IERC20WithDecimals extends BaseContract {
56
+ connect(runner?: ContractRunner | null): IERC20WithDecimals;
61
57
  waitForDeployment(): Promise<this>;
62
- interface: ERC20Interface;
58
+ interface: IERC20WithDecimalsInterface;
63
59
  queryFilter<TCEvent extends TypedContractEvent>(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>;
64
60
  queryFilter<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>;
65
61
  on<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>;
@@ -83,8 +79,6 @@ export interface ERC20 extends BaseContract {
83
79
  ], "nonpayable">;
84
80
  balanceOf: TypedContractMethod<[account: AddressLike], [bigint], "view">;
85
81
  decimals: TypedContractMethod<[], [bigint], "view">;
86
- name: TypedContractMethod<[], [string], "view">;
87
- symbol: TypedContractMethod<[], [string], "view">;
88
82
  totalSupply: TypedContractMethod<[], [bigint], "view">;
89
83
  transfer: TypedContractMethod<[
90
84
  to: AddressLike,
@@ -114,8 +108,6 @@ export interface ERC20 extends BaseContract {
114
108
  ], "nonpayable">;
115
109
  getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[account: AddressLike], [bigint], "view">;
116
110
  getFunction(nameOrSignature: "decimals"): TypedContractMethod<[], [bigint], "view">;
117
- getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">;
118
- getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">;
119
111
  getFunction(nameOrSignature: "totalSupply"): TypedContractMethod<[], [bigint], "view">;
120
112
  getFunction(nameOrSignature: "transfer"): TypedContractMethod<[
121
113
  to: AddressLike,
@@ -3,7 +3,7 @@ export { ISettings } from './internal/typechain-types/contracts/interfaces/ISett
3
3
  export { ITokenUtils } from './internal/typechain-types/contracts/interfaces/ITokenUtils';
4
4
  export { ISAFactory } from './internal/typechain-types/contracts/smart-account/interfaces/ISAFactory';
5
5
  export { ITacSmartAccount } from './internal/typechain-types/contracts/smart-account/interfaces/ITacSmartAccount';
6
- export { ERC20 } from './internal/typechain-types/@openzeppelin/contracts/token/ERC20/ERC20';
7
- export { ERC721 } from './internal/typechain-types/@openzeppelin/contracts/token/ERC721/ERC721';
6
+ export { IERC20WithDecimals } from './internal/typechain-types/contracts/interfaces/tokens/IERC20WithDecimals';
7
+ export { IERC721 } from './internal/typechain-types/@openzeppelin/contracts/token/ERC721/IERC721';
8
8
  export { ICrossChainLayerERC20 } from './internal/typechain-types/contracts/interfaces/tokens/ICrossChainLayerERC20';
9
9
  export { ICrossChainLayerERC721 } from './internal/typechain-types/contracts/interfaces/tokens/ICrossChainLayerERC721';
@@ -58,7 +58,7 @@ class FT {
58
58
  Validator_1.Validator.validateEVMAddress(address);
59
59
  const fromTVM = await configuration.TACParams.tokenUtils['exists(address)'](address);
60
60
  if (fromTVM) {
61
- const cclErc20Abi = configuration.artifacts.tac.compilationArtifacts.ERC20.abi;
61
+ const cclErc20Abi = configuration.artifacts.tac.compilationArtifacts.ICrossChainLayerERC20.abi;
62
62
  const erc20Token = new ethers_1.ethers.Contract(address, cclErc20Abi, configuration.TACParams.provider);
63
63
  const info = await erc20Token.getInfo();
64
64
  return info.tvmAddress;
@@ -98,7 +98,7 @@ class FT {
98
98
  return Consts_1.TAC_DECIMALS; // Native TAC always has 18 decimals
99
99
  }
100
100
  // For ERC20 contracts, get decimals from contract
101
- const erc20TokenAbi = configuration.artifacts.tac.compilationArtifacts.ERC20.abi;
101
+ const erc20TokenAbi = configuration.artifacts.tac.compilationArtifacts.IERC20WithDecimals.abi;
102
102
  const erc20Token = new ethers_1.ethers.Contract(evmAddress, erc20TokenAbi, configuration.TACParams.provider);
103
103
  return Number(await erc20Token.decimals());
104
104
  }
@@ -18,14 +18,14 @@ class TACTransactionManager {
18
18
  const evmAddress = await asset.getEVMAddress();
19
19
  if (asset.type === Struct_1.AssetType.FT) {
20
20
  this.logger.debug(`Approving FT ${evmAddress} for ${spenderAddress}`);
21
- const erc20Abi = this.config.artifacts.tac.compilationArtifacts.ERC20.abi;
21
+ const erc20Abi = this.config.artifacts.tac.compilationArtifacts.IERC20WithDecimals.abi;
22
22
  const contract = new ethers_1.ethers.Contract(evmAddress, erc20Abi, this.config.TACParams.provider);
23
23
  const tx = await contract.connect(signer).approve(spenderAddress, asset.rawAmount);
24
24
  await tx.wait();
25
25
  }
26
26
  else if (asset.type === Struct_1.AssetType.NFT) {
27
27
  this.logger.debug(`Approving NFT ${evmAddress} for ${spenderAddress}`);
28
- const erc721Abi = this.config.artifacts.tac.compilationArtifacts.ERC721.abi;
28
+ const erc721Abi = this.config.artifacts.tac.compilationArtifacts.IERC721.abi;
29
29
  const contract = new ethers_1.ethers.Contract(evmAddress, erc721Abi, this.config.TACParams.provider);
30
30
  const tx = await contract.connect(signer).approve(spenderAddress, asset.addresses.index);
31
31
  await tx.wait();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tonappchain/sdk",
3
- "version": "0.7.0-rc24-test-7",
3
+ "version": "0.7.0-rc24-test-8",
4
4
  "repository": "https://github.com/TacBuild/tac-sdk.git",
5
5
  "author": "TAC. <developers@tac>",
6
6
  "license": "MIT",
@@ -1,444 +0,0 @@
1
- {
2
- "_format": "hh-sol-artifact-1",
3
- "contractName": "ERC721",
4
- "sourceName": "@openzeppelin/contracts/token/ERC721/ERC721.sol",
5
- "abi": [
6
- {
7
- "inputs": [
8
- {
9
- "internalType": "address",
10
- "name": "sender",
11
- "type": "address"
12
- },
13
- {
14
- "internalType": "uint256",
15
- "name": "tokenId",
16
- "type": "uint256"
17
- },
18
- {
19
- "internalType": "address",
20
- "name": "owner",
21
- "type": "address"
22
- }
23
- ],
24
- "name": "ERC721IncorrectOwner",
25
- "type": "error"
26
- },
27
- {
28
- "inputs": [
29
- {
30
- "internalType": "address",
31
- "name": "operator",
32
- "type": "address"
33
- },
34
- {
35
- "internalType": "uint256",
36
- "name": "tokenId",
37
- "type": "uint256"
38
- }
39
- ],
40
- "name": "ERC721InsufficientApproval",
41
- "type": "error"
42
- },
43
- {
44
- "inputs": [
45
- {
46
- "internalType": "address",
47
- "name": "approver",
48
- "type": "address"
49
- }
50
- ],
51
- "name": "ERC721InvalidApprover",
52
- "type": "error"
53
- },
54
- {
55
- "inputs": [
56
- {
57
- "internalType": "address",
58
- "name": "operator",
59
- "type": "address"
60
- }
61
- ],
62
- "name": "ERC721InvalidOperator",
63
- "type": "error"
64
- },
65
- {
66
- "inputs": [
67
- {
68
- "internalType": "address",
69
- "name": "owner",
70
- "type": "address"
71
- }
72
- ],
73
- "name": "ERC721InvalidOwner",
74
- "type": "error"
75
- },
76
- {
77
- "inputs": [
78
- {
79
- "internalType": "address",
80
- "name": "receiver",
81
- "type": "address"
82
- }
83
- ],
84
- "name": "ERC721InvalidReceiver",
85
- "type": "error"
86
- },
87
- {
88
- "inputs": [
89
- {
90
- "internalType": "address",
91
- "name": "sender",
92
- "type": "address"
93
- }
94
- ],
95
- "name": "ERC721InvalidSender",
96
- "type": "error"
97
- },
98
- {
99
- "inputs": [
100
- {
101
- "internalType": "uint256",
102
- "name": "tokenId",
103
- "type": "uint256"
104
- }
105
- ],
106
- "name": "ERC721NonexistentToken",
107
- "type": "error"
108
- },
109
- {
110
- "anonymous": false,
111
- "inputs": [
112
- {
113
- "indexed": true,
114
- "internalType": "address",
115
- "name": "owner",
116
- "type": "address"
117
- },
118
- {
119
- "indexed": true,
120
- "internalType": "address",
121
- "name": "approved",
122
- "type": "address"
123
- },
124
- {
125
- "indexed": true,
126
- "internalType": "uint256",
127
- "name": "tokenId",
128
- "type": "uint256"
129
- }
130
- ],
131
- "name": "Approval",
132
- "type": "event"
133
- },
134
- {
135
- "anonymous": false,
136
- "inputs": [
137
- {
138
- "indexed": true,
139
- "internalType": "address",
140
- "name": "owner",
141
- "type": "address"
142
- },
143
- {
144
- "indexed": true,
145
- "internalType": "address",
146
- "name": "operator",
147
- "type": "address"
148
- },
149
- {
150
- "indexed": false,
151
- "internalType": "bool",
152
- "name": "approved",
153
- "type": "bool"
154
- }
155
- ],
156
- "name": "ApprovalForAll",
157
- "type": "event"
158
- },
159
- {
160
- "anonymous": false,
161
- "inputs": [
162
- {
163
- "indexed": true,
164
- "internalType": "address",
165
- "name": "from",
166
- "type": "address"
167
- },
168
- {
169
- "indexed": true,
170
- "internalType": "address",
171
- "name": "to",
172
- "type": "address"
173
- },
174
- {
175
- "indexed": true,
176
- "internalType": "uint256",
177
- "name": "tokenId",
178
- "type": "uint256"
179
- }
180
- ],
181
- "name": "Transfer",
182
- "type": "event"
183
- },
184
- {
185
- "inputs": [
186
- {
187
- "internalType": "address",
188
- "name": "to",
189
- "type": "address"
190
- },
191
- {
192
- "internalType": "uint256",
193
- "name": "tokenId",
194
- "type": "uint256"
195
- }
196
- ],
197
- "name": "approve",
198
- "outputs": [],
199
- "stateMutability": "nonpayable",
200
- "type": "function"
201
- },
202
- {
203
- "inputs": [
204
- {
205
- "internalType": "address",
206
- "name": "owner",
207
- "type": "address"
208
- }
209
- ],
210
- "name": "balanceOf",
211
- "outputs": [
212
- {
213
- "internalType": "uint256",
214
- "name": "",
215
- "type": "uint256"
216
- }
217
- ],
218
- "stateMutability": "view",
219
- "type": "function"
220
- },
221
- {
222
- "inputs": [
223
- {
224
- "internalType": "uint256",
225
- "name": "tokenId",
226
- "type": "uint256"
227
- }
228
- ],
229
- "name": "getApproved",
230
- "outputs": [
231
- {
232
- "internalType": "address",
233
- "name": "",
234
- "type": "address"
235
- }
236
- ],
237
- "stateMutability": "view",
238
- "type": "function"
239
- },
240
- {
241
- "inputs": [
242
- {
243
- "internalType": "address",
244
- "name": "owner",
245
- "type": "address"
246
- },
247
- {
248
- "internalType": "address",
249
- "name": "operator",
250
- "type": "address"
251
- }
252
- ],
253
- "name": "isApprovedForAll",
254
- "outputs": [
255
- {
256
- "internalType": "bool",
257
- "name": "",
258
- "type": "bool"
259
- }
260
- ],
261
- "stateMutability": "view",
262
- "type": "function"
263
- },
264
- {
265
- "inputs": [],
266
- "name": "name",
267
- "outputs": [
268
- {
269
- "internalType": "string",
270
- "name": "",
271
- "type": "string"
272
- }
273
- ],
274
- "stateMutability": "view",
275
- "type": "function"
276
- },
277
- {
278
- "inputs": [
279
- {
280
- "internalType": "uint256",
281
- "name": "tokenId",
282
- "type": "uint256"
283
- }
284
- ],
285
- "name": "ownerOf",
286
- "outputs": [
287
- {
288
- "internalType": "address",
289
- "name": "",
290
- "type": "address"
291
- }
292
- ],
293
- "stateMutability": "view",
294
- "type": "function"
295
- },
296
- {
297
- "inputs": [
298
- {
299
- "internalType": "address",
300
- "name": "from",
301
- "type": "address"
302
- },
303
- {
304
- "internalType": "address",
305
- "name": "to",
306
- "type": "address"
307
- },
308
- {
309
- "internalType": "uint256",
310
- "name": "tokenId",
311
- "type": "uint256"
312
- }
313
- ],
314
- "name": "safeTransferFrom",
315
- "outputs": [],
316
- "stateMutability": "nonpayable",
317
- "type": "function"
318
- },
319
- {
320
- "inputs": [
321
- {
322
- "internalType": "address",
323
- "name": "from",
324
- "type": "address"
325
- },
326
- {
327
- "internalType": "address",
328
- "name": "to",
329
- "type": "address"
330
- },
331
- {
332
- "internalType": "uint256",
333
- "name": "tokenId",
334
- "type": "uint256"
335
- },
336
- {
337
- "internalType": "bytes",
338
- "name": "data",
339
- "type": "bytes"
340
- }
341
- ],
342
- "name": "safeTransferFrom",
343
- "outputs": [],
344
- "stateMutability": "nonpayable",
345
- "type": "function"
346
- },
347
- {
348
- "inputs": [
349
- {
350
- "internalType": "address",
351
- "name": "operator",
352
- "type": "address"
353
- },
354
- {
355
- "internalType": "bool",
356
- "name": "approved",
357
- "type": "bool"
358
- }
359
- ],
360
- "name": "setApprovalForAll",
361
- "outputs": [],
362
- "stateMutability": "nonpayable",
363
- "type": "function"
364
- },
365
- {
366
- "inputs": [
367
- {
368
- "internalType": "bytes4",
369
- "name": "interfaceId",
370
- "type": "bytes4"
371
- }
372
- ],
373
- "name": "supportsInterface",
374
- "outputs": [
375
- {
376
- "internalType": "bool",
377
- "name": "",
378
- "type": "bool"
379
- }
380
- ],
381
- "stateMutability": "view",
382
- "type": "function"
383
- },
384
- {
385
- "inputs": [],
386
- "name": "symbol",
387
- "outputs": [
388
- {
389
- "internalType": "string",
390
- "name": "",
391
- "type": "string"
392
- }
393
- ],
394
- "stateMutability": "view",
395
- "type": "function"
396
- },
397
- {
398
- "inputs": [
399
- {
400
- "internalType": "uint256",
401
- "name": "tokenId",
402
- "type": "uint256"
403
- }
404
- ],
405
- "name": "tokenURI",
406
- "outputs": [
407
- {
408
- "internalType": "string",
409
- "name": "",
410
- "type": "string"
411
- }
412
- ],
413
- "stateMutability": "view",
414
- "type": "function"
415
- },
416
- {
417
- "inputs": [
418
- {
419
- "internalType": "address",
420
- "name": "from",
421
- "type": "address"
422
- },
423
- {
424
- "internalType": "address",
425
- "name": "to",
426
- "type": "address"
427
- },
428
- {
429
- "internalType": "uint256",
430
- "name": "tokenId",
431
- "type": "uint256"
432
- }
433
- ],
434
- "name": "transferFrom",
435
- "outputs": [],
436
- "stateMutability": "nonpayable",
437
- "type": "function"
438
- }
439
- ],
440
- "bytecode": "0x",
441
- "deployedBytecode": "0x",
442
- "linkReferences": {},
443
- "deployedLinkReferences": {}
444
- }