@proto-kit/module 0.1.1-develop.191 → 0.1.1-develop.211

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 (78) hide show
  1. package/dist/method/MethodParameterDecoder.d.ts.map +1 -1
  2. package/dist/method/MethodParameterDecoder.js +1 -1
  3. package/dist/method/RuntimeMethodExecutionContext.d.ts +2 -2
  4. package/dist/method/RuntimeMethodExecutionContext.d.ts.map +1 -1
  5. package/dist/module/src/factories/MethodIdFactory.d.ts +9 -0
  6. package/dist/module/src/factories/MethodIdFactory.d.ts.map +1 -0
  7. package/dist/module/src/factories/MethodIdFactory.js +36 -0
  8. package/dist/module/src/index.d.ts +11 -0
  9. package/dist/module/src/index.d.ts.map +1 -0
  10. package/dist/module/src/index.js +10 -0
  11. package/dist/module/src/method/MethodParameterDecoder.d.ts +22 -0
  12. package/dist/module/src/method/MethodParameterDecoder.d.ts.map +1 -0
  13. package/dist/module/src/method/MethodParameterDecoder.js +33 -0
  14. package/dist/module/src/method/runtimeMethod.d.ts +19 -0
  15. package/dist/module/src/method/runtimeMethod.d.ts.map +1 -0
  16. package/dist/module/src/method/runtimeMethod.js +123 -0
  17. package/dist/module/src/module/decorator.d.ts +8 -0
  18. package/dist/module/src/module/decorator.d.ts.map +1 -0
  19. package/dist/module/src/module/decorator.js +15 -0
  20. package/dist/module/src/runtime/MethodIdResolver.d.ts +18 -0
  21. package/dist/module/src/runtime/MethodIdResolver.d.ts.map +1 -0
  22. package/dist/module/src/runtime/MethodIdResolver.js +50 -0
  23. package/dist/module/src/runtime/Runtime.d.ts +72 -0
  24. package/dist/module/src/runtime/Runtime.d.ts.map +1 -0
  25. package/dist/module/src/runtime/Runtime.js +184 -0
  26. package/dist/module/src/runtime/RuntimeModule.d.ts +35 -0
  27. package/dist/module/src/runtime/RuntimeModule.d.ts.map +1 -0
  28. package/dist/module/src/runtime/RuntimeModule.js +56 -0
  29. package/dist/module/src/state/InMemoryStateService.d.ts +11 -0
  30. package/dist/module/src/state/InMemoryStateService.d.ts.map +1 -0
  31. package/dist/module/src/state/InMemoryStateService.js +21 -0
  32. package/dist/module/src/state/decorator.d.ts +7 -0
  33. package/dist/module/src/state/decorator.d.ts.map +1 -0
  34. package/dist/module/src/state/decorator.js +42 -0
  35. package/dist/protocol/src/model/Option.d.ts +98 -0
  36. package/dist/protocol/src/model/Option.d.ts.map +1 -0
  37. package/dist/protocol/src/model/Option.js +98 -0
  38. package/dist/protocol/src/model/StateTransition.d.ts +96 -0
  39. package/dist/protocol/src/model/StateTransition.d.ts.map +1 -0
  40. package/dist/protocol/src/model/StateTransition.js +65 -0
  41. package/dist/protocol/src/model/network/NetworkState.d.ts +64 -0
  42. package/dist/protocol/src/model/network/NetworkState.d.ts.map +1 -0
  43. package/dist/protocol/src/model/network/NetworkState.js +12 -0
  44. package/dist/protocol/src/model/transaction/ProtocolTransaction.d.ts +70 -0
  45. package/dist/protocol/src/model/transaction/ProtocolTransaction.d.ts.map +1 -0
  46. package/dist/protocol/src/model/transaction/ProtocolTransaction.js +18 -0
  47. package/dist/protocol/src/model/transaction/RuntimeTransaction.d.ts +63 -0
  48. package/dist/protocol/src/model/transaction/RuntimeTransaction.d.ts.map +1 -0
  49. package/dist/protocol/src/model/transaction/RuntimeTransaction.js +29 -0
  50. package/dist/protocol/src/state/assert/assert.d.ts +12 -0
  51. package/dist/protocol/src/state/assert/assert.d.ts.map +1 -0
  52. package/dist/protocol/src/state/assert/assert.js +23 -0
  53. package/dist/protocol/src/state/context/RuntimeMethodExecutionContext.d.ts +60 -0
  54. package/dist/protocol/src/state/context/RuntimeMethodExecutionContext.d.ts.map +1 -0
  55. package/dist/protocol/src/state/context/RuntimeMethodExecutionContext.js +105 -0
  56. package/dist/state/StateMap.d.ts +3 -3
  57. package/dist/state/StateMap.d.ts.map +1 -1
  58. package/package.json +3 -4
  59. package/src/index.ts +2 -5
  60. package/src/method/MethodParameterDecoder.ts +3 -1
  61. package/src/method/runtimeMethod.ts +1 -2
  62. package/src/runtime/Runtime.ts +12 -10
  63. package/src/runtime/RuntimeModule.ts +5 -4
  64. package/src/state/InMemoryStateService.ts +1 -5
  65. package/src/state/decorator.ts +2 -4
  66. package/test/Runtime.test.ts +2 -2
  67. package/test/modules/Admin.ts +1 -1
  68. package/test/modules/Balances.test.ts +13 -8
  69. package/test/modules/Balances.ts +7 -3
  70. package/test/modules/State.test.ts +88 -0
  71. package/test/modules/methodId.test.ts +0 -1
  72. package/test/transaction.test.ts +1 -1
  73. package/src/method/RuntimeMethodExecutionContext.ts +0 -111
  74. package/src/method/assert.test.ts +0 -49
  75. package/src/method/assert.ts +0 -27
  76. package/src/state/State.ts +0 -154
  77. package/src/state/StateMap.ts +0 -69
  78. package/src/state/StateServiceProvider.ts +0 -24
