zkjson 0.7.1 → 0.8.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.
package/cjs/collection.js CHANGED
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports["default"] = void 0;
7
- var _circomlibjs = require("./circomlibjs.js");
7
+ var _newMemEmptyTrie = _interopRequireDefault(require("./newMemEmptyTrie.js"));
8
8
  var _encoder = require("./encoder.js");
9
9
  var _doc = _interopRequireDefault(require("./doc.js"));
10
10
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
@@ -91,7 +91,7 @@ var Collection = exports["default"] = /*#__PURE__*/function () {
91
91
  while (1) switch (_context2.n) {
92
92
  case 0:
93
93
  _context2.n = 1;
94
- return (0, _circomlibjs.newMemEmptyTrie)();
94
+ return (0, _newMemEmptyTrie["default"])();
95
95
  case 1:
96
96
  this.tree = _context2.v;
97
97
  case 2:
@@ -0,0 +1,148 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+ var _newMemEmptyTrie = _interopRequireDefault(require("./newMemEmptyTrie.js"));
8
+ var _encoder = require("./encoder.js");
9
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
10
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
11
+ function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
12
+ function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { if (r) i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n;else { var o = function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); }; o("next", 0), o("throw", 1), o("return", 2); } }, _regeneratorDefine2(e, r, n, t); }
13
+ function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
14
+ function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
15
+ function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
16
+ function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
17
+ function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
18
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
19
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
20
+ var CollectionTree = exports["default"] = /*#__PURE__*/function () {
21
+ function CollectionTree(_ref) {
22
+ var _ref$size_val = _ref.size_val,
23
+ size_val = _ref$size_val === void 0 ? 256 : _ref$size_val,
24
+ _ref$size_path = _ref.size_path,
25
+ size_path = _ref$size_path === void 0 ? 32 : _ref$size_path,
26
+ _ref$size_json = _ref.size_json,
27
+ size_json = _ref$size_json === void 0 ? 256 : _ref$size_json,
28
+ _ref$level = _ref.level,
29
+ level = _ref$level === void 0 ? 184 : _ref$level,
30
+ kv = _ref.kv;
31
+ _classCallCheck(this, CollectionTree);
32
+ this.kv = kv;
33
+ this.size_val = size_val;
34
+ this.size_path = size_path;
35
+ this.size_json = size_json;
36
+ this.level = level;
37
+ }
38
+ return _createClass(CollectionTree, [{
39
+ key: "init",
40
+ value: function () {
41
+ var _init = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
42
+ return _regenerator().w(function (_context) {
43
+ while (1) switch (_context.n) {
44
+ case 0:
45
+ _context.n = 1;
46
+ return (0, _newMemEmptyTrie["default"])(this.kv);
47
+ case 1:
48
+ this.tree = _context.v;
49
+ case 2:
50
+ return _context.a(2);
51
+ }
52
+ }, _callee, this);
53
+ }));
54
+ function init() {
55
+ return _init.apply(this, arguments);
56
+ }
57
+ return init;
58
+ }()
59
+ }, {
60
+ key: "insert",
61
+ value: function () {
62
+ var _insert = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(_key, _val) {
63
+ var doc, id, val;
64
+ return _regenerator().w(function (_context2) {
65
+ while (1) switch (_context2.n) {
66
+ case 0:
67
+ doc = (0, _encoder.encode)(_val);
68
+ id = (0, _encoder.toIndex)(_key);
69
+ val = (0, _encoder.pad)((0, _encoder.toSignal)(doc), this.size_json);
70
+ _context2.n = 1;
71
+ return this.tree.insert(id, val);
72
+ case 1:
73
+ return _context2.a(2, _context2.v);
74
+ }
75
+ }, _callee2, this);
76
+ }));
77
+ function insert(_x, _x2) {
78
+ return _insert.apply(this, arguments);
79
+ }
80
+ return insert;
81
+ }()
82
+ }, {
83
+ key: "update",
84
+ value: function () {
85
+ var _update = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(_key, _val) {
86
+ var doc, id, val;
87
+ return _regenerator().w(function (_context3) {
88
+ while (1) switch (_context3.n) {
89
+ case 0:
90
+ doc = (0, _encoder.encode)(_val);
91
+ id = (0, _encoder.toIndex)(_key);
92
+ val = (0, _encoder.pad)((0, _encoder.toSignal)(doc), this.size_json);
93
+ _context3.n = 1;
94
+ return this.tree.update(id, val);
95
+ case 1:
96
+ return _context3.a(2, _context3.v);
97
+ }
98
+ }, _callee3, this);
99
+ }));
100
+ function update(_x3, _x4) {
101
+ return _update.apply(this, arguments);
102
+ }
103
+ return update;
104
+ }()
105
+ }, {
106
+ key: "delete",
107
+ value: function () {
108
+ var _delete2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4(_key) {
109
+ var id;
110
+ return _regenerator().w(function (_context4) {
111
+ while (1) switch (_context4.n) {
112
+ case 0:
113
+ id = (0, _encoder.toIndex)(_key);
114
+ _context4.n = 1;
115
+ return this.tree["delete"](id);
116
+ case 1:
117
+ return _context4.a(2, _context4.v);
118
+ }
119
+ }, _callee4, this);
120
+ }));
121
+ function _delete(_x5) {
122
+ return _delete2.apply(this, arguments);
123
+ }
124
+ return _delete;
125
+ }()
126
+ }, {
127
+ key: "get",
128
+ value: function () {
129
+ var _get = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5(_key) {
130
+ var id;
131
+ return _regenerator().w(function (_context5) {
132
+ while (1) switch (_context5.n) {
133
+ case 0:
134
+ id = (0, _encoder.toIndex)(_key);
135
+ _context5.n = 1;
136
+ return this.tree.find(id);
137
+ case 1:
138
+ return _context5.a(2, _context5.v);
139
+ }
140
+ }, _callee5, this);
141
+ }));
142
+ function get(_x6) {
143
+ return _get.apply(this, arguments);
144
+ }
145
+ return get;
146
+ }()
147
+ }]);
148
+ }();
package/cjs/db.js CHANGED
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports["default"] = void 0;
7
- var _circomlibjs = require("./circomlibjs.js");
7
+ var _newMemEmptyTrie = _interopRequireDefault(require("./newMemEmptyTrie.js"));
8
8
  var _snarkjs = require("snarkjs");
