@zoralabs/coins 0.1.1

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 (116) hide show
  1. package/.turbo/turbo-build.log +76 -0
  2. package/CHANGELOG.md +14 -0
  3. package/LICENSE +21 -0
  4. package/abis/Address.json +29 -0
  5. package/abis/BaseTest.json +691 -0
  6. package/abis/Clones.json +7 -0
  7. package/abis/Coin.json +1693 -0
  8. package/abis/CoinConstants.json +93 -0
  9. package/abis/CoinTest.json +998 -0
  10. package/abis/ContextUpgradeable.json +25 -0
  11. package/abis/ContractVersionBase.json +15 -0
  12. package/abis/Deploy.json +29 -0
  13. package/abis/ECDSA.json +29 -0
  14. package/abis/EIP712.json +67 -0
  15. package/abis/EIP712Upgradeable.json +74 -0
  16. package/abis/ERC1967Proxy.json +67 -0
  17. package/abis/ERC1967Utils.json +85 -0
  18. package/abis/ERC20PermitUpgradeable.json +527 -0
  19. package/abis/ERC20Upgradeable.json +333 -0
  20. package/abis/FactoryTest.json +845 -0
  21. package/abis/IBeacon.json +15 -0
  22. package/abis/ICoin.json +541 -0
  23. package/abis/ICoinComments.json +53 -0
  24. package/abis/IERC1155Errors.json +104 -0
  25. package/abis/IERC165.json +21 -0
  26. package/abis/IERC1822Proxiable.json +15 -0
  27. package/abis/IERC20.json +221 -0
  28. package/abis/IERC20Errors.json +88 -0
  29. package/abis/IERC20Metadata.json +224 -0
  30. package/abis/IERC20Permit.json +77 -0
  31. package/abis/IERC5267.json +51 -0
  32. package/abis/IERC721.json +287 -0
  33. package/abis/IERC721Enumerable.json +343 -0
  34. package/abis/IERC721Errors.json +105 -0
  35. package/abis/IERC721Metadata.json +332 -0
  36. package/abis/IERC721Receiver.json +36 -0
  37. package/abis/IERC721TokenReceiver.json +36 -0
  38. package/abis/IERC7572.json +21 -0
  39. package/abis/IMulticall3.json +440 -0
  40. package/abis/INonfungiblePositionManager.json +366 -0
  41. package/abis/IProtocolRewards.json +348 -0
  42. package/abis/ISwapRouter.json +137 -0
  43. package/abis/IUniswapV3Pool.json +148 -0
  44. package/abis/IUniswapV3SwapCallback.json +25 -0
  45. package/abis/IVersionedContract.json +15 -0
  46. package/abis/IWETH.json +118 -0
  47. package/abis/IZoraFactory.json +138 -0
  48. package/abis/Initializable.json +25 -0
  49. package/abis/Math.json +7 -0
  50. package/abis/MockERC20.json +322 -0
  51. package/abis/MockERC721.json +350 -0
  52. package/abis/MultiOwnable.json +171 -0
  53. package/abis/MultiOwnableTest.json +796 -0
  54. package/abis/NoncesUpgradeable.json +60 -0
  55. package/abis/OwnableUpgradeable.json +99 -0
  56. package/abis/ProtocolRewards.json +494 -0
  57. package/abis/Proxy.json +6 -0
  58. package/abis/ReentrancyGuardUpgradeable.json +30 -0
  59. package/abis/SafeERC20.json +34 -0
  60. package/abis/Script.json +15 -0
  61. package/abis/ShortStrings.json +18 -0
  62. package/abis/StdAssertions.json +379 -0
  63. package/abis/StdInvariant.json +180 -0
  64. package/abis/Strings.json +18 -0
  65. package/abis/Test.json +570 -0
  66. package/abis/UUPSUpgradeable.json +130 -0
  67. package/abis/Vm.json +8627 -0
  68. package/abis/VmSafe.json +7297 -0
  69. package/abis/ZoraFactory.json +67 -0
  70. package/abis/ZoraFactoryImpl.json +422 -0
  71. package/abis/stdError.json +119 -0
  72. package/abis/stdStorageSafe.json +52 -0
  73. package/addresses/1.json +4 -0
  74. package/addresses/8453.json +9 -0
  75. package/addresses/84532.json +9 -0
  76. package/dist/index.cjs +1236 -0
  77. package/dist/index.cjs.map +1 -0
  78. package/dist/index.d.ts +2 -0
  79. package/dist/index.d.ts.map +1 -0
  80. package/dist/index.js +1208 -0
  81. package/dist/index.js.map +1 -0
  82. package/dist/wagmiGenerated.d.ts +1645 -0
  83. package/dist/wagmiGenerated.d.ts.map +1 -0
  84. package/foundry.toml +9 -0
  85. package/package/index.ts +1 -0
  86. package/package/wagmiGenerated.ts +1211 -0
  87. package/package.json +48 -0
  88. package/remappings.txt +4 -0
  89. package/script/Deploy.s.sol +14 -0
  90. package/slither.config.json +6 -0
  91. package/src/Coin.sol +579 -0
  92. package/src/ZoraFactoryImpl.sol +142 -0
  93. package/src/interfaces/ICoin.sol +194 -0
  94. package/src/interfaces/ICoinComments.sol +8 -0
  95. package/src/interfaces/IERC7572.sol +12 -0
  96. package/src/interfaces/INonfungiblePositionManager.sol +104 -0
  97. package/src/interfaces/IProtocolRewards.sol +12 -0
  98. package/src/interfaces/ISwapRouter.sol +38 -0
  99. package/src/interfaces/IUniswapV3Pool.sol +43 -0
  100. package/src/interfaces/IUniswapV3SwapCallback.sol +17 -0
  101. package/src/interfaces/IWETH.sol +16 -0
  102. package/src/interfaces/IZoraFactory.sol +56 -0
  103. package/src/proxy/ZoraFactory.sol +26 -0
  104. package/src/utils/CoinConstants.sol +67 -0
  105. package/src/utils/MultiOwnable.sol +126 -0
  106. package/src/utils/TickMath.sol +210 -0
  107. package/src/version/ContractVersionBase.sol +14 -0
  108. package/test/Coin.t.sol +443 -0
  109. package/test/Factory.t.sol +298 -0
  110. package/test/MultiOwnable.t.sol +156 -0
  111. package/test/utils/BaseTest.sol +178 -0
  112. package/test/utils/ProtocolRewards.sol +1499 -0
  113. package/tsconfig.build.json +10 -0
  114. package/tsconfig.json +9 -0
  115. package/tsup.config.ts +11 -0
  116. package/wagmi.config.ts +16 -0
