@peerbit/document 9.0.6 → 9.0.7-837e7f1

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.
@@ -1 +1 @@
1
- {"version":3,"file":"resumable-iterator.d.ts","sourceRoot":"","sources":["../../src/resumable-iterator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EACN,KAAK,kBAAkB,EACvB,aAAa,EACb,oBAAoB,EACpB,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,KAAK,YAAY,MAAM,4BAA4B,CAAC;AAEhE,qBAAa,kBAAkB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAE3D,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;IACrC,QAAQ,CAAC,MAAM;kBACJ,YAAY,CAAC,aAAa,CAAC,CAAC,EAAE,SAAS,CAAC;iBACzC,aAAa,GAAG,oBAAoB;;gBAHrC,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,EAC5B,MAAM;kBACJ,YAAY,CAAC,aAAa,CAAC,CAAC,EAAE,SAAS,CAAC;iBACzC,aAAa,GAAG,oBAAoB;MAC9B;IAKjB,eAAe,CAAC,OAAO,EAAE,aAAa,GAAG,oBAAoB;IAUvD,IAAI,CACT,OAAO,EAAE,aAAa,GAAG,oBAAoB,GAAG,kBAAkB,EAClE,QAAQ;kBAnBG,YAAY,CAAC,aAAa,CAAC,CAAC,EAAE,SAAS,CAAC;iBACzC,aAAa,GAAG,oBAAoB;wBAkBF;IAqB7C,KAAK,CAAC,KAAK,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE;IAIjC,OAAO,CAAC,KAAK;IAIb,UAAU,CAAC,EAAE,EAAE,MAAM;CAGrB"}
1
+ {"version":3,"file":"resumable-iterator.d.ts","sourceRoot":"","sources":["../../src/resumable-iterator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EACN,KAAK,kBAAkB,EACvB,aAAa,EACb,oBAAoB,EACpB,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,KAAK,YAAY,MAAM,4BAA4B,CAAC;AAEhE,qBAAa,kBAAkB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAE3D,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;IACrC,QAAQ,CAAC,MAAM;kBACJ,YAAY,CAAC,aAAa,CAAC,CAAC,EAAE,SAAS,CAAC;iBACzC,aAAa,GAAG,oBAAoB;;gBAHrC,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,EAC5B,MAAM;kBACJ,YAAY,CAAC,aAAa,CAAC,CAAC,EAAE,SAAS,CAAC;iBACzC,aAAa,GAAG,oBAAoB;MAC9B;IAKX,eAAe,CAAC,OAAO,EAAE,aAAa,GAAG,oBAAoB;IAc7D,IAAI,CACT,OAAO,EAAE,aAAa,GAAG,oBAAoB,GAAG,kBAAkB,EAClE,QAAQ;kBAvBG,YAAY,CAAC,aAAa,CAAC,CAAC,EAAE,SAAS,CAAC;iBACzC,aAAa,GAAG,oBAAoB;wBAsBF;IAqB7C,KAAK,CAAC,KAAK,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE;IAIjC,OAAO,CAAC,KAAK;IAIb,UAAU,CAAC,EAAE,EAAE,MAAM;CAGrB"}
@@ -8,14 +8,18 @@ export class ResumableIterators {
8
8
  this.queues = queues;
9
9
  // TODO choose upper limit better
10
10
  }
11
- iterateAndFetch(request) {
11
+ async iterateAndFetch(request) {
12
12
  const iterator = this.index.iterate(request);
13
+ const firstResult = await iterator.next(request.fetch);
14
+ if (iterator.done() === true) {
15
+ return firstResult;
16
+ }
13
17
  const cachedIterator = {
14
18
  iterator,
15
19
  request,
16
20
  };
17
21
  this.queues.add(request.idString, cachedIterator);
18
- return this.next(request, cachedIterator);
22
+ return firstResult;
19
23
  }
20
24
  async next(request, iterator = this.queues.get(request.idString)) {
21
25
  if (!iterator) {
@@ -1 +1 @@
1
- {"version":3,"file":"resumable-iterator.js","sourceRoot":"","sources":["../../src/resumable-iterator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAEN,aAAa,EACb,oBAAoB,GACpB,MAAM,6BAA6B,CAAC;AAGrC,MAAM,OAAO,kBAAkB;IAEpB;IACA;IAFV,YACU,KAA4B,EAC5B,SAAS,IAAI,KAAK,CAGxB,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;QAJP,UAAK,GAAL,KAAK,CAAuB;QAC5B,WAAM,GAAN,MAAM,CAGC;QAEhB,iCAAiC;IAClC,CAAC;IAED,eAAe,CAAC,OAA6C;QAC5D,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC7C,MAAM,cAAc,GAAG;YACtB,QAAQ;YACR,OAAO;SACP,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;QAClD,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,IAAI,CACT,OAAkE,EAClE,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC;QAE5C,IAAI,CAAC,QAAQ,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CACd,wCAAwC,GAAG,OAAO,CAAC,QAAQ,CAC3D,CAAC;QACH,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,IAAI,CACxC,OAAO,YAAY,aAAa;YAC/B,OAAO,YAAY,oBAAoB;YACvC,CAAC,CAAC,OAAO,CAAC,KAAK;YACf,CAAC,CAAC,OAAO,CAAC,MAAM,CACjB,CAAC;QAEF,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;YACvC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC9B,CAAC;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IAED,KAAK,CAAC,KAA2B;QAChC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC5B,CAAC;IAEO,KAAK,CAAC,EAAU;QACvB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACrB,CAAC;IAED,UAAU,CAAC,EAAU;QACpB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC;IAChD,CAAC;CACD"}
1
+ {"version":3,"file":"resumable-iterator.js","sourceRoot":"","sources":["../../src/resumable-iterator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAEN,aAAa,EACb,oBAAoB,GACpB,MAAM,6BAA6B,CAAC;AAGrC,MAAM,OAAO,kBAAkB;IAEpB;IACA;IAFV,YACU,KAA4B,EAC5B,SAAS,IAAI,KAAK,CAGxB,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;QAJP,UAAK,GAAL,KAAK,CAAuB;QAC5B,WAAM,GAAN,MAAM,CAGC;QAEhB,iCAAiC;IAClC,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,OAA6C;QAClE,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC7C,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACvD,IAAI,QAAQ,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;YAC9B,OAAO,WAAW,CAAC;QACpB,CAAC;QACD,MAAM,cAAc,GAAG;YACtB,QAAQ;YACR,OAAO;SACP,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;QAClD,OAAO,WAAW,CAAC;IACpB,CAAC;IAED,KAAK,CAAC,IAAI,CACT,OAAkE,EAClE,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC;QAE5C,IAAI,CAAC,QAAQ,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CACd,wCAAwC,GAAG,OAAO,CAAC,QAAQ,CAC3D,CAAC;QACH,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,IAAI,CACxC,OAAO,YAAY,aAAa;YAC/B,OAAO,YAAY,oBAAoB;YACvC,CAAC,CAAC,OAAO,CAAC,KAAK;YACf,CAAC,CAAC,OAAO,CAAC,MAAM,CACjB,CAAC;QAEF,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;YACvC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC9B,CAAC;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IAED,KAAK,CAAC,KAA2B;QAChC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC5B,CAAC;IAEO,KAAK,CAAC,EAAU;QACvB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACrB,CAAC;IAED,UAAU,CAAC,EAAU;QACpB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC;IAChD,CAAC;CACD"}
package/package.json CHANGED
@@ -1,76 +1,76 @@
1
1
  {
2
- "name": "@peerbit/document",
3
- "version": "9.0.6",
4
- "description": "Document store implementation",
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
- },
37
- "eslintConfig": {
38
- "extends": "peerbit",
39
- "parserOptions": {
40
- "project": true,
41
- "sourceType": "module"
42
- },
43
- "ignorePatterns": [
44
- "!.aegir.js",
45
- "test/ts-use",
46
- "*.d.ts"
47
- ]
48
- },
49
- "publishConfig": {
50
- "access": "public"
51
- },
52
- "scripts": {
53
- "clean": "aegir clean",
54
- "build": "aegir build --no-bundle",
55
- "test": "aegir test --target node",
56
- "lint": "aegir lint"
57
- },
58
- "author": "dao.xyz",
59
- "license": "MIT",
60
- "dependencies": {
61
- "@dao-xyz/borsh": "^5.2.3",
62
- "@peerbit/program": "5.1.1",
63
- "@peerbit/rpc": "5.0.27",
64
- "@peerbit/shared-log": "10.3.5",
65
- "@peerbit/indexer-interface": "^2.0.4",
66
- "@peerbit/indexer-simple": "^1.1.7",
67
- "@peerbit/indexer-sqlite3": "^1.2.6",
68
- "@peerbit/document-interface": "^2.0.2"
69
- },
70
- "devDependencies": {
71
- "@peerbit/test-utils": "2.1.17",
72
- "@peerbit/time": "2.0.7",
73
- "@types/pidusage": "^2.0.5",
74
- "pidusage": "^3.0.2"
75
- }
2
+ "name": "@peerbit/document",
3
+ "version": "9.0.7-837e7f1",
4
+ "description": "Document store implementation",
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
+ },
37
+ "eslintConfig": {
38
+ "extends": "peerbit",
39
+ "parserOptions": {
40
+ "project": true,
41
+ "sourceType": "module"
42
+ },
43
+ "ignorePatterns": [
44
+ "!.aegir.js",
45
+ "test/ts-use",
46
+ "*.d.ts"
47
+ ]
48
+ },
49
+ "publishConfig": {
50
+ "access": "public"
51
+ },
52
+ "scripts": {
53
+ "clean": "aegir clean",
54
+ "build": "aegir build --no-bundle",
55
+ "test": "aegir test --target node",
56
+ "lint": "aegir lint"
57
+ },
58
+ "author": "dao.xyz",
59
+ "license": "MIT",
60
+ "dependencies": {
61
+ "@dao-xyz/borsh": "^5.2.3",
62
+ "@peerbit/program": "5.1.1-837e7f1",
63
+ "@peerbit/rpc": "5.0.27-837e7f1",
64
+ "@peerbit/shared-log": "10.3.6-837e7f1",
65
+ "@peerbit/indexer-interface": "2.0.4-837e7f1",
66
+ "@peerbit/indexer-simple": "1.1.7-837e7f1",
67
+ "@peerbit/indexer-sqlite3": "1.2.6-837e7f1",
68
+ "@peerbit/document-interface": "2.0.2-837e7f1"
69
+ },
70
+ "devDependencies": {
71
+ "@peerbit/test-utils": "2.1.17-837e7f1",
72
+ "@peerbit/time": "2.0.7-837e7f1",
73
+ "@types/pidusage": "^2.0.5",
74
+ "pidusage": "^3.0.2"
75
+ }
76
76
  }
@@ -17,14 +17,18 @@ export class ResumableIterators<T extends Record<string, any>> {
17
17
  // TODO choose upper limit better
18
18
  }
19
19
 
20
- iterateAndFetch(request: SearchRequest | SearchRequestIndexed) {
20
+ async iterateAndFetch(request: SearchRequest | SearchRequestIndexed) {
21
21
  const iterator = this.index.iterate(request);
22
+ const firstResult = await iterator.next(request.fetch);
23
+ if (iterator.done() === true) {
24
+ return firstResult;
25
+ }
22
26
  const cachedIterator = {
23
27
  iterator,
24
28
  request,
25
29
  };
26
30
  this.queues.add(request.idString, cachedIterator);
27
- return this.next(request, cachedIterator);
31
+ return firstResult;
28
32
  }
29
33
 
30
34
  async next(