@dashevo/wasm-dpp 0.25.0-dev.12 → 0.25.0-dev.14

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 (91) hide show
  1. package/Cargo.toml +6 -5
  2. package/README.md +11 -6
  3. package/dist/wasm/wasm_dpp.d.ts +715 -653
  4. package/dist/wasm/wasm_dpp.js +1219 -1195
  5. package/dist/wasm/wasm_dpp_bg.js +1 -1
  6. package/lib/test/fixtures/getIdentityCreateTransitionFixture.js +2 -2
  7. package/lib/test/fixtures/js/generateRandomIdentifier.js +1 -0
  8. package/lib/test/fixtures/js/getChainAssetLockProofFixture.js +1 -0
  9. package/lib/test/fixtures/js/getDataContractFixture.js +1 -0
  10. package/lib/test/fixtures/js/getDocumentTransitionsFixture.js +1 -0
  11. package/lib/test/fixtures/js/getDocumentsFixture.js +1 -0
  12. package/lib/test/fixtures/js/getInstantAssetLockProofFixture.js +1 -0
  13. package/lib/test/mocks/createStateRepositoryMock.js +1 -0
  14. package/lib/wasm/wasm_dpp.d.ts +715 -653
  15. package/package.json +3 -3
  16. package/scripts/build-wasm.sh +32 -28
  17. package/src/data_contract/data_contract.rs +99 -54
  18. package/src/data_contract/data_contract_facade.rs +5 -2
  19. package/src/data_contract/state_transition/data_contract_update_transition/mod.rs +0 -5
  20. package/src/data_contract_factory/data_contract_factory.rs +5 -1
  21. package/src/document/document_facade.rs +12 -0
  22. package/src/document/factory.rs +17 -0
  23. package/src/document/mod.rs +4 -4
  24. package/src/errors/consensus/consensus_error.rs +5 -0
  25. package/src/errors/consensus/state/document/document_timestamps_are_equal_error.rs +42 -0
  26. package/src/errors/consensus/state/document/mod.rs +2 -0
  27. package/src/errors/value_error.rs +5 -0
  28. package/src/identity/mod.rs +8 -1
  29. package/src/identity/state_transition/mod.rs +1 -0
  30. package/src/identity/state_transition/transition_types.rs +30 -0
  31. package/src/lib.rs +1 -2
  32. package/src/protocol_version.rs +7 -0
  33. package/src/state_transition/errors/invalid_state_transition_error.rs +12 -1
  34. package/src/state_transition/state_transition_facade.rs +6 -1
  35. package/test/integration/dataContract/stateTransition/DataContractCreateTransition/validation/basic/validateDataContractCreateTransitionBasicFactory.spec.js +5 -5
  36. package/test/integration/dataContract/stateTransition/DataContractUpdateTransition/validation/basic/validateDataContractUpdateTransitionBasicFactory.spec.js +5 -5
  37. package/test/integration/dataContract/validation/validateDataContractFactory.spec.js +2 -2
  38. package/test/integration/document/DocumentFacade.spec.js +4 -4
  39. package/test/integration/document/stateTransition/DocumentsBatchTransition/DocumentBatchTransition.spec.js +5 -6
  40. package/test/integration/document/stateTransition/DocumentsBatchTransition/validation/basic/validateDocumentsBatchTransitionBasicFactory.spec.js +14 -14
  41. package/test/integration/document/stateTransition/DocumentsBatchTransition/validation/state/executeDataTriggersFactory.spec.js +1 -1
  42. package/test/integration/document/validation/validateDocumentFactory.spec.js +2 -2
  43. package/test/integration/identity/IdentityFacade.spec.js +8 -8
  44. package/test/integration/identity/stateTransition/IdentityCreateTransition/validation/basic/validateIdentityCreateTransitionBasicFactory.spec.js +4 -6
  45. package/test/integration/identity/stateTransition/IdentityTopUpTransition/validation/basic/validateIdentityTopUpTransitionBasicFactory.spec.js +3 -6
  46. package/test/integration/identity/stateTransition/IdentityUpdateTransition/validation/state/validateIdentityUpdateTransitionStateFactory.spec.js +20 -23
  47. package/test/integration/identity/stateTransition/IdentityUpdateTransition/validation/state/validatePublicKeysState.spec.js +1 -1
  48. package/test/integration/identity/stateTransition/assetLockProof/chain/validateChainAssetLockProofStructureFactory.spec.js +3 -3
  49. package/test/integration/identity/stateTransition/assetLockProof/fetchAssetLockTransactionOutputFactory.spec.js +5 -8
  50. package/test/integration/identity/stateTransition/assetLockProof/instant/validateInstantAssetLockProofStructureFactory.spec.js +3 -4
  51. package/test/integration/identity/stateTransition/assetLockProof/validateAssetLockTransactionFactory.spec.js +2 -3
  52. package/test/integration/identity/stateTransition/validatePublicKeySignaturesFactory.spec.js +2 -6
  53. package/test/integration/identity/validation/validateIdentityFactory.spec.js +6 -5
  54. package/test/integration/identity/validation/validatePublicKeysFactory.spec.js +4 -24
  55. package/test/integration/stateTransition/StateTransitionFacade.spec.js +11 -15
  56. package/test/unit/DashPlatformProtocol.spec.js +6 -7
  57. package/test/unit/dataContract/DataContract.spec.js +9 -9
  58. package/test/unit/dataContract/DataContractFactory.spec.js +3 -3
  59. package/test/unit/dataContract/createDataContract.spec.js +5 -5
  60. package/test/unit/dataContract/stateTransition/DataContractCreateTransition/DataContractCreateTransition.spec.js +14 -14
  61. package/test/unit/dataContract/stateTransition/DataContractCreateTransition/applyDataContractCreateTransitionFactory.spec.js +6 -8
  62. package/test/unit/dataContract/stateTransition/DataContractCreateTransition/validation/state/validateDataContractCreateTransitionStateFactory.spec.js +3 -3
  63. package/test/unit/dataContract/stateTransition/DataContractUpdateTransition/DataContractUpdateTransition.spec.js +14 -12
  64. package/test/unit/dataContract/stateTransition/DataContractUpdateTransition/applyDataContractUpdateTransitionFactory.spec.js +6 -6
  65. package/test/unit/dataContract/stateTransition/DataContractUpdateTransition/validation/basic/validateIndicesAreBackwardCompatible.spec.js +4 -4
  66. package/test/unit/dataContract/stateTransition/DataContractUpdateTransition/validation/state/validateDataContractUpdateTransitionStateFactory.spec.js +5 -5
  67. package/test/unit/dataContract/validation/validateDataContractPatterns.spec.js +6 -6
  68. package/test/unit/document/Document.spec.js +5 -4
  69. package/test/unit/document/stateTransition/DocumetsBatchTransition/applyDocumentsBatchTransitionFactory.spec.js +10 -11
  70. package/test/unit/document/stateTransition/DocumetsBatchTransition/validation/state/validateDocumentsBatchTransitionStateFactory.spec.js +8 -8
  71. package/test/unit/identity/Identity.spec.js +14 -6
  72. package/test/unit/identity/IdentityFactory.spec.js +11 -11
  73. package/test/unit/identity/IdentityPublicKey.spec.js +2 -2
  74. package/test/unit/identity/stateTransition/IdentityCreateTransition/IdentityCreateTransition.spec.js +13 -14
  75. package/test/unit/identity/stateTransition/IdentityCreateTransition/applyIdentityCreateTransitionFactory.spec.js +7 -13
  76. package/test/unit/identity/stateTransition/IdentityCreateTransition/validation/state/validateIdentityCreateTransitionStateFactory.spec.js +3 -7
  77. package/test/unit/identity/stateTransition/IdentityTopUpTransition/IdentityTopUpTransition.spec.js +13 -14
  78. package/test/unit/identity/stateTransition/IdentityTopUpTransition/applyIdentityTopUpTransitionFactory.spec.js +5 -9
  79. package/test/unit/identity/stateTransition/IdentityTopUpTransition/validation/state/validateIdentityTopUpTransitionStateFactory.spec.js +4 -8
  80. package/test/unit/identity/stateTransition/IdentityUpdateTransition/IdentityUpdateTransition.spec.js +11 -16
  81. package/test/unit/identity/stateTransition/IdentityUpdateTransition/applyIdentityUpdateTransitionFactory.spec.js +1 -1
  82. package/test/unit/stateTransition/StateTransitionFactory.spec.js +6 -7
  83. package/test/unit/stateTransition/createStateTransitionFactory.spec.js +41 -19
  84. package/test/unit/stateTransition/validation/validateStateTransitionKeySignatureFactory.spec.js +6 -12
  85. package/src/decode_protocol_entity.rs +0 -25
  86. package/test/integration/ajv/keywords/byteArray/addByteArrayKeyword.spec.js +0 -148
  87. package/test/integration/util/generateEntropy.spec.js +0 -17
  88. package/test/integration/util/serializer.spec.js +0 -24
  89. package/test/unit/decodeProtocolEntityFactory.spec.js +0 -72
  90. package/test/unit/identity/errors/InvalidIdentityError.spec.js +0 -46
  91. package/test/unit/stateTransition/errors/InvalidStateTransitionError.spec.js +0 -51