@@ -0,0 +1,21 @@
1
+ [
2
+ {
3
+ "type": "function",
4
+ "name": "supportsInterface",
5
+ "inputs": [
6
+ {
7
+ "name": "interfaceId",
8
+ "type": "bytes4",
9
+ "internalType": "bytes4"
10
+ }
11
+ ],
12
+ "outputs": [
13
+ {
14
+ "name": "",
15
+ "type": "bool",
16
+ "internalType": "bool"
17
+ }
18
+ ],
19
+ "stateMutability": "view"
20
+ }
21
+ ]
@@ -0,0 +1,15 @@
1
+ [
2
+ {
3
+ "type": "function",
4
+ "name": "proxiableUUID",
5
+ "inputs": [],
6
+ "outputs": [
7
+ {
8
+ "name": "",
9
+ "type": "bytes32",
10
+ "internalType": "bytes32"
11
+ }
12
+ ],
13
+ "stateMutability": "view"
14
+ }
15
+ ]
@@ -0,0 +1,221 @@
1
+ [
2
+ {
3
+ "type": "function",
4
+ "name": "allowance",
5
+ "inputs": [
6
+ {
7
+ "name": "owner",
8
+ "type": "address",
9
+ "internalType": "address"
10
+ },
11
+ {
12
+ "name": "spender",
13
+ "type": "address",
14
+ "internalType": "address"
15
+ }
16
+ ],
17
+ "outputs": [
18
+ {
19
+ "name": "",
20
+ "type": "uint256",
21
+ "internalType": "uint256"
22
+ }
23
+ ],
24
+ "stateMutability": "view"
25
+ },
26
+ {
27
+ "type": "function",
28
+ "name": "approve",
29
+ "inputs": [
30
+ {
31
+ "name": "spender",
32
+ "type": "address",
33
+ "internalType": "address"
34
+ },
35
+ {
36
+ "name": "value",
37
+ "type": "uint256",
38
+ "internalType": "uint256"
39
+ }
40
+ ],
41
+ "outputs": [
42
+ {
43
+ "name": "",
44
+ "type": "bool",
45
+ "internalType": "bool"
46
+ }
47
+ ],
48
+ "stateMutability": "nonpayable"
49
+ },
50
+ {
51
+ "type": "function",
52
+ "name": "balanceOf",
53
+ "inputs": [
54
+ {
55
+ "name": "account",
56
+ "type": "address",
57
+ "internalType": "address"
58
+ }
59
+ ],
60
+ "outputs": [
61
+ {
62
+ "name": "",
63
+ "type": "uint256",
64
+ "internalType": "uint256"
65
+ }
66
+ ],
67
+ "stateMutability": "view"
68
+ },
69
+ {
70
+ "type": "function",
71
+ "name": "totalSupply",
72
+ "inputs": [],
73
+ "outputs": [
74
+ {
75
+ "name": "",
76
+ "type": "uint256",
77
+ "internalType": "uint256"
78
+ }
79
+ ],
80
+ "stateMutability": "view"
81
+ },
82
+ {
83
+ "type": "function",
84
+ "name": "transfer",
85
+ "inputs": [
86
+ {
87
+ "name": "to",
88
+ "type": "address",
89
+ "internalType": "address"
90
+ },
91
+ {
92
+ "name": "value",
93
+ "type": "uint256",
94
+ "internalType": "uint256"
95
+ }
96
+ ],
97
+ "outputs": [
98
+ {
99
+ "name": "",
100
+ "type": "bool",
101
+ "internalType": "bool"
102
+ }
103
+ ],
104
+ "stateMutability": "nonpayable"
105
+ },
106
+ {
107
+ "type": "function",
108
+ "name": "transferFrom",
109
+ "inputs": [
110
+ {
111
+ "name": "from",
112
+ "type": "address",
113
+ "internalType": "address"
114
+ },
115
+ {
116
+ "name": "to",
117
+ "type": "address",
118
+ "internalType": "address"
119
+ },
120
+ {
121
+ "name": "value",
122
+ "type": "uint256",
123
+ "internalType": "uint256"
124
+ }
125
+ ],
126
+ "outputs": [
127
+ {
128
+ "name": "",
129
+ "type": "bool",
130
+ "internalType": "bool"
131
+ }
132
+ ],
133
+ "stateMutability": "nonpayable"
134
+ },
135
+ {
136
+ "type": "event",
137
+ "name": "Approval",
138
+ "inputs": [
139
+ {
140
+ "name": "owner",
141
+ "type": "address",
142
+ "indexed": true,
143
+ "internalType": "address"
144
+ },
145
+ {
146
+ "name": "spender",
147
+ "type": "address",
148
+ "indexed": true,
149
+ "internalType": "address"
150
+ },
151
+ {
152
+ "name": "value",
153
+ "type": "uint256",
154
+ "indexed": false,
155
+ "internalType": "uint256"
156
+ }
157
+ ],
158
+ "anonymous": false
159
+ },
160
+ {
161
+ "type": "event",
162
+ "name": "Transfer",
163
+ "inputs": [
164
+ {
165
+ "name": "from",
166
+ "type": "address",
167
+ "indexed": true,
168
+ "internalType": "address"
169
+ },
170
+ {
171
+ "name": "to",
172
+ "type": "address",
173
+ "indexed": true,
174
+ "internalType": "address"
175
+ },
176
+ {
177
+ "name": "value",
178
+ "type": "uint256",
179
+ "indexed": false,
180
+ "internalType": "uint256"
181
+ }
182
+ ],
183
+ "anonymous": false
184
+ }
185
+ ]pe": "address"
186
+ },
187
+ {
188
+ "name": "value",
189
+ "type": "uint256",
190
+ "indexed": false,
191
+ "internalType": "uint256"
192
+ }
193
+ ],
194
+ "anonymous": false
195
+ },
196
+ {
197
+ "type": "event",
198
+ "name": "Transfer",
199
+ "inputs": [
200
+ {
201
+ "name": "from",
202
+ "type": "address",
203
+ "indexed": true,
204
+ "internalType": "address"
205
+ },
206
+ {
207
+ "name": "to",
208
+ "type": "address",
209
+ "indexed": true,
210
+ "internalType": "address"
211
+ },
212
+ {
213
+ "name": "value",
214
+ "type": "uint256",
215
+ "indexed": false,
216
+ "internalType": "uint256"
217
+ }
218
+ ],
219
+ "anonymous": false
220
+ }
221
+ ]
@@ -0,0 +1,88 @@
1
+ [
2
+ {
3
+ "type": "error",
4
+ "name": "ERC20InsufficientAllowance",
5
+ "inputs": [
6
+ {
7
+ "name": "spender",
8
+ "type": "address",
9
+ "internalType": "address"
10
+ },
11
+ {
12
+ "name": "allowance",
13
+ "type": "uint256",
14
+ "internalType": "uint256"
15
+ },
16
+ {
17
+ "name": "needed",
18
+ "type": "uint256",
19
+ "internalType": "uint256"
20
+ }
21
+ ]
22
+ },
23
+ {
24
+ "type": "error",
25
+ "name": "ERC20InsufficientBalance",
26
+ "inputs": [
27
+ {
28
+ "name": "sender",
29
+ "type": "address",
30
+ "internalType": "address"
31
+ },
32
+ {
33
+ "name": "balance",
34
+ "type": "uint256",
35
+ "internalType": "uint256"
36
+ },
37
+ {
38
+ "name": "needed",
39
+ "type": "uint256",
40
+ "internalType": "uint256"
41
+ }
42
+ ]
43
+ },
44
+ {
45
+ "type": "error",
46
+ "name": "ERC20InvalidApprover",
47
+ "inputs": [
48
+ {
49
+ "name": "approver",
50
+ "type": "address",
51
+ "internalType": "address"
52
+ }
53
+ ]
54
+ },
55
+ {
56
+ "type": "error",
57
+ "name": "ERC20InvalidReceiver",
58
+ "inputs": [
59
+ {
60
+ "name": "receiver",
61
+ "type": "address",
62
+ "internalType": "address"
63
+ }
64
+ ]
65
+ },
66
+ {
67
+ "type": "error",
68
+ "name": "ERC20InvalidSender",
69
+ "inputs": [
70
+ {
71
+ "name": "sender",
72
+ "type": "address",
73
+ "internalType": "address"
74
+ }
75
+ ]
76
+ },
77
+ {
78
+ "type": "error",
79
+ "name": "ERC20InvalidSpender",
80
+ "inputs": [
81
+ {
82
+ "name": "spender",
83
+ "type": "address",
84
+ "internalType": "address"
85
+ }
86
+ ]
87
+ }
88
+ ]
@@ -0,0 +1,224 @@
1
+ [
2
+ {
3
+ "type": "function",
4
+ "name": "allowance",
5
+ "inputs": [
6
+ {
7
+ "name": "owner",
8
+ "type": "address",
9
+ "internalType": "address"
10
+ },
11
+ {
12
+ "name": "spender",
13
+ "type": "address",
14
+ "internalType": "address"
15
+ }
16
+ ],
17
+ "outputs": [
18
+ {
19
+ "name": "",
20
+ "type": "uint256",
21
+ "internalType": "uint256"
22
+ }
23
+ ],
24
+ "stateMutability": "view"
25
+ },
26
+ {
27
+ "type": "function",
28
+ "name": "approve",
29
+ "inputs": [
30
+ {
31
+ "name": "spender",
32
+ "type": "address",
33
+ "internalType": "address"
34
+ },
35
+ {
36
+ "name": "value",
37
+ "type": "uint256",
38
+ "internalType": "uint256"
39
+ }
40
+ ],
41
+ "outputs": [
42
+ {
43
+ "name": "",
44
+ "type": "bool",
45
+ "internalType": "bool"
46
+ }
47
+ ],
48
+ "stateMutability": "nonpayable"
49
+ },
50
+ {
51
+ "type": "function",
52
+ "name": "balanceOf",
53
+ "inputs": [
54
+ {
55
+ "name": "account",
56
+ "type": "address",
57
+ "internalType": "address"
58
+ }
59
+ ],
60
+ "outputs": [
61
+ {
62
+ "name": "",
63
+ "type": "uint256",
64
+ "internalType": "uint256"
65
+ }
66
+ ],
67
+ "stateMutability": "view"
68
+ },
69
+ {
70
+ "type": "function",
71
+ "name": "decimals",
72
+ "inputs": [],
73
+ "outputs": [
74
+ {
75
+ "name": "",
76
+ "type": "uint8",
77
+ "internalType": "uint8"
78
+ }
79
+ ],
80
+ "stateMutability": "view"
81
+ },
82
+ {
83
+ "type": "function",
84
+ "name": "name",
85
+ "inputs": [],
86
+ "outputs": [
87
+ {
88
+ "name": "",
89
+ "type": "string",
90
+ "internalType": "string"
91
+ }
92
+ ],
93
+ "stateMutability": "view"
94
+ },
95
+ {
96
+ "type": "function",
97
+ "name": "symbol",
98
+ "inputs": [],
99
+ "outputs": [
100
+ {
101
+ "name": "",
102
+ "type": "string",
103
+ "internalType": "string"
104
+ }
105
+ ],
106
+ "stateMutability": "view"
107
+ },
108
+ {
109
+ "type": "function",
110
+ "name": "totalSupply",
111
+ "inputs": [],
112
+ "outputs": [
113
+ {
114
+ "name": "",
115
+ "type": "uint256",
116
+ "internalType": "uint256"
117
+ }
118
+ ],
119
+ "stateMutability": "view"
120
+ },
121
+ {
122
+ "type": "function",
123
+ "name": "transfer",
124
+ "inputs": [
125
+ {
126
+ "name": "to",
127
+ "type": "address",
128
+ "internalType": "address"
129
+ },
130
+ {
131
+ "name": "value",
132
+ "type": "uint256",
133
+ "internalType": "uint256"
134
+ }
135
+ ],
136
+ "outputs": [
137
+ {
138
+ "name": "",
139
+ "type": "bool",
140
+ "internalType": "bool"
141
+ }
142
+ ],
143
+ "stateMutability": "nonpayable"
144
+ },
145
+ {
146
+ "type": "function",
147
+ "name": "transferFrom",
148
+ "inputs": [
149
+ {
150
+ "name": "from",
151
+ "type": "address",
152
+ "internalType": "address"
153
+ },
154
+ {
155
+ "name": "to",
156
+ "type": "address",
157
+ "internalType": "address"
158
+ },
159
+ {
160
+ "name": "value",
161
+ "type": "uint256",
162
+ "internalType": "uint256"
163
+ }
164
+ ],
165
+ "outputs": [
166
+ {
167
+ "name": "",
168
+ "type": "bool",
169
+ "internalType": "bool"
170
+ }
171
+ ],
172
+ "stateMutability": "nonpayable"
173
+ },
174
+ {
175
+ "type": "event",
176
+ "name": "Approval",
177
+ "inputs": [
178
+ {
179
+ "name": "owner",
180
+ "type": "address",
181
+ "indexed": true,
182
+ "internalType": "address"
183
+ },
184
+ {
185
+ "name": "spender",
186
+ "type": "address",
187
+ "indexed": true,
188
+ "internalType": "address"
189
+ },
190
+ {
191
+ "name": "value",
192
+ "type": "uint256",
193
+ "indexed": false,
194
+ "internalType": "uint256"
195
+ }
196
+ ],
197
+ "anonymous": false
198
+ },
199
+ {
200
+ "type": "event",
201
+ "name": "Transfer",
202
+ "inputs": [
203
+ {
204
+ "name": "from",
205
+ "type": "address",
206
+ "indexed": true,
207
+ "internalType": "address"
208
+ },
209
+ {
210
+ "name": "to",
211
+ "type": "address",
212
+ "indexed": true,
213
+ "internalType": "address"
214
+ },
215
+ {
216
+ "name": "value",
217
+ "type": "uint256",
218
+ "indexed": false,
219
+ "internalType": "uint256"
220
+ }
221
+ ],
222
+ "anonymous": false
223
+ }
224
+ ]
@@ -0,0 +1,77 @@
1
+ [
2
+ {
3
+ "type": "function",
4
+ "name": "DOMAIN_SEPARATOR",
5
+ "inputs": [],
6
+ "outputs": [
7
+ {
8
+ "name": "",
9
+ "type": "bytes32",
10
+ "internalType": "bytes32"
11
+ }
12
+ ],
13
+ "stateMutability": "view"
14
+ },
15
+ {
16
+ "type": "function",
17
+ "name": "nonces",
18
+ "inputs": [
19
+ {
20
+ "name": "owner",
21
+ "type": "address",
22
+ "internalType": "address"
23
+ }
24
+ ],
25
+ "outputs": [
26
+ {
27
+ "name": "",
28
+ "type": "uint256",
29
+ "internalType": "uint256"
30
+ }
31
+ ],
32
+ "stateMutability": "view"
33
+ },
34
+ {
35
+ "type": "function",
36
+ "name": "permit",
37
+ "inputs": [
38
+ {
39
+ "name": "owner",
40
+ "type": "address",
41
+ "internalType": "address"
42
+ },
43
+ {
44
+ "name": "spender",
45
+ "type": "address",
46
+ "internalType": "address"
47
+ },
48
+ {
49
+ "name": "value",
50
+ "type": "uint256",
51
+ "internalType": "uint256"
52
+ },
53
+ {
54
+ "name": "deadline",
55
+ "type": "uint256",
56
+ "internalType": "uint256"
57
+ },
58
+ {
59
+ "name": "v",
60
+ "type": "uint8",
61
+ "internalType": "uint8"
62
+ },
63
+ {
64
+ "name": "r",
65
+ "type": "bytes32",
66
+ "internalType": "bytes32"
67
+ },
68
+ {
69
+ "name": "s",
70
+ "type": "bytes32",
71
+ "internalType": "bytes32"
72
+ }
73
+ ],
74
+ "outputs": [],
75
+ "stateMutability": "nonpayable"
76
+ }
77
+ ]
@@ -0,0 +1,51 @@
1
+ [
2
+ {
3
+ "type": "function",
4
+ "name": "eip712Domain",
5
+ "inputs": [],
6
+ "outputs": [
7
+ {
8
+ "name": "fields",
9
+ "type": "bytes1",
10
+ "internalType": "bytes1"
11
+ },
12
+ {
13
+ "name": "name",
14
+ "type": "string",
15
+ "internalType": "string"
16
+ },
17
+ {
18
+ "name": "version",
19
+ "type": "string",
20
+ "internalType": "string"
21
+ },
22
+ {
23
+ "name": "chainId",
24
+ "type": "uint256",
25
+ "internalType": "uint256"
26
+ },
27
+ {
28
+ "name": "verifyingContract",
29
+ "type": "address",
30
+ "internalType": "address"
31
+ },
32
+ {
33
+ "name": "salt",
34
+ "type": "bytes32",
35
+ "internalType": "bytes32"
36
+ },
37
+ {
38
+ "name": "extensions",
39
+ "type": "uint256[]",
40
+ "internalType": "uint256[]"
41
+ }
42
+ ],
43
+ "stateMutability": "view"
44
+ },
45
+ {
46
+ "type": "event",
47
+ "name": "EIP712DomainChanged",
48
+ "inputs": [],
49
+ "anonymous": false
50
+ }
51
+ ]