@bloxchain/sdk 1.0.0-alpha → 1.0.0-alpha.10

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 (119) hide show
  1. package/README.md +48 -10
  2. package/abi/{ControlBlox.abi.json → AccountBlox.abi.json} +699 -2974
  3. package/abi/BareBlox.abi.json +127 -90
  4. package/abi/BaseStateMachine.abi.json +127 -90
  5. package/abi/EngineBlox.abi.json +11 -31
  6. package/abi/GuardController.abi.json +217 -895
  7. package/abi/GuardControllerDefinitions.abi.json +380 -0
  8. package/abi/IDefinition.abi.json +19 -0
  9. package/abi/RoleBlox.abi.json +818 -2404
  10. package/abi/RuntimeRBAC.abi.json +122 -328
  11. package/abi/RuntimeRBACDefinitions.abi.json +243 -0
  12. package/abi/SecureBlox.abi.json +620 -1952
  13. package/abi/SecureOwnable.abi.json +469 -1801
  14. package/abi/SecureOwnableDefinitions.abi.json +57 -0
  15. package/abi/SimpleRWA20.abi.json +486 -1999
  16. package/abi/SimpleRWA20Definitions.abi.json +19 -0
  17. package/abi/SimpleVault.abi.json +884 -2685
  18. package/abi/SimpleVaultDefinitions.abi.json +19 -0
  19. package/dist/abi/AccountBlox.abi.json +3935 -0
  20. package/dist/abi/BareBlox.abi.json +1378 -0
  21. package/dist/abi/BaseStateMachine.abi.json +1259 -1222
  22. package/dist/abi/EngineBlox.abi.json +852 -0
  23. package/dist/abi/GuardController.abi.json +2232 -2910
  24. package/dist/abi/GuardControllerDefinitions.abi.json +380 -0
  25. package/dist/abi/IDefinition.abi.json +110 -91
  26. package/dist/abi/RoleBlox.abi.json +2983 -0
  27. package/dist/abi/RuntimeRBAC.abi.json +1540 -1746
  28. package/dist/abi/RuntimeRBACDefinitions.abi.json +376 -0
  29. package/dist/abi/SecureBlox.abi.json +2753 -0
  30. package/dist/abi/SecureOwnable.abi.json +2583 -3915
  31. package/dist/abi/SecureOwnableDefinitions.abi.json +411 -0
  32. package/dist/abi/SimpleRWA20.abi.json +4032 -0
  33. package/dist/abi/SimpleRWA20Definitions.abi.json +191 -0
  34. package/dist/abi/SimpleVault.abi.json +3407 -0
  35. package/dist/abi/SimpleVaultDefinitions.abi.json +269 -0
  36. package/dist/abi.d.ts +11 -0
  37. package/dist/abi.d.ts.map +1 -0
  38. package/dist/abi.js +10 -0
  39. package/dist/abi.js.map +1 -0
  40. package/dist/contracts/BaseStateMachine.d.ts +9 -0
  41. package/dist/contracts/BaseStateMachine.d.ts.map +1 -1
  42. package/dist/contracts/BaseStateMachine.js +12 -0
  43. package/dist/contracts/BaseStateMachine.js.map +1 -1
  44. package/dist/contracts/GuardController.d.ts +4 -4
  45. package/dist/contracts/GuardController.d.ts.map +1 -1
  46. package/dist/contracts/GuardController.js +8 -7
  47. package/dist/contracts/GuardController.js.map +1 -1
  48. package/dist/contracts/RuntimeRBAC.d.ts +4 -20
  49. package/dist/contracts/RuntimeRBAC.d.ts.map +1 -1
  50. package/dist/contracts/RuntimeRBAC.js +5 -12
  51. package/dist/contracts/RuntimeRBAC.js.map +1 -1
  52. package/dist/contracts/SecureOwnable.d.ts +3 -3
  53. package/dist/contracts/SecureOwnable.d.ts.map +1 -1
  54. package/dist/contracts/SecureOwnable.js +7 -8
  55. package/dist/contracts/SecureOwnable.js.map +1 -1
  56. package/dist/contracts/core/BaseStateMachine.d.ts +98 -0
  57. package/dist/contracts/core/BaseStateMachine.d.ts.map +1 -0
  58. package/dist/contracts/core/BaseStateMachine.js +271 -0
  59. package/dist/contracts/core/BaseStateMachine.js.map +1 -0
  60. package/dist/contracts/core/GuardController.d.ts +120 -0
  61. package/dist/contracts/core/GuardController.d.ts.map +1 -0
  62. package/dist/contracts/core/GuardController.js +150 -0
  63. package/dist/contracts/core/GuardController.js.map +1 -0
  64. package/dist/contracts/core/RuntimeRBAC.d.ts +40 -0
  65. package/dist/contracts/core/RuntimeRBAC.d.ts.map +1 -0
  66. package/dist/contracts/core/RuntimeRBAC.js +50 -0
  67. package/dist/contracts/core/RuntimeRBAC.js.map +1 -0
  68. package/dist/contracts/core/SecureOwnable.d.ts +41 -0
  69. package/dist/contracts/core/SecureOwnable.d.ts.map +1 -0
  70. package/dist/contracts/core/SecureOwnable.js +81 -0
  71. package/dist/contracts/core/SecureOwnable.js.map +1 -0
  72. package/dist/index.d.ts +6 -4
  73. package/dist/index.d.ts.map +1 -1
  74. package/dist/index.js +5 -4
  75. package/dist/index.js.map +1 -1
  76. package/dist/interfaces/base.state.machine.index.d.ts +3 -0
  77. package/dist/interfaces/base.state.machine.index.d.ts.map +1 -1
  78. package/dist/interfaces/core.access.index.d.ts +3 -14
  79. package/dist/interfaces/core.access.index.d.ts.map +1 -1
  80. package/dist/interfaces/core.execution.index.d.ts +2 -2
  81. package/dist/interfaces/core.execution.index.d.ts.map +1 -1
  82. package/dist/interfaces/core.security.index.d.ts +1 -1
  83. package/dist/interfaces/core.security.index.d.ts.map +1 -1
  84. package/dist/lib/EngineBlox.d.ts +0 -9
  85. package/dist/lib/EngineBlox.d.ts.map +1 -1
  86. package/dist/lib/EngineBlox.js +0 -9
  87. package/dist/lib/EngineBlox.js.map +1 -1
  88. package/dist/lib/definitions/GuardControllerDefinitions.d.ts +43 -0
  89. package/dist/lib/definitions/GuardControllerDefinitions.d.ts.map +1 -0
  90. package/dist/lib/definitions/GuardControllerDefinitions.js +69 -0
  91. package/dist/lib/definitions/GuardControllerDefinitions.js.map +1 -0
  92. package/dist/lib/definitions/RuntimeRBACDefinitions.d.ts +59 -0
  93. package/dist/lib/definitions/RuntimeRBACDefinitions.d.ts.map +1 -0
  94. package/dist/lib/definitions/RuntimeRBACDefinitions.js +92 -0
  95. package/dist/lib/definitions/RuntimeRBACDefinitions.js.map +1 -0
  96. package/dist/lib/definitions/SecureOwnableDefinitions.d.ts +17 -0
  97. package/dist/lib/definitions/SecureOwnableDefinitions.d.ts.map +1 -0
  98. package/dist/lib/definitions/SecureOwnableDefinitions.js +21 -0
  99. package/dist/lib/definitions/SecureOwnableDefinitions.js.map +1 -0
  100. package/dist/lib/definitions/index.d.ts +9 -0
  101. package/dist/lib/definitions/index.d.ts.map +1 -0
  102. package/dist/lib/definitions/index.js +8 -0
  103. package/dist/lib/definitions/index.js.map +1 -0
  104. package/dist/types/base.state.machine.index.d.ts +0 -1
  105. package/dist/types/base.state.machine.index.d.ts.map +1 -1
  106. package/dist/types/base.state.machine.index.js +1 -2
  107. package/dist/types/base.state.machine.index.js.map +1 -1
  108. package/dist/types/core.execution.index.d.ts +1 -1
  109. package/dist/types/core.execution.index.js +1 -1
  110. package/dist/types/core.security.index.d.ts.map +1 -1
  111. package/dist/types/core.security.index.js +2 -2
  112. package/dist/types/core.security.index.js.map +1 -1
  113. package/dist/utils/contract-errors.d.ts +15 -2
  114. package/dist/utils/contract-errors.d.ts.map +1 -1
  115. package/dist/utils/contract-errors.js +18 -4
  116. package/dist/utils/contract-errors.js.map +1 -1
  117. package/dist/utils/interface-ids.js +1 -1
  118. package/dist/utils/interface-ids.js.map +1 -1
  119. package/package.json +75 -65
