@proto-kit/protocol 0.1.1-develop.651 → 0.1.1-develop.833
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.md +201 -201
- package/dist/blockmodules/AccountStateModule.d.ts +37 -37
- package/dist/blockmodules/AccountStateModule.js +43 -43
- package/dist/blockmodules/BlockHeightHook.d.ts +6 -6
- package/dist/blockmodules/BlockHeightHook.js +15 -15
- package/dist/blockmodules/LastStateRootBlockHook.d.ts +7 -7
- package/dist/blockmodules/LastStateRootBlockHook.js +15 -15
- package/dist/blockmodules/NoopBlockHook.d.ts +8 -8
- package/dist/blockmodules/NoopBlockHook.js +9 -9
- package/dist/blockmodules/NoopSettlementHook.d.ts +5 -5
- package/dist/blockmodules/NoopSettlementHook.d.ts.map +1 -1
- package/dist/blockmodules/NoopSettlementHook.js +18 -18
- package/dist/blockmodules/NoopTransactionHook.d.ts +5 -5
- package/dist/blockmodules/NoopTransactionHook.js +4 -4
- package/dist/hooks/AccountStateHook.d.ts +19 -5
- package/dist/hooks/AccountStateHook.d.ts.map +1 -1
- package/dist/hooks/AccountStateHook.js +9 -10
- package/dist/hooks/BlockHeightHook.d.ts +2 -2
- package/dist/hooks/BlockHeightHook.d.ts.map +1 -1
- package/dist/hooks/BlockHeightHook.js +3 -3
- package/dist/hooks/LastStateRootBlockHook.d.ts +2 -2
- package/dist/hooks/LastStateRootBlockHook.d.ts.map +1 -1
- package/dist/hooks/LastStateRootBlockHook.js +2 -2
- package/dist/hooks/NoopBlockHook.d.ts +3 -3
- package/dist/hooks/NoopBlockHook.d.ts.map +1 -1
- package/dist/hooks/NoopBlockHook.js +2 -2
- package/dist/hooks/NoopSettlementHook.d.ts +1 -1
- package/dist/hooks/NoopSettlementHook.d.ts.map +1 -1
- package/dist/hooks/NoopSettlementHook.js +2 -3
- package/dist/hooks/NoopTransactionHook.d.ts +1 -1
- package/dist/hooks/NoopTransactionHook.d.ts.map +1 -1
- package/dist/hooks/NoopTransactionHook.js +4 -1
- package/dist/index.d.ts +0 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +0 -2
- package/dist/model/MethodPublicOutput.d.ts +68 -34
- package/dist/model/MethodPublicOutput.d.ts.map +1 -1
- package/dist/model/Option.d.ts +39 -20
- package/dist/model/Option.d.ts.map +1 -1
- package/dist/model/Option.js +1 -0
- package/dist/model/Path.d.ts +1 -1
- package/dist/model/Path.d.ts.map +1 -1
- package/dist/model/Path.js +0 -2
- package/dist/model/StateTransition.d.ts +48 -12
- package/dist/model/StateTransition.d.ts.map +1 -1
- package/dist/model/StateTransitionProvableBatch.d.ts +71 -14
- package/dist/model/StateTransitionProvableBatch.d.ts.map +1 -1
- package/dist/model/StateTransitionReduction.d.ts +2 -2
- package/dist/model/StateTransitionReduction.js +26 -26
- package/dist/model/network/NetworkState.d.ts +73 -18
- package/dist/model/network/NetworkState.d.ts.map +1 -1
- package/dist/model/network/NetworkState.js +2 -2
- package/dist/model/transaction/ProtocolTransaction.d.ts +69 -69
- package/dist/model/transaction/ProtocolTransaction.js +18 -18
- package/dist/model/transaction/RuntimeTransaction.d.ts +50 -16
- package/dist/model/transaction/RuntimeTransaction.d.ts.map +1 -1
- package/dist/model/transaction/RuntimeTransaction.js +4 -4
- package/dist/model/transaction/SignedTransaction.d.ts +39 -3
- package/dist/model/transaction/SignedTransaction.d.ts.map +1 -1
- package/dist/model/transaction/SignedTransaction.js +1 -1
- package/dist/model/transaction/ValueOption.d.ts +86 -32
- package/dist/model/transaction/ValueOption.d.ts.map +1 -1
- package/dist/model/transaction/ValueOption.js +1 -1
- package/dist/protocol/Protocol.d.ts +6 -5
- package/dist/protocol/Protocol.d.ts.map +1 -1
- package/dist/protocol/Protocol.js +12 -3
- package/dist/protocol/ProtocolEnvironment.d.ts +3 -3
- package/dist/protocol/ProtocolEnvironment.d.ts.map +1 -1
- package/dist/protocol/ProtocolModule.d.ts +1 -0
- package/dist/protocol/ProtocolModule.d.ts.map +1 -1
- package/dist/protocol/ProtocolModule.js +3 -1
- package/dist/protocol/ProvableBlockHook.d.ts +2 -2
- package/dist/protocol/ProvableBlockHook.d.ts.map +1 -1
- package/dist/protocol/ProvableTransactionHook.d.ts +1 -1
- package/dist/protocol/ProvableTransactionHook.d.ts.map +1 -1
- package/dist/prover/block/BlockProvable.d.ts +240 -98
- package/dist/prover/block/BlockProvable.d.ts.map +1 -1
- package/dist/prover/block/BlockProver.d.ts +8 -8
- package/dist/prover/block/BlockProver.d.ts.map +1 -1
- package/dist/prover/block/BlockProver.js +48 -40
- package/dist/prover/block/BlockTransactionPosition.d.ts +35 -35
- package/dist/prover/block/BlockTransactionPosition.js +25 -25
- package/dist/prover/block/BundleTransactionPosition.d.ts +36 -0
- package/dist/prover/block/BundleTransactionPosition.d.ts.map +1 -0
- package/dist/prover/block/BundleTransactionPosition.js +25 -0
- package/dist/prover/block/SplitPrefilledStateService.d.ts +11 -0
- package/dist/prover/block/SplitPrefilledStateService.d.ts.map +1 -0
- package/dist/prover/block/SplitPrefilledStateService.js +1 -0
- package/dist/prover/block/SplitStateService.d.ts +11 -0
- package/dist/prover/block/SplitStateService.d.ts.map +1 -0
- package/dist/prover/block/SplitStateService.js +1 -0
- package/dist/prover/block/accummulators/BlockHashMerkleTree.d.ts +35 -16
- package/dist/prover/block/accummulators/BlockHashMerkleTree.d.ts.map +1 -1
- package/dist/prover/block/acummulators/BlockHashMerkleTree.d.ts +45 -0
- package/dist/prover/block/acummulators/BlockHashMerkleTree.d.ts.map +1 -0
- package/dist/prover/block/acummulators/BlockHashMerkleTree.js +16 -0
- package/dist/prover/statetransition/StateTransitionProvable.d.ts +116 -58
- package/dist/prover/statetransition/StateTransitionProvable.d.ts.map +1 -1
- package/dist/prover/statetransition/StateTransitionProver.d.ts +8 -8
- package/dist/prover/statetransition/StateTransitionProver.d.ts.map +1 -1
- package/dist/prover/statetransition/StateTransitionProver.js +17 -22
- package/dist/prover/statetransition/StateTransitionWitnessProvider.js +1 -2
- package/dist/prover/statetransition/StateTransitionWitnessProviderReference.js +1 -2
- package/dist/settlement/DispatchContract.d.ts +20 -0
- package/dist/settlement/DispatchContract.d.ts.map +1 -0
- package/dist/settlement/DispatchContract.js +112 -0
- package/dist/settlement/OutgoingMessageArgument.d.ts +109 -0
- package/dist/settlement/OutgoingMessageArgument.d.ts.map +1 -0
- package/dist/settlement/OutgoingMessageArgument.js +32 -0
- package/dist/settlement/ProvableSettlementHook.d.ts +25 -25
- package/dist/settlement/ProvableSettlementHook.js +3 -3
- package/dist/settlement/SettlementContract.d.ts +229 -229
- package/dist/settlement/SettlementContract.js +346 -346
- package/dist/settlement/SettlementContractModule.d.ts +1 -0
- package/dist/settlement/SettlementContractModule.d.ts.map +1 -1
- package/dist/settlement/SettlementContractModule.js +7 -4
- package/dist/settlement/contracts/DispatchContract.d.ts +21 -0
- package/dist/settlement/contracts/DispatchContract.d.ts.map +1 -0
- package/dist/settlement/contracts/DispatchContract.js +111 -0
- package/dist/settlement/contracts/DispatchContractProtocolModule.js +1 -2
- package/dist/settlement/contracts/DispatchSmartContract.d.ts +8 -8
- package/dist/settlement/contracts/DispatchSmartContract.d.ts.map +1 -1
- package/dist/settlement/contracts/DispatchSmartContract.js +14 -14
- package/dist/settlement/contracts/SettlementContract.d.ts +19 -0
- package/dist/settlement/contracts/SettlementContract.d.ts.map +1 -0
- package/dist/settlement/contracts/SettlementContract.js +43 -0
- package/dist/settlement/contracts/SettlementContractProtocolModule.d.ts.map +1 -1
- package/dist/settlement/contracts/SettlementContractProtocolModule.js +4 -4
- package/dist/settlement/contracts/SettlementSmartContract.d.ts +18 -17
- package/dist/settlement/contracts/SettlementSmartContract.d.ts.map +1 -1
- package/dist/settlement/contracts/SettlementSmartContract.js +46 -35
- package/dist/settlement/messages/Deposit.d.ts +29 -4
- package/dist/settlement/messages/Deposit.d.ts.map +1 -1
- package/dist/settlement/messages/OutgoingMessageArgument.d.ts +94 -14
- package/dist/settlement/messages/OutgoingMessageArgument.d.ts.map +1 -1
- package/dist/settlement/messages/Withdrawal.d.ts +29 -4
- package/dist/settlement/messages/Withdrawal.d.ts.map +1 -1
- package/dist/settlement/modularity/ProvableSettlementHook.d.ts +2 -2
- package/dist/settlement/modularity/ProvableSettlementHook.d.ts.map +1 -1
- package/dist/settlement/modules/NetworkStateSettlementModule.d.ts +1 -1
- package/dist/settlement/modules/NetworkStateSettlementModule.d.ts.map +1 -1
- package/dist/settlement/modules/NetworkStateSettlementModule.js +3 -1
- package/dist/state/State.d.ts +4 -3
- package/dist/state/State.d.ts.map +1 -1
- package/dist/state/State.js +16 -11
- package/dist/state/StateMap.d.ts +3 -3
- package/dist/state/StateMap.d.ts.map +1 -1
- package/dist/state/StateMap.js +4 -5
- package/dist/state/StateService.d.ts +3 -3
- package/dist/state/StateService.d.ts.map +1 -1
- package/dist/state/StateServiceProvider.d.ts +3 -3
- package/dist/state/StateServiceProvider.d.ts.map +1 -1
- package/dist/state/StateServiceProvider.js +1 -3
- package/dist/state/assert/assert.d.ts +1 -1
- package/dist/state/assert/assert.d.ts.map +1 -1
- package/dist/state/assert/assert.js +4 -1
- package/dist/state/context/ProtocolMethodExecutionContext.d.ts +1 -1
- package/dist/state/context/ProtocolMethodExecutionContext.d.ts.map +1 -1
- package/dist/state/context/ProtocolMethodExecutionContext.js +1 -1
- package/dist/state/context/RuntimeMethodExecutionContext.d.ts +54 -3
- package/dist/state/context/RuntimeMethodExecutionContext.d.ts.map +1 -1
- package/dist/state/context/RuntimeMethodExecutionContext.js +4 -5
- package/dist/state/context/TransitionMethodExecutionContext.d.ts.map +1 -1
- package/dist/state/context/TransitionMethodExecutionContext.js +0 -1
- package/dist/state/context/contextExecution.d.ts +14 -0
- package/dist/state/context/contextExecution.d.ts.map +1 -0
- package/dist/state/context/contextExecution.js +30 -0
- package/dist/state/protocol/ProtocolState.d.ts.map +1 -1
- package/dist/state/protocol/ProtocolState.js +0 -3
- package/dist/utils/AppliedBatchHashList.d.ts +17 -0
- package/dist/utils/AppliedBatchHashList.d.ts.map +1 -0
- package/dist/utils/AppliedBatchHashList.js +24 -0
- package/dist/utils/MinaPrefixedProvableHashList.d.ts.map +1 -1
- package/dist/utils/MinaPrefixedProvableHashList.js +1 -0
- package/dist/utils/ProvableHashList.d.ts +1 -1
- package/dist/utils/StateTransitionReductionList.d.ts +1 -1
- package/dist/utils/StateTransitionReductionList.d.ts.map +1 -1
- package/dist/utils/StateTransitionReductionList.js +3 -3
- package/dist/utils/merkletree/InMemoryMerkleTreeStorage.d.ts +11 -0
- package/dist/utils/merkletree/InMemoryMerkleTreeStorage.d.ts.map +1 -0
- package/dist/utils/merkletree/InMemoryMerkleTreeStorage.js +12 -0
- package/dist/utils/merkletree/MerkleTreeStore.d.ts +5 -0
- package/dist/utils/merkletree/MerkleTreeStore.d.ts.map +1 -0
- package/dist/utils/merkletree/MerkleTreeStore.js +1 -0
- package/dist/utils/merkletree/RollupMerkleTree.d.ts +133 -0
- package/dist/utils/merkletree/RollupMerkleTree.d.ts.map +1 -0
- package/dist/utils/merkletree/RollupMerkleTree.js +255 -0
- package/dist/utils/utils.d.ts +1 -1
- package/dist/utils/utils.d.ts.map +1 -1
- package/dist/utils/utils.js +5 -10
- package/package.json +5 -5
- package/src/hooks/AccountStateHook.ts +11 -9
- package/src/hooks/BlockHeightHook.ts +3 -4
- package/src/hooks/LastStateRootBlockHook.ts +4 -4
- package/src/hooks/NoopBlockHook.ts +6 -5
- package/src/hooks/NoopSettlementHook.ts +2 -2
- package/src/hooks/NoopTransactionHook.ts +5 -1
- package/src/index.ts +0 -2
- package/src/model/MethodPublicOutput.ts +2 -2
- package/src/model/Option.ts +5 -1
- package/src/model/Path.ts +1 -3
- package/src/model/StateTransition.ts +1 -1
- package/src/model/Transaction.ts +2 -0
- package/src/model/network/NetworkState.ts +2 -2
- package/src/model/transaction/RuntimeTransaction.ts +5 -12
- package/src/model/transaction/SignedTransaction.ts +1 -8
- package/src/model/transaction/ValueOption.ts +1 -1
- package/src/protocol/Protocol.ts +24 -13
- package/src/protocol/ProtocolEnvironment.ts +7 -6
- package/src/protocol/ProtocolModule.ts +5 -2
- package/src/protocol/ProvableBlockHook.ts +3 -3
- package/src/protocol/ProvableTransactionHook.ts +4 -2
- package/src/protocol/TransitioningProtocolModule.ts +1 -1
- package/src/prover/block/BlockProvable.ts +3 -3
- package/src/prover/block/BlockProver.ts +78 -55
- package/src/prover/block/accummulators/BlockHashMerkleTree.ts +1 -1
- package/src/prover/statetransition/StateTransitionProvable.ts +3 -3
- package/src/prover/statetransition/StateTransitionProver.ts +23 -27
- package/src/settlement/ContractModule.ts +1 -1
- package/src/settlement/SettlementContractModule.ts +14 -9
- package/src/settlement/contracts/DispatchSmartContract.ts +15 -14
- package/src/settlement/contracts/SettlementContractProtocolModule.ts +6 -4
- package/src/settlement/contracts/SettlementSmartContract.ts +55 -34
- package/src/settlement/messages/OutgoingMessageArgument.ts +1 -0
- package/src/settlement/modularity/ProvableSettlementHook.ts +3 -4
- package/src/settlement/modules/NetworkStateSettlementModule.ts +5 -2
- package/src/state/State.ts +19 -12
- package/src/state/StateMap.ts +4 -5
- package/src/state/StateService.ts +3 -3
- package/src/state/StateServiceProvider.ts +6 -7
- package/src/state/assert/assert.ts +6 -2
- package/src/state/context/RuntimeMethodExecutionContext.ts +5 -2
- package/src/state/context/TransitionMethodExecutionContext.ts +0 -1
- package/src/state/protocol/ProtocolState.ts +1 -4
- package/src/utils/MinaPrefixedProvableHashList.ts +2 -1
- package/src/utils/ProvableHashList.ts +1 -1
- package/src/utils/StateTransitionReductionList.ts +4 -3
- package/src/utils/utils.ts +4 -9
- package/test/BlockProver.test.ts +110 -128
- package/test/Protocol.test.ts +8 -20
- package/test/State.test.ts +8 -8
- package/test/StateTransition.test.ts +56 -66
- package/test/TestingProtocol.ts +48 -0
- package/test/model/Option.test.ts +72 -0
- package/{src → test}/state/assert/assert.test.ts +4 -4
- package/test/tsconfig.json +7 -0
- package/test/utils/ProvableReductionHashList.test.ts +5 -2
- package/test/utils.test.ts +0 -3
- package/dist/hooks/TransactionFeeHook.d.ts +0 -16
- package/dist/hooks/TransactionFeeHook.d.ts.map +0 -1
- package/dist/hooks/TransactionFeeHook.js +0 -39
- package/src/hooks/SequenceStateTransactionModule.ts +0 -25
- package/src/model/Option.test.ts +0 -21
- package/src/state/context/ProtocolMethodExecutionContext.ts +0 -36
- package/test/Option.test.ts +0 -64
- package/test/settlement/SettlementContract.test.ts +0 -45
- package/tsconfig.test.json +0 -9
package/dist/model/Option.d.ts
CHANGED
|
@@ -1,26 +1,41 @@
|
|
|
1
|
-
import { Bool, Field, type FlexibleProvablePure
|
|
1
|
+
import { Bool, Field, type FlexibleProvablePure } from "o1js";
|
|
2
2
|
declare const ProvableOption_base: (new (value: {
|
|
3
|
-
isSome: import("o1js/dist/node/lib/bool").Bool;
|
|
4
|
-
value: import("o1js/dist/node/lib/field").Field;
|
|
3
|
+
isSome: import("o1js/dist/node/lib/provable/bool").Bool;
|
|
4
|
+
value: import("o1js/dist/node/lib/provable/field").Field;
|
|
5
5
|
}) => {
|
|
6
|
-
isSome: import("o1js/dist/node/lib/bool").Bool;
|
|
7
|
-
value: import("o1js/dist/node/lib/field").Field;
|
|
6
|
+
isSome: import("o1js/dist/node/lib/provable/bool").Bool;
|
|
7
|
+
value: import("o1js/dist/node/lib/provable/field").Field;
|
|
8
8
|
}) & {
|
|
9
9
|
_isStruct: true;
|
|
10
|
-
} &
|
|
11
|
-
isSome: import("o1js/dist/node/lib/bool").Bool;
|
|
12
|
-
value: import("o1js/dist/node/lib/field").Field;
|
|
13
|
-
}
|
|
10
|
+
} & Omit<import("o1js/dist/node/lib/provable/types/provable-intf").Provable<{
|
|
11
|
+
isSome: import("o1js/dist/node/lib/provable/bool").Bool;
|
|
12
|
+
value: import("o1js/dist/node/lib/provable/field").Field;
|
|
13
|
+
}, {
|
|
14
|
+
isSome: boolean;
|
|
15
|
+
value: bigint;
|
|
16
|
+
}>, "fromFields"> & {
|
|
17
|
+
fromFields: (fields: import("o1js/dist/node/lib/provable/field").Field[]) => {
|
|
18
|
+
isSome: import("o1js/dist/node/lib/provable/bool").Bool;
|
|
19
|
+
value: import("o1js/dist/node/lib/provable/field").Field;
|
|
20
|
+
};
|
|
21
|
+
} & {
|
|
22
|
+
fromValue: (value: {
|
|
23
|
+
isSome: boolean | import("o1js/dist/node/lib/provable/bool").Bool;
|
|
24
|
+
value: string | number | bigint | import("o1js/dist/node/lib/provable/field").Field;
|
|
25
|
+
}) => {
|
|
26
|
+
isSome: import("o1js/dist/node/lib/provable/bool").Bool;
|
|
27
|
+
value: import("o1js/dist/node/lib/provable/field").Field;
|
|
28
|
+
};
|
|
14
29
|
toInput: (x: {
|
|
15
|
-
isSome: import("o1js/dist/node/lib/bool").Bool;
|
|
16
|
-
value: import("o1js/dist/node/lib/field").Field;
|
|
30
|
+
isSome: import("o1js/dist/node/lib/provable/bool").Bool;
|
|
31
|
+
value: import("o1js/dist/node/lib/provable/field").Field;
|
|
17
32
|
}) => {
|
|
18
|
-
fields?: import("o1js/dist/node/lib/field").Field[] | undefined;
|
|
19
|
-
packed?: [import("o1js/dist/node/lib/field").Field, number][] | undefined;
|
|
33
|
+
fields?: import("o1js/dist/node/lib/provable/field").Field[] | undefined;
|
|
34
|
+
packed?: [import("o1js/dist/node/lib/provable/field").Field, number][] | undefined;
|
|
20
35
|
};
|
|
21
36
|
toJSON: (x: {
|
|
22
|
-
isSome: import("o1js/dist/node/lib/bool").Bool;
|
|
23
|
-
value: import("o1js/dist/node/lib/field").Field;
|
|
37
|
+
isSome: import("o1js/dist/node/lib/provable/bool").Bool;
|
|
38
|
+
value: import("o1js/dist/node/lib/provable/field").Field;
|
|
24
39
|
}) => {
|
|
25
40
|
isSome: boolean;
|
|
26
41
|
value: string;
|
|
@@ -29,8 +44,12 @@ declare const ProvableOption_base: (new (value: {
|
|
|
29
44
|
isSome: boolean;
|
|
30
45
|
value: string;
|
|
31
46
|
}) => {
|
|
32
|
-
isSome: import("o1js/dist/node/lib/bool").Bool;
|
|
33
|
-
value: import("o1js/dist/node/lib/field").Field;
|
|
47
|
+
isSome: import("o1js/dist/node/lib/provable/bool").Bool;
|
|
48
|
+
value: import("o1js/dist/node/lib/provable/field").Field;
|
|
49
|
+
};
|
|
50
|
+
empty: () => {
|
|
51
|
+
isSome: import("o1js/dist/node/lib/provable/bool").Bool;
|
|
52
|
+
value: import("o1js/dist/node/lib/provable/field").Field;
|
|
34
53
|
};
|
|
35
54
|
};
|
|
36
55
|
export declare class ProvableOption extends ProvableOption_base {
|
|
@@ -45,7 +64,7 @@ export declare abstract class OptionBase {
|
|
|
45
64
|
/**
|
|
46
65
|
* @returns Tree representation of the current value
|
|
47
66
|
*/
|
|
48
|
-
get treeValue(): import("o1js/dist/node/lib/field").Field;
|
|
67
|
+
get treeValue(): import("o1js/dist/node/lib/provable/field").Field;
|
|
49
68
|
forceSome(): void;
|
|
50
69
|
/**
|
|
51
70
|
* Returns the `to`-value as decoded as a list of fields
|
|
@@ -88,8 +107,8 @@ export declare class Option<Value> extends OptionBase {
|
|
|
88
107
|
/**
|
|
89
108
|
* @returns Empty / none option
|
|
90
109
|
*/
|
|
91
|
-
static none(): Option<import("o1js/dist/node/lib/field").Field>;
|
|
92
|
-
constructor(isSome: Bool, value: Value, valueType: FlexibleProvablePure<Value>, isForcedSome?: import("o1js/dist/node/lib/bool").Bool);
|
|
110
|
+
static none(): Option<import("o1js/dist/node/lib/provable/field").Field>;
|
|
111
|
+
constructor(isSome: Bool, value: Value, valueType: FlexibleProvablePure<Value>, isForcedSome?: import("o1js/dist/node/lib/provable/bool").Bool);
|
|
93
112
|
encodeValueToFields(): Field[];
|
|
94
113
|
clone(): Option<Value>;
|
|
95
114
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Option.d.ts","sourceRoot":"","sources":["../../src/model/Option.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,KAAK,EACL,KAAK,oBAAoB,
|
|
1
|
+
{"version":3,"file":"Option.d.ts","sourceRoot":"","sources":["../../src/model/Option.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,KAAK,EACL,KAAK,oBAAoB,EAK1B,MAAM,MAAM,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEd,qBAAa,cAAe,SAAQ,mBAGlC;IACO,MAAM;CAId;AAED,8BAAsB,UAAU;IAErB,MAAM,EAAE,IAAI;IACZ,YAAY,EAAE,IAAI;IAF3B,SAAS,aACA,MAAM,EAAE,IAAI,EACZ,YAAY,EAAE,IAAI;IAG3B,SAAS,CAAC,QAAQ,CAAC,mBAAmB,IAAI,KAAK,EAAE;IAEjD,SAAS,CAAC,QAAQ,CAAC,KAAK,IAAI,UAAU;IAEtC;;OAEG;IACH,IAAW,SAAS,sDAQnB;IAEM,SAAS;IAKhB;;;OAGG;IACI,QAAQ,IAAI,KAAK,EAAE;IAO1B;;OAEG;IACI,UAAU;IAOV,MAAM;;;;;CASd;AAED;;GAEG;AACH,qBAAa,MAAM,CAAC,KAAK,CAAE,SAAQ,UAAU;IAwClC,KAAK,EAAE,KAAK;IACZ,SAAS,EAAE,oBAAoB,CAAC,KAAK,CAAC;IAxC/C;;;;;;;OAOG;WACW,IAAI,CAAC,KAAK,EACtB,MAAM,EAAE,IAAI,EACZ,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,oBAAoB,CAAC,KAAK,CAAC;IAKxC;;;;;;OAMG;WACW,SAAS,CAAC,KAAK,EAC3B,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,oBAAoB,CAAC,KAAK,CAAC;IAKxC;;OAEG;WACW,IAAI;gBAKhB,MAAM,EAAE,IAAI,EACL,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,oBAAoB,CAAC,KAAK,CAAC,EAC7C,YAAY,kDAAc;IAKrB,mBAAmB,IAAI,KAAK,EAAE;IAI9B,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC;IAS7B;;;OAGG;IACI,MAAM,CAAC,YAAY,EAAE,KAAK,GAAG,KAAK;IASlC,UAAU;CAelB"}
|
package/dist/model/Option.js
CHANGED
|
@@ -102,6 +102,7 @@ export class Option extends OptionBase {
|
|
|
102
102
|
return Provable.if(this.isSome, this.valueType, this.value, defaultValue);
|
|
103
103
|
}
|
|
104
104
|
toConstant() {
|
|
105
|
+
// eslint-disable-next-line @typescript-eslint/consistent-type-assertions
|
|
105
106
|
const valueConstant = this.valueType.fromFields(this.valueType.toFields(this.value).map((field) => field.toConstant()));
|
|
106
107
|
const boolConstant = (bool) => Bool.fromFields([bool.toField().toConstant()]);
|
|
107
108
|
return new Option(boolConstant(this.isSome), valueConstant, this.valueType, boolConstant(this.isForcedSome));
|
package/dist/model/Path.d.ts
CHANGED
|
@@ -9,7 +9,7 @@ export declare class Path {
|
|
|
9
9
|
* @param value
|
|
10
10
|
* @returns Field representation of the provided value
|
|
11
11
|
*/
|
|
12
|
-
static toField(value: string): import("o1js/dist/node/lib/field").Field;
|
|
12
|
+
static toField(value: string): import("o1js/dist/node/lib/provable/field").Field;
|
|
13
13
|
/**
|
|
14
14
|
* Encodes a class name and its property name into a Field
|
|
15
15
|
*
|
package/dist/model/Path.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Path.d.ts","sourceRoot":"","sources":["../../src/model/Path.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Path.d.ts","sourceRoot":"","sources":["../../src/model/Path.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,KAAK,oBAAoB,EAAY,MAAM,MAAM,CAAC;AAIlE;;GAEG;AACH,qBAAa,IAAI;IACf;;;;;OAKG;WACW,OAAO,CAAC,KAAK,EAAE,MAAM;IAInC;;;;;;OAMG;WACW,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,KAAK;IAQzE;;;;;;;OAOG;WACW,OAAO,CAAC,OAAO,EAC3B,IAAI,EAAE,KAAK,EACX,OAAO,EAAE,oBAAoB,CAAC,OAAO,CAAC,EACtC,GAAG,EAAE,OAAO,GACX,KAAK;CAIT"}
|
package/dist/model/Path.js
CHANGED
|
@@ -1,30 +1,61 @@
|
|
|
1
|
-
import { Field
|
|
1
|
+
import { Field } from "o1js";
|
|
2
2
|
import { Option, ProvableOption } from "./Option";
|
|
3
3
|
declare const ProvableStateTransition_base: (new (value: {
|
|
4
|
-
path: import("o1js/dist/node/lib/field").Field;
|
|
4
|
+
path: import("o1js/dist/node/lib/provable/field").Field;
|
|
5
5
|
from: ProvableOption;
|
|
6
6
|
to: ProvableOption;
|
|
7
7
|
}) => {
|
|
8
|
-
path: import("o1js/dist/node/lib/field").Field;
|
|
8
|
+
path: import("o1js/dist/node/lib/provable/field").Field;
|
|
9
9
|
from: ProvableOption;
|
|
10
10
|
to: ProvableOption;
|
|
11
11
|
}) & {
|
|
12
12
|
_isStruct: true;
|
|
13
|
-
} &
|
|
14
|
-
path: import("o1js/dist/node/lib/field").Field;
|
|
13
|
+
} & Omit<import("o1js/dist/node/lib/provable/types/provable-intf").Provable<{
|
|
14
|
+
path: import("o1js/dist/node/lib/provable/field").Field;
|
|
15
15
|
from: ProvableOption;
|
|
16
16
|
to: ProvableOption;
|
|
17
|
-
}
|
|
17
|
+
}, {
|
|
18
|
+
path: bigint;
|
|
19
|
+
from: {
|
|
20
|
+
isSome: boolean;
|
|
21
|
+
value: bigint;
|
|
22
|
+
};
|
|
23
|
+
to: {
|
|
24
|
+
isSome: boolean;
|
|
25
|
+
value: bigint;
|
|
26
|
+
};
|
|
27
|
+
}>, "fromFields"> & {
|
|
28
|
+
fromFields: (fields: import("o1js/dist/node/lib/provable/field").Field[]) => {
|
|
29
|
+
path: import("o1js/dist/node/lib/provable/field").Field;
|
|
30
|
+
from: ProvableOption;
|
|
31
|
+
to: ProvableOption;
|
|
32
|
+
};
|
|
33
|
+
} & {
|
|
34
|
+
fromValue: (value: {
|
|
35
|
+
path: string | number | bigint | import("o1js/dist/node/lib/provable/field").Field;
|
|
36
|
+
from: ProvableOption | {
|
|
37
|
+
isSome: boolean | import("o1js/dist/node/lib/provable/bool").Bool;
|
|
38
|
+
value: string | number | bigint | import("o1js/dist/node/lib/provable/field").Field;
|
|
39
|
+
};
|
|
40
|
+
to: ProvableOption | {
|
|
41
|
+
isSome: boolean | import("o1js/dist/node/lib/provable/bool").Bool;
|
|
42
|
+
value: string | number | bigint | import("o1js/dist/node/lib/provable/field").Field;
|
|
43
|
+
};
|
|
44
|
+
}) => {
|
|
45
|
+
path: import("o1js/dist/node/lib/provable/field").Field;
|
|
46
|
+
from: ProvableOption;
|
|
47
|
+
to: ProvableOption;
|
|
48
|
+
};
|
|
18
49
|
toInput: (x: {
|
|
19
|
-
path: import("o1js/dist/node/lib/field").Field;
|
|
50
|
+
path: import("o1js/dist/node/lib/provable/field").Field;
|
|
20
51
|
from: ProvableOption;
|
|
21
52
|
to: ProvableOption;
|
|
22
53
|
}) => {
|
|
23
|
-
fields?: import("o1js/dist/node/lib/field").Field[] | undefined;
|
|
24
|
-
packed?: [import("o1js/dist/node/lib/field").Field, number][] | undefined;
|
|
54
|
+
fields?: import("o1js/dist/node/lib/provable/field").Field[] | undefined;
|
|
55
|
+
packed?: [import("o1js/dist/node/lib/provable/field").Field, number][] | undefined;
|
|
25
56
|
};
|
|
26
57
|
toJSON: (x: {
|
|
27
|
-
path: import("o1js/dist/node/lib/field").Field;
|
|
58
|
+
path: import("o1js/dist/node/lib/provable/field").Field;
|
|
28
59
|
from: ProvableOption;
|
|
29
60
|
to: ProvableOption;
|
|
30
61
|
}) => {
|
|
@@ -49,7 +80,12 @@ declare const ProvableStateTransition_base: (new (value: {
|
|
|
49
80
|
value: string;
|
|
50
81
|
};
|
|
51
82
|
}) => {
|
|
52
|
-
path: import("o1js/dist/node/lib/field").Field;
|
|
83
|
+
path: import("o1js/dist/node/lib/provable/field").Field;
|
|
84
|
+
from: ProvableOption;
|
|
85
|
+
to: ProvableOption;
|
|
86
|
+
};
|
|
87
|
+
empty: () => {
|
|
88
|
+
path: import("o1js/dist/node/lib/provable/field").Field;
|
|
53
89
|
from: ProvableOption;
|
|
54
90
|
to: ProvableOption;
|
|
55
91
|
};
|
|
@@ -74,7 +110,7 @@ export declare class StateTransition<Value> {
|
|
|
74
110
|
static fromTo<Value>(path: Field, fromValue: Option<Value>, toValue: Option<Value>): StateTransition<Value>;
|
|
75
111
|
constructor(path: Field, fromValue: Option<Value>, toValue: Option<Field> | Option<Value>);
|
|
76
112
|
get from(): Option<Value>;
|
|
77
|
-
get to(): Option<import("o1js/dist/node/lib/field").Field> | Option<Value>;
|
|
113
|
+
get to(): Option<import("o1js/dist/node/lib/provable/field").Field> | Option<Value>;
|
|
78
114
|
/**
|
|
79
115
|
* Converts a StateTransition to a ProvableStateTransition,
|
|
80
116
|
* while enforcing the 'from' property to be 'Some' in all cases.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StateTransition.d.ts","sourceRoot":"","sources":["../../src/model/StateTransition.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"StateTransition.d.ts","sourceRoot":"","sources":["../../src/model/StateTransition.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAU,MAAM,MAAM,CAAC;AAErC,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAElD;;;;GAIG;AACH,qBAAa,uBAAwB,SAAQ,4BAQ3C;WACc,KAAK,IAAI,uBAAuB;CAO/C;AAED;;;GAGG;AACH,qBAAa,eAAe,CAAC,KAAK;IAcvB,IAAI,EAAE,KAAK;IACX,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC;WAfjC,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC;WAIjD,MAAM,CAAC,KAAK,EACxB,IAAI,EAAE,KAAK,EACX,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,EACxB,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC;gBAMf,IAAI,EAAE,KAAK,EACX,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,EACxB,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC;IAG/C,IAAW,IAAI,kBAId;IAED,IAAW,EAAE,8EAEZ;IAED;;;OAGG;IACI,UAAU,IAAI,uBAAuB;IAQrC,MAAM;;;;;;;;;;;;;IAQN,UAAU,IAAI,eAAe,CAAC,KAAK,CAAC;CAO5C"}
|
|
@@ -7,29 +7,43 @@ export declare class StateTransitionType {
|
|
|
7
7
|
static isProtocol(type: boolean): boolean;
|
|
8
8
|
}
|
|
9
9
|
declare const ProvableStateTransitionType_base: (new (value: {
|
|
10
|
-
type: import("o1js/dist/node/lib/bool").Bool;
|
|
10
|
+
type: import("o1js/dist/node/lib/provable/bool").Bool;
|
|
11
11
|
}) => {
|
|
12
|
-
type: import("o1js/dist/node/lib/bool").Bool;
|
|
12
|
+
type: import("o1js/dist/node/lib/provable/bool").Bool;
|
|
13
13
|
}) & {
|
|
14
14
|
_isStruct: true;
|
|
15
|
-
} & import("o1js/dist/node/
|
|
16
|
-
type: import("o1js/dist/node/lib/bool").Bool;
|
|
17
|
-
}
|
|
15
|
+
} & Omit<import("o1js/dist/node/lib/provable/types/provable-intf").Provable<{
|
|
16
|
+
type: import("o1js/dist/node/lib/provable/bool").Bool;
|
|
17
|
+
}, {
|
|
18
|
+
type: boolean;
|
|
19
|
+
}>, "fromFields"> & {
|
|
20
|
+
fromFields: (fields: import("o1js/dist/node/lib/provable/field").Field[]) => {
|
|
21
|
+
type: import("o1js/dist/node/lib/provable/bool").Bool;
|
|
22
|
+
};
|
|
23
|
+
} & {
|
|
24
|
+
fromValue: (value: {
|
|
25
|
+
type: boolean | import("o1js/dist/node/lib/provable/bool").Bool;
|
|
26
|
+
}) => {
|
|
27
|
+
type: import("o1js/dist/node/lib/provable/bool").Bool;
|
|
28
|
+
};
|
|
18
29
|
toInput: (x: {
|
|
19
|
-
type: import("o1js/dist/node/lib/bool").Bool;
|
|
30
|
+
type: import("o1js/dist/node/lib/provable/bool").Bool;
|
|
20
31
|
}) => {
|
|
21
|
-
fields?: import("o1js/dist/node/lib/field").Field[] | undefined;
|
|
22
|
-
packed?: [import("o1js/dist/node/lib/field").Field, number][] | undefined;
|
|
32
|
+
fields?: import("o1js/dist/node/lib/provable/field").Field[] | undefined;
|
|
33
|
+
packed?: [import("o1js/dist/node/lib/provable/field").Field, number][] | undefined;
|
|
23
34
|
};
|
|
24
35
|
toJSON: (x: {
|
|
25
|
-
type: import("o1js/dist/node/lib/bool").Bool;
|
|
36
|
+
type: import("o1js/dist/node/lib/provable/bool").Bool;
|
|
26
37
|
}) => {
|
|
27
38
|
type: boolean;
|
|
28
39
|
};
|
|
29
40
|
fromJSON: (x: {
|
|
30
41
|
type: boolean;
|
|
31
42
|
}) => {
|
|
32
|
-
type: import("o1js/dist/node/lib/bool").Bool;
|
|
43
|
+
type: import("o1js/dist/node/lib/provable/bool").Bool;
|
|
44
|
+
};
|
|
45
|
+
empty: () => {
|
|
46
|
+
type: import("o1js/dist/node/lib/provable/bool").Bool;
|
|
33
47
|
};
|
|
34
48
|
};
|
|
35
49
|
export declare class ProvableStateTransitionType extends ProvableStateTransitionType_base {
|
|
@@ -46,16 +60,55 @@ declare const StateTransitionProvableBatch_base: (new (value: {
|
|
|
46
60
|
transitionTypes: ProvableStateTransitionType[];
|
|
47
61
|
}) & {
|
|
48
62
|
_isStruct: true;
|
|
49
|
-
} & import("o1js/dist/node/
|
|
63
|
+
} & Omit<import("o1js/dist/node/lib/provable/types/provable-intf").Provable<{
|
|
50
64
|
batch: ProvableStateTransition[];
|
|
51
65
|
transitionTypes: ProvableStateTransitionType[];
|
|
52
|
-
}
|
|
66
|
+
}, {
|
|
67
|
+
batch: {
|
|
68
|
+
path: bigint;
|
|
69
|
+
from: {
|
|
70
|
+
isSome: boolean;
|
|
71
|
+
value: bigint;
|
|
72
|
+
};
|
|
73
|
+
to: {
|
|
74
|
+
isSome: boolean;
|
|
75
|
+
value: bigint;
|
|
76
|
+
};
|
|
77
|
+
}[];
|
|
78
|
+
transitionTypes: {
|
|
79
|
+
type: boolean;
|
|
80
|
+
}[];
|
|
81
|
+
}>, "fromFields"> & {
|
|
82
|
+
fromFields: (fields: import("o1js/dist/node/lib/provable/field").Field[]) => {
|
|
83
|
+
batch: ProvableStateTransition[];
|
|
84
|
+
transitionTypes: ProvableStateTransitionType[];
|
|
85
|
+
};
|
|
86
|
+
} & {
|
|
87
|
+
fromValue: (value: {
|
|
88
|
+
batch: ProvableStateTransition[] | {
|
|
89
|
+
path: bigint;
|
|
90
|
+
from: {
|
|
91
|
+
isSome: boolean;
|
|
92
|
+
value: bigint;
|
|
93
|
+
};
|
|
94
|
+
to: {
|
|
95
|
+
isSome: boolean;
|
|
96
|
+
value: bigint;
|
|
97
|
+
};
|
|
98
|
+
}[];
|
|
99
|
+
transitionTypes: ProvableStateTransitionType[] | {
|
|
100
|
+
type: boolean;
|
|
101
|
+
}[];
|
|
102
|
+
}) => {
|
|
103
|
+
batch: ProvableStateTransition[];
|
|
104
|
+
transitionTypes: ProvableStateTransitionType[];
|
|
105
|
+
};
|
|
53
106
|
toInput: (x: {
|
|
54
107
|
batch: ProvableStateTransition[];
|
|
55
108
|
transitionTypes: ProvableStateTransitionType[];
|
|
56
109
|
}) => {
|
|
57
|
-
fields?: import("o1js/dist/node/lib/field").Field[] | undefined;
|
|
58
|
-
packed?: [import("o1js/dist/node/lib/field").Field, number][] | undefined;
|
|
110
|
+
fields?: import("o1js/dist/node/lib/provable/field").Field[] | undefined;
|
|
111
|
+
packed?: [import("o1js/dist/node/lib/provable/field").Field, number][] | undefined;
|
|
59
112
|
};
|
|
60
113
|
toJSON: (x: {
|
|
61
114
|
batch: ProvableStateTransition[];
|
|
@@ -95,6 +148,10 @@ declare const StateTransitionProvableBatch_base: (new (value: {
|
|
|
95
148
|
batch: ProvableStateTransition[];
|
|
96
149
|
transitionTypes: ProvableStateTransitionType[];
|
|
97
150
|
};
|
|
151
|
+
empty: () => {
|
|
152
|
+
batch: ProvableStateTransition[];
|
|
153
|
+
transitionTypes: ProvableStateTransitionType[];
|
|
154
|
+
};
|
|
98
155
|
};
|
|
99
156
|
/**
|
|
100
157
|
* A Batch of StateTransitions to be consumed by the StateTransitionProver
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StateTransitionProvableBatch.d.ts","sourceRoot":"","sources":["../../src/model/StateTransitionProvableBatch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAoB,MAAM,MAAM,CAAC;AAK9C,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAE/D,qBAAa,mBAAmB;IAC9B,gBAAuB,MAAM,QAAQ;IAErC,gBAAuB,QAAQ,SAAS;WAE1B,QAAQ,CAAC,IAAI,EAAE,OAAO;WAItB,UAAU,CAAC,IAAI,EAAE,OAAO;CAGvC
|
|
1
|
+
{"version":3,"file":"StateTransitionProvableBatch.d.ts","sourceRoot":"","sources":["../../src/model/StateTransitionProvableBatch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAoB,MAAM,MAAM,CAAC;AAK9C,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAE/D,qBAAa,mBAAmB;IAC9B,gBAAuB,MAAM,QAAQ;IAErC,gBAAuB,QAAQ,SAAS;WAE1B,QAAQ,CAAC,IAAI,EAAE,OAAO;WAItB,UAAU,CAAC,IAAI,EAAE,OAAO;CAGvC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAED,qBAAa,2BAA4B,SAAQ,gCAE/C;IACA,WAAkB,MAAM,IAAI,2BAA2B,CAItD;IAED,WAAkB,QAAQ,IAAI,2BAA2B,CAIxD;IAEM,QAAQ,IAAI,IAAI;IAIhB,UAAU,IAAI,IAAI;CAG1B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAED;;;;;;GAMG;AACH,qBAAa,4BAA6B,SAAQ,iCAUhD;WACc,YAAY,CACxB,WAAW,EAAE;QACX,UAAU,EAAE,uBAAuB,CAAC;QACpC,IAAI,EAAE,2BAA2B,CAAC;KACnC,EAAE,GACF,4BAA4B;WAyBjB,eAAe,CAC3B,WAAW,EAAE,uBAAuB,EAAE,EACtC,mBAAmB,EAAE,uBAAuB,EAAE,GAC7C,4BAA4B;IAsB/B,OAAO;CAMR"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { StateTransition } from "./StateTransition";
|
|
2
|
-
export declare function reduceStateTransitions(transitions: StateTransition<unknown>[]): StateTransition<unknown>[];
|
|
1
|
+
import { StateTransition } from "./StateTransition";
|
|
2
|
+
export declare function reduceStateTransitions(transitions: StateTransition<unknown>[]): StateTransition<unknown>[];
|
|
3
3
|
//# sourceMappingURL=StateTransitionReduction.d.ts.map
|
|
@@ -1,26 +1,26 @@
|
|
|
1
|
-
import { StateTransition } from "./StateTransition";
|
|
2
|
-
export function reduceStateTransitions(transitions) {
|
|
3
|
-
const reduced = [];
|
|
4
|
-
for (const st of transitions) {
|
|
5
|
-
if (reduced.length === 0) {
|
|
6
|
-
reduced.push(st);
|
|
7
|
-
continue;
|
|
8
|
-
}
|
|
9
|
-
const last = reduced.at(-1);
|
|
10
|
-
if (last.path.equals(st.path).toBoolean()) {
|
|
11
|
-
if (st.toValue.isSome.toBoolean()) {
|
|
12
|
-
reduced.pop();
|
|
13
|
-
reduced.push(new StateTransition(st.path, last.fromValue, st.toValue));
|
|
14
|
-
}
|
|
15
|
-
else {
|
|
16
|
-
// Do nothing, because we discard that ST
|
|
17
|
-
// { from: 5, to: 10 }, { from: 10, to: none }
|
|
18
|
-
// cancel the 2nd
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
else {
|
|
22
|
-
reduced.push(st);
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
return reduced;
|
|
26
|
-
}
|
|
1
|
+
import { StateTransition } from "./StateTransition";
|
|
2
|
+
export function reduceStateTransitions(transitions) {
|
|
3
|
+
const reduced = [];
|
|
4
|
+
for (const st of transitions) {
|
|
5
|
+
if (reduced.length === 0) {
|
|
6
|
+
reduced.push(st);
|
|
7
|
+
continue;
|
|
8
|
+
}
|
|
9
|
+
const last = reduced.at(-1);
|
|
10
|
+
if (last.path.equals(st.path).toBoolean()) {
|
|
11
|
+
if (st.toValue.isSome.toBoolean()) {
|
|
12
|
+
reduced.pop();
|
|
13
|
+
reduced.push(new StateTransition(st.path, last.fromValue, st.toValue));
|
|
14
|
+
}
|
|
15
|
+
else {
|
|
16
|
+
// Do nothing, because we discard that ST
|
|
17
|
+
// { from: 5, to: 10 }, { from: 10, to: none }
|
|
18
|
+
// cancel the 2nd
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
else {
|
|
22
|
+
reduced.push(st);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
return reduced;
|
|
26
|
+
}
|
|
@@ -5,14 +5,25 @@ declare const CurrentBlock_base: (new (value: {
|
|
|
5
5
|
height: UInt64;
|
|
6
6
|
}) & {
|
|
7
7
|
_isStruct: true;
|
|
8
|
-
} & import("o1js/dist/node/
|
|
8
|
+
} & Omit<import("o1js/dist/node/lib/provable/types/provable-intf").Provable<{
|
|
9
9
|
height: UInt64;
|
|
10
|
-
}
|
|
10
|
+
}, {
|
|
11
|
+
height: bigint;
|
|
12
|
+
}>, "fromFields"> & {
|
|
13
|
+
fromFields: (fields: import("o1js/dist/node/lib/provable/field").Field[]) => {
|
|
14
|
+
height: UInt64;
|
|
15
|
+
};
|
|
16
|
+
} & {
|
|
17
|
+
fromValue: (value: {
|
|
18
|
+
height: bigint | UInt64;
|
|
19
|
+
}) => {
|
|
20
|
+
height: UInt64;
|
|
21
|
+
};
|
|
11
22
|
toInput: (x: {
|
|
12
23
|
height: UInt64;
|
|
13
24
|
}) => {
|
|
14
|
-
fields?: import("o1js/dist/node/lib/field").Field[] | undefined;
|
|
15
|
-
packed?: [import("o1js/dist/node/lib/field").Field, number][] | undefined;
|
|
25
|
+
fields?: import("o1js/dist/node/lib/provable/field").Field[] | undefined;
|
|
26
|
+
packed?: [import("o1js/dist/node/lib/provable/field").Field, number][] | undefined;
|
|
16
27
|
};
|
|
17
28
|
toJSON: (x: {
|
|
18
29
|
height: UInt64;
|
|
@@ -24,33 +35,50 @@ declare const CurrentBlock_base: (new (value: {
|
|
|
24
35
|
}) => {
|
|
25
36
|
height: UInt64;
|
|
26
37
|
};
|
|
38
|
+
empty: () => {
|
|
39
|
+
height: UInt64;
|
|
40
|
+
};
|
|
27
41
|
};
|
|
28
42
|
export declare class CurrentBlock extends CurrentBlock_base {
|
|
29
43
|
}
|
|
30
44
|
declare const PreviousBlock_base: (new (value: {
|
|
31
|
-
rootHash: import("o1js/dist/node/lib/field").Field;
|
|
45
|
+
rootHash: import("o1js/dist/node/lib/provable/field").Field;
|
|
32
46
|
}) => {
|
|
33
|
-
rootHash: import("o1js/dist/node/lib/field").Field;
|
|
47
|
+
rootHash: import("o1js/dist/node/lib/provable/field").Field;
|
|
34
48
|
}) & {
|
|
35
49
|
_isStruct: true;
|
|
36
|
-
} & import("o1js/dist/node/
|
|
37
|
-
rootHash: import("o1js/dist/node/lib/field").Field;
|
|
38
|
-
}
|
|
50
|
+
} & Omit<import("o1js/dist/node/lib/provable/types/provable-intf").Provable<{
|
|
51
|
+
rootHash: import("o1js/dist/node/lib/provable/field").Field;
|
|
52
|
+
}, {
|
|
53
|
+
rootHash: bigint;
|
|
54
|
+
}>, "fromFields"> & {
|
|
55
|
+
fromFields: (fields: import("o1js/dist/node/lib/provable/field").Field[]) => {
|
|
56
|
+
rootHash: import("o1js/dist/node/lib/provable/field").Field;
|
|
57
|
+
};
|
|
58
|
+
} & {
|
|
59
|
+
fromValue: (value: {
|
|
60
|
+
rootHash: string | number | bigint | import("o1js/dist/node/lib/provable/field").Field;
|
|
61
|
+
}) => {
|
|
62
|
+
rootHash: import("o1js/dist/node/lib/provable/field").Field;
|
|
63
|
+
};
|
|
39
64
|
toInput: (x: {
|
|
40
|
-
rootHash: import("o1js/dist/node/lib/field").Field;
|
|
65
|
+
rootHash: import("o1js/dist/node/lib/provable/field").Field;
|
|
41
66
|
}) => {
|
|
42
|
-
fields?: import("o1js/dist/node/lib/field").Field[] | undefined;
|
|
43
|
-
packed?: [import("o1js/dist/node/lib/field").Field, number][] | undefined;
|
|
67
|
+
fields?: import("o1js/dist/node/lib/provable/field").Field[] | undefined;
|
|
68
|
+
packed?: [import("o1js/dist/node/lib/provable/field").Field, number][] | undefined;
|
|
44
69
|
};
|
|
45
70
|
toJSON: (x: {
|
|
46
|
-
rootHash: import("o1js/dist/node/lib/field").Field;
|
|
71
|
+
rootHash: import("o1js/dist/node/lib/provable/field").Field;
|
|
47
72
|
}) => {
|
|
48
73
|
rootHash: string;
|
|
49
74
|
};
|
|
50
75
|
fromJSON: (x: {
|
|
51
76
|
rootHash: string;
|
|
52
77
|
}) => {
|
|
53
|
-
rootHash: import("o1js/dist/node/lib/field").Field;
|
|
78
|
+
rootHash: import("o1js/dist/node/lib/provable/field").Field;
|
|
79
|
+
};
|
|
80
|
+
empty: () => {
|
|
81
|
+
rootHash: import("o1js/dist/node/lib/provable/field").Field;
|
|
54
82
|
};
|
|
55
83
|
};
|
|
56
84
|
export declare class PreviousBlock extends PreviousBlock_base {
|
|
@@ -63,16 +91,39 @@ declare const NetworkState_base: (new (value: {
|
|
|
63
91
|
previous: PreviousBlock;
|
|
64
92
|
}) & {
|
|
65
93
|
_isStruct: true;
|
|
66
|
-
} & import("o1js/dist/node/
|
|
94
|
+
} & Omit<import("o1js/dist/node/lib/provable/types/provable-intf").Provable<{
|
|
67
95
|
block: CurrentBlock;
|
|
68
96
|
previous: PreviousBlock;
|
|
69
|
-
}
|
|
97
|
+
}, {
|
|
98
|
+
block: {
|
|
99
|
+
height: bigint;
|
|
100
|
+
};
|
|
101
|
+
previous: {
|
|
102
|
+
rootHash: bigint;
|
|
103
|
+
};
|
|
104
|
+
}>, "fromFields"> & {
|
|
105
|
+
fromFields: (fields: import("o1js/dist/node/lib/provable/field").Field[]) => {
|
|
106
|
+
block: CurrentBlock;
|
|
107
|
+
previous: PreviousBlock;
|
|
108
|
+
};
|
|
109
|
+
} & {
|
|
110
|
+
fromValue: (value: {
|
|
111
|
+
block: CurrentBlock | {
|
|
112
|
+
height: bigint | UInt64;
|
|
113
|
+
};
|
|
114
|
+
previous: PreviousBlock | {
|
|
115
|
+
rootHash: string | number | bigint | import("o1js/dist/node/lib/provable/field").Field;
|
|
116
|
+
};
|
|
117
|
+
}) => {
|
|
118
|
+
block: CurrentBlock;
|
|
119
|
+
previous: PreviousBlock;
|
|
120
|
+
};
|
|
70
121
|
toInput: (x: {
|
|
71
122
|
block: CurrentBlock;
|
|
72
123
|
previous: PreviousBlock;
|
|
73
124
|
}) => {
|
|
74
|
-
fields?: import("o1js/dist/node/lib/field").Field[] | undefined;
|
|
75
|
-
packed?: [import("o1js/dist/node/lib/field").Field, number][] | undefined;
|
|
125
|
+
fields?: import("o1js/dist/node/lib/provable/field").Field[] | undefined;
|
|
126
|
+
packed?: [import("o1js/dist/node/lib/provable/field").Field, number][] | undefined;
|
|
76
127
|
};
|
|
77
128
|
toJSON: (x: {
|
|
78
129
|
block: CurrentBlock;
|
|
@@ -96,6 +147,10 @@ declare const NetworkState_base: (new (value: {
|
|
|
96
147
|
block: CurrentBlock;
|
|
97
148
|
previous: PreviousBlock;
|
|
98
149
|
};
|
|
150
|
+
empty: () => {
|
|
151
|
+
block: CurrentBlock;
|
|
152
|
+
previous: PreviousBlock;
|
|
153
|
+
};
|
|
99
154
|
};
|
|
100
155
|
export declare class NetworkState extends NetworkState_base {
|
|
101
156
|
hash(): Field;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NetworkState.d.ts","sourceRoot":"","sources":["../../../src/model/network/NetworkState.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAoB,MAAM,EAAE,MAAM,MAAM,CAAC
|
|
1
|
+
{"version":3,"file":"NetworkState.d.ts","sourceRoot":"","sources":["../../../src/model/network/NetworkState.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAoB,MAAM,EAAE,MAAM,MAAM,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGvD,qBAAa,YAAa,SAAQ,iBAEhC;CAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEL,qBAAa,aAAc,SAAQ,kBAEjC;CAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEL,qBAAa,YAAa,SAAQ,iBAGhC;IACO,IAAI,IAAI,KAAK;WAON,KAAK;CAUpB"}
|