fabricjs-document-engine 0.2.0 → 0.4.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/README.md +113 -13
- package/dist/assets/asset-manifest.cjs +43 -0
- package/dist/assets/asset-manifest.d.cts +16 -0
- package/dist/assets/asset-manifest.d.ts +16 -0
- package/dist/assets/asset-manifest.js +41 -0
- package/dist/assets/asset-pipeline.cjs +175 -0
- package/dist/assets/asset-pipeline.d.cts +31 -0
- package/dist/assets/asset-pipeline.d.ts +31 -0
- package/dist/assets/asset-pipeline.js +172 -0
- package/dist/assets/asset-references.cjs +83 -0
- package/dist/assets/asset-references.js +82 -0
- package/dist/assets/font-check.cjs +59 -0
- package/dist/assets/font-check.d.cts +4 -0
- package/dist/assets/font-check.d.ts +4 -0
- package/dist/assets/font-check.js +57 -0
- package/dist/assets/image-check.cjs +36 -0
- package/dist/assets/image-check.js +33 -0
- package/dist/document/document-format.d.cts +2 -0
- package/dist/document/document-format.d.ts +2 -0
- package/dist/document/validate-document.cjs +4 -0
- package/dist/document/validate-document.js +4 -0
- package/dist/engine/create-document-engine.cjs +112 -10
- package/dist/engine/create-document-engine.d.cts +28 -0
- package/dist/engine/create-document-engine.d.ts +28 -0
- package/dist/engine/create-document-engine.js +112 -10
- package/dist/engine/errors.cjs +2 -0
- package/dist/engine/errors.d.cts +6 -1
- package/dist/engine/errors.d.ts +6 -1
- package/dist/engine/errors.js +2 -0
- package/dist/index.cjs +1 -1
- package/dist/index.d.cts +6 -1
- package/dist/index.d.ts +6 -1
- package/dist/index.js +1 -1
- package/dist/recovery/indexed-db-recovery.cjs +80 -0
- package/dist/recovery/indexed-db-recovery.d.cts +8 -0
- package/dist/recovery/indexed-db-recovery.d.ts +8 -0
- package/dist/recovery/indexed-db-recovery.js +80 -0
- package/dist/recovery/recovery-controller.cjs +159 -0
- package/dist/recovery/recovery-controller.d.cts +19 -0
- package/dist/recovery/recovery-controller.d.ts +19 -0
- package/dist/recovery/recovery-controller.js +158 -0
- package/dist/recovery/recovery-store.cjs +19 -0
- package/dist/recovery/recovery-store.d.cts +10 -0
- package/dist/recovery/recovery-store.d.ts +10 -0
- package/dist/recovery/recovery-store.js +19 -0
- package/dist/recovery.cjs +5 -0
- package/dist/recovery.d.cts +4 -0
- package/dist/recovery.d.ts +4 -0
- package/dist/recovery.js +3 -0
- package/dist/save/save-controller.cjs +6 -5
- package/dist/save/save-controller.js +6 -5
- package/package.json +13 -2
package/dist/recovery.js
ADDED
|
@@ -68,16 +68,17 @@ function createSaveController(options) {
|
|
|
68
68
|
const sessionAtStart = session;
|
|
69
69
|
const { signal } = sessionAbort;
|
|
70
70
|
const versionAtSnapshot = contentVersion;
|
|
71
|
-
const document = {
|
|
72
|
-
...options.createDocument(),
|
|
73
|
-
revision: revision + 1
|
|
74
|
-
};
|
|
75
71
|
const expectedRevision = saveOptions.overwrite === true ? null : revision;
|
|
72
|
+
const creating = options.createDocument();
|
|
76
73
|
saving = true;
|
|
77
74
|
lastError = void 0;
|
|
78
75
|
publish();
|
|
79
|
-
options.onStart(document);
|
|
80
76
|
try {
|
|
77
|
+
const document = {
|
|
78
|
+
...await creating,
|
|
79
|
+
revision: revision + 1
|
|
80
|
+
};
|
|
81
|
+
options.onStart(document);
|
|
81
82
|
const result = await sendWithRetries(storage, document, expectedRevision, signal);
|
|
82
83
|
if (sessionAtStart !== session) return document;
|
|
83
84
|
revision = result?.revision ?? document.revision;
|
|
@@ -68,16 +68,17 @@ function createSaveController(options) {
|
|
|
68
68
|
const sessionAtStart = session;
|
|
69
69
|
const { signal } = sessionAbort;
|
|
70
70
|
const versionAtSnapshot = contentVersion;
|
|
71
|
-
const document = {
|
|
72
|
-
...options.createDocument(),
|
|
73
|
-
revision: revision + 1
|
|
74
|
-
};
|
|
75
71
|
const expectedRevision = saveOptions.overwrite === true ? null : revision;
|
|
72
|
+
const creating = options.createDocument();
|
|
76
73
|
saving = true;
|
|
77
74
|
lastError = void 0;
|
|
78
75
|
publish();
|
|
79
|
-
options.onStart(document);
|
|
80
76
|
try {
|
|
77
|
+
const document = {
|
|
78
|
+
...await creating,
|
|
79
|
+
revision: revision + 1
|
|
80
|
+
};
|
|
81
|
+
options.onStart(document);
|
|
81
82
|
const result = await sendWithRetries(storage, document, expectedRevision, signal);
|
|
82
83
|
if (sessionAtStart !== session) return document;
|
|
83
84
|
revision = result?.revision ?? document.revision;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "fabricjs-document-engine",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.0",
|
|
4
4
|
"description": "Turn an existing Fabric.js canvas into a dependable editable document: stable object ids, versioned save and load, undo and redo, safe autosave with conflict protection, custom objects and clear errors.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"fabric",
|
|
@@ -18,7 +18,8 @@
|
|
|
18
18
|
"autosave",
|
|
19
19
|
"editor",
|
|
20
20
|
"typescript",
|
|
21
|
-
"storage"
|
|
21
|
+
"storage",
|
|
22
|
+
"recovery"
|
|
22
23
|
],
|
|
23
24
|
"license": "MIT",
|
|
24
25
|
"author": "Sohail Khan (https://me.jscrate.dev)",
|
|
@@ -53,6 +54,16 @@
|
|
|
53
54
|
"default": "./dist/storage.cjs"
|
|
54
55
|
}
|
|
55
56
|
},
|
|
57
|
+
"./recovery": {
|
|
58
|
+
"import": {
|
|
59
|
+
"types": "./dist/recovery.d.ts",
|
|
60
|
+
"default": "./dist/recovery.js"
|
|
61
|
+
},
|
|
62
|
+
"require": {
|
|
63
|
+
"types": "./dist/recovery.d.cts",
|
|
64
|
+
"default": "./dist/recovery.cjs"
|
|
65
|
+
}
|
|
66
|
+
},
|
|
56
67
|
"./package.json": "./package.json"
|
|
57
68
|
},
|
|
58
69
|
"scripts": {
|