@zentity/fhevm-contracts 0.2.1 → 0.4.0
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/abi/ComplianceRules.json +25 -16
- package/abi/CompliantERC20.json +30 -16
- package/abi/IdentityRegistry.json +496 -119
- package/contracts/compliance/ComplianceRules.sol +40 -189
- package/contracts/core/IdentityRegistry.sol +280 -232
- package/contracts/interfaces/IComplianceRules.sol +30 -0
- package/contracts/interfaces/IIdentityRegistry.sol +133 -159
- package/contracts/proxy/ERC1967Proxy.sol +6 -0
- package/contracts/test/MockFacilitator.sol +40 -0
- package/contracts/tokens/CompliantERC20.sol +28 -242
- package/deployments/hardhat/addresses.json +3 -8
- package/deployments/sepolia/addresses.json +18 -0
- package/dist/index.d.ts +178 -14
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +71 -16
- package/package.json +3 -2
- package/typechain-types/@openzeppelin/contracts/access/Ownable.ts +153 -0
- package/typechain-types/@openzeppelin/contracts/access/Ownable2Step.ts +217 -0
- package/typechain-types/@openzeppelin/contracts/access/index.ts +5 -0
- package/typechain-types/@openzeppelin/contracts/index.ts +11 -0
- package/typechain-types/@openzeppelin/contracts/interfaces/IERC1967.ts +168 -0
- package/typechain-types/@openzeppelin/contracts/interfaces/IERC5267.ts +151 -0
- package/typechain-types/{contracts/tokens/CompliantERC20.sol/IComplianceChecker.ts → @openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable.ts} +12 -17
- package/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.ts +4 -0
- package/typechain-types/@openzeppelin/contracts/interfaces/index.ts +7 -0
- package/typechain-types/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.ts +105 -0
- package/typechain-types/@openzeppelin/contracts/proxy/ERC1967/ERC1967Utils.ts +69 -0
- package/typechain-types/@openzeppelin/contracts/proxy/ERC1967/index.ts +5 -0
- package/typechain-types/@openzeppelin/contracts/proxy/Proxy.ts +69 -0
- package/typechain-types/@openzeppelin/contracts/proxy/beacon/IBeacon.ts +90 -0
- package/typechain-types/@openzeppelin/contracts/proxy/beacon/index.ts +4 -0
- package/typechain-types/@openzeppelin/contracts/proxy/index.ts +8 -0
- package/typechain-types/@openzeppelin/contracts/utils/Address.ts +69 -0
- package/typechain-types/@openzeppelin/contracts/utils/Errors.ts +69 -0
- package/typechain-types/@openzeppelin/contracts/utils/Strings.ts +69 -0
- package/typechain-types/@openzeppelin/contracts/utils/cryptography/ECDSA.ts +69 -0
- package/typechain-types/@openzeppelin/contracts/utils/cryptography/index.ts +4 -0
- package/typechain-types/@openzeppelin/contracts/utils/index.ts +10 -0
- package/typechain-types/@openzeppelin/contracts/utils/math/SafeCast.ts +69 -0
- package/typechain-types/@openzeppelin/contracts/utils/math/index.ts +4 -0
- package/typechain-types/@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable.ts +251 -0
- package/typechain-types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.ts +186 -0
- package/typechain-types/@openzeppelin/contracts-upgradeable/access/index.ts +5 -0
- package/typechain-types/@openzeppelin/contracts-upgradeable/index.ts +9 -0
- package/typechain-types/@openzeppelin/contracts-upgradeable/proxy/index.ts +5 -0
- package/typechain-types/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.ts +105 -0
- package/typechain-types/@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.ts +196 -0
- package/typechain-types/@openzeppelin/contracts-upgradeable/proxy/utils/index.ts +5 -0
- package/typechain-types/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.ts +105 -0
- package/typechain-types/@openzeppelin/contracts-upgradeable/utils/cryptography/EIP712Upgradeable.ts +184 -0
- package/typechain-types/@openzeppelin/contracts-upgradeable/utils/cryptography/index.ts +4 -0
- package/typechain-types/@openzeppelin/contracts-upgradeable/utils/index.ts +6 -0
- package/typechain-types/@openzeppelin/index.ts +7 -0
- package/typechain-types/contracts/compliance/ComplianceRules.ts +18 -7
- package/typechain-types/contracts/core/IdentityRegistry.ts +493 -233
- package/typechain-types/contracts/index.ts +2 -0
- package/typechain-types/contracts/interfaces/IComplianceRules.ts +290 -0
- package/typechain-types/contracts/interfaces/IIdentityRegistry.ts +269 -341
- package/typechain-types/contracts/interfaces/index.ts +1 -0
- package/typechain-types/contracts/test/MockFacilitator.ts +187 -0
- package/typechain-types/contracts/test/index.ts +4 -0
- package/typechain-types/contracts/tokens/{CompliantERC20.sol/CompliantERC20.ts → CompliantERC20.ts} +19 -8
- package/typechain-types/contracts/tokens/index.ts +1 -2
- package/typechain-types/factories/@openzeppelin/contracts/access/Ownable2Step__factory.ts +138 -0
- package/typechain-types/factories/@openzeppelin/contracts/access/Ownable__factory.ts +96 -0
- package/typechain-types/factories/@openzeppelin/contracts/access/index.ts +5 -0
- package/typechain-types/factories/@openzeppelin/contracts/index.ts +7 -0
- package/typechain-types/factories/@openzeppelin/contracts/interfaces/IERC1967__factory.ts +67 -0
- package/typechain-types/factories/@openzeppelin/contracts/interfaces/IERC5267__factory.ts +71 -0
- package/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable__factory.ts +38 -0
- package/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.ts +4 -0
- package/typechain-types/factories/@openzeppelin/contracts/interfaces/index.ts +6 -0
- package/typechain-types/factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy__factory.ts +144 -0
- package/typechain-types/factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Utils__factory.ts +105 -0
- package/typechain-types/factories/@openzeppelin/contracts/proxy/ERC1967/index.ts +5 -0
- package/typechain-types/factories/@openzeppelin/contracts/proxy/Proxy__factory.ts +26 -0
- package/typechain-types/factories/@openzeppelin/contracts/proxy/beacon/IBeacon__factory.ts +35 -0
- package/typechain-types/factories/@openzeppelin/contracts/proxy/beacon/index.ts +4 -0
- package/typechain-types/factories/@openzeppelin/contracts/proxy/index.ts +6 -0
- package/typechain-types/factories/@openzeppelin/contracts/utils/Address__factory.ts +75 -0
- package/typechain-types/factories/@openzeppelin/contracts/utils/Errors__factory.ts +101 -0
- package/typechain-types/factories/@openzeppelin/contracts/utils/Strings__factory.ts +90 -0
- package/typechain-types/factories/@openzeppelin/contracts/utils/cryptography/ECDSA__factory.ts +91 -0
- package/typechain-types/factories/@openzeppelin/contracts/utils/cryptography/index.ts +4 -0
- package/typechain-types/factories/@openzeppelin/contracts/utils/index.ts +8 -0
- package/typechain-types/factories/@openzeppelin/contracts/utils/math/SafeCast__factory.ts +118 -0
- package/typechain-types/factories/@openzeppelin/contracts/utils/math/index.ts +4 -0
- package/typechain-types/factories/@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable__factory.ts +165 -0
- package/typechain-types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.ts +122 -0
- package/typechain-types/factories/@openzeppelin/contracts-upgradeable/access/index.ts +5 -0
- package/typechain-types/factories/@openzeppelin/contracts-upgradeable/index.ts +6 -0
- package/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/index.ts +4 -0
- package/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.ts +48 -0
- package/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable__factory.ts +153 -0
- package/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.ts +5 -0
- package/typechain-types/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.ts +48 -0
- package/typechain-types/factories/@openzeppelin/contracts-upgradeable/utils/cryptography/EIP712Upgradeable__factory.ts +97 -0
- package/typechain-types/factories/@openzeppelin/contracts-upgradeable/utils/cryptography/index.ts +4 -0
- package/typechain-types/factories/@openzeppelin/contracts-upgradeable/utils/index.ts +5 -0
- package/typechain-types/factories/@openzeppelin/index.ts +5 -0
- package/typechain-types/factories/contracts/compliance/ComplianceRules__factory.ts +26 -17
- package/typechain-types/factories/contracts/core/IdentityRegistry__factory.ts +493 -116
- package/typechain-types/factories/contracts/index.ts +1 -0
- package/typechain-types/factories/contracts/interfaces/IComplianceRules__factory.ts +193 -0
- package/typechain-types/factories/contracts/interfaces/IIdentityRegistry__factory.ts +236 -186
- package/typechain-types/factories/contracts/interfaces/index.ts +1 -0
- package/typechain-types/factories/contracts/test/MockFacilitator__factory.ts +194 -0
- package/typechain-types/factories/contracts/test/index.ts +4 -0
- package/typechain-types/factories/contracts/tokens/CompliantERC20__factory.ts +595 -0
- package/typechain-types/factories/contracts/tokens/index.ts +1 -1
- package/typechain-types/factories/index.ts +1 -0
- package/typechain-types/hardhat.d.ts +394 -16
- package/typechain-types/index.ts +48 -4
- package/deployments/hardhat/.chainId +0 -1
- package/typechain-types/contracts/tokens/CompliantERC20.sol/index.ts +0 -5
- package/typechain-types/factories/contracts/tokens/CompliantERC20.sol/CompliantERC20__factory.ts +0 -581
- package/typechain-types/factories/contracts/tokens/CompliantERC20.sol/IComplianceChecker__factory.ts +0 -44
- package/typechain-types/factories/contracts/tokens/CompliantERC20.sol/index.ts +0 -5
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
/* Autogenerated file. Do not edit manually. */
|
|
2
|
+
/* tslint:disable */
|
|
3
|
+
/* eslint-disable */
|
|
4
|
+
import {
|
|
5
|
+
Contract,
|
|
6
|
+
ContractFactory,
|
|
7
|
+
ContractTransactionResponse,
|
|
8
|
+
Interface,
|
|
9
|
+
} from "ethers";
|
|
10
|
+
import type {
|
|
11
|
+
Signer,
|
|
12
|
+
BigNumberish,
|
|
13
|
+
AddressLike,
|
|
14
|
+
ContractDeployTransaction,
|
|
15
|
+
ContractRunner,
|
|
16
|
+
} from "ethers";
|
|
17
|
+
import type { NonPayableOverrides } from "../../../common";
|
|
18
|
+
import type {
|
|
19
|
+
MockFacilitator,
|
|
20
|
+
MockFacilitatorInterface,
|
|
21
|
+
} from "../../../contracts/test/MockFacilitator";
|
|
22
|
+
|
|
23
|
+
const _abi = [
|
|
24
|
+
{
|
|
25
|
+
inputs: [
|
|
26
|
+
{
|
|
27
|
+
internalType: "address",
|
|
28
|
+
name: "_registry",
|
|
29
|
+
type: "address",
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
internalType: "uint8",
|
|
33
|
+
name: "_requiredLevel",
|
|
34
|
+
type: "uint8",
|
|
35
|
+
},
|
|
36
|
+
],
|
|
37
|
+
stateMutability: "nonpayable",
|
|
38
|
+
type: "constructor",
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
inputs: [],
|
|
42
|
+
name: "ZamaProtocolUnsupported",
|
|
43
|
+
type: "error",
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
anonymous: false,
|
|
47
|
+
inputs: [
|
|
48
|
+
{
|
|
49
|
+
indexed: true,
|
|
50
|
+
internalType: "address",
|
|
51
|
+
name: "payer",
|
|
52
|
+
type: "address",
|
|
53
|
+
},
|
|
54
|
+
],
|
|
55
|
+
name: "SettlementAttempted",
|
|
56
|
+
type: "event",
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
inputs: [],
|
|
60
|
+
name: "confidentialProtocolId",
|
|
61
|
+
outputs: [
|
|
62
|
+
{
|
|
63
|
+
internalType: "uint256",
|
|
64
|
+
name: "",
|
|
65
|
+
type: "uint256",
|
|
66
|
+
},
|
|
67
|
+
],
|
|
68
|
+
stateMutability: "view",
|
|
69
|
+
type: "function",
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
inputs: [],
|
|
73
|
+
name: "registry",
|
|
74
|
+
outputs: [
|
|
75
|
+
{
|
|
76
|
+
internalType: "contract IIdentityRegistry",
|
|
77
|
+
name: "",
|
|
78
|
+
type: "address",
|
|
79
|
+
},
|
|
80
|
+
],
|
|
81
|
+
stateMutability: "view",
|
|
82
|
+
type: "function",
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
inputs: [],
|
|
86
|
+
name: "requiredLevel",
|
|
87
|
+
outputs: [
|
|
88
|
+
{
|
|
89
|
+
internalType: "uint8",
|
|
90
|
+
name: "",
|
|
91
|
+
type: "uint8",
|
|
92
|
+
},
|
|
93
|
+
],
|
|
94
|
+
stateMutability: "view",
|
|
95
|
+
type: "function",
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
inputs: [
|
|
99
|
+
{
|
|
100
|
+
internalType: "address",
|
|
101
|
+
name: "payer",
|
|
102
|
+
type: "address",
|
|
103
|
+
},
|
|
104
|
+
],
|
|
105
|
+
name: "settleWithCompliance",
|
|
106
|
+
outputs: [
|
|
107
|
+
{
|
|
108
|
+
internalType: "ebool",
|
|
109
|
+
name: "",
|
|
110
|
+
type: "bytes32",
|
|
111
|
+
},
|
|
112
|
+
],
|
|
113
|
+
stateMutability: "nonpayable",
|
|
114
|
+
type: "function",
|
|
115
|
+
},
|
|
116
|
+
{
|
|
117
|
+
inputs: [
|
|
118
|
+
{
|
|
119
|
+
internalType: "address",
|
|
120
|
+
name: "payer",
|
|
121
|
+
type: "address",
|
|
122
|
+
},
|
|
123
|
+
],
|
|
124
|
+
name: "settlementResults",
|
|
125
|
+
outputs: [
|
|
126
|
+
{
|
|
127
|
+
internalType: "ebool",
|
|
128
|
+
name: "result",
|
|
129
|
+
type: "bytes32",
|
|
130
|
+
},
|
|
131
|
+
],
|
|
132
|
+
stateMutability: "view",
|
|
133
|
+
type: "function",
|
|
134
|
+
},
|
|
135
|
+
] as const;
|
|
136
|
+
|
|
137
|
+
const _bytecode =
|
|
138
|
+
"0x60a060405234801561000f575f5ffd5b5060405161064838038061064883398101604081905261002e91610277565b6100e2610039610108565b80517f9e7b61f58c47dc699ac88507c4f5bb9f121c03808c5676a8078fe583e464970080546001600160a01b03199081166001600160a01b039384161790915560208301517f9e7b61f58c47dc699ac88507c4f5bb9f121c03808c5676a8078fe583e46497018054831691841691909117905560408301517f9e7b61f58c47dc699ac88507c4f5bb9f121c03808c5676a8078fe583e46497028054909216921691909117905550565b6001600160a01b03919091166080525f805460ff191660ff9092169190911790556102bf565b604080516060810182525f808252602082018190529181019190915246600103610161575060408051606080820183525f8083526020808401829052928401819052835191820184528082529181018290529182015290565b4662aa36a7036101e0575060408051606080820183525f8083526020808401829052928401528251908101835273f0ffdc93b7e186bc2f8cb3daa75d86d1930a433d81527392c920834ec8941d2c77d188936e1f7a6f49c1279181019190915273be0e383937d564d7ff0bc3b46c51f0bf8d5c311a9181019190915290565b46617a690361025e575060408051606080820183525f808352602080840182905292840152825190810183527350157cffd6bbfa2dece204a89ec419c23ef5755d815273e3a9105a3a932253a70f126eb1e3b589c643dd249181019190915273be0e383937d564d7ff0bc3b46c51f0bf8d5c311a9181019190915290565b6040516373cac13b60e01b815260040160405180910390fd5b5f5f60408385031215610288575f5ffd5b82516001600160a01b038116811461029e575f5ffd5b602084015190925060ff811681146102b4575f5ffd5b809150509250929050565b60805161036b6102dd5f395f8181605e015261013f015261036b5ff3fe608060405234801561000f575f5ffd5b5060043610610055575f3560e01c80637b103999146100595780638927b0301461009d5780638df30395146100b3578063d1f8c923146100d1578063da8ec20f146100e4575b5f5ffd5b6100807f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b6100a5610103565b604051908152602001610094565b5f546100bf9060ff1681565b60405160ff9091168152602001610094565b6100a56100df3660046102f1565b610111565b6100a56100f23660046102f1565b60016020525f908152604090205481565b5f61010c610213565b905090565b5f805460405163d1e8eba960e01b81526001600160a01b03848116600483015260ff909216602482015282917f0000000000000000000000000000000000000000000000000000000000000000169063d1e8eba9906044016020604051808303815f875af1158015610185573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101a9919061031e565b6001600160a01b0384165f90815260016020526040902081905590506101ce81610247565b506101d98133610256565b506040516001600160a01b038416907f4ebb48966ab10713130c10abb2804a3fc4ec525f9bd3f28689c06bde50262f29905f90a292915050565b5f466001036102225750600190565b4662aa36a703610233575061271190565b46617a690361024257505f1990565b505f90565b5f6102528230610268565b5090565b5f6102618383610268565b5090919050565b5f7f9e7b61f58c47dc699ac88507c4f5bb9f121c03808c5676a8078fe583e46497008054604051635ca4b5b160e11b8152600481018690526001600160a01b03858116602483015292935091169063b9496b62906044015f604051808303815f87803b1580156102d6575f5ffd5b505af11580156102e8573d5f5f3e3d5ffd5b50505050505050565b5f60208284031215610301575f5ffd5b81356001600160a01b0381168114610317575f5ffd5b9392505050565b5f6020828403121561032e575f5ffd5b505191905056fea26469706673582212201718d9a6ca381213cbb68f7e0ee4db02c47889bb2aadd4ca4565bbac0d5cbe7d64736f6c634300081b0033";
|
|
139
|
+
|
|
140
|
+
type MockFacilitatorConstructorParams =
|
|
141
|
+
| [signer?: Signer]
|
|
142
|
+
| ConstructorParameters<typeof ContractFactory>;
|
|
143
|
+
|
|
144
|
+
const isSuperArgs = (
|
|
145
|
+
xs: MockFacilitatorConstructorParams
|
|
146
|
+
): xs is ConstructorParameters<typeof ContractFactory> => xs.length > 1;
|
|
147
|
+
|
|
148
|
+
export class MockFacilitator__factory extends ContractFactory {
|
|
149
|
+
constructor(...args: MockFacilitatorConstructorParams) {
|
|
150
|
+
if (isSuperArgs(args)) {
|
|
151
|
+
super(...args);
|
|
152
|
+
} else {
|
|
153
|
+
super(_abi, _bytecode, args[0]);
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
override getDeployTransaction(
|
|
158
|
+
_registry: AddressLike,
|
|
159
|
+
_requiredLevel: BigNumberish,
|
|
160
|
+
overrides?: NonPayableOverrides & { from?: string }
|
|
161
|
+
): Promise<ContractDeployTransaction> {
|
|
162
|
+
return super.getDeployTransaction(
|
|
163
|
+
_registry,
|
|
164
|
+
_requiredLevel,
|
|
165
|
+
overrides || {}
|
|
166
|
+
);
|
|
167
|
+
}
|
|
168
|
+
override deploy(
|
|
169
|
+
_registry: AddressLike,
|
|
170
|
+
_requiredLevel: BigNumberish,
|
|
171
|
+
overrides?: NonPayableOverrides & { from?: string }
|
|
172
|
+
) {
|
|
173
|
+
return super.deploy(_registry, _requiredLevel, overrides || {}) as Promise<
|
|
174
|
+
MockFacilitator & {
|
|
175
|
+
deploymentTransaction(): ContractTransactionResponse;
|
|
176
|
+
}
|
|
177
|
+
>;
|
|
178
|
+
}
|
|
179
|
+
override connect(runner: ContractRunner | null): MockFacilitator__factory {
|
|
180
|
+
return super.connect(runner) as MockFacilitator__factory;
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
static readonly bytecode = _bytecode;
|
|
184
|
+
static readonly abi = _abi;
|
|
185
|
+
static createInterface(): MockFacilitatorInterface {
|
|
186
|
+
return new Interface(_abi) as MockFacilitatorInterface;
|
|
187
|
+
}
|
|
188
|
+
static connect(
|
|
189
|
+
address: string,
|
|
190
|
+
runner?: ContractRunner | null
|
|
191
|
+
): MockFacilitator {
|
|
192
|
+
return new Contract(address, _abi, runner) as unknown as MockFacilitator;
|
|
193
|
+
}
|
|
194
|
+
}
|