document-drive 1.29.9-dev.1 → 1.29.9-dev.2
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/prisma/schema.prisma +1 -2
- package/dist/src/processors/processor-manager.d.ts +7 -0
- package/dist/src/processors/processor-manager.d.ts.map +1 -1
- package/dist/src/processors/processor-manager.js +30 -21
- package/dist/src/processors/processor-manager.js.map +1 -1
- package/dist/src/server/base-server.d.ts +4 -0
- package/dist/src/server/base-server.d.ts.map +1 -1
- package/dist/src/server/base-server.js +28 -17
- package/dist/src/server/base-server.js.map +1 -1
- package/dist/src/storage/browser.d.ts +4 -1
- package/dist/src/storage/browser.d.ts.map +1 -1
- package/dist/src/storage/browser.js +43 -25
- package/dist/src/storage/browser.js.map +1 -1
- package/dist/src/storage/filesystem.d.ts +4 -1
- package/dist/src/storage/filesystem.d.ts.map +1 -1
- package/dist/src/storage/filesystem.js +52 -26
- package/dist/src/storage/filesystem.js.map +1 -1
- package/dist/src/storage/ipfs.d.ts +4 -1
- package/dist/src/storage/ipfs.d.ts.map +1 -1
- package/dist/src/storage/ipfs.js +68 -10
- package/dist/src/storage/ipfs.js.map +1 -1
- package/dist/src/storage/memory.d.ts +2 -1
- package/dist/src/storage/memory.d.ts.map +1 -1
- package/dist/src/storage/memory.js +35 -23
- package/dist/src/storage/memory.js.map +1 -1
- package/dist/src/storage/prisma/client/edge.js +5 -6
- package/dist/src/storage/prisma/client/index-browser.js +2 -3
- package/dist/src/storage/prisma/client/index.d.ts +49 -111
- package/dist/src/storage/prisma/client/index.js +5 -6
- package/dist/src/storage/prisma/client/package.json +1 -1
- package/dist/src/storage/prisma/client/schema.prisma +1 -2
- package/dist/src/storage/prisma/client/wasm.js +2 -3
- package/dist/src/storage/prisma/prisma.d.ts +1 -1
- package/dist/src/storage/prisma/prisma.d.ts.map +1 -1
- package/dist/src/storage/prisma/prisma.js +43 -69
- package/dist/src/storage/prisma/prisma.js.map +1 -1
- package/dist/src/storage/types.d.ts +15 -1
- package/dist/src/storage/types.d.ts.map +1 -1
- package/dist/test/utils.d.ts +2 -2
- package/dist/test/utils.d.ts.map +1 -1
- package/dist/test/utils.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +3 -3
|
@@ -7,6 +7,7 @@ export class BrowserStorage {
|
|
|
7
7
|
static SEP = ":";
|
|
8
8
|
static DOCUMENT_KEY = "DOCUMENT";
|
|
9
9
|
static MANIFEST_KEY = "MANIFEST";
|
|
10
|
+
static SLUG_MANIFEST_KEY = "SLUG_MANIFEST";
|
|
10
11
|
constructor(namespace) {
|
|
11
12
|
this.db = LocalForage.ready().then(() => LocalForage.createInstance({
|
|
12
13
|
name: namespace
|
|
@@ -30,6 +31,17 @@ export class BrowserStorage {
|
|
|
30
31
|
async create(documentId, document) {
|
|
31
32
|
const db = await this.db;
|
|
32
33
|
await db.setItem(this.buildDocumentKey(documentId), document);
|
|
34
|
+
// Update the slug manifest if the document has a slug
|
|
35
|
+
const slug = document.initialState.state.global?.slug ?? documentId;
|
|
36
|
+
if (slug) {
|
|
37
|
+
const slugManifest = await this.getSlugManifest();
|
|
38
|
+
// check if the slug is already taken
|
|
39
|
+
if (slugManifest.slugToId[slug]) {
|
|
40
|
+
throw new Error(`Document with slug ${slug} already exists`);
|
|
41
|
+
}
|
|
42
|
+
slugManifest.slugToId[slug] = documentId;
|
|
43
|
+
await this.updateSlugManifest(slugManifest);
|
|
44
|
+
}
|
|
33
45
|
}
|
|
34
46
|
async get(documentId) {
|
|
35
47
|
const db = await this.db;
|
|
@@ -39,12 +51,34 @@ export class BrowserStorage {
|
|
|
39
51
|
}
|
|
40
52
|
return document;
|
|
41
53
|
}
|
|
54
|
+
async getBySlug(slug) {
|
|
55
|
+
const slugManifest = await this.getSlugManifest();
|
|
56
|
+
const documentId = slugManifest.slugToId[slug];
|
|
57
|
+
if (!documentId) {
|
|
58
|
+
throw new Error(`Document with slug ${slug} not found`);
|
|
59
|
+
}
|
|
60
|
+
return this.get(documentId);
|
|
61
|
+
}
|
|
42
62
|
async delete(documentId) {
|
|
43
63
|
const db = await this.db;
|
|
44
64
|
const document = await db.getItem(this.buildDocumentKey(documentId));
|
|
45
65
|
if (!document) {
|
|
46
66
|
return false;
|
|
47
67
|
}
|
|
68
|
+
// Remove from slug manifest if it has a slug
|
|
69
|
+
try {
|
|
70
|
+
const slug = document.initialState.state.global?.slug;
|
|
71
|
+
if (slug) {
|
|
72
|
+
const slugManifest = await this.getSlugManifest();
|
|
73
|
+
if (slugManifest.slugToId[slug] === documentId) {
|
|
74
|
+
delete slugManifest.slugToId[slug];
|
|
75
|
+
await this.updateSlugManifest(slugManifest);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
catch (error) {
|
|
80
|
+
// If we can't get the slug, we can't remove it from the manifest
|
|
81
|
+
}
|
|
48
82
|
// delete the document from all other drive manifests
|
|
49
83
|
const drives = await this.getDrives();
|
|
50
84
|
for (const driveId of drives) {
|
|
@@ -99,6 +133,15 @@ export class BrowserStorage {
|
|
|
99
133
|
const db = await this.db;
|
|
100
134
|
await db.setItem(this.buildManifestKey(driveId), manifest);
|
|
101
135
|
}
|
|
136
|
+
async getSlugManifest() {
|
|
137
|
+
const db = await this.db;
|
|
138
|
+
const manifest = await db.getItem(BrowserStorage.SLUG_MANIFEST_KEY);
|
|
139
|
+
return manifest || { slugToId: {} };
|
|
140
|
+
}
|
|
141
|
+
async updateSlugManifest(manifest) {
|
|
142
|
+
const db = await this.db;
|
|
143
|
+
await db.setItem(BrowserStorage.SLUG_MANIFEST_KEY, manifest);
|
|
144
|
+
}
|
|
102
145
|
async clearStorage() {
|
|
103
146
|
return (await this.db).clear();
|
|
104
147
|
}
|
|
@@ -122,32 +165,7 @@ export class BrowserStorage {
|
|
|
122
165
|
.filter((key) => key.startsWith(BrowserStorage.MANIFEST_KEY))
|
|
123
166
|
.map((key) => key.slice(BrowserStorage.MANIFEST_KEY.length + BrowserStorage.SEP.length));
|
|
124
167
|
}
|
|
125
|
-
async getDriveBySlug(slug) {
|
|
126
|
-
// get oldes drives first
|
|
127
|
-
const drives = (await this.getDrives()).reverse();
|
|
128
|
-
for (const drive of drives) {
|
|
129
|
-
const driveData = await this.get(drive);
|
|
130
|
-
if (driveData.initialState.state.global.slug === slug) {
|
|
131
|
-
return driveData;
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
throw new Error(`Drive with slug ${slug} not found`);
|
|
135
|
-
}
|
|
136
168
|
async createDrive(id, drive) {
|
|
137
|
-
// check if a drive with the same slug already exists
|
|
138
|
-
const slug = drive.initialState.state.global.slug;
|
|
139
|
-
if (slug) {
|
|
140
|
-
let existingDrive;
|
|
141
|
-
try {
|
|
142
|
-
existingDrive = await this.getDriveBySlug(slug);
|
|
143
|
-
}
|
|
144
|
-
catch {
|
|
145
|
-
// do nothing
|
|
146
|
-
}
|
|
147
|
-
if (existingDrive) {
|
|
148
|
-
throw new Error(`Drive with slug ${slug} already exists`);
|
|
149
|
-
}
|
|
150
|
-
}
|
|
151
169
|
await this.create(id, drive);
|
|
152
170
|
// Initialize an empty manifest for the new drive
|
|
153
171
|
await this.updateDriveManifest(id, { documentIds: [] });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser.js","sourceRoot":"","sources":["../../../src/storage/browser.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,kCAAkC,EAAE,MAAM,mBAAmB,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAO9C,OAAO,WAAW,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"browser.js","sourceRoot":"","sources":["../../../src/storage/browser.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,6 +8,7 @@ export declare class FilesystemStorage implements IDriveStorage, IDocumentStorag
|
|
|
8
8
|
exists(documentId: string): Promise<boolean>;
|
|
9
9
|
create(documentId: string, document: PHDocument): Promise<void>;
|
|
10
10
|
get<TDocument extends PHDocument>(documentId: string): Promise<TDocument>;
|
|
11
|
+
getBySlug<TDocument extends PHDocument>(slug: string): Promise<TDocument>;
|
|
11
12
|
delete(documentId: string): Promise<boolean>;
|
|
12
13
|
addChild(parentId: string, childId: string): Promise<void>;
|
|
13
14
|
removeChild(parentId: string, childId: string): Promise<boolean>;
|
|
@@ -15,7 +16,6 @@ export declare class FilesystemStorage implements IDriveStorage, IDocumentStorag
|
|
|
15
16
|
clearStorage(): Promise<void>;
|
|
16
17
|
addDocumentOperations(drive: string, id: string, operations: Operation[], header: DocumentHeader): Promise<void>;
|
|
17
18
|
getDrives(): Promise<string[]>;
|
|
18
|
-
getDriveBySlug(slug: string): Promise<DocumentDriveDocument>;
|
|
19
19
|
createDrive(id: string, drive: DocumentDriveDocument): Promise<void>;
|
|
20
20
|
deleteDrive(id: string): Promise<void>;
|
|
21
21
|
addDriveOperations(id: string, operations: Operation<DocumentDriveAction>[], header: DocumentHeader): Promise<void>;
|
|
@@ -28,7 +28,10 @@ export declare class FilesystemStorage implements IDriveStorage, IDocumentStorag
|
|
|
28
28
|
}[]>;
|
|
29
29
|
private _buildDocumentPath;
|
|
30
30
|
private _buildManifestPath;
|
|
31
|
+
private _buildSlugManifestPath;
|
|
31
32
|
private getManifest;
|
|
32
33
|
private updateDriveManifest;
|
|
34
|
+
private getSlugManifest;
|
|
35
|
+
private updateSlugManifest;
|
|
33
36
|
}
|
|
34
37
|
//# sourceMappingURL=filesystem.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filesystem.d.ts","sourceRoot":"","sources":["../../../src/storage/filesystem.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAC3B,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,eAAe,CAAC;AAE9D,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,SAAS,EAEd,KAAK,UAAU,EAChB,MAAM,gBAAgB,CAAC;AAWxB,OAAO,EAAE,KAAK,gBAAgB,EAAE,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"filesystem.d.ts","sourceRoot":"","sources":["../../../src/storage/filesystem.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAC3B,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,eAAe,CAAC;AAE9D,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,SAAS,EAEd,KAAK,UAAU,EAChB,MAAM,gBAAgB,CAAC;AAWxB,OAAO,EAAE,KAAK,gBAAgB,EAAE,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AAkBvE,qBAAa,iBAAkB,YAAW,aAAa,EAAE,gBAAgB;IACvE,OAAO,CAAC,QAAQ,CAAS;gBAEb,QAAQ,EAAE,MAAM;IAS5B,MAAM,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAMtC,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU;IAsBrD,GAAG,CAAC,SAAS,SAAS,UAAU,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAYnE,SAAS,CAAC,SAAS,SAAS,UAAU,EAC1C,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,SAAS,CAAC;IAWf,MAAM,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA2C5C,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAmB1D,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAYhE,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAShD,YAAY;IAeZ,qBAAqB,CACzB,KAAK,EAAE,MAAM,EACb,EAAE,EAAE,MAAM,EACV,UAAU,EAAE,SAAS,EAAE,EACvB,MAAM,EAAE,cAAc;IAuBlB,SAAS;IAWT,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,qBAAqB;IAOpD,WAAW,CAAC,EAAE,EAAE,MAAM;IAYtB,kBAAkB,CACtB,EAAE,EAAE,MAAM,EACV,UAAU,EAAE,SAAS,CAAC,mBAAmB,CAAC,EAAE,EAC5C,MAAM,EAAE,cAAc,GACrB,OAAO,CAAC,IAAI,CAAC;IAqBV,+BAA+B,CACnC,KAAK,EAAE,wBAAwB,EAAE,GAChC,OAAO,CACR;QACE,UAAU,EAAE,MAAM,CAAC;QACnB,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,WAAW,EAAE,MAAM,CAAC;QACpB,QAAQ,EAAE,MAAM,CAAC;KAClB,EAAE,CACJ;IA4CD,OAAO,CAAC,kBAAkB;IAI1B,OAAO,CAAC,kBAAkB;IAI1B,OAAO,CAAC,sBAAsB;YAIhB,WAAW;YAWX,mBAAmB;YAQnB,eAAe;YAWf,kBAAkB;CAIjC"}
|
|
@@ -22,11 +22,21 @@ export class FilesystemStorage {
|
|
|
22
22
|
return Promise.resolve(documentExists);
|
|
23
23
|
}
|
|
24
24
|
// TODO: this should throw an error if the document already exists.
|
|
25
|
-
create(documentId, document) {
|
|
25
|
+
async create(documentId, document) {
|
|
26
26
|
const documentPath = this._buildDocumentPath(documentId);
|
|
27
27
|
writeFileSync(documentPath, stringify(document), {
|
|
28
28
|
encoding: "utf-8",
|
|
29
29
|
});
|
|
30
|
+
// Update the slug manifest if the document has a slug
|
|
31
|
+
const slug = document.initialState.state.global?.slug ?? documentId;
|
|
32
|
+
if (slug) {
|
|
33
|
+
const slugManifest = await this.getSlugManifest();
|
|
34
|
+
if (slugManifest.slugToId[slug]) {
|
|
35
|
+
throw new Error(`Document with slug ${slug} already exists`);
|
|
36
|
+
}
|
|
37
|
+
slugManifest.slugToId[slug] = documentId;
|
|
38
|
+
await this.updateSlugManifest(slugManifest);
|
|
39
|
+
}
|
|
30
40
|
return Promise.resolve();
|
|
31
41
|
}
|
|
32
42
|
get(documentId) {
|
|
@@ -40,7 +50,30 @@ export class FilesystemStorage {
|
|
|
40
50
|
throw new Error(`Document with id ${documentId} not found`);
|
|
41
51
|
}
|
|
42
52
|
}
|
|
53
|
+
async getBySlug(slug) {
|
|
54
|
+
const slugManifest = await this.getSlugManifest();
|
|
55
|
+
const documentId = slugManifest.slugToId[slug];
|
|
56
|
+
if (!documentId) {
|
|
57
|
+
throw new Error(`Document with slug ${slug} not found`);
|
|
58
|
+
}
|
|
59
|
+
return this.get(documentId);
|
|
60
|
+
}
|
|
43
61
|
async delete(documentId) {
|
|
62
|
+
// First, find any slug for this document and remove it from the slug manifest
|
|
63
|
+
try {
|
|
64
|
+
const document = await this.get(documentId);
|
|
65
|
+
const slug = document.initialState.state.global?.slug;
|
|
66
|
+
if (slug) {
|
|
67
|
+
const slugManifest = await this.getSlugManifest();
|
|
68
|
+
if (slugManifest.slugToId[slug] === documentId) {
|
|
69
|
+
delete slugManifest.slugToId[slug];
|
|
70
|
+
await this.updateSlugManifest(slugManifest);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
catch (error) {
|
|
75
|
+
// If we can't get the document, we can't remove its slug
|
|
76
|
+
}
|
|
44
77
|
// delete the document from all other drive manifests
|
|
45
78
|
const drives = await this.getDrives();
|
|
46
79
|
for (const driveId of drives) {
|
|
@@ -128,32 +161,7 @@ export class FilesystemStorage {
|
|
|
128
161
|
// remove manifest- prefix and extension
|
|
129
162
|
.map((file) => file.name.replace("manifest-", "").replace(".json", "")));
|
|
130
163
|
}
|
|
131
|
-
async getDriveBySlug(slug) {
|
|
132
|
-
// get oldest drives first
|
|
133
|
-
const drives = (await this.getDrives()).reverse();
|
|
134
|
-
for (const drive of drives) {
|
|
135
|
-
const { initialState: { state: { global: { slug: driveSlug }, }, }, } = await this.get(drive);
|
|
136
|
-
if (driveSlug === slug) {
|
|
137
|
-
return this.get(drive);
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
throw new Error(`Drive with slug ${slug} not found`);
|
|
141
|
-
}
|
|
142
164
|
async createDrive(id, drive) {
|
|
143
|
-
// check if a drive with the same slug already exists
|
|
144
|
-
const slug = drive.initialState.state.global.slug;
|
|
145
|
-
if (slug) {
|
|
146
|
-
let existingDrive;
|
|
147
|
-
try {
|
|
148
|
-
existingDrive = await this.getDriveBySlug(slug);
|
|
149
|
-
}
|
|
150
|
-
catch {
|
|
151
|
-
// do nothing
|
|
152
|
-
}
|
|
153
|
-
if (existingDrive) {
|
|
154
|
-
throw new Error(`Drive with slug ${slug} already exists`);
|
|
155
|
-
}
|
|
156
|
-
}
|
|
157
165
|
await this.create(id, drive);
|
|
158
166
|
// Initialize an empty manifest for the new drive
|
|
159
167
|
await this.updateDriveManifest(id, { documentIds: [] });
|
|
@@ -217,6 +225,9 @@ export class FilesystemStorage {
|
|
|
217
225
|
_buildManifestPath(driveId) {
|
|
218
226
|
return `${this.basePath}/manifest-${driveId}.json`;
|
|
219
227
|
}
|
|
228
|
+
_buildSlugManifestPath() {
|
|
229
|
+
return `${this.basePath}/slugs.json`;
|
|
230
|
+
}
|
|
220
231
|
async getManifest(driveId) {
|
|
221
232
|
const manifestPath = this._buildManifestPath(driveId);
|
|
222
233
|
try {
|
|
@@ -232,5 +243,20 @@ export class FilesystemStorage {
|
|
|
232
243
|
const manifestPath = this._buildManifestPath(driveId);
|
|
233
244
|
writeFileSync(manifestPath, stringify(manifest), { encoding: "utf-8" });
|
|
234
245
|
}
|
|
246
|
+
async getSlugManifest() {
|
|
247
|
+
const slugManifestPath = this._buildSlugManifestPath();
|
|
248
|
+
try {
|
|
249
|
+
const content = readFileSync(slugManifestPath, { encoding: "utf-8" });
|
|
250
|
+
return JSON.parse(content);
|
|
251
|
+
}
|
|
252
|
+
catch (error) {
|
|
253
|
+
// Return empty slug manifest if file doesn't exist
|
|
254
|
+
return { slugToId: {} };
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
async updateSlugManifest(manifest) {
|
|
258
|
+
const slugManifestPath = this._buildSlugManifestPath();
|
|
259
|
+
writeFileSync(slugManifestPath, stringify(manifest), { encoding: "utf-8" });
|
|
260
|
+
}
|
|
235
261
|
}
|
|
236
262
|
//# sourceMappingURL=filesystem.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filesystem.js","sourceRoot":"","sources":["../../../src/storage/filesystem.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAO9C,OAAO,EACL,UAAU,EACV,SAAS,EACT,YAAY,EACZ,UAAU,EACV,aAAa,GACd,MAAM,IAAI,CAAC;AACZ,OAAO,EAAE,MAAM,aAAa,CAAC;AAC7B,OAAO,SAAS,MAAM,8BAA8B,CAAC;AACrD,OAAO,IAAI,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"filesystem.js","sourceRoot":"","sources":["../../../src/storage/filesystem.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,6 +9,7 @@ export declare class IPFSStorage implements IStorage, IDocumentStorage {
|
|
|
9
9
|
exists(documentId: string): Promise<boolean>;
|
|
10
10
|
create(documentId: string, document: PHDocument): Promise<void>;
|
|
11
11
|
get<TDocument extends PHDocument>(documentId: string): Promise<TDocument>;
|
|
12
|
+
getBySlug<TDocument extends PHDocument>(slug: string): Promise<TDocument>;
|
|
12
13
|
delete(documentId: string): Promise<boolean>;
|
|
13
14
|
addChild(parentId: string, childId: string): Promise<void>;
|
|
14
15
|
removeChild(parentId: string, childId: string): Promise<boolean>;
|
|
@@ -16,7 +17,6 @@ export declare class IPFSStorage implements IStorage, IDocumentStorage {
|
|
|
16
17
|
addDocumentOperations<TDocument extends PHDocument>(drive: string, id: string, operations: Operation[], header: DocumentHeader): Promise<void>;
|
|
17
18
|
getDrives(): Promise<string[]>;
|
|
18
19
|
getDrive(id: string): Promise<DocumentDriveDocument>;
|
|
19
|
-
getDriveBySlug(slug: string): Promise<DocumentDriveDocument>;
|
|
20
20
|
createDrive(id: string, drive: DocumentDriveDocument): Promise<void>;
|
|
21
21
|
deleteDrive(id: string): Promise<void>;
|
|
22
22
|
addDriveOperations(id: string, operations: Operation<DocumentDriveAction>[], header: DocumentHeader): Promise<void>;
|
|
@@ -31,7 +31,10 @@ export declare class IPFSStorage implements IStorage, IDocumentStorage {
|
|
|
31
31
|
private _buildDocumentPath;
|
|
32
32
|
private _buildDrivePath;
|
|
33
33
|
private _buildDriveManifestPath;
|
|
34
|
+
private _buildSlugManifestPath;
|
|
34
35
|
private getDriveManifest;
|
|
35
36
|
private updateDriveManifest;
|
|
37
|
+
private getSlugManifest;
|
|
38
|
+
private updateSlugManifest;
|
|
36
39
|
}
|
|
37
40
|
//# sourceMappingURL=ipfs.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ipfs.d.ts","sourceRoot":"","sources":["../../../src/storage/ipfs.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAC3B,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,eAAe,CAAC;AAG9D,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,SAAS,EAEd,KAAK,UAAU,EAChB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,OAAO,CAAC;AAEnC,OAAO,KAAK,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"ipfs.d.ts","sourceRoot":"","sources":["../../../src/storage/ipfs.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAC3B,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,eAAe,CAAC;AAG9D,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,SAAS,EAEd,KAAK,UAAU,EAChB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,OAAO,CAAC;AAEnC,OAAO,KAAK,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAY7D,qBAAa,WAAY,YAAW,QAAQ,EAAE,gBAAgB;IAC5D,OAAO,CAAC,EAAE,CAAM;gBAEJ,KAAK,EAAE,KAAK;IAQlB,MAAM,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAoB5C,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAgB/D,GAAG,CAAC,SAAS,SAAS,UAAU,EACpC,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,SAAS,CAAC;IAkBf,SAAS,CAAC,SAAS,SAAS,UAAU,EAC1C,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,SAAS,CAAC;IAWf,MAAM,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAyC5C,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkB1D,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAYhE,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAQhD,qBAAqB,CAAC,SAAS,SAAS,UAAU,EACtD,KAAK,EAAE,MAAM,EACb,EAAE,EAAE,MAAM,EACV,UAAU,EAAE,SAAS,EAAE,EACvB,MAAM,EAAE,cAAc,GACrB,OAAO,CAAC,IAAI,CAAC;IAgBV,SAAS,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAqB9B,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAepD,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;IA4BpE,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBtC,kBAAkB,CACtB,EAAE,EAAE,MAAM,EACV,UAAU,EAAE,SAAS,CAAC,mBAAmB,CAAC,EAAE,EAC5C,MAAM,EAAE,cAAc,GACrB,OAAO,CAAC,IAAI,CAAC;IAcV,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAa7B,+BAA+B,CACnC,KAAK,EAAE,wBAAwB,EAAE,GAChC,OAAO,CACR;QACE,UAAU,EAAE,MAAM,CAAC;QACnB,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,WAAW,EAAE,MAAM,CAAC;QACpB,QAAQ,EAAE,MAAM,CAAC;KAClB,EAAE,CACJ;IA4CD,OAAO,CAAC,kBAAkB;IAI1B,OAAO,CAAC,eAAe;IAIvB,OAAO,CAAC,uBAAuB;IAI/B,OAAO,CAAC,sBAAsB;YAIhB,gBAAgB;YAgBhB,mBAAmB;YAUnB,eAAe;YAgBf,kBAAkB;CAMjC"}
|
package/dist/src/storage/ipfs.js
CHANGED
|
@@ -29,6 +29,13 @@ export class IPFSStorage {
|
|
|
29
29
|
// TODO: this should throw an error if the document already exists.
|
|
30
30
|
async create(documentId, document) {
|
|
31
31
|
await this.fs.writeBytes(new TextEncoder().encode(stringify(document)), this._buildDocumentPath(documentId));
|
|
32
|
+
// Update the slug manifest if the document has a slug
|
|
33
|
+
const slug = document.initialState.state.global?.slug ?? documentId;
|
|
34
|
+
if (slug) {
|
|
35
|
+
const slugManifest = await this.getSlugManifest();
|
|
36
|
+
slugManifest.slugToId[slug] = documentId;
|
|
37
|
+
await this.updateSlugManifest(slugManifest);
|
|
38
|
+
}
|
|
32
39
|
}
|
|
33
40
|
async get(documentId) {
|
|
34
41
|
try {
|
|
@@ -45,7 +52,30 @@ export class IPFSStorage {
|
|
|
45
52
|
throw new Error(`Document with id ${documentId} not found`);
|
|
46
53
|
}
|
|
47
54
|
}
|
|
55
|
+
async getBySlug(slug) {
|
|
56
|
+
const slugManifest = await this.getSlugManifest();
|
|
57
|
+
const documentId = slugManifest.slugToId[slug];
|
|
58
|
+
if (!documentId) {
|
|
59
|
+
throw new Error(`Document with slug ${slug} not found`);
|
|
60
|
+
}
|
|
61
|
+
return this.get(documentId);
|
|
62
|
+
}
|
|
48
63
|
async delete(documentId) {
|
|
64
|
+
// Remove from slug manifest if it has a slug
|
|
65
|
+
try {
|
|
66
|
+
const document = await this.get(documentId);
|
|
67
|
+
const slug = document.initialState.state.global?.slug;
|
|
68
|
+
if (slug) {
|
|
69
|
+
const slugManifest = await this.getSlugManifest();
|
|
70
|
+
if (slugManifest.slugToId[slug] === documentId) {
|
|
71
|
+
delete slugManifest.slugToId[slug];
|
|
72
|
+
await this.updateSlugManifest(slugManifest);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
catch (error) {
|
|
77
|
+
// If we can't get the document, we can't remove its slug
|
|
78
|
+
}
|
|
49
79
|
// delete the document from all other drive manifests
|
|
50
80
|
const drives = await this.getDrives();
|
|
51
81
|
for (const driveId of drives) {
|
|
@@ -147,18 +177,21 @@ export class IPFSStorage {
|
|
|
147
177
|
throw new Error(`Drive with id ${id} not found`);
|
|
148
178
|
}
|
|
149
179
|
}
|
|
150
|
-
async
|
|
151
|
-
//
|
|
152
|
-
const
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
180
|
+
async createDrive(id, drive) {
|
|
181
|
+
// check if a drive with the same slug already exists
|
|
182
|
+
const slug = drive.initialState.state.global.slug;
|
|
183
|
+
if (slug) {
|
|
184
|
+
let existingDrive;
|
|
185
|
+
try {
|
|
186
|
+
existingDrive = await this.getBySlug(slug);
|
|
187
|
+
}
|
|
188
|
+
catch {
|
|
189
|
+
// do nothing
|
|
190
|
+
}
|
|
191
|
+
if (existingDrive) {
|
|
192
|
+
throw new Error(`Drive with slug ${slug} already exists`);
|
|
157
193
|
}
|
|
158
194
|
}
|
|
159
|
-
throw new Error(`Drive with slug ${slug} not found`);
|
|
160
|
-
}
|
|
161
|
-
async createDrive(id, drive) {
|
|
162
195
|
const drivePath = this._buildDrivePath(id);
|
|
163
196
|
const driveContent = stringify(drive);
|
|
164
197
|
const driveBuffer = new TextEncoder().encode(driveContent);
|
|
@@ -253,6 +286,9 @@ export class IPFSStorage {
|
|
|
253
286
|
_buildDriveManifestPath(driveId) {
|
|
254
287
|
return `/manifest-${driveId}.json`;
|
|
255
288
|
}
|
|
289
|
+
_buildSlugManifestPath() {
|
|
290
|
+
return `/slugs.json`;
|
|
291
|
+
}
|
|
256
292
|
async getDriveManifest(driveId) {
|
|
257
293
|
try {
|
|
258
294
|
const manifestPath = this._buildDriveManifestPath(driveId);
|
|
@@ -275,5 +311,27 @@ export class IPFSStorage {
|
|
|
275
311
|
const manifestBuffer = new TextEncoder().encode(manifestContent);
|
|
276
312
|
await this.fs.writeBytes(manifestBuffer, manifestPath, { force: true });
|
|
277
313
|
}
|
|
314
|
+
async getSlugManifest() {
|
|
315
|
+
try {
|
|
316
|
+
const manifestPath = this._buildSlugManifestPath();
|
|
317
|
+
const chunks = [];
|
|
318
|
+
for await (const chunk of this.fs.cat(manifestPath)) {
|
|
319
|
+
chunks.push(chunk);
|
|
320
|
+
}
|
|
321
|
+
const buffer = Buffer.concat(chunks);
|
|
322
|
+
const content = new TextDecoder().decode(buffer);
|
|
323
|
+
return JSON.parse(content);
|
|
324
|
+
}
|
|
325
|
+
catch (error) {
|
|
326
|
+
// If manifest doesn't exist, return an empty one
|
|
327
|
+
return { slugToId: {} };
|
|
328
|
+
}
|
|
329
|
+
}
|
|
330
|
+
async updateSlugManifest(manifest) {
|
|
331
|
+
const manifestPath = this._buildSlugManifestPath();
|
|
332
|
+
const manifestContent = stringify(manifest);
|
|
333
|
+
const manifestBuffer = new TextEncoder().encode(manifestContent);
|
|
334
|
+
await this.fs.writeBytes(manifestBuffer, manifestPath, { force: true });
|
|
335
|
+
}
|
|
278
336
|
}
|
|
279
337
|
//# sourceMappingURL=ipfs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ipfs.js","sourceRoot":"","sources":["../../../src/storage/ipfs.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ipfs.js","sourceRoot":"","sources":["../../../src/storage/ipfs.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,10 +5,12 @@ import { type IDocumentStorage, type IDriveStorage } from "./types.js";
|
|
|
5
5
|
export declare class MemoryStorage implements IDriveStorage, IDocumentStorage {
|
|
6
6
|
private documents;
|
|
7
7
|
private driveManifests;
|
|
8
|
+
private slugToDocumentId;
|
|
8
9
|
constructor();
|
|
9
10
|
exists(documentId: string): Promise<boolean>;
|
|
10
11
|
create(documentId: string, document: PHDocument): Promise<void>;
|
|
11
12
|
get<TDocument extends PHDocument>(documentId: string): Promise<TDocument>;
|
|
13
|
+
getBySlug<TDocument extends PHDocument>(slug: string): Promise<TDocument>;
|
|
12
14
|
delete(documentId: string): Promise<boolean>;
|
|
13
15
|
addChild(parentId: string, childId: string): Promise<void>;
|
|
14
16
|
removeChild(parentId: string, childId: string): Promise<boolean>;
|
|
@@ -16,7 +18,6 @@ export declare class MemoryStorage implements IDriveStorage, IDocumentStorage {
|
|
|
16
18
|
clearStorage(): Promise<void>;
|
|
17
19
|
addDocumentOperations(drive: string, id: string, operations: Operation[], header: DocumentHeader): Promise<void>;
|
|
18
20
|
getDrives(): Promise<string[]>;
|
|
19
|
-
getDriveBySlug(slug: string): Promise<DocumentDriveDocument>;
|
|
20
21
|
createDrive(id: string, drive: DocumentDriveDocument): Promise<void>;
|
|
21
22
|
addDriveOperations(id: string, operations: OperationFromDocument<DocumentDriveDocument>[], header: DocumentHeader): Promise<void>;
|
|
22
23
|
deleteDrive(id: string): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../../../src/storage/memory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,eAAe,CAAC;AAE9D,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,SAAS,EACd,KAAK,qBAAqB,EAE1B,KAAK,UAAU,EAChB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,KAAK,gBAAgB,EAAE,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AAMvE,qBAAa,aAAc,YAAW,aAAa,EAAE,gBAAgB;IACnE,OAAO,CAAC,SAAS,CAA6B;IAC9C,OAAO,CAAC,cAAc,CAAgC;;
|
|
1
|
+
{"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../../../src/storage/memory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,eAAe,CAAC;AAE9D,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,SAAS,EACd,KAAK,qBAAqB,EAE1B,KAAK,UAAU,EAChB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,KAAK,gBAAgB,EAAE,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AAMvE,qBAAa,aAAc,YAAW,aAAa,EAAE,gBAAgB;IACnE,OAAO,CAAC,SAAS,CAA6B;IAC9C,OAAO,CAAC,cAAc,CAAgC;IACtD,OAAO,CAAC,gBAAgB,CAAyB;;IAYjD,MAAM,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAK5C,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU;IAiB/C,GAAG,CAAC,SAAS,SAAS,UAAU,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IASzE,SAAS,CAAC,SAAS,SAAS,UAAU,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAUnE,MAAM,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA8B5C,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;IAgB1C,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;IAU7C,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAShD,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAM7B,qBAAqB,CACzB,KAAK,EAAE,MAAM,EACb,EAAE,EAAE,MAAM,EACV,UAAU,EAAE,SAAS,EAAE,EACvB,MAAM,EAAE,cAAc,GACrB,OAAO,CAAC,IAAI,CAAC;IAeV,SAAS;IAIT,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,qBAAqB;IAOpD,kBAAkB,CACtB,EAAE,EAAE,MAAM,EACV,UAAU,EAAE,qBAAqB,CAAC,qBAAqB,CAAC,EAAE,EAC1D,MAAM,EAAE,cAAc,GACrB,OAAO,CAAC,IAAI,CAAC;IAcV,WAAW,CAAC,EAAE,EAAE,MAAM;IAqCtB,+BAA+B,CACnC,KAAK,EAAE,wBAAwB,EAAE,GAChC,OAAO,CACR;QACE,UAAU,EAAE,MAAM,CAAC;QACnB,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,WAAW,EAAE,MAAM,CAAC;QACpB,QAAQ,EAAE,MAAM,CAAC;KAClB,EAAE,CACJ;IA4CD,OAAO,CAAC,WAAW;IAQnB,OAAO,CAAC,mBAAmB;CAG5B"}
|