@peerbit/document-interface 6.0.7-0691c73
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/id.d.ts +47 -0
- package/dist/src/id.d.ts.map +1 -0
- package/dist/src/id.js +217 -0
- package/dist/src/id.js.map +1 -0
- package/dist/src/index-engine.d.ts +45 -0
- package/dist/src/index-engine.d.ts.map +1 -0
- package/dist/src/index-engine.js +5 -0
- package/dist/src/index-engine.js.map +1 -0
- package/dist/src/index.d.ts +6 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +6 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/query.d.ts +173 -0
- package/dist/src/query.d.ts.map +1 -0
- package/dist/src/query.js +545 -0
- package/dist/src/query.js.map +1 -0
- package/dist/src/store.d.ts +7 -0
- package/dist/src/store.d.ts.map +1 -0
- package/dist/src/store.js +2 -0
- package/dist/src/store.js.map +1 -0
- package/dist/src/utils.d.ts +10 -0
- package/dist/src/utils.d.ts.map +1 -0
- package/dist/src/utils.js +51 -0
- package/dist/src/utils.js.map +1 -0
- package/package.json +63 -0
- package/src/id.ts +209 -0
- package/src/index-engine.ts +57 -0
- package/src/index.ts +5 -0
- package/src/query.ts +478 -0
- package/src/store.ts +5 -0
- package/src/utils.ts +65 -0
|
@@ -0,0 +1,545 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
+
};
|
|
10
|
+
import { deserialize, field, fixedArray, serialize, variant, vec } from "@dao-xyz/borsh";
|
|
11
|
+
import { randomBytes, sha256Base64Sync, toBase64 } from "@peerbit/crypto";
|
|
12
|
+
import { BigUnsignedIntegerValue, IntegerValue, UnsignedIntegerValue } from "./id.js";
|
|
13
|
+
export var Compare;
|
|
14
|
+
(function (Compare) {
|
|
15
|
+
Compare[Compare["Equal"] = 0] = "Equal";
|
|
16
|
+
Compare[Compare["Greater"] = 1] = "Greater";
|
|
17
|
+
Compare[Compare["GreaterOrEqual"] = 2] = "GreaterOrEqual";
|
|
18
|
+
Compare[Compare["Less"] = 3] = "Less";
|
|
19
|
+
Compare[Compare["LessOrEqual"] = 4] = "LessOrEqual";
|
|
20
|
+
})(Compare || (Compare = {}));
|
|
21
|
+
export const compare = (test, compare, value) => {
|
|
22
|
+
switch (compare) {
|
|
23
|
+
case Compare.Equal:
|
|
24
|
+
return test == value; // == because with want bigint == number at some cases
|
|
25
|
+
case Compare.Greater:
|
|
26
|
+
return test > value;
|
|
27
|
+
case Compare.GreaterOrEqual:
|
|
28
|
+
return test >= value;
|
|
29
|
+
case Compare.Less:
|
|
30
|
+
return test < value;
|
|
31
|
+
case Compare.LessOrEqual:
|
|
32
|
+
return test <= value;
|
|
33
|
+
default:
|
|
34
|
+
console.warn("Unexpected compare");
|
|
35
|
+
return false;
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
/// ----- QUERY -----
|
|
39
|
+
export class Query {
|
|
40
|
+
clone() {
|
|
41
|
+
return deserialize(serialize(this), this.constructor);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
export var SortDirection;
|
|
45
|
+
(function (SortDirection) {
|
|
46
|
+
SortDirection[SortDirection["ASC"] = 0] = "ASC";
|
|
47
|
+
SortDirection[SortDirection["DESC"] = 1] = "DESC";
|
|
48
|
+
})(SortDirection || (SortDirection = {}));
|
|
49
|
+
let Sort = class Sort {
|
|
50
|
+
key;
|
|
51
|
+
direction;
|
|
52
|
+
constructor(properties) {
|
|
53
|
+
this.key = Array.isArray(properties.key)
|
|
54
|
+
? properties.key
|
|
55
|
+
: [properties.key];
|
|
56
|
+
this.direction = properties.direction || SortDirection.ASC;
|
|
57
|
+
}
|
|
58
|
+
};
|
|
59
|
+
__decorate([
|
|
60
|
+
field({ type: vec("string") }),
|
|
61
|
+
__metadata("design:type", Array)
|
|
62
|
+
], Sort.prototype, "key", void 0);
|
|
63
|
+
__decorate([
|
|
64
|
+
field({ type: "u8" }),
|
|
65
|
+
__metadata("design:type", Number)
|
|
66
|
+
], Sort.prototype, "direction", void 0);
|
|
67
|
+
Sort = __decorate([
|
|
68
|
+
variant(0),
|
|
69
|
+
__metadata("design:paramtypes", [Object])
|
|
70
|
+
], Sort);
|
|
71
|
+
export { Sort };
|
|
72
|
+
export class AbstractSearchRequest {
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Search with query and collect with sort conditionss
|
|
76
|
+
*/
|
|
77
|
+
const toArray = (arr) => (arr ? (Array.isArray(arr) ? arr : [arr]) : undefined) || [];
|
|
78
|
+
let SearchRequest = class SearchRequest extends AbstractSearchRequest {
|
|
79
|
+
id; // Session id
|
|
80
|
+
query;
|
|
81
|
+
sort;
|
|
82
|
+
fetch;
|
|
83
|
+
constructor(props) {
|
|
84
|
+
super();
|
|
85
|
+
this.id = randomBytes(32);
|
|
86
|
+
this.query = toArray(props?.query);
|
|
87
|
+
this.sort = toArray(props?.sort);
|
|
88
|
+
this.fetch = 1;
|
|
89
|
+
}
|
|
90
|
+
_idString;
|
|
91
|
+
get idString() {
|
|
92
|
+
return this._idString || (this._idString = sha256Base64Sync(this.id));
|
|
93
|
+
}
|
|
94
|
+
};
|
|
95
|
+
__decorate([
|
|
96
|
+
field({ type: fixedArray("u8", 32) }),
|
|
97
|
+
__metadata("design:type", Uint8Array)
|
|
98
|
+
], SearchRequest.prototype, "id", void 0);
|
|
99
|
+
__decorate([
|
|
100
|
+
field({ type: vec(Query) }),
|
|
101
|
+
__metadata("design:type", Array)
|
|
102
|
+
], SearchRequest.prototype, "query", void 0);
|
|
103
|
+
__decorate([
|
|
104
|
+
field({ type: vec(Sort) }),
|
|
105
|
+
__metadata("design:type", Array)
|
|
106
|
+
], SearchRequest.prototype, "sort", void 0);
|
|
107
|
+
__decorate([
|
|
108
|
+
field({ type: "u32" }),
|
|
109
|
+
__metadata("design:type", Number)
|
|
110
|
+
], SearchRequest.prototype, "fetch", void 0);
|
|
111
|
+
SearchRequest = __decorate([
|
|
112
|
+
variant(0),
|
|
113
|
+
__metadata("design:paramtypes", [Object])
|
|
114
|
+
], SearchRequest);
|
|
115
|
+
export { SearchRequest };
|
|
116
|
+
/**
|
|
117
|
+
* Collect documents from peers using 'collect' session ids. This is used for distributed sorting internally
|
|
118
|
+
*/
|
|
119
|
+
let CollectNextRequest = class CollectNextRequest extends AbstractSearchRequest {
|
|
120
|
+
id; // collect with id
|
|
121
|
+
amount; // number of documents to ask for
|
|
122
|
+
constructor(properties) {
|
|
123
|
+
super();
|
|
124
|
+
this.id = properties.id;
|
|
125
|
+
this.amount = properties.amount;
|
|
126
|
+
}
|
|
127
|
+
_idString;
|
|
128
|
+
get idString() {
|
|
129
|
+
return this._idString || (this._idString = sha256Base64Sync(this.id));
|
|
130
|
+
}
|
|
131
|
+
};
|
|
132
|
+
__decorate([
|
|
133
|
+
field({ type: fixedArray("u8", 32) }),
|
|
134
|
+
__metadata("design:type", Uint8Array)
|
|
135
|
+
], CollectNextRequest.prototype, "id", void 0);
|
|
136
|
+
__decorate([
|
|
137
|
+
field({ type: "u32" }),
|
|
138
|
+
__metadata("design:type", Number)
|
|
139
|
+
], CollectNextRequest.prototype, "amount", void 0);
|
|
140
|
+
CollectNextRequest = __decorate([
|
|
141
|
+
variant(2),
|
|
142
|
+
__metadata("design:paramtypes", [Object])
|
|
143
|
+
], CollectNextRequest);
|
|
144
|
+
export { CollectNextRequest };
|
|
145
|
+
let CloseIteratorRequest = class CloseIteratorRequest extends AbstractSearchRequest {
|
|
146
|
+
id; // collect with id
|
|
147
|
+
constructor(properties) {
|
|
148
|
+
super();
|
|
149
|
+
this.id = properties.id;
|
|
150
|
+
}
|
|
151
|
+
_idString;
|
|
152
|
+
get idString() {
|
|
153
|
+
return this._idString || (this._idString = sha256Base64Sync(this.id));
|
|
154
|
+
}
|
|
155
|
+
};
|
|
156
|
+
__decorate([
|
|
157
|
+
field({ type: fixedArray("u8", 32) }),
|
|
158
|
+
__metadata("design:type", Uint8Array)
|
|
159
|
+
], CloseIteratorRequest.prototype, "id", void 0);
|
|
160
|
+
CloseIteratorRequest = __decorate([
|
|
161
|
+
variant(3),
|
|
162
|
+
__metadata("design:paramtypes", [Object])
|
|
163
|
+
], CloseIteratorRequest);
|
|
164
|
+
export { CloseIteratorRequest };
|
|
165
|
+
let LogicalQuery = class LogicalQuery extends Query {
|
|
166
|
+
};
|
|
167
|
+
LogicalQuery = __decorate([
|
|
168
|
+
variant(1)
|
|
169
|
+
], LogicalQuery);
|
|
170
|
+
export { LogicalQuery };
|
|
171
|
+
let And = class And extends LogicalQuery {
|
|
172
|
+
and;
|
|
173
|
+
constructor(and) {
|
|
174
|
+
super();
|
|
175
|
+
this.and = and;
|
|
176
|
+
}
|
|
177
|
+
};
|
|
178
|
+
__decorate([
|
|
179
|
+
field({ type: vec(Query) }),
|
|
180
|
+
__metadata("design:type", Array)
|
|
181
|
+
], And.prototype, "and", void 0);
|
|
182
|
+
And = __decorate([
|
|
183
|
+
variant(0),
|
|
184
|
+
__metadata("design:paramtypes", [Array])
|
|
185
|
+
], And);
|
|
186
|
+
export { And };
|
|
187
|
+
let Or = class Or extends LogicalQuery {
|
|
188
|
+
or;
|
|
189
|
+
constructor(or) {
|
|
190
|
+
super();
|
|
191
|
+
this.or = or;
|
|
192
|
+
}
|
|
193
|
+
};
|
|
194
|
+
__decorate([
|
|
195
|
+
field({ type: vec(Query) }),
|
|
196
|
+
__metadata("design:type", Array)
|
|
197
|
+
], Or.prototype, "or", void 0);
|
|
198
|
+
Or = __decorate([
|
|
199
|
+
variant(1),
|
|
200
|
+
__metadata("design:paramtypes", [Array])
|
|
201
|
+
], Or);
|
|
202
|
+
export { Or };
|
|
203
|
+
let StateQuery = class StateQuery extends Query {
|
|
204
|
+
};
|
|
205
|
+
StateQuery = __decorate([
|
|
206
|
+
variant(2)
|
|
207
|
+
], StateQuery);
|
|
208
|
+
export { StateQuery };
|
|
209
|
+
let StateFieldQuery = class StateFieldQuery extends StateQuery {
|
|
210
|
+
key;
|
|
211
|
+
constructor(props) {
|
|
212
|
+
super();
|
|
213
|
+
this.key = Array.isArray(props.key) ? props.key : [props.key];
|
|
214
|
+
}
|
|
215
|
+
};
|
|
216
|
+
__decorate([
|
|
217
|
+
field({ type: vec("string") }),
|
|
218
|
+
__metadata("design:type", Array)
|
|
219
|
+
], StateFieldQuery.prototype, "key", void 0);
|
|
220
|
+
StateFieldQuery = __decorate([
|
|
221
|
+
variant(1),
|
|
222
|
+
__metadata("design:paramtypes", [Object])
|
|
223
|
+
], StateFieldQuery);
|
|
224
|
+
export { StateFieldQuery };
|
|
225
|
+
let ByteMatchQuery = class ByteMatchQuery extends StateFieldQuery {
|
|
226
|
+
value;
|
|
227
|
+
_reserved; // Replcate MemoryCompare query with this?
|
|
228
|
+
constructor(props) {
|
|
229
|
+
super(props);
|
|
230
|
+
this.value = props.value;
|
|
231
|
+
this._reserved = 0;
|
|
232
|
+
}
|
|
233
|
+
_valueString;
|
|
234
|
+
/**
|
|
235
|
+
* value `asString`
|
|
236
|
+
*/
|
|
237
|
+
get valueString() {
|
|
238
|
+
return this._valueString ?? (this._valueString = toBase64(this.value));
|
|
239
|
+
}
|
|
240
|
+
};
|
|
241
|
+
__decorate([
|
|
242
|
+
field({ type: Uint8Array }),
|
|
243
|
+
__metadata("design:type", Uint8Array)
|
|
244
|
+
], ByteMatchQuery.prototype, "value", void 0);
|
|
245
|
+
__decorate([
|
|
246
|
+
field({ type: "u8" })
|
|
247
|
+
// @ts-ignore: unused
|
|
248
|
+
,
|
|
249
|
+
__metadata("design:type", Number)
|
|
250
|
+
], ByteMatchQuery.prototype, "_reserved", void 0);
|
|
251
|
+
ByteMatchQuery = __decorate([
|
|
252
|
+
variant(1),
|
|
253
|
+
__metadata("design:paramtypes", [Object])
|
|
254
|
+
], ByteMatchQuery);
|
|
255
|
+
export { ByteMatchQuery };
|
|
256
|
+
export var StringMatchMethod;
|
|
257
|
+
(function (StringMatchMethod) {
|
|
258
|
+
StringMatchMethod[StringMatchMethod["exact"] = 0] = "exact";
|
|
259
|
+
StringMatchMethod[StringMatchMethod["prefix"] = 1] = "prefix";
|
|
260
|
+
StringMatchMethod[StringMatchMethod["contains"] = 2] = "contains";
|
|
261
|
+
})(StringMatchMethod || (StringMatchMethod = {}));
|
|
262
|
+
let StringMatch = class StringMatch extends StateFieldQuery {
|
|
263
|
+
value;
|
|
264
|
+
method;
|
|
265
|
+
caseInsensitive;
|
|
266
|
+
constructor(props) {
|
|
267
|
+
super(props);
|
|
268
|
+
this.value = props.value;
|
|
269
|
+
this.method = props.method ?? StringMatchMethod.exact;
|
|
270
|
+
this.caseInsensitive = props.caseInsensitive ?? false;
|
|
271
|
+
}
|
|
272
|
+
};
|
|
273
|
+
__decorate([
|
|
274
|
+
field({ type: "string" }),
|
|
275
|
+
__metadata("design:type", String)
|
|
276
|
+
], StringMatch.prototype, "value", void 0);
|
|
277
|
+
__decorate([
|
|
278
|
+
field({ type: "u8" }),
|
|
279
|
+
__metadata("design:type", Number)
|
|
280
|
+
], StringMatch.prototype, "method", void 0);
|
|
281
|
+
__decorate([
|
|
282
|
+
field({ type: "bool" }),
|
|
283
|
+
__metadata("design:type", Boolean)
|
|
284
|
+
], StringMatch.prototype, "caseInsensitive", void 0);
|
|
285
|
+
StringMatch = __decorate([
|
|
286
|
+
variant(2),
|
|
287
|
+
__metadata("design:paramtypes", [Object])
|
|
288
|
+
], StringMatch);
|
|
289
|
+
export { StringMatch };
|
|
290
|
+
let IntegerCompare = class IntegerCompare extends StateFieldQuery {
|
|
291
|
+
compare;
|
|
292
|
+
value;
|
|
293
|
+
constructor(props) {
|
|
294
|
+
super(props);
|
|
295
|
+
if (props.value instanceof IntegerValue) {
|
|
296
|
+
this.value = props.value;
|
|
297
|
+
}
|
|
298
|
+
else {
|
|
299
|
+
if (typeof props.value === "bigint") {
|
|
300
|
+
this.value = new BigUnsignedIntegerValue(props.value);
|
|
301
|
+
}
|
|
302
|
+
else {
|
|
303
|
+
this.value = new UnsignedIntegerValue(props.value);
|
|
304
|
+
}
|
|
305
|
+
}
|
|
306
|
+
this.compare = props.compare;
|
|
307
|
+
}
|
|
308
|
+
};
|
|
309
|
+
__decorate([
|
|
310
|
+
field({ type: "u8" }),
|
|
311
|
+
__metadata("design:type", Number)
|
|
312
|
+
], IntegerCompare.prototype, "compare", void 0);
|
|
313
|
+
__decorate([
|
|
314
|
+
field({ type: IntegerValue }),
|
|
315
|
+
__metadata("design:type", IntegerValue)
|
|
316
|
+
], IntegerCompare.prototype, "value", void 0);
|
|
317
|
+
IntegerCompare = __decorate([
|
|
318
|
+
variant(3),
|
|
319
|
+
__metadata("design:paramtypes", [Object])
|
|
320
|
+
], IntegerCompare);
|
|
321
|
+
export { IntegerCompare };
|
|
322
|
+
let MissingField = class MissingField extends StateFieldQuery {
|
|
323
|
+
constructor(props) {
|
|
324
|
+
super(props);
|
|
325
|
+
}
|
|
326
|
+
};
|
|
327
|
+
MissingField = __decorate([
|
|
328
|
+
variant(4),
|
|
329
|
+
__metadata("design:paramtypes", [Object])
|
|
330
|
+
], MissingField);
|
|
331
|
+
export { MissingField };
|
|
332
|
+
let BoolQuery = class BoolQuery extends StateFieldQuery {
|
|
333
|
+
value;
|
|
334
|
+
constructor(props) {
|
|
335
|
+
super(props);
|
|
336
|
+
this.value = props.value;
|
|
337
|
+
}
|
|
338
|
+
};
|
|
339
|
+
__decorate([
|
|
340
|
+
field({ type: "bool" }),
|
|
341
|
+
__metadata("design:type", Boolean)
|
|
342
|
+
], BoolQuery.prototype, "value", void 0);
|
|
343
|
+
BoolQuery = __decorate([
|
|
344
|
+
variant(5),
|
|
345
|
+
__metadata("design:paramtypes", [Object])
|
|
346
|
+
], BoolQuery);
|
|
347
|
+
export { BoolQuery };
|
|
348
|
+
// TODO MemoryCompareQuery can be replaces with ByteMatchQuery? Or Nesteed Queries + ByteMatchQuery?
|
|
349
|
+
/* @variant(0)
|
|
350
|
+
export class MemoryCompare {
|
|
351
|
+
@field({ type: Uint8Array })
|
|
352
|
+
bytes: Uint8Array;
|
|
353
|
+
|
|
354
|
+
@field({ type: "u64" })
|
|
355
|
+
offset: bigint;
|
|
356
|
+
|
|
357
|
+
constructor(opts?: { bytes: Uint8Array; offset: bigint }) {
|
|
358
|
+
if (opts) {
|
|
359
|
+
this.bytes = opts.bytes;
|
|
360
|
+
this.offset = opts.offset;
|
|
361
|
+
}
|
|
362
|
+
}
|
|
363
|
+
}
|
|
364
|
+
|
|
365
|
+
@variant(4)
|
|
366
|
+
export class MemoryCompareQuery extends Query {
|
|
367
|
+
@field({ type: vec(MemoryCompare) })
|
|
368
|
+
compares: MemoryCompare[];
|
|
369
|
+
|
|
370
|
+
constructor(opts?: { compares: MemoryCompare[] }) {
|
|
371
|
+
super();
|
|
372
|
+
if (opts) {
|
|
373
|
+
this.compares = opts.compares;
|
|
374
|
+
}
|
|
375
|
+
}
|
|
376
|
+
} */
|
|
377
|
+
/// ----- RESULTS -----
|
|
378
|
+
export class Result {
|
|
379
|
+
}
|
|
380
|
+
let Context = class Context {
|
|
381
|
+
created;
|
|
382
|
+
modified;
|
|
383
|
+
head;
|
|
384
|
+
gid;
|
|
385
|
+
constructor(properties) {
|
|
386
|
+
this.created = properties.created;
|
|
387
|
+
this.modified = properties.modified;
|
|
388
|
+
this.head = properties.head;
|
|
389
|
+
this.gid = properties.gid;
|
|
390
|
+
}
|
|
391
|
+
};
|
|
392
|
+
__decorate([
|
|
393
|
+
field({ type: "u64" }),
|
|
394
|
+
__metadata("design:type", BigInt)
|
|
395
|
+
], Context.prototype, "created", void 0);
|
|
396
|
+
__decorate([
|
|
397
|
+
field({ type: "u64" }),
|
|
398
|
+
__metadata("design:type", BigInt)
|
|
399
|
+
], Context.prototype, "modified", void 0);
|
|
400
|
+
__decorate([
|
|
401
|
+
field({ type: "string" }),
|
|
402
|
+
__metadata("design:type", String)
|
|
403
|
+
], Context.prototype, "head", void 0);
|
|
404
|
+
__decorate([
|
|
405
|
+
field({ type: "string" }),
|
|
406
|
+
__metadata("design:type", String)
|
|
407
|
+
], Context.prototype, "gid", void 0);
|
|
408
|
+
Context = __decorate([
|
|
409
|
+
variant(0),
|
|
410
|
+
__metadata("design:paramtypes", [Object])
|
|
411
|
+
], Context);
|
|
412
|
+
export { Context };
|
|
413
|
+
let ResultWithSource = class ResultWithSource extends Result {
|
|
414
|
+
_source;
|
|
415
|
+
context;
|
|
416
|
+
_type;
|
|
417
|
+
constructor(opts) {
|
|
418
|
+
super();
|
|
419
|
+
this._source = opts.source;
|
|
420
|
+
this.context = opts.context;
|
|
421
|
+
this._value = opts.value;
|
|
422
|
+
this.indexed = opts.indexed;
|
|
423
|
+
}
|
|
424
|
+
init(type) {
|
|
425
|
+
this._type = type;
|
|
426
|
+
}
|
|
427
|
+
_value;
|
|
428
|
+
get value() {
|
|
429
|
+
if (this._value) {
|
|
430
|
+
return this._value;
|
|
431
|
+
}
|
|
432
|
+
if (!this._source) {
|
|
433
|
+
throw new Error("Missing source binary");
|
|
434
|
+
}
|
|
435
|
+
this._value = deserialize(this._source, this._type);
|
|
436
|
+
return this._value;
|
|
437
|
+
}
|
|
438
|
+
indexed;
|
|
439
|
+
};
|
|
440
|
+
__decorate([
|
|
441
|
+
field({ type: Uint8Array }),
|
|
442
|
+
__metadata("design:type", Uint8Array)
|
|
443
|
+
], ResultWithSource.prototype, "_source", void 0);
|
|
444
|
+
__decorate([
|
|
445
|
+
field({ type: Context }),
|
|
446
|
+
__metadata("design:type", Context)
|
|
447
|
+
], ResultWithSource.prototype, "context", void 0);
|
|
448
|
+
ResultWithSource = __decorate([
|
|
449
|
+
variant(0),
|
|
450
|
+
__metadata("design:paramtypes", [Object])
|
|
451
|
+
], ResultWithSource);
|
|
452
|
+
export { ResultWithSource };
|
|
453
|
+
export class AbstractSearchResult {
|
|
454
|
+
}
|
|
455
|
+
let Results = class Results extends AbstractSearchResult {
|
|
456
|
+
results;
|
|
457
|
+
kept; // how many results that were not sent, but can be collected later
|
|
458
|
+
constructor(properties) {
|
|
459
|
+
super();
|
|
460
|
+
this.kept = properties.kept;
|
|
461
|
+
this.results = properties.results;
|
|
462
|
+
}
|
|
463
|
+
};
|
|
464
|
+
__decorate([
|
|
465
|
+
field({ type: vec(ResultWithSource) }),
|
|
466
|
+
__metadata("design:type", Array)
|
|
467
|
+
], Results.prototype, "results", void 0);
|
|
468
|
+
__decorate([
|
|
469
|
+
field({ type: "u64" }),
|
|
470
|
+
__metadata("design:type", BigInt)
|
|
471
|
+
], Results.prototype, "kept", void 0);
|
|
472
|
+
Results = __decorate([
|
|
473
|
+
variant(0),
|
|
474
|
+
__metadata("design:paramtypes", [Object])
|
|
475
|
+
], Results);
|
|
476
|
+
export { Results };
|
|
477
|
+
let NoAccess = class NoAccess extends AbstractSearchResult {
|
|
478
|
+
};
|
|
479
|
+
NoAccess = __decorate([
|
|
480
|
+
variant(1)
|
|
481
|
+
], NoAccess);
|
|
482
|
+
export { NoAccess };
|
|
483
|
+
/* @variant(5)
|
|
484
|
+
export class LogQuery extends Query { } */
|
|
485
|
+
/**
|
|
486
|
+
* Find logs that can be decrypted by certain keys
|
|
487
|
+
*/
|
|
488
|
+
/*
|
|
489
|
+
@variant(0)
|
|
490
|
+
export class EntryEncryptedByQuery
|
|
491
|
+
extends LogQuery
|
|
492
|
+
implements
|
|
493
|
+
EntryEncryptionTemplate<
|
|
494
|
+
X25519PublicKey[],
|
|
495
|
+
X25519PublicKey[],
|
|
496
|
+
X25519PublicKey[],
|
|
497
|
+
X25519PublicKey[]
|
|
498
|
+
>
|
|
499
|
+
{
|
|
500
|
+
@field({ type: vec(X25519PublicKey) })
|
|
501
|
+
meta: X25519PublicKey[];
|
|
502
|
+
|
|
503
|
+
@field({ type: vec(X25519PublicKey) })
|
|
504
|
+
payload: X25519PublicKey[];
|
|
505
|
+
|
|
506
|
+
@field({ type: vec(X25519PublicKey) })
|
|
507
|
+
next: X25519PublicKey[];
|
|
508
|
+
|
|
509
|
+
@field({ type: vec(X25519PublicKey) })
|
|
510
|
+
signatures: X25519PublicKey[];
|
|
511
|
+
|
|
512
|
+
constructor(properties?: {
|
|
513
|
+
meta: X25519PublicKey[];
|
|
514
|
+
next: X25519PublicKey[];
|
|
515
|
+
payload: X25519PublicKey[];
|
|
516
|
+
signatures: X25519PublicKey[];
|
|
517
|
+
}) {
|
|
518
|
+
super();
|
|
519
|
+
if (properties) {
|
|
520
|
+
this.metadata = properties.metadata;
|
|
521
|
+
this.payload = properties.payload;
|
|
522
|
+
this.next = properties.next;
|
|
523
|
+
this.signatures = properties.signatures;
|
|
524
|
+
}
|
|
525
|
+
}
|
|
526
|
+
}
|
|
527
|
+
|
|
528
|
+
@variant(1)
|
|
529
|
+
export class SignedByQuery extends LogQuery {
|
|
530
|
+
@field({ type: vec(PublicSignKey) })
|
|
531
|
+
_publicKeys: PublicSignKey[];
|
|
532
|
+
|
|
533
|
+
constructor(properties: { publicKeys: PublicSignKey[] }) {
|
|
534
|
+
super();
|
|
535
|
+
if (properties) {
|
|
536
|
+
this._publicKeys = properties.publicKeys;
|
|
537
|
+
}
|
|
538
|
+
}
|
|
539
|
+
|
|
540
|
+
get publicKeys() {
|
|
541
|
+
return this._publicKeys;
|
|
542
|
+
}
|
|
543
|
+
}
|
|
544
|
+
*/
|
|
545
|
+
//# sourceMappingURL=query.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/query.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3C,MAAM,MAAM,cAAc,CAAC,CAAC,IAAI;IAC/B,KAAK,EAAE;QAAE,MAAM,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,OAAO,CAAC,CAAC,EAAE,CAAC,CAAA;KAAE,CAAC;CAC1D,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Context, Sort } from "./query.js";
|
|
2
|
+
export declare const stringArraysEquals: (a: string[] | string, b: string[] | string) => boolean;
|
|
3
|
+
export declare const resolvedSort: <Q extends {
|
|
4
|
+
indexed: Record<string, any>;
|
|
5
|
+
context: Context;
|
|
6
|
+
}>(arr: Q[], sorts: Sort[]) => Promise<Q[]>;
|
|
7
|
+
export declare const extractSortCompare: (a: Record<string, any>, b: Record<string, any>, sorts: Sort[]) => number;
|
|
8
|
+
export declare const sortCompare: (av: any, bv: any) => number;
|
|
9
|
+
export declare const extractFieldValue: <T>(doc: any, path: string[]) => T;
|
|
10
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAiB,MAAM,YAAY,CAAC;AAE1D,eAAO,MAAM,kBAAkB,MAC3B,MAAM,EAAE,GAAG,MAAM,KACjB,MAAM,EAAE,GAAG,MAAM,YAWpB,CAAC;AAEF,eAAO,MAAM,YAAY;aACH,OAAO,MAAM,EAAE,GAAG,CAAC;aAAW,OAAO;QAErD,CAAC,EAAE,SACD,IAAI,EAAE,iBAIb,CAAC;AAEF,eAAO,MAAM,kBAAkB,MAC3B,OAAO,MAAM,EAAE,GAAG,CAAC,KACnB,OAAO,MAAM,EAAE,GAAG,CAAC,SACf,IAAI,EAAE,WAeb,CAAC;AAEF,eAAO,MAAM,WAAW,OAAQ,GAAG,MAAM,GAAG,WAU3C,CAAC;AAEF,eAAO,MAAM,iBAAiB,WAAY,GAAG,QAAQ,MAAM,EAAE,KAAG,CAK/D,CAAC"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { Context, Sort, SortDirection } from "./query.js";
|
|
2
|
+
export const stringArraysEquals = (a, b) => {
|
|
3
|
+
if (a.length !== b.length) {
|
|
4
|
+
return false;
|
|
5
|
+
}
|
|
6
|
+
for (let i = 0; i < a.length; i++) {
|
|
7
|
+
if (a[i] !== b[i]) {
|
|
8
|
+
return false;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
return true;
|
|
12
|
+
};
|
|
13
|
+
export const resolvedSort = async (arr, sorts) => {
|
|
14
|
+
arr.sort((a, b) => extractSortCompare(a.indexed, b.indexed, sorts));
|
|
15
|
+
return arr;
|
|
16
|
+
};
|
|
17
|
+
export const extractSortCompare = (a, b, sorts) => {
|
|
18
|
+
for (const sort of sorts) {
|
|
19
|
+
const av = extractFieldValue(a, sort.key);
|
|
20
|
+
const bv = extractFieldValue(b, sort.key);
|
|
21
|
+
const cmp = sortCompare(av, bv);
|
|
22
|
+
if (cmp != 0) {
|
|
23
|
+
if (sort.direction === SortDirection.ASC) {
|
|
24
|
+
return cmp;
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
27
|
+
return -cmp;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
return 0;
|
|
32
|
+
};
|
|
33
|
+
export const sortCompare = (av, bv) => {
|
|
34
|
+
if (typeof av === "string" && typeof bv === "string") {
|
|
35
|
+
return av.localeCompare(bv);
|
|
36
|
+
}
|
|
37
|
+
if (av < bv) {
|
|
38
|
+
return -1;
|
|
39
|
+
}
|
|
40
|
+
else if (av > bv) {
|
|
41
|
+
return 1;
|
|
42
|
+
}
|
|
43
|
+
return 0;
|
|
44
|
+
};
|
|
45
|
+
export const extractFieldValue = (doc, path) => {
|
|
46
|
+
for (let i = 0; i < path.length; i++) {
|
|
47
|
+
doc = doc[path[i]];
|
|
48
|
+
}
|
|
49
|
+
return doc;
|
|
50
|
+
};
|
|
51
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE1D,MAAM,CAAC,MAAM,kBAAkB,GAAG,CACjC,CAAoB,EACpB,CAAoB,EACnB,EAAE;IACH,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;QAC3B,OAAO,KAAK,CAAC;IACd,CAAC;IACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACnC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACnB,OAAO,KAAK,CAAC;QACd,CAAC;IACF,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAGhC,GAAQ,EACR,KAAa,EACZ,EAAE;IACH,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;IACpE,OAAO,GAAG,CAAC;AACZ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CACjC,CAAsB,EACtB,CAAsB,EACtB,KAAa,EACZ,EAAE;IACH,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QAC1B,MAAM,EAAE,GAAG,iBAAiB,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;QAC1C,MAAM,EAAE,GAAG,iBAAiB,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;QAC1C,MAAM,GAAG,GAAG,WAAW,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QAChC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC;YACd,IAAI,IAAI,CAAC,SAAS,KAAK,aAAa,CAAC,GAAG,EAAE,CAAC;gBAC1C,OAAO,GAAG,CAAC;YACZ,CAAC;iBAAM,CAAC;gBACP,OAAO,CAAC,GAAG,CAAC;YACb,CAAC;QACF,CAAC;IACF,CAAC;IACD,OAAO,CAAC,CAAC;AACV,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,EAAO,EAAE,EAAO,EAAE,EAAE;IAC/C,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,OAAO,EAAE,KAAK,QAAQ,EAAE,CAAC;QACtD,OAAO,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;IAC7B,CAAC;IACD,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC;QACb,OAAO,CAAC,CAAC,CAAC;IACX,CAAC;SAAM,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC;QACpB,OAAO,CAAC,CAAC;IACV,CAAC;IACD,OAAO,CAAC,CAAC;AACV,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAI,GAAQ,EAAE,IAAc,EAAK,EAAE;IACnE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IACD,OAAO,GAAG,CAAC;AACZ,CAAC,CAAC"}
|