package/Cargo.toml CHANGED
@@ -10,16 +10,17 @@ crate-type = ["cdylib"]
10
10
  [dependencies]
11
11
  serde = { version = "1.0.152", features = ["derive"] }
12
12
  serde_json = { version = "1.0", features = ["preserve_order"] }
13
- wasm-bindgen = { version = "0.2.76" }
13
+ wasm-bindgen = { version = "0.2.85" }
14
14
  js-sys = "0.3.53"
15
15
  web-sys = { version = "0.3.6", features = ["console"] }
16
16
  thiserror = { version = "1.0" }
17
- serde-wasm-bindgen = { git="https://github.com/QuantumExplorer/serde-wasm-bindgen", branch="feat/not_human_readable"}
18
- dpp = { path = "../rs-dpp", default-features = false, features=["cbor"] }
19
- itertools = { version="0.10.5"}
20
- console_error_panic_hook = { version="0.1.7"}
17
+ serde-wasm-bindgen = { git = "https://github.com/QuantumExplorer/serde-wasm-bindgen", branch = "feat/not_human_readable" }
18
+ dpp = { path = "../rs-dpp", default-features = false, features = ["cbor"] }
19
+ itertools = { version = "0.10.5" }
20
+ console_error_panic_hook = { version = "0.1.7" }
21
21
  log = { version = "0.4.6" }