@@ -1,69 +0,0 @@
1
- import type { Field, FlexibleProvablePure } from "snarkyjs";
2
- import { Path, type Option } from "@proto-kit/protocol";
3
- import { Mixin } from "ts-mixer";
4
-
5
- import { State, WithRuntime, WithPath } from "./State.js";
6
-
7
- /**
8
- * Map-like wrapper for state
9
- */
10
- // eslint-disable-next-line new-cap
11
- export class StateMap<KeyType, ValueType> extends Mixin(WithPath, WithRuntime) {
12
- /**
13
- * Create a new state map with the given key and value types
14
- *
15
- * @param keyType - Type to be used as a key
16
- * @param valueType - Type to be stored as a value
17
- * @returns State map with provided key and value types.
18
- */
19
- public static from<KeyType, ValueType>(
20
- keyType: FlexibleProvablePure<KeyType>,
21
- valueType: FlexibleProvablePure<ValueType>
22
- ) {
23
- return new StateMap<KeyType, ValueType>(keyType, valueType);
24
- }
25
-
26
- public constructor(
27
- public keyType: FlexibleProvablePure<KeyType>,
28
- public valueType: FlexibleProvablePure<ValueType>
29
- ) {
30
- super();
31
- }
32
-
33
- public getPath(key: KeyType): Field {
34
- this.hasPathOrFail();
35
- return Path.fromKey(this.path, this.keyType, key);
36
- }
37
-
38
- /**
39
- * Obtains a value for the provided key in the current state map.
40
- *
41
- * @param key - Key to obtain the state for
42
- * @returns Value for the provided key.
43
- */
44
- public get(key: KeyType): Option<ValueType> {
45
- const state = State.from(this.valueType);
46
- this.hasPathOrFail();
47
- this.hasRuntimeOrFail();
48
-
49
- state.path = this.getPath(key);
50
- state.runtime = this.runtime;
51
- return state.get();
52
- }
53
-
54
- /**
55
- * Sets a value for the given key in the current state map.
56
- *
57
- * @param key - Key to store the value under
58
- * @param value - Value to be stored under the given key
59
- */
60
- public set(key: KeyType, value: ValueType) {
61
- const state = State.from(this.valueType);
62
- this.hasPathOrFail();
63
- this.hasRuntimeOrFail();
64
-
65
- state.path = Path.fromKey(this.path, this.keyType, key);
66
- state.runtime = this.runtime;
67
- state.set(value);
68
- }
69
- }
@@ -1,24 +0,0 @@
1
- import { inject, injectable } from "tsyringe";
2
-
3
- import { StateService } from "./InMemoryStateService";
4
-
5
- @injectable()
6
- export class StateServiceProvider {
7
- private readonly defaultStateService: StateService = this.currentStateService;
8
-
9
- public constructor(
10
- @inject("StateService") private currentStateService: StateService
11
- ) {}
12
-
13
- public get stateService(): StateService {
14
- return this.currentStateService;
15
- }
16
-
17
- public setCurrentStateService(service: StateService) {
18
- this.currentStateService = service;
19
- }
20
-
21
- public resetToDefault() {
22
- this.currentStateService = this.defaultStateService;
23
- }
24
- }