@tokenops/sdk 1.6.0 → 2.0.0-alpha.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.
- package/CHANGELOG.md +48 -8
- package/CONTRIBUTING.md +4 -2
- package/README.md +146 -90
- package/SUPPORT.md +47 -0
- package/dist/{chunk-HETNKZEE.js → chunk-335Z2W67.js} +1 -1
- package/dist/{chunk-BD4LZBVF.cjs → chunk-3QHNYEQD.cjs} +18 -17
- package/dist/chunk-456VDDA3.js +370 -0
- package/dist/{chunk-6WSNS3UV.js → chunk-4RAAATVY.js} +2 -4
- package/dist/{chunk-4KJ66YRH.js → chunk-4TSDNZQ3.js} +2 -2
- package/dist/{chunk-WUXUWTFW.cjs → chunk-5576FRT3.cjs} +31 -7
- package/dist/chunk-66IHPTOK.cjs +20 -0
- package/dist/{chunk-2RNW4MIJ.cjs → chunk-67OV5CX2.cjs} +0 -18
- package/dist/{chunk-PD7ME2BT.js → chunk-6GNR22OV.js} +2 -1
- package/dist/{chunk-VHSNYUYV.js → chunk-6NAVMWZQ.js} +5 -5
- package/dist/{chunk-EUKPOXWR.cjs → chunk-6PXXGACR.cjs} +17 -15
- package/dist/{chunk-WTK6JDSI.js → chunk-74QFZ5MK.js} +6 -4
- package/dist/{chunk-WOEETTH7.cjs → chunk-7AFPOE7N.cjs} +6 -6
- package/dist/{chunk-U57COLUE.js → chunk-AXIPOR3C.js} +2 -2
- package/dist/chunk-CTED3MTR.cjs +380 -0
- package/dist/{chunk-QKKBBH7I.js → chunk-DZHYSUGY.js} +28 -7
- package/dist/{chunk-V5D7BHW3.js → chunk-EAJ7SYHE.js} +6 -4
- package/dist/{chunk-SYHNZSZZ.cjs → chunk-FAXIIH5R.cjs} +3 -3
- package/dist/{chunk-7G7UOQV4.cjs → chunk-FGEB7RMY.cjs} +4 -4
- package/dist/chunk-GKKDAW44.js +8823 -0
- package/dist/{chunk-QET3Q4JP.js → chunk-H5POPGOZ.js} +8 -6
- package/dist/{chunk-VR3FREBX.cjs → chunk-JK4XMMKM.cjs} +3 -3
- package/dist/{chunk-CBRL2PJA.cjs → chunk-JQYC66TO.cjs} +12 -12
- package/dist/{chunk-YFIWCYHC.cjs → chunk-JZLGCTGK.cjs} +56 -54
- package/dist/{chunk-4ZCXK4VI.cjs → chunk-KFRDLKMA.cjs} +14 -14
- package/dist/chunk-KWFFIJYX.js +11 -0
- package/dist/chunk-M4IT6DNJ.cjs +608 -0
- package/dist/{chunk-43RFBQ73.cjs → chunk-MVDQMV25.cjs} +29 -32
- package/dist/chunk-NCVX3K2N.cjs +161 -0
- package/dist/chunk-NWFMBLSQ.js +4 -0
- package/dist/chunk-O5676ZWY.js +585 -0
- package/dist/chunk-PUX5VXDB.cjs +8845 -0
- package/dist/{chunk-DRSPMIZ7.js → chunk-QBJ7O2B4.js} +1 -11
- package/dist/{chunk-UJS4N2XM.cjs → chunk-TEBM66WA.cjs} +12 -12
- package/dist/{chunk-TN65XNTI.js → chunk-TWT3STIX.js} +8 -6
- package/dist/chunk-UG5RKLU2.cjs +6 -0
- package/dist/chunk-VP2B4WM2.js +154 -0
- package/dist/{chunk-BK7YIVLK.cjs → chunk-WJLECC22.cjs} +75 -73
- package/dist/{chunk-NFW7AUEX.js → chunk-WMACINXO.js} +1 -1
- package/dist/{chunk-AYGRYDBX.cjs → chunk-XAYGD4E4.cjs} +37 -35
- package/dist/{chunk-46T67CE2.js → chunk-ZA673I3O.js} +1 -1
- package/dist/{chunk-YPYCWLYP.js → chunk-ZWXJTBZO.js} +1 -1
- package/dist/core/addresses.d.ts +14 -2
- package/dist/core/brands.d.ts +8 -2
- package/dist/core/errors.d.ts +71 -10
- package/dist/core/preflight.d.ts +1 -0
- package/dist/fhe/erc7984-abi.d.ts +1 -0
- package/dist/fhe/index.cjs +64 -63
- package/dist/fhe/index.js +7 -6
- package/dist/fhe/operators.d.ts +22 -5
- package/dist/fhe/react/index.cjs +13 -12
- package/dist/fhe/react/index.js +6 -5
- package/dist/fhe/types.d.ts +6 -0
- package/dist/fhe-airdrop/abis/{cloneable.d.ts → airdrop-base.d.ts} +254 -396
- package/dist/fhe-airdrop/abis/compliance.d.ts +422 -0
- package/dist/fhe-airdrop/abis/ecdsa.d.ts +1316 -0
- package/dist/fhe-airdrop/abis/factory.d.ts +1319 -190
- package/dist/fhe-airdrop/abis/index.d.ts +5 -2
- package/dist/fhe-airdrop/abis/merkle.d.ts +1238 -0
- package/dist/fhe-airdrop/advanced/index.cjs +11 -12
- package/dist/fhe-airdrop/advanced/index.d.cts +34 -11
- package/dist/fhe-airdrop/advanced/index.d.ts +34 -11
- package/dist/fhe-airdrop/advanced/index.js +3 -8
- package/dist/fhe-airdrop/advanced/react/index.cjs +37 -50
- package/dist/fhe-airdrop/advanced/react/index.d.cts +9 -3
- package/dist/fhe-airdrop/advanced/react/index.d.ts +9 -3
- package/dist/fhe-airdrop/advanced/react/index.js +36 -50
- package/dist/fhe-airdrop/advanced/react/usePredictEcdsaAirdropAddress.d.ts +33 -0
- package/dist/fhe-airdrop/advanced/react/usePredictMerkleAirdropAddress.d.ts +27 -0
- package/dist/fhe-airdrop/airdrop-base.d.ts +600 -0
- package/dist/fhe-airdrop/campaign.d.ts +297 -0
- package/dist/fhe-airdrop/compliance.d.ts +302 -0
- package/dist/fhe-airdrop/constants.d.ts +33 -0
- package/dist/fhe-airdrop/ecdsa.d.ts +263 -0
- package/dist/fhe-airdrop/encryption.d.ts +92 -14
- package/dist/fhe-airdrop/errors.d.ts +245 -15
- package/dist/fhe-airdrop/factory.d.ts +533 -274
- package/dist/fhe-airdrop/guards.d.ts +273 -0
- package/dist/fhe-airdrop/index.cjs +1131 -74
- package/dist/fhe-airdrop/index.d.cts +46 -8
- package/dist/fhe-airdrop/index.d.ts +46 -8
- package/dist/fhe-airdrop/index.js +931 -8
- package/dist/fhe-airdrop/merkle-tree.d.ts +103 -0
- package/dist/fhe-airdrop/merkle.d.ts +180 -0
- package/dist/fhe-airdrop/react/_shared.d.ts +144 -71
- package/dist/fhe-airdrop/react/index.cjs +399 -459
- package/dist/fhe-airdrop/react/index.d.cts +53 -74
- package/dist/fhe-airdrop/react/index.d.ts +53 -74
- package/dist/fhe-airdrop/react/index.js +261 -374
- package/dist/fhe-airdrop/react/useAirdropGasFee.d.ts +10 -5
- package/dist/fhe-airdrop/react/useAirdropHasRole.d.ts +15 -6
- package/dist/fhe-airdrop/react/useAirdropPause.d.ts +30 -0
- package/dist/fhe-airdrop/react/useAirdropPaused.d.ts +17 -0
- package/dist/fhe-airdrop/react/useAirdropToken.d.ts +11 -4
- package/dist/fhe-airdrop/react/useAirdropWindow.d.ts +37 -0
- package/dist/fhe-airdrop/react/useClaimedAmount.d.ts +29 -0
- package/dist/fhe-airdrop/react/useComplianceManager.d.ts +16 -0
- package/dist/fhe-airdrop/react/useCreateEcdsaAirdrop.d.ts +28 -0
- package/dist/fhe-airdrop/react/useCreateMerkleAirdrop.d.ts +25 -0
- package/dist/fhe-airdrop/react/useEcdsaClaim.d.ts +23 -0
- package/dist/fhe-airdrop/react/useEffectiveUpgradeable.d.ts +20 -0
- package/dist/fhe-airdrop/react/useExtendClaimWindow.d.ts +17 -12
- package/dist/fhe-airdrop/react/useFactoryFees.d.ts +28 -0
- package/dist/fhe-airdrop/react/useFactoryRegistry.d.ts +35 -0
- package/dist/fhe-airdrop/react/useFundAirdrop.d.ts +35 -0
- package/dist/fhe-airdrop/react/useGrantInstanceRoles.d.ts +35 -0
- package/dist/fhe-airdrop/react/useMerkleClaim.d.ts +34 -0
- package/dist/fhe-airdrop/react/useMerkleRoot.d.ts +15 -0
- package/dist/fhe-airdrop/react/useSetMerkleRoot.d.ts +22 -0
- package/dist/fhe-airdrop/react/useWithdrawConfidential.d.ts +23 -0
- package/dist/fhe-airdrop/roles.d.ts +147 -0
- package/dist/fhe-airdrop/types.d.ts +67 -65
- package/dist/fhe-disperse/index.cjs +70 -68
- package/dist/fhe-disperse/index.js +10 -8
- package/dist/fhe-disperse/react/index.cjs +94 -92
- package/dist/fhe-disperse/react/index.js +13 -11
- package/dist/fhe-vesting/advanced/index.cjs +10 -8
- package/dist/fhe-vesting/advanced/index.js +8 -6
- package/dist/fhe-vesting/advanced/react/index.cjs +16 -14
- package/dist/fhe-vesting/advanced/react/index.js +13 -11
- package/dist/fhe-vesting/index.cjs +74 -72
- package/dist/fhe-vesting/index.js +11 -9
- package/dist/fhe-vesting/react/index.cjs +228 -226
- package/dist/fhe-vesting/react/index.js +15 -13
- package/dist/index.cjs +100 -87
- package/dist/index.js +3 -2
- package/dist/testnet-faucet/index.cjs +57 -55
- package/dist/testnet-faucet/index.js +7 -5
- package/dist/testnet-faucet/react/index.cjs +55 -53
- package/dist/testnet-faucet/react/index.js +9 -7
- package/package.json +6 -2
- package/dist/chunk-CNP4L3GF.js +0 -105
- package/dist/chunk-KSDSXJ34.js +0 -41
- package/dist/chunk-LBWRFZR3.cjs +0 -1681
- package/dist/chunk-OL6SHN3D.cjs +0 -44
- package/dist/chunk-S2XD75JM.js +0 -1637
- package/dist/chunk-SPGSO5SO.cjs +0 -1644
- package/dist/chunk-UE5XK2SY.js +0 -1673
- package/dist/chunk-WO72UBQD.cjs +0 -109
- package/dist/fhe-airdrop/advanced/factory-advanced.d.ts +0 -53
- package/dist/fhe-airdrop/advanced/react/usePredictAirdropAddress.d.ts +0 -49
- package/dist/fhe-airdrop/airdrop.d.ts +0 -317
- package/dist/fhe-airdrop/react/useAccessClaimAmount.d.ts +0 -37
- package/dist/fhe-airdrop/react/useAirdropCanExtendClaimWindow.d.ts +0 -7
- package/dist/fhe-airdrop/react/useAirdropClaimTypehash.d.ts +0 -10
- package/dist/fhe-airdrop/react/useAirdropClaimedSignatures.d.ts +0 -16
- package/dist/fhe-airdrop/react/useAirdropDeploymentBlockNumber.d.ts +0 -6
- package/dist/fhe-airdrop/react/useAirdropDomainSeparator.d.ts +0 -8
- package/dist/fhe-airdrop/react/useAirdropEndTime.d.ts +0 -10
- package/dist/fhe-airdrop/react/useAirdropFactoryCustomFee.d.ts +0 -17
- package/dist/fhe-airdrop/react/useAirdropFactoryDefaultGasFee.d.ts +0 -10
- package/dist/fhe-airdrop/react/useAirdropFactoryDisableCustomFee.d.ts +0 -15
- package/dist/fhe-airdrop/react/useAirdropFactoryFeeCollector.d.ts +0 -11
- package/dist/fhe-airdrop/react/useAirdropFactoryInitCodeHash.d.ts +0 -17
- package/dist/fhe-airdrop/react/useAirdropFactorySetCustomFee.d.ts +0 -17
- package/dist/fhe-airdrop/react/useAirdropFactorySetDefaultGasFee.d.ts +0 -16
- package/dist/fhe-airdrop/react/useAirdropFactorySetFeeCollector.d.ts +0 -15
- package/dist/fhe-airdrop/react/useAirdropGrantRole.d.ts +0 -16
- package/dist/fhe-airdrop/react/useAirdropHasClaimEnded.d.ts +0 -7
- package/dist/fhe-airdrop/react/useAirdropHasClaimStarted.d.ts +0 -7
- package/dist/fhe-airdrop/react/useAirdropIsClaimWindowActive.d.ts +0 -9
- package/dist/fhe-airdrop/react/useAirdropIsPaused.d.ts +0 -8
- package/dist/fhe-airdrop/react/useAirdropIsSignatureClaimed.d.ts +0 -22
- package/dist/fhe-airdrop/react/useAirdropIsSignatureValid.d.ts +0 -51
- package/dist/fhe-airdrop/react/useAirdropRevokeRole.d.ts +0 -15
- package/dist/fhe-airdrop/react/useAirdropStartTime.d.ts +0 -10
- package/dist/fhe-airdrop/react/useAirdropWithdrawGasFee.d.ts +0 -15
- package/dist/fhe-airdrop/react/useAirdropWithdrawOtherConfidentialToken.d.ts +0 -14
- package/dist/fhe-airdrop/react/useAirdropWithdrawOtherToken.d.ts +0 -14
- package/dist/fhe-airdrop/react/useClaim.d.ts +0 -39
- package/dist/fhe-airdrop/react/useConfidentialAirdropFactoryImplementation.d.ts +0 -11
- package/dist/fhe-airdrop/react/useCreateAndFundConfidentialAirdrop.d.ts +0 -41
- package/dist/fhe-airdrop/react/useCreateAndFundConfidentialAirdropAndGetAddress.d.ts +0 -48
- package/dist/fhe-airdrop/react/useCreateConfidentialAirdrop.d.ts +0 -29
- package/dist/fhe-airdrop/react/useCreateConfidentialAirdropAndGetAddress.d.ts +0 -31
- package/dist/fhe-airdrop/react/useDisableCustomFee.d.ts +0 -14
- package/dist/fhe-airdrop/react/useFactoryCustomFee.d.ts +0 -17
- package/dist/fhe-airdrop/react/useFactoryDefaultGasFee.d.ts +0 -10
- package/dist/fhe-airdrop/react/useFactoryFeeCollector.d.ts +0 -11
- package/dist/fhe-airdrop/react/useFactoryInitCodeHash.d.ts +0 -17
- package/dist/fhe-airdrop/react/useFundConfidentialAirdrop.d.ts +0 -33
- package/dist/fhe-airdrop/react/usePreflightCreateAirdrop.d.ts +0 -51
- package/dist/fhe-airdrop/react/useSetCustomFee.d.ts +0 -16
- package/dist/fhe-airdrop/react/useSetDefaultGasFee.d.ts +0 -15
- package/dist/fhe-airdrop/react/useSetFeeCollector.d.ts +0 -14
- package/dist/fhe-airdrop/react/useSetPaused.d.ts +0 -14
- package/dist/fhe-airdrop/react/useSignClaimAuthorization.d.ts +0 -31
- package/dist/fhe-airdrop/react/useWithdraw.d.ts +0 -12
- package/dist/fhe-airdrop/react/useWithdrawOtherConfidentialToken.d.ts +0 -13
- package/dist/fhe-airdrop/react/useWithdrawOtherToken.d.ts +0 -13
|
@@ -1,68 +1,1129 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
var
|
|
5
|
-
require('../chunk-
|
|
3
|
+
var chunkCTED3MTR_cjs = require('../chunk-CTED3MTR.cjs');
|
|
4
|
+
var chunkPUX5VXDB_cjs = require('../chunk-PUX5VXDB.cjs');
|
|
5
|
+
var chunkM4IT6DNJ_cjs = require('../chunk-M4IT6DNJ.cjs');
|
|
6
|
+
var chunkKFRDLKMA_cjs = require('../chunk-KFRDLKMA.cjs');
|
|
7
|
+
require('../chunk-FAXIIH5R.cjs');
|
|
6
8
|
var chunkFWHYQZ5E_cjs = require('../chunk-FWHYQZ5E.cjs');
|
|
7
|
-
require('../chunk-
|
|
8
|
-
require('../chunk-
|
|
9
|
-
require('../chunk-
|
|
10
|
-
var
|
|
11
|
-
require('../chunk-
|
|
9
|
+
var chunkUG5RKLU2_cjs = require('../chunk-UG5RKLU2.cjs');
|
|
10
|
+
var chunkMVDQMV25_cjs = require('../chunk-MVDQMV25.cjs');
|
|
11
|
+
require('../chunk-5576FRT3.cjs');
|
|
12
|
+
var chunkJK4XMMKM_cjs = require('../chunk-JK4XMMKM.cjs');
|
|
13
|
+
require('../chunk-66IHPTOK.cjs');
|
|
14
|
+
var chunk67OV5CX2_cjs = require('../chunk-67OV5CX2.cjs');
|
|
15
|
+
var chunkVJKZWYYJ_cjs = require('../chunk-VJKZWYYJ.cjs');
|
|
12
16
|
|
|
17
|
+
// src/fhe-airdrop/abis/compliance.ts
|
|
18
|
+
var complianceRoleManagerAbi = [
|
|
19
|
+
{
|
|
20
|
+
inputs: [],
|
|
21
|
+
stateMutability: "nonpayable",
|
|
22
|
+
type: "constructor"
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
inputs: [],
|
|
26
|
+
name: "AccessControlBadConfirmation",
|
|
27
|
+
type: "error"
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
inputs: [
|
|
31
|
+
{
|
|
32
|
+
internalType: "address",
|
|
33
|
+
name: "account",
|
|
34
|
+
type: "address"
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
internalType: "bytes32",
|
|
38
|
+
name: "neededRole",
|
|
39
|
+
type: "bytes32"
|
|
40
|
+
}
|
|
41
|
+
],
|
|
42
|
+
name: "AccessControlUnauthorizedAccount",
|
|
43
|
+
type: "error"
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
inputs: [
|
|
47
|
+
{
|
|
48
|
+
internalType: "address",
|
|
49
|
+
name: "airdrop",
|
|
50
|
+
type: "address"
|
|
51
|
+
}
|
|
52
|
+
],
|
|
53
|
+
name: "AirdropAndManagerAreSameAddress",
|
|
54
|
+
type: "error"
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
inputs: [],
|
|
58
|
+
name: "CannotManageComplianceDelegate",
|
|
59
|
+
type: "error"
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
inputs: [],
|
|
63
|
+
name: "DelegateAlreadyAdded",
|
|
64
|
+
type: "error"
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
inputs: [
|
|
68
|
+
{
|
|
69
|
+
internalType: "address",
|
|
70
|
+
name: "delegate",
|
|
71
|
+
type: "address"
|
|
72
|
+
}
|
|
73
|
+
],
|
|
74
|
+
name: "DelegateAndAirdropAreSameAddress",
|
|
75
|
+
type: "error"
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
inputs: [
|
|
79
|
+
{
|
|
80
|
+
internalType: "address",
|
|
81
|
+
name: "delegate",
|
|
82
|
+
type: "address"
|
|
83
|
+
}
|
|
84
|
+
],
|
|
85
|
+
name: "DelegateAndManagerAreSameAddress",
|
|
86
|
+
type: "error"
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
inputs: [],
|
|
90
|
+
name: "DelegateNotFound",
|
|
91
|
+
type: "error"
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
inputs: [],
|
|
95
|
+
name: "InvalidInitialization",
|
|
96
|
+
type: "error"
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
inputs: [],
|
|
100
|
+
name: "NotInitializing",
|
|
101
|
+
type: "error"
|
|
102
|
+
},
|
|
103
|
+
{
|
|
104
|
+
inputs: [],
|
|
105
|
+
name: "ZamaProtocolUnsupported",
|
|
106
|
+
type: "error"
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
inputs: [],
|
|
110
|
+
name: "ZeroAirdrop",
|
|
111
|
+
type: "error"
|
|
112
|
+
},
|
|
113
|
+
{
|
|
114
|
+
inputs: [],
|
|
115
|
+
name: "ZeroClientAdmin",
|
|
116
|
+
type: "error"
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
inputs: [],
|
|
120
|
+
name: "ZeroDelegate",
|
|
121
|
+
type: "error"
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
anonymous: false,
|
|
125
|
+
inputs: [
|
|
126
|
+
{
|
|
127
|
+
indexed: true,
|
|
128
|
+
internalType: "address",
|
|
129
|
+
name: "delegate",
|
|
130
|
+
type: "address"
|
|
131
|
+
}
|
|
132
|
+
],
|
|
133
|
+
name: "ClientDelegateAdded",
|
|
134
|
+
type: "event"
|
|
135
|
+
},
|
|
136
|
+
{
|
|
137
|
+
anonymous: false,
|
|
138
|
+
inputs: [
|
|
139
|
+
{
|
|
140
|
+
indexed: true,
|
|
141
|
+
internalType: "address",
|
|
142
|
+
name: "delegate",
|
|
143
|
+
type: "address"
|
|
144
|
+
}
|
|
145
|
+
],
|
|
146
|
+
name: "ClientDelegateRevoked",
|
|
147
|
+
type: "event"
|
|
148
|
+
},
|
|
149
|
+
{
|
|
150
|
+
anonymous: false,
|
|
151
|
+
inputs: [
|
|
152
|
+
{
|
|
153
|
+
indexed: true,
|
|
154
|
+
internalType: "address",
|
|
155
|
+
name: "delegate",
|
|
156
|
+
type: "address"
|
|
157
|
+
}
|
|
158
|
+
],
|
|
159
|
+
name: "ComplianceDelegateSet",
|
|
160
|
+
type: "event"
|
|
161
|
+
},
|
|
162
|
+
{
|
|
163
|
+
anonymous: false,
|
|
164
|
+
inputs: [
|
|
165
|
+
{
|
|
166
|
+
indexed: false,
|
|
167
|
+
internalType: "uint64",
|
|
168
|
+
name: "version",
|
|
169
|
+
type: "uint64"
|
|
170
|
+
}
|
|
171
|
+
],
|
|
172
|
+
name: "Initialized",
|
|
173
|
+
type: "event"
|
|
174
|
+
},
|
|
175
|
+
{
|
|
176
|
+
anonymous: false,
|
|
177
|
+
inputs: [
|
|
178
|
+
{
|
|
179
|
+
indexed: true,
|
|
180
|
+
internalType: "bytes32",
|
|
181
|
+
name: "role",
|
|
182
|
+
type: "bytes32"
|
|
183
|
+
},
|
|
184
|
+
{
|
|
185
|
+
indexed: true,
|
|
186
|
+
internalType: "bytes32",
|
|
187
|
+
name: "previousAdminRole",
|
|
188
|
+
type: "bytes32"
|
|
189
|
+
},
|
|
190
|
+
{
|
|
191
|
+
indexed: true,
|
|
192
|
+
internalType: "bytes32",
|
|
193
|
+
name: "newAdminRole",
|
|
194
|
+
type: "bytes32"
|
|
195
|
+
}
|
|
196
|
+
],
|
|
197
|
+
name: "RoleAdminChanged",
|
|
198
|
+
type: "event"
|
|
199
|
+
},
|
|
200
|
+
{
|
|
201
|
+
anonymous: false,
|
|
202
|
+
inputs: [
|
|
203
|
+
{
|
|
204
|
+
indexed: true,
|
|
205
|
+
internalType: "bytes32",
|
|
206
|
+
name: "role",
|
|
207
|
+
type: "bytes32"
|
|
208
|
+
},
|
|
209
|
+
{
|
|
210
|
+
indexed: true,
|
|
211
|
+
internalType: "address",
|
|
212
|
+
name: "account",
|
|
213
|
+
type: "address"
|
|
214
|
+
},
|
|
215
|
+
{
|
|
216
|
+
indexed: true,
|
|
217
|
+
internalType: "address",
|
|
218
|
+
name: "sender",
|
|
219
|
+
type: "address"
|
|
220
|
+
}
|
|
221
|
+
],
|
|
222
|
+
name: "RoleGranted",
|
|
223
|
+
type: "event"
|
|
224
|
+
},
|
|
225
|
+
{
|
|
226
|
+
anonymous: false,
|
|
227
|
+
inputs: [
|
|
228
|
+
{
|
|
229
|
+
indexed: true,
|
|
230
|
+
internalType: "bytes32",
|
|
231
|
+
name: "role",
|
|
232
|
+
type: "bytes32"
|
|
233
|
+
},
|
|
234
|
+
{
|
|
235
|
+
indexed: true,
|
|
236
|
+
internalType: "address",
|
|
237
|
+
name: "account",
|
|
238
|
+
type: "address"
|
|
239
|
+
},
|
|
240
|
+
{
|
|
241
|
+
indexed: true,
|
|
242
|
+
internalType: "address",
|
|
243
|
+
name: "sender",
|
|
244
|
+
type: "address"
|
|
245
|
+
}
|
|
246
|
+
],
|
|
247
|
+
name: "RoleRevoked",
|
|
248
|
+
type: "event"
|
|
249
|
+
},
|
|
250
|
+
{
|
|
251
|
+
inputs: [],
|
|
252
|
+
name: "DEFAULT_ADMIN_ROLE",
|
|
253
|
+
outputs: [
|
|
254
|
+
{
|
|
255
|
+
internalType: "bytes32",
|
|
256
|
+
name: "",
|
|
257
|
+
type: "bytes32"
|
|
258
|
+
}
|
|
259
|
+
],
|
|
260
|
+
stateMutability: "view",
|
|
261
|
+
type: "function"
|
|
262
|
+
},
|
|
263
|
+
{
|
|
264
|
+
inputs: [],
|
|
265
|
+
name: "DELEGATION_ADMIN_ROLE",
|
|
266
|
+
outputs: [
|
|
267
|
+
{
|
|
268
|
+
internalType: "bytes32",
|
|
269
|
+
name: "",
|
|
270
|
+
type: "bytes32"
|
|
271
|
+
}
|
|
272
|
+
],
|
|
273
|
+
stateMutability: "view",
|
|
274
|
+
type: "function"
|
|
275
|
+
},
|
|
276
|
+
{
|
|
277
|
+
inputs: [
|
|
278
|
+
{
|
|
279
|
+
internalType: "address",
|
|
280
|
+
name: "delegate",
|
|
281
|
+
type: "address"
|
|
282
|
+
}
|
|
283
|
+
],
|
|
284
|
+
name: "addDelegate",
|
|
285
|
+
outputs: [],
|
|
286
|
+
stateMutability: "nonpayable",
|
|
287
|
+
type: "function"
|
|
288
|
+
},
|
|
289
|
+
{
|
|
290
|
+
inputs: [],
|
|
291
|
+
name: "airdrop",
|
|
292
|
+
outputs: [
|
|
293
|
+
{
|
|
294
|
+
internalType: "address",
|
|
295
|
+
name: "",
|
|
296
|
+
type: "address"
|
|
297
|
+
}
|
|
298
|
+
],
|
|
299
|
+
stateMutability: "view",
|
|
300
|
+
type: "function"
|
|
301
|
+
},
|
|
302
|
+
{
|
|
303
|
+
inputs: [],
|
|
304
|
+
name: "clientDelegates",
|
|
305
|
+
outputs: [
|
|
306
|
+
{
|
|
307
|
+
internalType: "address[]",
|
|
308
|
+
name: "",
|
|
309
|
+
type: "address[]"
|
|
310
|
+
}
|
|
311
|
+
],
|
|
312
|
+
stateMutability: "view",
|
|
313
|
+
type: "function"
|
|
314
|
+
},
|
|
315
|
+
{
|
|
316
|
+
inputs: [],
|
|
317
|
+
name: "complianceDelegate",
|
|
318
|
+
outputs: [
|
|
319
|
+
{
|
|
320
|
+
internalType: "address",
|
|
321
|
+
name: "",
|
|
322
|
+
type: "address"
|
|
323
|
+
}
|
|
324
|
+
],
|
|
325
|
+
stateMutability: "view",
|
|
326
|
+
type: "function"
|
|
327
|
+
},
|
|
328
|
+
{
|
|
329
|
+
inputs: [
|
|
330
|
+
{
|
|
331
|
+
internalType: "bytes32",
|
|
332
|
+
name: "role",
|
|
333
|
+
type: "bytes32"
|
|
334
|
+
}
|
|
335
|
+
],
|
|
336
|
+
name: "getRoleAdmin",
|
|
337
|
+
outputs: [
|
|
338
|
+
{
|
|
339
|
+
internalType: "bytes32",
|
|
340
|
+
name: "",
|
|
341
|
+
type: "bytes32"
|
|
342
|
+
}
|
|
343
|
+
],
|
|
344
|
+
stateMutability: "view",
|
|
345
|
+
type: "function"
|
|
346
|
+
},
|
|
347
|
+
{
|
|
348
|
+
inputs: [
|
|
349
|
+
{
|
|
350
|
+
internalType: "bytes32",
|
|
351
|
+
name: "role",
|
|
352
|
+
type: "bytes32"
|
|
353
|
+
},
|
|
354
|
+
{
|
|
355
|
+
internalType: "uint256",
|
|
356
|
+
name: "index",
|
|
357
|
+
type: "uint256"
|
|
358
|
+
}
|
|
359
|
+
],
|
|
360
|
+
name: "getRoleMember",
|
|
361
|
+
outputs: [
|
|
362
|
+
{
|
|
363
|
+
internalType: "address",
|
|
364
|
+
name: "",
|
|
365
|
+
type: "address"
|
|
366
|
+
}
|
|
367
|
+
],
|
|
368
|
+
stateMutability: "view",
|
|
369
|
+
type: "function"
|
|
370
|
+
},
|
|
371
|
+
{
|
|
372
|
+
inputs: [
|
|
373
|
+
{
|
|
374
|
+
internalType: "bytes32",
|
|
375
|
+
name: "role",
|
|
376
|
+
type: "bytes32"
|
|
377
|
+
}
|
|
378
|
+
],
|
|
379
|
+
name: "getRoleMemberCount",
|
|
380
|
+
outputs: [
|
|
381
|
+
{
|
|
382
|
+
internalType: "uint256",
|
|
383
|
+
name: "",
|
|
384
|
+
type: "uint256"
|
|
385
|
+
}
|
|
386
|
+
],
|
|
387
|
+
stateMutability: "view",
|
|
388
|
+
type: "function"
|
|
389
|
+
},
|
|
390
|
+
{
|
|
391
|
+
inputs: [
|
|
392
|
+
{
|
|
393
|
+
internalType: "bytes32",
|
|
394
|
+
name: "role",
|
|
395
|
+
type: "bytes32"
|
|
396
|
+
}
|
|
397
|
+
],
|
|
398
|
+
name: "getRoleMembers",
|
|
399
|
+
outputs: [
|
|
400
|
+
{
|
|
401
|
+
internalType: "address[]",
|
|
402
|
+
name: "",
|
|
403
|
+
type: "address[]"
|
|
404
|
+
}
|
|
405
|
+
],
|
|
406
|
+
stateMutability: "view",
|
|
407
|
+
type: "function"
|
|
408
|
+
},
|
|
409
|
+
{
|
|
410
|
+
inputs: [
|
|
411
|
+
{
|
|
412
|
+
internalType: "bytes32",
|
|
413
|
+
name: "role",
|
|
414
|
+
type: "bytes32"
|
|
415
|
+
},
|
|
416
|
+
{
|
|
417
|
+
internalType: "address",
|
|
418
|
+
name: "account",
|
|
419
|
+
type: "address"
|
|
420
|
+
}
|
|
421
|
+
],
|
|
422
|
+
name: "grantRole",
|
|
423
|
+
outputs: [],
|
|
424
|
+
stateMutability: "nonpayable",
|
|
425
|
+
type: "function"
|
|
426
|
+
},
|
|
427
|
+
{
|
|
428
|
+
inputs: [
|
|
429
|
+
{
|
|
430
|
+
internalType: "bytes32",
|
|
431
|
+
name: "role",
|
|
432
|
+
type: "bytes32"
|
|
433
|
+
},
|
|
434
|
+
{
|
|
435
|
+
internalType: "address",
|
|
436
|
+
name: "account",
|
|
437
|
+
type: "address"
|
|
438
|
+
}
|
|
439
|
+
],
|
|
440
|
+
name: "hasRole",
|
|
441
|
+
outputs: [
|
|
442
|
+
{
|
|
443
|
+
internalType: "bool",
|
|
444
|
+
name: "",
|
|
445
|
+
type: "bool"
|
|
446
|
+
}
|
|
447
|
+
],
|
|
448
|
+
stateMutability: "view",
|
|
449
|
+
type: "function"
|
|
450
|
+
},
|
|
451
|
+
{
|
|
452
|
+
inputs: [
|
|
453
|
+
{
|
|
454
|
+
internalType: "address",
|
|
455
|
+
name: "airdrop_",
|
|
456
|
+
type: "address"
|
|
457
|
+
},
|
|
458
|
+
{
|
|
459
|
+
internalType: "address",
|
|
460
|
+
name: "clientAdmin",
|
|
461
|
+
type: "address"
|
|
462
|
+
},
|
|
463
|
+
{
|
|
464
|
+
internalType: "address",
|
|
465
|
+
name: "clientDelegate",
|
|
466
|
+
type: "address"
|
|
467
|
+
},
|
|
468
|
+
{
|
|
469
|
+
internalType: "address",
|
|
470
|
+
name: "complianceDelegate_",
|
|
471
|
+
type: "address"
|
|
472
|
+
}
|
|
473
|
+
],
|
|
474
|
+
name: "initialize",
|
|
475
|
+
outputs: [],
|
|
476
|
+
stateMutability: "nonpayable",
|
|
477
|
+
type: "function"
|
|
478
|
+
},
|
|
479
|
+
{
|
|
480
|
+
inputs: [
|
|
481
|
+
{
|
|
482
|
+
internalType: "address",
|
|
483
|
+
name: "delegate",
|
|
484
|
+
type: "address"
|
|
485
|
+
}
|
|
486
|
+
],
|
|
487
|
+
name: "isActiveDelegate",
|
|
488
|
+
outputs: [
|
|
489
|
+
{
|
|
490
|
+
internalType: "bool",
|
|
491
|
+
name: "",
|
|
492
|
+
type: "bool"
|
|
493
|
+
}
|
|
494
|
+
],
|
|
495
|
+
stateMutability: "view",
|
|
496
|
+
type: "function"
|
|
497
|
+
},
|
|
498
|
+
{
|
|
499
|
+
inputs: [
|
|
500
|
+
{
|
|
501
|
+
internalType: "bytes32",
|
|
502
|
+
name: "role",
|
|
503
|
+
type: "bytes32"
|
|
504
|
+
},
|
|
505
|
+
{
|
|
506
|
+
internalType: "address",
|
|
507
|
+
name: "callerConfirmation",
|
|
508
|
+
type: "address"
|
|
509
|
+
}
|
|
510
|
+
],
|
|
511
|
+
name: "renounceRole",
|
|
512
|
+
outputs: [],
|
|
513
|
+
stateMutability: "nonpayable",
|
|
514
|
+
type: "function"
|
|
515
|
+
},
|
|
516
|
+
{
|
|
517
|
+
inputs: [
|
|
518
|
+
{
|
|
519
|
+
internalType: "address",
|
|
520
|
+
name: "delegate",
|
|
521
|
+
type: "address"
|
|
522
|
+
}
|
|
523
|
+
],
|
|
524
|
+
name: "revokeDelegate",
|
|
525
|
+
outputs: [],
|
|
526
|
+
stateMutability: "nonpayable",
|
|
527
|
+
type: "function"
|
|
528
|
+
},
|
|
529
|
+
{
|
|
530
|
+
inputs: [
|
|
531
|
+
{
|
|
532
|
+
internalType: "bytes32",
|
|
533
|
+
name: "role",
|
|
534
|
+
type: "bytes32"
|
|
535
|
+
},
|
|
536
|
+
{
|
|
537
|
+
internalType: "address",
|
|
538
|
+
name: "account",
|
|
539
|
+
type: "address"
|
|
540
|
+
}
|
|
541
|
+
],
|
|
542
|
+
name: "revokeRole",
|
|
543
|
+
outputs: [],
|
|
544
|
+
stateMutability: "nonpayable",
|
|
545
|
+
type: "function"
|
|
546
|
+
},
|
|
547
|
+
{
|
|
548
|
+
inputs: [
|
|
549
|
+
{
|
|
550
|
+
internalType: "bytes4",
|
|
551
|
+
name: "interfaceId",
|
|
552
|
+
type: "bytes4"
|
|
553
|
+
}
|
|
554
|
+
],
|
|
555
|
+
name: "supportsInterface",
|
|
556
|
+
outputs: [
|
|
557
|
+
{
|
|
558
|
+
internalType: "bool",
|
|
559
|
+
name: "",
|
|
560
|
+
type: "bool"
|
|
561
|
+
}
|
|
562
|
+
],
|
|
563
|
+
stateMutability: "view",
|
|
564
|
+
type: "function"
|
|
565
|
+
}
|
|
566
|
+
];
|
|
13
567
|
|
|
568
|
+
// src/fhe-airdrop/compliance.ts
|
|
569
|
+
var ACL_PROPAGATION_CODE = "DELEGATION_NOT_PROPAGATED";
|
|
570
|
+
var ACL_PROPAGATION_ERROR_NAME = "DelegationNotPropagatedError";
|
|
571
|
+
var ACL_PROPAGATION_STATUSES = /* @__PURE__ */ new Set([400, 500]);
|
|
572
|
+
function matchesPropagationMessage(message) {
|
|
573
|
+
const lower = message.toLowerCase();
|
|
574
|
+
if (lower.includes("acl check not propagated")) return true;
|
|
575
|
+
return lower.includes("propagat") && lower.includes("gateway");
|
|
576
|
+
}
|
|
577
|
+
function readRecord(value) {
|
|
578
|
+
return typeof value === "object" && value !== null ? value : void 0;
|
|
579
|
+
}
|
|
580
|
+
function readNumber(obj, key) {
|
|
581
|
+
const value = obj?.[key];
|
|
582
|
+
return typeof value === "number" ? value : void 0;
|
|
583
|
+
}
|
|
584
|
+
function readString(obj, key) {
|
|
585
|
+
const value = obj?.[key];
|
|
586
|
+
return typeof value === "string" ? value : void 0;
|
|
587
|
+
}
|
|
588
|
+
function isAclPropagationError(error) {
|
|
589
|
+
const err = readRecord(error);
|
|
590
|
+
if (!err) return false;
|
|
591
|
+
const cause = readRecord(err["cause"]);
|
|
592
|
+
if (err["code"] === ACL_PROPAGATION_CODE || err["name"] === ACL_PROPAGATION_ERROR_NAME || cause?.["code"] === ACL_PROPAGATION_CODE || cause?.["name"] === ACL_PROPAGATION_ERROR_NAME) {
|
|
593
|
+
return true;
|
|
594
|
+
}
|
|
595
|
+
const status = readNumber(err, "status") ?? readNumber(err, "statusCode") ?? readNumber(cause, "status") ?? readNumber(cause, "statusCode");
|
|
596
|
+
if (status === void 0 || !ACL_PROPAGATION_STATUSES.has(status)) return false;
|
|
597
|
+
const errMessage = readString(err, "message");
|
|
598
|
+
const causeMessage = readString(cause, "message");
|
|
599
|
+
return errMessage !== void 0 && matchesPropagationMessage(errMessage) || causeMessage !== void 0 && matchesPropagationMessage(causeMessage);
|
|
600
|
+
}
|
|
601
|
+
var ComplianceManagerClient = class {
|
|
602
|
+
publicClient;
|
|
603
|
+
walletClient;
|
|
604
|
+
address;
|
|
605
|
+
chainId;
|
|
606
|
+
#telemetry;
|
|
607
|
+
constructor(config) {
|
|
608
|
+
this.publicClient = config.publicClient;
|
|
609
|
+
this.walletClient = config.walletClient;
|
|
610
|
+
const chainId = config.chainId ?? config.publicClient.chain?.id;
|
|
611
|
+
if (chainId === void 0) {
|
|
612
|
+
throw new chunk67OV5CX2_cjs.DeploymentAddressUnavailableError({
|
|
613
|
+
reason: "chain-id-missing",
|
|
614
|
+
product: "fheAirdrop",
|
|
615
|
+
contract: "complianceManager",
|
|
616
|
+
clientLabel: "ComplianceManagerClient"
|
|
617
|
+
});
|
|
618
|
+
}
|
|
619
|
+
chunkM4IT6DNJ_cjs.assertSupportedChain(chainId);
|
|
620
|
+
this.chainId = chainId;
|
|
621
|
+
this.address = chunkJK4XMMKM_cjs.normaliseAddress(config.address);
|
|
622
|
+
this.#telemetry = config.telemetry;
|
|
623
|
+
this.#telemetry?.event("fhe-airdrop.client.init", {
|
|
624
|
+
surface: "compliance",
|
|
625
|
+
chainId,
|
|
626
|
+
hasWallet: !!this.walletClient,
|
|
627
|
+
sdkVersion: chunkUG5RKLU2_cjs.SDK_VERSION
|
|
628
|
+
});
|
|
629
|
+
}
|
|
630
|
+
// ============================================================
|
|
631
|
+
// CLIENT DELEGATION MGMT
|
|
632
|
+
// ============================================================
|
|
633
|
+
/**
|
|
634
|
+
* Add a client delegate: grants `delegate` permanent (never-expiring)
|
|
635
|
+
* user-decryption delegation over this clone's airdrop. Requires
|
|
636
|
+
* {@link DELEGATION_ADMIN_ROLE}.
|
|
637
|
+
*
|
|
638
|
+
* Effective on-chain immediately; see the class TSDoc for the gateway
|
|
639
|
+
* propagation lag before `delegatedUserDecrypt` catches up.
|
|
640
|
+
*
|
|
641
|
+
* @throws {@link InvalidArgumentError} (`argument: "delegate"`) when `delegate` is the zero address
|
|
642
|
+
* (`ZeroDelegate`), already an active client delegate (`DelegateAlreadyAdded`), or targets the
|
|
643
|
+
* irrevocable platform compliance delegate (`CannotManageComplianceDelegate`).
|
|
644
|
+
* @returns The transaction hash.
|
|
645
|
+
*/
|
|
646
|
+
async addDelegate(args) {
|
|
647
|
+
return chunkVJKZWYYJ_cjs.withTelemetry(
|
|
648
|
+
this.#telemetry,
|
|
649
|
+
"fhe-airdrop.compliance.addDelegate",
|
|
650
|
+
() => this.#write("addDelegate", [args.delegate], args.account, "addDelegate")
|
|
651
|
+
);
|
|
652
|
+
}
|
|
653
|
+
/**
|
|
654
|
+
* Revoke a client delegate. Requires {@link DELEGATION_ADMIN_ROLE}.
|
|
655
|
+
*
|
|
656
|
+
* Effective on-chain immediately — but off-chain, gateway-served
|
|
657
|
+
* `delegatedUserDecrypt` calls stop succeeding only once the gateway
|
|
658
|
+
* observes the revocation, which is not instantaneous either. Cannot target
|
|
659
|
+
* the platform compliance delegate, which is irrevocable by construction.
|
|
660
|
+
*
|
|
661
|
+
* **Not in the same block as {@link addDelegate} for the same delegate.**
|
|
662
|
+
* The FHEVM ACL rejects an add and a revoke of one delegate within a single
|
|
663
|
+
* block (`AlreadyDelegatedOrRevokedInSameBlock`), and because that revert
|
|
664
|
+
* comes from the ACL rather than from this contract, it surfaces as an
|
|
665
|
+
* opaque {@link ContractRevertError} with no decodable selector — nothing
|
|
666
|
+
* names the delegate or the cause. Batching an add and a revoke into one
|
|
667
|
+
* multicall, or sending both inside one block, is the way to hit it; wait a
|
|
668
|
+
* block between them. This is the sequencing counterpart to the propagation
|
|
669
|
+
* gotcha on the class TSDoc: that one is the gateway lagging the chain, this
|
|
670
|
+
* one is the chain refusing two conflicting writes at the same height.
|
|
671
|
+
*
|
|
672
|
+
* @throws {@link InvalidArgumentError} (`argument: "delegate"`) when `delegate` is the zero address
|
|
673
|
+
* (`ZeroDelegate`), not currently an active client delegate (`DelegateNotFound`), or targets the
|
|
674
|
+
* irrevocable platform compliance delegate (`CannotManageComplianceDelegate`).
|
|
675
|
+
* @returns The transaction hash.
|
|
676
|
+
*/
|
|
677
|
+
async revokeDelegate(args) {
|
|
678
|
+
return chunkVJKZWYYJ_cjs.withTelemetry(
|
|
679
|
+
this.#telemetry,
|
|
680
|
+
"fhe-airdrop.compliance.revokeDelegate",
|
|
681
|
+
() => this.#write("revokeDelegate", [args.delegate], args.account, "revokeDelegate")
|
|
682
|
+
);
|
|
683
|
+
}
|
|
684
|
+
// ============================================================
|
|
685
|
+
// READS
|
|
686
|
+
// ============================================================
|
|
687
|
+
/** The one airdrop instance this clone serves — set once, at `initialize`. */
|
|
688
|
+
async airdrop() {
|
|
689
|
+
return this.#read("airdrop");
|
|
690
|
+
}
|
|
691
|
+
/**
|
|
692
|
+
* The platform compliance delegate.
|
|
693
|
+
*
|
|
694
|
+
* @returns The delegate address, or the zero address when this clone was
|
|
695
|
+
* created with the platform compliance policy OFF. Because `initialize`
|
|
696
|
+
* always runs atomically before this client can reach the clone (see the
|
|
697
|
+
* class TSDoc), a zero return never means "not wired yet" — there is no
|
|
698
|
+
* such observable state on this contract. It unambiguously means "no
|
|
699
|
+
* platform delegate for this airdrop."
|
|
700
|
+
*/
|
|
701
|
+
async complianceDelegate() {
|
|
702
|
+
return this.#read("complianceDelegate");
|
|
703
|
+
}
|
|
704
|
+
/** The current set of active client delegates (excludes the platform compliance delegate, if any). */
|
|
705
|
+
async clientDelegates() {
|
|
706
|
+
return this.#read("clientDelegates");
|
|
707
|
+
}
|
|
708
|
+
/**
|
|
709
|
+
* Authoritative active-delegate check for `delegate` — reads the ACL
|
|
710
|
+
* expiration date directly rather than the contract's `EnumerableSet`
|
|
711
|
+
* mirror, so it reflects the platform compliance delegate too (which never
|
|
712
|
+
* appears in {@link clientDelegates}).
|
|
713
|
+
*
|
|
714
|
+
* On-chain truth only: a `true` result means the delegation is live in the
|
|
715
|
+
* ACL, not that the gateway has caught up with it yet — see the class
|
|
716
|
+
* TSDoc's propagation note.
|
|
717
|
+
*/
|
|
718
|
+
async isActiveDelegate(delegate) {
|
|
719
|
+
return this.#read("isActiveDelegate", [delegate]);
|
|
720
|
+
}
|
|
721
|
+
// Role-constant getters are named for the contract function they read, the
|
|
722
|
+
// same convention every other client in this module follows: one spelling
|
|
723
|
+
// per role, whichever client you happen to be holding.
|
|
724
|
+
/** Gates {@link addDelegate} / {@link revokeDelegate}. */
|
|
725
|
+
async DELEGATION_ADMIN_ROLE() {
|
|
726
|
+
return this.#read("DELEGATION_ADMIN_ROLE");
|
|
727
|
+
}
|
|
728
|
+
/**
|
|
729
|
+
* OpenZeppelin's root role (`bytes32(0)`), read from the clone rather than
|
|
730
|
+
* hard-coded. It administers {@link DELEGATION_ADMIN_ROLE}.
|
|
731
|
+
*/
|
|
732
|
+
async DEFAULT_ADMIN_ROLE() {
|
|
733
|
+
return this.#read("DEFAULT_ADMIN_ROLE");
|
|
734
|
+
}
|
|
735
|
+
// ============================================================
|
|
736
|
+
// ROLE ADMINISTRATION
|
|
737
|
+
// ============================================================
|
|
738
|
+
//
|
|
739
|
+
// The clone is `AccessControlEnumerableUpgradeable`, so membership is
|
|
740
|
+
// enumerable as well as checkable. This surface is what makes the delegation
|
|
741
|
+
// verbs above administrable: without it, whoever the factory named at
|
|
742
|
+
// `initialize` is the only account that can ever add a delegate, and there
|
|
743
|
+
// is no way to find out who that is.
|
|
744
|
+
//
|
|
745
|
+
// Unlike an airdrop instance, this contract adds no "never empty" floor of
|
|
746
|
+
// its own - emptying `DEFAULT_ADMIN_ROLE` here permanently freezes the
|
|
747
|
+
// clone's delegate set at whatever it currently holds.
|
|
748
|
+
/**
|
|
749
|
+
* Whether `holder` holds `role`.
|
|
750
|
+
*
|
|
751
|
+
* The role subject is called `holder`, not `account`: on the writes below
|
|
752
|
+
* `account` already means "who sends this transaction", and one key cannot
|
|
753
|
+
* be both.
|
|
754
|
+
*
|
|
755
|
+
* @param args.role A `bytes32` from {@link DELEGATION_ADMIN_ROLE} or {@link DEFAULT_ADMIN_ROLE}.
|
|
756
|
+
*/
|
|
757
|
+
async hasRole(args) {
|
|
758
|
+
return this.#read("hasRole", [args.role, args.holder]);
|
|
759
|
+
}
|
|
760
|
+
/** The role whose holders may {@link grantRole} and {@link revokeRole} `role`. */
|
|
761
|
+
async getRoleAdmin(role) {
|
|
762
|
+
return this.#read("getRoleAdmin", [role]);
|
|
763
|
+
}
|
|
764
|
+
/** How many accounts hold `role`. */
|
|
765
|
+
async getRoleMemberCount(role) {
|
|
766
|
+
return this.#read("getRoleMemberCount", [role]);
|
|
767
|
+
}
|
|
768
|
+
/**
|
|
769
|
+
* The `index`-th holder of `role`, in `EnumerableSet` order - which is not
|
|
770
|
+
* stable across grants and revokes. Prefer {@link getRoleMembers}.
|
|
771
|
+
*/
|
|
772
|
+
async getRoleMember(args) {
|
|
773
|
+
return this.#read("getRoleMember", [args.role, args.index]);
|
|
774
|
+
}
|
|
775
|
+
/**
|
|
776
|
+
* Every account currently holding `role`.
|
|
777
|
+
*
|
|
778
|
+
* With {@link DELEGATION_ADMIN_ROLE} this answers "who may add or revoke a
|
|
779
|
+
* delegate on this clone?" - the administrative counterpart to
|
|
780
|
+
* {@link clientDelegates}, which answers "who may currently decrypt?".
|
|
781
|
+
*/
|
|
782
|
+
async getRoleMembers(role) {
|
|
783
|
+
return this.#read("getRoleMembers", [role]);
|
|
784
|
+
}
|
|
785
|
+
/**
|
|
786
|
+
* Grant `role` to `holder`. Requires the role's admin role
|
|
787
|
+
* ({@link getRoleAdmin}).
|
|
788
|
+
*
|
|
789
|
+
* This is how a second operator is added to {@link DELEGATION_ADMIN_ROLE} -
|
|
790
|
+
* the delegation verbs themselves are unaffected, the grant only widens who
|
|
791
|
+
* may call them.
|
|
792
|
+
*
|
|
793
|
+
* @returns The transaction hash.
|
|
794
|
+
*/
|
|
795
|
+
async grantRole(args) {
|
|
796
|
+
return chunkVJKZWYYJ_cjs.withTelemetry(
|
|
797
|
+
this.#telemetry,
|
|
798
|
+
"fhe-airdrop.compliance.grantRole",
|
|
799
|
+
() => this.#write("grantRole", [args.role, args.holder], args.account, "grantRole")
|
|
800
|
+
);
|
|
801
|
+
}
|
|
802
|
+
/**
|
|
803
|
+
* Revoke `role` from `holder`. Requires the role's admin role.
|
|
804
|
+
*
|
|
805
|
+
* Revoking a delegation admin does **not** revoke the delegations they
|
|
806
|
+
* created: an existing delegate keeps decrypting until
|
|
807
|
+
* {@link revokeDelegate} is called for it explicitly.
|
|
808
|
+
*
|
|
809
|
+
* @returns The transaction hash.
|
|
810
|
+
*/
|
|
811
|
+
async revokeRole(args) {
|
|
812
|
+
return chunkVJKZWYYJ_cjs.withTelemetry(
|
|
813
|
+
this.#telemetry,
|
|
814
|
+
"fhe-airdrop.compliance.revokeRole",
|
|
815
|
+
() => this.#write("revokeRole", [args.role, args.holder], args.account, "revokeRole")
|
|
816
|
+
);
|
|
817
|
+
}
|
|
818
|
+
/**
|
|
819
|
+
* Give up `role` yourself.
|
|
820
|
+
*
|
|
821
|
+
* The contract's signature is `renounceRole(role, callerConfirmation)` and
|
|
822
|
+
* it reverts `AccessControlBadConfirmation` unless `callerConfirmation` is
|
|
823
|
+
* the sender, so this method takes no holder and fills the confirmation from
|
|
824
|
+
* the resolved sending account. Renouncing for somebody else is not a call
|
|
825
|
+
* that can succeed; use {@link revokeRole} to remove another account's role.
|
|
826
|
+
*
|
|
827
|
+
* @returns The transaction hash.
|
|
828
|
+
*/
|
|
829
|
+
async renounceRole(args) {
|
|
830
|
+
const method = "renounceRole";
|
|
831
|
+
const wallet = this.#requireWallet(method);
|
|
832
|
+
const account = this.#resolveAccount(wallet, args.account, method);
|
|
833
|
+
return chunkVJKZWYYJ_cjs.withTelemetry(
|
|
834
|
+
this.#telemetry,
|
|
835
|
+
"fhe-airdrop.compliance.renounceRole",
|
|
836
|
+
() => this.#write(method, [args.role, accountAddress(account)], account, method)
|
|
837
|
+
);
|
|
838
|
+
}
|
|
839
|
+
// ============================================================
|
|
840
|
+
// INTERNALS (private)
|
|
841
|
+
// ============================================================
|
|
842
|
+
async #write(functionName, args, account, method) {
|
|
843
|
+
const wallet = this.#requireWallet(method);
|
|
844
|
+
const acct = this.#resolveAccount(wallet, account, method);
|
|
845
|
+
await this.#preflightWrite(method, functionName, args, acct);
|
|
846
|
+
try {
|
|
847
|
+
return await wallet.writeContract({
|
|
848
|
+
address: this.address,
|
|
849
|
+
abi: complianceRoleManagerAbi,
|
|
850
|
+
functionName,
|
|
851
|
+
args,
|
|
852
|
+
account: acct,
|
|
853
|
+
chain: wallet.chain
|
|
854
|
+
});
|
|
855
|
+
} catch (err) {
|
|
856
|
+
throw this.#mapRevert(method, err, acct);
|
|
857
|
+
}
|
|
858
|
+
}
|
|
859
|
+
async #read(functionName, args = []) {
|
|
860
|
+
const result = await this.publicClient.readContract({
|
|
861
|
+
address: this.address,
|
|
862
|
+
abi: complianceRoleManagerAbi,
|
|
863
|
+
functionName,
|
|
864
|
+
args
|
|
865
|
+
});
|
|
866
|
+
return result;
|
|
867
|
+
}
|
|
868
|
+
/**
|
|
869
|
+
* Simulate a write purely to surface typed reverts.
|
|
870
|
+
*
|
|
871
|
+
* The simulate's return value is discarded on principle: this contract
|
|
872
|
+
* returns nothing from `addDelegate` / `revokeDelegate` anyway, but the
|
|
873
|
+
* pattern is kept identical to every other airdrop v2 client so a revert is
|
|
874
|
+
* always decoded before the user pays for it.
|
|
875
|
+
*/
|
|
876
|
+
async #preflightWrite(method, functionName, args, account) {
|
|
877
|
+
try {
|
|
878
|
+
await this.publicClient.simulateContract({
|
|
879
|
+
address: this.address,
|
|
880
|
+
abi: complianceRoleManagerAbi,
|
|
881
|
+
functionName,
|
|
882
|
+
args,
|
|
883
|
+
account
|
|
884
|
+
});
|
|
885
|
+
} catch (err) {
|
|
886
|
+
if (chunkMVDQMV25_cjs.isContractRevert(err)) {
|
|
887
|
+
throw this.#mapRevert(method, err, account);
|
|
888
|
+
}
|
|
889
|
+
}
|
|
890
|
+
}
|
|
891
|
+
/**
|
|
892
|
+
* Map a viem error to the SDK's typed palette.
|
|
893
|
+
*
|
|
894
|
+
* `productContext` deliberately carries only public identifiers — the
|
|
895
|
+
* caller, the chain. Never an amount: this contract never handles amounts
|
|
896
|
+
* at all, but the convention is shared across every airdrop v2 client.
|
|
897
|
+
*/
|
|
898
|
+
#mapRevert(method, err, account) {
|
|
899
|
+
return chunkMVDQMV25_cjs.mapContractRevert(err, {
|
|
900
|
+
method,
|
|
901
|
+
contractAddress: this.address,
|
|
902
|
+
abi: complianceRoleManagerAbi,
|
|
903
|
+
productMapper: chunkM4IT6DNJ_cjs.airdropProductMapper,
|
|
904
|
+
account: accountAddress(account),
|
|
905
|
+
productContext: {
|
|
906
|
+
creator: accountAddress(account),
|
|
907
|
+
chainId: this.chainId
|
|
908
|
+
}
|
|
909
|
+
});
|
|
910
|
+
}
|
|
911
|
+
#requireWallet(method) {
|
|
912
|
+
if (!this.walletClient) {
|
|
913
|
+
throw new chunk67OV5CX2_cjs.MissingWalletClientError(method);
|
|
914
|
+
}
|
|
915
|
+
return this.walletClient;
|
|
916
|
+
}
|
|
917
|
+
#resolveAccount(wallet, override, method) {
|
|
918
|
+
const acct = override ?? wallet.account;
|
|
919
|
+
if (!acct) {
|
|
920
|
+
throw new chunk67OV5CX2_cjs.MissingAccountError(method);
|
|
921
|
+
}
|
|
922
|
+
return acct;
|
|
923
|
+
}
|
|
924
|
+
};
|
|
925
|
+
function createComplianceManagerClient(config) {
|
|
926
|
+
return new ComplianceManagerClient(config);
|
|
927
|
+
}
|
|
928
|
+
function accountAddress(account) {
|
|
929
|
+
return typeof account === "string" ? account : account.address;
|
|
930
|
+
}
|
|
14
931
|
|
|
15
|
-
Object.defineProperty(exports, "
|
|
932
|
+
Object.defineProperty(exports, "buildMerkleCampaign", {
|
|
16
933
|
enumerable: true,
|
|
17
|
-
get: function () { return
|
|
934
|
+
get: function () { return chunkCTED3MTR_cjs.buildMerkleCampaign; }
|
|
18
935
|
});
|
|
19
|
-
Object.defineProperty(exports, "
|
|
936
|
+
Object.defineProperty(exports, "buildMerkleTree", {
|
|
20
937
|
enumerable: true,
|
|
21
|
-
get: function () { return
|
|
938
|
+
get: function () { return chunkCTED3MTR_cjs.buildMerkleTree; }
|
|
22
939
|
});
|
|
23
|
-
Object.defineProperty(exports, "
|
|
940
|
+
Object.defineProperty(exports, "encryptCampaignAmounts", {
|
|
941
|
+
enumerable: true,
|
|
942
|
+
get: function () { return chunkCTED3MTR_cjs.encryptCampaignAmounts; }
|
|
943
|
+
});
|
|
944
|
+
Object.defineProperty(exports, "grantInstanceRoles", {
|
|
945
|
+
enumerable: true,
|
|
946
|
+
get: function () { return chunkCTED3MTR_cjs.grantInstanceRoles; }
|
|
947
|
+
});
|
|
948
|
+
Object.defineProperty(exports, "leafOf", {
|
|
949
|
+
enumerable: true,
|
|
950
|
+
get: function () { return chunkCTED3MTR_cjs.leafOf; }
|
|
951
|
+
});
|
|
952
|
+
Object.defineProperty(exports, "planInstanceRoleSplit", {
|
|
953
|
+
enumerable: true,
|
|
954
|
+
get: function () { return chunkCTED3MTR_cjs.planInstanceRoleSplit; }
|
|
955
|
+
});
|
|
956
|
+
Object.defineProperty(exports, "planMerkleCampaign", {
|
|
24
957
|
enumerable: true,
|
|
25
|
-
get: function () { return
|
|
958
|
+
get: function () { return chunkCTED3MTR_cjs.planMerkleCampaign; }
|
|
26
959
|
});
|
|
27
|
-
Object.defineProperty(exports, "
|
|
960
|
+
Object.defineProperty(exports, "rotateMerkleRoot", {
|
|
28
961
|
enumerable: true,
|
|
29
|
-
get: function () { return
|
|
962
|
+
get: function () { return chunkCTED3MTR_cjs.rotateMerkleRoot; }
|
|
30
963
|
});
|
|
31
|
-
Object.defineProperty(exports, "
|
|
964
|
+
Object.defineProperty(exports, "validateCampaignRecipients", {
|
|
32
965
|
enumerable: true,
|
|
33
|
-
get: function () { return
|
|
966
|
+
get: function () { return chunkCTED3MTR_cjs.validateCampaignRecipients; }
|
|
34
967
|
});
|
|
35
|
-
Object.defineProperty(exports, "
|
|
968
|
+
Object.defineProperty(exports, "AirdropBaseClient", {
|
|
36
969
|
enumerable: true,
|
|
37
|
-
get: function () { return
|
|
970
|
+
get: function () { return chunkPUX5VXDB_cjs.AirdropBaseClient; }
|
|
971
|
+
});
|
|
972
|
+
Object.defineProperty(exports, "CLAIM_TYPEHASH", {
|
|
973
|
+
enumerable: true,
|
|
974
|
+
get: function () { return chunkPUX5VXDB_cjs.CLAIM_TYPEHASH; }
|
|
975
|
+
});
|
|
976
|
+
Object.defineProperty(exports, "CLAIM_TYPES", {
|
|
977
|
+
enumerable: true,
|
|
978
|
+
get: function () { return chunkPUX5VXDB_cjs.CLAIM_TYPES; }
|
|
38
979
|
});
|
|
39
980
|
Object.defineProperty(exports, "ConfidentialAirdropFactoryClient", {
|
|
40
981
|
enumerable: true,
|
|
41
|
-
get: function () { return
|
|
982
|
+
get: function () { return chunkPUX5VXDB_cjs.ConfidentialAirdropFactoryClient; }
|
|
983
|
+
});
|
|
984
|
+
Object.defineProperty(exports, "EIP712_DOMAIN_NAME", {
|
|
985
|
+
enumerable: true,
|
|
986
|
+
get: function () { return chunkPUX5VXDB_cjs.EIP712_DOMAIN_NAME; }
|
|
987
|
+
});
|
|
988
|
+
Object.defineProperty(exports, "EIP712_DOMAIN_VERSION", {
|
|
989
|
+
enumerable: true,
|
|
990
|
+
get: function () { return chunkPUX5VXDB_cjs.EIP712_DOMAIN_VERSION; }
|
|
991
|
+
});
|
|
992
|
+
Object.defineProperty(exports, "EcdsaAirdropClient", {
|
|
993
|
+
enumerable: true,
|
|
994
|
+
get: function () { return chunkPUX5VXDB_cjs.EcdsaAirdropClient; }
|
|
42
995
|
});
|
|
43
|
-
Object.defineProperty(exports, "
|
|
996
|
+
Object.defineProperty(exports, "FACTORY_ROLE_CONCENTRATION_NOTE", {
|
|
44
997
|
enumerable: true,
|
|
45
|
-
get: function () { return
|
|
998
|
+
get: function () { return chunkPUX5VXDB_cjs.FACTORY_ROLE_CONCENTRATION_NOTE; }
|
|
999
|
+
});
|
|
1000
|
+
Object.defineProperty(exports, "MerkleAirdropClient", {
|
|
1001
|
+
enumerable: true,
|
|
1002
|
+
get: function () { return chunkPUX5VXDB_cjs.MerkleAirdropClient; }
|
|
1003
|
+
});
|
|
1004
|
+
Object.defineProperty(exports, "airdropFactoryAbi", {
|
|
1005
|
+
enumerable: true,
|
|
1006
|
+
get: function () { return chunkPUX5VXDB_cjs.airdropFactoryAbi; }
|
|
1007
|
+
});
|
|
1008
|
+
Object.defineProperty(exports, "confidentialAirdropBaseAbi", {
|
|
1009
|
+
enumerable: true,
|
|
1010
|
+
get: function () { return chunkPUX5VXDB_cjs.confidentialAirdropBaseAbi; }
|
|
1011
|
+
});
|
|
1012
|
+
Object.defineProperty(exports, "createAirdropBaseClient", {
|
|
1013
|
+
enumerable: true,
|
|
1014
|
+
get: function () { return chunkPUX5VXDB_cjs.createAirdropBaseClient; }
|
|
46
1015
|
});
|
|
47
1016
|
Object.defineProperty(exports, "createConfidentialAirdropFactoryClient", {
|
|
48
1017
|
enumerable: true,
|
|
49
|
-
get: function () { return
|
|
1018
|
+
get: function () { return chunkPUX5VXDB_cjs.createConfidentialAirdropFactoryClient; }
|
|
1019
|
+
});
|
|
1020
|
+
Object.defineProperty(exports, "createEcdsaAirdropClient", {
|
|
1021
|
+
enumerable: true,
|
|
1022
|
+
get: function () { return chunkPUX5VXDB_cjs.createEcdsaAirdropClient; }
|
|
1023
|
+
});
|
|
1024
|
+
Object.defineProperty(exports, "createMerkleAirdropClient", {
|
|
1025
|
+
enumerable: true,
|
|
1026
|
+
get: function () { return chunkPUX5VXDB_cjs.createMerkleAirdropClient; }
|
|
1027
|
+
});
|
|
1028
|
+
Object.defineProperty(exports, "ecdsaConfidentialAirdropAbi", {
|
|
1029
|
+
enumerable: true,
|
|
1030
|
+
get: function () { return chunkPUX5VXDB_cjs.ecdsaConfidentialAirdropAbi; }
|
|
50
1031
|
});
|
|
51
1032
|
Object.defineProperty(exports, "encryptUint64", {
|
|
52
1033
|
enumerable: true,
|
|
53
|
-
get: function () { return
|
|
1034
|
+
get: function () { return chunkPUX5VXDB_cjs.encryptUint64; }
|
|
54
1035
|
});
|
|
55
1036
|
Object.defineProperty(exports, "encryptUint64Batch", {
|
|
56
1037
|
enumerable: true,
|
|
57
|
-
get: function () { return
|
|
1038
|
+
get: function () { return chunkPUX5VXDB_cjs.encryptUint64Batch; }
|
|
1039
|
+
});
|
|
1040
|
+
Object.defineProperty(exports, "merkleConfidentialAirdropAbi", {
|
|
1041
|
+
enumerable: true,
|
|
1042
|
+
get: function () { return chunkPUX5VXDB_cjs.merkleConfidentialAirdropAbi; }
|
|
58
1043
|
});
|
|
59
1044
|
Object.defineProperty(exports, "resolveEncryptor", {
|
|
60
1045
|
enumerable: true,
|
|
61
|
-
get: function () { return
|
|
1046
|
+
get: function () { return chunkPUX5VXDB_cjs.resolveEncryptor; }
|
|
62
1047
|
});
|
|
63
1048
|
Object.defineProperty(exports, "signClaimAuthorization", {
|
|
64
1049
|
enumerable: true,
|
|
65
|
-
get: function () { return
|
|
1050
|
+
get: function () { return chunkPUX5VXDB_cjs.signClaimAuthorization; }
|
|
1051
|
+
});
|
|
1052
|
+
Object.defineProperty(exports, "AIRDROP_CONTRACTS_COMMIT", {
|
|
1053
|
+
enumerable: true,
|
|
1054
|
+
get: function () { return chunkM4IT6DNJ_cjs.AIRDROP_CONTRACTS_COMMIT; }
|
|
1055
|
+
});
|
|
1056
|
+
Object.defineProperty(exports, "AlreadyClaimedError", {
|
|
1057
|
+
enumerable: true,
|
|
1058
|
+
get: function () { return chunkM4IT6DNJ_cjs.AlreadyClaimedError; }
|
|
1059
|
+
});
|
|
1060
|
+
Object.defineProperty(exports, "ClaimNotStartedError", {
|
|
1061
|
+
enumerable: true,
|
|
1062
|
+
get: function () { return chunkM4IT6DNJ_cjs.ClaimNotStartedError; }
|
|
1063
|
+
});
|
|
1064
|
+
Object.defineProperty(exports, "ClaimWindowClosedError", {
|
|
1065
|
+
enumerable: true,
|
|
1066
|
+
get: function () { return chunkM4IT6DNJ_cjs.ClaimWindowClosedError; }
|
|
1067
|
+
});
|
|
1068
|
+
Object.defineProperty(exports, "DEDUP_MODE", {
|
|
1069
|
+
enumerable: true,
|
|
1070
|
+
get: function () { return chunkM4IT6DNJ_cjs.DEDUP_MODE; }
|
|
1071
|
+
});
|
|
1072
|
+
Object.defineProperty(exports, "DEPLOYMENT_MODE", {
|
|
1073
|
+
enumerable: true,
|
|
1074
|
+
get: function () { return chunkM4IT6DNJ_cjs.DEPLOYMENT_MODE; }
|
|
1075
|
+
});
|
|
1076
|
+
Object.defineProperty(exports, "DedupIdConsumedError", {
|
|
1077
|
+
enumerable: true,
|
|
1078
|
+
get: function () { return chunkM4IT6DNJ_cjs.DedupIdConsumedError; }
|
|
1079
|
+
});
|
|
1080
|
+
Object.defineProperty(exports, "FeeCollectorSelfAdministeredError", {
|
|
1081
|
+
enumerable: true,
|
|
1082
|
+
get: function () { return chunkM4IT6DNJ_cjs.FeeCollectorSelfAdministeredError; }
|
|
1083
|
+
});
|
|
1084
|
+
Object.defineProperty(exports, "MerkleUupsUnsupportedError", {
|
|
1085
|
+
enumerable: true,
|
|
1086
|
+
get: function () { return chunkM4IT6DNJ_cjs.MerkleUupsUnsupportedError; }
|
|
1087
|
+
});
|
|
1088
|
+
Object.defineProperty(exports, "NonStockWrapperError", {
|
|
1089
|
+
enumerable: true,
|
|
1090
|
+
get: function () { return chunkM4IT6DNJ_cjs.NonStockWrapperError; }
|
|
1091
|
+
});
|
|
1092
|
+
Object.defineProperty(exports, "PredictionDriftError", {
|
|
1093
|
+
enumerable: true,
|
|
1094
|
+
get: function () { return chunkM4IT6DNJ_cjs.PredictionDriftError; }
|
|
1095
|
+
});
|
|
1096
|
+
Object.defineProperty(exports, "SaltCollisionError", {
|
|
1097
|
+
enumerable: true,
|
|
1098
|
+
get: function () { return chunkM4IT6DNJ_cjs.SaltCollisionError; }
|
|
1099
|
+
});
|
|
1100
|
+
Object.defineProperty(exports, "SignatureExpiredError", {
|
|
1101
|
+
enumerable: true,
|
|
1102
|
+
get: function () { return chunkM4IT6DNJ_cjs.SignatureExpiredError; }
|
|
1103
|
+
});
|
|
1104
|
+
Object.defineProperty(exports, "UpgradeabilityNotAllowedError", {
|
|
1105
|
+
enumerable: true,
|
|
1106
|
+
get: function () { return chunkM4IT6DNJ_cjs.UpgradeabilityNotAllowedError; }
|
|
1107
|
+
});
|
|
1108
|
+
Object.defineProperty(exports, "preflightClaim", {
|
|
1109
|
+
enumerable: true,
|
|
1110
|
+
get: function () { return chunkM4IT6DNJ_cjs.preflightClaim; }
|
|
1111
|
+
});
|
|
1112
|
+
Object.defineProperty(exports, "preflightCreate", {
|
|
1113
|
+
enumerable: true,
|
|
1114
|
+
get: function () { return chunkM4IT6DNJ_cjs.preflightCreate; }
|
|
1115
|
+
});
|
|
1116
|
+
Object.defineProperty(exports, "ERC7984_OPERATOR_MAX_DEADLINE", {
|
|
1117
|
+
enumerable: true,
|
|
1118
|
+
get: function () { return chunkKFRDLKMA_cjs.ERC7984_OPERATOR_MAX_DEADLINE; }
|
|
1119
|
+
});
|
|
1120
|
+
Object.defineProperty(exports, "revokeOperator", {
|
|
1121
|
+
enumerable: true,
|
|
1122
|
+
get: function () { return chunkKFRDLKMA_cjs.revokeOperator; }
|
|
1123
|
+
});
|
|
1124
|
+
Object.defineProperty(exports, "setOperator", {
|
|
1125
|
+
enumerable: true,
|
|
1126
|
+
get: function () { return chunkKFRDLKMA_cjs.setOperator; }
|
|
66
1127
|
});
|
|
67
1128
|
Object.defineProperty(exports, "erc7984OperatorAbi", {
|
|
68
1129
|
enumerable: true,
|
|
@@ -70,161 +1131,157 @@ Object.defineProperty(exports, "erc7984OperatorAbi", {
|
|
|
70
1131
|
});
|
|
71
1132
|
Object.defineProperty(exports, "AccessDeniedError", {
|
|
72
1133
|
enumerable: true,
|
|
73
|
-
get: function () { return
|
|
1134
|
+
get: function () { return chunk67OV5CX2_cjs.AccessDeniedError; }
|
|
74
1135
|
});
|
|
75
1136
|
Object.defineProperty(exports, "AlreadyInitializedError", {
|
|
76
1137
|
enumerable: true,
|
|
77
|
-
get: function () { return
|
|
1138
|
+
get: function () { return chunk67OV5CX2_cjs.AlreadyInitializedError; }
|
|
78
1139
|
});
|
|
79
1140
|
Object.defineProperty(exports, "BatchTooLargeError", {
|
|
80
1141
|
enumerable: true,
|
|
81
|
-
get: function () { return
|
|
1142
|
+
get: function () { return chunk67OV5CX2_cjs.BatchTooLargeError; }
|
|
82
1143
|
});
|
|
83
1144
|
Object.defineProperty(exports, "ContractRevertError", {
|
|
84
1145
|
enumerable: true,
|
|
85
|
-
get: function () { return
|
|
1146
|
+
get: function () { return chunk67OV5CX2_cjs.ContractRevertError; }
|
|
86
1147
|
});
|
|
87
1148
|
Object.defineProperty(exports, "DecryptionFailedError", {
|
|
88
1149
|
enumerable: true,
|
|
89
|
-
get: function () { return
|
|
1150
|
+
get: function () { return chunk67OV5CX2_cjs.DecryptionFailedError; }
|
|
90
1151
|
});
|
|
91
1152
|
Object.defineProperty(exports, "DeploymentAddressUnavailableError", {
|
|
92
1153
|
enumerable: true,
|
|
93
|
-
get: function () { return
|
|
1154
|
+
get: function () { return chunk67OV5CX2_cjs.DeploymentAddressUnavailableError; }
|
|
94
1155
|
});
|
|
95
1156
|
Object.defineProperty(exports, "EncryptionFailedError", {
|
|
96
1157
|
enumerable: true,
|
|
97
|
-
get: function () { return
|
|
1158
|
+
get: function () { return chunk67OV5CX2_cjs.EncryptionFailedError; }
|
|
98
1159
|
});
|
|
99
1160
|
Object.defineProperty(exports, "FeatureDisabledError", {
|
|
100
1161
|
enumerable: true,
|
|
101
|
-
get: function () { return
|
|
1162
|
+
get: function () { return chunk67OV5CX2_cjs.FeatureDisabledError; }
|
|
102
1163
|
});
|
|
103
1164
|
Object.defineProperty(exports, "FheHandleNotAllowedError", {
|
|
104
1165
|
enumerable: true,
|
|
105
|
-
get: function () { return
|
|
1166
|
+
get: function () { return chunk67OV5CX2_cjs.FheHandleNotAllowedError; }
|
|
106
1167
|
});
|
|
107
1168
|
Object.defineProperty(exports, "InsufficientBalanceError", {
|
|
108
1169
|
enumerable: true,
|
|
109
|
-
get: function () { return
|
|
1170
|
+
get: function () { return chunk67OV5CX2_cjs.InsufficientBalanceError; }
|
|
110
1171
|
});
|
|
111
1172
|
Object.defineProperty(exports, "InsufficientFeeError", {
|
|
112
1173
|
enumerable: true,
|
|
113
|
-
get: function () { return
|
|
1174
|
+
get: function () { return chunk67OV5CX2_cjs.InsufficientFeeError; }
|
|
114
1175
|
});
|
|
115
1176
|
Object.defineProperty(exports, "InsufficientGasFundsError", {
|
|
116
1177
|
enumerable: true,
|
|
117
|
-
get: function () { return
|
|
1178
|
+
get: function () { return chunk67OV5CX2_cjs.InsufficientGasFundsError; }
|
|
118
1179
|
});
|
|
119
1180
|
Object.defineProperty(exports, "InvalidArgumentError", {
|
|
120
1181
|
enumerable: true,
|
|
121
|
-
get: function () { return
|
|
1182
|
+
get: function () { return chunk67OV5CX2_cjs.InvalidArgumentError; }
|
|
122
1183
|
});
|
|
123
1184
|
Object.defineProperty(exports, "InvalidSignatureError", {
|
|
124
1185
|
enumerable: true,
|
|
125
|
-
get: function () { return
|
|
1186
|
+
get: function () { return chunk67OV5CX2_cjs.InvalidSignatureError; }
|
|
126
1187
|
});
|
|
127
1188
|
Object.defineProperty(exports, "MissingAccountError", {
|
|
128
1189
|
enumerable: true,
|
|
129
|
-
get: function () { return
|
|
1190
|
+
get: function () { return chunk67OV5CX2_cjs.MissingAccountError; }
|
|
130
1191
|
});
|
|
131
1192
|
Object.defineProperty(exports, "MissingClientError", {
|
|
132
1193
|
enumerable: true,
|
|
133
|
-
get: function () { return
|
|
1194
|
+
get: function () { return chunk67OV5CX2_cjs.MissingClientError; }
|
|
134
1195
|
});
|
|
135
1196
|
Object.defineProperty(exports, "MissingEncryptorError", {
|
|
136
1197
|
enumerable: true,
|
|
137
|
-
get: function () { return
|
|
1198
|
+
get: function () { return chunk67OV5CX2_cjs.MissingEncryptorError; }
|
|
138
1199
|
});
|
|
139
1200
|
Object.defineProperty(exports, "MissingPublicClientError", {
|
|
140
1201
|
enumerable: true,
|
|
141
|
-
get: function () { return
|
|
1202
|
+
get: function () { return chunk67OV5CX2_cjs.MissingPublicClientError; }
|
|
142
1203
|
});
|
|
143
1204
|
Object.defineProperty(exports, "MissingWalletClientError", {
|
|
144
1205
|
enumerable: true,
|
|
145
|
-
get: function () { return
|
|
1206
|
+
get: function () { return chunk67OV5CX2_cjs.MissingWalletClientError; }
|
|
146
1207
|
});
|
|
147
1208
|
Object.defineProperty(exports, "NetworkError", {
|
|
148
1209
|
enumerable: true,
|
|
149
|
-
get: function () { return
|
|
1210
|
+
get: function () { return chunk67OV5CX2_cjs.NetworkError; }
|
|
150
1211
|
});
|
|
151
1212
|
Object.defineProperty(exports, "OperatorNotApprovedError", {
|
|
152
1213
|
enumerable: true,
|
|
153
|
-
get: function () { return
|
|
1214
|
+
get: function () { return chunk67OV5CX2_cjs.OperatorNotApprovedError; }
|
|
154
1215
|
});
|
|
155
1216
|
Object.defineProperty(exports, "PausedError", {
|
|
156
1217
|
enumerable: true,
|
|
157
|
-
get: function () { return
|
|
1218
|
+
get: function () { return chunk67OV5CX2_cjs.PausedError; }
|
|
158
1219
|
});
|
|
159
1220
|
Object.defineProperty(exports, "ReceiptEventAmbiguousError", {
|
|
160
1221
|
enumerable: true,
|
|
161
|
-
get: function () { return
|
|
1222
|
+
get: function () { return chunk67OV5CX2_cjs.ReceiptEventAmbiguousError; }
|
|
162
1223
|
});
|
|
163
1224
|
Object.defineProperty(exports, "ReceiptEventNotFoundError", {
|
|
164
1225
|
enumerable: true,
|
|
165
|
-
get: function () { return
|
|
1226
|
+
get: function () { return chunk67OV5CX2_cjs.ReceiptEventNotFoundError; }
|
|
166
1227
|
});
|
|
167
1228
|
Object.defineProperty(exports, "ReentrancyError", {
|
|
168
1229
|
enumerable: true,
|
|
169
|
-
get: function () { return
|
|
1230
|
+
get: function () { return chunk67OV5CX2_cjs.ReentrancyError; }
|
|
170
1231
|
});
|
|
171
1232
|
Object.defineProperty(exports, "RelayerUnreachableError", {
|
|
172
1233
|
enumerable: true,
|
|
173
|
-
get: function () { return
|
|
1234
|
+
get: function () { return chunk67OV5CX2_cjs.RelayerUnreachableError; }
|
|
174
1235
|
});
|
|
175
1236
|
Object.defineProperty(exports, "SigningFailedError", {
|
|
176
1237
|
enumerable: true,
|
|
177
|
-
get: function () { return
|
|
1238
|
+
get: function () { return chunk67OV5CX2_cjs.SigningFailedError; }
|
|
178
1239
|
});
|
|
179
1240
|
Object.defineProperty(exports, "TokenOpsContractError", {
|
|
180
1241
|
enumerable: true,
|
|
181
|
-
get: function () { return
|
|
1242
|
+
get: function () { return chunk67OV5CX2_cjs.TokenOpsContractError; }
|
|
182
1243
|
});
|
|
183
1244
|
Object.defineProperty(exports, "TokenOpsSdkError", {
|
|
184
1245
|
enumerable: true,
|
|
185
|
-
get: function () { return
|
|
1246
|
+
get: function () { return chunk67OV5CX2_cjs.TokenOpsSdkError; }
|
|
186
1247
|
});
|
|
187
1248
|
Object.defineProperty(exports, "TokenOpsValidationError", {
|
|
188
1249
|
enumerable: true,
|
|
189
|
-
get: function () { return
|
|
1250
|
+
get: function () { return chunk67OV5CX2_cjs.TokenOpsValidationError; }
|
|
190
1251
|
});
|
|
191
1252
|
Object.defineProperty(exports, "TransferFailedError", {
|
|
192
1253
|
enumerable: true,
|
|
193
|
-
get: function () { return
|
|
1254
|
+
get: function () { return chunk67OV5CX2_cjs.TransferFailedError; }
|
|
194
1255
|
});
|
|
195
1256
|
Object.defineProperty(exports, "UnknownWriteFailureError", {
|
|
196
1257
|
enumerable: true,
|
|
197
|
-
get: function () { return
|
|
1258
|
+
get: function () { return chunk67OV5CX2_cjs.UnknownWriteFailureError; }
|
|
198
1259
|
});
|
|
199
1260
|
Object.defineProperty(exports, "UnsupportedChainError", {
|
|
200
1261
|
enumerable: true,
|
|
201
|
-
get: function () { return
|
|
1262
|
+
get: function () { return chunk67OV5CX2_cjs.UnsupportedChainError; }
|
|
202
1263
|
});
|
|
203
1264
|
Object.defineProperty(exports, "UserDecryptNotAllowedError", {
|
|
204
1265
|
enumerable: true,
|
|
205
|
-
get: function () { return
|
|
1266
|
+
get: function () { return chunk67OV5CX2_cjs.UserDecryptNotAllowedError; }
|
|
206
1267
|
});
|
|
207
1268
|
Object.defineProperty(exports, "UserRejectedSignatureError", {
|
|
208
1269
|
enumerable: true,
|
|
209
|
-
get: function () { return
|
|
1270
|
+
get: function () { return chunk67OV5CX2_cjs.UserRejectedSignatureError; }
|
|
210
1271
|
});
|
|
211
1272
|
Object.defineProperty(exports, "WalletChainMismatchError", {
|
|
212
1273
|
enumerable: true,
|
|
213
|
-
get: function () { return
|
|
1274
|
+
get: function () { return chunk67OV5CX2_cjs.WalletChainMismatchError; }
|
|
214
1275
|
});
|
|
215
1276
|
Object.defineProperty(exports, "WalletRejectedError", {
|
|
216
1277
|
enumerable: true,
|
|
217
|
-
get: function () { return
|
|
218
|
-
});
|
|
219
|
-
Object.defineProperty(exports, "asAirdropId", {
|
|
220
|
-
enumerable: true,
|
|
221
|
-
get: function () { return chunk2RNW4MIJ_cjs.asAirdropId; }
|
|
222
|
-
});
|
|
223
|
-
Object.defineProperty(exports, "asEncryptedHandle", {
|
|
224
|
-
enumerable: true,
|
|
225
|
-
get: function () { return chunk2RNW4MIJ_cjs.asEncryptedHandle; }
|
|
1278
|
+
get: function () { return chunk67OV5CX2_cjs.WalletRejectedError; }
|
|
226
1279
|
});
|
|
227
1280
|
Object.defineProperty(exports, "isTokenOpsSdkError", {
|
|
228
1281
|
enumerable: true,
|
|
229
|
-
get: function () { return
|
|
1282
|
+
get: function () { return chunk67OV5CX2_cjs.isTokenOpsSdkError; }
|
|
230
1283
|
});
|
|
1284
|
+
exports.ComplianceManagerClient = ComplianceManagerClient;
|
|
1285
|
+
exports.complianceRoleManagerAbi = complianceRoleManagerAbi;
|
|
1286
|
+
exports.createComplianceManagerClient = createComplianceManagerClient;
|
|
1287
|
+
exports.isAclPropagationError = isAclPropagationError;
|