package/README.md CHANGED
@@ -1,7 +1,22 @@
1
1
  # Bloxchain Protocol TypeScript SDK
2
2
 
3
+ [![npm version](https://img.shields.io/npm/v/@bloxchain/sdk.svg)](https://www.npmjs.com/package/@bloxchain/sdk)
4
+ [![License: MPL-2.0](https://img.shields.io/badge/License-MPL--2.0-blue.svg)](https://opensource.org/licenses/MPL-2.0)
5
+ [![TypeScript](https://img.shields.io/badge/TypeScript-5.x-blue.svg)](https://www.typescriptlang.org/)
6
+ [![Node](https://img.shields.io/badge/Node-%3E%3D18.0.0-green.svg)](https://nodejs.org/)
7
+
3
8
  A comprehensive TypeScript SDK for interacting with the Bloxchain Protocol smart contracts, providing type-safe interfaces for secure multi-phase operations, dynamic role-based access control, and state abstraction.
4
9
 
10
+ > **⚠️ EXPERIMENTAL SOFTWARE WARNING**
11
+ > This package contains experimental smart contract code and SDK support. While the framework is feature-complete and tested, it is not yet audited for production use. Use at your own risk and do not deploy with real assets without proper security review.
12
+
13
+ ## Requirements
14
+
15
+ - **Node.js**: >= 18.0.0
16
+ - **TypeScript**: 5.x (recommended)
17
+ - **Peer dependency**: `viem` ^2.0.0 (required for all SDK usage)
18
+ - **Optional peer**: `@bloxchain/contracts` ^1.0.0-alpha (for Solidity/ABI alignment when building apps that use both)
19
+
5
20
  ## 🏗️ **Unique Architecture**
6
21
 
7
22
  Bloxchain Protocol implements a **state machine architecture** with `SecureOperationState` as the core engine, providing:
@@ -46,14 +61,17 @@ Comprehensive documentation is available in the [`docs/`](./docs/) directory:
46
61
  ## Installation
47
62
 
48
63
  ```bash
49
- # Install the SDK package
50
- npm install @bloxchain/sdk
64
+ # Install the SDK and its required peer dependency
65
+ npm install @bloxchain/sdk viem
51
66
 
52
- # Or install from the repository
53
- npm install https://github.com/PracticalParticle/Bloxchain-Protocol.git#main --save
67
+ # Optional: install contracts package when building apps that use both SDK and Solidity
68
+ npm install @bloxchain/contracts
69
+ ```
70
+
71
+ To install from the repository (e.g. for development):
54
72
 
55
- # The SDK requires viem as a peer dependency
56
- npm install viem
73
+ ```bash
74
+ npm install https://github.com/PracticalParticle/Bloxchain-Protocol.git#main --save
57
75
  ```
58
76
 
59
77
  ## Quick Start
@@ -263,7 +281,7 @@ definitions.updateConfig({
263
281
  ### Transaction Actions
264
282
 
265
283
  ```typescript
266
- import { TxAction } from './types/lib.index';
284
+ import { TxAction } from '@bloxchain/sdk';
267
285
 
268
286
  // Available transaction actions
269
287
  TxAction.EXECUTE_TIME_DELAY_REQUEST
@@ -280,7 +298,7 @@ TxAction.EXECUTE_META_CANCEL
280
298
  ### Execution Types
281
299
 
282
300
  ```typescript
283
- import { ExecutionType } from './types/lib.index';
301
+ import { ExecutionType } from '@bloxchain/sdk';
284
302
 
285
303
  ExecutionType.NONE
286
304
  ExecutionType.STANDARD
@@ -290,7 +308,7 @@ ExecutionType.RAW
290
308
  ### Transaction Status
291
309
 
292
310
  ```typescript
293
- import { TxStatus } from './types/lib.index';
311
+ import { TxStatus } from '@bloxchain/sdk';
294
312
 
295
313
  TxStatus.UNDEFINED
296
314
  TxStatus.PENDING
@@ -323,6 +341,26 @@ try {
323
341
  - Monitor transaction status and handle failures appropriately
324
342
  - Keep private keys secure and never expose them in client-side code
325
343
 
344
+ ## Versioning and stability
345
+
346
+ This package follows [Semantic Versioning](https://semver.org/). Current versions are **alpha** (`1.0.0-alpha.x`). Pre-1.0 releases may introduce breaking changes; we recommend pinning the exact version until the protocol is audited and stable.
347
+
348
+ ## Security
349
+
350
+ - **Vulnerability reporting**: Do not open public GitHub issues for security vulnerabilities. See the [Security Policy](https://github.com/PracticalParticle/Bloxchain-Protocol/blob/main/SECURITY.md) for reporting instructions (e.g. security@particlecs.com).
351
+ - **Audit status**: The underlying protocol is not yet audited. Do not use with mainnet assets without an independent security review.
352
+
353
+ ## Support and links
354
+
355
+ - **Documentation**: [SDK docs](./docs/) in this package; [Bloxchain Protocol README](https://github.com/PracticalParticle/Bloxchain-Protocol#readme) for protocol details
356
+ - **Issues and feature requests**: [GitHub Issues](https://github.com/PracticalParticle/Bloxchain-Protocol/issues)
357
+ - **Homepage**: [bloxchain.app](https://bloxchain.app/)
358
+ - **Author**: [Particle Crypto Security](https://particlecs.com/)
359
+
360
+ ## Repository
361
+
362
+ Part of [Bloxchain Protocol](https://github.com/PracticalParticle/Bloxchain-Protocol). For protocol architecture and contract documentation, see the main repository README.
363
+
326
364
  ## Contributing
327
365
 
328
366
  When contributing to the SDK:
@@ -335,4 +373,4 @@ When contributing to the SDK:
335
373
 
336
374
  ## License
337
375
 
338
- This SDK is part of the Bloxchain Protocol and follows the same licensing terms.
376
+ MPL-2.0 (Mozilla Public License 2.0). This SDK is part of the Bloxchain Protocol. See the [LICENSE](https://github.com/PracticalParticle/Bloxchain-Protocol/blob/main/LICENSE) file in the main repository.