@proto-kit/common 0.1.1-develop.190 → 0.1.1-develop.2024
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/compiling/AtomicCompileHelper.d.ts +13 -0
- package/dist/compiling/AtomicCompileHelper.d.ts.map +1 -0
- package/dist/compiling/AtomicCompileHelper.js +40 -0
- package/dist/compiling/AtomicCompileHelper.js.map +1 -0
- package/dist/compiling/CompilableModule.d.ts +6 -0
- package/dist/compiling/CompilableModule.d.ts.map +1 -0
- package/dist/compiling/CompilableModule.js +2 -0
- package/dist/compiling/CompilableModule.js.map +1 -0
- package/dist/compiling/CompileRegistry.d.ts +26 -0
- package/dist/compiling/CompileRegistry.d.ts.map +1 -0
- package/dist/compiling/CompileRegistry.js +67 -0
- package/dist/compiling/CompileRegistry.js.map +1 -0
- package/dist/compiling/services/ChildVerificationKeyService.d.ts +10 -0
- package/dist/compiling/services/ChildVerificationKeyService.d.ts.map +1 -0
- package/dist/compiling/services/ChildVerificationKeyService.js +27 -0
- package/dist/compiling/services/ChildVerificationKeyService.js.map +1 -0
- package/dist/config/ChildContainerCreatable.d.ts +5 -0
- package/dist/config/ChildContainerCreatable.d.ts.map +1 -0
- package/dist/config/ChildContainerCreatable.js +2 -0
- package/dist/config/ChildContainerCreatable.js.map +1 -0
- package/dist/config/ChildContainerProvider.d.ts +5 -0
- package/dist/config/ChildContainerProvider.d.ts.map +1 -0
- package/dist/config/ChildContainerProvider.js +2 -0
- package/dist/config/ChildContainerProvider.js.map +1 -0
- package/dist/config/ConfigurableModule.d.ts +6 -2
- package/dist/config/ConfigurableModule.d.ts.map +1 -1
- package/dist/config/ConfigurableModule.js +5 -0
- package/dist/config/ConfigurableModule.js.map +1 -0
- package/dist/config/ModuleContainer.d.ts +70 -23
- package/dist/config/ModuleContainer.d.ts.map +1 -1
- package/dist/config/ModuleContainer.js +164 -31
- package/dist/config/ModuleContainer.js.map +1 -0
- package/dist/config/Startable.d.ts +4 -0
- package/dist/config/Startable.d.ts.map +1 -0
- package/dist/config/Startable.js +2 -0
- package/dist/config/Startable.js.map +1 -0
- package/dist/config/injectAlias.d.ts +18 -0
- package/dist/config/injectAlias.d.ts.map +1 -0
- package/dist/config/injectAlias.js +47 -0
- package/dist/config/injectAlias.js.map +1 -0
- package/dist/dependencyFactory/DependencyFactory.d.ts +14 -9
- package/dist/dependencyFactory/DependencyFactory.d.ts.map +1 -1
- package/dist/dependencyFactory/DependencyFactory.js +2 -96
- package/dist/dependencyFactory/DependencyFactory.js.map +1 -0
- package/dist/dependencyFactory/injectOptional.d.ts +16 -0
- package/dist/dependencyFactory/injectOptional.d.ts.map +1 -0
- package/dist/dependencyFactory/injectOptional.js +40 -0
- package/dist/dependencyFactory/injectOptional.js.map +1 -0
- package/dist/dummyVerificationKey.d.ts +3 -0
- package/dist/dummyVerificationKey.d.ts.map +1 -0
- package/dist/dummyVerificationKey.js +8 -0
- package/dist/dummyVerificationKey.js.map +1 -0
- package/dist/events/EventEmitter.d.ts +19 -0
- package/dist/events/EventEmitter.d.ts.map +1 -0
- package/dist/events/EventEmitter.js +35 -0
- package/dist/events/EventEmitter.js.map +1 -0
- package/dist/events/EventEmitterProxy.d.ts +18 -0
- package/dist/events/EventEmitterProxy.d.ts.map +1 -0
- package/dist/events/EventEmitterProxy.js +35 -0
- package/dist/events/EventEmitterProxy.js.map +1 -0
- package/dist/events/EventEmittingComponent.d.ts +9 -0
- package/dist/events/EventEmittingComponent.d.ts.map +1 -0
- package/dist/events/EventEmittingComponent.js +2 -0
- package/dist/events/EventEmittingComponent.js.map +1 -0
- package/dist/events/ReplayingSingleUseEventEmitter.d.ts +17 -0
- package/dist/events/ReplayingSingleUseEventEmitter.d.ts.map +1 -0
- package/dist/events/ReplayingSingleUseEventEmitter.js +34 -0
- package/dist/events/ReplayingSingleUseEventEmitter.js.map +1 -0
- package/dist/index.d.ts +23 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +24 -2
- package/dist/index.js.map +1 -0
- package/dist/log.d.ts +37 -0
- package/dist/log.d.ts.map +1 -0
- package/dist/log.js +117 -0
- package/dist/log.js.map +1 -0
- package/dist/trees/InMemoryLinkedLeafStore.d.ts +21 -0
- package/dist/trees/InMemoryLinkedLeafStore.d.ts.map +1 -0
- package/dist/trees/InMemoryLinkedLeafStore.js +26 -0
- package/dist/trees/InMemoryLinkedLeafStore.js.map +1 -0
- package/dist/trees/InMemoryLinkedMerkleLeafStore.d.ts +7 -0
- package/dist/trees/InMemoryLinkedMerkleLeafStore.d.ts.map +1 -0
- package/dist/trees/InMemoryLinkedMerkleLeafStore.js +6 -0
- package/dist/trees/InMemoryLinkedMerkleLeafStore.js.map +1 -0
- package/dist/trees/InMemoryMerkleTreeStorage.d.ts +11 -0
- package/dist/trees/InMemoryMerkleTreeStorage.d.ts.map +1 -0
- package/dist/trees/InMemoryMerkleTreeStorage.js +13 -0
- package/dist/trees/InMemoryMerkleTreeStorage.js.map +1 -0
- package/dist/trees/LinkedMerkleTree.d.ts +345 -0
- package/dist/trees/LinkedMerkleTree.d.ts.map +1 -0
- package/dist/trees/LinkedMerkleTree.js +337 -0
- package/dist/trees/LinkedMerkleTree.js.map +1 -0
- package/dist/trees/LinkedMerkleTreeStore.d.ts +24 -0
- package/dist/trees/LinkedMerkleTreeStore.d.ts.map +1 -0
- package/dist/trees/LinkedMerkleTreeStore.js +2 -0
- package/dist/trees/LinkedMerkleTreeStore.js.map +1 -0
- package/dist/trees/MerkleTreeStore.d.ts +5 -0
- package/dist/trees/MerkleTreeStore.d.ts.map +1 -0
- package/dist/trees/MerkleTreeStore.js +2 -0
- package/dist/trees/MerkleTreeStore.js.map +1 -0
- package/dist/trees/MockAsyncMerkleStore.d.ts +9 -0
- package/dist/trees/MockAsyncMerkleStore.d.ts.map +1 -0
- package/dist/trees/MockAsyncMerkleStore.js +20 -0
- package/dist/trees/MockAsyncMerkleStore.js.map +1 -0
- package/dist/trees/RollupMerkleTree.d.ts +147 -0
- package/dist/trees/RollupMerkleTree.d.ts.map +1 -0
- package/dist/trees/RollupMerkleTree.js +218 -0
- package/dist/trees/RollupMerkleTree.js.map +1 -0
- package/dist/trees/VirtualMerkleTreeStore.d.ts +13 -0
- package/dist/trees/VirtualMerkleTreeStore.d.ts.map +1 -0
- package/dist/trees/VirtualMerkleTreeStore.js +18 -0
- package/dist/trees/VirtualMerkleTreeStore.js.map +1 -0
- package/dist/trees/lmt/AbstractLinkedMerkleTree.d.ts +288 -0
- package/dist/trees/lmt/AbstractLinkedMerkleTree.d.ts.map +1 -0
- package/dist/trees/lmt/AbstractLinkedMerkleTree.js +22 -0
- package/dist/trees/lmt/AbstractLinkedMerkleTree.js.map +1 -0
- package/dist/trees/lmt/InMemoryLinkedLeafStore.d.ts +21 -0
- package/dist/trees/lmt/InMemoryLinkedLeafStore.d.ts.map +1 -0
- package/dist/trees/lmt/InMemoryLinkedLeafStore.js +26 -0
- package/dist/trees/lmt/InMemoryLinkedLeafStore.js.map +1 -0
- package/dist/trees/lmt/InMemoryLinkedMerkleLeafStore.d.ts +7 -0
- package/dist/trees/lmt/InMemoryLinkedMerkleLeafStore.d.ts.map +1 -0
- package/dist/trees/lmt/InMemoryLinkedMerkleLeafStore.js +6 -0
- package/dist/trees/lmt/InMemoryLinkedMerkleLeafStore.js.map +1 -0
- package/dist/trees/lmt/LinkedLeafStore.d.ts +16 -0
- package/dist/trees/lmt/LinkedLeafStore.d.ts.map +1 -0
- package/dist/trees/lmt/LinkedLeafStore.js +2 -0
- package/dist/trees/lmt/LinkedLeafStore.js.map +1 -0
- package/dist/trees/lmt/LinkedLinkedStore.d.ts +16 -0
- package/dist/trees/lmt/LinkedLinkedStore.d.ts.map +1 -0
- package/dist/trees/lmt/LinkedLinkedStore.js +2 -0
- package/dist/trees/lmt/LinkedLinkedStore.js.map +1 -0
- package/dist/trees/lmt/LinkedMerkleTree.d.ts +11 -0
- package/dist/trees/lmt/LinkedMerkleTree.d.ts.map +1 -0
- package/dist/trees/lmt/LinkedMerkleTree.js +241 -0
- package/dist/trees/lmt/LinkedMerkleTree.js.map +1 -0
- package/dist/trees/lmt/LinkedMerkleTreeCircuitOps.d.ts +113 -0
- package/dist/trees/lmt/LinkedMerkleTreeCircuitOps.d.ts.map +1 -0
- package/dist/trees/lmt/LinkedMerkleTreeCircuitOps.js +113 -0
- package/dist/trees/lmt/LinkedMerkleTreeCircuitOps.js.map +1 -0
- package/dist/trees/lmt/LinkedMerkleTreeDatabase.d.ts +7 -0
- package/dist/trees/lmt/LinkedMerkleTreeDatabase.d.ts.map +1 -0
- package/dist/trees/lmt/LinkedMerkleTreeDatabase.js +2 -0
- package/dist/trees/lmt/LinkedMerkleTreeDatabase.js.map +1 -0
- package/dist/trees/lmt/LinkedMerkleTreeStore.d.ts +16 -0
- package/dist/trees/lmt/LinkedMerkleTreeStore.d.ts.map +1 -0
- package/dist/trees/lmt/LinkedMerkleTreeStore.js +2 -0
- package/dist/trees/lmt/LinkedMerkleTreeStore.js.map +1 -0
- package/dist/trees/lmt/LinkedMerkleTreeTypes.d.ts +74 -0
- package/dist/trees/lmt/LinkedMerkleTreeTypes.d.ts.map +1 -0
- package/dist/trees/lmt/LinkedMerkleTreeTypes.js +50 -0
- package/dist/trees/lmt/LinkedMerkleTreeTypes.js.map +1 -0
- package/dist/trees/sparse/InMemoryMerkleTreeStorage.d.ts +11 -0
- package/dist/trees/sparse/InMemoryMerkleTreeStorage.d.ts.map +1 -0
- package/dist/trees/sparse/InMemoryMerkleTreeStorage.js +13 -0
- package/dist/trees/sparse/InMemoryMerkleTreeStorage.js.map +1 -0
- package/dist/trees/sparse/MerkleTreeStore.d.ts +5 -0
- package/dist/trees/sparse/MerkleTreeStore.d.ts.map +1 -0
- package/dist/trees/sparse/MerkleTreeStore.js +2 -0
- package/dist/trees/sparse/MerkleTreeStore.js.map +1 -0
- package/dist/trees/sparse/MockAsyncMerkleStore.d.ts +9 -0
- package/dist/trees/sparse/MockAsyncMerkleStore.d.ts.map +1 -0
- package/dist/trees/sparse/MockAsyncMerkleStore.js +20 -0
- package/dist/trees/sparse/MockAsyncMerkleStore.js.map +1 -0
- package/dist/trees/sparse/RollupMerkleTree.d.ts +158 -0
- package/dist/trees/sparse/RollupMerkleTree.d.ts.map +1 -0
- package/dist/trees/sparse/RollupMerkleTree.js +330 -0
- package/dist/trees/sparse/RollupMerkleTree.js.map +1 -0
- package/dist/types.d.ts +62 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +14 -1
- package/dist/types.js.map +1 -0
- package/dist/union/union.d.ts +177 -0
- package/dist/union/union.d.ts.map +1 -0
- package/dist/union/union.js +35 -0
- package/dist/union/union.js.map +1 -0
- package/dist/utils.d.ts +64 -1
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +165 -3
- package/dist/utils.js.map +1 -0
- package/dist/zkProgrammable/ProvableMethodExecutionContext.d.ts +4 -3
- package/dist/zkProgrammable/ProvableMethodExecutionContext.d.ts.map +1 -1
- package/dist/zkProgrammable/ProvableMethodExecutionContext.js +2 -3
- package/dist/zkProgrammable/ProvableMethodExecutionContext.js.map +1 -0
- package/dist/zkProgrammable/ZkProgrammable.d.ts +23 -9
- package/dist/zkProgrammable/ZkProgrammable.d.ts.map +1 -1
- package/dist/zkProgrammable/ZkProgrammable.js +34 -15
- package/dist/zkProgrammable/ZkProgrammable.js.map +1 -0
- package/dist/zkProgrammable/provableMethod.d.ts +8 -5
- package/dist/zkProgrammable/provableMethod.d.ts.map +1 -1
- package/dist/zkProgrammable/provableMethod.js +30 -15
- package/dist/zkProgrammable/provableMethod.js.map +1 -0
- package/jest.config.cjs +12 -1
- package/package.json +8 -7
- package/src/compiling/AtomicCompileHelper.ts +62 -0
- package/src/compiling/CompilableModule.ts +6 -0
- package/src/compiling/CompileRegistry.ts +74 -0
- package/src/compiling/services/ChildVerificationKeyService.ts +26 -0
- package/src/config/ChildContainerCreatable.ts +5 -0
- package/src/config/ChildContainerProvider.ts +5 -0
- package/src/config/ConfigurableModule.ts +15 -2
- package/src/config/ModuleContainer.ts +286 -58
- package/src/config/Startable.ts +3 -0
- package/src/config/injectAlias.ts +70 -0
- package/src/dependencyFactory/DependencyFactory.ts +34 -109
- package/src/dummyVerificationKey.ts +10 -0
- package/src/events/EventEmitter.ts +61 -0
- package/src/events/EventEmitterProxy.ts +81 -0
- package/src/events/EventEmittingComponent.ts +11 -0
- package/src/events/ReplayingSingleUseEventEmitter.ts +42 -0
- package/src/index.ts +23 -2
- package/src/log.ts +145 -0
- package/src/trees/lmt/AbstractLinkedMerkleTree.ts +102 -0
- package/src/trees/lmt/InMemoryLinkedLeafStore.ts +42 -0
- package/src/trees/lmt/LinkedLeafStore.ts +13 -0
- package/src/trees/lmt/LinkedMerkleTree.ts +335 -0
- package/src/trees/lmt/LinkedMerkleTreeCircuitOps.ts +188 -0
- package/src/trees/lmt/LinkedMerkleTreeTypes.ts +53 -0
- package/src/trees/sparse/InMemoryMerkleTreeStorage.ts +17 -0
- package/src/trees/sparse/MerkleTreeStore.ts +5 -0
- package/src/trees/sparse/MockAsyncMerkleStore.ts +30 -0
- package/src/trees/sparse/RollupMerkleTree.ts +512 -0
- package/src/types.ts +53 -2
- package/src/utils.ts +298 -3
- package/src/zkProgrammable/ProvableMethodExecutionContext.ts +6 -6
- package/src/zkProgrammable/ZkProgrammable.ts +72 -31
- package/src/zkProgrammable/provableMethod.ts +53 -24
- package/test/config/ContainerEvents.test.ts +65 -0
- package/test/config/ModuleContainer.test.ts +146 -15
- package/test/config/injectAlias.test.ts +28 -0
- package/test/trees/LinkedMerkleTree.test.ts +124 -0
- package/test/trees/LinkedMerkleTreeCircuitOps.test.ts +147 -0
- package/test/trees/MerkleTree.test.ts +251 -0
- package/test/tsconfig.json +5 -2
- package/test/zkProgrammable/ZkProgrammable.test.ts +145 -119
- package/tsconfig.json +1 -1
- package/LICENSE.md +0 -201
- package/tsconfig.test.json +0 -9
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RollupMerkleTree.js","sourceRoot":"","sources":["../../../src/trees/sparse/RollupMerkleTree.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAC/D,OAAO,MAAM,MAAM,eAAe,CAAC;AAEnC,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAIpC,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AAExE;;;GAGG;AACH,MAAM,UAAU,SAAS,CAAC,CAAO,EAAE,CAAQ,EAAE,CAAQ;IACnD,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY;IACjD,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,gBAAgB;IACrC,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,gCAAgC;IACrD,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;AAClB,CAAC;AAED,MAAM,OAAO,cAAe,SAAQ,MAAM,CAAC;IACzC,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;IAC9B,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;CAChC,CAAC;CAAG;AA8FL;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAAc;;IAC7C,SAAS,cAAc;QACrB,MAAM,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC;QACpB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE;YAC9C,MAAM,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;YAC/C,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;SACvE;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,SAAS,GAAyB,SAAS,CAAC;IAEhD,SAAS,SAAS;QAChB,IAAI,SAAS,KAAK,SAAS,EAAE;YAC3B,SAAS,GAAG,cAAc,EAAE,CAAC;SAC9B;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;OAGG;IACH,MAAM,mBACJ,SAAQ,MAAM,CAAC;QACb,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC,CAAC;QACvC,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,CAAC,CAAC;KACzC,CAAC;QAKK,MAAM;YACX,OAAO,mBAAmB,CAAC,MAAM,CAAC;QACpC,CAAC;QAED;;;;WAIG;QACI,aAAa,CAAC,IAAW;YAC9B,IAAI,IAAI,GAAG,IAAI,CAAC;YAChB,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;YAExB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,KAAK,EAAE;gBACtC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;gBAEtC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;gBACpE,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;aACrC;YAED,OAAO,IAAI,CAAC;QACd,CAAC;QAEM,sBAAsB,CAC3B,SAAgB,EAChB,IAAW;YAEX,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;YAEtC,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC,mBAAmB,EAAE,GAAG,EAAE;gBAC5D,MAAM,IAAI,GAAG,SAAS,EAAE,CAAC;gBAEzB,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;oBACrB,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;iBAC3C;gBACD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;gBAEzC,IAAI,IAAI,GAAG,IAAI,CAAC;gBAChB,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;gBAExB,IAAI,WAAW,GAAG,IAAI,CAAC;gBACvB,MAAM,OAAO,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;gBAC1C,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;gBAE1B,MAAM,WAAW,GAAY,EAAE,CAAC;gBAChC,MAAM,UAAU,GAAW,EAAE,CAAC;gBAE9B,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,EAAE;oBAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oBAClC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBAEjC,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,CAAC;oBAEvC,oCAAoC;oBACpC,IAAI,kBAAkB,GAAG,IAAI,CAAC;oBAC9B,IAAI,KAAK,GAAG,CAAC,GAAG,CAAC,EAAE;wBACjB,kBAAkB,GAAG,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC;6BACpC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;6BAC9B,GAAG,EAAE;6BACL,SAAS,EAAE,CAAC;qBAChB;oBAED,MAAM,WAAW;oBACf,6CAA6C;oBAC7C,kBAAkB,IAAI,WAAW;wBAC/B,CAAC,CAAC,IAAI;wBACN,CAAC,CAAC,WAAW;4BACX,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;4BACf,CAAC,CAAC,OAAO,CAAC;oBAEhB,WAAW,GAAG,WAAW,IAAI,CAAC,kBAAkB,CAAC;oBAEjD,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;oBAC9B,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBAE3B,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;oBACvD,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;iBACrC;gBAED,OAAO,IAAI,mBAAmB,CAAC;oBAC7B,MAAM,EAAE,UAAU;oBAClB,IAAI,EAAE,WAAW;iBAClB,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,UAAU,CAAC,cAAc,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAE3D,OAAO,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QAC5B,CAAC;QAED;;;WAGG;QACI,cAAc;YACnB,IAAI,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YAC1B,IAAI,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACrB,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;YAExB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,EAAE;gBAC1B,KAAK,GAAG,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;gBACtE,UAAU,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;aAChC;YAED,OAAO,KAAK,CAAC;QACf,CAAC;QAEM,eAAe,CAAC,IAAW,EAAE,GAAU,EAAE,KAAY;YAC1D,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YACjD,MAAM,aAAa,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;YAC5C,uEAAuE;YACvE,qDAAqD;YACrD,GAAG,CAAC,YAAY,CAAC,aAAa,EAAE,sCAAsC,CAAC,CAAC;YACxE,OAAO,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QACrC,CAAC;QAEM,qBAAqB,CAAC,IAAW,EAAE,KAAY;YACpD,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YACjD,OAAO,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QACrC,CAAC;QAEM,uBAAuB,CAC5B,IAAW,EACX,GAAU,EACV,KAAY;YAEZ,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YACjD,MAAM,aAAa,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;YAC5C,GAAG,CAAC,YAAY,CAAC,aAAa,EAAE,sCAAsC,CAAC,CAAC;YACxE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;QAC7D,CAAC;QAEM,kBAAkB;YACvB,OAAO,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;iBACf,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;iBAC/C,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CACb;gBACE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE;gBAC3B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE;aAC9B,CAAC,QAAQ,EAAE,CACb,CAAC;QACN,CAAC;QAEM,MAAM,CAAC,KAAK;YACjB,OAAO,IAAI,mBAAmB,CAAC;gBAC7B,MAAM,EAAE,KAAK,CAAO,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACrD,IAAI,EAAE,KAAK,CAAQ,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;aACnD,CAAC,CAAC;QACL,CAAC;;IAtJa,0BAAM,GAAG,MAAM,CAAC;IAyJhC,YAAO,MAAM,wBAAwB;YAS5B,MAAM,KAAK,SAAS;gBACzB,OAAO,EAAE,IAAI,MAAM,CAAC,wBAAwB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAC3D,CAAC;YAUD,YAAmB,KAAsB;gBACvC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;gBACnB,IAAI,CAAC,MAAM,GAAG,cAAc,EAAE,CAAC;YACjC,CAAC;YAEM,gBAAgB,CAAC,KAAa;gBACnC,IAAI,KAAK,GAAG,IAAI,CAAC,SAAS,EAAE;oBAC1B,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;iBAC3D;YACH,CAAC;YAED;;;;;eAKG;YACI,OAAO,CAAC,KAAa,EAAE,KAAa;gBACzC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;gBAC7B,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YACvE,CAAC;YAED;;;eAGG;YACI,OAAO;gBACZ,OAAO,IAAI,CAAC,OAAO,CAAC,wBAAwB,CAAC,MAAM,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC;YAC5E,CAAC;YAED,uBAAuB;YACf,OAAO,CAAC,KAAa,EAAE,KAAa,EAAE,KAAY;gBACxD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;YACrD,CAAC;YAED;;;;eAIG;YACI,OAAO,CAAC,KAAa,EAAE,IAAW;gBACvC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;gBAE7B,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;gBAC7B,IAAI,YAAY,GAAG,KAAK,CAAC;gBACzB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,wBAAwB,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE;oBACvE,YAAY,IAAI,EAAE,CAAC;oBAEnB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,EAAE,YAAY,GAAG,EAAE,CAAC,CAAC;oBACxD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,EAAE,YAAY,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;oBAE9D,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,YAAY,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;iBACjE;YACH,CAAC;YAEM,SAAS,CAAC,OAAyC;gBACxD,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC;gBAG7D,MAAM,OAAO,GAAa,EAAE,CAAC;gBAE7B,0FAA0F;gBAC1F,iFAAiF;gBACjF,uBAAuB;gBACvB,IAAI,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,OAAO,CAAC;oBACnD,kFAAkF;oBAClF,2CAA2C;qBAC1C,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAEhD,OAAO,CAAC,IAAI,CACV,GAAG,YAAY;qBACZ,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;oBACzB,KAAK,EAAE,CAAC;oBACR,KAAK;oBACL,KAAK,EAAE,IAAI;iBACZ,CAAC,CAAC;qBACF,OAAO,EAAE,CACb,CAAC;gBAEF,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,wBAAwB,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE;oBACvE,MAAM,gBAAgB,GAAwB,EAAE,CAAC;oBACjD,OAAO,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;wBAC9B,MAAM,IAAI,GAAG,YAAY,CAAC,GAAG,EAAG,CAAC;wBAEjC,IAAI,OAAO,CAAC;wBACZ,IAAI,IAAI,CAAC,KAAK,GAAG,EAAE,KAAK,EAAE,EAAE;4BAC1B,IAAI,OAAO,CAAC;4BACZ,MAAM,gBAAgB,GAAG,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;4BAC7C,IACE,gBAAgB,KAAK,SAAS;gCAC9B,gBAAgB,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,GAAG,EAAE,EAC1C;gCACA,OAAO,GAAG,gBAAgB,CAAC,IAAI,CAAC;gCAChC,YAAY,CAAC,GAAG,EAAE,CAAC;6BACpB;iCAAM;gCACL,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,EAAE,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC;6BAC3D;4BACD,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;yBAC/C;6BAAM;4BACL,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,EAAE,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC;4BAChE,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;yBAC/C;wBAED,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;wBACvC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;wBAC/D,gBAAgB,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;qBACjE;oBAED,YAAY,GAAG,gBAAgB,CAAC,OAAO,EAAE,CAAC;iBAC3C;gBAED,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE;oBAC1C,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;gBACpC,CAAC,CAAC,CAAC;YACL,CAAC;YAED;;;;;;eAMG;YACI,UAAU,CAAC,KAAa;gBAC7B,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;gBAE7B,MAAM,IAAI,GAAG,EAAE,CAAC;gBAChB,MAAM,OAAO,GAAG,EAAE,CAAC;gBACnB,IAAI,YAAY,GAAG,KAAK,CAAC;gBACzB,KACE,IAAI,KAAK,GAAG,CAAC,EACb,KAAK,GAAG,wBAAwB,CAAC,MAAM,GAAG,CAAC,EAC3C,KAAK,IAAI,CAAC,EACV;oBACA,MAAM,MAAM,GAAG,YAAY,GAAG,EAAE,KAAK,EAAE,CAAC;oBACxC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAC1B,KAAK,EACL,MAAM,CAAC,CAAC,CAAC,YAAY,GAAG,EAAE,CAAC,CAAC,CAAC,YAAY,GAAG,EAAE,CAC/C,CAAC;oBACF,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;oBAC3B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBACnB,YAAY,IAAI,EAAE,CAAC;iBACpB;gBACD,OAAO,IAAI,mBAAmB,CAAC;oBAC7B,MAAM,EAAE,OAAO;oBACf,IAAI;iBACL,CAAC,CAAC;YACL,CAAC;YAED,sFAAsF;YACtF;;;eAGG;YACI,IAAI,CAAC,MAAe;gBACzB,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;oBAC9B,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC;gBACrC,CAAC,CAAC,CAAC;YACL,CAAC;YAED;;;eAGG;YACH,IAAW,SAAS;gBAClB,OAAO,wBAAwB,CAAC,SAAS,CAAC;YAC5C,CAAC;SACF;QA3Le,SAAM,GAAG,MAAO;QAEhB,aAAU,GAAG,IAAI,EAAwB,CACrD,IAAI,yBAAyB,EAAE,CAChC;aACE,OAAO,EAAE;aACT,QAAQ,EAAG;QAMA,UAAO,GAAG,mBAAoB;WA+K5C;AACJ,CAAC;AAED,MAAM,OAAO,gBAAiB,SAAQ,gBAAgB,CAAC,GAAG,CAAC;CAAG;AAC9D,MAAM,OAAO,uBAAwB,SAAQ,gBAAgB,CAAC,OAAO;CAAG"}
|
package/dist/types.d.ts
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
|
+
import { DynamicProof, Proof, ProofBase, PublicKey, Option } from "o1js";
|
|
1
2
|
export type TypedClass<Class> = new (...args: any[]) => Class;
|
|
3
|
+
export type UnTypedClass = new (...args: any[]) => unknown;
|
|
2
4
|
/**
|
|
3
5
|
* Using simple `keyof Target` would result into the key
|
|
4
6
|
* being `string | number | symbol`, but we want just a `string`
|
|
@@ -8,4 +10,64 @@ export type StringKeyOf<Target extends object> = Extract<keyof Target, string> &
|
|
|
8
10
|
* Utility type to infer element type from an array type
|
|
9
11
|
*/
|
|
10
12
|
export type ArrayElement<ArrayType extends readonly unknown[]> = ArrayType extends readonly (infer ElementType)[] ? ElementType : never;
|
|
13
|
+
/**
|
|
14
|
+
* Transforms X | Y => X & Y
|
|
15
|
+
*/
|
|
16
|
+
export type UnionToIntersection<Union> = (Union extends any ? (x: Union) => void : never) extends (x: infer Intersection) => void ? Intersection : never;
|
|
17
|
+
export type MergeObjects<Input extends Record<string, unknown>> = UnionToIntersection<Input[keyof Input]>;
|
|
18
|
+
export type OmitKeys<Record, Keys> = {
|
|
19
|
+
[Key in keyof Record as Key extends Keys ? never : Key]: Record[Key];
|
|
20
|
+
};
|
|
21
|
+
export declare const EMPTY_PUBLICKEY_X: import("o1js/dist/node/lib/provable/field").Field;
|
|
22
|
+
export declare const EMPTY_PUBLICKEY: PublicKey;
|
|
23
|
+
export type OverwriteObjectType<Base, New> = {
|
|
24
|
+
[Key in keyof Base]: Key extends keyof New ? New[Key] : Base[Key];
|
|
25
|
+
} & New;
|
|
26
|
+
export type InferProofBase<ProofType extends Proof<any, any> | DynamicProof<any, any>> = ProofType extends Proof<infer PI, infer PO> ? ProofBase<PI, PO> : ProofType extends DynamicProof<infer PI, infer PO> ? ProofBase<PI, PO> : undefined;
|
|
27
|
+
declare const O1PublicKeyOption_base: Omit<import("o1js/dist/node/lib/provable/types/provable-intf").Provable<Option<PublicKey, {
|
|
28
|
+
x: bigint;
|
|
29
|
+
isOdd: boolean;
|
|
30
|
+
}>, {
|
|
31
|
+
x: bigint;
|
|
32
|
+
isOdd: boolean;
|
|
33
|
+
} | undefined>, "fromFields"> & {
|
|
34
|
+
fromFields: (fields: import("o1js/dist/node/lib/provable/field").Field[]) => Option<PublicKey, {
|
|
35
|
+
x: bigint;
|
|
36
|
+
isOdd: boolean;
|
|
37
|
+
}>;
|
|
38
|
+
} & (new (option: {
|
|
39
|
+
isSome: import("o1js/dist/node/lib/provable/bool").Bool;
|
|
40
|
+
value: PublicKey;
|
|
41
|
+
}) => Option<PublicKey, {
|
|
42
|
+
x: bigint;
|
|
43
|
+
isOdd: boolean;
|
|
44
|
+
}>) & {
|
|
45
|
+
fromValue(value: PublicKey | {
|
|
46
|
+
x: bigint;
|
|
47
|
+
isOdd: boolean;
|
|
48
|
+
} | {
|
|
49
|
+
isSome: boolean | import("o1js/dist/node/lib/provable/bool").Bool;
|
|
50
|
+
value: PublicKey | {
|
|
51
|
+
x: bigint;
|
|
52
|
+
isOdd: boolean;
|
|
53
|
+
};
|
|
54
|
+
} | undefined): Option<PublicKey, {
|
|
55
|
+
x: bigint;
|
|
56
|
+
isOdd: boolean;
|
|
57
|
+
}>;
|
|
58
|
+
from(value?: PublicKey | {
|
|
59
|
+
x: bigint;
|
|
60
|
+
isOdd: boolean;
|
|
61
|
+
} | undefined): Option<PublicKey, {
|
|
62
|
+
x: bigint;
|
|
63
|
+
isOdd: boolean;
|
|
64
|
+
}>;
|
|
65
|
+
none(): Option<PublicKey, {
|
|
66
|
+
x: bigint;
|
|
67
|
+
isOdd: boolean;
|
|
68
|
+
}>;
|
|
69
|
+
};
|
|
70
|
+
export declare class O1PublicKeyOption extends O1PublicKeyOption_base {
|
|
71
|
+
}
|
|
72
|
+
export {};
|
|
11
73
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AACA,MAAM,MAAM,UAAU,CAAC,KAAK,IAAI,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,KAAK,CAAC;AAE9D;;;GAGG;AACH,MAAM,MAAM,WAAW,CAAC,MAAM,SAAS,MAAM,IAAI,OAAO,CAAC,MAAM,MAAM,EAAE,MAAM,CAAC,GAC5E,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,YAAY,EAEZ,KAAK,EACL,SAAS,EACT,SAAS,EACT,MAAM,EACP,MAAM,MAAM,CAAC;AAEd,MAAM,MAAM,UAAU,CAAC,KAAK,IAAI,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,KAAK,CAAC;AAE9D,MAAM,MAAM,YAAY,GAAG,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,CAAC;AAE3D;;;GAGG;AACH,MAAM,MAAM,WAAW,CAAC,MAAM,SAAS,MAAM,IAAI,OAAO,CAAC,MAAM,MAAM,EAAE,MAAM,CAAC,GAC5E,MAAM,CAAC;AAET;;GAEG;AACH,MAAM,MAAM,YAAY,CAAC,SAAS,SAAS,SAAS,OAAO,EAAE,IAC3D,SAAS,SAAS,SAAS,CAAC,MAAM,WAAW,CAAC,EAAE,GAAG,WAAW,GAAG,KAAK,CAAC;AAEzE;;GAEG;AACH,MAAM,MAAM,mBAAmB,CAAC,KAAK,IAAI,CACvC,KAAK,SAAS,GAAG,GAAG,CAAC,CAAC,EAAE,KAAK,KAAK,IAAI,GAAG,KAAK,CAC/C,SAAS,CAAC,CAAC,EAAE,MAAM,YAAY,KAAK,IAAI,GACrC,YAAY,GACZ,KAAK,CAAC;AAEV,MAAM,MAAM,YAAY,CAAC,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAC5D,mBAAmB,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;AAE1C,MAAM,MAAM,QAAQ,CAAC,MAAM,EAAE,IAAI,IAAI;KAClC,GAAG,IAAI,MAAM,MAAM,IAAI,GAAG,SAAS,IAAI,GAAG,KAAK,GAAG,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC;CACrE,CAAC;AAMF,eAAO,MAAM,iBAAiB,mDAAc,CAAC;AAC7C,eAAO,MAAM,eAAe,WAG1B,CAAC;AAEH,MAAM,MAAM,mBAAmB,CAAC,IAAI,EAAE,GAAG,IAAI;KAC1C,GAAG,IAAI,MAAM,IAAI,GAAG,GAAG,SAAS,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC;CAClE,GAAG,GAAG,CAAC;AAER,MAAM,MAAM,cAAc,CACxB,SAAS,SAAS,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,IAE1D,SAAS,SAAS,KAAK,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,GACvC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,GACjB,SAAS,SAAS,YAAY,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,GAChD,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,GACjB,SAAS,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAElB,qBAAa,iBAAkB,SAAQ,sBAAiB;CAAG"}
|
package/dist/types.js
CHANGED
|
@@ -1 +1,14 @@
|
|
|
1
|
-
|
|
1
|
+
// allows to reference interfaces as 'classes' rather than instances
|
|
2
|
+
import { Bool, Field, PublicKey, Option, } from "o1js";
|
|
3
|
+
// Because Publickey.empty() is not usable in combination with real
|
|
4
|
+
// cryptographic operations because it's group evaluation isn't defined in Fp,
|
|
5
|
+
// we use some other arbitrary point which we treat as "empty" in our circuits
|
|
6
|
+
// other arbitrary point
|
|
7
|
+
export const EMPTY_PUBLICKEY_X = Field(4600);
|
|
8
|
+
export const EMPTY_PUBLICKEY = PublicKey.fromObject({
|
|
9
|
+
x: EMPTY_PUBLICKEY_X,
|
|
10
|
+
isOdd: Bool(true),
|
|
11
|
+
});
|
|
12
|
+
export class O1PublicKeyOption extends Option(PublicKey) {
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,oEAAoE;AACpE,OAAO,EACL,IAAI,EAEJ,KAAK,EAGL,SAAS,EACT,MAAM,GACP,MAAM,MAAM,CAAC;AAmCd,mEAAmE;AACnE,+EAA+E;AAC/E,8EAA8E;AAC9E,wBAAwB;AACxB,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;AAC7C,MAAM,CAAC,MAAM,eAAe,GAAG,SAAS,CAAC,UAAU,CAAC;IAClD,CAAC,EAAE,iBAAiB;IACpB,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC;CAClB,CAAC,CAAC;AAeH,MAAM,OAAO,iBAAkB,SAAQ,MAAM,CAAC,SAAS,CAAC;CAAG"}
|
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
import { Provable, InferProvable } from "o1js";
|
|
2
|
+
export declare function createQualifiedUnion<T extends (Provable<any> & {
|
|
3
|
+
name: string;
|
|
4
|
+
})[]>(provables: T): {
|
|
5
|
+
new (value: {
|
|
6
|
+
array: import("o1js/dist/node/lib/provable/field").Field[];
|
|
7
|
+
type: import("o1js/dist/node/lib/provable/field").Field;
|
|
8
|
+
}): {
|
|
9
|
+
into<Type extends T[number]>(provable: Type): InferProvable<Type>;
|
|
10
|
+
array: import("o1js/dist/node/lib/provable/field").Field[];
|
|
11
|
+
type: import("o1js/dist/node/lib/provable/field").Field;
|
|
12
|
+
};
|
|
13
|
+
from<Type_1 extends T[number]>(provable: Type_1, value: InferProvable<Type_1>): {
|
|
14
|
+
into<Type extends T[number]>(provable: Type): InferProvable<Type>;
|
|
15
|
+
array: import("o1js/dist/node/lib/provable/field").Field[];
|
|
16
|
+
type: import("o1js/dist/node/lib/provable/field").Field;
|
|
17
|
+
};
|
|
18
|
+
_isStruct: true;
|
|
19
|
+
toFields: (value: {
|
|
20
|
+
array: import("o1js/dist/node/lib/provable/field").Field[];
|
|
21
|
+
type: import("o1js/dist/node/lib/provable/field").Field;
|
|
22
|
+
}) => import("o1js/dist/node/lib/provable/field").Field[];
|
|
23
|
+
toAuxiliary: (value?: {
|
|
24
|
+
array: import("o1js/dist/node/lib/provable/field").Field[];
|
|
25
|
+
type: import("o1js/dist/node/lib/provable/field").Field;
|
|
26
|
+
} | undefined) => any[];
|
|
27
|
+
sizeInFields: () => number;
|
|
28
|
+
check: (value: {
|
|
29
|
+
array: import("o1js/dist/node/lib/provable/field").Field[];
|
|
30
|
+
type: import("o1js/dist/node/lib/provable/field").Field;
|
|
31
|
+
}) => void;
|
|
32
|
+
toValue: (x: {
|
|
33
|
+
array: import("o1js/dist/node/lib/provable/field").Field[];
|
|
34
|
+
type: import("o1js/dist/node/lib/provable/field").Field;
|
|
35
|
+
}) => {
|
|
36
|
+
array: bigint[];
|
|
37
|
+
type: bigint;
|
|
38
|
+
};
|
|
39
|
+
fromValue: ((x: {
|
|
40
|
+
array: import("o1js/dist/node/lib/provable/field").Field[];
|
|
41
|
+
type: import("o1js/dist/node/lib/provable/field").Field;
|
|
42
|
+
} | {
|
|
43
|
+
array: bigint[];
|
|
44
|
+
type: bigint;
|
|
45
|
+
}) => {
|
|
46
|
+
array: import("o1js/dist/node/lib/provable/field").Field[];
|
|
47
|
+
type: import("o1js/dist/node/lib/provable/field").Field;
|
|
48
|
+
}) & ((value: {
|
|
49
|
+
array: import("o1js/dist/node/lib/provable/field").Field[] | bigint[];
|
|
50
|
+
type: string | number | bigint | import("o1js/dist/node/lib/provable/field").Field;
|
|
51
|
+
}) => {
|
|
52
|
+
array: import("o1js/dist/node/lib/provable/field").Field[];
|
|
53
|
+
type: import("o1js/dist/node/lib/provable/field").Field;
|
|
54
|
+
});
|
|
55
|
+
toCanonical?: ((x: {
|
|
56
|
+
array: import("o1js/dist/node/lib/provable/field").Field[];
|
|
57
|
+
type: import("o1js/dist/node/lib/provable/field").Field;
|
|
58
|
+
}) => {
|
|
59
|
+
array: import("o1js/dist/node/lib/provable/field").Field[];
|
|
60
|
+
type: import("o1js/dist/node/lib/provable/field").Field;
|
|
61
|
+
}) | undefined;
|
|
62
|
+
fromFields: (fields: import("o1js/dist/node/lib/provable/field").Field[]) => {
|
|
63
|
+
array: import("o1js/dist/node/lib/provable/field").Field[];
|
|
64
|
+
type: import("o1js/dist/node/lib/provable/field").Field;
|
|
65
|
+
};
|
|
66
|
+
toInput: (x: {
|
|
67
|
+
array: import("o1js/dist/node/lib/provable/field").Field[];
|
|
68
|
+
type: import("o1js/dist/node/lib/provable/field").Field;
|
|
69
|
+
}) => {
|
|
70
|
+
fields?: import("o1js/dist/node/lib/provable/field").Field[] | undefined;
|
|
71
|
+
packed?: [import("o1js/dist/node/lib/provable/field").Field, number][] | undefined;
|
|
72
|
+
};
|
|
73
|
+
toJSON: (x: {
|
|
74
|
+
array: import("o1js/dist/node/lib/provable/field").Field[];
|
|
75
|
+
type: import("o1js/dist/node/lib/provable/field").Field;
|
|
76
|
+
}) => {
|
|
77
|
+
array: string[];
|
|
78
|
+
type: string;
|
|
79
|
+
};
|
|
80
|
+
fromJSON: (x: {
|
|
81
|
+
array: string[];
|
|
82
|
+
type: string;
|
|
83
|
+
}) => {
|
|
84
|
+
array: import("o1js/dist/node/lib/provable/field").Field[];
|
|
85
|
+
type: import("o1js/dist/node/lib/provable/field").Field;
|
|
86
|
+
};
|
|
87
|
+
empty: () => {
|
|
88
|
+
array: import("o1js/dist/node/lib/provable/field").Field[];
|
|
89
|
+
type: import("o1js/dist/node/lib/provable/field").Field;
|
|
90
|
+
};
|
|
91
|
+
};
|
|
92
|
+
export type QualifiedUnionType<T extends (Provable<any> & {
|
|
93
|
+
name: string;
|
|
94
|
+
})[]> = ReturnType<typeof createQualifiedUnion<T>>;
|
|
95
|
+
export declare function createUnknownLengthUnion(length: number): {
|
|
96
|
+
new (value: {
|
|
97
|
+
array: import("o1js/dist/node/lib/provable/field").Field[];
|
|
98
|
+
type: import("o1js/dist/node/lib/provable/field").Field;
|
|
99
|
+
}): {
|
|
100
|
+
array: import("o1js/dist/node/lib/provable/field").Field[];
|
|
101
|
+
type: import("o1js/dist/node/lib/provable/field").Field;
|
|
102
|
+
};
|
|
103
|
+
_isStruct: true;
|
|
104
|
+
toFields: (value: {
|
|
105
|
+
array: import("o1js/dist/node/lib/provable/field").Field[];
|
|
106
|
+
type: import("o1js/dist/node/lib/provable/field").Field;
|
|
107
|
+
}) => import("o1js/dist/node/lib/provable/field").Field[];
|
|
108
|
+
toAuxiliary: (value?: {
|
|
109
|
+
array: import("o1js/dist/node/lib/provable/field").Field[];
|
|
110
|
+
type: import("o1js/dist/node/lib/provable/field").Field;
|
|
111
|
+
} | undefined) => any[];
|
|
112
|
+
sizeInFields: () => number;
|
|
113
|
+
check: (value: {
|
|
114
|
+
array: import("o1js/dist/node/lib/provable/field").Field[];
|
|
115
|
+
type: import("o1js/dist/node/lib/provable/field").Field;
|
|
116
|
+
}) => void;
|
|
117
|
+
toValue: (x: {
|
|
118
|
+
array: import("o1js/dist/node/lib/provable/field").Field[];
|
|
119
|
+
type: import("o1js/dist/node/lib/provable/field").Field;
|
|
120
|
+
}) => {
|
|
121
|
+
array: bigint[];
|
|
122
|
+
type: bigint;
|
|
123
|
+
};
|
|
124
|
+
fromValue: ((x: {
|
|
125
|
+
array: import("o1js/dist/node/lib/provable/field").Field[];
|
|
126
|
+
type: import("o1js/dist/node/lib/provable/field").Field;
|
|
127
|
+
} | {
|
|
128
|
+
array: bigint[];
|
|
129
|
+
type: bigint;
|
|
130
|
+
}) => {
|
|
131
|
+
array: import("o1js/dist/node/lib/provable/field").Field[];
|
|
132
|
+
type: import("o1js/dist/node/lib/provable/field").Field;
|
|
133
|
+
}) & ((value: {
|
|
134
|
+
array: import("o1js/dist/node/lib/provable/field").Field[] | bigint[];
|
|
135
|
+
type: string | number | bigint | import("o1js/dist/node/lib/provable/field").Field;
|
|
136
|
+
}) => {
|
|
137
|
+
array: import("o1js/dist/node/lib/provable/field").Field[];
|
|
138
|
+
type: import("o1js/dist/node/lib/provable/field").Field;
|
|
139
|
+
});
|
|
140
|
+
toCanonical?: ((x: {
|
|
141
|
+
array: import("o1js/dist/node/lib/provable/field").Field[];
|
|
142
|
+
type: import("o1js/dist/node/lib/provable/field").Field;
|
|
143
|
+
}) => {
|
|
144
|
+
array: import("o1js/dist/node/lib/provable/field").Field[];
|
|
145
|
+
type: import("o1js/dist/node/lib/provable/field").Field;
|
|
146
|
+
}) | undefined;
|
|
147
|
+
fromFields: (fields: import("o1js/dist/node/lib/provable/field").Field[]) => {
|
|
148
|
+
array: import("o1js/dist/node/lib/provable/field").Field[];
|
|
149
|
+
type: import("o1js/dist/node/lib/provable/field").Field;
|
|
150
|
+
};
|
|
151
|
+
toInput: (x: {
|
|
152
|
+
array: import("o1js/dist/node/lib/provable/field").Field[];
|
|
153
|
+
type: import("o1js/dist/node/lib/provable/field").Field;
|
|
154
|
+
}) => {
|
|
155
|
+
fields?: import("o1js/dist/node/lib/provable/field").Field[] | undefined;
|
|
156
|
+
packed?: [import("o1js/dist/node/lib/provable/field").Field, number][] | undefined;
|
|
157
|
+
};
|
|
158
|
+
toJSON: (x: {
|
|
159
|
+
array: import("o1js/dist/node/lib/provable/field").Field[];
|
|
160
|
+
type: import("o1js/dist/node/lib/provable/field").Field;
|
|
161
|
+
}) => {
|
|
162
|
+
array: string[];
|
|
163
|
+
type: string;
|
|
164
|
+
};
|
|
165
|
+
fromJSON: (x: {
|
|
166
|
+
array: string[];
|
|
167
|
+
type: string;
|
|
168
|
+
}) => {
|
|
169
|
+
array: import("o1js/dist/node/lib/provable/field").Field[];
|
|
170
|
+
type: import("o1js/dist/node/lib/provable/field").Field;
|
|
171
|
+
};
|
|
172
|
+
empty: () => {
|
|
173
|
+
array: import("o1js/dist/node/lib/provable/field").Field[];
|
|
174
|
+
type: import("o1js/dist/node/lib/provable/field").Field;
|
|
175
|
+
};
|
|
176
|
+
};
|
|
177
|
+
//# sourceMappingURL=union.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"union.d.ts","sourceRoot":"","sources":["../../src/union/union.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAiB,aAAa,EAAiB,MAAM,MAAM,CAAC;AAI7E,wBAAgB,oBAAoB,CAClC,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,EAAE,EAC9C,SAAS,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsCb;AAED,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,EAAE,IAC3E,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC;AAE7C,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAKtD"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { Provable, Struct, Field } from "o1js";
|
|
2
|
+
import { padArray } from "../utils";
|
|
3
|
+
export function createQualifiedUnion(provables) {
|
|
4
|
+
const maxLength = Math.max(...provables.map((provable) => provable.sizeInFields()));
|
|
5
|
+
const typeMap = Object.fromEntries(provables.map(({ name }, index) => [name, index]));
|
|
6
|
+
class ProvableUnion extends Struct({
|
|
7
|
+
array: Provable.Array(Field, maxLength),
|
|
8
|
+
type: Field,
|
|
9
|
+
}) {
|
|
10
|
+
static from(provable, value) {
|
|
11
|
+
const fields = provable.toFields(value);
|
|
12
|
+
const fullFields = padArray(fields, maxLength, () => Field(0));
|
|
13
|
+
return new ProvableUnion({
|
|
14
|
+
array: fullFields,
|
|
15
|
+
type: Field(typeMap[provable.name]),
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
into(provable) {
|
|
19
|
+
const size = provable.sizeInFields();
|
|
20
|
+
const fields = this.array.slice(0, size);
|
|
21
|
+
this.array.slice(size).forEach((field) => field.assertEquals(0));
|
|
22
|
+
this.type.assertEquals(typeMap[provable.name]);
|
|
23
|
+
return provable.fromFields(fields, []);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
return ProvableUnion;
|
|
27
|
+
}
|
|
28
|
+
export function createUnknownLengthUnion(length) {
|
|
29
|
+
return class UnknownLengthUnion extends Struct({
|
|
30
|
+
array: Provable.Array(Field, length),
|
|
31
|
+
type: Field,
|
|
32
|
+
}) {
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=union.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"union.js","sourceRoot":"","sources":["../../src/union/union.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAgC,MAAM,MAAM,CAAC;AAE7E,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEpC,MAAM,UAAU,oBAAoB,CAElC,SAAY;IACZ,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CACxB,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC,CACxD,CAAC;IAEF,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAChC,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAClD,CAAC;IAEF,MAAM,aAAc,SAAQ,MAAM,CAAC;QACjC,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,SAAS,CAAC;QACvC,IAAI,EAAE,KAAK;KACZ,CAAC;QACO,MAAM,CAAC,IAAI,CAChB,QAAc,EACd,KAA0B;YAE1B,MAAM,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YACxC,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAC/D,OAAO,IAAI,aAAa,CAAC;gBACvB,KAAK,EAAE,UAAU;gBACjB,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;aACpC,CAAC,CAAC;QACL,CAAC;QAEM,IAAI,CAAyB,QAAc;YAChD,MAAM,IAAI,GAAG,QAAQ,CAAC,YAAY,EAAE,CAAC;YACrC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;YAEzC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;YAEjE,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;YAE/C,OAAO,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACzC,CAAC;KACF;IAED,OAAO,aAAa,CAAC;AACvB,CAAC;AAKD,MAAM,UAAU,wBAAwB,CAAC,MAAc;IACrD,OAAO,MAAM,kBAAmB,SAAQ,MAAM,CAAC;QAC7C,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC;QACpC,IAAI,EAAE,KAAK;KACZ,CAAC;KAAG,CAAC;AACR,CAAC"}
|
package/dist/utils.d.ts
CHANGED
|
@@ -1,3 +1,66 @@
|
|
|
1
|
+
import { Field, FlexibleProvablePure, DynamicProof, Proof } from "o1js";
|
|
2
|
+
import { TypedClass } from "./types";
|
|
1
3
|
export declare function requireTrue(condition: boolean, errorOrFunction: Error | (() => Error)): void;
|
|
2
|
-
|
|
4
|
+
/**
|
|
5
|
+
* Utility function to split an array of type T into a record <K, T[]> based on a
|
|
6
|
+
* function T => K that determines the key of each record
|
|
7
|
+
*/
|
|
8
|
+
export declare function splitArray<T, K extends string | number>(arr: T[], split: (t: T) => K): Record<K, T[] | undefined>;
|
|
9
|
+
export declare function range(startOrEnd: number, endOrNothing?: number | undefined): number[];
|
|
10
|
+
export declare function reduceSequential<T, U>(array: T[], callbackfn: (previousValue: U, currentValue: T, currentIndex: number, array: T[]) => Promise<U>, initialValue: U): Promise<U>;
|
|
11
|
+
export declare function yieldSequential<Source, State, Target>(array: Source[], callbackfn: (previousValue: State, currentValue: Source, currentIndex: number, array: Source[]) => Promise<[State, Target]>, initialValue: State): Promise<[State, Target[]]>;
|
|
12
|
+
export declare function mapSequential<T, R>(array: T[], f: (element: T, index: number, array: T[]) => Promise<R>): Promise<R[]>;
|
|
13
|
+
export declare function unzip<A, B>(array: [A, B][]): [A[], B[]];
|
|
14
|
+
export declare function assertSizeOneOrTwo<T>(arr: T[]): asserts arr is [T] | [T, T];
|
|
15
|
+
/**
|
|
16
|
+
* Computes a dummy value for the given value type.
|
|
17
|
+
*
|
|
18
|
+
* @param valueType - Value type to generate the dummy value for
|
|
19
|
+
* @returns Dummy value for the given value type
|
|
20
|
+
*/
|
|
21
|
+
export declare function dummyValue<Value>(valueType: FlexibleProvablePure<Value>): Value;
|
|
22
|
+
export declare function noop(): void;
|
|
23
|
+
export interface ToFieldable {
|
|
24
|
+
toFields: () => Field[];
|
|
25
|
+
}
|
|
26
|
+
export interface ToFieldableStatic {
|
|
27
|
+
toFields: (value: unknown) => Field[];
|
|
28
|
+
}
|
|
29
|
+
export interface ToJSONableStatic {
|
|
30
|
+
toJSON: (value: unknown) => any;
|
|
31
|
+
}
|
|
32
|
+
export type ProofTypes = typeof Proof<unknown, unknown> | typeof DynamicProof<unknown, unknown>;
|
|
33
|
+
export declare function sleep(ms: number): Promise<void>;
|
|
34
|
+
export declare function filterNonNull<Type>(value: Type | null): value is Type;
|
|
35
|
+
export declare function filterNonUndefined<Type>(value: Type | undefined): value is Type;
|
|
36
|
+
export declare function prefixToField(prefix: string): Field;
|
|
37
|
+
export declare function hashWithPrefix(prefix: string, input: Field[]): import("o1js/dist/node/lib/provable/field").Field;
|
|
38
|
+
export declare function expectDefined<T>(value: T | undefined): asserts value is T;
|
|
39
|
+
type NonMethodKeys<Type> = {
|
|
40
|
+
[Key in keyof Type]: Type[Key] extends Function ? never : Key;
|
|
41
|
+
}[keyof Type];
|
|
42
|
+
export type NonMethods<Type> = Pick<Type, NonMethodKeys<Type>>;
|
|
43
|
+
export declare const MAX_FIELD: import("o1js/dist/node/lib/provable/field").Field;
|
|
44
|
+
/**
|
|
45
|
+
* Returns a boolean indicating whether a given class is a subclass of another class,
|
|
46
|
+
* indicated by the name parameter.
|
|
47
|
+
*/
|
|
48
|
+
export declare function isSubtypeOfName(clas: TypedClass<unknown>, name: string): boolean;
|
|
49
|
+
export declare function safeParseJson<T>(json: string): T;
|
|
50
|
+
export type Nullable<T> = {
|
|
51
|
+
[Key in keyof T]: T[Key] | undefined;
|
|
52
|
+
};
|
|
53
|
+
export declare function isFull<T>(t: Nullable<T>): t is T;
|
|
54
|
+
export declare function padArray<T>(array: T[], batchSize: number, generator: (index: number) => T): T[];
|
|
55
|
+
export declare function batch<T>(arr: T[], batchSize: number, dummy: (index: number) => T): T[][];
|
|
56
|
+
export type Reference<T> = {
|
|
57
|
+
set value(value: T);
|
|
58
|
+
get value(): T;
|
|
59
|
+
};
|
|
60
|
+
export declare function createReference<T>(initial: T): Reference<T>;
|
|
61
|
+
export declare namespace BigIntMath {
|
|
62
|
+
function max(...args: bigint[]): bigint;
|
|
63
|
+
}
|
|
64
|
+
export declare function assertDefined<T>(t: T | undefined, msg?: string): asserts t is T;
|
|
65
|
+
export {};
|
|
3
66
|
//# sourceMappingURL=utils.d.ts.map
|
package/dist/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,wBAAgB,WAAW,CACzB,SAAS,EAAE,OAAO,EAClB,eAAe,EAAE,KAAK,GAAG,CAAC,MAAM,KAAK,CAAC,GACrC,IAAI,CAMN;AAED,wBAAgB,KAAK,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
|
package/dist/utils.js
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { Field, Poseidon, } from "o1js";
|
|
2
|
+
import _ from "lodash";
|
|
1
3
|
export function requireTrue(condition, errorOrFunction) {
|
|
2
4
|
if (!condition) {
|
|
3
5
|
throw typeof errorOrFunction === "function"
|
|
@@ -5,10 +7,170 @@ export function requireTrue(condition, errorOrFunction) {
|
|
|
5
7
|
: errorOrFunction;
|
|
6
8
|
}
|
|
7
9
|
}
|
|
8
|
-
|
|
10
|
+
/**
|
|
11
|
+
* Utility function to split an array of type T into a record <K, T[]> based on a
|
|
12
|
+
* function T => K that determines the key of each record
|
|
13
|
+
*/
|
|
14
|
+
export function splitArray(arr, split) {
|
|
15
|
+
// eslint-disable-next-line @typescript-eslint/consistent-type-assertions
|
|
16
|
+
const record = {};
|
|
17
|
+
arr.forEach((element) => {
|
|
18
|
+
const k = split(element);
|
|
19
|
+
if (record[k] !== undefined) {
|
|
20
|
+
record[k].push(element);
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
record[k] = [element];
|
|
24
|
+
}
|
|
25
|
+
});
|
|
26
|
+
return record;
|
|
27
|
+
}
|
|
28
|
+
export function range(startOrEnd, endOrNothing) {
|
|
29
|
+
let end = endOrNothing;
|
|
30
|
+
let start = startOrEnd;
|
|
9
31
|
if (end === undefined) {
|
|
10
32
|
end = startOrEnd;
|
|
11
|
-
|
|
33
|
+
start = 0;
|
|
34
|
+
}
|
|
35
|
+
return Array.from({ length: end - start }, (ignored, index) => index + start);
|
|
36
|
+
}
|
|
37
|
+
export function reduceSequential(array, callbackfn, initialValue) {
|
|
38
|
+
return array.reduce(async (previousPromise, current, index, arr) => {
|
|
39
|
+
const previous = await previousPromise;
|
|
40
|
+
return await callbackfn(previous, current, index, arr);
|
|
41
|
+
}, Promise.resolve(initialValue));
|
|
42
|
+
}
|
|
43
|
+
export function yieldSequential(array, callbackfn, initialValue) {
|
|
44
|
+
return reduceSequential(array, async ([state, collectedTargets], curr, index, arr) => {
|
|
45
|
+
const [newState, addition] = await callbackfn(state, curr, index, arr);
|
|
46
|
+
// The reason we wrap this in an array here is for a special case where Target is a tuple
|
|
47
|
+
// or array itself. In this case, js interprets by flattening the Value in the array
|
|
48
|
+
// (which it does when a function (like concat) uses a spread operator and the
|
|
49
|
+
// input is an array)
|
|
50
|
+
return [newState, collectedTargets.concat([addition])];
|
|
51
|
+
}, [initialValue, []]);
|
|
52
|
+
}
|
|
53
|
+
export function mapSequential(array, f) {
|
|
54
|
+
return array.reduce(async (r, element, index, a) => {
|
|
55
|
+
const ret = await r;
|
|
56
|
+
const next = await f(element, index, a);
|
|
57
|
+
ret.push(next);
|
|
58
|
+
return ret;
|
|
59
|
+
}, Promise.resolve([]));
|
|
60
|
+
}
|
|
61
|
+
export function unzip(array) {
|
|
62
|
+
const as = array.map(([a]) => a);
|
|
63
|
+
const bs = array.map(([, b]) => b);
|
|
64
|
+
return [as, bs];
|
|
65
|
+
}
|
|
66
|
+
export function assertSizeOneOrTwo(arr) {
|
|
67
|
+
if (!(arr.length === 1 || arr.length === 2)) {
|
|
68
|
+
throw new Error("Given array not size 1 or 2");
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Computes a dummy value for the given value type.
|
|
73
|
+
*
|
|
74
|
+
* @param valueType - Value type to generate the dummy value for
|
|
75
|
+
* @returns Dummy value for the given value type
|
|
76
|
+
*/
|
|
77
|
+
export function dummyValue(valueType) {
|
|
78
|
+
const length = valueType.sizeInFields();
|
|
79
|
+
const fields = Array.from({ length }, () => Field(0));
|
|
80
|
+
// eslint-disable-next-line @typescript-eslint/consistent-type-assertions
|
|
81
|
+
return valueType.fromFields(fields);
|
|
82
|
+
}
|
|
83
|
+
export function noop() { }
|
|
84
|
+
export async function sleep(ms) {
|
|
85
|
+
await new Promise((resolve) => {
|
|
86
|
+
setTimeout(resolve, ms);
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
export function filterNonNull(value) {
|
|
90
|
+
return value !== null;
|
|
91
|
+
}
|
|
92
|
+
export function filterNonUndefined(value) {
|
|
93
|
+
return value !== undefined;
|
|
94
|
+
}
|
|
95
|
+
const encoder = new TextEncoder();
|
|
96
|
+
// Copied from o1js binable.ts:317
|
|
97
|
+
export function prefixToField(prefix) {
|
|
98
|
+
const fieldSize = Field.sizeInBytes;
|
|
99
|
+
if (prefix.length >= fieldSize)
|
|
100
|
+
throw Error("prefix too long");
|
|
101
|
+
const stringBytes = [...encoder.encode(prefix)];
|
|
102
|
+
return Field.fromBytes(stringBytes.concat(Array(fieldSize - stringBytes.length).fill(0)));
|
|
103
|
+
}
|
|
104
|
+
export function hashWithPrefix(prefix, input) {
|
|
105
|
+
const salt = Poseidon.update([Field(0), Field(0), Field(0)], [prefixToField(prefix)]);
|
|
106
|
+
// eslint-disable-next-line @typescript-eslint/consistent-type-assertions
|
|
107
|
+
return Poseidon.update(salt, input)[0];
|
|
108
|
+
}
|
|
109
|
+
// end copy
|
|
110
|
+
export function expectDefined(value) {
|
|
111
|
+
expect(value).toBeDefined();
|
|
112
|
+
}
|
|
113
|
+
export const MAX_FIELD = Field(Field.ORDER - 1n);
|
|
114
|
+
/**
|
|
115
|
+
* Returns a boolean indicating whether a given class is a subclass of another class,
|
|
116
|
+
* indicated by the name parameter.
|
|
117
|
+
*/
|
|
118
|
+
// TODO Change to class reference based comparisons
|
|
119
|
+
export function isSubtypeOfName(clas, name) {
|
|
120
|
+
if (clas === undefined || clas === null) {
|
|
121
|
+
return false;
|
|
122
|
+
}
|
|
123
|
+
if (clas.name === name) {
|
|
124
|
+
return true;
|
|
125
|
+
}
|
|
126
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-argument
|
|
127
|
+
return isSubtypeOfName(Object.getPrototypeOf(clas), name);
|
|
128
|
+
}
|
|
129
|
+
// TODO Eventually, replace this by a schema validation library
|
|
130
|
+
export function safeParseJson(json) {
|
|
131
|
+
// eslint-disable-next-line @typescript-eslint/consistent-type-assertions
|
|
132
|
+
return JSON.parse(json);
|
|
133
|
+
}
|
|
134
|
+
export function isFull(t) {
|
|
135
|
+
return Object.values(t).findIndex((v) => v === undefined) === -1;
|
|
136
|
+
}
|
|
137
|
+
// TODO Restructure utils into separate package and multiple files
|
|
138
|
+
export function padArray(array, batchSize, generator) {
|
|
139
|
+
const slice = array.slice();
|
|
140
|
+
const dummies = range(0, batchSize - (array.length % batchSize)).map((i) => generator(i + array.length));
|
|
141
|
+
slice.push(...dummies);
|
|
142
|
+
return slice;
|
|
143
|
+
}
|
|
144
|
+
export function batch(arr, batchSize, dummy) {
|
|
145
|
+
const padded = padArray(arr, batchSize, dummy);
|
|
146
|
+
const partitioned = _.groupBy(padded.map((v, i) => [v, i]), ([v, i]) => Math.floor(i / batchSize));
|
|
147
|
+
const numBatches = Math.ceil(arr.length / batchSize);
|
|
148
|
+
return range(0, numBatches).map((i) => partitioned[i].map((x) => x[0]));
|
|
149
|
+
}
|
|
150
|
+
class ReferenceObject {
|
|
151
|
+
constructor(internalValue) {
|
|
152
|
+
this.internalValue = internalValue;
|
|
153
|
+
}
|
|
154
|
+
get value() {
|
|
155
|
+
return this.internalValue;
|
|
156
|
+
}
|
|
157
|
+
set value(t) {
|
|
158
|
+
this.internalValue = t;
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
export function createReference(initial) {
|
|
162
|
+
return new ReferenceObject(initial);
|
|
163
|
+
}
|
|
164
|
+
export var BigIntMath;
|
|
165
|
+
(function (BigIntMath) {
|
|
166
|
+
function max(...args) {
|
|
167
|
+
return args.reduce((m, e) => (e > m ? e : m));
|
|
168
|
+
}
|
|
169
|
+
BigIntMath.max = max;
|
|
170
|
+
})(BigIntMath || (BigIntMath = {}));
|
|
171
|
+
export function assertDefined(t, msg) {
|
|
172
|
+
if (t === undefined) {
|
|
173
|
+
throw new Error(msg ?? "Value is undefined");
|
|
12
174
|
}
|
|
13
|
-
return Array.from({ length: end - startOrEnd }, (ignored, index) => index);
|
|
14
175
|
}
|
|
176
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { Proof } from "o1js";
|
|
2
|
+
import type { ArgumentTypes } from "./provableMethod";
|
|
2
3
|
export declare class ProvableMethodExecutionResult {
|
|
3
4
|
moduleName?: string;
|
|
4
5
|
methodName?: string;
|
|
5
|
-
args?:
|
|
6
|
+
args?: ArgumentTypes;
|
|
6
7
|
prover?: () => Promise<Proof<unknown, unknown>>;
|
|
7
8
|
prove<ProofType extends Proof<unknown, unknown>>(): Promise<ProofType>;
|
|
8
9
|
}
|
|
@@ -29,7 +30,7 @@ export declare class ProvableMethodExecutionContext {
|
|
|
29
30
|
*
|
|
30
31
|
* @param methodName - Name of the method being captured in the context
|
|
31
32
|
*/
|
|
32
|
-
beforeMethod(moduleName: string, methodName: string, args:
|
|
33
|
+
beforeMethod(moduleName: string, methodName: string, args: ArgumentTypes): void;
|
|
33
34
|
/**
|
|
34
35
|
* Removes the latest method from the execution context stack,
|
|
35
36
|
* keeping track of the amount of 'unfinished' methods. Allowing
|