@peerbit/please-lib 0.0.9 → 0.0.11
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/lib/esm/index.d.ts +11 -3
- package/lib/esm/index.js +44 -19
- package/lib/esm/index.js.map +1 -1
- package/package.json +7 -9
- package/src/index.ts +40 -22
package/lib/esm/index.d.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { Program } from "@peerbit/program";
|
|
2
|
-
import { Documents
|
|
2
|
+
import { Documents } from "@peerbit/document";
|
|
3
3
|
import { PublicSignKey } from "@peerbit/crypto";
|
|
4
4
|
import { TrustedNetwork } from "@peerbit/trusted-network";
|
|
5
|
+
import { ReplicationOptions } from "@peerbit/shared-log";
|
|
5
6
|
export declare abstract class AbstractFile {
|
|
6
7
|
abstract id: string;
|
|
7
8
|
abstract name: string;
|
|
@@ -14,6 +15,13 @@ export declare abstract class AbstractFile {
|
|
|
14
15
|
}): Promise<Output>;
|
|
15
16
|
abstract delete(files: Files): Promise<void>;
|
|
16
17
|
}
|
|
18
|
+
declare class IndexableFile {
|
|
19
|
+
id: string;
|
|
20
|
+
name: string;
|
|
21
|
+
size: number;
|
|
22
|
+
parentId?: string;
|
|
23
|
+
constructor(file: AbstractFile);
|
|
24
|
+
}
|
|
17
25
|
export declare class TinyFile extends AbstractFile {
|
|
18
26
|
id: string;
|
|
19
27
|
name: string;
|
|
@@ -54,13 +62,13 @@ export declare class LargeFile extends AbstractFile {
|
|
|
54
62
|
}): Promise<Output>;
|
|
55
63
|
}
|
|
56
64
|
type Args = {
|
|
57
|
-
|
|
65
|
+
replicate: ReplicationOptions;
|
|
58
66
|
};
|
|
59
67
|
export declare class Files extends Program<Args> {
|
|
60
68
|
id: Uint8Array;
|
|
61
69
|
name: string;
|
|
62
70
|
trustGraph?: TrustedNetwork;
|
|
63
|
-
files: Documents<AbstractFile>;
|
|
71
|
+
files: Documents<AbstractFile, IndexableFile>;
|
|
64
72
|
constructor(properties?: {
|
|
65
73
|
id?: Uint8Array;
|
|
66
74
|
name?: string;
|
package/lib/esm/index.js
CHANGED
|
@@ -10,7 +10,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
10
10
|
var LargeFile_1;
|
|
11
11
|
import { field, variant, vec, option } from "@dao-xyz/borsh";
|
|
12
12
|
import { Program } from "@peerbit/program";
|
|
13
|
-
import { Documents, SearchRequest, StringMatch, StringMatchMethod, Or,
|
|
13
|
+
import { Documents, SearchRequest, StringMatch, StringMatchMethod, Or, IsNull, } from "@peerbit/document";
|
|
14
14
|
import { sha256Base64Sync, randomBytes } from "@peerbit/crypto";
|
|
15
15
|
import { concat } from "uint8arrays";
|
|
16
16
|
import { sha256Sync } from "@peerbit/crypto";
|
|
@@ -18,6 +18,34 @@ import { TrustedNetwork } from "@peerbit/trusted-network";
|
|
|
18
18
|
import PQueue from "p-queue";
|
|
19
19
|
export class AbstractFile {
|
|
20
20
|
}
|
|
21
|
+
class IndexableFile {
|
|
22
|
+
id;
|
|
23
|
+
name;
|
|
24
|
+
size;
|
|
25
|
+
parentId;
|
|
26
|
+
constructor(file) {
|
|
27
|
+
this.id = file.id;
|
|
28
|
+
this.name = file.name;
|
|
29
|
+
this.size = file.size;
|
|
30
|
+
this.parentId = file.parentId;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
__decorate([
|
|
34
|
+
field({ type: "string" }),
|
|
35
|
+
__metadata("design:type", String)
|
|
36
|
+
], IndexableFile.prototype, "id", void 0);
|
|
37
|
+
__decorate([
|
|
38
|
+
field({ type: "string" }),
|
|
39
|
+
__metadata("design:type", String)
|
|
40
|
+
], IndexableFile.prototype, "name", void 0);
|
|
41
|
+
__decorate([
|
|
42
|
+
field({ type: "u32" }),
|
|
43
|
+
__metadata("design:type", Number)
|
|
44
|
+
], IndexableFile.prototype, "size", void 0);
|
|
45
|
+
__decorate([
|
|
46
|
+
field({ type: option("string") }),
|
|
47
|
+
__metadata("design:type", String)
|
|
48
|
+
], IndexableFile.prototype, "parentId", void 0);
|
|
21
49
|
const TINY_FILE_SIZE_LIMIT = 5 * 1e6; // 6mb
|
|
22
50
|
let TinyFile = class TinyFile extends AbstractFile {
|
|
23
51
|
id;
|
|
@@ -103,6 +131,7 @@ let LargeFile = LargeFile_1 = class LargeFile extends AbstractFile {
|
|
|
103
131
|
query: [
|
|
104
132
|
new Or([...expectedIds].map((x) => new StringMatch({ key: "id", value: x }))),
|
|
105
133
|
],
|
|
134
|
+
fetch: 0xffffffff,
|
|
106
135
|
}));
|
|
107
136
|
return allFiles;
|
|
108
137
|
}
|
|
@@ -112,10 +141,7 @@ let LargeFile = LargeFile_1 = class LargeFile extends AbstractFile {
|
|
|
112
141
|
async getFile(files, properties) {
|
|
113
142
|
// Get all sub files (SmallFiles) and concatinate them in the right order (the order of this.fileIds)
|
|
114
143
|
properties?.progress?.(0);
|
|
115
|
-
console.log("LISTS CHUNKS!");
|
|
116
144
|
const allChunks = await this.fetchChunks(files);
|
|
117
|
-
console.log("RECEIVED CHUNKS: " + allChunks);
|
|
118
|
-
console.log("FETCH CHUNKS");
|
|
119
145
|
const fetchQueue = new PQueue({ concurrency: 10 });
|
|
120
146
|
let fetchError = undefined;
|
|
121
147
|
fetchQueue.on("error", (err) => {
|
|
@@ -172,7 +198,6 @@ let LargeFile = LargeFile_1 = class LargeFile extends AbstractFile {
|
|
|
172
198
|
}
|
|
173
199
|
return chunkValue;
|
|
174
200
|
}));
|
|
175
|
-
console.log("FETCH DONE");
|
|
176
201
|
return (properties?.as == "chunks"
|
|
177
202
|
? chunkContentResolved
|
|
178
203
|
: concat(chunkContentResolved));
|
|
@@ -251,6 +276,7 @@ let Files = class Files extends Program {
|
|
|
251
276
|
caseInsensitive: false,
|
|
252
277
|
method: StringMatchMethod.exact,
|
|
253
278
|
}),
|
|
279
|
+
fetch: 0xffffffff,
|
|
254
280
|
}));
|
|
255
281
|
for (const file of files) {
|
|
256
282
|
await file.delete(this);
|
|
@@ -259,11 +285,14 @@ let Files = class Files extends Program {
|
|
|
259
285
|
}
|
|
260
286
|
async list() {
|
|
261
287
|
// only root files (don't fetch fetch chunks here)
|
|
262
|
-
const files = await this.files.index.search(new SearchRequest({
|
|
288
|
+
const files = await this.files.index.search(new SearchRequest({
|
|
289
|
+
query: new IsNull({ key: "parentId" }),
|
|
290
|
+
fetch: 0xffffffff,
|
|
291
|
+
}), {
|
|
263
292
|
local: true,
|
|
264
293
|
remote: {
|
|
265
294
|
throwOnMissing: true,
|
|
266
|
-
|
|
295
|
+
replicate: true, // sync here because this, because we might want to access it offline, even though we are not replicators
|
|
267
296
|
},
|
|
268
297
|
});
|
|
269
298
|
return files;
|
|
@@ -271,6 +300,7 @@ let Files = class Files extends Program {
|
|
|
271
300
|
async listLocalChunks(parent) {
|
|
272
301
|
const files = await this.files.index.search(new SearchRequest({
|
|
273
302
|
query: new StringMatch({ key: "parentId", value: parent.id }),
|
|
303
|
+
fetch: 0xffffffff,
|
|
274
304
|
}), {
|
|
275
305
|
local: true,
|
|
276
306
|
remote: false,
|
|
@@ -285,6 +315,7 @@ let Files = class Files extends Program {
|
|
|
285
315
|
async getById(id, properties) {
|
|
286
316
|
const results = await this.files.index.search(new SearchRequest({
|
|
287
317
|
query: [new StringMatch({ key: "id", value: id })],
|
|
318
|
+
fetch: 0xffffffff,
|
|
288
319
|
}), {
|
|
289
320
|
local: true,
|
|
290
321
|
remote: {
|
|
@@ -310,6 +341,7 @@ let Files = class Files extends Program {
|
|
|
310
341
|
async getByName(name, properties) {
|
|
311
342
|
const results = await this.files.index.search(new SearchRequest({
|
|
312
343
|
query: [new StringMatch({ key: "name", value: name })],
|
|
344
|
+
fetch: 0xffffffff,
|
|
313
345
|
}), {
|
|
314
346
|
local: true,
|
|
315
347
|
remote: {
|
|
@@ -330,18 +362,18 @@ let Files = class Files extends Program {
|
|
|
330
362
|
// Setup lifecycle, will be invoked on 'open'
|
|
331
363
|
async open(args) {
|
|
332
364
|
await this.trustGraph?.open({
|
|
333
|
-
|
|
365
|
+
replicate: args?.replicate,
|
|
334
366
|
});
|
|
335
367
|
await this.files.open({
|
|
336
368
|
type: AbstractFile,
|
|
337
369
|
// TODO add ACL
|
|
338
|
-
|
|
370
|
+
replicate: args?.replicate,
|
|
339
371
|
replicas: { min: 3 },
|
|
340
|
-
canPerform: async (operation
|
|
372
|
+
canPerform: async (operation) => {
|
|
341
373
|
if (!this.trustGraph) {
|
|
342
374
|
return true;
|
|
343
375
|
}
|
|
344
|
-
for (const key of await
|
|
376
|
+
for (const key of await operation.entry.getPublicKeys()) {
|
|
345
377
|
if (await this.trustGraph.isTrusted(key)) {
|
|
346
378
|
return true;
|
|
347
379
|
}
|
|
@@ -349,14 +381,7 @@ let Files = class Files extends Program {
|
|
|
349
381
|
return false;
|
|
350
382
|
},
|
|
351
383
|
index: {
|
|
352
|
-
|
|
353
|
-
return {
|
|
354
|
-
id: doc.id,
|
|
355
|
-
name: doc.name,
|
|
356
|
-
size: doc.size,
|
|
357
|
-
parentId: doc.parentId,
|
|
358
|
-
};
|
|
359
|
-
},
|
|
384
|
+
type: IndexableFile,
|
|
360
385
|
},
|
|
361
386
|
});
|
|
362
387
|
}
|
package/lib/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@peerbit/please-lib",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.11",
|
|
4
4
|
"author": "dao.xyz",
|
|
5
5
|
"repository": "https://github.com/@dao-xyz/peerbit-examples",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -28,19 +28,17 @@
|
|
|
28
28
|
"scripts": {
|
|
29
29
|
"clean": "shx rm -rf lib/*",
|
|
30
30
|
"build": "yarn clean && tsc -p tsconfig.json",
|
|
31
|
-
"test": "
|
|
32
|
-
"test:unit": "node ../../../node_modules/.bin/jest test -c ../../../jest.config.unit.ts --runInBand --forceExit",
|
|
33
|
-
"test:integration": "node ../../../node_modules/.bin/jest test -c ../../../jest.config.integration.ts --runInBand --forceExit"
|
|
31
|
+
"test": "mocha"
|
|
34
32
|
},
|
|
35
33
|
"devDependencies": {
|
|
36
34
|
"@peerbit/test-utils": "^2",
|
|
37
|
-
"typescript": "^5.
|
|
35
|
+
"typescript": "^5.6.3"
|
|
38
36
|
},
|
|
39
37
|
"dependencies": {
|
|
40
|
-
"@peerbit/document": "^
|
|
41
|
-
"@peerbit/trusted-network": "^
|
|
38
|
+
"@peerbit/document": "^9",
|
|
39
|
+
"@peerbit/trusted-network": "^4",
|
|
42
40
|
"peerbit": "^4",
|
|
43
|
-
"uuid": "^
|
|
41
|
+
"uuid": "^10.0.0"
|
|
44
42
|
},
|
|
45
|
-
"gitHead": "
|
|
43
|
+
"gitHead": "55ae175bfbdd39bbdef5f8d1ea6ad73580a208f3"
|
|
46
44
|
}
|
package/src/index.ts
CHANGED
|
@@ -6,8 +6,7 @@ import {
|
|
|
6
6
|
StringMatch,
|
|
7
7
|
StringMatchMethod,
|
|
8
8
|
Or,
|
|
9
|
-
|
|
10
|
-
MissingField,
|
|
9
|
+
IsNull,
|
|
11
10
|
} from "@peerbit/document";
|
|
12
11
|
import { PublicSignKey, sha256Base64Sync, randomBytes } from "@peerbit/crypto";
|
|
13
12
|
import { ProgramClient } from "@peerbit/program";
|
|
@@ -15,6 +14,7 @@ import { concat } from "uint8arrays";
|
|
|
15
14
|
import { sha256Sync } from "@peerbit/crypto";
|
|
16
15
|
import { TrustedNetwork } from "@peerbit/trusted-network";
|
|
17
16
|
import PQueue from "p-queue";
|
|
17
|
+
import { ReplicationOptions } from "@peerbit/shared-log";
|
|
18
18
|
|
|
19
19
|
export abstract class AbstractFile {
|
|
20
20
|
abstract id: string;
|
|
@@ -35,6 +35,27 @@ export abstract class AbstractFile {
|
|
|
35
35
|
abstract delete(files: Files): Promise<void>;
|
|
36
36
|
}
|
|
37
37
|
|
|
38
|
+
class IndexableFile {
|
|
39
|
+
@field({ type: "string" })
|
|
40
|
+
id: string;
|
|
41
|
+
|
|
42
|
+
@field({ type: "string" })
|
|
43
|
+
name: string;
|
|
44
|
+
|
|
45
|
+
@field({ type: "u32" })
|
|
46
|
+
size: number;
|
|
47
|
+
|
|
48
|
+
@field({ type: option("string") })
|
|
49
|
+
parentId?: string;
|
|
50
|
+
|
|
51
|
+
constructor(file: AbstractFile) {
|
|
52
|
+
this.id = file.id;
|
|
53
|
+
this.name = file.name;
|
|
54
|
+
this.size = file.size;
|
|
55
|
+
this.parentId = file.parentId;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
|
|
38
59
|
const TINY_FILE_SIZE_LIMIT = 5 * 1e6; // 6mb
|
|
39
60
|
|
|
40
61
|
@variant(0) // for versioning purposes
|
|
@@ -161,6 +182,7 @@ export class LargeFile extends AbstractFile {
|
|
|
161
182
|
)
|
|
162
183
|
),
|
|
163
184
|
],
|
|
185
|
+
fetch: 0xffffffff,
|
|
164
186
|
})
|
|
165
187
|
);
|
|
166
188
|
return allFiles;
|
|
@@ -186,10 +208,7 @@ export class LargeFile extends AbstractFile {
|
|
|
186
208
|
|
|
187
209
|
properties?.progress?.(0);
|
|
188
210
|
|
|
189
|
-
console.log("LISTS CHUNKS!");
|
|
190
211
|
const allChunks = await this.fetchChunks(files);
|
|
191
|
-
console.log("RECEIVED CHUNKS: " + allChunks);
|
|
192
|
-
console.log("FETCH CHUNKS");
|
|
193
212
|
|
|
194
213
|
const fetchQueue = new PQueue({ concurrency: 10 });
|
|
195
214
|
let fetchError: Error | undefined = undefined;
|
|
@@ -254,7 +273,6 @@ export class LargeFile extends AbstractFile {
|
|
|
254
273
|
return chunkValue;
|
|
255
274
|
})
|
|
256
275
|
);
|
|
257
|
-
console.log("FETCH DONE");
|
|
258
276
|
return (
|
|
259
277
|
properties?.as == "chunks"
|
|
260
278
|
? chunkContentResolved
|
|
@@ -263,7 +281,7 @@ export class LargeFile extends AbstractFile {
|
|
|
263
281
|
}
|
|
264
282
|
}
|
|
265
283
|
|
|
266
|
-
type Args = {
|
|
284
|
+
type Args = { replicate: ReplicationOptions };
|
|
267
285
|
|
|
268
286
|
@variant("files")
|
|
269
287
|
export class Files extends Program<Args> {
|
|
@@ -277,7 +295,7 @@ export class Files extends Program<Args> {
|
|
|
277
295
|
trustGraph?: TrustedNetwork;
|
|
278
296
|
|
|
279
297
|
@field({ type: Documents })
|
|
280
|
-
files: Documents<AbstractFile>;
|
|
298
|
+
files: Documents<AbstractFile, IndexableFile>;
|
|
281
299
|
|
|
282
300
|
constructor(
|
|
283
301
|
properties: {
|
|
@@ -341,6 +359,7 @@ export class Files extends Program<Args> {
|
|
|
341
359
|
caseInsensitive: false,
|
|
342
360
|
method: StringMatchMethod.exact,
|
|
343
361
|
}),
|
|
362
|
+
fetch: 0xffffffff,
|
|
344
363
|
})
|
|
345
364
|
);
|
|
346
365
|
for (const file of files) {
|
|
@@ -352,12 +371,15 @@ export class Files extends Program<Args> {
|
|
|
352
371
|
async list() {
|
|
353
372
|
// only root files (don't fetch fetch chunks here)
|
|
354
373
|
const files = await this.files.index.search(
|
|
355
|
-
new SearchRequest({
|
|
374
|
+
new SearchRequest({
|
|
375
|
+
query: new IsNull({ key: "parentId" }),
|
|
376
|
+
fetch: 0xffffffff,
|
|
377
|
+
}),
|
|
356
378
|
{
|
|
357
379
|
local: true,
|
|
358
380
|
remote: {
|
|
359
381
|
throwOnMissing: true,
|
|
360
|
-
|
|
382
|
+
replicate: true, // sync here because this, because we might want to access it offline, even though we are not replicators
|
|
361
383
|
},
|
|
362
384
|
}
|
|
363
385
|
);
|
|
@@ -368,6 +390,7 @@ export class Files extends Program<Args> {
|
|
|
368
390
|
const files = await this.files.index.search(
|
|
369
391
|
new SearchRequest({
|
|
370
392
|
query: new StringMatch({ key: "parentId", value: parent.id }),
|
|
393
|
+
fetch: 0xffffffff,
|
|
371
394
|
}),
|
|
372
395
|
{
|
|
373
396
|
local: true,
|
|
@@ -392,6 +415,7 @@ export class Files extends Program<Args> {
|
|
|
392
415
|
const results = await this.files.index.search(
|
|
393
416
|
new SearchRequest({
|
|
394
417
|
query: [new StringMatch({ key: "id", value: id })],
|
|
418
|
+
fetch: 0xffffffff,
|
|
395
419
|
}),
|
|
396
420
|
{
|
|
397
421
|
local: true,
|
|
@@ -428,6 +452,7 @@ export class Files extends Program<Args> {
|
|
|
428
452
|
const results = await this.files.index.search(
|
|
429
453
|
new SearchRequest({
|
|
430
454
|
query: [new StringMatch({ key: "name", value: name })],
|
|
455
|
+
fetch: 0xffffffff,
|
|
431
456
|
}),
|
|
432
457
|
{
|
|
433
458
|
local: true,
|
|
@@ -452,19 +477,19 @@ export class Files extends Program<Args> {
|
|
|
452
477
|
// Setup lifecycle, will be invoked on 'open'
|
|
453
478
|
async open(args?: Args): Promise<void> {
|
|
454
479
|
await this.trustGraph?.open({
|
|
455
|
-
|
|
480
|
+
replicate: args?.replicate,
|
|
456
481
|
});
|
|
457
482
|
|
|
458
483
|
await this.files.open({
|
|
459
484
|
type: AbstractFile,
|
|
460
485
|
// TODO add ACL
|
|
461
|
-
|
|
486
|
+
replicate: args?.replicate,
|
|
462
487
|
replicas: { min: 3 },
|
|
463
|
-
canPerform: async (operation
|
|
488
|
+
canPerform: async (operation) => {
|
|
464
489
|
if (!this.trustGraph) {
|
|
465
490
|
return true;
|
|
466
491
|
}
|
|
467
|
-
for (const key of await
|
|
492
|
+
for (const key of await operation.entry.getPublicKeys()) {
|
|
468
493
|
if (await this.trustGraph.isTrusted(key)) {
|
|
469
494
|
return true;
|
|
470
495
|
}
|
|
@@ -472,14 +497,7 @@ export class Files extends Program<Args> {
|
|
|
472
497
|
return false;
|
|
473
498
|
},
|
|
474
499
|
index: {
|
|
475
|
-
|
|
476
|
-
return {
|
|
477
|
-
id: doc.id,
|
|
478
|
-
name: doc.name,
|
|
479
|
-
size: doc.size,
|
|
480
|
-
parentId: doc.parentId,
|
|
481
|
-
};
|
|
482
|
-
},
|
|
500
|
+
type: IndexableFile,
|
|
483
501
|
},
|
|
484
502
|
});
|
|
485
503
|
}
|