@towns-protocol/web3 0.0.191
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/LICENSE.txt +21 -0
- package/README.md +3 -0
- package/dist/ContractHelpers.d.ts +18 -0
- package/dist/ContractHelpers.d.ts.map +1 -0
- package/dist/ContractHelpers.js +75 -0
- package/dist/ContractHelpers.js.map +1 -0
- package/dist/ContractTypes.d.ts +143 -0
- package/dist/ContractTypes.d.ts.map +1 -0
- package/dist/ContractTypes.js +65 -0
- package/dist/ContractTypes.js.map +1 -0
- package/dist/ConvertersEntitlements.d.ts +10 -0
- package/dist/ConvertersEntitlements.d.ts.map +1 -0
- package/dist/ConvertersEntitlements.js +120 -0
- package/dist/ConvertersEntitlements.js.map +1 -0
- package/dist/ConvertersRoles.d.ts +8 -0
- package/dist/ConvertersRoles.d.ts.map +1 -0
- package/dist/ConvertersRoles.js +94 -0
- package/dist/ConvertersRoles.js.map +1 -0
- package/dist/DelegateRegistry.d.ts +3 -0
- package/dist/DelegateRegistry.d.ts.map +1 -0
- package/dist/DelegateRegistry.js +72 -0
- package/dist/DelegateRegistry.js.map +1 -0
- package/dist/EntitlementCache.d.ts +20 -0
- package/dist/EntitlementCache.d.ts.map +1 -0
- package/dist/EntitlementCache.js +41 -0
- package/dist/EntitlementCache.js.map +1 -0
- package/dist/EntitlementCache.test.d.ts +5 -0
- package/dist/EntitlementCache.test.d.ts.map +1 -0
- package/dist/EntitlementCache.test.js +130 -0
- package/dist/EntitlementCache.test.js.map +1 -0
- package/dist/ISpaceDapp.d.ts +193 -0
- package/dist/ISpaceDapp.d.ts.map +1 -0
- package/dist/ISpaceDapp.js +2 -0
- package/dist/ISpaceDapp.js.map +1 -0
- package/dist/IStaticContractsInfo.d.ts +28 -0
- package/dist/IStaticContractsInfo.d.ts.map +1 -0
- package/dist/IStaticContractsInfo.js +13 -0
- package/dist/IStaticContractsInfo.js.map +1 -0
- package/dist/LocalhostWeb3Provider.d.ts +15 -0
- package/dist/LocalhostWeb3Provider.d.ts.map +1 -0
- package/dist/LocalhostWeb3Provider.js +60 -0
- package/dist/LocalhostWeb3Provider.js.map +1 -0
- package/dist/MockCrossChainEntitlement.d.ts +6 -0
- package/dist/MockCrossChainEntitlement.d.ts.map +1 -0
- package/dist/MockCrossChainEntitlement.js +104 -0
- package/dist/MockCrossChainEntitlement.js.map +1 -0
- package/dist/MockERC1155.d.ts +6 -0
- package/dist/MockERC1155.d.ts.map +1 -0
- package/dist/MockERC1155.js +518 -0
- package/dist/MockERC1155.js.map +1 -0
- package/dist/MockERC20.d.ts +6 -0
- package/dist/MockERC20.d.ts.map +1 -0
- package/dist/MockERC20.js +574 -0
- package/dist/MockERC20.js.map +1 -0
- package/dist/MockERC721A.d.ts +1563 -0
- package/dist/MockERC721A.d.ts.map +1 -0
- package/dist/MockERC721A.js +1913 -0
- package/dist/MockERC721A.js.map +1 -0
- package/dist/RiverRegistryFactory.d.ts +5 -0
- package/dist/RiverRegistryFactory.d.ts.map +1 -0
- package/dist/RiverRegistryFactory.js +5 -0
- package/dist/RiverRegistryFactory.js.map +1 -0
- package/dist/SpaceDappFactory.d.ts +5 -0
- package/dist/SpaceDappFactory.d.ts.map +1 -0
- package/dist/SpaceDappFactory.js +8 -0
- package/dist/SpaceDappFactory.js.map +1 -0
- package/dist/TestCrossChainEntitlement.d.ts +14 -0
- package/dist/TestCrossChainEntitlement.d.ts.map +1 -0
- package/dist/TestCrossChainEntitlement.js +100 -0
- package/dist/TestCrossChainEntitlement.js.map +1 -0
- package/dist/TestEthBalance.d.ts +60 -0
- package/dist/TestEthBalance.d.ts.map +1 -0
- package/dist/TestEthBalance.js +94 -0
- package/dist/TestEthBalance.js.map +1 -0
- package/dist/TestGatingERC1155.d.ts +17 -0
- package/dist/TestGatingERC1155.d.ts.map +1 -0
- package/dist/TestGatingERC1155.js +101 -0
- package/dist/TestGatingERC1155.js.map +1 -0
- package/dist/TestGatingERC20.d.ts +17 -0
- package/dist/TestGatingERC20.d.ts.map +1 -0
- package/dist/TestGatingERC20.js +149 -0
- package/dist/TestGatingERC20.js.map +1 -0
- package/dist/TestGatingNFT.d.ts +17 -0
- package/dist/TestGatingNFT.d.ts.map +1 -0
- package/dist/TestGatingNFT.js +140 -0
- package/dist/TestGatingNFT.js.map +1 -0
- package/dist/TestGatingUtils.d.ts +15 -0
- package/dist/TestGatingUtils.d.ts.map +1 -0
- package/dist/TestGatingUtils.js +112 -0
- package/dist/TestGatingUtils.js.map +1 -0
- package/dist/Utils.d.ts +59 -0
- package/dist/Utils.d.ts.map +1 -0
- package/dist/Utils.js +122 -0
- package/dist/Utils.js.map +1 -0
- package/dist/Web3Constants.d.ts +6 -0
- package/dist/Web3Constants.d.ts.map +1 -0
- package/dist/Web3Constants.js +7 -0
- package/dist/Web3Constants.js.map +1 -0
- package/dist/Web3Constants.test.d.ts +2 -0
- package/dist/Web3Constants.test.d.ts.map +1 -0
- package/dist/Web3Constants.test.js +15 -0
- package/dist/Web3Constants.test.js.map +1 -0
- package/dist/chain.d.ts +65 -0
- package/dist/chain.d.ts.map +1 -0
- package/dist/chain.js +48 -0
- package/dist/chain.js.map +1 -0
- package/dist/entitlement.d.ts +146 -0
- package/dist/entitlement.d.ts.map +1 -0
- package/dist/entitlement.js +931 -0
- package/dist/entitlement.js.map +1 -0
- package/dist/entitlement.test.d.ts +2 -0
- package/dist/entitlement.test.d.ts.map +1 -0
- package/dist/entitlement.test.js +1743 -0
- package/dist/entitlement.test.js.map +1 -0
- package/dist/error-types.d.ts +7 -0
- package/dist/error-types.d.ts.map +1 -0
- package/dist/error-types.js +13 -0
- package/dist/error-types.js.map +1 -0
- package/dist/index.d.ts +76 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +76 -0
- package/dist/index.js.map +1 -0
- package/dist/types.d.ts +29 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/dist/utils.test.d.ts +2 -0
- package/dist/utils.test.d.ts.map +1 -0
- package/dist/utils.test.js +44 -0
- package/dist/utils.test.js.map +1 -0
- package/dist/v3/BaseContractShim.d.ts +28 -0
- package/dist/v3/BaseContractShim.d.ts.map +1 -0
- package/dist/v3/BaseContractShim.js +185 -0
- package/dist/v3/BaseContractShim.js.map +1 -0
- package/dist/v3/BaseRegistry.d.ts +30 -0
- package/dist/v3/BaseRegistry.d.ts.map +1 -0
- package/dist/v3/BaseRegistry.js +64 -0
- package/dist/v3/BaseRegistry.js.map +1 -0
- package/dist/v3/EIP-712.d.ts +35 -0
- package/dist/v3/EIP-712.d.ts.map +1 -0
- package/dist/v3/EIP-712.js +57 -0
- package/dist/v3/EIP-712.js.map +1 -0
- package/dist/v3/IBanningShim.d.ts +7 -0
- package/dist/v3/IBanningShim.d.ts.map +1 -0
- package/dist/v3/IBanningShim.js +8 -0
- package/dist/v3/IBanningShim.js.map +1 -0
- package/dist/v3/IChannelShim.d.ts +8 -0
- package/dist/v3/IChannelShim.d.ts.map +1 -0
- package/dist/v3/IChannelShim.js +8 -0
- package/dist/v3/IChannelShim.js.map +1 -0
- package/dist/v3/ICreateSpaceShim.d.ts +9 -0
- package/dist/v3/ICreateSpaceShim.d.ts.map +1 -0
- package/dist/v3/ICreateSpaceShim.js +8 -0
- package/dist/v3/ICreateSpaceShim.js.map +1 -0
- package/dist/v3/IDropFacetShim.d.ts +7 -0
- package/dist/v3/IDropFacetShim.d.ts.map +1 -0
- package/dist/v3/IDropFacetShim.js +8 -0
- package/dist/v3/IDropFacetShim.js.map +1 -0
- package/dist/v3/IERC721AQueryableShim.d.ts +7 -0
- package/dist/v3/IERC721AQueryableShim.d.ts.map +1 -0
- package/dist/v3/IERC721AQueryableShim.js +8 -0
- package/dist/v3/IERC721AQueryableShim.js.map +1 -0
- package/dist/v3/IERC721AShim.d.ts +7 -0
- package/dist/v3/IERC721AShim.d.ts.map +1 -0
- package/dist/v3/IERC721AShim.js +8 -0
- package/dist/v3/IERC721AShim.js.map +1 -0
- package/dist/v3/IEntitlementCheckerShim.d.ts +7 -0
- package/dist/v3/IEntitlementCheckerShim.d.ts.map +1 -0
- package/dist/v3/IEntitlementCheckerShim.js +8 -0
- package/dist/v3/IEntitlementCheckerShim.js.map +1 -0
- package/dist/v3/IEntitlementDataQueryableShim.d.ts +8 -0
- package/dist/v3/IEntitlementDataQueryableShim.d.ts.map +1 -0
- package/dist/v3/IEntitlementDataQueryableShim.js +8 -0
- package/dist/v3/IEntitlementDataQueryableShim.js.map +1 -0
- package/dist/v3/IEntitlementsShim.d.ts +8 -0
- package/dist/v3/IEntitlementsShim.d.ts.map +1 -0
- package/dist/v3/IEntitlementsShim.js +8 -0
- package/dist/v3/IEntitlementsShim.js.map +1 -0
- package/dist/v3/ILegacySpaceArchitectShim.d.ts +8 -0
- package/dist/v3/ILegacySpaceArchitectShim.d.ts.map +1 -0
- package/dist/v3/ILegacySpaceArchitectShim.js +8 -0
- package/dist/v3/ILegacySpaceArchitectShim.js.map +1 -0
- package/dist/v3/IMembershipMetadataShim.d.ts +7 -0
- package/dist/v3/IMembershipMetadataShim.d.ts.map +1 -0
- package/dist/v3/IMembershipMetadataShim.js +8 -0
- package/dist/v3/IMembershipMetadataShim.js.map +1 -0
- package/dist/v3/IMembershipShim.d.ts +18 -0
- package/dist/v3/IMembershipShim.d.ts.map +1 -0
- package/dist/v3/IMembershipShim.js +73 -0
- package/dist/v3/IMembershipShim.js.map +1 -0
- package/dist/v3/IMulticallShim.d.ts +7 -0
- package/dist/v3/IMulticallShim.d.ts.map +1 -0
- package/dist/v3/IMulticallShim.js +8 -0
- package/dist/v3/IMulticallShim.js.map +1 -0
- package/dist/v3/INodeOperatorShim.d.ts +7 -0
- package/dist/v3/INodeOperatorShim.d.ts.map +1 -0
- package/dist/v3/INodeOperatorShim.js +8 -0
- package/dist/v3/INodeOperatorShim.js.map +1 -0
- package/dist/v3/INodeRegistryShim.d.ts +7 -0
- package/dist/v3/INodeRegistryShim.d.ts.map +1 -0
- package/dist/v3/INodeRegistryShim.js +8 -0
- package/dist/v3/INodeRegistryShim.js.map +1 -0
- package/dist/v3/IOperatorRegistryShim.d.ts +7 -0
- package/dist/v3/IOperatorRegistryShim.d.ts.map +1 -0
- package/dist/v3/IOperatorRegistryShim.js +8 -0
- package/dist/v3/IOperatorRegistryShim.js.map +1 -0
- package/dist/v3/IPrepayShim.d.ts +7 -0
- package/dist/v3/IPrepayShim.d.ts.map +1 -0
- package/dist/v3/IPrepayShim.js +8 -0
- package/dist/v3/IPrepayShim.js.map +1 -0
- package/dist/v3/IPricingShim.d.ts +8 -0
- package/dist/v3/IPricingShim.d.ts.map +1 -0
- package/dist/v3/IPricingShim.js +8 -0
- package/dist/v3/IPricingShim.js.map +1 -0
- package/dist/v3/IReviewShim.d.ts +61 -0
- package/dist/v3/IReviewShim.d.ts.map +1 -0
- package/dist/v3/IReviewShim.js +101 -0
- package/dist/v3/IReviewShim.js.map +1 -0
- package/dist/v3/IRiverPointsShim.d.ts +7 -0
- package/dist/v3/IRiverPointsShim.d.ts.map +1 -0
- package/dist/v3/IRiverPointsShim.js +8 -0
- package/dist/v3/IRiverPointsShim.js.map +1 -0
- package/dist/v3/IRolesShim.d.ts +8 -0
- package/dist/v3/IRolesShim.d.ts.map +1 -0
- package/dist/v3/IRolesShim.js +8 -0
- package/dist/v3/IRolesShim.js.map +1 -0
- package/dist/v3/IRuleEntitlementShim.d.ts +6 -0
- package/dist/v3/IRuleEntitlementShim.d.ts.map +1 -0
- package/dist/v3/IRuleEntitlementShim.js +3 -0
- package/dist/v3/IRuleEntitlementShim.js.map +1 -0
- package/dist/v3/IRuleEntitlementV2Shim.d.ts +6 -0
- package/dist/v3/IRuleEntitlementV2Shim.d.ts.map +1 -0
- package/dist/v3/IRuleEntitlementV2Shim.js +3 -0
- package/dist/v3/IRuleEntitlementV2Shim.js.map +1 -0
- package/dist/v3/ISpaceArchitectShim.d.ts +8 -0
- package/dist/v3/ISpaceArchitectShim.d.ts.map +1 -0
- package/dist/v3/ISpaceArchitectShim.js +38 -0
- package/dist/v3/ISpaceArchitectShim.js.map +1 -0
- package/dist/v3/ISpaceDelegationShim.d.ts +7 -0
- package/dist/v3/ISpaceDelegationShim.d.ts.map +1 -0
- package/dist/v3/ISpaceDelegationShim.js +8 -0
- package/dist/v3/ISpaceDelegationShim.js.map +1 -0
- package/dist/v3/ISpaceOwnerShim.d.ts +8 -0
- package/dist/v3/ISpaceOwnerShim.d.ts.map +1 -0
- package/dist/v3/ISpaceOwnerShim.js +8 -0
- package/dist/v3/ISpaceOwnerShim.js.map +1 -0
- package/dist/v3/IStreamRegistryShim.d.ts +7 -0
- package/dist/v3/IStreamRegistryShim.d.ts.map +1 -0
- package/dist/v3/IStreamRegistryShim.js +8 -0
- package/dist/v3/IStreamRegistryShim.js.map +1 -0
- package/dist/v3/ITippingShim.d.ts +20 -0
- package/dist/v3/ITippingShim.d.ts.map +1 -0
- package/dist/v3/ITippingShim.js +46 -0
- package/dist/v3/ITippingShim.js.map +1 -0
- package/dist/v3/ITreasuryShim.d.ts +7 -0
- package/dist/v3/ITreasuryShim.d.ts.map +1 -0
- package/dist/v3/ITreasuryShim.js +8 -0
- package/dist/v3/ITreasuryShim.js.map +1 -0
- package/dist/v3/MockERC721AShim.d.ts +7 -0
- package/dist/v3/MockERC721AShim.d.ts.map +1 -0
- package/dist/v3/MockERC721AShim.js +8 -0
- package/dist/v3/MockERC721AShim.js.map +1 -0
- package/dist/v3/OwnableFacetShim.d.ts +7 -0
- package/dist/v3/OwnableFacetShim.d.ts.map +1 -0
- package/dist/v3/OwnableFacetShim.js +8 -0
- package/dist/v3/OwnableFacetShim.js.map +1 -0
- package/dist/v3/PlatformRequirements.d.ts +10 -0
- package/dist/v3/PlatformRequirements.d.ts.map +1 -0
- package/dist/v3/PlatformRequirements.js +17 -0
- package/dist/v3/PlatformRequirements.js.map +1 -0
- package/dist/v3/PricingModules.d.ts +13 -0
- package/dist/v3/PricingModules.d.ts.map +1 -0
- package/dist/v3/PricingModules.js +23 -0
- package/dist/v3/PricingModules.js.map +1 -0
- package/dist/v3/RiverAirdropDapp.d.ts +16 -0
- package/dist/v3/RiverAirdropDapp.d.ts.map +1 -0
- package/dist/v3/RiverAirdropDapp.js +30 -0
- package/dist/v3/RiverAirdropDapp.js.map +1 -0
- package/dist/v3/RiverRegistry.d.ts +32 -0
- package/dist/v3/RiverRegistry.d.ts.map +1 -0
- package/dist/v3/RiverRegistry.js +96 -0
- package/dist/v3/RiverRegistry.js.map +1 -0
- package/dist/v3/RuleEntitlementShim.d.ts +11 -0
- package/dist/v3/RuleEntitlementShim.d.ts.map +1 -0
- package/dist/v3/RuleEntitlementShim.js +38 -0
- package/dist/v3/RuleEntitlementShim.js.map +1 -0
- package/dist/v3/RuleEntitlementV2Shim.d.ts +11 -0
- package/dist/v3/RuleEntitlementV2Shim.d.ts.map +1 -0
- package/dist/v3/RuleEntitlementV2Shim.js +38 -0
- package/dist/v3/RuleEntitlementV2Shim.js.map +1 -0
- package/dist/v3/Space.d.ts +97 -0
- package/dist/v3/Space.d.ts.map +1 -0
- package/dist/v3/Space.js +440 -0
- package/dist/v3/Space.js.map +1 -0
- package/dist/v3/SpaceDapp.d.ts +212 -0
- package/dist/v3/SpaceDapp.d.ts.map +1 -0
- package/dist/v3/SpaceDapp.js +1164 -0
- package/dist/v3/SpaceDapp.js.map +1 -0
- package/dist/v3/SpaceOwner.d.ts +13 -0
- package/dist/v3/SpaceOwner.d.ts.map +1 -0
- package/dist/v3/SpaceOwner.js +18 -0
- package/dist/v3/SpaceOwner.js.map +1 -0
- package/dist/v3/SpaceRegistrar.d.ts +25 -0
- package/dist/v3/SpaceRegistrar.d.ts.map +1 -0
- package/dist/v3/SpaceRegistrar.js +56 -0
- package/dist/v3/SpaceRegistrar.js.map +1 -0
- package/dist/v3/TokenPausableFacetShim.d.ts +7 -0
- package/dist/v3/TokenPausableFacetShim.d.ts.map +1 -0
- package/dist/v3/TokenPausableFacetShim.js +8 -0
- package/dist/v3/TokenPausableFacetShim.js.map +1 -0
- package/dist/v3/UserEntitlementShim.d.ts +11 -0
- package/dist/v3/UserEntitlementShim.d.ts.map +1 -0
- package/dist/v3/UserEntitlementShim.js +44 -0
- package/dist/v3/UserEntitlementShim.js.map +1 -0
- package/dist/v3/WalletLink.d.ts +50 -0
- package/dist/v3/WalletLink.d.ts.map +1 -0
- package/dist/v3/WalletLink.js +215 -0
- package/dist/v3/WalletLink.js.map +1 -0
- package/dist/v3/WalletLinkShim.d.ts +7 -0
- package/dist/v3/WalletLinkShim.d.ts.map +1 -0
- package/dist/v3/WalletLinkShim.js +8 -0
- package/dist/v3/WalletLinkShim.js.map +1 -0
- package/dist/v3/index.d.ts +24 -0
- package/dist/v3/index.d.ts.map +1 -0
- package/dist/v3/index.js +24 -0
- package/dist/v3/index.js.map +1 -0
- package/package.json +54 -0
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { ethers, utils } from 'ethers';
|
|
2
|
+
const v1RegistryContractAddress = '0x00000000000076a84fef008cdabe6409d2fe638b';
|
|
3
|
+
const delegationTypeAll = 1;
|
|
4
|
+
const delegateRegistryJsonAbi = `
|
|
5
|
+
[
|
|
6
|
+
{
|
|
7
|
+
"type": "function",
|
|
8
|
+
"name": "getDelegationsByDelegate",
|
|
9
|
+
"inputs": [
|
|
10
|
+
{
|
|
11
|
+
"name": "delegate",
|
|
12
|
+
"type": "address",
|
|
13
|
+
"internalType": "address"
|
|
14
|
+
}
|
|
15
|
+
],
|
|
16
|
+
"outputs": [
|
|
17
|
+
{
|
|
18
|
+
"name": "",
|
|
19
|
+
"type": "tuple[]",
|
|
20
|
+
"internalType": "struct IDelegateRegistryV1.DelegationInfo[]",
|
|
21
|
+
"components": [
|
|
22
|
+
{
|
|
23
|
+
"name": "type_",
|
|
24
|
+
"type": "uint8",
|
|
25
|
+
"internalType": "enum IDelegateRegistryV1.DelegationType"
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
"name": "vault",
|
|
29
|
+
"type": "address",
|
|
30
|
+
"internalType": "address"
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
"name": "delegate",
|
|
34
|
+
"type": "address",
|
|
35
|
+
"internalType": "address"
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
"name": "contract_",
|
|
39
|
+
"type": "address",
|
|
40
|
+
"internalType": "address"
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
"name": "tokenId",
|
|
44
|
+
"type": "uint256",
|
|
45
|
+
"internalType": "uint256"
|
|
46
|
+
}
|
|
47
|
+
]
|
|
48
|
+
}
|
|
49
|
+
],
|
|
50
|
+
"stateMutability": "view"
|
|
51
|
+
}
|
|
52
|
+
]`;
|
|
53
|
+
function newDelegateContract(provider) {
|
|
54
|
+
const iface = new utils.Interface(delegateRegistryJsonAbi);
|
|
55
|
+
const humanReadableAbi = iface.format(utils.FormatTypes.full);
|
|
56
|
+
return new ethers.Contract(v1RegistryContractAddress, humanReadableAbi, provider);
|
|
57
|
+
}
|
|
58
|
+
export async function computeDelegatorsForProvider(provider, wallets) {
|
|
59
|
+
const contract = newDelegateContract(provider);
|
|
60
|
+
const delegatorWallets = (await Promise.all(wallets.map(async (wallet) => {
|
|
61
|
+
return ((await contract.callStatic.getDelegationsByDelegate(wallet))
|
|
62
|
+
// Keep only delegations that cede the entire wallet
|
|
63
|
+
.filter((info) => info.type_ == delegationTypeAll)
|
|
64
|
+
// The 'vault' is the delegator wallet that cedes to one of wallets
|
|
65
|
+
// passed in via the parameters
|
|
66
|
+
.map((info) => info.vault));
|
|
67
|
+
}))).reduce((left, right) => [...left, ...right]);
|
|
68
|
+
// Return de-duped list of wallets, in case delegate wallets occur >1x across
|
|
69
|
+
// ethereum mainnet and testnets.
|
|
70
|
+
return [...new Set(delegatorWallets)];
|
|
71
|
+
}
|
|
72
|
+
//# sourceMappingURL=DelegateRegistry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DelegateRegistry.js","sourceRoot":"","sources":["../src/DelegateRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAA;AAEtC,MAAM,yBAAyB,GAAG,4CAA4C,CAAA;AAC9E,MAAM,iBAAiB,GAAG,CAAC,CAAA;AAE3B,MAAM,uBAAuB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgD9B,CAAA;AAEF,SAAS,mBAAmB,CAAC,QAAuC;IAChE,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAA;IAC1D,MAAM,gBAAgB,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;IAC7D,OAAO,IAAI,MAAM,CAAC,QAAQ,CAAC,yBAAyB,EAAE,gBAAgB,EAAE,QAAQ,CAAC,CAAA;AACrF,CAAC;AAUD,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAC9C,QAAuC,EACvC,OAAiB;IAEjB,MAAM,QAAQ,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAA;IAC9C,MAAM,gBAAgB,GAAG,CACrB,MAAM,OAAO,CAAC,GAAG,CACb,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QACzB,OAAO,CAEC,CAAC,MAAM,QAAQ,CAAC,UAAU,CAAC,wBAAwB,CAC/C,MAAM,CACT,CACJ;YACG,oDAAoD;aACnD,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,IAAI,iBAAiB,CAAC;YAClD,mEAAmE;YACnE,+BAA+B;aAC9B,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CACjC,CAAA;IACL,CAAC,CAAC,CACL,CACJ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC,CAAC,CAAA;IAE9C,6EAA6E;IAC7E,iCAAiC;IACjC,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAA;AACzC,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export interface Keyable {
|
|
2
|
+
toKey(): string;
|
|
3
|
+
}
|
|
4
|
+
export interface CacheResult<V> {
|
|
5
|
+
value: V;
|
|
6
|
+
cacheHit: boolean;
|
|
7
|
+
isPositive: boolean;
|
|
8
|
+
}
|
|
9
|
+
export declare class EntitlementCache<K extends Keyable, V> {
|
|
10
|
+
private readonly negativeCache;
|
|
11
|
+
private readonly positiveCache;
|
|
12
|
+
constructor(options?: {
|
|
13
|
+
positiveCacheTTLSeconds: number;
|
|
14
|
+
negativeCacheTTLSeconds: number;
|
|
15
|
+
positiveCacheSize?: number;
|
|
16
|
+
negativeCacheSize?: number;
|
|
17
|
+
});
|
|
18
|
+
executeUsingCache(keyable: K, onCacheMiss: (k: K) => Promise<CacheResult<V>>): Promise<CacheResult<V>>;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=EntitlementCache.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EntitlementCache.d.ts","sourceRoot":"","sources":["../src/EntitlementCache.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,OAAO;IACpB,KAAK,IAAI,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,WAAW,CAAC,CAAC;IAC1B,KAAK,EAAE,CAAC,CAAA;IACR,QAAQ,EAAE,OAAO,CAAA;IACjB,UAAU,EAAE,OAAO,CAAA;CACtB;AAED,qBAAa,gBAAgB,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC;IAC9C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAkC;IAChE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAkC;gBAEpD,OAAO,CAAC,EAAE;QAClB,uBAAuB,EAAE,MAAM,CAAA;QAC/B,uBAAuB,EAAE,MAAM,CAAA;QAC/B,iBAAiB,CAAC,EAAE,MAAM,CAAA;QAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAA;KAC7B;IAgBK,iBAAiB,CACnB,OAAO,EAAE,CAAC,EACV,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAC/C,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;CAuB7B"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import TTLCache from '@isaacs/ttlcache';
|
|
2
|
+
export class EntitlementCache {
|
|
3
|
+
negativeCache;
|
|
4
|
+
positiveCache;
|
|
5
|
+
constructor(options) {
|
|
6
|
+
const positiveCacheTTLSeconds = options?.positiveCacheTTLSeconds ?? 15 * 60;
|
|
7
|
+
const negativeCacheTTLSeconds = options?.negativeCacheTTLSeconds ?? 2;
|
|
8
|
+
const positiveCacheSize = options?.positiveCacheSize ?? 10000;
|
|
9
|
+
const negativeCacheSize = options?.negativeCacheSize ?? 10000;
|
|
10
|
+
this.negativeCache = new TTLCache({
|
|
11
|
+
ttl: negativeCacheTTLSeconds * 1000,
|
|
12
|
+
max: negativeCacheSize,
|
|
13
|
+
});
|
|
14
|
+
this.positiveCache = new TTLCache({
|
|
15
|
+
ttl: positiveCacheTTLSeconds * 1000,
|
|
16
|
+
max: positiveCacheSize,
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
async executeUsingCache(keyable, onCacheMiss) {
|
|
20
|
+
const key = keyable.toKey();
|
|
21
|
+
const negativeCacheResult = this.negativeCache.get(key);
|
|
22
|
+
if (negativeCacheResult !== undefined) {
|
|
23
|
+
negativeCacheResult.cacheHit = true;
|
|
24
|
+
return negativeCacheResult;
|
|
25
|
+
}
|
|
26
|
+
const positiveCacheResult = this.positiveCache.get(key);
|
|
27
|
+
if (positiveCacheResult !== undefined) {
|
|
28
|
+
positiveCacheResult.cacheHit = true;
|
|
29
|
+
return positiveCacheResult;
|
|
30
|
+
}
|
|
31
|
+
const result = await onCacheMiss(keyable);
|
|
32
|
+
if (result.isPositive) {
|
|
33
|
+
this.positiveCache.set(key, result);
|
|
34
|
+
}
|
|
35
|
+
else {
|
|
36
|
+
this.negativeCache.set(key, result);
|
|
37
|
+
}
|
|
38
|
+
return result;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=EntitlementCache.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EntitlementCache.js","sourceRoot":"","sources":["../src/EntitlementCache.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,kBAAkB,CAAA;AAYvC,MAAM,OAAO,gBAAgB;IACR,aAAa,CAAkC;IAC/C,aAAa,CAAkC;IAEhE,YAAY,OAKX;QACG,MAAM,uBAAuB,GAAG,OAAO,EAAE,uBAAuB,IAAI,EAAE,GAAG,EAAE,CAAA;QAC3E,MAAM,uBAAuB,GAAG,OAAO,EAAE,uBAAuB,IAAI,CAAC,CAAA;QACrE,MAAM,iBAAiB,GAAG,OAAO,EAAE,iBAAiB,IAAI,KAAK,CAAA;QAC7D,MAAM,iBAAiB,GAAG,OAAO,EAAE,iBAAiB,IAAI,KAAK,CAAA;QAE7D,IAAI,CAAC,aAAa,GAAG,IAAI,QAAQ,CAAC;YAC9B,GAAG,EAAE,uBAAuB,GAAG,IAAI;YACnC,GAAG,EAAE,iBAAiB;SACzB,CAAC,CAAA;QACF,IAAI,CAAC,aAAa,GAAG,IAAI,QAAQ,CAAC;YAC9B,GAAG,EAAE,uBAAuB,GAAG,IAAI;YACnC,GAAG,EAAE,iBAAiB;SACzB,CAAC,CAAA;IACN,CAAC;IAED,KAAK,CAAC,iBAAiB,CACnB,OAAU,EACV,WAA8C;QAE9C,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,EAAE,CAAA;QAC3B,MAAM,mBAAmB,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QACvD,IAAI,mBAAmB,KAAK,SAAS,EAAE,CAAC;YACpC,mBAAmB,CAAC,QAAQ,GAAG,IAAI,CAAA;YACnC,OAAO,mBAAmB,CAAA;QAC9B,CAAC;QAED,MAAM,mBAAmB,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QACvD,IAAI,mBAAmB,KAAK,SAAS,EAAE,CAAC;YACpC,mBAAmB,CAAC,QAAQ,GAAG,IAAI,CAAA;YACnC,OAAO,mBAAmB,CAAA;QAC9B,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,OAAO,CAAC,CAAA;QACzC,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;YACpB,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;QACvC,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;QACvC,CAAC;QAED,OAAO,MAAM,CAAA;IACjB,CAAC;CACJ"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EntitlementCache.test.d.ts","sourceRoot":"","sources":["../src/EntitlementCache.test.ts"],"names":[],"mappings":"AAAA;;GAEG"}
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @group main
|
|
3
|
+
*/
|
|
4
|
+
import { EntitlementCache } from './EntitlementCache';
|
|
5
|
+
class Key {
|
|
6
|
+
key;
|
|
7
|
+
toKey() {
|
|
8
|
+
return this.key;
|
|
9
|
+
}
|
|
10
|
+
constructor(key) {
|
|
11
|
+
this.key = key;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
class BooleanCacheResult {
|
|
15
|
+
value;
|
|
16
|
+
cacheHit;
|
|
17
|
+
isPositive;
|
|
18
|
+
constructor(value) {
|
|
19
|
+
this.value = value;
|
|
20
|
+
this.cacheHit = false;
|
|
21
|
+
this.isPositive = value;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
class StringCacheResult {
|
|
25
|
+
value;
|
|
26
|
+
cacheHit;
|
|
27
|
+
isPositive;
|
|
28
|
+
constructor(value) {
|
|
29
|
+
this.value = value;
|
|
30
|
+
this.cacheHit = false;
|
|
31
|
+
this.isPositive = value !== '';
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
describe('EntitlementsCacheTests', () => {
|
|
35
|
+
it('caches repeat positive values', async () => {
|
|
36
|
+
const cache = new EntitlementCache({
|
|
37
|
+
positiveCacheTTLSeconds: 10,
|
|
38
|
+
negativeCacheTTLSeconds: 10,
|
|
39
|
+
});
|
|
40
|
+
const onMiss = (_) => {
|
|
41
|
+
return Promise.resolve(new BooleanCacheResult(true));
|
|
42
|
+
};
|
|
43
|
+
const { value, cacheHit } = await cache.executeUsingCache(new Key('key'), onMiss);
|
|
44
|
+
expect(value).toBe(true);
|
|
45
|
+
expect(cacheHit).toBe(false);
|
|
46
|
+
const { value: value2, cacheHit: cacheHit2 } = await cache.executeUsingCache(new Key('key'), onMiss);
|
|
47
|
+
expect(value2).toBe(true);
|
|
48
|
+
expect(cacheHit2).toBe(true);
|
|
49
|
+
});
|
|
50
|
+
it('caches repeat negative values', async () => {
|
|
51
|
+
const cache = new EntitlementCache({
|
|
52
|
+
positiveCacheTTLSeconds: 10,
|
|
53
|
+
negativeCacheTTLSeconds: 10,
|
|
54
|
+
});
|
|
55
|
+
const onMiss = (_) => {
|
|
56
|
+
return Promise.resolve(new BooleanCacheResult(false));
|
|
57
|
+
};
|
|
58
|
+
const { value, cacheHit } = await cache.executeUsingCache(new Key('key'), onMiss);
|
|
59
|
+
expect(value).toBe(false);
|
|
60
|
+
expect(cacheHit).toBe(false);
|
|
61
|
+
const { value: value2, cacheHit: cacheHit2 } = await cache.executeUsingCache(new Key('key'), onMiss);
|
|
62
|
+
expect(value2).toBe(false);
|
|
63
|
+
expect(cacheHit2).toBe(true);
|
|
64
|
+
});
|
|
65
|
+
it('caches non-boolean positive values', async () => {
|
|
66
|
+
const cache = new EntitlementCache({
|
|
67
|
+
positiveCacheTTLSeconds: 10,
|
|
68
|
+
negativeCacheTTLSeconds: 10,
|
|
69
|
+
});
|
|
70
|
+
const onMiss = (_) => {
|
|
71
|
+
return Promise.resolve(new StringCacheResult('value'));
|
|
72
|
+
};
|
|
73
|
+
const { value, cacheHit } = await cache.executeUsingCache(new Key('key'), onMiss);
|
|
74
|
+
expect(value).toBe('value');
|
|
75
|
+
expect(cacheHit).toBe(false);
|
|
76
|
+
const { value: value2, cacheHit: cacheHit2 } = await cache.executeUsingCache(new Key('key'), onMiss);
|
|
77
|
+
expect(value2).toBe('value');
|
|
78
|
+
expect(cacheHit2).toBe(true);
|
|
79
|
+
});
|
|
80
|
+
it('caches non-boolean falsy keys', async () => {
|
|
81
|
+
const cache = new EntitlementCache({
|
|
82
|
+
positiveCacheTTLSeconds: 10,
|
|
83
|
+
negativeCacheTTLSeconds: 10,
|
|
84
|
+
});
|
|
85
|
+
const onMiss = (_) => {
|
|
86
|
+
return Promise.resolve(new StringCacheResult(''));
|
|
87
|
+
};
|
|
88
|
+
const { value, cacheHit } = await cache.executeUsingCache(new Key('key'), onMiss);
|
|
89
|
+
expect(value).toBe('');
|
|
90
|
+
expect(cacheHit).toBe(false);
|
|
91
|
+
const { value: value2, cacheHit: cacheHit2 } = await cache.executeUsingCache(new Key('key'), onMiss);
|
|
92
|
+
expect(value2).toBe('');
|
|
93
|
+
expect(cacheHit2).toBe(true);
|
|
94
|
+
});
|
|
95
|
+
it('positive cache values expire after ttl', async () => {
|
|
96
|
+
const cache = new EntitlementCache({
|
|
97
|
+
positiveCacheTTLSeconds: 1,
|
|
98
|
+
negativeCacheTTLSeconds: 10,
|
|
99
|
+
});
|
|
100
|
+
const onMiss = (_) => {
|
|
101
|
+
return Promise.resolve(new BooleanCacheResult(true));
|
|
102
|
+
};
|
|
103
|
+
const { value, cacheHit } = await cache.executeUsingCache(new Key('key'), onMiss);
|
|
104
|
+
expect(value).toBe(true);
|
|
105
|
+
expect(cacheHit).toBe(false);
|
|
106
|
+
// Wait 5 seconds for the positive auth cache to expire
|
|
107
|
+
await new Promise((f) => setTimeout(f, 5000));
|
|
108
|
+
const { value: value2, cacheHit: cacheHit2 } = await cache.executeUsingCache(new Key('key'), onMiss);
|
|
109
|
+
expect(value2).toBe(true);
|
|
110
|
+
expect(cacheHit2).toBe(false);
|
|
111
|
+
});
|
|
112
|
+
it('negative cache values expire after ttl', async () => {
|
|
113
|
+
const cache = new EntitlementCache({
|
|
114
|
+
positiveCacheTTLSeconds: 10,
|
|
115
|
+
negativeCacheTTLSeconds: 1,
|
|
116
|
+
});
|
|
117
|
+
const onMiss = (_) => {
|
|
118
|
+
return Promise.resolve(new BooleanCacheResult(false));
|
|
119
|
+
};
|
|
120
|
+
const { value, cacheHit } = await cache.executeUsingCache(new Key('key'), onMiss);
|
|
121
|
+
expect(value).toBe(false);
|
|
122
|
+
expect(cacheHit).toBe(false);
|
|
123
|
+
// Wait 5 seconds for the positive auth cache to expire
|
|
124
|
+
await new Promise((f) => setTimeout(f, 1000));
|
|
125
|
+
const { value: value2, cacheHit: cacheHit2 } = await cache.executeUsingCache(new Key('key'), onMiss);
|
|
126
|
+
expect(value2).toBe(false);
|
|
127
|
+
expect(cacheHit2).toBe(false);
|
|
128
|
+
});
|
|
129
|
+
});
|
|
130
|
+
//# sourceMappingURL=EntitlementCache.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EntitlementCache.test.js","sourceRoot":"","sources":["../src/EntitlementCache.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,193 @@
|
|
|
1
|
+
import { BasicRoleInfo, ChannelDetails, ChannelMetadata, MembershipInfo, LegacyMembershipStruct, MembershipStruct, Permission, PricingModuleStruct, RoleDetails, TotalSupplyInfo } from './ContractTypes';
|
|
2
|
+
import { XchainConfig } from './entitlement';
|
|
3
|
+
import { WalletLink as WalletLinkV3 } from './v3/WalletLink';
|
|
4
|
+
import { BigNumber, BytesLike, ContractReceipt, ContractTransaction, ethers } from 'ethers';
|
|
5
|
+
import { SpaceInfo } from './types';
|
|
6
|
+
import { IRolesBase, Space, SpaceRegistrar, IRuleEntitlementBase, IRuleEntitlementV2Base, RiverAirdropDapp } from './v3';
|
|
7
|
+
import { PricingModules } from './v3/PricingModules';
|
|
8
|
+
import { BaseChainConfig } from './IStaticContractsInfo';
|
|
9
|
+
import { PlatformRequirements } from './v3/PlatformRequirements';
|
|
10
|
+
import { TipEventObject } from '@towns-protocol/generated/dev/typings/ITipping';
|
|
11
|
+
export type SignerType = ethers.Signer;
|
|
12
|
+
export interface CreateLegacySpaceParams {
|
|
13
|
+
spaceName: string;
|
|
14
|
+
uri: string;
|
|
15
|
+
channelName: string;
|
|
16
|
+
membership: LegacyMembershipStruct;
|
|
17
|
+
shortDescription?: string;
|
|
18
|
+
longDescription?: string;
|
|
19
|
+
}
|
|
20
|
+
export interface CreateSpaceParams {
|
|
21
|
+
spaceName: string;
|
|
22
|
+
uri: string;
|
|
23
|
+
channelName: string;
|
|
24
|
+
membership: MembershipStruct;
|
|
25
|
+
shortDescription?: string;
|
|
26
|
+
longDescription?: string;
|
|
27
|
+
prepaySupply?: number;
|
|
28
|
+
}
|
|
29
|
+
export interface UpdateChannelMetadataParams {
|
|
30
|
+
spaceId: string;
|
|
31
|
+
channelId: string;
|
|
32
|
+
channelName: string;
|
|
33
|
+
channelDescription: string;
|
|
34
|
+
roleIds: number[];
|
|
35
|
+
disabled?: boolean;
|
|
36
|
+
}
|
|
37
|
+
export interface UpdateChannelAccessParams {
|
|
38
|
+
spaceId: string;
|
|
39
|
+
channelId: string;
|
|
40
|
+
disabled: boolean;
|
|
41
|
+
}
|
|
42
|
+
export type UpdateChannelParams = UpdateChannelMetadataParams | UpdateChannelAccessParams;
|
|
43
|
+
export interface RemoveChannelParams {
|
|
44
|
+
spaceId: string;
|
|
45
|
+
channelId: string;
|
|
46
|
+
}
|
|
47
|
+
export interface LegacyUpdateRoleParams {
|
|
48
|
+
spaceNetworkId: string;
|
|
49
|
+
roleId: number;
|
|
50
|
+
roleName: string;
|
|
51
|
+
permissions: Permission[];
|
|
52
|
+
users: string[];
|
|
53
|
+
ruleData: IRuleEntitlementBase.RuleDataStruct;
|
|
54
|
+
}
|
|
55
|
+
export interface UpdateRoleParams {
|
|
56
|
+
spaceNetworkId: string;
|
|
57
|
+
roleId: number;
|
|
58
|
+
roleName: string;
|
|
59
|
+
permissions: Permission[];
|
|
60
|
+
users: string[];
|
|
61
|
+
ruleData: IRuleEntitlementV2Base.RuleDataV2Struct;
|
|
62
|
+
}
|
|
63
|
+
export interface SetChannelPermissionOverridesParams {
|
|
64
|
+
spaceNetworkId: string;
|
|
65
|
+
channelId: string;
|
|
66
|
+
roleId: number;
|
|
67
|
+
permissions: Permission[];
|
|
68
|
+
}
|
|
69
|
+
export interface ClearChannelPermissionOverridesParams {
|
|
70
|
+
spaceNetworkId: string;
|
|
71
|
+
channelId: string;
|
|
72
|
+
roleId: number;
|
|
73
|
+
}
|
|
74
|
+
export interface TransactionOpts {
|
|
75
|
+
retryCount?: number;
|
|
76
|
+
}
|
|
77
|
+
type TransactionType = ContractTransaction;
|
|
78
|
+
export type ContractEventListener = {
|
|
79
|
+
wait: () => Promise<{
|
|
80
|
+
success: boolean;
|
|
81
|
+
error?: Error | undefined;
|
|
82
|
+
[x: string]: unknown;
|
|
83
|
+
}>;
|
|
84
|
+
};
|
|
85
|
+
export interface ISpaceDapp {
|
|
86
|
+
readonly provider: ethers.providers.Provider;
|
|
87
|
+
readonly config: BaseChainConfig;
|
|
88
|
+
readonly spaceRegistrar: SpaceRegistrar;
|
|
89
|
+
readonly walletLink: WalletLinkV3;
|
|
90
|
+
readonly pricingModules: PricingModules;
|
|
91
|
+
readonly platformRequirements: PlatformRequirements;
|
|
92
|
+
readonly airdrop: RiverAirdropDapp | undefined;
|
|
93
|
+
isLegacySpace: (spaceId: string) => Promise<boolean>;
|
|
94
|
+
addRoleToChannel: (spaceId: string, channelNetworkId: string, roleId: number, signer: SignerType) => Promise<TransactionType>;
|
|
95
|
+
banWalletAddress: (spaceId: string, walletAddress: string, signer: SignerType) => Promise<TransactionType>;
|
|
96
|
+
unbanWalletAddress: (spaceId: string, walletAddress: string, signer: SignerType) => Promise<TransactionType>;
|
|
97
|
+
walletAddressIsBanned: (spaceId: string, walletAddress: string) => Promise<boolean>;
|
|
98
|
+
bannedWalletAddresses: (spaceId: string) => Promise<string[]>;
|
|
99
|
+
createLegacySpace: (params: CreateLegacySpaceParams, signer: SignerType, txnOpts?: TransactionOpts) => Promise<TransactionType>;
|
|
100
|
+
createSpace: (params: CreateSpaceParams, signer: SignerType, txnOpts?: TransactionOpts) => Promise<TransactionType>;
|
|
101
|
+
createChannel: (spaceId: string, channelName: string, channelDescription: string, channelNetworkId: string, roleIds: number[], signer: SignerType, txnOpts?: TransactionOpts) => Promise<TransactionType>;
|
|
102
|
+
createChannelWithPermissionOverrides: (spaceId: string, channelName: string, channelDescription: string, channelNetworkId: string, roles: {
|
|
103
|
+
roleId: number;
|
|
104
|
+
permissions: Permission[];
|
|
105
|
+
}[], signer: SignerType, txnOpts?: TransactionOpts) => Promise<TransactionType>;
|
|
106
|
+
legacyCreateRole(spaceId: string, roleName: string, permissions: Permission[], users: string[], ruleData: IRuleEntitlementBase.RuleDataStruct, signer: SignerType, txnOpts?: TransactionOpts): Promise<TransactionType>;
|
|
107
|
+
createRole(spaceId: string, roleName: string, permissions: Permission[], users: string[], ruleData: IRuleEntitlementV2Base.RuleDataV2Struct, signer: SignerType, txnOpts?: TransactionOpts): Promise<TransactionType>;
|
|
108
|
+
waitForRoleCreated(spaceId: string, txn: ContractTransaction): Promise<{
|
|
109
|
+
roleId: number | undefined;
|
|
110
|
+
error: Error | undefined;
|
|
111
|
+
}>;
|
|
112
|
+
createLegacyUpdatedEntitlements(space: Space, params: LegacyUpdateRoleParams): Promise<IRolesBase.CreateEntitlementStruct[]>;
|
|
113
|
+
createUpdatedEntitlements(space: Space, params: UpdateRoleParams): Promise<IRolesBase.CreateEntitlementStruct[]>;
|
|
114
|
+
deleteRole(spaceId: string, roleId: number, signer: SignerType, txnOpts?: TransactionOpts): Promise<TransactionType>;
|
|
115
|
+
refreshMetadata(spaceId: string, signer: ethers.Signer, txnOpts?: TransactionOpts): Promise<ContractTransaction>;
|
|
116
|
+
encodedUpdateChannelData(space: Space, params: UpdateChannelParams): Promise<BytesLike[]>;
|
|
117
|
+
getChannels: (spaceId: string) => Promise<ChannelMetadata[]>;
|
|
118
|
+
getChannelDetails: (spaceId: string, channelId: string) => Promise<ChannelDetails | null>;
|
|
119
|
+
getPermissionsByRoleId: (spaceId: string, roleId: number) => Promise<Permission[]>;
|
|
120
|
+
getChannelPermissionOverrides(spaceId: string, roleId: number, channelId: string): Promise<Permission[]>;
|
|
121
|
+
getRole: (spaceId: string, roleId: number) => Promise<RoleDetails | null>;
|
|
122
|
+
getRoles: (spaceId: string) => Promise<BasicRoleInfo[]>;
|
|
123
|
+
getSpaceInfo: (spaceId: string) => Promise<SpaceInfo | undefined>;
|
|
124
|
+
isEntitledToSpace: (spaceId: string, user: string, permission: Permission) => Promise<boolean>;
|
|
125
|
+
isEntitledToChannel: (spaceId: string, channelId: string, user: string, permission: Permission, xchainConfig: XchainConfig) => Promise<boolean>;
|
|
126
|
+
getEntitledWalletForJoiningSpace: (spaceId: string, wallet: string, xchainConfig: XchainConfig) => Promise<string | undefined>;
|
|
127
|
+
parseAllContractErrors: (args: {
|
|
128
|
+
spaceId?: string;
|
|
129
|
+
error: unknown;
|
|
130
|
+
}) => Error;
|
|
131
|
+
parseSpaceFactoryError: (error: unknown) => Error;
|
|
132
|
+
parseSpaceError: (spaceId: string, error: unknown) => Error;
|
|
133
|
+
parseSpaceLogs: (spaceId: string, logs: ethers.providers.Log[]) => Promise<(ethers.utils.LogDescription | undefined)[]>;
|
|
134
|
+
updateChannel: (params: UpdateChannelParams, signer: SignerType, txnOpts?: TransactionOpts) => Promise<TransactionType>;
|
|
135
|
+
removeChannel: (params: RemoveChannelParams, signer: SignerType, txnOpts?: TransactionOpts) => Promise<TransactionType>;
|
|
136
|
+
legacyUpdateRole: (params: LegacyUpdateRoleParams, signer: SignerType, txnOpts?: TransactionOpts) => Promise<TransactionType>;
|
|
137
|
+
updateRole: (params: UpdateRoleParams, signer: SignerType, txnOpts?: TransactionOpts) => Promise<TransactionType>;
|
|
138
|
+
setChannelPermissionOverrides: (params: SetChannelPermissionOverridesParams, signer: SignerType, txnOpts?: TransactionOpts) => Promise<TransactionType>;
|
|
139
|
+
clearChannelPermissionOverrides: (params: ClearChannelPermissionOverridesParams, signer: SignerType, txnOpts?: TransactionOpts) => Promise<TransactionType>;
|
|
140
|
+
updateSpaceInfo: (spaceId: string, name: string, uri: string, shortDescription: string, longDescription: string, signer: SignerType, txnOpts?: TransactionOpts) => Promise<TransactionType>;
|
|
141
|
+
setSpaceAccess: (spaceId: string, disabled: boolean, signer: SignerType) => Promise<TransactionType>;
|
|
142
|
+
setChannelAccess: (spaceId: string, channelId: string, disabled: boolean, signer: SignerType) => Promise<TransactionType>;
|
|
143
|
+
getSpace(spaceId: string): Space | undefined;
|
|
144
|
+
getSpaceMembershipTokenAddress: (spaceId: string) => Promise<string>;
|
|
145
|
+
getJoinSpacePriceDetails: (spaceId: string) => Promise<{
|
|
146
|
+
price: ethers.BigNumber;
|
|
147
|
+
prepaidSupply: ethers.BigNumber;
|
|
148
|
+
remainingFreeSupply: ethers.BigNumber;
|
|
149
|
+
}>;
|
|
150
|
+
joinSpace: (spaceId: string, recipient: string, signer: SignerType) => Promise<{
|
|
151
|
+
issued: true;
|
|
152
|
+
tokenId: string;
|
|
153
|
+
} | {
|
|
154
|
+
issued: false;
|
|
155
|
+
tokenId: undefined;
|
|
156
|
+
}>;
|
|
157
|
+
hasSpaceMembership: (spaceId: string, wallet: string) => Promise<boolean>;
|
|
158
|
+
getMembershipSupply: (spaceId: string) => Promise<TotalSupplyInfo>;
|
|
159
|
+
getMembershipInfo: (spaceId: string) => Promise<MembershipInfo>;
|
|
160
|
+
getWalletLink: () => WalletLinkV3;
|
|
161
|
+
getSpaceAddress: (receipt: ContractReceipt, senderAddress: string) => string | undefined;
|
|
162
|
+
listPricingModules: () => Promise<PricingModuleStruct[]>;
|
|
163
|
+
setMembershipPrice: (spaceId: string, price: string, signer: SignerType) => Promise<TransactionType>;
|
|
164
|
+
setMembershipPricingModule: (spaceId: string, moduleId: string, signer: SignerType) => Promise<TransactionType>;
|
|
165
|
+
setMembershipLimit: (spaceId: string, limit: number, signer: SignerType) => Promise<TransactionType>;
|
|
166
|
+
prepayMembership: (spaceId: string, supply: number, signer: SignerType) => Promise<TransactionType>;
|
|
167
|
+
getPrepaidMembershipSupply: (spaceId: string) => Promise<BigNumber>;
|
|
168
|
+
setMembershipFreeAllocation: (spaceId: string, freeAllocation: number, signer: SignerType) => Promise<TransactionType>;
|
|
169
|
+
listenForMembershipEvent: (spaceId: string, receiver: string, abortController?: AbortController) => Promise<{
|
|
170
|
+
issued: true;
|
|
171
|
+
tokenId: string;
|
|
172
|
+
} | {
|
|
173
|
+
issued: false;
|
|
174
|
+
tokenId: undefined;
|
|
175
|
+
}>;
|
|
176
|
+
getMembershipFreeAllocation: (spaceId: string) => Promise<BigNumber>;
|
|
177
|
+
withdrawSpaceFunds: (spaceId: string, recipient: string, signer: SignerType) => Promise<TransactionType>;
|
|
178
|
+
tip: (args: {
|
|
179
|
+
spaceId: string;
|
|
180
|
+
tokenId: string;
|
|
181
|
+
currency: string;
|
|
182
|
+
amount: bigint;
|
|
183
|
+
messageId: string;
|
|
184
|
+
channelId: string;
|
|
185
|
+
receiver: string;
|
|
186
|
+
}, signer: SignerType) => Promise<TransactionType>;
|
|
187
|
+
getLinkedWallets: (wallet: string) => Promise<string[]>;
|
|
188
|
+
getLinkedWalletsWithDelegations: (wallet: string, config: XchainConfig) => Promise<string[]>;
|
|
189
|
+
getTokenIdOfOwner: (spaceId: string, owner: string, config: XchainConfig) => Promise<string | undefined>;
|
|
190
|
+
getTipEvent: (spaceId: string, receipt: ContractReceipt, senderAddress: string) => TipEventObject | undefined;
|
|
191
|
+
}
|
|
192
|
+
export {};
|
|
193
|
+
//# sourceMappingURL=ISpaceDapp.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ISpaceDapp.d.ts","sourceRoot":"","sources":["../src/ISpaceDapp.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ISpaceDapp.js","sourceRoot":"","sources":["../src/ISpaceDapp.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Address } from './ContractTypes';
|
|
2
|
+
export interface BaseChainConfig {
|
|
3
|
+
chainId: number;
|
|
4
|
+
addresses: {
|
|
5
|
+
spaceFactory: Address;
|
|
6
|
+
spaceOwner: Address;
|
|
7
|
+
baseRegistry: Address;
|
|
8
|
+
riverAirdrop?: Address;
|
|
9
|
+
utils: {
|
|
10
|
+
mockNFT?: Address;
|
|
11
|
+
member?: Address;
|
|
12
|
+
};
|
|
13
|
+
};
|
|
14
|
+
executionClient?: 'geth_dev' | undefined;
|
|
15
|
+
}
|
|
16
|
+
export interface RiverChainConfig {
|
|
17
|
+
chainId: number;
|
|
18
|
+
addresses: {
|
|
19
|
+
riverRegistry: Address;
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
export interface Web3Deployment {
|
|
23
|
+
base: BaseChainConfig;
|
|
24
|
+
river: RiverChainConfig;
|
|
25
|
+
}
|
|
26
|
+
export declare function getWeb3Deployment(riverEnv: string): Web3Deployment;
|
|
27
|
+
export declare function getWeb3Deployments(): string[];
|
|
28
|
+
//# sourceMappingURL=IStaticContractsInfo.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IStaticContractsInfo.d.ts","sourceRoot":"","sources":["../src/IStaticContractsInfo.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAEzC,MAAM,WAAW,eAAe;IAC5B,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE;QACP,YAAY,EAAE,OAAO,CAAA;QACrB,UAAU,EAAE,OAAO,CAAA;QACnB,YAAY,EAAE,OAAO,CAAA;QACrB,YAAY,CAAC,EAAE,OAAO,CAAA;QACtB,KAAK,EAAE;YACH,OAAO,CAAC,EAAE,OAAO,CAAA;YACjB,MAAM,CAAC,EAAE,OAAO,CAAA;SACnB,CAAA;KACJ,CAAA;IACD,eAAe,CAAC,EAAE,UAAU,GAAG,SAAS,CAAA;CAC3C;AAED,MAAM,WAAW,gBAAgB;IAC7B,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE;QACP,aAAa,EAAE,OAAO,CAAA;KACzB,CAAA;CACJ;AAED,MAAM,WAAW,cAAc;IAC3B,IAAI,EAAE,eAAe,CAAA;IACrB,KAAK,EAAE,gBAAgB,CAAA;CAC1B;AACD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,CAWlE;AAED,wBAAgB,kBAAkB,aAEjC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import DeploymentsJson from '@towns-protocol/generated/config/deployments.json' assert { type: 'json' };
|
|
2
|
+
export function getWeb3Deployment(riverEnv) {
|
|
3
|
+
// Cast to unknown first to avoid TypeScript error about property compatibility
|
|
4
|
+
const deployments = DeploymentsJson;
|
|
5
|
+
if (!deployments[riverEnv]) {
|
|
6
|
+
throw new Error(`Deployment ${riverEnv} not found, available environments: ${Object.keys(DeploymentsJson).join(', ')}`);
|
|
7
|
+
}
|
|
8
|
+
return deployments[riverEnv];
|
|
9
|
+
}
|
|
10
|
+
export function getWeb3Deployments() {
|
|
11
|
+
return Object.keys(DeploymentsJson);
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=IStaticContractsInfo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IStaticContractsInfo.js","sourceRoot":"","sources":["../src/IStaticContractsInfo.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,MAAM,mDAAmD,CAAC,SAAS,IAAI,EAAE,MAAM,EAAE,CAAA;AA8BvG,MAAM,UAAU,iBAAiB,CAAC,QAAgB;IAC9C,+EAA+E;IAC/E,MAAM,WAAW,GAAG,eAA4D,CAAA;IAChF,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CACX,cAAc,QAAQ,uCAAuC,MAAM,CAAC,IAAI,CACpE,eAAe,CAClB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACjB,CAAA;IACL,CAAC;IACD,OAAO,WAAW,CAAC,QAAQ,CAAC,CAAA;AAChC,CAAC;AAED,MAAM,UAAU,kBAAkB;IAC9B,OAAO,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;AACvC,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { ethers } from 'ethers';
|
|
2
|
+
import { BaseChainConfig } from './IStaticContractsInfo';
|
|
3
|
+
export declare class LocalhostWeb3Provider extends ethers.providers.JsonRpcProvider {
|
|
4
|
+
wallet: ethers.Wallet;
|
|
5
|
+
get isMetaMask(): boolean;
|
|
6
|
+
get signer(): ethers.Signer;
|
|
7
|
+
constructor(rpcUrl: string, wallet?: ethers.Wallet);
|
|
8
|
+
fundWallet(walletToFund?: ethers.Wallet | string): Promise<boolean>;
|
|
9
|
+
mintMockNFT(config: BaseChainConfig): Promise<ethers.ContractTransaction>;
|
|
10
|
+
request({ method, params, }: {
|
|
11
|
+
method: string;
|
|
12
|
+
params?: unknown[];
|
|
13
|
+
}): Promise<any>;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=LocalhostWeb3Provider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LocalhostWeb3Provider.d.ts","sourceRoot":"","sources":["../src/LocalhostWeb3Provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE/B,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAMxD,qBAAa,qBAAsB,SAAQ,MAAM,CAAC,SAAS,CAAC,eAAe;IAEhE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAA;IAE5B,IAAW,UAAU,YAEpB;IAED,IAAW,MAAM,IAAI,MAAM,CAAC,MAAM,CAEjC;gBAEW,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM;IAMrC,UAAU,CAAC,YAAY,GAAE,MAAM,CAAC,MAAM,GAAG,MAAoB;IAY7D,WAAW,CAAC,MAAM,EAAE,eAAe;IAInC,OAAO,CAAC,EACjB,MAAM,EACN,MAAwB,GAC3B,EAAE;QACC,MAAM,EAAE,MAAM,CAAA;QACd,MAAM,CAAC,EAAE,OAAO,EAAE,CAAA;KACrB;CAqBJ"}
|