@adonis-agora/collaboration 0.13.0 → 0.14.0
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/CHANGELOG.md +26 -0
- package/dist/src/collaboration_manager.d.ts +3 -1
- package/dist/src/collaboration_manager.d.ts.map +1 -1
- package/dist/src/collaboration_manager.js +13 -2
- package/dist/src/collaboration_manager.js.map +1 -1
- package/dist/src/driver.d.ts +3 -3
- package/dist/src/driver.d.ts.map +1 -1
- package/dist/src/driver.js.map +1 -1
- package/dist/src/drivers/automerge/automerge_driver.d.ts +2 -2
- package/dist/src/drivers/automerge/automerge_driver.d.ts.map +1 -1
- package/dist/src/drivers/automerge/automerge_driver.js +2 -2
- package/dist/src/drivers/automerge/automerge_driver.js.map +1 -1
- package/dist/src/drivers/partykit/partykit_driver.d.ts +2 -2
- package/dist/src/drivers/partykit/partykit_driver.d.ts.map +1 -1
- package/dist/src/drivers/partykit/partykit_driver.js +2 -2
- package/dist/src/drivers/partykit/partykit_driver.js.map +1 -1
- package/dist/src/drivers/yjs/yjs_driver.d.ts +2 -2
- package/dist/src/drivers/yjs/yjs_driver.d.ts.map +1 -1
- package/dist/src/drivers/yjs/yjs_driver.js +2 -2
- package/dist/src/drivers/yjs/yjs_driver.js.map +1 -1
- package/dist/src/http/types.d.ts +6 -1
- package/dist/src/http/types.d.ts.map +1 -1
- package/dist/src/routes.d.ts.map +1 -1
- package/dist/src/routes.js +19 -5
- package/dist/src/routes.js.map +1 -1
- package/dist/src/services/comment_service.d.ts +2 -2
- package/dist/src/services/comment_service.d.ts.map +1 -1
- package/dist/src/services/comment_service.js +2 -2
- package/dist/src/services/comment_service.js.map +1 -1
- package/dist/src/storage/file_system_storage.d.ts +3 -3
- package/dist/src/storage/file_system_storage.d.ts.map +1 -1
- package/dist/src/storage/file_system_storage.js +13 -4
- package/dist/src/storage/file_system_storage.js.map +1 -1
- package/dist/src/storage/in_memory_storage.d.ts +3 -3
- package/dist/src/storage/in_memory_storage.d.ts.map +1 -1
- package/dist/src/storage/in_memory_storage.js +14 -5
- package/dist/src/storage/in_memory_storage.js.map +1 -1
- package/dist/src/storage/lucid_storage.d.ts +3 -3
- package/dist/src/storage/lucid_storage.d.ts.map +1 -1
- package/dist/src/storage/lucid_storage.js +48 -33
- package/dist/src/storage/lucid_storage.js.map +1 -1
- package/dist/src/storage/shared.d.ts +17 -0
- package/dist/src/storage/shared.d.ts.map +1 -1
- package/dist/src/storage/shared.js +29 -0
- package/dist/src/storage/shared.js.map +1 -1
- package/dist/src/types.d.ts +27 -3
- package/dist/src/types.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/src/types.d.ts
CHANGED
|
@@ -150,6 +150,22 @@ export interface PruneVersionsOptions {
|
|
|
150
150
|
/** Count what would be removed without deleting anything. */
|
|
151
151
|
dryRun?: boolean;
|
|
152
152
|
}
|
|
153
|
+
/**
|
|
154
|
+
* Limit/offset pagination bounds accepted by the list-shaped storage reads
|
|
155
|
+
* ({@link CollaborationStorage.listVersions}, {@link CollaborationStorage.listComments}).
|
|
156
|
+
*
|
|
157
|
+
* Deliberately optional and separate from the required params: a caller that
|
|
158
|
+
* omits it (every internal driver call computing the next `seq` or resolving
|
|
159
|
+
* a restore target) gets the historical "every row" behaviour, while the HTTP
|
|
160
|
+
* routes — the only place an unbounded result becomes a client-facing
|
|
161
|
+
* problem — always pass one. Implementations should clamp the values
|
|
162
|
+
* themselves (see `clampLimit`/`clampOffset` in `storage/shared.js`) rather
|
|
163
|
+
* than trust the caller's numbers.
|
|
164
|
+
*/
|
|
165
|
+
export interface ListPageOptions {
|
|
166
|
+
limit?: number;
|
|
167
|
+
offset?: number;
|
|
168
|
+
}
|
|
153
169
|
/**
|
|
154
170
|
* Persistence of documents + versions + comments. The host app implements
|
|
155
171
|
* this (database, S3...) and the library only knows the interface.
|
|
@@ -159,7 +175,12 @@ export interface CollaborationStorage {
|
|
|
159
175
|
state: Uint8Array;
|
|
160
176
|
} | null>;
|
|
161
177
|
saveDocument(docName: string, state: Uint8Array, meta?: Record<string, unknown>): Promise<void>;
|
|
162
|
-
|
|
178
|
+
/**
|
|
179
|
+
* Versions of a document, oldest first. `page` bounds the result — omit it
|
|
180
|
+
* to get every version (what version-numbering and restore need
|
|
181
|
+
* internally); the HTTP route always supplies one.
|
|
182
|
+
*/
|
|
183
|
+
listVersions(docName: string, page?: ListPageOptions): Promise<CollabVersion[]>;
|
|
163
184
|
saveVersion(docName: string, version: CollabVersion, snapshot: Uint8Array): Promise<void>;
|
|
164
185
|
loadVersionSnapshot(docName: string, versionId: string): Promise<Uint8Array | null>;
|
|
165
186
|
/**
|
|
@@ -167,8 +188,11 @@ export interface CollaborationStorage {
|
|
|
167
188
|
* many versions were removed (or would be, with `dryRun`).
|
|
168
189
|
*/
|
|
169
190
|
pruneVersions(options: PruneVersionsOptions): Promise<number>;
|
|
170
|
-
/**
|
|
171
|
-
|
|
191
|
+
/**
|
|
192
|
+
* Comments of a document (by space), oldest first. `page` bounds the
|
|
193
|
+
* result the same way it does for {@link listVersions}.
|
|
194
|
+
*/
|
|
195
|
+
listComments(docName: string, space?: string, page?: ListPageOptions): Promise<CollabComment[]>;
|
|
172
196
|
/**
|
|
173
197
|
* One comment by id. Optional: a storage that cannot look one up directly is
|
|
174
198
|
* served by {@link CommentService.get} falling back to a filtered list — the
|
package/dist/src/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@adonis-agora/collaboration",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.14.0",
|
|
4
4
|
"description": "Collaborative editing (CRDT) for AdonisJS 7 — Yjs (Hocuspocus) and Automerge drivers, Redis-backed presence, unified version control. Part of the Agora ecosystem.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|