22
22
  wasm-logger = { version = "0.2.0" }
23
+ num_enum = "0.5.7"
23
24
 
24
25
  wasm-bindgen-futures = "0.4.33"
25
26
  async-trait = "0.1.59"
package/README.md CHANGED
@@ -14,32 +14,37 @@ The WASM JavaScript binding of the Rust implementation of the [Dash Platform Pro
14
14
  In order for this binding to work, you have to have a rs-platform cloned
15
15
  alongside platform repo, so you can have access to the rust dpp.
16
16
 
17
- ## IMPORTANT!
17
+ ## IMPORTANT
18
18
 
19
19
  ### Build on a Mac
20
+
20
21
  Built-in `llvm` on OSX does not work, it needs to be installed from brew:
22
+
21
23
  - `brew install llvm`
22
24
  - LLVM installed from brew is keg only, and path to it must be provided in the profile file, e.g.`echo 'export PATH="/opt/homebrew/opt/llvm/bin:$PATH"' >> ~/.zshrc`
23
25
 
24
26
  ### Class names minification
27
+
25
28
  Library consumers must ignore class names minification for `@dashevo/wasm-dpp` library in their bundlers.
26
29
 
27
30
  ## Table of Contents
28
- - [Prerequisites](#Prerequisites)
31
+
32
+ - [Prerequisites](#prerequisites)
29
33
  - [Build](#build)
30
34
  - [Usage](#usage)
31
35
  - [Contributing](#contributing)
32
36
  - [License](#license)
33
37
 
34
-
35
-
36
38
  ## Prerequisites
39
+
37
40
  - Install [Rust](https://www.rust-lang.org/tools/install) v1.67+
38
41
  - Add wasm32 target: `$ rustup target add wasm32-unknown-unknown`
39
- - Install wasm-bingen-cli: `cargo install wasm-bindgen-cli`
40
- - _Depending on system, additional packages may need to be installed as a prerequisite for wasm-bindgen-cli. If anything is missing, installation will error and prompt what packages are missing (i.e. clang, llvm, libssl-dev)_
42
+ - Install wasm-bingen-cli: `cargo install wasm-bindgen-cli@0.2.85`
43
+ - *double-check that wasm-bindgen-cli version above matches wasm-bindgen version in Cargo.lock file*
44
+ - *Depending on system, additional packages may need to be installed as a prerequisite for wasm-bindgen-cli. If anything is missing, installation will error and prompt what packages are missing (i.e. clang, llvm, libssl-dev)*
41
45
 
42
46
  ## Build
47
+
43
48
  `$ yarn build`
44
49
 
45
50
  ## TODO