@peerbit/any-store 1.0.1

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.
@@ -0,0 +1,325 @@
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 { field, variant, vec, option } from "@dao-xyz/borsh";
11
+ import { v4 as uuid } from "uuid";
12
+ export const levelKey = (level) => JSON.stringify(level);
13
+ let MemoryRequest = class MemoryRequest {
14
+ messageId;
15
+ constructor(messageId) {
16
+ this.messageId = messageId || uuid();
17
+ }
18
+ };
19
+ __decorate([
20
+ field({ type: "string" }),
21
+ __metadata("design:type", String)
22
+ ], MemoryRequest.prototype, "messageId", void 0);
23
+ MemoryRequest = __decorate([
24
+ variant(0),
25
+ __metadata("design:paramtypes", [Uint8Array])
26
+ ], MemoryRequest);
27
+ export { MemoryRequest };
28
+ let MemoryMessage = class MemoryMessage extends MemoryRequest {
29
+ level; // [] means root, ['x'] means sublevel named 'x'
30
+ constructor(properties) {
31
+ super();
32
+ this.level = properties.level;
33
+ }
34
+ };
35
+ __decorate([
36
+ field({ type: vec("string") }),
37
+ __metadata("design:type", Array)
38
+ ], MemoryMessage.prototype, "level", void 0);
39
+ MemoryMessage = __decorate([
40
+ variant(0),
41
+ __metadata("design:paramtypes", [Object])
42
+ ], MemoryMessage);
43
+ export { MemoryMessage };
44
+ let REQ_Status = class REQ_Status extends MemoryMessage {
45
+ };
46
+ REQ_Status = __decorate([
47
+ variant(0)
48
+ ], REQ_Status);
49
+ export { REQ_Status };
50
+ let RESP_Status = class RESP_Status extends MemoryMessage {
51
+ status;
52
+ constructor(properties) {
53
+ super(properties);
54
+ this.status = properties.status;
55
+ }
56
+ };
57
+ __decorate([
58
+ field({ type: "string" }),
59
+ __metadata("design:type", String)
60
+ ], RESP_Status.prototype, "status", void 0);
61
+ RESP_Status = __decorate([
62
+ variant(1),
63
+ __metadata("design:paramtypes", [Object])
64
+ ], RESP_Status);
65
+ export { RESP_Status };
66
+ let REQ_Open = class REQ_Open extends MemoryMessage {
67
+ };
68
+ REQ_Open = __decorate([
69
+ variant(2)
70
+ ], REQ_Open);
71
+ export { REQ_Open };
72
+ let RESP_Open = class RESP_Open extends MemoryMessage {
73
+ };
74
+ RESP_Open = __decorate([
75
+ variant(3)
76
+ ], RESP_Open);
77
+ export { RESP_Open };
78
+ let REQ_Close = class REQ_Close extends MemoryMessage {
79
+ };
80
+ REQ_Close = __decorate([
81
+ variant(4)
82
+ ], REQ_Close);
83
+ export { REQ_Close };
84
+ let RESP_Close = class RESP_Close extends MemoryMessage {
85
+ };
86
+ RESP_Close = __decorate([
87
+ variant(5)
88
+ ], RESP_Close);
89
+ export { RESP_Close };
90
+ let REQ_Get = class REQ_Get extends MemoryMessage {
91
+ key;
92
+ constructor(properties) {
93
+ super(properties);
94
+ this.key = properties.key;
95
+ }
96
+ };
97
+ __decorate([
98
+ field({ type: "string" }),
99
+ __metadata("design:type", String)
100
+ ], REQ_Get.prototype, "key", void 0);
101
+ REQ_Get = __decorate([
102
+ variant(6),
103
+ __metadata("design:paramtypes", [Object])
104
+ ], REQ_Get);
105
+ export { REQ_Get };
106
+ let RESP_Get = class RESP_Get extends MemoryMessage {
107
+ bytes;
108
+ constructor(properties) {
109
+ super(properties);
110
+ this.bytes = properties.bytes;
111
+ }
112
+ };
113
+ __decorate([
114
+ field({ type: option(Uint8Array) }),
115
+ __metadata("design:type", Uint8Array)
116
+ ], RESP_Get.prototype, "bytes", void 0);
117
+ RESP_Get = __decorate([
118
+ variant(7),
119
+ __metadata("design:paramtypes", [Object])
120
+ ], RESP_Get);
121
+ export { RESP_Get };
122
+ let REQ_Put = class REQ_Put extends MemoryMessage {
123
+ key;
124
+ bytes;
125
+ constructor(properties) {
126
+ super(properties);
127
+ this.key = properties.key;
128
+ this.bytes = properties.bytes;
129
+ }
130
+ };
131
+ __decorate([
132
+ field({ type: "string" }),
133
+ __metadata("design:type", String)
134
+ ], REQ_Put.prototype, "key", void 0);
135
+ __decorate([
136
+ field({ type: Uint8Array }),
137
+ __metadata("design:type", Uint8Array)
138
+ ], REQ_Put.prototype, "bytes", void 0);
139
+ REQ_Put = __decorate([
140
+ variant(8),
141
+ __metadata("design:paramtypes", [Object])
142
+ ], REQ_Put);
143
+ export { REQ_Put };
144
+ let RESP_Put = class RESP_Put extends MemoryMessage {
145
+ };
146
+ RESP_Put = __decorate([
147
+ variant(9)
148
+ ], RESP_Put);
149
+ export { RESP_Put };
150
+ let REQ_Del = class REQ_Del extends MemoryMessage {
151
+ key;
152
+ constructor(properties) {
153
+ super(properties);
154
+ this.key = properties.key;
155
+ }
156
+ };
157
+ __decorate([
158
+ field({ type: "string" }),
159
+ __metadata("design:type", String)
160
+ ], REQ_Del.prototype, "key", void 0);
161
+ REQ_Del = __decorate([
162
+ variant(10),
163
+ __metadata("design:paramtypes", [Object])
164
+ ], REQ_Del);
165
+ export { REQ_Del };
166
+ let RESP_Del = class RESP_Del extends MemoryMessage {
167
+ };
168
+ RESP_Del = __decorate([
169
+ variant(11)
170
+ ], RESP_Del);
171
+ export { RESP_Del };
172
+ let REQ_Iterator_Next = class REQ_Iterator_Next extends MemoryMessage {
173
+ id;
174
+ step;
175
+ constructor(properties) {
176
+ super(properties);
177
+ this.id = properties.id;
178
+ this.step = 1;
179
+ }
180
+ };
181
+ __decorate([
182
+ field({ type: "string" }),
183
+ __metadata("design:type", String)
184
+ ], REQ_Iterator_Next.prototype, "id", void 0);
185
+ __decorate([
186
+ field({ type: "u32" }),
187
+ __metadata("design:type", Number)
188
+ ], REQ_Iterator_Next.prototype, "step", void 0);
189
+ REQ_Iterator_Next = __decorate([
190
+ variant(12),
191
+ __metadata("design:paramtypes", [Object])
192
+ ], REQ_Iterator_Next);
193
+ export { REQ_Iterator_Next };
194
+ let RESP_Iterator_Next = class RESP_Iterator_Next extends MemoryMessage {
195
+ keys;
196
+ values;
197
+ constructor(properties) {
198
+ super(properties);
199
+ this.keys = properties.keys;
200
+ this.values = properties.values;
201
+ }
202
+ };
203
+ __decorate([
204
+ field({ type: vec("string") }),
205
+ __metadata("design:type", Array)
206
+ ], RESP_Iterator_Next.prototype, "keys", void 0);
207
+ __decorate([
208
+ field({ type: vec(Uint8Array) }),
209
+ __metadata("design:type", Array)
210
+ ], RESP_Iterator_Next.prototype, "values", void 0);
211
+ RESP_Iterator_Next = __decorate([
212
+ variant(13),
213
+ __metadata("design:paramtypes", [Object])
214
+ ], RESP_Iterator_Next);
215
+ export { RESP_Iterator_Next };
216
+ let REQ_Iterator_Stop = class REQ_Iterator_Stop extends MemoryMessage {
217
+ id;
218
+ constructor(properties) {
219
+ super(properties);
220
+ this.id = properties.id;
221
+ }
222
+ };
223
+ __decorate([
224
+ field({ type: "string" }),
225
+ __metadata("design:type", String)
226
+ ], REQ_Iterator_Stop.prototype, "id", void 0);
227
+ REQ_Iterator_Stop = __decorate([
228
+ variant(14),
229
+ __metadata("design:paramtypes", [Object])
230
+ ], REQ_Iterator_Stop);
231
+ export { REQ_Iterator_Stop };
232
+ let RESP_Iterator_Stop = class RESP_Iterator_Stop extends MemoryMessage {
233
+ };
234
+ RESP_Iterator_Stop = __decorate([
235
+ variant(15)
236
+ ], RESP_Iterator_Stop);
237
+ export { RESP_Iterator_Stop };
238
+ let REQ_Sublevel = class REQ_Sublevel extends MemoryMessage {
239
+ name;
240
+ constructor(properties) {
241
+ super(properties);
242
+ this.name = properties.name;
243
+ }
244
+ };
245
+ __decorate([
246
+ field({ type: "string" }),
247
+ __metadata("design:type", String)
248
+ ], REQ_Sublevel.prototype, "name", void 0);
249
+ REQ_Sublevel = __decorate([
250
+ variant(16),
251
+ __metadata("design:paramtypes", [Object])
252
+ ], REQ_Sublevel);
253
+ export { REQ_Sublevel };
254
+ let RESP_Sublevel = class RESP_Sublevel extends MemoryMessage {
255
+ };
256
+ RESP_Sublevel = __decorate([
257
+ variant(17)
258
+ ], RESP_Sublevel);
259
+ export { RESP_Sublevel };
260
+ let REQ_Clear = class REQ_Clear extends MemoryMessage {
261
+ };
262
+ REQ_Clear = __decorate([
263
+ variant(18)
264
+ ], REQ_Clear);
265
+ export { REQ_Clear };
266
+ let RESP_Clear = class RESP_Clear extends MemoryMessage {
267
+ };
268
+ RESP_Clear = __decorate([
269
+ variant(19)
270
+ ], RESP_Clear);
271
+ export { RESP_Clear };
272
+ let REQ_Idle = class REQ_Idle extends MemoryMessage {
273
+ };
274
+ REQ_Idle = __decorate([
275
+ variant(20)
276
+ ], REQ_Idle);
277
+ export { REQ_Idle };
278
+ let RESP_Idle = class RESP_Idle extends MemoryMessage {
279
+ };
280
+ RESP_Idle = __decorate([
281
+ variant(21)
282
+ ], RESP_Idle);
283
+ export { RESP_Idle };
284
+ let REQ_Size = class REQ_Size extends MemoryMessage {
285
+ };
286
+ REQ_Size = __decorate([
287
+ variant(22)
288
+ ], REQ_Size);
289
+ export { REQ_Size };
290
+ let RESP_Size = class RESP_Size extends MemoryMessage {
291
+ _size;
292
+ constructor(properties) {
293
+ super(properties);
294
+ this._size = BigInt(properties.size);
295
+ }
296
+ get size() {
297
+ return Number(this._size);
298
+ }
299
+ };
300
+ __decorate([
301
+ field({ type: "u64" }),
302
+ __metadata("design:type", BigInt)
303
+ ], RESP_Size.prototype, "_size", void 0);
304
+ RESP_Size = __decorate([
305
+ variant(23),
306
+ __metadata("design:paramtypes", [Object])
307
+ ], RESP_Size);
308
+ export { RESP_Size };
309
+ let RESP_Error = class RESP_Error extends MemoryMessage {
310
+ error;
311
+ constructor(properties) {
312
+ super(properties);
313
+ this.error = properties.error;
314
+ }
315
+ };
316
+ __decorate([
317
+ field({ type: "string" }),
318
+ __metadata("design:type", String)
319
+ ], RESP_Error.prototype, "error", void 0);
320
+ RESP_Error = __decorate([
321
+ variant(24),
322
+ __metadata("design:paramtypes", [Object])
323
+ ], RESP_Error);
324
+ export { RESP_Error };
325
+ //# sourceMappingURL=opfs-worker-messages.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"opfs-worker-messages.js","sourceRoot":"","sources":["../../src/opfs-worker-messages.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import * as memory from "./opfs-worker-messages.js";
2
+ export declare class OPFSStoreWorker {
3
+ level: string[];
4
+ private _levels;
5
+ private _rootStore;
6
+ private _memoryIterator;
7
+ constructor();
8
+ respond(request: memory.MemoryRequest, response: memory.MemoryRequest, postMessageFn?: typeof postMessage): Promise<void>;
9
+ }
@@ -0,0 +1,183 @@
1
+ import { deserialize, serialize } from "@dao-xyz/borsh";
2
+ import * as memory from "./opfs-worker-messages.js";
3
+ export class OPFSStoreWorker {
4
+ level;
5
+ _levels;
6
+ _rootStore;
7
+ _memoryIterator;
8
+ constructor() {
9
+ const postMessageFn = postMessage;
10
+ this._memoryIterator = new Map();
11
+ this._levels = new Map();
12
+ const createMemory = (root, level = []) => {
13
+ let isOpen = false;
14
+ let m = root;
15
+ // 'open' | 'closed' is just a virtual thing since OPFS is always open as soone as we get the FileSystemDirectoryHandle
16
+ // TODO remove status? or assume not storage adapters can be closed?
17
+ const open = async () => {
18
+ isOpen = true;
19
+ m = m || (await navigator.storage.getDirectory());
20
+ };
21
+ return {
22
+ clear: async () => {
23
+ for await (const key of m.keys()) {
24
+ m.removeEntry(key, { recursive: true });
25
+ }
26
+ },
27
+ del: async (key) => {
28
+ try {
29
+ await m.removeEntry(key, { recursive: true });
30
+ }
31
+ catch (error) {
32
+ if (error instanceof DOMException &&
33
+ error.name === "NotFoundError") {
34
+ return;
35
+ }
36
+ else {
37
+ throw error;
38
+ }
39
+ }
40
+ },
41
+ get: async (key) => {
42
+ try {
43
+ const fileHandle = await m.getFileHandle(key);
44
+ const buffer = await (await fileHandle.getFile()).arrayBuffer();
45
+ return new Uint8Array(buffer);
46
+ }
47
+ catch (error) {
48
+ if (error instanceof DOMException &&
49
+ error.name === "NotFoundError") {
50
+ return;
51
+ }
52
+ else {
53
+ throw error;
54
+ }
55
+ }
56
+ },
57
+ put: async (key, value) => {
58
+ const fileHandle = await m.getFileHandle(key, { create: true });
59
+ const writeFileHandle = await fileHandle.createSyncAccessHandle();
60
+ writeFileHandle.write(value);
61
+ writeFileHandle.close();
62
+ },
63
+ size: async () => {
64
+ let size = 0;
65
+ for await (const value of m.values()) {
66
+ if (value.kind === "file") {
67
+ const handle = await value.createSyncAccessHandle();
68
+ size += handle.getSize();
69
+ handle.close();
70
+ }
71
+ }
72
+ return size;
73
+ },
74
+ status: () => (isOpen ? "open" : "closed"),
75
+ sublevel: async (name) => {
76
+ const fileHandle = await m.getDirectoryHandle(name, { create: true });
77
+ const sublevel = [...level, name];
78
+ const subMemory = createMemory(fileHandle, sublevel);
79
+ this._levels.set(memory.levelKey(sublevel), subMemory);
80
+ await subMemory.open();
81
+ return subMemory;
82
+ },
83
+ async *iterator() {
84
+ for await (const v of m.values()) {
85
+ if (v.kind == "file") {
86
+ yield [
87
+ v.name,
88
+ new Uint8Array(await (await v.getFile()).arrayBuffer())
89
+ ];
90
+ }
91
+ }
92
+ },
93
+ close: async () => {
94
+ isOpen = false;
95
+ this._memoryIterator.clear();
96
+ },
97
+ open
98
+ };
99
+ };
100
+ this._rootStore = createMemory();
101
+ self.addEventListener("message", async (ev) => {
102
+ const message = deserialize(ev["data"], memory.MemoryRequest);
103
+ if (message instanceof memory.MemoryMessage) {
104
+ const m = message.level.length === 0
105
+ ? this._rootStore
106
+ : this._levels.get(memory.levelKey(message.level));
107
+ if (!m) {
108
+ throw new Error("Recieved memory message for an undefined level");
109
+ }
110
+ else if (message instanceof memory.REQ_Clear) {
111
+ await m.clear();
112
+ await this.respond(message, new memory.RESP_Clear({ level: message.level }), postMessageFn);
113
+ }
114
+ else if (message instanceof memory.REQ_Close) {
115
+ await m.close();
116
+ await this.respond(message, new memory.RESP_Close({ level: message.level }), postMessageFn);
117
+ }
118
+ else if (message instanceof memory.REQ_Del) {
119
+ await m.del(message.key);
120
+ await this.respond(message, new memory.RESP_Del({ level: message.level }), postMessageFn);
121
+ }
122
+ else if (message instanceof memory.REQ_Iterator_Next) {
123
+ let iterator = this._memoryIterator.get(message.id);
124
+ if (!iterator) {
125
+ iterator = m.iterator()[Symbol.asyncIterator]();
126
+ this._memoryIterator.set(message.id, iterator);
127
+ }
128
+ const next = await iterator.next();
129
+ await this.respond(message, new memory.RESP_Iterator_Next({
130
+ keys: next.done ? [] : [next.value[0]],
131
+ values: next.done ? [] : [new Uint8Array(next.value[1])],
132
+ level: message.level
133
+ }), postMessageFn);
134
+ if (next.done) {
135
+ this._memoryIterator.delete(message.id);
136
+ }
137
+ }
138
+ else if (message instanceof memory.REQ_Iterator_Stop) {
139
+ this._memoryIterator.delete(message.id);
140
+ await this.respond(message, new memory.RESP_Iterator_Stop({ level: message.level }), postMessageFn);
141
+ }
142
+ else if (message instanceof memory.REQ_Get) {
143
+ const value = await m.get(message.key);
144
+ await this.respond(message, new memory.RESP_Get({
145
+ bytes: value ? new Uint8Array(value) : undefined,
146
+ level: message.level
147
+ }), postMessageFn);
148
+ }
149
+ else if (message instanceof memory.REQ_Open) {
150
+ await m.open();
151
+ await this.respond(message, new memory.RESP_Open({ level: message.level }), postMessageFn);
152
+ }
153
+ else if (message instanceof memory.REQ_Put) {
154
+ await m.put(message.key, message.bytes);
155
+ await this.respond(message, new memory.RESP_Put({ level: message.level }), postMessageFn);
156
+ }
157
+ else if (message instanceof memory.REQ_Size) {
158
+ await this.respond(message, new memory.RESP_Size({
159
+ size: await m.size(),
160
+ level: message.level
161
+ }), postMessageFn);
162
+ }
163
+ else if (message instanceof memory.REQ_Status) {
164
+ await this.respond(message, new memory.RESP_Status({
165
+ status: await m.status(),
166
+ level: message.level
167
+ }), postMessageFn);
168
+ }
169
+ else if (message instanceof memory.REQ_Sublevel) {
170
+ await m.sublevel(message.name);
171
+ await this.respond(message, new memory.RESP_Sublevel({ level: message.level }), postMessageFn);
172
+ }
173
+ }
174
+ });
175
+ }
176
+ async respond(request, response, postMessageFn = postMessage) {
177
+ response.messageId = request.messageId;
178
+ const bytes = serialize(response);
179
+ postMessageFn(bytes, { transfer: [bytes.buffer] });
180
+ }
181
+ }
182
+ new OPFSStoreWorker();
183
+ //# sourceMappingURL=opfs-worker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"opfs-worker.js","sourceRoot":"","sources":["../../src/opfs-worker.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ import { AnyStore, MaybePromise } from "./interface.js";
2
+ import * as memory from "./opfs-worker-messages.js";
3
+ export declare class OPFSStore implements AnyStore {
4
+ worker: Worker;
5
+ level: string[];
6
+ levelMap: Map<string, AnyStore>;
7
+ root: AnyStore;
8
+ private _responseCallbacks;
9
+ private _createMemory;
10
+ constructor(level?: string[]);
11
+ status(): MaybePromise<"opening" | "open" | "closing" | "closed">;
12
+ close(): Promise<void>;
13
+ open(): Promise<void>;
14
+ get(key: string): Promise<Uint8Array | undefined>;
15
+ put(key: string, value: Uint8Array): Promise<any>;
16
+ del(key: any): MaybePromise<void>;
17
+ sublevel(name: string): AnyStore | Promise<AnyStore>;
18
+ iterator(): {
19
+ [Symbol.asyncIterator]: () => AsyncIterator<[
20
+ string,
21
+ Uint8Array
22
+ ], void, void>;
23
+ };
24
+ clear(): MaybePromise<void>;
25
+ size(): MaybePromise<number>;
26
+ request<T extends memory.MemoryRequest>(request: memory.MemoryRequest): Promise<T>;
27
+ }