@bloxchain/contracts 1.0.0-alpha.6 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/README.md +8 -9
  3. package/abi/BaseStateMachine.abi.json +773 -822
  4. package/abi/EngineBlox.abi.json +562 -552
  5. package/abi/GuardController.abi.json +1597 -1609
  6. package/abi/GuardControllerDefinitions.abi.json +257 -120
  7. package/abi/IDefinition.abi.json +57 -47
  8. package/abi/RuntimeRBAC.abi.json +841 -842
  9. package/abi/RuntimeRBACDefinitions.abi.json +265 -99
  10. package/abi/SecureOwnable.abi.json +1365 -1349
  11. package/abi/SecureOwnableDefinitions.abi.json +174 -164
  12. package/components/README.md +8 -0
  13. package/core/AUDIT.md +45 -0
  14. package/core/access/RuntimeRBAC.sol +130 -61
  15. package/core/access/interface/IRuntimeRBAC.sol +3 -3
  16. package/core/access/lib/definitions/RuntimeRBACDefinitions.sol +67 -3
  17. package/core/base/BaseStateMachine.sol +971 -967
  18. package/core/base/interface/IBaseStateMachine.sol +153 -160
  19. package/core/execution/GuardController.sol +89 -75
  20. package/core/execution/interface/IGuardController.sol +146 -160
  21. package/core/execution/lib/definitions/GuardControllerDefinitions.sol +180 -24
  22. package/core/lib/EngineBlox.sol +577 -327
  23. package/core/lib/interfaces/IDefinition.sol +49 -49
  24. package/core/lib/interfaces/IEventForwarder.sol +4 -2
  25. package/core/lib/utils/SharedValidation.sol +534 -487
  26. package/core/pattern/Account.sol +84 -65
  27. package/core/security/SecureOwnable.sol +446 -390
  28. package/core/security/interface/ISecureOwnable.sol +105 -105
  29. package/core/security/lib/definitions/SecureOwnableDefinitions.sol +49 -17
  30. package/package.json +11 -7
  31. package/standards/README.md +12 -0
  32. package/{core/research → standards/behavior}/ICopyable.sol +3 -11
  33. package/standards/hooks/IOnActionHook.sol +21 -0
  34. package/abi/AccountBlox.abi.json +0 -3916
  35. package/abi/BareBlox.abi.json +0 -1378
  36. package/abi/RoleBlox.abi.json +0 -2983
  37. package/abi/SecureBlox.abi.json +0 -2753
  38. package/abi/SimpleRWA20.abi.json +0 -4032
  39. package/abi/SimpleRWA20Definitions.abi.json +0 -191
  40. package/abi/SimpleVault.abi.json +0 -3407
  41. package/abi/SimpleVaultDefinitions.abi.json +0 -269
  42. package/core/research/BloxchainWallet.sol +0 -292
  43. package/core/research/FactoryBlox/FactoryBlox.sol +0 -346
  44. package/core/research/FactoryBlox/FactoryBloxDefinitions.sol +0 -143
  45. package/core/research/erc1155-blox/ERC1155Blox.sol +0 -169
  46. package/core/research/erc1155-blox/lib/definitions/ERC1155BloxDefinitions.sol +0 -203
  47. package/core/research/erc20-blox/ERC20Blox.sol +0 -167
  48. package/core/research/erc20-blox/lib/definitions/ERC20BloxDefinitions.sol +0 -185
  49. package/core/research/erc721-blox/ERC721Blox.sol +0 -131
  50. package/core/research/erc721-blox/lib/definitions/ERC721BloxDefinitions.sol +0 -172
  51. package/core/research/lending-blox/.gitkeep +0 -1
  52. package/core/research/p2p-blox/P2PBlox.sol +0 -266
  53. package/core/research/p2p-blox/README.md +0 -85
  54. package/core/research/p2p-blox/lib/definitions/P2PBloxDefinitions.sol +0 -19