9
9
  var _ramda = require("ramda");
10
10
  var _encoder = require("./encoder.js");
@@ -67,7 +67,7 @@ var DB = exports["default"] = /*#__PURE__*/function () {
67
67
  while (1) switch (_context.n) {
68
68
  case 0:
69
69
  _context.n = 1;
70
- return (0, _circomlibjs.newMemEmptyTrie)();
70
+ return (0, _newMemEmptyTrie["default"])();
71
71
  case 1:
72
72
  this.tree = _context.v;
73
73
  this.cols = [];
package/cjs/db_tree.js ADDED
@@ -0,0 +1,398 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+ var _newMemEmptyTrie = _interopRequireDefault(require("./newMemEmptyTrie.js"));
8
+ var _ramda = require("ramda");
9
+ var _collection_tree = _interopRequireDefault(require("./collection_tree.js"));
10
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
11
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
12
+ function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
13
+ function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { if (r) i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n;else { var o = function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); }; o("next", 0), o("throw", 1), o("return", 2); } }, _regeneratorDefine2(e, r, n, t); }
14
+ function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
15
+ function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
16
+ function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
17
+ function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
18
+ function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
19
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
20
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
21
+ var DBTree = exports["default"] = /*#__PURE__*/function () {
22
+ function DBTree(_ref) {
23
+ var _ref$size_val = _ref.size_val,
24
+ size_val = _ref$size_val === void 0 ? 256 : _ref$size_val,
25
+ _ref$size_path = _ref.size_path,
26
+ size_path = _ref$size_path === void 0 ? 32 : _ref$size_path,
27
+ _ref$level = _ref.level,
28
+ level = _ref$level === void 0 ? 184 : _ref$level,
29
+ _ref$size_json = _ref.size_json,
30
+ size_json = _ref$size_json === void 0 ? 256 : _ref$size_json,
31
+ _ref$level_col = _ref.level_col,
32
+ level_col = _ref$level_col === void 0 ? 24 : _ref$level_col,
33
+ kv = _ref.kv;
34
+ _classCallCheck(this, DBTree);
35
+ this.kv = kv;
36
+ this.level_col = level_col;
37
+ this.size_val = size_val;
38
+ this.size_path = size_path;
39
+ this.level = level;
40
+ this.size_json = size_json;
41
+ this.count = 0;
42
+ this.ids = {};
43
+ this.cols = [];
44
+ }
45
+ return _createClass(DBTree, [{
46
+ key: "init",
47
+ value: function () {
48
+ var _init = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
49
+ var _this$kv;
50
+ var count;
51
+ return _regenerator().w(function (_context) {
52
+ while (1) switch (_context.n) {
53
+ case 0:
54
+ this.kvi = (_this$kv = this.kv) === null || _this$kv === void 0 ? void 0 : _this$kv.call(this, "db");
55
+ _context.n = 1;
56
+ return (0, _newMemEmptyTrie["default"])(this.kvi);
57
+ case 1:
58
+ this.tree = _context.v;
59
+ if (this.kvi) {
60
+ count = this.kvi.get("count");
61
+ if (!(0, _ramda.isNil)(count)) this.count = count;
62
+ }
63
+ case 2:
64
+ return _context.a(2);
65
+ }
66
+ }, _callee, this);
67
+ }));
68
+ function init() {
69
+ return _init.apply(this, arguments);
70
+ }
71
+ return init;
72
+ }()
73
+ }, {
74
+ key: "exists",
75
+ value: function () {
76
+ var _exists = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(num) {
77
+ var ex, _t;
78
+ return _regenerator().w(function (_context2) {
79
+ while (1) switch (_context2.n) {
80
+ case 0:
81
+ _t = this.ids[num];
82
+ if (_t) {
83
+ _context2.n = 2;
84
+ break;
85
+ }
86
+ _context2.n = 1;
87
+ return this.tree.find(num);
88
+ case 1:
89
+ _t = _context2.v.found;
90
+ case 2:
91
+ ex = _t;
92
+ if (ex) this.ids[num] = true;
93
+ return _context2.a(2, ex);
94
+ }
95
+ }, _callee2, this);
96
+ }));
97
+ function exists(_x) {
98
+ return _exists.apply(this, arguments);
99
+ }
100
+ return exists;
101
+ }()
102
+ }, {
103
+ key: "getID",
104
+ value: function () {
105
+ var _getID = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(num) {
106
+ return _regenerator().w(function (_context3) {
107
+ while (1) switch (_context3.n) {
108
+ case 0:
109
+ if ((0, _ramda.isNil)(num)) {
110
+ _context3.n = 3;
111
+ break;
112
+ }
113
+ _context3.n = 1;
114
+ return this.exists(num);
115
+ case 1:
116
+ if (!_context3.v) {
117
+ _context3.n = 2;
118
+ break;
119
+ }
120
+ throw Error("id exists");
121
+ case 2:
122
+ return _context3.a(2, num);
123
+ case 3:
124
+ _context3.n = 4;
125
+ return this.exists(this.count);
126
+ case 4:
127
+ if (!_context3.v) {
128
+ _context3.n = 5;
129
+ break;
130
+ }
131
+ this.count++;
132
+ _context3.n = 3;
133
+ break;
134
+ case 5:
135
+ return _context3.a(2, this.count);
136
+ case 6:
137
+ return _context3.a(2);
138
+ }
139
+ }, _callee3, this);
140
+ }));
141
+ function getID(_x2) {
142
+ return _getID.apply(this, arguments);
143
+ }
144
+ return getID;
145
+ }()
146
+ }, {
147
+ key: "addCollection",
148
+ value: function () {
149
+ var _addCollection = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4(num) {
150
+ var _this$kv2;
151
+ var id, col, _col, root;
152
+ return _regenerator().w(function (_context4) {
153
+ while (1) switch (_context4.n) {
154
+ case 0:
155
+ if (!(!(0, _ramda.isNil)(num) && (!(0, _ramda.is)(Number, num) || Math.round(num) !== num))) {
156
+ _context4.n = 1;
157
+ break;
158
+ }
159
+ throw Error("id is not an integer");
160
+ case 1:
161
+ id = null;
162
+ if ((0, _ramda.isNil)(num)) {
163
+ _context4.n = 5;
164
+ break;
165
+ }
166
+ if (!this.cols[num]) {
167
+ _context4.n = 2;
168
+ break;
169
+ }
170
+ throw Error("collection exists");
171
+ case 2:
172
+ _context4.n = 3;
173
+ return this.tree.find(num);
174
+ case 3:
175
+ col = _context4.v;
176
+ if (!col.found) {
177
+ _context4.n = 4;
178
+ break;
179
+ }
180
+ throw Error("collection exists");
181
+ case 4:
182
+ id = num;
183
+ _context4.n = 7;
184
+ break;
185
+ case 5:
186
+ _context4.n = 6;
187
+ return this.getID(num);
188
+ case 6:
189
+ id = _context4.v;
190
+ case 7:
191
+ _col = new _collection_tree["default"]({
192
+ size_val: this.size_val,
193
+ size_path: this.size_path,
194
+ level: this.level,
195
+ size_json: this.size_json,
196
+ kv: (_this$kv2 = this.kv) === null || _this$kv2 === void 0 ? void 0 : _this$kv2.call(this, "dir_".concat(id))
197
+ });
198
+ _context4.n = 8;
199
+ return _col.init();
200
+ case 8:
201
+ this.cols[id] = _col;
202
+ this.ids[id] = true;
203
+ root = _col.tree.F.toObject(_col.tree.root).toString();
204
+ _context4.n = 9;
205
+ return this.tree.insert(id, [root]);
206
+ case 9:
207
+ if (id === this.count) {
208
+ this.count++;
209
+ if (this.kvi) this.kvi.put("count", this.count);
210
+ }
211
+ return _context4.a(2, id);
212
+ }
213
+ }, _callee4, this);
214
+ }));
215
+ function addCollection(_x3) {
216
+ return _addCollection.apply(this, arguments);
217
+ }
218
+ return addCollection;
219
+ }()
220
+ }, {
221
+ key: "getColTree",
222
+ value: function getColTree(col) {
223
+ var _col = this.cols[col];
224
+ if (!_col) throw Error("collection doesn't exist");
225
+ return _col;
226
+ }
227
+ }, {
228
+ key: "insert",
229
+ value: function () {
230
+ var _insert = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5(col, _key, _val) {
231
+ var _col, update, res_doc, res_col;
232
+ return _regenerator().w(function (_context5) {
233
+ while (1) switch (_context5.n) {
234
+ case 0:
235
+ _col = this.getColTree(col);
236
+ update = false;
237
+ _context5.n = 1;
238
+ return _col.get(_key);
239
+ case 1:
240
+ if (!_context5.v.found) {
241
+ _context5.n = 3;
242
+ break;
243
+ }
244
+ update = true;
245
+ _context5.n = 2;
246
+ return _col.update(_key, _val);
247
+ case 2:
248
+ res_doc = _context5.v;
249
+ _context5.n = 5;
250
+ break;
251
+ case 3:
252
+ _context5.n = 4;
253
+ return _col.insert(_key, _val);
254
+ case 4:
255
+ res_doc = _context5.v;
256
+ case 5:
257
+ _context5.n = 6;
258
+ return this.updateDB(_col, col);
259
+ case 6:
260
+ res_col = _context5.v;
261
+ return _context5.a(2, {
262
+ update: update,
263
+ doc: res_doc,
264
+ col: res_col,
265
+ tree: _col.tree
266
+ });
267
+ }
268
+ }, _callee5, this);
269
+ }));
270
+ function insert(_x4, _x5, _x6) {
271
+ return _insert.apply(this, arguments);
272
+ }
273
+ return insert;
274
+ }()
275
+ }, {
276
+ key: "updateDB",
277
+ value: function () {
278
+ var _updateDB = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6(_col, col) {
279
+ var root, colD;
280
+ return _regenerator().w(function (_context6) {
281
+ while (1) switch (_context6.n) {
282
+ case 0:
283
+ root = _col.tree.F.toObject(_col.tree.root).toString();
284
+ colD = col;
285
+ _context6.n = 1;
286
+ return this.tree.update(colD, [root]);
287
+ case 1:
288
+ return _context6.a(2, _context6.v);
289
+ }
290
+ }, _callee6, this);
291
+ }));
292
+ function updateDB(_x7, _x8) {
293
+ return _updateDB.apply(this, arguments);
294
+ }
295
+ return updateDB;
296
+ }()
297
+ }, {
298
+ key: "update",
299
+ value: function () {
300
+ var _update = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee7(col, _key, _val) {
301
+ var _col, res_doc, res_col;
302
+ return _regenerator().w(function (_context7) {
303
+ while (1) switch (_context7.n) {
304
+ case 0:
305
+ _col = this.getColTree(col);
306
+ _context7.n = 1;
307
+ return _col.update(_key, _val);
308
+ case 1:
309
+ res_doc = _context7.v;
310
+ _context7.n = 2;
311
+ return this.updateDB(_col, col);
312
+ case 2:
313
+ res_col = _context7.v;
314
+ return _context7.a(2, {
315
+ doc: res_doc,
316
+ col: res_col,
317
+ tree: _col.tree
318
+ });
319
+ }
320
+ }, _callee7, this);
321
+ }));
322
+ function update(_x9, _x0, _x1) {
323
+ return _update.apply(this, arguments);
324
+ }
325
+ return update;
326
+ }()
327
+ }, {
328
+ key: "delete",
329
+ value: function () {
330
+ var _delete2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee8(col, _key) {
331
+ var _col, res_doc, res_col;
332
+ return _regenerator().w(function (_context8) {
333
+ while (1) switch (_context8.n) {
334
+ case 0:
335
+ _col = this.getColTree(col);
336
+ _context8.n = 1;
337
+ return _col["delete"](_key);
338
+ case 1:
339
+ res_doc = _context8.v;
340
+ _context8.n = 2;
341
+ return this.updateDB(_col, col);
342
+ case 2:
343
+ res_col = _context8.v;
344
+ return _context8.a(2, {
345
+ doc: res_doc,
346
+ col: res_col,
347
+ tree: _col.tree
348
+ });
349
+ }
350
+ }, _callee8, this);
351
+ }));
352
+ function _delete(_x10, _x11) {
353
+ return _delete2.apply(this, arguments);
354
+ }
355
+ return _delete;
356
+ }()
357
+ }, {
358
+ key: "get",
359
+ value: function () {
360
+ var _get = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee9(col, _key) {
361
+ var _col;
362
+ return _regenerator().w(function (_context9) {
363
+ while (1) switch (_context9.n) {
364
+ case 0:
365
+ _col = this.getColTree(col);
366
+ _context9.n = 1;
367
+ return _col.get(_key);
368
+ case 1:
369
+ return _context9.a(2, _context9.v);
370
+ }
371
+ }, _callee9, this);
372
+ }));
373
+ function get(_x12, _x13) {
374
+ return _get.apply(this, arguments);
375
+ }
376
+ return get;
377
+ }()
378
+ }, {
379
+ key: "getCol",
380
+ value: function () {
381
+ var _getCol = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee0(col) {
382
+ return _regenerator().w(function (_context0) {
383
+ while (1) switch (_context0.n) {
384
+ case 0:
385
+ _context0.n = 1;
386
+ return this.tree.find(col);
387
+ case 1:
388
+ return _context0.a(2, _context0.v);
389
+ }
390
+ }, _callee0, this);
391
+ }));
392
+ function getCol(_x14) {
393
+ return _getCol.apply(this, arguments);
394
+ }
395
+ return getCol;
396
+ }()
397
+ }]);
398
+ }();
package/cjs/index.js CHANGED
@@ -4,6 +4,8 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  var _exportNames = {
7
+ DBTree: true,
8
+ CollectionTree: true,
7
9
  DB: true,
8
10
  Doc: true,
9
11
  Collection: true,
@@ -15,12 +17,24 @@ Object.defineProperty(exports, "Collection", {
15
17
  return _collection["default"];
16
18
  }
17
19
  });
