@zoralabs/limit-orders 0.2.1 → 0.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.turbo/turbo-build$colon$js.log +50 -51
- package/CHANGELOG.md +12 -0
- package/abis/ISetLimitOrderConfig.json +27 -0
- package/abis/{SimpleAccessManaged.json → Ownable.json} +29 -10
- package/abis/Ownable2Step.json +115 -0
- package/abis/PermittedCallers.json +181 -0
- package/abis/SwapWithLimitOrders.json +116 -3
- package/abis/ZoraLimitOrderBook.json +159 -35
- package/cache/solidity-files-cache.json +1 -1
- package/dist/index.cjs +191 -27
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +191 -27
- package/dist/index.js.map +1 -1
- package/dist/wagmiGenerated.d.ts +217 -32
- package/dist/wagmiGenerated.d.ts.map +1 -1
- package/out/BalanceDelta.sol/BalanceDeltaLibrary.json +1 -1
- package/out/BeforeSwapDelta.sol/BeforeSwapDeltaLibrary.json +1 -1
- package/out/BitMath.sol/BitMath.json +1 -1
- package/out/BytesLib.sol/BytesLib.json +1 -1
- package/out/CoinCommon.sol/CoinCommon.json +1 -1
- package/out/CoinConfigurationVersions.sol/CoinConfigurationVersions.json +1 -1
- package/out/CoinConstants.sol/CoinConstants.json +1 -1
- package/out/Context.sol/Context.json +1 -1
- package/out/Currency.sol/CurrencyLibrary.json +1 -1
- package/out/CurrencyReserves.sol/CurrencyReserves.json +1 -1
- package/out/CustomRevert.sol/CustomRevert.json +1 -1
- package/out/DopplerMath.sol/DopplerMath.json +1 -1
- package/out/FixedPoint128.sol/FixedPoint128.json +1 -1
- package/out/FixedPoint96.sol/FixedPoint96.json +1 -1
- package/out/FullMath.sol/FullMath.json +1 -1
- package/out/IAllowanceTransfer.sol/IAllowanceTransfer.json +1 -1
- package/out/ICoin.sol/ICoin.json +1 -1
- package/out/ICoin.sol/IHasCoinType.json +1 -1
- package/out/ICoin.sol/IHasPoolKey.json +1 -1
- package/out/ICoin.sol/IHasSwapPath.json +1 -1
- package/out/ICoin.sol/IHasTotalSupplyForPositions.json +1 -1
- package/out/IDeployedCoinVersionLookup.sol/IDeployedCoinVersionLookup.json +1 -1
- package/out/IDopplerErrors.sol/IDopplerErrors.json +1 -1
- package/out/IEIP712.sol/IEIP712.json +1 -1
- package/out/IERC1363.sol/IERC1363.json +1 -1
- package/out/IERC165.sol/IERC165.json +1 -1
- package/out/IERC20.sol/IERC20.json +1 -1
- package/out/IERC20Minimal.sol/IERC20Minimal.json +1 -1
- package/out/IERC6909Claims.sol/IERC6909Claims.json +1 -1
- package/out/IERC7572.sol/IERC7572.json +1 -1
- package/out/IExtsload.sol/IExtsload.json +1 -1
- package/out/IExttload.sol/IExttload.json +1 -1
- package/out/IHasRewardsRecipients.sol/IHasRewardsRecipients.json +1 -1
- package/out/IHooks.sol/IHooks.json +1 -1
- package/out/IMsgSender.sol/IMsgSender.json +1 -1
- package/out/IPoolManager.sol/IPoolManager.json +1 -1
- package/out/IProtocolFees.sol/IProtocolFees.json +1 -1
- package/out/ISetLimitOrderConfig.sol/ISetLimitOrderConfig.json +1 -0
- package/out/ISupportsLimitOrderFill.sol/ISupportsLimitOrderFill.json +1 -1
- package/out/ISwapPathRouter.sol/ISwapPathRouter.json +1 -1
- package/out/ISwapRouter.sol/ISwapRouter.json +1 -1
- package/out/IUniswapV3SwapCallback.sol/IUniswapV3SwapCallback.json +1 -1
- package/out/IUpgradeableV4Hook.sol/IUpgradeableDestinationV4Hook.json +1 -1
- package/out/IUpgradeableV4Hook.sol/IUpgradeableDestinationV4HookWithUpdateableFee.json +1 -1
- package/out/IUpgradeableV4Hook.sol/IUpgradeableV4Hook.json +1 -1
- package/out/IWETH.sol/IWETH.json +1 -1
- package/out/IZoraHookRegistry.sol/IZoraHookRegistry.json +1 -1
- package/out/IZoraLimitOrderBook.sol/IZoraLimitOrderBook.json +1 -1
- package/out/IZoraLimitOrderBookCoinsInterface.sol/IZoraLimitOrderBookCoinsInterface.json +1 -1
- package/out/IZoraV4CoinHook.sol/IZoraV4CoinHook.json +1 -1
- package/out/LimitOrderCommon.sol/LimitOrderCommon.json +1 -1
- package/out/LimitOrderCreate.sol/LimitOrderCreate.json +1 -1
- package/out/LimitOrderFill.sol/LimitOrderFill.json +1 -1
- package/out/LimitOrderViews.sol/LimitOrderViews.json +1 -1
- package/out/LimitOrderWithdraw.sol/LimitOrderWithdraw.json +1 -1
- package/out/LiquidityAmounts.sol/LiquidityAmounts.json +1 -1
- package/out/LiquidityMath.sol/LiquidityMath.json +1 -1
- package/out/Lock.sol/Lock.json +1 -1
- package/out/NonzeroDeltaCount.sol/NonzeroDeltaCount.json +1 -1
- package/out/Ownable.sol/Ownable.json +1 -0
- package/out/Ownable2Step.sol/Ownable2Step.json +1 -0
- package/out/Path.sol/Path.json +1 -1
- package/out/PathKey.sol/PathKeyLibrary.json +1 -1
- package/out/PermittedCallers.sol/PermittedCallers.json +1 -0
- package/out/PoolId.sol/PoolIdLibrary.json +1 -1
- package/out/Position.sol/Position.json +1 -1
- package/out/SafeCast.sol/SafeCast.json +1 -1
- package/out/SafeCast160.sol/SafeCast160.json +1 -1
- package/out/SafeERC20.sol/SafeERC20.json +1 -1
- package/out/SqrtPriceMath.sol/SqrtPriceMath.json +1 -1
- package/out/StateLibrary.sol/StateLibrary.json +1 -1
- package/out/SwapWithLimitOrders.sol/SwapWithLimitOrders.json +1 -1
- package/out/TickBitmap.sol/TickBitmap.json +1 -1
- package/out/TickMath.sol/TickMath.json +1 -1
- package/out/TransientSlot.sol/TransientSlot.json +1 -1
- package/out/TransientStateLibrary.sol/TransientStateLibrary.json +1 -1
- package/out/UniV4SwapToCurrency.sol/UniV4SwapToCurrency.json +1 -1
- package/out/UnsafeMath.sol/UnsafeMath.json +1 -1
- package/out/V3ToV4SwapLib.sol/V3ToV4SwapLib.json +1 -1
- package/out/ZoraLimitOrderBook.sol/ZoraLimitOrderBook.json +1 -1
- package/out/build-info/37e0124d88d60569.json +1 -0
- package/out/uniswap/BitMath.sol/BitMath.json +1 -1
- package/out/uniswap/CustomRevert.sol/CustomRevert.json +1 -1
- package/out/uniswap/FullMath.sol/FullMath.json +1 -1
- package/out/uniswap/SafeCast.sol/SafeCast.json +1 -1
- package/out/uniswap/TickMath.sol/TickMath.json +1 -1
- package/package/wagmiGenerated.ts +190 -26
- package/package.json +1 -1
- package/src/IZoraLimitOrderBook.sol +3 -5
- package/src/ZoraLimitOrderBook.sol +14 -45
- package/src/access/PermittedCallers.sol +41 -0
- package/src/router/ISetLimitOrderConfig.sol +12 -0
- package/src/router/SwapWithLimitOrders.sol +8 -9
- package/test/LimitOrderAccessControl.t.sol +173 -156
- package/test/LimitOrderFill.t.sol +0 -5
- package/test/SwapWithLimitOrders.t.sol +0 -2
- package/test/SwapWithLimitOrdersRouter.t.sol +0 -2
- package/test/gas/LimitOrderFillGas.t.sol +0 -7
- package/test/gas/LimitOrderSwapGas.t.sol +0 -6
- package/test/unit/SwapLimitOrdersUnit.t.sol +4 -4
- package/test/unit/SwapLimitOrdersValidation.t.sol +8 -8
- package/test/utils/BaseTest.sol +7 -16
- package/test/utils/TestableZoraLimitOrderBook.sol +2 -2
- package/abis/IAuthority.json +0 -31
- package/abis/SimpleAccessManager.json +0 -351
- package/out/IAuthority.sol/IAuthority.json +0 -1
- package/out/SimpleAccessManaged.sol/SimpleAccessManaged.json +0 -1
- package/out/SimpleAccessManager.sol/SimpleAccessManager.json +0 -1
- package/out/build-info/876cc09bc44cc8a7.json +0 -1
- package/src/access/SimpleAccessManaged.sol +0 -76
- package/src/access/SimpleAccessManager.sol +0 -268
- package/test/SimpleAccessManager.t.sol +0 -420
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
|
|
2
|
-
> @zoralabs/limit-orders@0.2.
|
|
2
|
+
> @zoralabs/limit-orders@0.2.2 build:js /home/runner/work/zora-protocol-private/zora-protocol-private/packages/limit-orders
|
|
3
3
|
> pnpm run wagmi:generate && pnpm run copy-abis && pnpm run prettier:write && tsup
|
|
4
4
|
|
|
5
5
|
|
|
6
|
-
> @zoralabs/limit-orders@0.2.
|
|
6
|
+
> @zoralabs/limit-orders@0.2.2 wagmi:generate /home/runner/work/zora-protocol-private/zora-protocol-private/packages/limit-orders
|
|
7
7
|
> pnpm run build:contracts:minimal && wagmi generate && pnpm exec rename-generated-abi-casing ./package/wagmiGenerated.ts
|
|
8
8
|
|
|
9
9
|
|
|
10
|
-
> @zoralabs/limit-orders@0.2.
|
|
10
|
+
> @zoralabs/limit-orders@0.2.2 build:contracts:minimal /home/runner/work/zora-protocol-private/zora-protocol-private/packages/limit-orders
|
|
11
11
|
> forge build src/ --no-metadata
|
|
12
12
|
|
|
13
|
-
Compiling
|
|
14
|
-
Solc 0.8.28 finished in
|
|
13
|
+
Compiling 93 files with Solc 0.8.28
|
|
14
|
+
Solc 0.8.28 finished in 7.13s
|
|
15
15
|
Compiler run successful!
|
|
16
16
|
[33m-[39m Validating plugins
|
|
17
17
|
[32m✔[39m Validating plugins
|
|
@@ -26,51 +26,50 @@ Compiler run successful!
|
|
|
26
26
|
✅ Updated ./package/wagmiGenerated.ts (3 replacements)
|
|
27
27
|
✨ All files processed successfully!
|
|
28
28
|
|
|
29
|
-
> @zoralabs/limit-orders@0.2.
|
|
29
|
+
> @zoralabs/limit-orders@0.2.2 copy-abis /home/runner/work/zora-protocol-private/zora-protocol-private/packages/limit-orders
|
|
30
30
|
> pnpm exec bundle-abis
|
|
31
31
|
|
|
32
32
|
|
|
33
|
-
> @zoralabs/limit-orders@0.2.
|
|
33
|
+
> @zoralabs/limit-orders@0.2.2 prettier:write /home/runner/work/zora-protocol-private/zora-protocol-private/packages/limit-orders
|
|
34
34
|
> prettier --write 'src/**/*.sol' 'test/**/*.sol'
|
|
35
35
|
|
|
36
|
-
src/access/
|
|
37
|
-
src/
|
|
38
|
-
src/
|
|
39
|
-
src/libs/
|
|
40
|
-
src/libs/
|
|
41
|
-
src/libs/
|
|
42
|
-
src/libs/
|
|
43
|
-
src/libs/
|
|
44
|
-
src/libs/
|
|
45
|
-
src/libs/
|
|
46
|
-
src/libs/
|
|
47
|
-
src/libs/
|
|
48
|
-
src/libs/
|
|
49
|
-
src/libs/
|
|
50
|
-
src/
|
|
51
|
-
src/router/SwapWithLimitOrders.sol
|
|
52
|
-
src/ZoraLimitOrderBook.sol
|
|
53
|
-
test/gas/LimitOrderFillGas.t.sol
|
|
54
|
-
test/gas/LimitOrderSwapGas.t.sol
|
|
55
|
-
test/LimitOrderAccessControl.t.sol
|
|
56
|
-
test/LimitOrderBitmap.t.sol
|
|
57
|
-
test/LimitOrderCreate.t.sol
|
|
58
|
-
test/LimitOrderFill.t.sol
|
|
59
|
-
test/LimitOrderLibraries.t.sol
|
|
60
|
-
test/LimitOrderLiquidityPayouts.t.sol
|
|
61
|
-
test/LimitOrderV4Pools.t.sol
|
|
62
|
-
test/LimitOrderWithdraw.t.sol
|
|
63
|
-
test/
|
|
64
|
-
test/
|
|
65
|
-
test/
|
|
66
|
-
test/unit/
|
|
67
|
-
test/unit/
|
|
68
|
-
test/unit/
|
|
69
|
-
test/unit/
|
|
70
|
-
test/
|
|
71
|
-
test/utils/
|
|
72
|
-
test/utils/
|
|
73
|
-
test/utils/TestableZoraLimitOrderBook.sol 37ms (unchanged)
|
|
36
|
+
src/access/PermittedCallers.sol 449ms (unchanged)
|
|
37
|
+
src/IZoraLimitOrderBook.sol 54ms (unchanged)
|
|
38
|
+
src/libs/LimitOrderBitmap.sol 57ms (unchanged)
|
|
39
|
+
src/libs/LimitOrderCommon.sol 210ms (unchanged)
|
|
40
|
+
src/libs/LimitOrderCreate.sol 374ms (unchanged)
|
|
41
|
+
src/libs/LimitOrderFill.sol 244ms (unchanged)
|
|
42
|
+
src/libs/LimitOrderLiquidity.sol 250ms (unchanged)
|
|
43
|
+
src/libs/LimitOrderQueues.sol 43ms (unchanged)
|
|
44
|
+
src/libs/LimitOrderStorage.sol 13ms (unchanged)
|
|
45
|
+
src/libs/LimitOrderTypes.sol 3ms (unchanged)
|
|
46
|
+
src/libs/LimitOrderViews.sol 114ms (unchanged)
|
|
47
|
+
src/libs/LimitOrderWithdraw.sol 109ms (unchanged)
|
|
48
|
+
src/libs/Permit2Payments.sol 17ms (unchanged)
|
|
49
|
+
src/libs/SwapLimitOrders.sol 173ms (unchanged)
|
|
50
|
+
src/router/ISetLimitOrderConfig.sol 1ms (unchanged)
|
|
51
|
+
src/router/SwapWithLimitOrders.sol 301ms (unchanged)
|
|
52
|
+
src/ZoraLimitOrderBook.sol 111ms (unchanged)
|
|
53
|
+
test/gas/LimitOrderFillGas.t.sol 792ms (unchanged)
|
|
54
|
+
test/gas/LimitOrderSwapGas.t.sol 283ms (unchanged)
|
|
55
|
+
test/LimitOrderAccessControl.t.sol 396ms (unchanged)
|
|
56
|
+
test/LimitOrderBitmap.t.sol 212ms (unchanged)
|
|
57
|
+
test/LimitOrderCreate.t.sol 364ms (unchanged)
|
|
58
|
+
test/LimitOrderFill.t.sol 999ms (unchanged)
|
|
59
|
+
test/LimitOrderLibraries.t.sol 371ms (unchanged)
|
|
60
|
+
test/LimitOrderLiquidityPayouts.t.sol 420ms (unchanged)
|
|
61
|
+
test/LimitOrderV4Pools.t.sol 141ms (unchanged)
|
|
62
|
+
test/LimitOrderWithdraw.t.sol 665ms (unchanged)
|
|
63
|
+
test/SwapWithLimitOrders.t.sol 88ms (unchanged)
|
|
64
|
+
test/SwapWithLimitOrdersRouter.t.sol 626ms (unchanged)
|
|
65
|
+
test/unit/LimitOrderBitmapUnit.t.sol 80ms (unchanged)
|
|
66
|
+
test/unit/LimitOrderCreateUnit.t.sol 193ms (unchanged)
|
|
67
|
+
test/unit/SwapLimitOrdersUnit.t.sol 601ms (unchanged)
|
|
68
|
+
test/unit/SwapLimitOrdersValidation.t.sol 228ms (unchanged)
|
|
69
|
+
test/unit/SwapWithLimitOrdersUnit.t.sol 63ms (unchanged)
|
|
70
|
+
test/utils/BaseTest.sol 593ms (unchanged)
|
|
71
|
+
test/utils/MockWETH.sol 34ms (unchanged)
|
|
72
|
+
test/utils/TestableZoraLimitOrderBook.sol 41ms (unchanged)
|
|
74
73
|
[34mCLI[39m Building entry: package/index.ts
|
|
75
74
|
[34mCLI[39m Using tsconfig: tsconfig.json
|
|
76
75
|
[34mCLI[39m tsup v8.4.0
|
|
@@ -79,9 +78,9 @@ test/utils/TestableZoraLimitOrderBook.sol 37ms (unchanged)
|
|
|
79
78
|
[34mCLI[39m Cleaning output folder
|
|
80
79
|
[34mCJS[39m Build start
|
|
81
80
|
[34mESM[39m Build start
|
|
82
|
-
[32mCJS[39m [1mdist/index.cjs [22m[
|
|
83
|
-
[32mCJS[39m [1mdist/index.cjs.map [22m[
|
|
84
|
-
[32mCJS[39m ⚡️ Build success in
|
|
85
|
-
[32mESM[39m [1mdist/index.js [22m[
|
|
86
|
-
[32mESM[39m [1mdist/index.js.map [22m[
|
|
87
|
-
[32mESM[39m ⚡️ Build success in
|
|
81
|
+
[32mCJS[39m [1mdist/index.cjs [22m[32m25.65 KB[39m
|
|
82
|
+
[32mCJS[39m [1mdist/index.cjs.map [22m[32m44.14 KB[39m
|
|
83
|
+
[32mCJS[39m ⚡️ Build success in 35ms
|
|
84
|
+
[32mESM[39m [1mdist/index.js [22m[32m24.48 KB[39m
|
|
85
|
+
[32mESM[39m [1mdist/index.js.map [22m[32m44.03 KB[39m
|
|
86
|
+
[32mESM[39m ⚡️ Build success in 35ms
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# @zoralabs/limit-orders
|
|
2
2
|
|
|
3
|
+
## 0.2.2
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- bb2c2b76: Replace AccessManager with PermittedCallers + Ownable2Step for access control in ZoraLimitOrderBook and SwapWithLimitOrders contracts.
|
|
8
|
+
|
|
9
|
+
- Remove AccessManager and SimpleAccessManaged pattern
|
|
10
|
+
- Use OpenZeppelin Ownable2Step for two-step ownership transfer
|
|
11
|
+
- Add `permittedCallers` mapping to gate `create()` access (public by default, owner can restrict)
|
|
12
|
+
- Add `isPermittedCaller()` getter and `setPermittedCallers()` batch setter functions
|
|
13
|
+
- Owner (multisig) retains access to `setMaxFillCount()` and `setLimitOrderConfig()` functions
|
|
14
|
+
|
|
3
15
|
## 0.2.1
|
|
4
16
|
|
|
5
17
|
### Patch Changes
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
[
|
|
2
|
+
{
|
|
3
|
+
"type": "function",
|
|
4
|
+
"name": "setLimitOrderConfig",
|
|
5
|
+
"inputs": [
|
|
6
|
+
{
|
|
7
|
+
"name": "config",
|
|
8
|
+
"type": "tuple",
|
|
9
|
+
"internalType": "struct LimitOrderConfig",
|
|
10
|
+
"components": [
|
|
11
|
+
{
|
|
12
|
+
"name": "multiples",
|
|
13
|
+
"type": "uint256[]",
|
|
14
|
+
"internalType": "uint256[]"
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
"name": "percentages",
|
|
18
|
+
"type": "uint256[]",
|
|
19
|
+
"internalType": "uint256[]"
|
|
20
|
+
}
|
|
21
|
+
]
|
|
22
|
+
}
|
|
23
|
+
],
|
|
24
|
+
"outputs": [],
|
|
25
|
+
"stateMutability": "nonpayable"
|
|
26
|
+
}
|
|
27
|
+
]
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
[
|
|
2
2
|
{
|
|
3
3
|
"type": "function",
|
|
4
|
-
"name": "
|
|
4
|
+
"name": "owner",
|
|
5
5
|
"inputs": [],
|
|
6
6
|
"outputs": [
|
|
7
7
|
{
|
|
@@ -14,10 +14,17 @@
|
|
|
14
14
|
},
|
|
15
15
|
{
|
|
16
16
|
"type": "function",
|
|
17
|
-
"name": "
|
|
17
|
+
"name": "renounceOwnership",
|
|
18
|
+
"inputs": [],
|
|
19
|
+
"outputs": [],
|
|
20
|
+
"stateMutability": "nonpayable"
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"type": "function",
|
|
24
|
+
"name": "transferOwnership",
|
|
18
25
|
"inputs": [
|
|
19
26
|
{
|
|
20
|
-
"name": "
|
|
27
|
+
"name": "newOwner",
|
|
21
28
|
"type": "address",
|
|
22
29
|
"internalType": "address"
|
|
23
30
|
}
|
|
@@ -27,12 +34,18 @@
|
|
|
27
34
|
},
|
|
28
35
|
{
|
|
29
36
|
"type": "event",
|
|
30
|
-
"name": "
|
|
37
|
+
"name": "OwnershipTransferred",
|
|
31
38
|
"inputs": [
|
|
32
39
|
{
|
|
33
|
-
"name": "
|
|
40
|
+
"name": "previousOwner",
|
|
34
41
|
"type": "address",
|
|
35
|
-
"indexed":
|
|
42
|
+
"indexed": true,
|
|
43
|
+
"internalType": "address"
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
"name": "newOwner",
|
|
47
|
+
"type": "address",
|
|
48
|
+
"indexed": true,
|
|
36
49
|
"internalType": "address"
|
|
37
50
|
}
|
|
38
51
|
],
|
|
@@ -40,10 +53,10 @@
|
|
|
40
53
|
},
|
|
41
54
|
{
|
|
42
55
|
"type": "error",
|
|
43
|
-
"name": "
|
|
56
|
+
"name": "OwnableInvalidOwner",
|
|
44
57
|
"inputs": [
|
|
45
58
|
{
|
|
46
|
-
"name": "
|
|
59
|
+
"name": "owner",
|
|
47
60
|
"type": "address",
|
|
48
61
|
"internalType": "address"
|
|
49
62
|
}
|
|
@@ -51,7 +64,13 @@
|
|
|
51
64
|
},
|
|
52
65
|
{
|
|
53
66
|
"type": "error",
|
|
54
|
-
"name": "
|
|
55
|
-
"inputs": [
|
|
67
|
+
"name": "OwnableUnauthorizedAccount",
|
|
68
|
+
"inputs": [
|
|
69
|
+
{
|
|
70
|
+
"name": "account",
|
|
71
|
+
"type": "address",
|
|
72
|
+
"internalType": "address"
|
|
73
|
+
}
|
|
74
|
+
]
|
|
56
75
|
}
|
|
57
76
|
]
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
[
|
|
2
|
+
{
|
|
3
|
+
"type": "function",
|
|
4
|
+
"name": "acceptOwnership",
|
|
5
|
+
"inputs": [],
|
|
6
|
+
"outputs": [],
|
|
7
|
+
"stateMutability": "nonpayable"
|
|
8
|
+
},
|
|
9
|
+
{
|
|
10
|
+
"type": "function",
|
|
11
|
+
"name": "owner",
|
|
12
|
+
"inputs": [],
|
|
13
|
+
"outputs": [
|
|
14
|
+
{
|
|
15
|
+
"name": "",
|
|
16
|
+
"type": "address",
|
|
17
|
+
"internalType": "address"
|
|
18
|
+
}
|
|
19
|
+
],
|
|
20
|
+
"stateMutability": "view"
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"type": "function",
|
|
24
|
+
"name": "pendingOwner",
|
|
25
|
+
"inputs": [],
|
|
26
|
+
"outputs": [
|
|
27
|
+
{
|
|
28
|
+
"name": "",
|
|
29
|
+
"type": "address",
|
|
30
|
+
"internalType": "address"
|
|
31
|
+
}
|
|
32
|
+
],
|
|
33
|
+
"stateMutability": "view"
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
"type": "function",
|
|
37
|
+
"name": "renounceOwnership",
|
|
38
|
+
"inputs": [],
|
|
39
|
+
"outputs": [],
|
|
40
|
+
"stateMutability": "nonpayable"
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
"type": "function",
|
|
44
|
+
"name": "transferOwnership",
|
|
45
|
+
"inputs": [
|
|
46
|
+
{
|
|
47
|
+
"name": "newOwner",
|
|
48
|
+
"type": "address",
|
|
49
|
+
"internalType": "address"
|
|
50
|
+
}
|
|
51
|
+
],
|
|
52
|
+
"outputs": [],
|
|
53
|
+
"stateMutability": "nonpayable"
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
"type": "event",
|
|
57
|
+
"name": "OwnershipTransferStarted",
|
|
58
|
+
"inputs": [
|
|
59
|
+
{
|
|
60
|
+
"name": "previousOwner",
|
|
61
|
+
"type": "address",
|
|
62
|
+
"indexed": true,
|
|
63
|
+
"internalType": "address"
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
"name": "newOwner",
|
|
67
|
+
"type": "address",
|
|
68
|
+
"indexed": true,
|
|
69
|
+
"internalType": "address"
|
|
70
|
+
}
|
|
71
|
+
],
|
|
72
|
+
"anonymous": false
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
"type": "event",
|
|
76
|
+
"name": "OwnershipTransferred",
|
|
77
|
+
"inputs": [
|
|
78
|
+
{
|
|
79
|
+
"name": "previousOwner",
|
|
80
|
+
"type": "address",
|
|
81
|
+
"indexed": true,
|
|
82
|
+
"internalType": "address"
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
"name": "newOwner",
|
|
86
|
+
"type": "address",
|
|
87
|
+
"indexed": true,
|
|
88
|
+
"internalType": "address"
|
|
89
|
+
}
|
|
90
|
+
],
|
|
91
|
+
"anonymous": false
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
"type": "error",
|
|
95
|
+
"name": "OwnableInvalidOwner",
|
|
96
|
+
"inputs": [
|
|
97
|
+
{
|
|
98
|
+
"name": "owner",
|
|
99
|
+
"type": "address",
|
|
100
|
+
"internalType": "address"
|
|
101
|
+
}
|
|
102
|
+
]
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
"type": "error",
|
|
106
|
+
"name": "OwnableUnauthorizedAccount",
|
|
107
|
+
"inputs": [
|
|
108
|
+
{
|
|
109
|
+
"name": "account",
|
|
110
|
+
"type": "address",
|
|
111
|
+
"internalType": "address"
|
|
112
|
+
}
|
|
113
|
+
]
|
|
114
|
+
}
|
|
115
|
+
]
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
[
|
|
2
|
+
{
|
|
3
|
+
"type": "function",
|
|
4
|
+
"name": "acceptOwnership",
|
|
5
|
+
"inputs": [],
|
|
6
|
+
"outputs": [],
|
|
7
|
+
"stateMutability": "nonpayable"
|
|
8
|
+
},
|
|
9
|
+
{
|
|
10
|
+
"type": "function",
|
|
11
|
+
"name": "isPermittedCaller",
|
|
12
|
+
"inputs": [
|
|
13
|
+
{
|
|
14
|
+
"name": "caller",
|
|
15
|
+
"type": "address",
|
|
16
|
+
"internalType": "address"
|
|
17
|
+
}
|
|
18
|
+
],
|
|
19
|
+
"outputs": [
|
|
20
|
+
{
|
|
21
|
+
"name": "",
|
|
22
|
+
"type": "bool",
|
|
23
|
+
"internalType": "bool"
|
|
24
|
+
}
|
|
25
|
+
],
|
|
26
|
+
"stateMutability": "view"
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
"type": "function",
|
|
30
|
+
"name": "owner",
|
|
31
|
+
"inputs": [],
|
|
32
|
+
"outputs": [
|
|
33
|
+
{
|
|
34
|
+
"name": "",
|
|
35
|
+
"type": "address",
|
|
36
|
+
"internalType": "address"
|
|
37
|
+
}
|
|
38
|
+
],
|
|
39
|
+
"stateMutability": "view"
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
"type": "function",
|
|
43
|
+
"name": "pendingOwner",
|
|
44
|
+
"inputs": [],
|
|
45
|
+
"outputs": [
|
|
46
|
+
{
|
|
47
|
+
"name": "",
|
|
48
|
+
"type": "address",
|
|
49
|
+
"internalType": "address"
|
|
50
|
+
}
|
|
51
|
+
],
|
|
52
|
+
"stateMutability": "view"
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
"type": "function",
|
|
56
|
+
"name": "renounceOwnership",
|
|
57
|
+
"inputs": [],
|
|
58
|
+
"outputs": [],
|
|
59
|
+
"stateMutability": "nonpayable"
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
"type": "function",
|
|
63
|
+
"name": "setPermittedCallers",
|
|
64
|
+
"inputs": [
|
|
65
|
+
{
|
|
66
|
+
"name": "callers",
|
|
67
|
+
"type": "address[]",
|
|
68
|
+
"internalType": "address[]"
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
"name": "permitted",
|
|
72
|
+
"type": "bool[]",
|
|
73
|
+
"internalType": "bool[]"
|
|
74
|
+
}
|
|
75
|
+
],
|
|
76
|
+
"outputs": [],
|
|
77
|
+
"stateMutability": "nonpayable"
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
"type": "function",
|
|
81
|
+
"name": "transferOwnership",
|
|
82
|
+
"inputs": [
|
|
83
|
+
{
|
|
84
|
+
"name": "newOwner",
|
|
85
|
+
"type": "address",
|
|
86
|
+
"internalType": "address"
|
|
87
|
+
}
|
|
88
|
+
],
|
|
89
|
+
"outputs": [],
|
|
90
|
+
"stateMutability": "nonpayable"
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
"type": "event",
|
|
94
|
+
"name": "OwnershipTransferStarted",
|
|
95
|
+
"inputs": [
|
|
96
|
+
{
|
|
97
|
+
"name": "previousOwner",
|
|
98
|
+
"type": "address",
|
|
99
|
+
"indexed": true,
|
|
100
|
+
"internalType": "address"
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
"name": "newOwner",
|
|
104
|
+
"type": "address",
|
|
105
|
+
"indexed": true,
|
|
106
|
+
"internalType": "address"
|
|
107
|
+
}
|
|
108
|
+
],
|
|
109
|
+
"anonymous": false
|
|
110
|
+
},
|
|
111
|
+
{
|
|
112
|
+
"type": "event",
|
|
113
|
+
"name": "OwnershipTransferred",
|
|
114
|
+
"inputs": [
|
|
115
|
+
{
|
|
116
|
+
"name": "previousOwner",
|
|
117
|
+
"type": "address",
|
|
118
|
+
"indexed": true,
|
|
119
|
+
"internalType": "address"
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
"name": "newOwner",
|
|
123
|
+
"type": "address",
|
|
124
|
+
"indexed": true,
|
|
125
|
+
"internalType": "address"
|
|
126
|
+
}
|
|
127
|
+
],
|
|
128
|
+
"anonymous": false
|
|
129
|
+
},
|
|
130
|
+
{
|
|
131
|
+
"type": "event",
|
|
132
|
+
"name": "PermittedCallerUpdated",
|
|
133
|
+
"inputs": [
|
|
134
|
+
{
|
|
135
|
+
"name": "caller",
|
|
136
|
+
"type": "address",
|
|
137
|
+
"indexed": true,
|
|
138
|
+
"internalType": "address"
|
|
139
|
+
},
|
|
140
|
+
{
|
|
141
|
+
"name": "permitted",
|
|
142
|
+
"type": "bool",
|
|
143
|
+
"indexed": false,
|
|
144
|
+
"internalType": "bool"
|
|
145
|
+
}
|
|
146
|
+
],
|
|
147
|
+
"anonymous": false
|
|
148
|
+
},
|
|
149
|
+
{
|
|
150
|
+
"type": "error",
|
|
151
|
+
"name": "CallerNotPermitted",
|
|
152
|
+
"inputs": []
|
|
153
|
+
},
|
|
154
|
+
{
|
|
155
|
+
"type": "error",
|
|
156
|
+
"name": "OwnableInvalidOwner",
|
|
157
|
+
"inputs": [
|
|
158
|
+
{
|
|
159
|
+
"name": "owner",
|
|
160
|
+
"type": "address",
|
|
161
|
+
"internalType": "address"
|
|
162
|
+
}
|
|
163
|
+
]
|
|
164
|
+
},
|
|
165
|
+
{
|
|
166
|
+
"type": "error",
|
|
167
|
+
"name": "OwnableUnauthorizedAccount",
|
|
168
|
+
"inputs": [
|
|
169
|
+
{
|
|
170
|
+
"name": "account",
|
|
171
|
+
"type": "address",
|
|
172
|
+
"internalType": "address"
|
|
173
|
+
}
|
|
174
|
+
]
|
|
175
|
+
},
|
|
176
|
+
{
|
|
177
|
+
"type": "error",
|
|
178
|
+
"name": "PermittedCallersLengthMismatch",
|
|
179
|
+
"inputs": []
|
|
180
|
+
}
|
|
181
|
+
]
|