@@ -1,113 +1,123 @@
1
1
  [
2
2
  {
3
- "inputs": [],
3
+ "type": "function",
4
4
  "name": "getFunctionSchemas",
5
+ "inputs": [],
5
6
  "outputs": [
6
7
  {
8
+ "name": "",
9
+ "type": "tuple[]",
10
+ "internalType": "struct EngineBlox.FunctionSchema[]",
7
11
  "components": [
8
12
  {
9
- "internalType": "string",
10
13
  "name": "functionSignature",
11
- "type": "string"
14
+ "type": "string",
15
+ "internalType": "string"
12
16
  },
13
17
  {
14
- "internalType": "bytes4",
15
18
  "name": "functionSelector",
16
- "type": "bytes4"
19
+ "type": "bytes4",
20
+ "internalType": "bytes4"
17
21
  },
18
22
  {
19
- "internalType": "bytes32",
20
23
  "name": "operationType",
21
- "type": "bytes32"
24
+ "type": "bytes32",
25
+ "internalType": "bytes32"
22
26
  },
23
27
  {
24
- "internalType": "string",
25
28
  "name": "operationName",
26
- "type": "string"
29
+ "type": "string",
30
+ "internalType": "string"
27
31
  },
28
32
  {
29
- "internalType": "uint16",
30
33
  "name": "supportedActionsBitmap",
31
- "type": "uint16"
34
+ "type": "uint16",
35
+ "internalType": "uint16"
36
+ },
37
+ {
38
+ "name": "enforceHandlerRelations",
39
+ "type": "bool",
40
+ "internalType": "bool"
32
41
  },
33
42
  {
34
- "internalType": "bool",
35
43
  "name": "isProtected",
36
- "type": "bool"
44
+ "type": "bool",
45
+ "internalType": "bool"
46
+ },
47
+ {
48
+ "name": "isGrantRevocable",
49
+ "type": "bool",
50
+ "internalType": "bool"
37
51
  },
38
52
  {
39
- "internalType": "bytes4[]",
40
53
  "name": "handlerForSelectors",
41
- "type": "bytes4[]"
54
+ "type": "bytes4[]",
55
+ "internalType": "bytes4[]"
42
56
  }
43
- ],
44
- "internalType": "struct EngineBlox.FunctionSchema[]",
45
- "name": "",
46
- "type": "tuple[]"
57
+ ]
47
58
  }
48
59
  ],
49
- "stateMutability": "pure",
50
- "type": "function"
60
+ "stateMutability": "pure"
51
61
  },
52
62
  {
53
- "inputs": [],
63
+ "type": "function",
54
64
  "name": "getRolePermissions",
65
+ "inputs": [],
55
66
  "outputs": [
56
67
  {
68
+ "name": "",
69
+ "type": "tuple",
70
+ "internalType": "struct IDefinition.RolePermission",
57
71
  "components": [
58
72
  {
59
- "internalType": "bytes32[]",
60
73
  "name": "roleHashes",
61
- "type": "bytes32[]"
74
+ "type": "bytes32[]",
75
+ "internalType": "bytes32[]"
62
76
  },
63
77
  {
78
+ "name": "functionPermissions",
79
+ "type": "tuple[]",
80
+ "internalType": "struct EngineBlox.FunctionPermission[]",
64
81
  "components": [
65
82
  {
66
- "internalType": "bytes4",
67
83
  "name": "functionSelector",
68
- "type": "bytes4"
84
+ "type": "bytes4",
85
+ "internalType": "bytes4"
69
86
  },
70
87
  {
71
- "internalType": "uint16",
72
88
  "name": "grantedActionsBitmap",
73
- "type": "uint16"
89
+ "type": "uint16",
90
+ "internalType": "uint16"
74
91
  },
75
92
  {
76
- "internalType": "bytes4[]",
77
93
  "name": "handlerForSelectors",
78
- "type": "bytes4[]"
94
+ "type": "bytes4[]",
95
+ "internalType": "bytes4[]"
79
96
  }
80
- ],
81
- "internalType": "struct EngineBlox.FunctionPermission[]",
82
- "name": "functionPermissions",
83
- "type": "tuple[]"
97
+ ]
84
98
  }
85
- ],
86
- "internalType": "struct IDefinition.RolePermission",
87
- "name": "",
88
- "type": "tuple"
99
+ ]
89
100
  }
90
101
  ],
91
- "stateMutability": "pure",
92
- "type": "function"
102
+ "stateMutability": "pure"
93
103
  },
94
104
  {
105
+ "type": "function",
106
+ "name": "supportsInterface",
95
107
  "inputs": [
96
108
  {
97
- "internalType": "bytes4",
98
109
  "name": "interfaceId",
99
- "type": "bytes4"
110
+ "type": "bytes4",
111
+ "internalType": "bytes4"
100
112
  }
101
113
  ],
102
- "name": "supportsInterface",
103
114
  "outputs": [
104
115
  {
105
- "internalType": "bool",
106
116
  "name": "",
107
- "type": "bool"
117
+ "type": "bool",
118
+ "internalType": "bool"
108
119
  }
109
120
  ],
110
- "stateMutability": "view",
111
- "type": "function"
121
+ "stateMutability": "view"
112
122
  }
113
123
  ]