@silvana-one/storage 1.0.42 → 1.1.0

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.
@@ -16,7 +16,7 @@ declare const OffchainMap_base: typeof import("node_modules/o1js/dist/node/lib/p
16
16
  export declare class OffchainMap extends OffchainMap_base {
17
17
  }
18
18
  declare const OffchainMapOption_base: import("node_modules/o1js/dist/node/lib/provable/types/provable-intf.js").Provable<Option<import("node_modules/o1js/dist/node/lib/provable/merkle-tree-indexed.js").IndexedMerkleMapBase, {
19
- root: bigint;
19
+ _internalRoot: bigint;
20
20
  length: bigint;
21
21
  data: {
22
22
  nodes: (bigint | undefined)[][];
@@ -28,7 +28,7 @@ declare const OffchainMapOption_base: import("node_modules/o1js/dist/node/lib/pr
28
28
  }[];
29
29
  };
30
30
  }>, {
31
- root: bigint;
31
+ _internalRoot: bigint;
32
32
  length: bigint;
33
33
  data: {
34
34
  nodes: (bigint | undefined)[][];
@@ -43,7 +43,7 @@ declare const OffchainMapOption_base: import("node_modules/o1js/dist/node/lib/pr
43
43
  isSome: Bool;
44
44
  value: import("node_modules/o1js/dist/node/lib/provable/merkle-tree-indexed.js").IndexedMerkleMapBase;
45
45
  }) => Option<import("node_modules/o1js/dist/node/lib/provable/merkle-tree-indexed.js").IndexedMerkleMapBase, {
46
- root: bigint;
46
+ _internalRoot: bigint;
47
47
  length: bigint;
48
48
  data: {
49
49
  nodes: (bigint | undefined)[][];
@@ -56,7 +56,7 @@ declare const OffchainMapOption_base: import("node_modules/o1js/dist/node/lib/pr
56
56
  };
57
57
  }>) & {
58
58
  fromValue(value: import("node_modules/o1js/dist/node/lib/provable/merkle-tree-indexed.js").IndexedMerkleMapBase | {
59
- root: bigint;
59
+ _internalRoot: bigint;
60
60
  length: bigint;
61
61
  data: {
62
62
  nodes: (bigint | undefined)[][];
@@ -70,7 +70,7 @@ declare const OffchainMapOption_base: import("node_modules/o1js/dist/node/lib/pr
70
70
  } | {
71
71
  isSome: boolean | Bool;
72
72
  value: import("node_modules/o1js/dist/node/lib/provable/merkle-tree-indexed.js").IndexedMerkleMapBase | {
73
- root: bigint;
73
+ _internalRoot: bigint;
74
74
  length: bigint;
75
75
  data: {
76
76
  nodes: (bigint | undefined)[][];
@@ -83,7 +83,7 @@ declare const OffchainMapOption_base: import("node_modules/o1js/dist/node/lib/pr
83
83
  };
84
84
  };
85
85
  } | undefined): Option<import("node_modules/o1js/dist/node/lib/provable/merkle-tree-indexed.js").IndexedMerkleMapBase, {
86
- root: bigint;
86
+ _internalRoot: bigint;
87
87
  length: bigint;
88
88
  data: {
89
89
  nodes: (bigint | undefined)[][];
@@ -96,7 +96,7 @@ declare const OffchainMapOption_base: import("node_modules/o1js/dist/node/lib/pr
96
96
  };
97
97
  }>;
98
98
  from(value?: import("node_modules/o1js/dist/node/lib/provable/merkle-tree-indexed.js").IndexedMerkleMapBase | {
99
- root: bigint;
99
+ _internalRoot: bigint;
100
100
  length: bigint;
101
101
  data: {
102
102
  nodes: (bigint | undefined)[][];
@@ -108,7 +108,7 @@ declare const OffchainMapOption_base: import("node_modules/o1js/dist/node/lib/pr
108
108
  }[];
109
109
  };
110
110
  } | undefined): Option<import("node_modules/o1js/dist/node/lib/provable/merkle-tree-indexed.js").IndexedMerkleMapBase, {
111
- root: bigint;
111
+ _internalRoot: bigint;
112
112
  length: bigint;
113
113
  data: {
114
114
  nodes: (bigint | undefined)[][];
@@ -121,7 +121,7 @@ declare const OffchainMapOption_base: import("node_modules/o1js/dist/node/lib/pr
121
121
  };
122
122
  }>;
123
123
  none(): Option<import("node_modules/o1js/dist/node/lib/provable/merkle-tree-indexed.js").IndexedMerkleMapBase, {
124
- root: bigint;
124
+ _internalRoot: bigint;
125
125
  length: bigint;
126
126
  data: {
127
127
  nodes: (bigint | undefined)[][];
@@ -1,10 +1,9 @@
1
- import { Experimental, Struct, Field, Option, Provable } from "o1js";
1
+ import { IndexedMerkleMap, Struct, Field, Option, Provable } from "o1js";
2
2
  import { serializeIndexedMap, loadIndexedMerkleMap, } from "../indexed-map/indexed-map.js";
3
3
  import { sleep } from "../util/sleep.js";
4
4
  import { Storage } from "../storage/storage.js";
5
5
  import { createIpfsURL } from "../storage/ipfs.js";
6
6
  import { pinJSON } from "../storage/pinata.js";
7
- const { IndexedMerkleMap } = Experimental;
8
7
  const OFFCHAIN_MAP_HEIGHT = 20;
9
8
  /** Represents the Offchain Map using an Indexed Merkle Map. */
10
9
  export class OffchainMap extends IndexedMerkleMap(OFFCHAIN_MAP_HEIGHT) {
@@ -1 +1 @@
1
- {"version":3,"file":"offchain-map.js","sourceRoot":"","sources":["../../../src/whitelist/offchain-map.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"offchain-map.js","sourceRoot":"","sources":["../../../src/whitelist/offchain-map.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,17 +1,18 @@
1
1
  {
2
2
  "name": "@silvana-one/storage",
3
3
  "description": "Silvana Storage Library",
4
- "version": "1.0.42",
4
+ "version": "1.1.0",
5
5
  "author": "DFST",
6
6
  "bugs": "https://github.com/SilvanaOne/silvana-lib/issues",
7
7
  "dependencies": {
8
8
  "tslib": "^2.8.1"
9
9
  },
10
10
  "devDependencies": {
11
- "@types/node": "^24.3.0",
12
- "esbuild": "^0.25.9",
13
- "o1js": "2.4.0",
14
- "typescript": "^5.9.2"
11
+ "@types/node": "^24.9.1",
12
+ "esbuild": "^0.25.11",
13
+ "o1js": "2.10.0",
14
+ "ts-node": "^10.9.2",
15
+ "typescript": "^5.9.3"
15
16
  },
16
17
  "engines": {
17
18
  "node": ">=20.0.0"
@@ -45,7 +46,7 @@
45
46
  "license": "Apache-2.0",
46
47
  "main": "dist/web/index.js",
47
48
  "peerDependencies": {
48
- "o1js": "2.4.0"
49
+ "o1js": "2.10.0"
49
50
  },
50
51
  "publishConfig": {
51
52
  "access": "public"
@@ -53,7 +54,9 @@
53
54
  "repository": "SilvanaOne/silvana-lib.git",
54
55
  "scripts": {
55
56
  "build": "rm -rf dist && tsc && tsc --build tsconfig.web.json && node build-cjs.js",
56
- "release": "npm publish --access public"
57
+ "release": "npm publish --access public",
58
+ "test": "NODE_NO_WARNINGS=1 node --loader=ts-node/esm --enable-source-maps --test",
59
+ "test:indexed-map": "npm run test test/indexed-map.test.ts"
57
60
  },
58
61
  "type": "module",
59
62
  "types": "./dist/node/index.d.ts"
@@ -1,14 +1,12 @@
1
- import { Experimental, Field } from "o1js";
1
+ import { IndexedMerkleMap, Field } from "o1js";
2
2
  import { bigintToBase64, bigintFromBase64 } from "../base64/bigint.js";
3
3
  import { sleep } from "../util/sleep.js";
4
4
  import { pinJSON } from "../storage/pinata.js";
5
5
 
6
- const { IndexedMerkleMap } = Experimental;
7
- type IndexedMerkleMap = Experimental.IndexedMerkleMap;
8
-
9
6
  export interface IndexedMapSerialized {
10
7
  height: number;
11
8
  root: string;
9
+ internalRoot: string;
12
10
  length: string;
13
11
  nodes: string;
14
12
  sortedLeaves: string;
@@ -91,6 +89,7 @@ export function serializeIndexedMap(
91
89
  return {
92
90
  height: map.height,
93
91
  root: map.root.toJSON(),
92
+ internalRoot: map._internalRoot.toJSON(),
94
93
  length: map.length.toJSON(),
95
94
  nodes: JSON.stringify(map.data.get().nodes, (_, v) =>
96
95
  typeof v === "bigint" ? "n" + bigintToBase64(v) : v
@@ -131,6 +130,7 @@ export function parseIndexedMapSerialized(
131
130
  if (
132
131
  json.height === undefined ||
133
132
  json.root === undefined ||
133
+ json.internalRoot === undefined ||
134
134
  json.length === undefined ||
135
135
  json.nodes === undefined ||
136
136
  json.sortedLeaves === undefined
@@ -140,6 +140,8 @@ export function parseIndexedMapSerialized(
140
140
  throw new Error("wrong IndexedMerkleMap height format");
141
141
  if (typeof json.root !== "string")
142
142
  throw new Error("wrong IndexedMerkleMap root format");
143
+ if (typeof json.internalRoot !== "string")
144
+ throw new Error("wrong IndexedMerkleMap internalRoot format");
143
145
  if (typeof json.length !== "string")
144
146
  throw new Error("wrong IndexedMerkleMap length format");
145
147
  if (typeof json.nodes !== "string")
@@ -177,7 +179,7 @@ function deserializeIndexedMerkleMapInternal(params: {
177
179
  }
178
180
  );
179
181
 
180
- map.root = Field.fromJSON(serializedIndexedMap.root);
182
+ map._internalRoot = Field.fromJSON(serializedIndexedMap.internalRoot);
181
183
  map.length = Field.fromJSON(serializedIndexedMap.length);
182
184
  map.data.updateAsProver(() => {
183
185
  return {
@@ -185,5 +187,12 @@ function deserializeIndexedMerkleMapInternal(params: {
185
187
  sortedLeaves: [...sortedLeaves],
186
188
  };
187
189
  });
190
+
191
+ if (
192
+ map.root.equals(Field.fromJSON(serializedIndexedMap.root)).toBoolean() ===
193
+ false
194
+ ) {
195
+ throw new Error("wrong IndexedMap root");
196
+ }
188
197
  return map;
189
198
  }
@@ -1,4 +1,4 @@
1
- import { Experimental, Struct, Field, Option, Provable, Bool } from "o1js";
1
+ import { IndexedMerkleMap, Struct, Field, Option, Provable, Bool } from "o1js";
2
2
  import {
3
3
  serializeIndexedMap,
4
4
  loadIndexedMerkleMap,
@@ -10,8 +10,6 @@ import { Storage, IpfsHash } from "../storage/storage.js";
10
10
  import { createIpfsURL } from "../storage/ipfs.js";
11
11
  import { pinJSON } from "../storage/pinata.js";
12
12
 
13
- const { IndexedMerkleMap } = Experimental;
14
- type IndexedMerkleMap = Experimental.IndexedMerkleMap;
15
13
  const OFFCHAIN_MAP_HEIGHT = 20;
16
14
 
17
15
  export interface OffchainMapSerialized extends IndexedMapSerializedJson {