@peerbit/document-interface 1.0.9 → 1.0.10-5fa75cc
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/src/query.d.ts +26 -7
- package/dist/src/query.d.ts.map +1 -1
- package/dist/src/query.js +55 -7
- package/dist/src/query.js.map +1 -1
- package/dist/src/request.d.ts +15 -0
- package/dist/src/request.d.ts.map +1 -1
- package/dist/src/request.js +44 -0
- package/dist/src/request.js.map +1 -1
- package/package.json +64 -63
- package/src/query.ts +64 -8
- package/src/request.ts +43 -0
package/dist/src/query.d.ts
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { type AbstractType } from "@dao-xyz/borsh";
|
|
2
|
+
import { Entry } from "@peerbit/log";
|
|
3
|
+
import type { SearchRequest, SearchRequestIndexed } from "./request.js";
|
|
2
4
|
export declare abstract class Result {
|
|
3
5
|
}
|
|
4
6
|
export declare class Context {
|
|
@@ -13,12 +15,12 @@ export declare class Context {
|
|
|
13
15
|
gid: string;
|
|
14
16
|
});
|
|
15
17
|
}
|
|
16
|
-
export declare class
|
|
18
|
+
export declare class ResultValue<T> extends Result {
|
|
17
19
|
_source: Uint8Array;
|
|
18
20
|
context: Context;
|
|
19
21
|
_type: AbstractType<T>;
|
|
20
22
|
constructor(opts: {
|
|
21
|
-
source
|
|
23
|
+
source?: Uint8Array;
|
|
22
24
|
context: Context;
|
|
23
25
|
value?: T;
|
|
24
26
|
indexed?: Record<string, any>;
|
|
@@ -28,18 +30,35 @@ export declare class ResultWithSource<T> extends Result {
|
|
|
28
30
|
get value(): T;
|
|
29
31
|
indexed?: Record<string, any>;
|
|
30
32
|
}
|
|
31
|
-
export declare
|
|
33
|
+
export declare class ResultIndexedValue<I> extends Result {
|
|
34
|
+
_source: Uint8Array;
|
|
35
|
+
entries: Entry<any>[];
|
|
36
|
+
context: Context;
|
|
37
|
+
_type: AbstractType<I>;
|
|
38
|
+
constructor(opts: {
|
|
39
|
+
source: Uint8Array;
|
|
40
|
+
indexed: I;
|
|
41
|
+
entries: Entry<any>[];
|
|
42
|
+
context: Context;
|
|
43
|
+
});
|
|
44
|
+
init(type: AbstractType<I>): void;
|
|
45
|
+
_value?: I;
|
|
46
|
+
get value(): I;
|
|
47
|
+
indexed?: I;
|
|
48
|
+
}
|
|
49
|
+
export declare abstract class AbstractSearchResult {
|
|
32
50
|
}
|
|
33
|
-
export declare class Results<
|
|
34
|
-
results:
|
|
51
|
+
export declare class Results<R extends Result> extends AbstractSearchResult {
|
|
52
|
+
results: R[];
|
|
35
53
|
kept: bigint;
|
|
36
54
|
constructor(properties: {
|
|
37
|
-
results:
|
|
55
|
+
results: R[];
|
|
38
56
|
kept: bigint;
|
|
39
57
|
});
|
|
40
58
|
}
|
|
41
|
-
export declare class NoAccess extends AbstractSearchResult
|
|
59
|
+
export declare class NoAccess extends AbstractSearchResult {
|
|
42
60
|
}
|
|
61
|
+
export type ResultTypeFromRequest<R> = R extends SearchRequest ? ResultValue<any> : R extends SearchRequestIndexed ? ResultIndexedValue<any> : ResultIndexedValue<any> | ResultValue<any>;
|
|
43
62
|
/**
|
|
44
63
|
* Find logs that can be decrypted by certain keys
|
|
45
64
|
*/
|
package/dist/src/query.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../src/query.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,KAAK,YAAY,EAKjB,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../src/query.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,KAAK,YAAY,EAKjB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,OAAO,KAAK,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAIxE,8BAAsB,MAAM;CAAG;AAE/B,qBACa,OAAO;IAEnB,OAAO,EAAE,MAAM,CAAC;IAGhB,QAAQ,EAAE,MAAM,CAAC;IAGjB,IAAI,EAAE,MAAM,CAAC;IAGb,GAAG,EAAE,MAAM,CAAC;gBAEA,UAAU,EAAE;QACvB,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,GAAG,EAAE,MAAM,CAAC;KACZ;CAMD;AAED,qBACa,WAAW,CAAC,CAAC,CAAE,SAAQ,MAAM;IAEzC,OAAO,EAAE,UAAU,CAAC;IAGpB,OAAO,EAAE,OAAO,CAAC;IAEjB,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;gBACX,IAAI,EAAE;QACjB,MAAM,CAAC,EAAE,UAAU,CAAC;QACpB,OAAO,EAAE,OAAO,CAAC;QACjB,KAAK,CAAC,EAAE,CAAC,CAAC;QACV,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;KAC9B;IAQD,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC;IAI1B,MAAM,CAAC,EAAE,CAAC,CAAC;IACX,IAAI,KAAK,IAAI,CAAC,CASb;IAGD,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC9B;AAED,qBACa,kBAAkB,CAAC,CAAC,CAAE,SAAQ,MAAM;IAEhD,OAAO,EAAE,UAAU,CAAC;IAGpB,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;IAGtB,OAAO,EAAE,OAAO,CAAC;IAEjB,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;gBAEX,IAAI,EAAE;QACjB,MAAM,EAAE,UAAU,CAAC;QACnB,OAAO,EAAE,CAAC,CAAC;QACX,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QACtB,OAAO,EAAE,OAAO,CAAC;KACjB;IASD,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC;IAI1B,MAAM,CAAC,EAAE,CAAC,CAAC;IACX,IAAI,KAAK,IAAI,CAAC,CASb;IAGD,OAAO,CAAC,EAAE,CAAC,CAAC;CACZ;AAGD,8BAAsB,oBAAoB;CAAG;AAE7C,qBACa,OAAO,CAAC,CAAC,SAAS,MAAM,CAAE,SAAQ,oBAAoB;IAElE,OAAO,EAAE,CAAC,EAAE,CAAC;IAGb,IAAI,EAAE,MAAM,CAAC;gBAED,UAAU,EAAE;QAAE,OAAO,EAAE,CAAC,EAAE,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE;CAKtD;AAED,qBACa,QAAS,SAAQ,oBAAoB;CAAG;AAGrD,MAAM,MAAM,qBAAqB,CAAC,CAAC,IAAI,CAAC,SAAS,aAAa,GAC3D,WAAW,CAAC,GAAG,CAAC,GAChB,CAAC,SAAS,oBAAoB,GAC7B,kBAAkB,CAAC,GAAG,CAAC,GACvB,kBAAkB,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;AAK/C;;GAEG"}
|
package/dist/src/query.js
CHANGED
|
@@ -8,6 +8,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
8
8
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
9
|
};
|
|
10
10
|
import { deserialize, field, variant, vec, } from "@dao-xyz/borsh";
|
|
11
|
+
import { Entry } from "@peerbit/log";
|
|
11
12
|
/// ----- RESULTS -----
|
|
12
13
|
export class Result {
|
|
13
14
|
}
|
|
@@ -44,7 +45,7 @@ Context = __decorate([
|
|
|
44
45
|
__metadata("design:paramtypes", [Object])
|
|
45
46
|
], Context);
|
|
46
47
|
export { Context };
|
|
47
|
-
let
|
|
48
|
+
let ResultValue = class ResultValue extends Result {
|
|
48
49
|
_source;
|
|
49
50
|
context;
|
|
50
51
|
_type;
|
|
@@ -75,16 +76,63 @@ let ResultWithSource = class ResultWithSource extends Result {
|
|
|
75
76
|
__decorate([
|
|
76
77
|
field({ type: Uint8Array }),
|
|
77
78
|
__metadata("design:type", Uint8Array)
|
|
78
|
-
],
|
|
79
|
+
], ResultValue.prototype, "_source", void 0);
|
|
79
80
|
__decorate([
|
|
80
81
|
field({ type: Context }),
|
|
81
82
|
__metadata("design:type", Context)
|
|
82
|
-
],
|
|
83
|
-
|
|
83
|
+
], ResultValue.prototype, "context", void 0);
|
|
84
|
+
ResultValue = __decorate([
|
|
84
85
|
variant(0),
|
|
85
86
|
__metadata("design:paramtypes", [Object])
|
|
86
|
-
],
|
|
87
|
-
export {
|
|
87
|
+
], ResultValue);
|
|
88
|
+
export { ResultValue };
|
|
89
|
+
let ResultIndexedValue = class ResultIndexedValue extends Result {
|
|
90
|
+
_source;
|
|
91
|
+
entries;
|
|
92
|
+
context;
|
|
93
|
+
_type;
|
|
94
|
+
constructor(opts) {
|
|
95
|
+
super();
|
|
96
|
+
this._source = opts.source;
|
|
97
|
+
this.context = opts.context;
|
|
98
|
+
this.indexed = opts.indexed;
|
|
99
|
+
this.entries = opts.entries;
|
|
100
|
+
this._value = opts.indexed;
|
|
101
|
+
}
|
|
102
|
+
init(type) {
|
|
103
|
+
this._type = type;
|
|
104
|
+
}
|
|
105
|
+
_value;
|
|
106
|
+
get value() {
|
|
107
|
+
if (this._value) {
|
|
108
|
+
return this._value;
|
|
109
|
+
}
|
|
110
|
+
if (!this._source) {
|
|
111
|
+
throw new Error("Missing source binary");
|
|
112
|
+
}
|
|
113
|
+
this._value = deserialize(this._source, this._type);
|
|
114
|
+
return this._value;
|
|
115
|
+
}
|
|
116
|
+
// we never send this over the wire since we can always reconstruct it from value
|
|
117
|
+
indexed;
|
|
118
|
+
};
|
|
119
|
+
__decorate([
|
|
120
|
+
field({ type: Uint8Array }),
|
|
121
|
+
__metadata("design:type", Uint8Array)
|
|
122
|
+
], ResultIndexedValue.prototype, "_source", void 0);
|
|
123
|
+
__decorate([
|
|
124
|
+
field({ type: vec(Entry) }),
|
|
125
|
+
__metadata("design:type", Array)
|
|
126
|
+
], ResultIndexedValue.prototype, "entries", void 0);
|
|
127
|
+
__decorate([
|
|
128
|
+
field({ type: Context }),
|
|
129
|
+
__metadata("design:type", Context)
|
|
130
|
+
], ResultIndexedValue.prototype, "context", void 0);
|
|
131
|
+
ResultIndexedValue = __decorate([
|
|
132
|
+
variant(1),
|
|
133
|
+
__metadata("design:paramtypes", [Object])
|
|
134
|
+
], ResultIndexedValue);
|
|
135
|
+
export { ResultIndexedValue };
|
|
88
136
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
89
137
|
export class AbstractSearchResult {
|
|
90
138
|
}
|
|
@@ -98,7 +146,7 @@ let Results = class Results extends AbstractSearchResult {
|
|
|
98
146
|
}
|
|
99
147
|
};
|
|
100
148
|
__decorate([
|
|
101
|
-
field({ type: vec(
|
|
149
|
+
field({ type: vec(Result) }),
|
|
102
150
|
__metadata("design:type", Array)
|
|
103
151
|
], Results.prototype, "results", void 0);
|
|
104
152
|
__decorate([
|
package/dist/src/query.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/query.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAEN,WAAW,EACX,KAAK,EACL,OAAO,EACP,GAAG,GACH,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/query.ts"],"names":[],"mappings":"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"}
|
package/dist/src/request.d.ts
CHANGED
|
@@ -14,6 +14,21 @@ export declare class SearchRequest extends AbstractSearchRequest {
|
|
|
14
14
|
private _idString;
|
|
15
15
|
get idString(): string;
|
|
16
16
|
}
|
|
17
|
+
export declare class SearchRequestIndexed extends AbstractSearchRequest {
|
|
18
|
+
id: Uint8Array;
|
|
19
|
+
query: Query[];
|
|
20
|
+
sort: Sort[];
|
|
21
|
+
fetch: number;
|
|
22
|
+
replicate: boolean;
|
|
23
|
+
constructor(props?: {
|
|
24
|
+
query?: Query[] | Query | Record<string, string | number | bigint | Uint8Array | boolean | null | undefined>;
|
|
25
|
+
sort?: Sort[] | Sort;
|
|
26
|
+
fetch?: number;
|
|
27
|
+
replicate?: boolean;
|
|
28
|
+
});
|
|
29
|
+
private _idString;
|
|
30
|
+
get idString(): string;
|
|
31
|
+
}
|
|
17
32
|
/**
|
|
18
33
|
* Collect documents from peers using 'collect' session ids. This is used for distributed sorting internally
|
|
19
34
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../src/request.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,IAAI,EAAW,MAAM,4BAA4B,CAAC;AASlE,8BAAsB,qBAAqB;CAAG;AAE9C,qBACa,aAAc,SAAQ,qBAAqB;IAEvD,EAAE,EAAE,UAAU,CAAC;IAGf,KAAK,EAAE,KAAK,EAAE,CAAC;IAGf,IAAI,EAAE,IAAI,EAAE,CAAC;IAGb,KAAK,EAAE,MAAM,CAAC;gBAEF,KAAK,CAAC,EAAE;QACnB,KAAK,CAAC,EACH,KAAK,EAAE,GACP,KAAK,GACL,MAAM,CACN,MAAM,EACN,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,UAAU,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CACjE,CAAC;QACL,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;QACrB,KAAK,CAAC,EAAE,MAAM,CAAC;KACf;IAQD,OAAO,CAAC,SAAS,CAAS;IAC1B,IAAI,QAAQ,IAAI,MAAM,CAErB;CACD;AAED;;GAEG;AAEH,qBACa,kBAAmB,SAAQ,qBAAqB;IAE5D,EAAE,EAAE,UAAU,CAAC;IAGf,MAAM,EAAE,MAAM,CAAC;gBAEH,UAAU,EAAE;QAAE,EAAE,EAAE,UAAU,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAM1D,OAAO,CAAC,SAAS,CAAS;IAC1B,IAAI,QAAQ,IAAI,MAAM,CAErB;CACD;AAED,qBACa,oBAAqB,SAAQ,qBAAqB;IAE9D,EAAE,EAAE,UAAU,CAAC;gBAEH,UAAU,EAAE;QAAE,EAAE,EAAE,UAAU,CAAA;KAAE;IAK1C,OAAO,CAAC,SAAS,CAAS;IAC1B,IAAI,QAAQ,IAAI,MAAM,CAErB;CACD;AAED,8BAAsB,qBAAqB;CAAG;AAE9C,qBACa,aAAc,SAAQ,qBAAqB;IAEvD,EAAE,EAAE,UAAU,CAAC;IAGf,KAAK,EAAE,KAAK,EAAE,CAAC;gBAEH,KAAK,EAAE;QAClB,KAAK,EACF,KAAK,EAAE,GACP,KAAK,GACL,MAAM,CACN,MAAM,EACN,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,UAAU,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CACjE,CAAC;KACL;CAKD;AAED,8BAAsB,0BAA0B;CAAG;AAEnD,qBACa,UAAW,SAAQ,0BAA0B;IAEzD,EAAE,EAAE,UAAU,CAAC;IAGf,KAAK,EAAE,KAAK,EAAE,CAAC;IAGf,GAAG,EAAE,MAAM,EAAE,CAAC;gBAEF,KAAK,EAAE;QAClB,KAAK,CAAC,EACH,KAAK,EAAE,GACP,KAAK,GACL,MAAM,CACN,MAAM,EACN,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,UAAU,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CACjE,CAAC;QACL,GAAG,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;KACvB;CAMD;AAED,8BAAsB,oBAAoB;CAAG;AAE7C,qBACa,YAAa,SAAQ,oBAAoB;IAErD,EAAE,EAAE,UAAU,CAAC;IAGf,KAAK,EAAE,KAAK,EAAE,CAAC;gBAGd,KAAK,GAAE;QACN,KAAK,EACF,KAAK,EAAE,GACP,KAAK,GACL,MAAM,CACN,MAAM,EACN,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,UAAU,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CACjE,CAAC;KACW;CAMlB"}
|
|
1
|
+
{"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../src/request.ts"],"names":[],"mappings":"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"}
|
package/dist/src/request.js
CHANGED
|
@@ -54,6 +54,50 @@ SearchRequest = __decorate([
|
|
|
54
54
|
__metadata("design:paramtypes", [Object])
|
|
55
55
|
], SearchRequest);
|
|
56
56
|
export { SearchRequest };
|
|
57
|
+
let SearchRequestIndexed = class SearchRequestIndexed extends AbstractSearchRequest {
|
|
58
|
+
id; // Session id
|
|
59
|
+
query;
|
|
60
|
+
sort;
|
|
61
|
+
fetch;
|
|
62
|
+
replicate; // is the intent to replicate?
|
|
63
|
+
constructor(props) {
|
|
64
|
+
super();
|
|
65
|
+
this.id = randomBytes(32);
|
|
66
|
+
this.query = props?.query ? toQuery(props.query) : [];
|
|
67
|
+
this.sort = toArray(props?.sort);
|
|
68
|
+
this.fetch = props?.fetch ?? 10; // default fetch 10 documents
|
|
69
|
+
this.replicate = props.replicate ?? false;
|
|
70
|
+
}
|
|
71
|
+
_idString;
|
|
72
|
+
get idString() {
|
|
73
|
+
return this._idString || (this._idString = sha256Base64Sync(this.id));
|
|
74
|
+
}
|
|
75
|
+
};
|
|
76
|
+
__decorate([
|
|
77
|
+
field({ type: fixedArray("u8", 32) }),
|
|
78
|
+
__metadata("design:type", Uint8Array)
|
|
79
|
+
], SearchRequestIndexed.prototype, "id", void 0);
|
|
80
|
+
__decorate([
|
|
81
|
+
field({ type: vec(Query) }),
|
|
82
|
+
__metadata("design:type", Array)
|
|
83
|
+
], SearchRequestIndexed.prototype, "query", void 0);
|
|
84
|
+
__decorate([
|
|
85
|
+
field({ type: vec(Sort) }),
|
|
86
|
+
__metadata("design:type", Array)
|
|
87
|
+
], SearchRequestIndexed.prototype, "sort", void 0);
|
|
88
|
+
__decorate([
|
|
89
|
+
field({ type: "u32" }),
|
|
90
|
+
__metadata("design:type", Number)
|
|
91
|
+
], SearchRequestIndexed.prototype, "fetch", void 0);
|
|
92
|
+
__decorate([
|
|
93
|
+
field({ type: "bool" }),
|
|
94
|
+
__metadata("design:type", Boolean)
|
|
95
|
+
], SearchRequestIndexed.prototype, "replicate", void 0);
|
|
96
|
+
SearchRequestIndexed = __decorate([
|
|
97
|
+
variant(1),
|
|
98
|
+
__metadata("design:paramtypes", [Object])
|
|
99
|
+
], SearchRequestIndexed);
|
|
100
|
+
export { SearchRequestIndexed };
|
|
57
101
|
/**
|
|
58
102
|
* Collect documents from peers using 'collect' session ids. This is used for distributed sorting internally
|
|
59
103
|
*/
|
package/dist/src/request.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request.js","sourceRoot":"","sources":["../../src/request.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAChE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAElE;;GAEG;AAEH,MAAM,OAAO,GAAG,CAAI,GAAwB,EAAE,EAAE,CAC/C,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;AAE9D,MAAM,OAAgB,qBAAqB;CAAG;AAGvC,IAAM,aAAa,GAAnB,MAAM,aAAc,SAAQ,qBAAqB;IAEvD,EAAE,CAAa,CAAC,aAAa;IAG7B,KAAK,CAAU;IAGf,IAAI,CAAS;IAGb,KAAK,CAAS;IAEd,YAAY,KAUX;QACA,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,EAAE,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC;QAC1B,IAAI,CAAC,KAAK,GAAG,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACtD,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACjC,IAAI,CAAC,KAAK,GAAG,KAAK,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,6BAA6B;IAC/D,CAAC;IAEO,SAAS,CAAS;IAC1B,IAAI,QAAQ;QACX,OAAO,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;IACvE,CAAC;CACD,CAAA;AAjCA;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC;8BAClC,UAAU;yCAAC;AAGf;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;;4CACb;AAGf;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;;2CACd;AAGb;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;;4CACT;AAXF,aAAa;IADzB,OAAO,CAAC,CAAC,CAAC;;GACE,aAAa,CAmCzB;;AAED;;GAEG;AAGI,IAAM,kBAAkB,GAAxB,MAAM,kBAAmB,SAAQ,qBAAqB;IAE5D,EAAE,CAAa,CAAC,kBAAkB;IAGlC,MAAM,CAAS,CAAC,iCAAiC;IAEjD,YAAY,UAA8C;QACzD,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,EAAE,GAAG,UAAU,CAAC,EAAE,CAAC;QACxB,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IACjC,CAAC;IAEO,SAAS,CAAS;IAC1B,IAAI,QAAQ;QACX,OAAO,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;IACvE,CAAC;CACD,CAAA;AAfA;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC;8BAClC,UAAU;8CAAC;AAGf;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;;kDACR;AALH,kBAAkB;IAD9B,OAAO,CAAC,CAAC,CAAC;;GACE,kBAAkB,CAiB9B;;AAGM,IAAM,oBAAoB,GAA1B,MAAM,oBAAqB,SAAQ,qBAAqB;IAE9D,EAAE,CAAa,CAAC,kBAAkB;IAElC,YAAY,UAA8B;QACzC,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,EAAE,GAAG,UAAU,CAAC,EAAE,CAAC;IACzB,CAAC;IAEO,SAAS,CAAS;IAC1B,IAAI,QAAQ;QACX,OAAO,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;IACvE,CAAC;CACD,CAAA;AAXA;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC;8BAClC,UAAU;gDAAC;AAFH,oBAAoB;IADhC,OAAO,CAAC,CAAC,CAAC;;GACE,oBAAoB,CAahC;;AAED,MAAM,OAAgB,qBAAqB;CAAG;AAGvC,IAAM,aAAa,GAAnB,MAAM,aAAc,SAAQ,qBAAqB;IAEvD,EAAE,CAAa,CAAC,aAAa;IAG7B,KAAK,CAAU;IAEf,YAAY,KAQX;QACA,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,EAAE,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC;QAC1B,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;CACD,CAAA;AAlBA;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC;8BAClC,UAAU;yCAAC;AAGf;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;;4CACb;AALH,aAAa;IADzB,OAAO,CAAC,CAAC,CAAC;;GACE,aAAa,CAoBzB;;AAED,MAAM,OAAgB,0BAA0B;CAAG;AAG5C,IAAM,UAAU,GAAhB,MAAM,UAAW,SAAQ,0BAA0B;IAEzD,EAAE,CAAa;IAGf,KAAK,CAAU;IAGf,GAAG,CAAW;IAEd,YAAY,KASX;QACA,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,EAAE,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC;QAC1B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACrD,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC/D,CAAC;CACD,CAAA;AAvBA;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC;8BAClC,UAAU;sCAAC;AAGf;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;;yCACb;AAGf;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;;uCACjB;AARF,UAAU;IADtB,OAAO,CAAC,CAAC,CAAC;;GACE,UAAU,CAyBtB;;AAED,MAAM,OAAgB,oBAAoB;CAAG;AAGtC,IAAM,YAAY,GAAlB,MAAM,YAAa,SAAQ,oBAAoB;IAErD,EAAE,CAAa,CAAC,aAAa;IAG7B,KAAK,CAAU;IAEf,YACC,QAQI,EAAE,KAAK,EAAE,EAAE,EAAE;QAEjB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,EAAE,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC;QAC1B,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;CACD,CAAA;AApBA;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC;8BAClC,UAAU;wCAAC;AAGf;IADC,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;;2CACb;AALH,YAAY;IADxB,OAAO,CAAC,CAAC,CAAC;;GACE,YAAY,CAsBxB"}
|
|
1
|
+
{"version":3,"file":"request.js","sourceRoot":"","sources":["../../src/request.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,65 +1,66 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
2
|
+
"name": "@peerbit/document-interface",
|
|
3
|
+
"version": "1.0.10-5fa75cc",
|
|
4
|
+
"description": "Document store interface",
|
|
5
|
+
"sideEffects": false,
|
|
6
|
+
"type": "module",
|
|
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": "",
|
|
56
|
+
"lint": "aegir lint"
|
|
57
|
+
},
|
|
58
|
+
"author": "dao.xyz",
|
|
59
|
+
"license": "MIT",
|
|
60
|
+
"dependencies": {
|
|
61
|
+
"@dao-xyz/borsh": "^5.2.3",
|
|
62
|
+
"@peerbit/crypto": "2.3.3-5fa75cc",
|
|
63
|
+
"@peerbit/indexer-interface": "2.0.3-5fa75cc",
|
|
64
|
+
"@peerbit/log": "4.0.26-5fa75cc"
|
|
65
|
+
}
|
|
65
66
|
}
|
package/src/query.ts
CHANGED
|
@@ -5,6 +5,8 @@ import {
|
|
|
5
5
|
variant,
|
|
6
6
|
vec,
|
|
7
7
|
} from "@dao-xyz/borsh";
|
|
8
|
+
import { Entry } from "@peerbit/log";
|
|
9
|
+
import type { SearchRequest, SearchRequestIndexed } from "./request.js";
|
|
8
10
|
|
|
9
11
|
/// ----- RESULTS -----
|
|
10
12
|
|
|
@@ -38,7 +40,7 @@ export class Context {
|
|
|
38
40
|
}
|
|
39
41
|
|
|
40
42
|
@variant(0)
|
|
41
|
-
export class
|
|
43
|
+
export class ResultValue<T> extends Result {
|
|
42
44
|
@field({ type: Uint8Array })
|
|
43
45
|
_source: Uint8Array;
|
|
44
46
|
|
|
@@ -47,7 +49,7 @@ export class ResultWithSource<T> extends Result {
|
|
|
47
49
|
|
|
48
50
|
_type: AbstractType<T>;
|
|
49
51
|
constructor(opts: {
|
|
50
|
-
source
|
|
52
|
+
source?: Uint8Array;
|
|
51
53
|
context: Context;
|
|
52
54
|
value?: T;
|
|
53
55
|
indexed?: Record<string, any>;
|
|
@@ -79,18 +81,65 @@ export class ResultWithSource<T> extends Result {
|
|
|
79
81
|
indexed?: Record<string, any>;
|
|
80
82
|
}
|
|
81
83
|
|
|
84
|
+
@variant(1)
|
|
85
|
+
export class ResultIndexedValue<I> extends Result {
|
|
86
|
+
@field({ type: Uint8Array })
|
|
87
|
+
_source: Uint8Array;
|
|
88
|
+
|
|
89
|
+
@field({ type: vec(Entry) })
|
|
90
|
+
entries: Entry<any>[];
|
|
91
|
+
|
|
92
|
+
@field({ type: Context })
|
|
93
|
+
context: Context;
|
|
94
|
+
|
|
95
|
+
_type: AbstractType<I>;
|
|
96
|
+
|
|
97
|
+
constructor(opts: {
|
|
98
|
+
source: Uint8Array;
|
|
99
|
+
indexed: I;
|
|
100
|
+
entries: Entry<any>[];
|
|
101
|
+
context: Context;
|
|
102
|
+
}) {
|
|
103
|
+
super();
|
|
104
|
+
this._source = opts.source;
|
|
105
|
+
this.context = opts.context;
|
|
106
|
+
this.indexed = opts.indexed;
|
|
107
|
+
this.entries = opts.entries;
|
|
108
|
+
this._value = opts.indexed;
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
init(type: AbstractType<I>) {
|
|
112
|
+
this._type = type;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
_value?: I;
|
|
116
|
+
get value(): I {
|
|
117
|
+
if (this._value) {
|
|
118
|
+
return this._value;
|
|
119
|
+
}
|
|
120
|
+
if (!this._source) {
|
|
121
|
+
throw new Error("Missing source binary");
|
|
122
|
+
}
|
|
123
|
+
this._value = deserialize(this._source, this._type);
|
|
124
|
+
return this._value;
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
// we never send this over the wire since we can always reconstruct it from value
|
|
128
|
+
indexed?: I;
|
|
129
|
+
}
|
|
130
|
+
|
|
82
131
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
83
|
-
export abstract class AbstractSearchResult
|
|
132
|
+
export abstract class AbstractSearchResult {}
|
|
84
133
|
|
|
85
134
|
@variant(0)
|
|
86
|
-
export class Results<
|
|
87
|
-
@field({ type: vec(
|
|
88
|
-
results:
|
|
135
|
+
export class Results<R extends Result> extends AbstractSearchResult {
|
|
136
|
+
@field({ type: vec(Result) })
|
|
137
|
+
results: R[];
|
|
89
138
|
|
|
90
139
|
@field({ type: "u64" })
|
|
91
140
|
kept: bigint; // how many results that were not sent, but can be collected later
|
|
92
141
|
|
|
93
|
-
constructor(properties: { results:
|
|
142
|
+
constructor(properties: { results: R[]; kept: bigint }) {
|
|
94
143
|
super();
|
|
95
144
|
this.kept = properties.kept;
|
|
96
145
|
this.results = properties.results;
|
|
@@ -98,7 +147,14 @@ export class Results<T> extends AbstractSearchResult<T> {
|
|
|
98
147
|
}
|
|
99
148
|
|
|
100
149
|
@variant(1)
|
|
101
|
-
export class NoAccess extends AbstractSearchResult
|
|
150
|
+
export class NoAccess extends AbstractSearchResult {}
|
|
151
|
+
|
|
152
|
+
// for SearchRequest we wnat to return ResultsWithSource<T> for IndexedSearchRequest we want to return ResultsIndexed<T>
|
|
153
|
+
export type ResultTypeFromRequest<R> = R extends SearchRequest
|
|
154
|
+
? ResultValue<any>
|
|
155
|
+
: R extends SearchRequestIndexed
|
|
156
|
+
? ResultIndexedValue<any>
|
|
157
|
+
: ResultIndexedValue<any> | ResultValue<any>;
|
|
102
158
|
|
|
103
159
|
/* @variant(5)
|
|
104
160
|
export class LogQuery extends Query { } */
|
package/src/request.ts
CHANGED
|
@@ -49,6 +49,49 @@ export class SearchRequest extends AbstractSearchRequest {
|
|
|
49
49
|
}
|
|
50
50
|
}
|
|
51
51
|
|
|
52
|
+
@variant(1)
|
|
53
|
+
export class SearchRequestIndexed extends AbstractSearchRequest {
|
|
54
|
+
@field({ type: fixedArray("u8", 32) })
|
|
55
|
+
id: Uint8Array; // Session id
|
|
56
|
+
|
|
57
|
+
@field({ type: vec(Query) })
|
|
58
|
+
query: Query[];
|
|
59
|
+
|
|
60
|
+
@field({ type: vec(Sort) })
|
|
61
|
+
sort: Sort[];
|
|
62
|
+
|
|
63
|
+
@field({ type: "u32" })
|
|
64
|
+
fetch: number;
|
|
65
|
+
|
|
66
|
+
@field({ type: "bool" })
|
|
67
|
+
replicate: boolean; // is the intent to replicate?
|
|
68
|
+
|
|
69
|
+
constructor(props?: {
|
|
70
|
+
query?:
|
|
71
|
+
| Query[]
|
|
72
|
+
| Query
|
|
73
|
+
| Record<
|
|
74
|
+
string,
|
|
75
|
+
string | number | bigint | Uint8Array | boolean | null | undefined
|
|
76
|
+
>;
|
|
77
|
+
sort?: Sort[] | Sort;
|
|
78
|
+
fetch?: number;
|
|
79
|
+
replicate?: boolean;
|
|
80
|
+
}) {
|
|
81
|
+
super();
|
|
82
|
+
this.id = randomBytes(32);
|
|
83
|
+
this.query = props?.query ? toQuery(props.query) : [];
|
|
84
|
+
this.sort = toArray(props?.sort);
|
|
85
|
+
this.fetch = props?.fetch ?? 10; // default fetch 10 documents
|
|
86
|
+
this.replicate = props.replicate ?? false;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
private _idString: string;
|
|
90
|
+
get idString(): string {
|
|
91
|
+
return this._idString || (this._idString = sha256Base64Sync(this.id));
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
|
|
52
95
|
/**
|
|
53
96
|
* Collect documents from peers using 'collect' session ids. This is used for distributed sorting internally
|
|
54
97
|
*/
|