20
+ Object.defineProperty(exports, "CollectionTree", {
21
+ enumerable: true,
22
+ get: function get() {
23
+ return _collection_tree["default"];
24
+ }
25
+ });
18
26
  Object.defineProperty(exports, "DB", {
19
27
  enumerable: true,
20
28
  get: function get() {
21
29
  return _db["default"];
22
30
  }
23
31
  });
32
+ Object.defineProperty(exports, "DBTree", {
33
+ enumerable: true,
34
+ get: function get() {
35
+ return _db_tree["default"];
36
+ }
37
+ });
24
38
  Object.defineProperty(exports, "Doc", {
25
39
  enumerable: true,
26
40
  get: function get() {
@@ -33,6 +47,8 @@ Object.defineProperty(exports, "NFT", {
33
47
  return _nft["default"];
34
48
  }
35
49
  });
50
+ var _db_tree = _interopRequireDefault(require("./db_tree.js"));
51
+ var _collection_tree = _interopRequireDefault(require("./collection_tree.js"));
36
52
  var _db = _interopRequireDefault(require("./db.js"));
37
53
  var _doc = _interopRequireDefault(require("./doc.js"));
38
54
  var _collection = _interopRequireDefault(require("./collection.js"));
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = newMemEmptyTrie;
7
+ var _SMTMemDb = _interopRequireDefault(require("./circomlibjs/SMTMemDb.js"));
8
+ var _SMT = _interopRequireDefault(require("./circomlibjs/SMT.js"));
9
+ var _getHashes = _interopRequireDefault(require("./circomlibjs/getHashes.js"));
10
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
11
+ function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
12
+ function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { if (r) i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n;else { var o = function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); }; o("next", 0), o("throw", 1), o("return", 2); } }, _regeneratorDefine2(e, r, n, t); }
13
+ function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
14
+ function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
15
+ function newMemEmptyTrie(_x) {
16
+ return _newMemEmptyTrie.apply(this, arguments);
17
+ }
18
+ function _newMemEmptyTrie() {
19
+ _newMemEmptyTrie = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(kv) {
20
+ var _yield$getHashes, hash0, hash1, F, db, rt, smt;
21
+ return _regenerator().w(function (_context) {
22
+ while (1) switch (_context.n) {
23
+ case 0:
24
+ _context.n = 1;
25
+ return (0, _getHashes["default"])();
26
+ case 1:
27
+ _yield$getHashes = _context.v;
28
+ hash0 = _yield$getHashes.hash0;
29
+ hash1 = _yield$getHashes.hash1;
30
+ F = _yield$getHashes.F;
31
+ db = new _SMTMemDb["default"](F, kv);
32
+ _context.n = 2;
33
+ return db.getRoot();
34
+ case 2:
35
+ rt = _context.v;
36
+ smt = new _SMT["default"](db, rt, hash0, hash1, F);
37
+ return _context.a(2, smt);
38
+ }
39
+ }, _callee);
40
+ }));
41
+ return _newMemEmptyTrie.apply(this, arguments);
42
+ }