@proto-kit/protocol 0.1.1-develop.1314 → 0.1.1-develop.1315
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/dist/prover/statetransition/StateTransitionWitnessProvider.d.ts +16 -0
- package/dist/prover/statetransition/StateTransitionWitnessProvider.d.ts.map +1 -0
- package/dist/prover/statetransition/StateTransitionWitnessProvider.js +16 -0
- package/dist/prover/statetransition/StateTransitionWitnessProviderReference.d.ts +7 -0
- package/dist/prover/statetransition/StateTransitionWitnessProviderReference.d.ts.map +1 -0
- package/dist/prover/statetransition/StateTransitionWitnessProviderReference.js +19 -0
- package/dist/state/context/ProtocolMethodExecutionContext.d.ts +22 -0
- package/dist/state/context/ProtocolMethodExecutionContext.d.ts.map +1 -0
- package/dist/state/context/ProtocolMethodExecutionContext.js +28 -0
- package/package.json +2 -2
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { Field } from "o1js";
|
|
2
|
+
import { RollupMerkleTreeWitness } from "@proto-kit/common";
|
|
3
|
+
/**
|
|
4
|
+
* Interface for providing merkle witnesses to the state-transition prover
|
|
5
|
+
*/
|
|
6
|
+
export interface StateTransitionWitnessProvider {
|
|
7
|
+
/**
|
|
8
|
+
* Provides the merkle witness corresponding to the given key
|
|
9
|
+
* @param key Merkle-tree key
|
|
10
|
+
*/
|
|
11
|
+
getWitness: (key: Field) => RollupMerkleTreeWitness;
|
|
12
|
+
}
|
|
13
|
+
export declare class NoOpStateTransitionWitnessProvider implements StateTransitionWitnessProvider {
|
|
14
|
+
getWitness(): RollupMerkleTreeWitness;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=StateTransitionWitnessProvider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StateTransitionWitnessProvider.d.ts","sourceRoot":"","sources":["../../../src/prover/statetransition/StateTransitionWitnessProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,MAAM,CAAC;AAElC,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAE5D;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC7C;;;OAGG;IACH,UAAU,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,uBAAuB,CAAC;CACrD;AAED,qBACa,kCACX,YAAW,8BAA8B;IAElC,UAAU,IAAI,uBAAuB;CAG7C"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import { injectable } from "tsyringe";
|
|
8
|
+
import { RollupMerkleTreeWitness } from "@proto-kit/common";
|
|
9
|
+
export let NoOpStateTransitionWitnessProvider = class NoOpStateTransitionWitnessProvider {
|
|
10
|
+
getWitness() {
|
|
11
|
+
return new RollupMerkleTreeWitness({ path: [], isLeft: [] });
|
|
12
|
+
}
|
|
13
|
+
};
|
|
14
|
+
NoOpStateTransitionWitnessProvider = __decorate([
|
|
15
|
+
injectable()
|
|
16
|
+
], NoOpStateTransitionWitnessProvider);
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { StateTransitionWitnessProvider } from "./StateTransitionWitnessProvider";
|
|
2
|
+
export declare class StateTransitionWitnessProviderReference {
|
|
3
|
+
private witnessProvider?;
|
|
4
|
+
setWitnessProvider(provider: StateTransitionWitnessProvider): void;
|
|
5
|
+
getWitnessProvider(): StateTransitionWitnessProvider | undefined;
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=StateTransitionWitnessProviderReference.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StateTransitionWitnessProviderReference.d.ts","sourceRoot":"","sources":["../../../src/prover/statetransition/StateTransitionWitnessProviderReference.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAElF,qBAEa,uCAAuC;IAClD,OAAO,CAAC,eAAe,CAAC,CAAiC;IAElD,kBAAkB,CAAC,QAAQ,EAAE,8BAA8B;IAI3D,kBAAkB,IAAI,8BAA8B,GAAG,SAAS;CAGxE"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import { injectable, Lifecycle, scoped } from "tsyringe";
|
|
8
|
+
export let StateTransitionWitnessProviderReference = class StateTransitionWitnessProviderReference {
|
|
9
|
+
setWitnessProvider(provider) {
|
|
10
|
+
this.witnessProvider = provider;
|
|
11
|
+
}
|
|
12
|
+
getWitnessProvider() {
|
|
13
|
+
return this.witnessProvider;
|
|
14
|
+
}
|
|
15
|
+
};
|
|
16
|
+
StateTransitionWitnessProviderReference = __decorate([
|
|
17
|
+
injectable(),
|
|
18
|
+
scoped(Lifecycle.ContainerScoped)
|
|
19
|
+
], StateTransitionWitnessProviderReference);
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { StateTransition } from "../../model/StateTransition";
|
|
2
|
+
import { TransitionMethodExecutionContext, TransitionMethodExecutionResult } from "./TransitionMethodExecutionContext";
|
|
3
|
+
export declare class ProtocolMethodExecutionContext implements TransitionMethodExecutionContext {
|
|
4
|
+
result: TransitionMethodExecutionResult;
|
|
5
|
+
/**
|
|
6
|
+
* Adds an in-method generated state transition to the current context
|
|
7
|
+
* @param stateTransition - State transition to add to the context
|
|
8
|
+
*/
|
|
9
|
+
addStateTransition<Value>(stateTransition: StateTransition<Value>): void;
|
|
10
|
+
/**
|
|
11
|
+
* Manually clears/resets the execution context
|
|
12
|
+
*/
|
|
13
|
+
clear(): void;
|
|
14
|
+
/**
|
|
15
|
+
* Had to override current() otherwise it would not infer
|
|
16
|
+
* the type of result correctly (parent type would be reused)
|
|
17
|
+
*/
|
|
18
|
+
current(): {
|
|
19
|
+
result: TransitionMethodExecutionResult;
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=ProtocolMethodExecutionContext.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProtocolMethodExecutionContext.d.ts","sourceRoot":"","sources":["../../../src/state/context/ProtocolMethodExecutionContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAE9D,OAAO,EACL,gCAAgC,EAChC,+BAA+B,EAChC,MAAM,oCAAoC,CAAC;AAE5C,qBAAa,8BACX,YAAW,gCAAgC;IAEpC,MAAM,kCAAyC;IAEtD;;;OAGG;IACI,kBAAkB,CAAC,KAAK,EAAE,eAAe,EAAE,eAAe,CAAC,KAAK,CAAC;IAIxE;;OAEG;IACI,KAAK;IAIZ;;;OAGG;IACI,OAAO;;;CAKf"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { TransitionMethodExecutionResult, } from "./TransitionMethodExecutionContext";
|
|
2
|
+
export class ProtocolMethodExecutionContext {
|
|
3
|
+
constructor() {
|
|
4
|
+
this.result = new TransitionMethodExecutionResult();
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Adds an in-method generated state transition to the current context
|
|
8
|
+
* @param stateTransition - State transition to add to the context
|
|
9
|
+
*/
|
|
10
|
+
addStateTransition(stateTransition) {
|
|
11
|
+
this.result.stateTransitions.push(stateTransition);
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Manually clears/resets the execution context
|
|
15
|
+
*/
|
|
16
|
+
clear() {
|
|
17
|
+
this.result = new TransitionMethodExecutionResult();
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Had to override current() otherwise it would not infer
|
|
21
|
+
* the type of result correctly (parent type would be reused)
|
|
22
|
+
*/
|
|
23
|
+
current() {
|
|
24
|
+
return {
|
|
25
|
+
result: this.result,
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
}
|
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"license": "MIT",
|
|
4
4
|
"private": false,
|
|
5
5
|
"type": "module",
|
|
6
|
-
"version": "0.1.1-develop.
|
|
6
|
+
"version": "0.1.1-develop.1315+6f08e29d",
|
|
7
7
|
"scripts": {
|
|
8
8
|
"build": "tsc -p tsconfig.json",
|
|
9
9
|
"dev": "tsc -p tsconfig.json --watch",
|
|
@@ -32,5 +32,5 @@
|
|
|
32
32
|
"@jest/globals": "^29.5.0",
|
|
33
33
|
"@types/lodash": "^4.14.194"
|
|
34
34
|
},
|
|
35
|
-
"gitHead": "
|
|
35
|
+
"gitHead": "6f08e29dcb3080d1afdba04f6f875eab5827da0d"
|
|
36
36
|
}
|