@peerbit/indexer-sqlite3 1.2.15 → 1.2.16-263159d

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.
@@ -9916,21 +9916,28 @@ var SQLiteIndices = class _SQLiteIndices {
9916
9916
  }
9917
9917
  async scope(name) {
9918
9918
  if (!this.scopes.has(name)) {
9919
- const scope = new _SQLiteIndices({
9919
+ const scope2 = new _SQLiteIndices({
9920
9920
  scope: [...this._scope, name],
9921
9921
  db: this.properties.db,
9922
9922
  parent: this
9923
9923
  });
9924
9924
  if (!this.closed) {
9925
- await scope.start();
9925
+ await scope2.start();
9926
9926
  }
9927
- this.scopes.set(name, scope);
9927
+ this.scopes.set(name, scope2);
9928
+ return scope2;
9928
9929
  }
9929
- return this.scopes.get(name);
9930
+ const scope = this.scopes.get(name);
9931
+ if (!this.closed) {
9932
+ await scope.start();
9933
+ }
9934
+ return scope;
9930
9935
  }
9931
9936
  async start() {
9932
9937
  this.closed = false;
9933
- await this.properties.db.open();
9938
+ if (!this.properties.parent) {
9939
+ await this.properties.db.open();
9940
+ }
9934
9941
  for (const scope of this.scopes.values()) {
9935
9942
  await scope.start();
9936
9943
  }
@@ -1 +1 @@
1
- {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../src/engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../src/engine.ts"],"names":[],"mappings":"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"}
@@ -515,12 +515,20 @@ export class SQLiteIndices {
515
515
  await scope.start();
516
516
  }
517
517
  this.scopes.set(name, scope);
518
+ return scope;
518
519
  }
519
- return this.scopes.get(name);
520
+ const scope = this.scopes.get(name);
521
+ if (!this.closed) {
522
+ // TODO test this code path
523
+ await scope.start();
524
+ }
525
+ return scope;
520
526
  }
521
527
  async start() {
522
528
  this.closed = false;
523
- await this.properties.db.open(); // TODO only open if parent is not defined ? or this method will not be the opposite of close
529
+ if (!this.properties.parent) {
530
+ await this.properties.db.open();
531
+ }
524
532
  for (const scope of this.scopes.values()) {
525
533
  await scope.start();
526
534
  }
@@ -1 +1 @@
1
- {"version":3,"file":"engine.js","sourceRoot":"","sources":["../../src/engine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuC,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAOhF,OAAO,KAAK,KAAK,MAAM,4BAA4B,CAAC;AACpD,OAAO,EAAE,EAAE,IAAI,IAAI,EAAE,MAAM,MAAM,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClE,OAAO,EACN,iBAAiB,EAEjB,SAAS,EACT,0BAA0B,EAC1B,2BAA2B,EAC3B,kBAAkB,EAClB,2BAA2B,EAC3B,wBAAwB,EACxB,gBAAgB,EAChB,gBAAgB,EAChB,mBAAmB,EACnB,uBAAuB,EACvB,WAAW,EACX,qBAAqB,EACrB,MAAM,EACN,wBAAwB,EACxB,YAAY,EACZ,wBAAwB,EACxB,cAAc,GACd,MAAM,aAAa,CAAC;AAGrB,MAAM,mBAAmB,GAAG,CAAC,IAAc,EAAE,EAAE;IAC9C,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC,CAAC;AACzD,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,CAAC,KAAY,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC;AAC9D,MAAM,mBAAmB,GAAG,CAAC,KAAY,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,GAAG,YAAY,CAAC;AACxE,MAAM,wBAAwB,GAAG,CAAC,KAAY,EAAE,EAAE,CACjD,KAAK,CAAC,IAAI,GAAG,mBAAmB,CAAC;AAElC,MAAM,OAAO,YAAY;IAwBd;IArBV,aAAa,CAAY;IACzB,gBAAgB,CAAU;IAC1B,OAAO,CAAe;IACd,WAAW,CAAU;IACrB,WAAW,CAAW;IACtB,OAAO,CAAsB;IAC7B,OAAO,CAOb,CAAC,2BAA2B;IACtB,YAAY,CAA6C;IAEjE,eAAe,CAAS;IACxB,MAAM,GAAY,IAAI,CAAC;IAEvB,EAAE,CAAS;IACX,YACU,UAMR,EACD,OAAsC;QAP7B,eAAU,GAAV,UAAU,CAMlB;QAGD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC;QACjB,IAAI,CAAC,WAAW;YACf,UAAU,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;gBAC1B,CAAC,CAAC,GAAG,GAAG,mBAAmB,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;gBACvD,CAAC,CAAC,SAAS,CAAC;QACd,IAAI,CAAC,eAAe,GAAG,OAAO,EAAE,eAAe,IAAI,IAAI,CAAC;QACxD,IAAI,CAAC,OAAO,GAAG,IAAI,YAAY,CAAC;YAC/B,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;SACtD,CAAC,CAAC;IACJ,CAAC;IAED,IAAI,MAAM;QACT,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;QACnC,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC;IACrB,CAAC;IAED,IAAI,UAAU;QACb,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;QACnC,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,CAAC;IACzB,CAAC;IAED,IAAI,MAAM;QACT,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;QACnC,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC;IACrB,CAAC;IAED,IAAI,CAAC,UAA6C;QACjD,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;YACxB,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC;gBACrD,CAAC,CAAC,UAAU,CAAC,OAAO;gBACpB,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACzB,CAAC;aAAM,CAAC;YACP,MAAM,OAAO,GAAG,KAAK,CAAC,aAAa,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YAEvD,IAAI,CAAC,OAAO,EAAE,CAAC;gBACd,MAAM,IAAI,KAAK,CACd,6EAA6E,CAC7E,CAAC;YACH,CAAC;YAED,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC;QAC9B,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;QACnC,CAAC;QAED,IAAI,CAAC,gBAAgB,GAAG,uBAAuB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAEpE,OAAO,IAAI,CAAC;IACb,CAAC;IAED,KAAK,CAAC,KAAK;QACV,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;YAC3B,OAAO;QACR,CAAC;QAED,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACnE,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACpC,CAAC;QAED,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,CAAC;QAEhC,IAAI,CAAC,OAAO,GAAG,IAAI,GAAG,EAAE,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,IAAI,GAAG,EAAE,CAAC;QAEzB,MAAM,MAAM,GAAG,WAAW,CACzB,IAAI,CAAC,UAAU,CAAC,MAAO,EACvB,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,EAC1C,uBAAuB,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,iCAAiC;QAC9E,KAAK,EACL,SAAS,EACT,KAAK,CAEL,CAAC;QAEF,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,IAAI,CAAC,CAAC;QAE1D,MAAM,SAAS,GAAG,MAAM,CAAC;QAEzB,KAAK,MAAM,KAAK,IAAI,SAAS,EAAE,CAAC;YAC/B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAEpC,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;gBACpC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACvB,CAAC;YAED,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;gBAClB,yDAAyD;gBACzD,uCAAuC;gBACvC,SAAS;YACV,CAAC;YAED,MAAM,cAAc,GAAG,8BAA8B,KAAK,CAAC,IAAI,KAAK,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;YAC1J,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAExC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gBA+BI;YAEJ,wBAAwB;YACxB,IAAI,MAAM,GAAG,eAAe,KAAK,CAAC,IAAI,MAAM,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,KAAK,CAAC,OAAO,GAAG,CAAC;YAErM,4CAA4C;YAC5C,IAAI,UAAU,GAAG,0BAA0B,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;YAExL,MAAM,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;YACjE,MAAM,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,OAAO,CAAC,UAAU,EAAE,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAC;YAEzE,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;gBAClB,MAAM,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,OAAO,CAC/B,cAAc,CAAC,KAAK,CAAC,EACrB,wBAAwB,CAAC,KAAK,CAAC,CAC/B,CAAC;YACH,CAAC;QACF,CAAC;QAED,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC,GAAG,EAAE;YACpC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACvB,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBACnC,IAAI,CAAC,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;oBACpB,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;gBACzB,CAAC;YACF,CAAC;QACF,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QAEzB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACrB,CAAC;IAEO,KAAK,CAAC,eAAe;QAC5B,IAAI,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,QAAQ,EAAE,CAAC;YACtD,oGAAoG;YACpG,OAAO;QACR,CAAC;IACF,CAAC;IAED,KAAK,CAAC,IAAI;QACT,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,OAAO;QACR,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,aAAa,CAAC,IAAI,CAAC,YAAa,CAAC,CAAC;QAElC,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAE7B,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QAErB,KAAK,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACpC,MAAM,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QAC/B,CAAC;QAED,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,IAAI;QACT,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,wBAAwB,IAAI,CAAC,EAAE,gBAAgB,CAAC,CAAC;QAClE,CAAC;QAED,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,aAAa,CAAC,IAAI,CAAC,YAAa,CAAC,CAAC;QAElC,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAE7B,8BAA8B;QAC9B,kDAAkD;QAElD,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACtC,MAAM,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,wBAAwB,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;QACrE,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QAErB,KAAK,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACpC,MAAM,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QAC/B,CAAC;QACD,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;IAC3B,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAChC,QAAa,EACb,KAAY;QAEZ,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAC7C,wBAAwB,CAAC,KAAK,CAAC,CAC9B,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC3C,MAAM,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC;QACrB,OAAO,OAAO,CAAC;IAChB,CAAC;IACD,KAAK,CAAC,GAAG,CACR,EAAe,EACf,OAA0B;QAE1B,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACtC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,wBAAwB,CAC1D,KAAK,EACL,OAAO,EAAE,KAAK,CACd,CAAC;YACF,MAAM,GAAG,GAAG,GAAG,mBAAmB,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,UAAU,IAAI,CAAC,gBAAgB,cAAc,CAAC;YAC3H,IAAI,CAAC;gBACJ,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBACxD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC;oBAC3B,KAAK,CAAC,YAAY,EAAE,IAAI,EAAE,IAAI;wBAC7B,CAAC,CAAC,gBAAgB,CAAC,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC;wBACxD,CAAC,CAAC,EAAE,CAAC,GAAG;iBACT,CAAC,CAAC;gBACH,IACC,IAAI,EAAE,CAAC,qBAAqB,CAAC,KAAK,EAAE,KAAK,CAAC,OAAiB,CAAC,CAAC,IAAI,IAAI,EACpE,CAAC;oBACF,SAAS;gBACV,CAAC;gBACD,OAAO;oBACN,KAAK,EAAE,CAAC,MAAM,wBAAwB,CACrC,IAAI,EACJ,IAAI,CAAC,MAAM,EACX,KAAK,EACL,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,EACnC,IAAI,EACJ,OAAO,EAAE,KAAK,CACd,CAAiB;oBAClB,EAAE;iBACF,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAChB,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;oBACjB,MAAM,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;gBACnC,CAAC;gBACD,MAAM,KAAK,CAAC;YACb,CAAC;QACF,CAAC;QACD,OAAO,SAAS,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,KAAQ,EAAE,GAAS;QAC5B,MAAM,YAAY,GAAG,KAAK,CAAC,WAA6B,CAAC;QACzD,OAAO,MAAM,CACZ,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE;YACvB,IAAI,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YAEvC,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;gBACnB,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAClD,mBAAmB,CAAC,KAAK,CAAC,CACzB,CAAC;gBACH,MAAM,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBAC5B,MAAM,SAAS,CAAC,KAAK,EAAE,EAAE,CAAC;gBAC1B,OAAO,KAAK,CAAC;YACd,CAAC;iBAAM,CAAC;gBACP,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAClD,eAAe,CAAC,KAAK,CAAC,CACrB,CAAC;gBACH,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBACxC,MAAM,SAAS,CAAC,KAAK,EAAE,EAAE,CAAC;gBAE1B,aAAa;gBACb,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;oBACjB,OAAO,SAAS,CAAC;gBAClB,CAAC;gBACD,OAAO,GAAG,CAAC,KAAK,CAAC,OAAiB,CAAC,CAAC;YACrC,CAAC;QACF,CAAC,EACD,KAAK,EACL,IAAI,CAAC,MAAM,EACX,YAAY,CACX,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,EAC1C,IAAI,CAAC,MAAM,EACX,YAAY,EACZ,IAAI,CACJ,EACD,SAAS,CAAC,YAAY,CAAC,CAAC,MAAM,EAC9B,CAAC,GAAG,EAAE,EAAE;YACP,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC;QAC/B,CAAC,CACD,CAAC;IACH,CAAC;IAED,OAAO,CACN,OAA8B,EAC9B,OAA4C;QAE5C,sFAAsF;QACtF,sFAAsF;QAEtF,qCAAqC;QACrC;6EACqE;QAErE,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,IAAI,IAAI,GAAG,KAAK,CAAC;QACjB,IAAI,SAAS,GAAG,IAAI,EAAE,CAAC;QACvB,IAAI,OAAO,GAAG,IAAI,CAAC;QAEnB,IAAI,IAAe,CAAC;QACpB,IAAI,IAAI,GAAuB,SAAS,CAAC;QACzC,IAAI,QAAQ,GAAU,EAAE,CAAC;QACzB,IAAI,QAAQ,GAAuB,SAAS,CAAC;QAE7C,MAAM,eAAe,GAAG,IAAI,cAAc,CAAC;YAC1C,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC;YACpC,IAAI,EAAE,OAAO,EAAE,IAAI;SACnB,CAAC,CAAC;QACH,IAAI,aAAgD,CAAC;QAErD,qDAAqD;QACrD,MAAM,KAAK,GAAG,KAAK,EAAE,MAAsB,EAAE,EAAE;YAC9C,IAAI,GAAG,SAAS,CAAC;YACjB,IAAI,CAAC,IAAI,EAAE,CAAC;gBACX,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;gBAEpD,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,2BAA2B,CAC1D,eAAe,EACf,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,WAAW,EAChB;oBACC,OAAO,EAAE,aAAa;oBACtB,KAAK,EAAE,OAAO,EAAE,KAAK;oBACrB,QAAQ,EAAE,MAAM,KAAK,KAAK,EAAE,sDAAsD;iBAClF,CACD,CAAC;gBAEF,QAAQ,GAAG,GAAG,CAAC;gBACf,QAAQ,GAAG,MAAM,CAAC;gBAElB,MAAM,aAAa,CAAC,aAAa,EAAE,CAAC;gBAEpC,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;gBAE5D,qBAAqB;gBACrB,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC;YACrD,CAAC;YAED,IAAI,GAAG,IAAI,CAAC;YAEZ;yCAC0B;YAC1B,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE;gBACzD,MAAM,UAAU,GAA0B,MAAM,IAAI,CAAC,GAAG,CAAC;oBACxD,GAAG,QAAQ;oBACX,GAAG,CAAC,MAAM,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC7C,CAAC,CAAC;gBACH,OAAO,UAAU,CAAC;YACnB,CAAC,CAAC,CAAC;YAEH;;;;;MAKA;YACA,IAAI,OAAO,GACV,MAAM,OAAO,CAAC,GAAG,CAChB,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,GAAQ,EAAE,EAAE;gBACjC,IAAI,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CACxC,CAAC,KAAK,EAAE,EAAE,CACT,GAAG,CAAC,qBAAqB,CAAC,KAAK,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;oBACxD,IAAI,CACJ,CAAC;gBAEH,MAAM,KAAK,GAAG,MAAM,wBAAwB,CAC3C,GAAG,EACH,IAAI,CAAC,MAAM,EACX,aAAa,EACb,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,EACnC,IAAI,EACJ,OAAO,EAAE,KAAK,CACd,CAAC;gBAEF,OAAO;oBACN,KAAK;oBACL,EAAE,EAAE,KAAK,CAAC,IAAI,CACb,kBAAkB,CACjB,GAAG,CACF,qBAAqB,CAAC,aAAa,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAC3D,EACD,aAAa,CAAC,YAAa,CAAC,IAAK,CAAC,IAAI,CACtC,CACD;iBACD,CAAC;YACH,CAAC,CAAC,CACF,CAAC;YAEH,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC;YAEzB;;;gBAGI;YAEJ,IAAI,MAAM,KAAK,KAAK,IAAI,OAAO,CAAC,MAAM,GAAG,MAAM,EAAE,CAAC;gBACjD,OAAO,GAAG,KAAK,CAAC;gBAChB,MAAM,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;YACvC,CAAC;YACD,OAAO,OAAO,CAAC;QAChB,CAAC,CAAC;QAEF,MAAM,QAAQ,GAAG;YAChB,KAAK;YACL,gCAAgC;YAChC,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,eAAe;SACzC,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QACrC,IAAI,UAAU,GAAuB,SAAS,CAAC;QAC/C,qCAAqC;QACrC,OAAO;YACN,GAAG,EAAE,KAAK,IAAI,EAAE;gBACf,MAAM,OAAO,GAAqD,EAAE,CAAC;gBACrE,OAAO,IAAI,EAAE,CAAC;oBACb,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,CAAC;oBAC/B,OAAO,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;oBACrB,IAAI,OAAO,KAAK,KAAK,EAAE,CAAC;wBACvB,MAAM;oBACP,CAAC;gBACF,CAAC;gBACD,OAAO,OAAO,CAAC;YAChB,CAAC;YACD,KAAK,EAAE,GAAG,EAAE;gBACX,OAAO,GAAG,KAAK,CAAC;gBAChB,IAAI,GAAG,CAAC,CAAC;gBACT,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;YACjC,CAAC;YACD,IAAI,EAAE,CAAC,MAAc,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC;YACvC,OAAO,EAAE,KAAK,IAAI,EAAE;gBACnB,IAAI,CAAC,OAAO,EAAE,CAAC;oBACd,OAAO,CAAC,CAAC;gBACV,CAAC;gBACD,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;oBAClB,OAAO,IAAI,CAAC;gBACb,CAAC;gBACD,UAAU,GAAG,UAAU,IAAI,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;gBAEvD,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,GAAG,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,kHAAkH;gBAC3J,OAAO,GAAG,IAAI,GAAG,CAAC,CAAC;gBACnB,OAAO,IAAI,CAAC;YACb,CAAC;YACD,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;SACzC,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,eAAe,CAAC,EAAU;QACvC,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACnC,IAAI,CAAC,KAAK,EAAE,CAAC;YACZ,OAAO,CAAC,kBAAkB;QAC3B,CAAC;QACD,wCAAwC;QACxC,4CAA4C;QAC5C,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,OAAO;QACZ,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YAC5B,OAAO,CAAC,CAAC;QACV,CAAC;QAED;;;wCAGgC;QAChC,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,KAA0B;QACnC,IAAI,GAAG,GAAkB,EAAE,CAAC;QAC5B,IAAI,IAAI,GAAG,KAAK,CAAC;QACjB,IAAI,SAAS,GAAsB,SAAS,CAAC;QAC7C,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACtC,IAAI,CAAC;gBACJ,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,2BAA2B,CACpD,KAAK,EACL,IAAI,CAAC,MAAM,EACX,KAAK,CACL,CAAC;gBACF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBACxD,MAAM,OAAO,GAAU,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBAEhD,aAAa;gBACb,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;oBAC9B,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAiB,CAAC,CAAC,CAAC,CAAC;gBACvD,CAAC;gBACD,IAAI,GAAG,IAAI,CAAC;YACb,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAChB,IAAI,KAAK,YAAY,iBAAiB,EAAE,CAAC;oBACxC,SAAS,GAAG,KAAK,CAAC;oBAClB,SAAS;gBACV,CAAC;gBAED,MAAM,KAAK,CAAC;YACb,CAAC;QACF,CAAC;QAED,IAAI,CAAC,IAAI,EAAE,CAAC;YACX,MAAM,SAAU,CAAC;QAClB,CAAC;QAED,OAAO,GAAG,CAAC;IACZ,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,KAAuB;QAChC,IAAI,GAAG,GAAgC,SAAS,CAAC;QACjD,IAAI,IAAI,GAAG,KAAK,CAAC;QACjB,IAAI,SAAS,GAAsB,SAAS,CAAC;QAE7C,IAAI,WAAW,GAAG,uBAAuB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACrD,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACtC,IAAI,CAAC;gBACJ,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI,IAAI,EAAE,CAAC;oBAC9D,SAAS,GAAG,IAAI,iBAAiB,CAChC,iBAAiB;wBAChB,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAC/D,CAAC;oBACF,SAAS;gBACV,CAAC;gBAED,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,wBAAwB,CACjD,KAAK,EACL,IAAI,CAAC,MAAM,EACX,KAAK,CACL,CAAC;gBACF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBACxD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBACxC,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;oBACpB,MAAM,KAAK,GAAG,MAAM,CAAC,GAAa,CAAC;oBAEnC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;wBACjB,GAAG,GAAG,KAAK,CAAC;oBACb,CAAC;yBAAM,CAAC;wBACP,GAAG,IAAI,KAAK,CAAC;oBACd,CAAC;oBACD,IAAI,GAAG,IAAI,CAAC;gBACb,CAAC;YACF,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAChB,IAAI,KAAK,YAAY,iBAAiB,EAAE,CAAC;oBACxC,SAAS,GAAG,KAAK,CAAC;oBAClB,SAAS;gBACV,CAAC;gBACD,MAAM,KAAK,CAAC;YACb,CAAC;QACF,CAAC;QAED,IAAI,CAAC,IAAI,EAAE,CAAC;YACX,MAAM,SAAU,CAAC;QAClB,CAAC;QAED,OAAO,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,OAA4B;QACvC,IAAI,GAAG,GAAW,CAAC,CAAC;QACpB,IAAI,IAAI,GAAG,KAAK,CAAC;QACjB,IAAI,SAAS,GAAsB,SAAS,CAAC;QAC7C,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACtC,IAAI,CAAC;gBACJ,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,0BAA0B,CACnD,OAAO,EACP,IAAI,CAAC,MAAM,EACX,KAAK,CACL,CAAC;gBACF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBACxD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBACxC,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;oBACpB,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oBAC5B,IAAI,GAAG,IAAI,CAAC;gBACb,CAAC;YACF,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAChB,IAAI,KAAK,YAAY,iBAAiB,EAAE,CAAC;oBACxC,SAAS,GAAG,KAAK,CAAC;oBAClB,SAAS;gBACV,CAAC;gBAED,MAAM,KAAK,CAAC;YACb,CAAC;QACF,CAAC;QAED,IAAI,CAAC,IAAI,EAAE,CAAC;YACX,MAAM,SAAU,CAAC;QAClB,CAAC;QACD,OAAO,GAAG,CAAC;IACZ,CAAC;IAED,IAAI,WAAW;QACd,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;IACzB,CAAC;CACD;AAED,MAAM,OAAO,aAAa;IAOf;IANF,MAAM,CAAW;IACjB,MAAM,CAA6B;IACnC,OAAO,CAA4C;IACnD,MAAM,GAAG,IAAI,CAAC;IAEtB,YACU,UAIR;QAJQ,eAAU,GAAV,UAAU,CAIlB;QAED,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,KAAK,IAAI,EAAE,CAAC;QACrC,IAAI,CAAC,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;QACxB,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,IAAI,CACT,UAAoD;QAEpD,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,UAAU,CAAC,MAAM,CAAC,CAAC;QAC1E,IAAI,QAAQ,EAAE,CAAC;YACd,OAAO,QAAQ,CAAC,KAAK,CAAC;QACvB,CAAC;QAED,MAAM,KAAK,GAAwB,IAAI,YAAY,CAAC;YACnD,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC,EAAE;YACtB,MAAM,EAAE,UAAU,CAAC,MAAM;YACzB,KAAK,EAAE,IAAI,CAAC,MAAM;SAClB,CAAC,CAAC;QACH,MAAM,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC7B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;QAExD,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YAClB,MAAM,KAAK,CAAC,KAAK,EAAE,CAAC;QACrB,CAAC;QACD,OAAO,KAAK,CAAC;IACd,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,IAAY;QACvB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5B,MAAM,KAAK,GAAG,IAAI,aAAa,CAAC;gBAC/B,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC;gBAC7B,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC,EAAE;gBACtB,MAAM,EAAE,IAAI;aACZ,CAAC,CAAC;YAEH,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;gBAClB,MAAM,KAAK,CAAC,KAAK,EAAE,CAAC;YACrB,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC9B,CAAC;QACD,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAE,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,KAAK;QACV,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QAEpB,MAAM,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,6FAA6F;QAE9H,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC;YAC1C,MAAM,KAAK,CAAC,KAAK,EAAE,CAAC;QACrB,CAAC;QAED,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAClC,MAAM,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QAC3B,CAAC;IACF,CAAC;IAED,KAAK,CAAC,IAAI;QACT,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC;YAC1C,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC;QACpB,CAAC;QAED,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAClC,MAAM,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QAC1B,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;YAC7B,MAAM,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;QAClC,CAAC;IACF,CAAC;IAED,KAAK,CAAC,IAAI;QACT,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC;YAC1C,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC;QACpB,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;YAC7B,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBAClC,MAAM,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YAC1B,CAAC;YACD,MAAM,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;QACjC,CAAC;aAAM,CAAC;YACP,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBAClC,MAAM,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YAC1B,CAAC;QACF,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;CACD"}
1
+ {"version":3,"file":"engine.js","sourceRoot":"","sources":["../../src/engine.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,80 +1,80 @@
1
1
  {
2
- "name": "@peerbit/indexer-sqlite3",
3
- "version": "1.2.15",
4
- "description": "SQLite index for document store",
5
- "type": "module",
6
- "sideEffects": false,
7
- "types": "./dist/src/index.d.ts",
8
- "typesVersions": {
9
- "*": {
10
- "*": [
11
- "*",
12
- "dist/*",
13
- "dist/src/*",
14
- "dist/src/*/index"
15
- ],
16
- "src/*": [
17
- "*",
18
- "dist/*",
19
- "dist/src/*",
20
- "dist/src/*/index"
21
- ]
22
- }
23
- },
24
- "files": [
25
- "src",
26
- "dist",
27
- "!dist/e2e",
28
- "!dist/test",
29
- "!**/*.tsbuildinfo"
30
- ],
31
- "exports": {
32
- ".": {
33
- "types": "./dist/src/index.d.ts",
34
- "import": "./dist/src/index.js"
35
- },
36
- "./sqlite.org": {
37
- "types": "./dist/peerbit/sqlite.org/sqlite3.d.ts",
38
- "import": "./dist/peerbit/sqlite.org/sqlite3.js"
39
- }
40
- },
41
- "browser": {
42
- "./dist/src/sqlite3.js": "./dist/src/sqlite3.browser.js"
43
- },
44
- "eslintConfig": {
45
- "extends": "peerbit",
46
- "parserOptions": {
47
- "project": true,
48
- "sourceType": "module"
49
- },
50
- "ignorePatterns": [
51
- "!.aegir.js",
52
- "test/ts-use",
53
- "*.d.ts"
54
- ]
55
- },
56
- "publishConfig": {
57
- "access": "public"
58
- },
59
- "scripts": {
60
- "clean": "aegir clean",
61
- "copy-sqlite-wasm": "mkdir -p ./dist/peerbit/ && cp -r ../../../../node_modules/@sqlite.org/sqlite-wasm/sqlite-wasm/jswasm/. ./dist/peerbit/",
62
- "build-worker": "node ../../../../node_modules/esbuild/bin/esbuild --bundle ./src/sqlite3.worker.ts --format=esm --outfile=./dist/peerbit/sqlite3.worker.min.js",
63
- "build": "aegir build && npm run build-worker && npm run copy-sqlite-wasm",
64
- "test": "aegir test",
65
- "test:browser": "aegir clean && aegir test -t browser",
66
- "test:node": "aegir clean && aegir test -t node",
67
- "lint": "aegir lint"
68
- },
69
- "author": "dao.xyz",
70
- "license": "MIT",
71
- "dependencies": {
72
- "better-sqlite3": "^11.9.1",
73
- "@peerbit/indexer-interface": "^2.0.7",
74
- "@sqlite.org/sqlite-wasm": "^3.49.1-build2"
75
- },
76
- "devDependencies": {
77
- "@types/better-sqlite3": "^7.6.12",
78
- "@peerbit/indexer-tests": "^1.1.10"
79
- }
2
+ "name": "@peerbit/indexer-sqlite3",
3
+ "version": "1.2.16-263159d",
4
+ "description": "SQLite index for document store",
5
+ "type": "module",
6
+ "sideEffects": false,
7
+ "types": "./dist/src/index.d.ts",
8
+ "typesVersions": {
9
+ "*": {
10
+ "*": [
11
+ "*",
12
+ "dist/*",
13
+ "dist/src/*",
14
+ "dist/src/*/index"
15
+ ],
16
+ "src/*": [
17
+ "*",
18
+ "dist/*",
19
+ "dist/src/*",
20
+ "dist/src/*/index"
21
+ ]
22
+ }
23
+ },
24
+ "files": [
25
+ "src",
26
+ "dist",
27
+ "!dist/e2e",
28
+ "!dist/test",
29
+ "!**/*.tsbuildinfo"
30
+ ],
31
+ "exports": {
32
+ ".": {
33
+ "types": "./dist/src/index.d.ts",
34
+ "import": "./dist/src/index.js"
35
+ },
36
+ "./sqlite.org": {
37
+ "types": "./dist/peerbit/sqlite.org/sqlite3.d.ts",
38
+ "import": "./dist/peerbit/sqlite.org/sqlite3.js"
39
+ }
40
+ },
41
+ "browser": {
42
+ "./dist/src/sqlite3.js": "./dist/src/sqlite3.browser.js"
43
+ },
44
+ "eslintConfig": {
45
+ "extends": "peerbit",
46
+ "parserOptions": {
47
+ "project": true,
48
+ "sourceType": "module"
49
+ },
50
+ "ignorePatterns": [
51
+ "!.aegir.js",
52
+ "test/ts-use",
53
+ "*.d.ts"
54
+ ]
55
+ },
56
+ "publishConfig": {
57
+ "access": "public"
58
+ },
59
+ "scripts": {
60
+ "clean": "aegir clean",
61
+ "copy-sqlite-wasm": "mkdir -p ./dist/peerbit/ && cp -r ../../../../node_modules/@sqlite.org/sqlite-wasm/sqlite-wasm/jswasm/. ./dist/peerbit/",
62
+ "build-worker": "node ../../../../node_modules/esbuild/bin/esbuild --bundle ./src/sqlite3.worker.ts --format=esm --outfile=./dist/peerbit/sqlite3.worker.min.js",
63
+ "build": "aegir build && npm run build-worker && npm run copy-sqlite-wasm",
64
+ "test": "aegir test",
65
+ "test:browser": "aegir clean && aegir test -t browser",
66
+ "test:node": "aegir clean && aegir test -t node",
67
+ "lint": "aegir lint"
68
+ },
69
+ "author": "dao.xyz",
70
+ "license": "MIT",
71
+ "dependencies": {
72
+ "better-sqlite3": "^11.9.1",
73
+ "@peerbit/indexer-interface": "2.0.7-263159d",
74
+ "@sqlite.org/sqlite-wasm": "^3.49.1-build2"
75
+ },
76
+ "devDependencies": {
77
+ "@types/better-sqlite3": "^7.6.12",
78
+ "@peerbit/indexer-tests": "1.1.11-263159d"
79
+ }
80
80
  }
package/src/engine.ts CHANGED
@@ -744,14 +744,23 @@ export class SQLiteIndices implements types.Indices {
744
744
  await scope.start();
745
745
  }
746
746
  this.scopes.set(name, scope);
747
+ return scope;
747
748
  }
748
- return this.scopes.get(name)!;
749
+
750
+ const scope = this.scopes.get(name)!;
751
+ if (!this.closed) {
752
+ // TODO test this code path
753
+ await scope.start();
754
+ }
755
+ return scope;
749
756
  }
750
757
 
751
758
  async start(): Promise<void> {
752
759
  this.closed = false;
753
760
 
754
- await this.properties.db.open(); // TODO only open if parent is not defined ? or this method will not be the opposite of close
761
+ if (!this.properties.parent) {
762
+ await this.properties.db.open();
763
+ }
755
764
 
756
765
  for (const scope of this.scopes.values()) {
757
766
  await scope.start();