@peerbit/please-lib 0.0.7 → 0.0.8
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 +6 -27
- package/lib/esm/index.js +33 -81
- package/lib/esm/index.js.map +1 -1
- package/package.json +7 -7
- package/src/index.ts +54 -96
package/lib/esm/index.d.ts
CHANGED
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
import { Program } from "@peerbit/program";
|
|
2
|
-
import { Documents,
|
|
3
|
-
import { SyncFilter } from "@peerbit/shared-log";
|
|
2
|
+
import { Documents, RoleOptions } from "@peerbit/document";
|
|
4
3
|
import { PublicSignKey } from "@peerbit/crypto";
|
|
5
|
-
import { ProgramClient } from "@peerbit/program";
|
|
6
4
|
import { TrustedNetwork } from "@peerbit/trusted-network";
|
|
7
5
|
export declare abstract class AbstractFile {
|
|
8
6
|
abstract id: string;
|
|
@@ -23,6 +21,7 @@ export declare class TinyFile extends AbstractFile {
|
|
|
23
21
|
parentId?: string;
|
|
24
22
|
get size(): number;
|
|
25
23
|
constructor(properties: {
|
|
24
|
+
id?: string;
|
|
26
25
|
name: string;
|
|
27
26
|
file: Uint8Array;
|
|
28
27
|
parentId?: string;
|
|
@@ -33,26 +32,6 @@ export declare class TinyFile extends AbstractFile {
|
|
|
33
32
|
}): Promise<Output>;
|
|
34
33
|
delete(): Promise<void>;
|
|
35
34
|
}
|
|
36
|
-
export declare class SmallFile extends AbstractFile {
|
|
37
|
-
id: string;
|
|
38
|
-
name: string;
|
|
39
|
-
cid: string;
|
|
40
|
-
size: number;
|
|
41
|
-
parentId?: string;
|
|
42
|
-
constructor(properties: {
|
|
43
|
-
name: string;
|
|
44
|
-
cid: string;
|
|
45
|
-
size: number;
|
|
46
|
-
parentId?: string;
|
|
47
|
-
});
|
|
48
|
-
static create(node: ProgramClient, name: string, file: Uint8Array, parentId?: string): Promise<SmallFile>;
|
|
49
|
-
getFile<OutputType extends "chunks" | "joined" = "joined", Output = OutputType extends "chunks" ? Uint8Array[] : Uint8Array>(files: Files, properties?: {
|
|
50
|
-
as: OutputType;
|
|
51
|
-
timeout?: number;
|
|
52
|
-
progress?: (progress: number) => any;
|
|
53
|
-
}): Promise<Output>;
|
|
54
|
-
delete(files: Files): Promise<void>;
|
|
55
|
-
}
|
|
56
35
|
export declare class LargeFile extends AbstractFile {
|
|
57
36
|
id: string;
|
|
58
37
|
name: string;
|
|
@@ -64,7 +43,7 @@ export declare class LargeFile extends AbstractFile {
|
|
|
64
43
|
fileIds: string[];
|
|
65
44
|
size: number;
|
|
66
45
|
});
|
|
67
|
-
static create(name: string, file: Uint8Array, files: Files): Promise<LargeFile>;
|
|
46
|
+
static create(name: string, file: Uint8Array, files: Files, progress?: (progress: number) => void): Promise<LargeFile>;
|
|
68
47
|
get parentId(): undefined;
|
|
69
48
|
fetchChunks(files: Files): Promise<AbstractFile[]>;
|
|
70
49
|
delete(files: Files): Promise<void>;
|
|
@@ -75,8 +54,7 @@ export declare class LargeFile extends AbstractFile {
|
|
|
75
54
|
}): Promise<Output>;
|
|
76
55
|
}
|
|
77
56
|
type Args = {
|
|
78
|
-
role:
|
|
79
|
-
sync?: SyncFilter | undefined;
|
|
57
|
+
role: RoleOptions;
|
|
80
58
|
};
|
|
81
59
|
export declare class Files extends Program<Args> {
|
|
82
60
|
id: Uint8Array;
|
|
@@ -88,10 +66,11 @@ export declare class Files extends Program<Args> {
|
|
|
88
66
|
name?: string;
|
|
89
67
|
rootKey?: PublicSignKey;
|
|
90
68
|
});
|
|
91
|
-
add(name: string, file: Uint8Array, parentId?: string): Promise<string>;
|
|
69
|
+
add(name: string, file: Uint8Array, parentId?: string, progress?: (progress: number) => void): Promise<string>;
|
|
92
70
|
removeById(id: string): Promise<void>;
|
|
93
71
|
removeByName(name: string): Promise<void>;
|
|
94
72
|
list(): Promise<AbstractFile[]>;
|
|
73
|
+
listLocalChunks(parent: LargeFile): Promise<AbstractFile[]>;
|
|
95
74
|
/**
|
|
96
75
|
* Get by name
|
|
97
76
|
* @param id
|
package/lib/esm/index.js
CHANGED
|
@@ -7,10 +7,10 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
7
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
|
-
var
|
|
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, } from "@peerbit/document";
|
|
13
|
+
import { Documents, SearchRequest, StringMatch, StringMatchMethod, Or, MissingField, } 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,7 +18,7 @@ import { TrustedNetwork } from "@peerbit/trusted-network";
|
|
|
18
18
|
import PQueue from "p-queue";
|
|
19
19
|
export class AbstractFile {
|
|
20
20
|
}
|
|
21
|
-
const TINY_FILE_SIZE_LIMIT =
|
|
21
|
+
const TINY_FILE_SIZE_LIMIT = 5 * 1e6; // 6mb
|
|
22
22
|
let TinyFile = class TinyFile extends AbstractFile {
|
|
23
23
|
id;
|
|
24
24
|
name;
|
|
@@ -29,7 +29,7 @@ let TinyFile = class TinyFile extends AbstractFile {
|
|
|
29
29
|
}
|
|
30
30
|
constructor(properties) {
|
|
31
31
|
super();
|
|
32
|
-
this.id = sha256Base64Sync(properties.file);
|
|
32
|
+
this.id = properties.id || sha256Base64Sync(properties.file);
|
|
33
33
|
this.name = properties.name;
|
|
34
34
|
this.file = properties.file;
|
|
35
35
|
this.parentId = properties.parentId;
|
|
@@ -67,68 +67,6 @@ TinyFile = __decorate([
|
|
|
67
67
|
__metadata("design:paramtypes", [Object])
|
|
68
68
|
], TinyFile);
|
|
69
69
|
export { TinyFile };
|
|
70
|
-
const SMALL_FILE_SIZE_LIMIT = 1e6 * 9;
|
|
71
|
-
// TODO Do we really need this if we have TinyFile and LargeFile?
|
|
72
|
-
let SmallFile = SmallFile_1 = class SmallFile extends AbstractFile {
|
|
73
|
-
id; // cid
|
|
74
|
-
name;
|
|
75
|
-
cid; // store file separately in a block store, like IPFS
|
|
76
|
-
size;
|
|
77
|
-
parentId;
|
|
78
|
-
constructor(properties) {
|
|
79
|
-
super();
|
|
80
|
-
this.id = properties.cid;
|
|
81
|
-
this.name = properties.name;
|
|
82
|
-
this.cid = properties.cid;
|
|
83
|
-
this.size = properties.size;
|
|
84
|
-
this.parentId = properties.parentId;
|
|
85
|
-
}
|
|
86
|
-
static async create(node, name, file, parentId) {
|
|
87
|
-
if (file.length > SMALL_FILE_SIZE_LIMIT) {
|
|
88
|
-
throw new Error("To large file for SmallFile");
|
|
89
|
-
}
|
|
90
|
-
const cid = await node.services.blocks.put(file);
|
|
91
|
-
return new SmallFile_1({ name, cid, size: file.byteLength, parentId });
|
|
92
|
-
}
|
|
93
|
-
async getFile(files, properties) {
|
|
94
|
-
properties?.progress?.(0);
|
|
95
|
-
// Load the file from the block store
|
|
96
|
-
const block = await files.node.services.blocks.get(this.id, {
|
|
97
|
-
timeout: properties?.timeout,
|
|
98
|
-
});
|
|
99
|
-
properties?.progress?.(1);
|
|
100
|
-
return (properties?.as == "chunks" ? [block] : block);
|
|
101
|
-
}
|
|
102
|
-
async delete(files) {
|
|
103
|
-
return await files.node.services.blocks.rm(this.id);
|
|
104
|
-
}
|
|
105
|
-
};
|
|
106
|
-
__decorate([
|
|
107
|
-
field({ type: "string" }),
|
|
108
|
-
__metadata("design:type", String)
|
|
109
|
-
], SmallFile.prototype, "id", void 0);
|
|
110
|
-
__decorate([
|
|
111
|
-
field({ type: "string" }),
|
|
112
|
-
__metadata("design:type", String)
|
|
113
|
-
], SmallFile.prototype, "name", void 0);
|
|
114
|
-
__decorate([
|
|
115
|
-
field({ type: "string" }),
|
|
116
|
-
__metadata("design:type", String)
|
|
117
|
-
], SmallFile.prototype, "cid", void 0);
|
|
118
|
-
__decorate([
|
|
119
|
-
field({ type: "u32" }),
|
|
120
|
-
__metadata("design:type", Number)
|
|
121
|
-
], SmallFile.prototype, "size", void 0);
|
|
122
|
-
__decorate([
|
|
123
|
-
field({ type: option("string") }),
|
|
124
|
-
__metadata("design:type", String)
|
|
125
|
-
], SmallFile.prototype, "parentId", void 0);
|
|
126
|
-
SmallFile = SmallFile_1 = __decorate([
|
|
127
|
-
variant(1) // for versioning purposes
|
|
128
|
-
,
|
|
129
|
-
__metadata("design:paramtypes", [Object])
|
|
130
|
-
], SmallFile);
|
|
131
|
-
export { SmallFile };
|
|
132
70
|
let LargeFile = LargeFile_1 = class LargeFile extends AbstractFile {
|
|
133
71
|
id; // hash
|
|
134
72
|
name;
|
|
@@ -141,15 +79,19 @@ let LargeFile = LargeFile_1 = class LargeFile extends AbstractFile {
|
|
|
141
79
|
this.fileIds = properties.fileIds;
|
|
142
80
|
this.size = properties.size;
|
|
143
81
|
}
|
|
144
|
-
static async create(name, file, files) {
|
|
145
|
-
const segmetSize =
|
|
82
|
+
static async create(name, file, files, progress) {
|
|
83
|
+
const segmetSize = TINY_FILE_SIZE_LIMIT / 10; // 10% of the small size limit
|
|
146
84
|
const fileIds = [];
|
|
147
85
|
const id = sha256Base64Sync(file);
|
|
148
86
|
const fileSize = file.byteLength;
|
|
149
|
-
|
|
87
|
+
progress?.(0);
|
|
88
|
+
const end = Math.ceil(file.byteLength / segmetSize);
|
|
89
|
+
for (let i = 0; i < end; i++) {
|
|
90
|
+
progress?.((i + 1) / end);
|
|
150
91
|
fileIds.push(await files.add(name + "/" + i, file.subarray(i * segmetSize, Math.min((i + 1) * segmetSize, file.byteLength)), id));
|
|
151
92
|
}
|
|
152
|
-
|
|
93
|
+
progress?.(1);
|
|
94
|
+
return new LargeFile_1({ id, name, fileIds: fileIds, size: fileSize });
|
|
153
95
|
}
|
|
154
96
|
get parentId() {
|
|
155
97
|
// Large file can never have a parent
|
|
@@ -172,7 +114,7 @@ let LargeFile = LargeFile_1 = class LargeFile extends AbstractFile {
|
|
|
172
114
|
properties?.progress?.(0);
|
|
173
115
|
console.log("LISTS CHUNKS!");
|
|
174
116
|
const allChunks = await this.fetchChunks(files);
|
|
175
|
-
console.log("RECEIVED CHUNKS: " + allChunks
|
|
117
|
+
console.log("RECEIVED CHUNKS: " + allChunks);
|
|
176
118
|
console.log("FETCH CHUNKS");
|
|
177
119
|
const fetchQueue = new PQueue({ concurrency: 10 });
|
|
178
120
|
let fetchError = undefined;
|
|
@@ -253,7 +195,7 @@ __decorate([
|
|
|
253
195
|
__metadata("design:type", Number)
|
|
254
196
|
], LargeFile.prototype, "size", void 0);
|
|
255
197
|
LargeFile = LargeFile_1 = __decorate([
|
|
256
|
-
variant(
|
|
198
|
+
variant(1) // for versioning purposes
|
|
257
199
|
,
|
|
258
200
|
__metadata("design:paramtypes", [Object])
|
|
259
201
|
], LargeFile);
|
|
@@ -278,22 +220,20 @@ let Files = class Files extends Program {
|
|
|
278
220
|
])),
|
|
279
221
|
});
|
|
280
222
|
}
|
|
281
|
-
async add(name, file, parentId) {
|
|
223
|
+
async add(name, file, parentId, progress) {
|
|
282
224
|
let toPut;
|
|
225
|
+
progress?.(0);
|
|
283
226
|
if (file.byteLength <= TINY_FILE_SIZE_LIMIT) {
|
|
284
227
|
toPut = new TinyFile({ name, file, parentId });
|
|
285
228
|
}
|
|
286
|
-
else if (file.byteLength > TINY_FILE_SIZE_LIMIT &&
|
|
287
|
-
file.byteLength <= SMALL_FILE_SIZE_LIMIT) {
|
|
288
|
-
toPut = await SmallFile.create(this.node, name, file, parentId);
|
|
289
|
-
}
|
|
290
229
|
else {
|
|
291
230
|
if (parentId) {
|
|
292
231
|
throw new Error("Unexpected that a LargeFile to have a parent");
|
|
293
232
|
}
|
|
294
|
-
toPut = await LargeFile.create(name, file, this);
|
|
233
|
+
toPut = await LargeFile.create(name, file, this, progress);
|
|
295
234
|
}
|
|
296
235
|
await this.files.put(toPut);
|
|
236
|
+
progress?.(1);
|
|
297
237
|
return toPut.id;
|
|
298
238
|
}
|
|
299
239
|
async removeById(id) {
|
|
@@ -318,9 +258,22 @@ let Files = class Files extends Program {
|
|
|
318
258
|
}
|
|
319
259
|
}
|
|
320
260
|
async list() {
|
|
321
|
-
|
|
261
|
+
// only root files (don't fetch fetch chunks here)
|
|
262
|
+
const files = await this.files.index.search(new SearchRequest({ query: new MissingField({ key: "parentId" }) }), {
|
|
263
|
+
local: true,
|
|
264
|
+
remote: {
|
|
265
|
+
throwOnMissing: true,
|
|
266
|
+
sync: true, // sync here because this, because we might want to access it offline, even though we are not replicators
|
|
267
|
+
},
|
|
268
|
+
});
|
|
269
|
+
return files;
|
|
270
|
+
}
|
|
271
|
+
async listLocalChunks(parent) {
|
|
272
|
+
const files = await this.files.index.search(new SearchRequest({
|
|
273
|
+
query: new StringMatch({ key: "parentId", value: parent.id }),
|
|
274
|
+
}), {
|
|
322
275
|
local: true,
|
|
323
|
-
remote:
|
|
276
|
+
remote: false,
|
|
324
277
|
});
|
|
325
278
|
return files;
|
|
326
279
|
}
|
|
@@ -383,7 +336,6 @@ let Files = class Files extends Program {
|
|
|
383
336
|
type: AbstractFile,
|
|
384
337
|
// TODO add ACL
|
|
385
338
|
role: args?.role,
|
|
386
|
-
sync: args?.sync,
|
|
387
339
|
replicas: { min: 3 },
|
|
388
340
|
canPerform: async (operation, context) => {
|
|
389
341
|
if (!this.trustGraph) {
|
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.8",
|
|
4
4
|
"author": "dao.xyz",
|
|
5
5
|
"repository": "https://github.com/@dao-xyz/peerbit-examples",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -34,14 +34,14 @@
|
|
|
34
34
|
"test:integration": "node ../../../node_modules/.bin/jest test -c ../../../jest.config.integration.ts --runInBand --forceExit"
|
|
35
35
|
},
|
|
36
36
|
"devDependencies": {
|
|
37
|
-
"@peerbit/test-utils": "^
|
|
38
|
-
"typescript": "^5.
|
|
37
|
+
"@peerbit/test-utils": "^2",
|
|
38
|
+
"typescript": "^5.3.3"
|
|
39
39
|
},
|
|
40
40
|
"dependencies": {
|
|
41
|
-
"@peerbit/document": "^
|
|
42
|
-
"@peerbit/trusted-network": "^
|
|
43
|
-
"peerbit": "^
|
|
41
|
+
"@peerbit/document": "^6",
|
|
42
|
+
"@peerbit/trusted-network": "^3",
|
|
43
|
+
"peerbit": "^4",
|
|
44
44
|
"uuid": "^9.0.0"
|
|
45
45
|
},
|
|
46
|
-
"gitHead": "
|
|
46
|
+
"gitHead": "158537c6f6818e35e766329a6b4a5ccf7ae57ea0"
|
|
47
47
|
}
|
package/src/index.ts
CHANGED
|
@@ -4,11 +4,11 @@ import {
|
|
|
4
4
|
Documents,
|
|
5
5
|
SearchRequest,
|
|
6
6
|
StringMatch,
|
|
7
|
-
Role,
|
|
8
7
|
StringMatchMethod,
|
|
9
8
|
Or,
|
|
9
|
+
RoleOptions,
|
|
10
|
+
MissingField,
|
|
10
11
|
} from "@peerbit/document";
|
|
11
|
-
import { SyncFilter } from "@peerbit/shared-log";
|
|
12
12
|
import { PublicSignKey, sha256Base64Sync, randomBytes } from "@peerbit/crypto";
|
|
13
13
|
import { ProgramClient } from "@peerbit/program";
|
|
14
14
|
import { concat } from "uint8arrays";
|
|
@@ -35,7 +35,7 @@ export abstract class AbstractFile {
|
|
|
35
35
|
abstract delete(files: Files): Promise<void>;
|
|
36
36
|
}
|
|
37
37
|
|
|
38
|
-
const TINY_FILE_SIZE_LIMIT =
|
|
38
|
+
const TINY_FILE_SIZE_LIMIT = 5 * 1e6; // 6mb
|
|
39
39
|
|
|
40
40
|
@variant(0) // for versioning purposes
|
|
41
41
|
export class TinyFile extends AbstractFile {
|
|
@@ -56,12 +56,13 @@ export class TinyFile extends AbstractFile {
|
|
|
56
56
|
}
|
|
57
57
|
|
|
58
58
|
constructor(properties: {
|
|
59
|
+
id?: string;
|
|
59
60
|
name: string;
|
|
60
61
|
file: Uint8Array;
|
|
61
62
|
parentId?: string;
|
|
62
63
|
}) {
|
|
63
64
|
super();
|
|
64
|
-
this.id = sha256Base64Sync(properties.file);
|
|
65
|
+
this.id = properties.id || sha256Base64Sync(properties.file);
|
|
65
66
|
this.name = properties.name;
|
|
66
67
|
this.file = properties.file;
|
|
67
68
|
this.parentId = properties.parentId;
|
|
@@ -88,80 +89,7 @@ export class TinyFile extends AbstractFile {
|
|
|
88
89
|
}
|
|
89
90
|
}
|
|
90
91
|
|
|
91
|
-
const SMALL_FILE_SIZE_LIMIT = 1e6 * 9;
|
|
92
|
-
|
|
93
|
-
// TODO Do we really need this if we have TinyFile and LargeFile?
|
|
94
92
|
@variant(1) // for versioning purposes
|
|
95
|
-
export class SmallFile extends AbstractFile {
|
|
96
|
-
@field({ type: "string" })
|
|
97
|
-
id: string; // cid
|
|
98
|
-
|
|
99
|
-
@field({ type: "string" })
|
|
100
|
-
name: string;
|
|
101
|
-
|
|
102
|
-
@field({ type: "string" })
|
|
103
|
-
cid: string; // store file separately in a block store, like IPFS
|
|
104
|
-
|
|
105
|
-
@field({ type: "u32" })
|
|
106
|
-
size: number;
|
|
107
|
-
|
|
108
|
-
@field({ type: option("string") })
|
|
109
|
-
parentId?: string;
|
|
110
|
-
|
|
111
|
-
constructor(properties: {
|
|
112
|
-
name: string;
|
|
113
|
-
cid: string;
|
|
114
|
-
size: number;
|
|
115
|
-
parentId?: string;
|
|
116
|
-
}) {
|
|
117
|
-
super();
|
|
118
|
-
this.id = properties.cid;
|
|
119
|
-
this.name = properties.name;
|
|
120
|
-
this.cid = properties.cid;
|
|
121
|
-
this.size = properties.size;
|
|
122
|
-
this.parentId = properties.parentId;
|
|
123
|
-
}
|
|
124
|
-
|
|
125
|
-
static async create(
|
|
126
|
-
node: ProgramClient,
|
|
127
|
-
name: string,
|
|
128
|
-
file: Uint8Array,
|
|
129
|
-
parentId?: string
|
|
130
|
-
) {
|
|
131
|
-
if (file.length > SMALL_FILE_SIZE_LIMIT) {
|
|
132
|
-
throw new Error("To large file for SmallFile");
|
|
133
|
-
}
|
|
134
|
-
const cid = await node.services.blocks.put(file);
|
|
135
|
-
return new SmallFile({ name, cid, size: file.byteLength, parentId });
|
|
136
|
-
}
|
|
137
|
-
|
|
138
|
-
async getFile<
|
|
139
|
-
OutputType extends "chunks" | "joined" = "joined",
|
|
140
|
-
Output = OutputType extends "chunks" ? Uint8Array[] : Uint8Array
|
|
141
|
-
>(
|
|
142
|
-
files: Files,
|
|
143
|
-
properties?: {
|
|
144
|
-
as: OutputType;
|
|
145
|
-
timeout?: number;
|
|
146
|
-
progress?: (progress: number) => any;
|
|
147
|
-
}
|
|
148
|
-
): Promise<Output> {
|
|
149
|
-
properties?.progress?.(0);
|
|
150
|
-
|
|
151
|
-
// Load the file from the block store
|
|
152
|
-
const block = await files.node.services.blocks.get(this.id, {
|
|
153
|
-
timeout: properties?.timeout,
|
|
154
|
-
});
|
|
155
|
-
properties?.progress?.(1);
|
|
156
|
-
return (properties?.as == "chunks" ? [block] : block) as Output;
|
|
157
|
-
}
|
|
158
|
-
|
|
159
|
-
async delete(files: Files): Promise<void> {
|
|
160
|
-
return await files.node.services.blocks.rm(this.id);
|
|
161
|
-
}
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
@variant(2) // for versioning purposes
|
|
165
93
|
export class LargeFile extends AbstractFile {
|
|
166
94
|
@field({ type: "string" })
|
|
167
95
|
id: string; // hash
|
|
@@ -188,12 +116,20 @@ export class LargeFile extends AbstractFile {
|
|
|
188
116
|
this.size = properties.size;
|
|
189
117
|
}
|
|
190
118
|
|
|
191
|
-
static async create(
|
|
192
|
-
|
|
119
|
+
static async create(
|
|
120
|
+
name: string,
|
|
121
|
+
file: Uint8Array,
|
|
122
|
+
files: Files,
|
|
123
|
+
progress?: (progress: number) => void
|
|
124
|
+
) {
|
|
125
|
+
const segmetSize = TINY_FILE_SIZE_LIMIT / 10; // 10% of the small size limit
|
|
193
126
|
const fileIds: string[] = [];
|
|
194
127
|
const id = sha256Base64Sync(file);
|
|
195
128
|
const fileSize = file.byteLength;
|
|
196
|
-
|
|
129
|
+
progress?.(0);
|
|
130
|
+
const end = Math.ceil(file.byteLength / segmetSize);
|
|
131
|
+
for (let i = 0; i < end; i++) {
|
|
132
|
+
progress?.((i + 1) / end);
|
|
197
133
|
fileIds.push(
|
|
198
134
|
await files.add(
|
|
199
135
|
name + "/" + i,
|
|
@@ -205,8 +141,8 @@ export class LargeFile extends AbstractFile {
|
|
|
205
141
|
)
|
|
206
142
|
);
|
|
207
143
|
}
|
|
208
|
-
|
|
209
|
-
return new LargeFile({ id, name, fileIds, size: fileSize });
|
|
144
|
+
progress?.(1);
|
|
145
|
+
return new LargeFile({ id, name, fileIds: fileIds, size: fileSize });
|
|
210
146
|
}
|
|
211
147
|
|
|
212
148
|
get parentId() {
|
|
@@ -252,7 +188,7 @@ export class LargeFile extends AbstractFile {
|
|
|
252
188
|
|
|
253
189
|
console.log("LISTS CHUNKS!");
|
|
254
190
|
const allChunks = await this.fetchChunks(files);
|
|
255
|
-
console.log("RECEIVED CHUNKS: " + allChunks
|
|
191
|
+
console.log("RECEIVED CHUNKS: " + allChunks);
|
|
256
192
|
console.log("FETCH CHUNKS");
|
|
257
193
|
|
|
258
194
|
const fetchQueue = new PQueue({ concurrency: 10 });
|
|
@@ -327,7 +263,7 @@ export class LargeFile extends AbstractFile {
|
|
|
327
263
|
}
|
|
328
264
|
}
|
|
329
265
|
|
|
330
|
-
type Args = { role:
|
|
266
|
+
type Args = { role: RoleOptions };
|
|
331
267
|
|
|
332
268
|
@variant("files")
|
|
333
269
|
export class Files extends Program<Args> {
|
|
@@ -367,22 +303,24 @@ export class Files extends Program<Args> {
|
|
|
367
303
|
});
|
|
368
304
|
}
|
|
369
305
|
|
|
370
|
-
async add(
|
|
306
|
+
async add(
|
|
307
|
+
name: string,
|
|
308
|
+
file: Uint8Array,
|
|
309
|
+
parentId?: string,
|
|
310
|
+
progress?: (progress: number) => void
|
|
311
|
+
) {
|
|
371
312
|
let toPut: AbstractFile;
|
|
313
|
+
progress?.(0);
|
|
372
314
|
if (file.byteLength <= TINY_FILE_SIZE_LIMIT) {
|
|
373
315
|
toPut = new TinyFile({ name, file, parentId });
|
|
374
|
-
} else if (
|
|
375
|
-
file.byteLength > TINY_FILE_SIZE_LIMIT &&
|
|
376
|
-
file.byteLength <= SMALL_FILE_SIZE_LIMIT
|
|
377
|
-
) {
|
|
378
|
-
toPut = await SmallFile.create(this.node, name, file, parentId);
|
|
379
316
|
} else {
|
|
380
317
|
if (parentId) {
|
|
381
318
|
throw new Error("Unexpected that a LargeFile to have a parent");
|
|
382
319
|
}
|
|
383
|
-
toPut = await LargeFile.create(name, file, this);
|
|
320
|
+
toPut = await LargeFile.create(name, file, this, progress);
|
|
384
321
|
}
|
|
385
322
|
await this.files.put(toPut);
|
|
323
|
+
progress?.(1);
|
|
386
324
|
return toPut.id;
|
|
387
325
|
}
|
|
388
326
|
|
|
@@ -412,12 +350,33 @@ export class Files extends Program<Args> {
|
|
|
412
350
|
}
|
|
413
351
|
|
|
414
352
|
async list() {
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
353
|
+
// only root files (don't fetch fetch chunks here)
|
|
354
|
+
const files = await this.files.index.search(
|
|
355
|
+
new SearchRequest({ query: new MissingField({ key: "parentId" }) }),
|
|
356
|
+
{
|
|
357
|
+
local: true,
|
|
358
|
+
remote: {
|
|
359
|
+
throwOnMissing: true,
|
|
360
|
+
sync: true, // sync here because this, because we might want to access it offline, even though we are not replicators
|
|
361
|
+
},
|
|
362
|
+
}
|
|
363
|
+
);
|
|
364
|
+
return files;
|
|
365
|
+
}
|
|
366
|
+
|
|
367
|
+
async listLocalChunks(parent: LargeFile) {
|
|
368
|
+
const files = await this.files.index.search(
|
|
369
|
+
new SearchRequest({
|
|
370
|
+
query: new StringMatch({ key: "parentId", value: parent.id }),
|
|
371
|
+
}),
|
|
372
|
+
{
|
|
373
|
+
local: true,
|
|
374
|
+
remote: false,
|
|
375
|
+
}
|
|
376
|
+
);
|
|
419
377
|
return files;
|
|
420
378
|
}
|
|
379
|
+
|
|
421
380
|
/**
|
|
422
381
|
* Get by name
|
|
423
382
|
* @param id
|
|
@@ -500,7 +459,6 @@ export class Files extends Program<Args> {
|
|
|
500
459
|
type: AbstractFile,
|
|
501
460
|
// TODO add ACL
|
|
502
461
|
role: args?.role,
|
|
503
|
-
sync: args?.sync,
|
|
504
462
|
replicas: { min: 3 },
|
|
505
463
|
canPerform: async (operation, context) => {
|
|
506
464
|
if (!this.trustGraph) {
|