@dialecte/core 0.8.1 → 0.9.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/dist/assets/hub.worker-35vzG0HK.js +2 -0
- package/dist/dialecte/create-dialecte-project.d.ts +1 -2
- package/dist/dialecte/create-dialecte-project.d.ts.map +1 -1
- package/dist/dialecte/create-project-factory.d.ts +5 -5
- package/dist/dialecte/create-project-factory.d.ts.map +1 -1
- package/dist/dialecte/define-dialecte.d.ts +2 -2
- package/dist/dialecte/dialecte.types.d.ts +11 -23
- package/dist/dialecte/dialecte.types.d.ts.map +1 -1
- package/dist/{dialecte-gIPrRzni.js → dialecte-oAXwOG-Q.js} +1182 -1203
- package/dist/document/document.d.ts +1 -1
- package/dist/{engine-store-CIEqgPUb.js → engine-store-Deo9XNhr.js} +21 -21
- package/dist/engine.constants-Bi4gw6BR.js +205 -0
- package/dist/errors/{codes.d.ts → codes.constants.d.ts} +33 -105
- package/dist/errors/{codes.d.ts.map → codes.constants.d.ts.map} +1 -1
- package/dist/errors/core-codes.constants.d.ts +3 -0
- package/dist/errors/core-codes.constants.d.ts.map +1 -0
- package/dist/errors/errors.constants.d.ts +5 -0
- package/dist/errors/errors.constants.d.ts.map +1 -1
- package/dist/errors/errors.d.ts.map +1 -1
- package/dist/errors/index.d.ts +1 -1
- package/dist/errors/index.d.ts.map +1 -1
- package/dist/errors/types.d.ts +1 -1
- package/dist/errors/types.d.ts.map +1 -1
- package/dist/{helpers-DVShv41E.js → helpers-D8p0KiJu.js} +1 -1
- package/dist/helpers.js +2 -2
- package/dist/{in-process-link-DBeAOZRp.js → in-process-link-B-TCHrlb.js} +996 -993
- package/dist/index.js +8 -7
- package/dist/project/index.d.ts +1 -1
- package/dist/project/index.d.ts.map +1 -1
- package/dist/project/io/store-runtime.types.d.ts +1 -3
- package/dist/project/io/store-runtime.types.d.ts.map +1 -1
- package/dist/project/project.d.ts +13 -15
- package/dist/project/project.d.ts.map +1 -1
- package/dist/project/types.d.ts +24 -19
- package/dist/project/types.d.ts.map +1 -1
- package/dist/{project-key-Ch34EtFa.js → project-key-2ccZ-0gu.js} +195 -205
- package/dist/running-operations-DCKvzlU7.js +107 -0
- package/dist/{same-json-value-C6kUaoyt.js → same-json-value-_AChwM_n.js} +41 -41
- package/dist/sqlite-engine.d.ts +7 -0
- package/dist/sqlite-engine.d.ts.map +1 -0
- package/dist/{engine.js → sqlite-engine.js} +4136 -4075
- package/dist/sqlite.d.ts +27 -2
- package/dist/sqlite.d.ts.map +1 -1
- package/dist/sqlite.js +1118 -917
- package/dist/store/in-memory/in-memory-state.constants.d.ts +14 -0
- package/dist/store/in-memory/in-memory-state.constants.d.ts.map +1 -0
- package/dist/store/in-memory/in-memory-state.d.ts +0 -4
- package/dist/store/in-memory/in-memory-state.d.ts.map +1 -1
- package/dist/store/in-memory/in-memory-store.d.ts.map +1 -1
- package/dist/store/in-memory/types.d.ts +1 -2
- package/dist/store/in-memory/types.d.ts.map +1 -1
- package/dist/store/index.d.ts +2 -1
- package/dist/store/index.d.ts.map +1 -1
- package/dist/store/lost-write.d.ts +8 -8
- package/dist/store/lost-write.d.ts.map +1 -1
- package/dist/store/lost-write.types.d.ts +1 -1
- package/dist/store/lost-write.types.d.ts.map +1 -1
- package/dist/store/{engine/project-key.d.ts → project-key.d.ts} +0 -5
- package/dist/store/project-key.d.ts.map +1 -0
- package/dist/store/resolve-store.d.ts +6 -18
- package/dist/store/resolve-store.d.ts.map +1 -1
- package/dist/store/sqlite/adapter/in-process-link.constants.d.ts +12 -0
- package/dist/store/sqlite/adapter/in-process-link.constants.d.ts.map +1 -0
- package/dist/store/sqlite/adapter/in-process-link.d.ts +1 -1
- package/dist/store/sqlite/adapter/in-process-link.d.ts.map +1 -1
- package/dist/store/sqlite/adapter/sqlite-connector.d.ts +12 -11
- package/dist/store/sqlite/adapter/sqlite-connector.d.ts.map +1 -1
- package/dist/store/sqlite/adapter/sqlite-connector.types.d.ts +7 -0
- package/dist/store/sqlite/adapter/sqlite-connector.types.d.ts.map +1 -0
- package/dist/store/sqlite/adapter/sqlite-hub-spawner.d.ts +8 -3
- package/dist/store/sqlite/adapter/sqlite-hub-spawner.d.ts.map +1 -1
- package/dist/store/sqlite/adapter/sqlite-hub-spawner.types.d.ts +12 -1
- package/dist/store/sqlite/adapter/sqlite-hub-spawner.types.d.ts.map +1 -1
- package/dist/store/sqlite/adapter/sqlite-worker-connector.d.ts +2 -2
- package/dist/store/sqlite/adapter/sqlite-worker-connector.d.ts.map +1 -1
- package/dist/store/sqlite/adapter/sqlite-worker-connector.types.d.ts +1 -1
- package/dist/store/sqlite/adapter/sqlite-worker-connector.types.d.ts.map +1 -1
- package/dist/store/sqlite/engine/engine.types.d.ts +2 -2
- package/dist/store/sqlite/engine/engine.types.d.ts.map +1 -1
- package/dist/store/sqlite/engine/schema.d.ts.map +1 -1
- package/dist/store/sqlite/engine/sqlite-engine.d.ts.map +1 -1
- package/dist/store/{hub-public.d.ts → sqlite/hub-public.d.ts} +9 -9
- package/dist/store/sqlite/hub-public.d.ts.map +1 -0
- package/dist/store/sqlite/packaging/engine-packaging.constants.d.ts +15 -0
- package/dist/store/sqlite/packaging/engine-packaging.constants.d.ts.map +1 -0
- package/dist/store/sqlite/runtime/engine-control-loop.d.ts +11 -0
- package/dist/store/sqlite/runtime/engine-control-loop.d.ts.map +1 -0
- package/dist/store/sqlite/runtime/install-pool.d.ts +1 -1
- package/dist/store/sqlite/runtime/install-pool.d.ts.map +1 -1
- package/dist/store/sqlite/runtime/progress-beat.d.ts +1 -1
- package/dist/store/sqlite/runtime/progress-beat.d.ts.map +1 -1
- package/dist/store/sqlite/runtime/runtime.types.d.ts +4 -2
- package/dist/store/sqlite/runtime/runtime.types.d.ts.map +1 -1
- package/dist/store/sqlite/runtime/serve-sqlite-engine.d.ts +9 -0
- package/dist/store/sqlite/runtime/serve-sqlite-engine.d.ts.map +1 -0
- package/dist/store/sqlite/runtime/serve-sqlite-engine.types.d.ts +27 -0
- package/dist/store/sqlite/runtime/serve-sqlite-engine.types.d.ts.map +1 -0
- package/dist/store/sqlite/served/client/check-engine-wire.d.ts.map +1 -0
- package/dist/store/{engine → sqlite/served}/client/client.constants.d.ts +3 -3
- package/dist/store/sqlite/served/client/client.constants.d.ts.map +1 -0
- package/dist/store/{engine → sqlite/served}/client/client.types.d.ts +13 -8
- package/dist/store/sqlite/served/client/client.types.d.ts.map +1 -0
- package/dist/store/{engine → sqlite/served}/client/engine-client.d.ts +1 -1
- package/dist/store/sqlite/served/client/engine-client.d.ts.map +1 -0
- package/dist/store/sqlite/served/client/engine-control.d.ts.map +1 -0
- package/dist/store/sqlite/served/client/heartbeat-watch.d.ts.map +1 -0
- package/dist/store/{engine → sqlite/served}/client/hub-connector.d.ts +1 -1
- package/dist/store/sqlite/served/client/hub-connector.d.ts.map +1 -0
- package/dist/store/{engine → sqlite/served}/client/hub-connector.types.d.ts +6 -7
- package/dist/store/sqlite/served/client/hub-connector.types.d.ts.map +1 -0
- package/dist/store/sqlite/served/client/worker-connector.d.ts.map +1 -0
- package/dist/store/sqlite/served/creation-refusal.d.ts.map +1 -0
- package/dist/store/sqlite/served/dialecte-refusal.d.ts +19 -0
- package/dist/store/sqlite/served/dialecte-refusal.d.ts.map +1 -0
- package/dist/store/sqlite/served/engine-lock.d.ts +6 -0
- package/dist/store/sqlite/served/engine-lock.d.ts.map +1 -0
- package/dist/store/sqlite/served/engine-store.constants.d.ts +3 -0
- package/dist/store/sqlite/served/engine-store.constants.d.ts.map +1 -0
- package/dist/store/{engine → sqlite/served}/engine-store.d.ts +6 -6
- package/dist/store/sqlite/served/engine-store.d.ts.map +1 -0
- package/dist/store/sqlite/served/engine-store.types.d.ts.map +1 -0
- package/dist/store/sqlite/served/engine.constants.d.ts.map +1 -0
- package/dist/store/{engine → sqlite/served}/engine.types.d.ts +2 -4
- package/dist/store/sqlite/served/engine.types.d.ts.map +1 -0
- package/dist/store/sqlite/served/host/changed.d.ts +5 -0
- package/dist/store/sqlite/served/host/changed.d.ts.map +1 -0
- package/dist/store/sqlite/served/host/engine-wire.d.ts.map +1 -0
- package/dist/store/{engine → sqlite/served}/host/heartbeat.d.ts +1 -1
- package/dist/store/sqlite/served/host/heartbeat.d.ts.map +1 -0
- package/dist/store/sqlite/served/host/host.constants.d.ts.map +1 -0
- package/dist/store/{engine → sqlite/served}/host/host.types.d.ts +4 -3
- package/dist/store/sqlite/served/host/host.types.d.ts.map +1 -0
- package/dist/store/sqlite/served/host/store-events.constants.d.ts +9 -0
- package/dist/store/sqlite/served/host/store-events.constants.d.ts.map +1 -0
- package/dist/store/sqlite/served/host/store-events.d.ts.map +1 -0
- package/dist/store/sqlite/served/hub/hub-client.constants.d.ts.map +1 -0
- package/dist/store/sqlite/served/hub/hub-client.d.ts.map +1 -0
- package/dist/store/{engine → sqlite/served}/hub/hub-client.types.d.ts +2 -9
- package/dist/store/sqlite/served/hub/hub-client.types.d.ts.map +1 -0
- package/dist/store/sqlite/served/hub/hub-protocol.types.d.ts.map +1 -0
- package/dist/store/sqlite/served/hub/hub-router.d.ts.map +1 -0
- package/dist/store/sqlite/served/hub/hub-shell.d.ts.map +1 -0
- package/dist/store/sqlite/served/hub/hub-shell.types.d.ts.map +1 -0
- package/dist/store/{engine → sqlite/served}/hub/hub.constants.d.ts +3 -3
- package/dist/store/sqlite/served/hub/hub.constants.d.ts.map +1 -0
- package/dist/store/{engine → sqlite/served}/hub/hub.types.d.ts +2 -2
- package/dist/store/sqlite/served/hub/hub.types.d.ts.map +1 -0
- package/dist/store/sqlite/served/hub/hub.worker.d.ts.map +1 -0
- package/dist/store/sqlite/served/hub/realm-host.d.ts.map +1 -0
- package/dist/store/{engine → sqlite/served}/hub/realm-host.types.d.ts +3 -3
- package/dist/store/sqlite/served/hub/realm-host.types.d.ts.map +1 -0
- package/dist/store/sqlite/served/wire/error-envelope.d.ts.map +1 -0
- package/dist/store/sqlite/served/wire/wire-values.d.ts.map +1 -0
- package/dist/store/sqlite/served/wire/wire.constants.d.ts.map +1 -0
- package/dist/store/{engine → sqlite/served}/wire/wire.types.d.ts +1 -1
- package/dist/store/sqlite/served/wire/wire.types.d.ts.map +1 -0
- package/dist/store/sqlite/sqlite-connector-params.d.ts +13 -0
- package/dist/store/sqlite/sqlite-connector-params.d.ts.map +1 -0
- package/dist/store/sqlite/sqlite-engine-registration.d.ts +30 -0
- package/dist/store/sqlite/sqlite-engine-registration.d.ts.map +1 -0
- package/dist/store/sqlite/sqlite-error-entry.d.ts +10 -0
- package/dist/store/sqlite/sqlite-error-entry.d.ts.map +1 -0
- package/dist/store/sqlite/sqlite-errors.constants.d.ts +110 -0
- package/dist/store/sqlite/sqlite-errors.constants.d.ts.map +1 -0
- package/dist/store/sqlite/sqlite-errors.types.d.ts +7 -0
- package/dist/store/sqlite/sqlite-errors.types.d.ts.map +1 -0
- package/dist/store/sqlite/sqlite-storage-kind.constants.d.ts +10 -0
- package/dist/store/sqlite/sqlite-storage-kind.constants.d.ts.map +1 -0
- package/dist/store/sqlite/sqlite-storage-kind.d.ts +3 -0
- package/dist/store/sqlite/sqlite-storage-kind.d.ts.map +1 -0
- package/dist/store/sqlite/sqlite-storage.constants.d.ts +24 -0
- package/dist/store/sqlite/sqlite-storage.constants.d.ts.map +1 -0
- package/dist/store/sqlite/sqlite-storage.types.d.ts +27 -0
- package/dist/store/sqlite/sqlite-storage.types.d.ts.map +1 -0
- package/dist/store/sqlite/sqlite-store-of.d.ts +8 -3
- package/dist/store/sqlite/sqlite-store-of.d.ts.map +1 -1
- package/dist/store/storage-kinds.constants.d.ts +16 -0
- package/dist/store/storage-kinds.constants.d.ts.map +1 -0
- package/dist/store/storage-kinds.d.ts +43 -0
- package/dist/store/storage-kinds.d.ts.map +1 -0
- package/dist/store/storage-kinds.types.d.ts +46 -0
- package/dist/store/storage-kinds.types.d.ts.map +1 -0
- package/dist/store/store.types.d.ts +6 -4
- package/dist/store/store.types.d.ts.map +1 -1
- package/dist/test/create-test-dialecte.constants.d.ts +4 -0
- package/dist/test/create-test-dialecte.constants.d.ts.map +1 -0
- package/dist/test/create-test-dialecte.d.ts.map +1 -1
- package/dist/test/test-storage/index.d.ts +1 -1
- package/dist/test/test-storage/index.d.ts.map +1 -1
- package/dist/test/test-storage/sqlite-test-store.d.ts +15 -0
- package/dist/test/test-storage/sqlite-test-store.d.ts.map +1 -0
- package/dist/test/test-storage/test-storage.types.d.ts +12 -0
- package/dist/test/test-storage/test-storage.types.d.ts.map +1 -1
- package/dist/test/test-storage/test-store-for.d.ts +18 -6
- package/dist/test/test-storage/test-store-for.d.ts.map +1 -1
- package/dist/test/test-storage/test-store-providers.constants.d.ts +8 -0
- package/dist/test/test-storage/test-store-providers.constants.d.ts.map +1 -0
- package/dist/test/test-storage/test-store-providers.d.ts +11 -0
- package/dist/test/test-storage/test-store-providers.d.ts.map +1 -0
- package/dist/test.js +797 -763
- package/dist/{utils-USNkj4sT.js → utils-Cv4oHia0.js} +63 -137
- package/dist/utils.js +1 -1
- package/package.json +1 -5
- package/skills/dialecte/references/api.json +88 -61
- package/skills/dialecte/references/api.md +461 -459
- package/skills/dialecte/references/core-api.md +42 -15
- package/dist/assets/hub.worker-B1HcVDhn.js +0 -2
- package/dist/engine.constants-DBMjMmV9.js +0 -98
- package/dist/engine.d.ts +0 -9
- package/dist/engine.d.ts.map +0 -1
- package/dist/running-operations-vnijBvn7.js +0 -76
- package/dist/store/engine/client/check-engine-wire.d.ts.map +0 -1
- package/dist/store/engine/client/client.constants.d.ts.map +0 -1
- package/dist/store/engine/client/client.types.d.ts.map +0 -1
- package/dist/store/engine/client/engine-client.d.ts.map +0 -1
- package/dist/store/engine/client/engine-control.d.ts.map +0 -1
- package/dist/store/engine/client/heartbeat-watch.d.ts.map +0 -1
- package/dist/store/engine/client/hub-connector.d.ts.map +0 -1
- package/dist/store/engine/client/hub-connector.types.d.ts.map +0 -1
- package/dist/store/engine/client/worker-connector.d.ts.map +0 -1
- package/dist/store/engine/creation-refusal.d.ts.map +0 -1
- package/dist/store/engine/dialecte-refusal.d.ts +0 -18
- package/dist/store/engine/dialecte-refusal.d.ts.map +0 -1
- package/dist/store/engine/engine-store.d.ts.map +0 -1
- package/dist/store/engine/engine-store.types.d.ts.map +0 -1
- package/dist/store/engine/engine.constants.d.ts.map +0 -1
- package/dist/store/engine/engine.types.d.ts.map +0 -1
- package/dist/store/engine/host/engine-wire.d.ts.map +0 -1
- package/dist/store/engine/host/heartbeat.d.ts.map +0 -1
- package/dist/store/engine/host/host.constants.d.ts.map +0 -1
- package/dist/store/engine/host/host.types.d.ts.map +0 -1
- package/dist/store/engine/host/store-events.d.ts.map +0 -1
- package/dist/store/engine/hub/hub-client.constants.d.ts.map +0 -1
- package/dist/store/engine/hub/hub-client.d.ts.map +0 -1
- package/dist/store/engine/hub/hub-client.types.d.ts.map +0 -1
- package/dist/store/engine/hub/hub-protocol.types.d.ts.map +0 -1
- package/dist/store/engine/hub/hub-router.d.ts.map +0 -1
- package/dist/store/engine/hub/hub-shell.d.ts.map +0 -1
- package/dist/store/engine/hub/hub-shell.types.d.ts.map +0 -1
- package/dist/store/engine/hub/hub.constants.d.ts.map +0 -1
- package/dist/store/engine/hub/hub.types.d.ts.map +0 -1
- package/dist/store/engine/hub/hub.worker.d.ts.map +0 -1
- package/dist/store/engine/hub/realm-host.d.ts.map +0 -1
- package/dist/store/engine/hub/realm-host.types.d.ts.map +0 -1
- package/dist/store/engine/project-key.d.ts.map +0 -1
- package/dist/store/engine/wire/error-envelope.d.ts.map +0 -1
- package/dist/store/engine/wire/wire-values.d.ts.map +0 -1
- package/dist/store/engine/wire/wire.constants.d.ts.map +0 -1
- package/dist/store/engine/wire/wire.types.d.ts.map +0 -1
- package/dist/store/hub-public.d.ts.map +0 -1
- package/dist/store/sqlite/runtime/serve-dialecte-engine.d.ts +0 -16
- package/dist/store/sqlite/runtime/serve-dialecte-engine.d.ts.map +0 -1
- package/dist/store/sqlite-storage.constants.d.ts +0 -14
- package/dist/store/sqlite-storage.constants.d.ts.map +0 -1
- package/dist/store/sqlite-storage.d.ts +0 -22
- package/dist/store/sqlite-storage.d.ts.map +0 -1
- package/dist/store/sqlite-storage.types.d.ts +0 -24
- package/dist/store/sqlite-storage.types.d.ts.map +0 -1
- package/dist/test/test-dialecte.worker.d.ts +0 -2
- package/dist/test/test-dialecte.worker.d.ts.map +0 -1
- /package/dist/store/{engine → sqlite/served}/client/check-engine-wire.d.ts +0 -0
- /package/dist/store/{engine → sqlite/served}/client/engine-control.d.ts +0 -0
- /package/dist/store/{engine → sqlite/served}/client/heartbeat-watch.d.ts +0 -0
- /package/dist/store/{engine → sqlite/served}/client/worker-connector.d.ts +0 -0
- /package/dist/store/{engine → sqlite/served}/creation-refusal.d.ts +0 -0
- /package/dist/store/{engine → sqlite/served}/engine-store.types.d.ts +0 -0
- /package/dist/store/{engine → sqlite/served}/engine.constants.d.ts +0 -0
- /package/dist/store/{engine → sqlite/served}/host/engine-wire.d.ts +0 -0
- /package/dist/store/{engine → sqlite/served}/host/host.constants.d.ts +0 -0
- /package/dist/store/{engine → sqlite/served}/host/store-events.d.ts +0 -0
- /package/dist/store/{engine → sqlite/served}/hub/hub-client.constants.d.ts +0 -0
- /package/dist/store/{engine → sqlite/served}/hub/hub-client.d.ts +0 -0
- /package/dist/store/{engine → sqlite/served}/hub/hub-protocol.types.d.ts +0 -0
- /package/dist/store/{engine → sqlite/served}/hub/hub-router.d.ts +0 -0
- /package/dist/store/{engine → sqlite/served}/hub/hub-shell.d.ts +0 -0
- /package/dist/store/{engine → sqlite/served}/hub/hub-shell.types.d.ts +0 -0
- /package/dist/store/{engine → sqlite/served}/hub/hub.worker.d.ts +0 -0
- /package/dist/store/{engine → sqlite/served}/hub/realm-host.d.ts +0 -0
- /package/dist/store/{engine → sqlite/served}/wire/error-envelope.d.ts +0 -0
- /package/dist/store/{engine → sqlite/served}/wire/wire-values.d.ts +0 -0
- /package/dist/store/{engine → sqlite/served}/wire/wire.constants.d.ts +0 -0
|
@@ -1,147 +1,42 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { T as
|
|
5
|
-
import
|
|
6
|
-
// src/store/engine/host/store-events.ts
|
|
7
|
-
var Ce = {
|
|
8
|
-
registerDocument: function({ args: e }) {
|
|
9
|
-
return {
|
|
10
|
-
type: "init-empty-document",
|
|
11
|
-
documentId: e[0].id
|
|
12
|
-
};
|
|
13
|
-
},
|
|
14
|
-
updateDocument: function({ args: e, value: t }) {
|
|
15
|
-
return B({ value: t }) ? {
|
|
16
|
-
type: "document-updated",
|
|
17
|
-
documentId: e[0]
|
|
18
|
-
} : void 0;
|
|
19
|
-
},
|
|
20
|
-
removeDocument: function({ args: e, value: t }) {
|
|
21
|
-
return B({ value: t }) ? {
|
|
22
|
-
type: "document-removed",
|
|
23
|
-
documentId: e[0]
|
|
24
|
-
} : void 0;
|
|
25
|
-
},
|
|
26
|
-
bulkWrite: function({ args: e, value: t }) {
|
|
27
|
-
return B({ value: t }) ? {
|
|
28
|
-
type: "commit",
|
|
29
|
-
documentId: e[0]
|
|
30
|
-
} : void 0;
|
|
31
|
-
},
|
|
32
|
-
commit: function({ args: e }) {
|
|
33
|
-
return {
|
|
34
|
-
type: "commit",
|
|
35
|
-
documentId: e[0].documentId
|
|
36
|
-
};
|
|
37
|
-
},
|
|
38
|
-
undo: function({ args: e, value: t }) {
|
|
39
|
-
return B({ value: t }) ? {
|
|
40
|
-
type: "commit",
|
|
41
|
-
documentId: e[0]
|
|
42
|
-
} : void 0;
|
|
43
|
-
},
|
|
44
|
-
redo: function({ args: e, value: t }) {
|
|
45
|
-
return B({ value: t }) ? {
|
|
46
|
-
type: "commit",
|
|
47
|
-
documentId: e[0]
|
|
48
|
-
} : void 0;
|
|
49
|
-
},
|
|
50
|
-
importFile: function({ value: e }) {
|
|
51
|
-
return {
|
|
52
|
-
type: "document-imported",
|
|
53
|
-
documentId: e.record.id
|
|
54
|
-
};
|
|
55
|
-
},
|
|
56
|
-
addBlob: function({ args: e }) {
|
|
57
|
-
let t = e[0];
|
|
58
|
-
return {
|
|
59
|
-
type: "blob-added",
|
|
60
|
-
blobId: t.id,
|
|
61
|
-
documentId: t.documentId
|
|
62
|
-
};
|
|
63
|
-
},
|
|
64
|
-
attachBlob: function({ args: e, value: t }) {
|
|
65
|
-
if (B({ value: t })) return {
|
|
66
|
-
type: "blob-attached",
|
|
67
|
-
blobId: e[0],
|
|
68
|
-
ref: e[1]
|
|
69
|
-
};
|
|
70
|
-
},
|
|
71
|
-
detachBlob: function({ args: e, value: t }) {
|
|
72
|
-
if (B({ value: t })) return {
|
|
73
|
-
type: "blob-detached",
|
|
74
|
-
blobId: e[0],
|
|
75
|
-
ref: e[1]
|
|
76
|
-
};
|
|
77
|
-
},
|
|
78
|
-
removeBlob: function({ args: e, value: t }) {
|
|
79
|
-
return B({ value: t }) ? {
|
|
80
|
-
type: "blob-removed",
|
|
81
|
-
blobId: e[0]
|
|
82
|
-
} : void 0;
|
|
83
|
-
}
|
|
84
|
-
};
|
|
85
|
-
function B(e) {
|
|
86
|
-
return e.value !== !1;
|
|
87
|
-
}
|
|
88
|
-
function we(e) {
|
|
89
|
-
let { member: t, args: n, value: r, connectionId: i } = e, a = Ce[t]?.({
|
|
90
|
-
args: n,
|
|
91
|
-
value: r
|
|
92
|
-
});
|
|
93
|
-
if (!a) return;
|
|
94
|
-
let o = Te({ args: n });
|
|
95
|
-
return {
|
|
96
|
-
type: fe.event,
|
|
97
|
-
message: {
|
|
98
|
-
...a,
|
|
99
|
-
timestamp: Date.now()
|
|
100
|
-
},
|
|
101
|
-
connectionId: i,
|
|
102
|
-
...o !== void 0 && { writeId: o }
|
|
103
|
-
};
|
|
104
|
-
}
|
|
105
|
-
function Te(e) {
|
|
106
|
-
let [t] = e.args;
|
|
107
|
-
if (typeof t != "object" || !t || !("writeId" in t)) return;
|
|
108
|
-
let { writeId: n } = t;
|
|
109
|
-
return typeof n == "string" ? n : void 0;
|
|
110
|
-
}
|
|
1
|
+
import { A as e, D as t, E as n, F as r, G as i, H as a, L as o, M as s, N as c, P as l, R as u, S as d, T as f, U as p, W as m, d as ee, h as te, n as ne, p as re, r as ie, t as ae, w as h, z as g } from "./project-key-2ccZ-0gu.js";
|
|
2
|
+
import { G as oe, V as se, W as _, f as ce } from "./utils-Cv4oHia0.js";
|
|
3
|
+
import { D as v, E as y, O as b, S as x, _ as S, a as le, b as C, c as ue, d as w, f as T, g as E, h as D, i as de, l as O, m as k, n as A, o as fe, p as j, r as pe, s as M, t as me, u as N, v as P, w as he, x as F, y as ge } from "./engine.constants-Bi4gw6BR.js";
|
|
4
|
+
import { T as _e, d as ve, i as ye, m as I, n as L, o as R, p as be, r as xe, t as Se, u as Ce } from "./same-json-value-_AChwM_n.js";
|
|
5
|
+
import we from "@sqlite.org/sqlite-wasm";
|
|
111
6
|
// src/store/sqlite/sqlite.constants.ts
|
|
112
|
-
var
|
|
7
|
+
var Te = {
|
|
113
8
|
opfs: !0,
|
|
114
9
|
"opfs-vfs": !0,
|
|
115
10
|
"opfs-wl": !0
|
|
116
|
-
},
|
|
11
|
+
}, Ee = Object.keys({
|
|
117
12
|
typedArrayToString: !0,
|
|
118
13
|
typedArrayPart: !0,
|
|
119
14
|
allocCString: !0,
|
|
120
15
|
alloc: !0,
|
|
121
16
|
heap8u: !0
|
|
122
|
-
}),
|
|
17
|
+
}), De = Symbol.for("dialecte.sqlite.losslessText");
|
|
123
18
|
// src/store/sqlite/sqlite-text.ts
|
|
124
|
-
function
|
|
19
|
+
function Oe(e) {
|
|
125
20
|
let { sqlite3: t } = e;
|
|
126
|
-
if (
|
|
127
|
-
let n =
|
|
21
|
+
if (ke({ sqlite3: t })) return;
|
|
22
|
+
let n = je({ sqlite3: t }), r = new TextDecoder("utf-8", { ignoreBOM: !0 }), i = n.allocCString;
|
|
128
23
|
Object.assign(t.wasm, {
|
|
129
24
|
typedArrayToString: function(e, t, i) {
|
|
130
25
|
return r.decode(n.typedArrayPart(e, t, i));
|
|
131
26
|
},
|
|
132
27
|
allocCString: function(e, t) {
|
|
133
|
-
return typeof e != "string" || e.isWellFormed() ? i(e, t) :
|
|
28
|
+
return typeof e != "string" || e.isWellFormed() ? i(e, t) : Me({
|
|
134
29
|
wasm: n,
|
|
135
|
-
bytes:
|
|
30
|
+
bytes: Ae({ text: e }),
|
|
136
31
|
returnWithLength: t
|
|
137
32
|
});
|
|
138
33
|
}
|
|
139
|
-
}), Object.defineProperty(t.wasm,
|
|
34
|
+
}), Object.defineProperty(t.wasm, De, { value: !0 });
|
|
140
35
|
}
|
|
141
|
-
function
|
|
142
|
-
return e.sqlite3.wasm[
|
|
36
|
+
function ke(e) {
|
|
37
|
+
return e.sqlite3.wasm[De] === !0;
|
|
143
38
|
}
|
|
144
|
-
function
|
|
39
|
+
function Ae(e) {
|
|
145
40
|
let { text: t } = e, n = [];
|
|
146
41
|
for (let e = 0; e < t.length; e++) {
|
|
147
42
|
let r = t.codePointAt(e);
|
|
@@ -149,29 +44,29 @@ function je(e) {
|
|
|
149
44
|
}
|
|
150
45
|
return Uint8Array.from(n);
|
|
151
46
|
}
|
|
152
|
-
function
|
|
153
|
-
let { sqlite3: t } = e, n = t.wasm, r =
|
|
47
|
+
function je(e) {
|
|
48
|
+
let { sqlite3: t } = e, n = t.wasm, r = Ee.filter(function(e) {
|
|
154
49
|
return typeof n[e] != "function";
|
|
155
50
|
});
|
|
156
|
-
if (r.length > 0) throw
|
|
51
|
+
if (r.length > 0) throw se("ASSERTION_FAILED", { detail: `sqlite-wasm's wasm utilities lack ${r.join(", ")} (SQLite ${t.version?.libVersion ?? "unknown"}): not the sqlite-wasm build core pins, its text codec cannot be made lossless` });
|
|
157
52
|
return n;
|
|
158
53
|
}
|
|
159
|
-
function
|
|
54
|
+
function Me(e) {
|
|
160
55
|
let { wasm: t, bytes: n, returnWithLength: r } = e, i = t.alloc(n.length + 1), a = t.heap8u();
|
|
161
56
|
return a.set(n, i), a[i + n.length] = 0, r ? [i, n.length] : i;
|
|
162
57
|
}
|
|
163
58
|
// src/store/sqlite/engine/blobs.ts
|
|
164
|
-
function
|
|
59
|
+
function Ne(e) {
|
|
165
60
|
let { db: t, entry: n, type: r, bytes: i } = e;
|
|
166
61
|
t.exec({
|
|
167
|
-
sql: `INSERT OR REPLACE INTO ${
|
|
62
|
+
sql: `INSERT OR REPLACE INTO ${d} (id, documentId, entry) VALUES (?, ?, ?)`,
|
|
168
63
|
bind: [
|
|
169
64
|
n.id,
|
|
170
65
|
n.documentId,
|
|
171
66
|
JSON.stringify(n)
|
|
172
67
|
]
|
|
173
68
|
}), t.exec({
|
|
174
|
-
sql: `INSERT OR REPLACE INTO ${
|
|
69
|
+
sql: `INSERT OR REPLACE INTO ${F} (id, type, bytes) VALUES (?, ?, ?)`,
|
|
175
70
|
bind: [
|
|
176
71
|
n.id,
|
|
177
72
|
r,
|
|
@@ -179,8 +74,8 @@ function Pe(e) {
|
|
|
179
74
|
]
|
|
180
75
|
});
|
|
181
76
|
}
|
|
182
|
-
function
|
|
183
|
-
let { db: t, blobId: n } = e, [r] = t.selectArrays(`SELECT b.entry, d.type, d.bytes FROM ${
|
|
77
|
+
function Pe(e) {
|
|
78
|
+
let { db: t, blobId: n } = e, [r] = t.selectArrays(`SELECT b.entry, d.type, d.bytes FROM ${d} b JOIN ${F} d ON d.id = b.id WHERE b.id = ?`, [n]);
|
|
184
79
|
if (!r) return;
|
|
185
80
|
let [i, a, o] = r;
|
|
186
81
|
return {
|
|
@@ -189,78 +84,78 @@ function Fe(e) {
|
|
|
189
84
|
bytes: o instanceof Uint8Array ? o : /* @__PURE__ */ new Uint8Array()
|
|
190
85
|
};
|
|
191
86
|
}
|
|
192
|
-
function
|
|
193
|
-
let { db: t, blobId: n } = e, r = t.selectValue(`SELECT entry FROM ${
|
|
87
|
+
function Fe(e) {
|
|
88
|
+
let { db: t, blobId: n } = e, r = t.selectValue(`SELECT entry FROM ${d} WHERE id = ?`, [n]);
|
|
194
89
|
return r === void 0 ? void 0 : JSON.parse(String(r));
|
|
195
90
|
}
|
|
196
|
-
function
|
|
91
|
+
function Ie(e) {
|
|
197
92
|
let { db: t, entry: n } = e;
|
|
198
93
|
t.exec({
|
|
199
|
-
sql: `UPDATE ${
|
|
94
|
+
sql: `UPDATE ${d} SET entry = ? WHERE id = ?`,
|
|
200
95
|
bind: [JSON.stringify(n), n.id]
|
|
201
96
|
});
|
|
202
97
|
}
|
|
203
|
-
function
|
|
98
|
+
function Le(e) {
|
|
204
99
|
let { db: t, filter: n } = e;
|
|
205
|
-
return (n === "standalone" ? t.selectValues(`SELECT entry FROM ${
|
|
100
|
+
return (n === "standalone" ? t.selectValues(`SELECT entry FROM ${d} WHERE json_array_length(entry, '$.attachedTo') = 0`) : t.selectValues(`SELECT entry FROM ${d} b WHERE EXISTS (SELECT 1 FROM json_each(b.entry, '$.attachedTo') a WHERE a.value->>'documentId' = ? AND (? IS NULL OR a.value->>'recordRef' = ?))`, [
|
|
206
101
|
n.documentId,
|
|
207
102
|
n.recordRef ?? null,
|
|
208
103
|
n.recordRef ?? null
|
|
209
|
-
])).map((e) => JSON.parse(String(e))).sort(
|
|
104
|
+
])).map((e) => JSON.parse(String(e))).sort(L);
|
|
210
105
|
}
|
|
211
|
-
function
|
|
106
|
+
function Re(e) {
|
|
212
107
|
let { db: t, blobId: n } = e;
|
|
213
108
|
t.exec({
|
|
214
|
-
sql: `DELETE FROM ${
|
|
109
|
+
sql: `DELETE FROM ${F} WHERE id = ?`,
|
|
215
110
|
bind: [n]
|
|
216
111
|
}), t.exec({
|
|
217
|
-
sql: `DELETE FROM ${
|
|
112
|
+
sql: `DELETE FROM ${d} WHERE id = ?`,
|
|
218
113
|
bind: [n]
|
|
219
114
|
});
|
|
220
115
|
}
|
|
221
|
-
function
|
|
116
|
+
function ze(e) {
|
|
222
117
|
let { db: t, documentId: n } = e;
|
|
223
118
|
t.exec({
|
|
224
|
-
sql: `DELETE FROM ${
|
|
119
|
+
sql: `DELETE FROM ${F} WHERE id IN (SELECT id FROM ${d} WHERE documentId = ?)`,
|
|
225
120
|
bind: [n]
|
|
226
121
|
}), t.exec({
|
|
227
|
-
sql: `DELETE FROM ${
|
|
122
|
+
sql: `DELETE FROM ${d} WHERE documentId = ?`,
|
|
228
123
|
bind: [n]
|
|
229
124
|
});
|
|
230
125
|
}
|
|
231
126
|
// src/store/sqlite/engine/bulk-insert.ts
|
|
232
|
-
function
|
|
233
|
-
return
|
|
127
|
+
function Be(e) {
|
|
128
|
+
return l({ value: e.records }), Ve({ records: e.records });
|
|
234
129
|
}
|
|
235
|
-
function
|
|
130
|
+
function Ve(e) {
|
|
236
131
|
let { records: t } = e, n = [];
|
|
237
|
-
for (let e = 0; e < t.length; e +=
|
|
238
|
-
let r = t.slice(e, e +
|
|
132
|
+
for (let e = 0; e < t.length; e += P) {
|
|
133
|
+
let r = t.slice(e, e + P).map((e) => We({ record: e }));
|
|
239
134
|
n.push(JSON.stringify(r));
|
|
240
135
|
}
|
|
241
136
|
return { payloads: n };
|
|
242
137
|
}
|
|
243
|
-
function
|
|
244
|
-
let { db: t, table: n, rows: r, lead:
|
|
138
|
+
function He(e) {
|
|
139
|
+
let { db: t, table: n, rows: r, lead: i } = e;
|
|
245
140
|
if (r.payloads.length === 0) return;
|
|
246
|
-
let
|
|
141
|
+
let a = t.prepare(i ? `INSERT INTO ${n} (${[...i.columns, k].join(", ")}) SELECT ${[...i.columns.map(() => "?"), ...C].join(", ")} FROM json_each(?) e ORDER BY e.key` : `INSERT INTO ${n} (${k}) SELECT ${C.join(", ")} FROM json_each(?) e`);
|
|
247
142
|
try {
|
|
248
|
-
for (let e of r.payloads)
|
|
143
|
+
for (let e of r.payloads) a.bind([...i?.values ?? [], e]).stepReset();
|
|
249
144
|
} finally {
|
|
250
|
-
|
|
145
|
+
a.finalize();
|
|
251
146
|
}
|
|
252
147
|
}
|
|
253
|
-
function
|
|
148
|
+
function Ue(e) {
|
|
254
149
|
let { db: t, table: n, records: r, perf: i } = e;
|
|
255
|
-
|
|
150
|
+
He({
|
|
256
151
|
db: t,
|
|
257
152
|
table: n,
|
|
258
153
|
rows: i.time("import::encode", function() {
|
|
259
|
-
return
|
|
154
|
+
return Ve({ records: r });
|
|
260
155
|
})
|
|
261
156
|
});
|
|
262
157
|
}
|
|
263
|
-
function
|
|
158
|
+
function We(e) {
|
|
264
159
|
let { record: t } = e;
|
|
265
160
|
return [
|
|
266
161
|
t.id,
|
|
@@ -275,36 +170,36 @@ function Ge(e) {
|
|
|
275
170
|
];
|
|
276
171
|
}
|
|
277
172
|
// src/store/sqlite/engine/engine-errors.ts
|
|
278
|
-
function
|
|
173
|
+
function z(e) {
|
|
279
174
|
let { key: t, detail: n, work: r } = e;
|
|
280
175
|
try {
|
|
281
176
|
return r();
|
|
282
177
|
} catch (e) {
|
|
283
|
-
throw
|
|
178
|
+
throw Ge({
|
|
284
179
|
key: t,
|
|
285
180
|
detail: n,
|
|
286
181
|
thrown: e
|
|
287
182
|
});
|
|
288
183
|
}
|
|
289
184
|
}
|
|
290
|
-
function
|
|
185
|
+
function Ge(e) {
|
|
291
186
|
let { key: t, detail: n, thrown: r } = e;
|
|
292
|
-
if (
|
|
187
|
+
if (oe(r)) return r;
|
|
293
188
|
let i = r instanceof Error ? r : Error(String(r));
|
|
294
|
-
return
|
|
189
|
+
return se(t, {
|
|
295
190
|
detail: `${n}: ${i.message}`,
|
|
296
191
|
cause: i
|
|
297
192
|
});
|
|
298
193
|
}
|
|
299
|
-
function
|
|
194
|
+
function B(e) {
|
|
300
195
|
let { detail: t, work: n } = e;
|
|
301
|
-
return
|
|
196
|
+
return z({
|
|
302
197
|
key: "STORE_READ_FAILED",
|
|
303
198
|
detail: `${t} could not be read`,
|
|
304
199
|
work: n
|
|
305
200
|
});
|
|
306
201
|
}
|
|
307
|
-
function
|
|
202
|
+
function Ke(e) {
|
|
308
203
|
let t = e.thrown;
|
|
309
204
|
for (let e = 0; typeof t == "object" && t && e < 8; e += 1) {
|
|
310
205
|
let e = t.resultCode;
|
|
@@ -313,30 +208,30 @@ function qe(e) {
|
|
|
313
208
|
}
|
|
314
209
|
}
|
|
315
210
|
// src/store/sqlite/engine/records.ts
|
|
211
|
+
function qe(e) {
|
|
212
|
+
let { db: t, table: n, id: r } = e, [i] = t.selectArrays(`SELECT ${k} FROM ${n} WHERE id = ?`, [r]);
|
|
213
|
+
return i ? H({ row: i }) : void 0;
|
|
214
|
+
}
|
|
316
215
|
function Je(e) {
|
|
317
|
-
let { db: t, table: n
|
|
318
|
-
return
|
|
216
|
+
let { db: t, table: n } = e;
|
|
217
|
+
return t.selectArrays(`SELECT ${k} FROM ${n}`).map((e) => H({ row: e })).sort(L);
|
|
319
218
|
}
|
|
320
219
|
function Ye(e) {
|
|
321
|
-
let { db: t, table: n } = e;
|
|
322
|
-
return t.selectArrays(`SELECT ${
|
|
220
|
+
let { db: t, table: n, tagName: r } = e;
|
|
221
|
+
return t.selectArrays(`SELECT ${k} FROM ${n} WHERE tagName = ?`, [r]).map((e) => H({ row: e })).sort(L);
|
|
323
222
|
}
|
|
324
223
|
function Xe(e) {
|
|
325
|
-
let { db: t, table: n,
|
|
326
|
-
return
|
|
224
|
+
let { db: t, table: n, ids: r } = e, i = t.selectArrays(`SELECT ${k} FROM ${n} WHERE id IN (SELECT value FROM json_each(?))`, [JSON.stringify(r)]);
|
|
225
|
+
return new Map(i.map((e) => [String(e[0]), H({ row: e })]));
|
|
327
226
|
}
|
|
328
227
|
function Ze(e) {
|
|
329
|
-
let { db: t, table: n
|
|
330
|
-
return new Map(i.map((e) => [String(e[0]), U({ row: e })]));
|
|
331
|
-
}
|
|
332
|
-
function Qe(e) {
|
|
333
|
-
let { db: t, table: n } = e, r = t.prepare(`SELECT ${f} FROM ${n} WHERE id IN (SELECT value FROM json_each(?))`);
|
|
228
|
+
let { db: t, table: n } = e, r = t.prepare(`SELECT ${k} FROM ${n} WHERE id IN (SELECT value FROM json_each(?))`);
|
|
334
229
|
return {
|
|
335
230
|
read: function(e) {
|
|
336
231
|
let t = /* @__PURE__ */ new Map();
|
|
337
232
|
try {
|
|
338
233
|
for (r.bind([JSON.stringify(e)]); r.step();) {
|
|
339
|
-
let e =
|
|
234
|
+
let e = H({ row: r.get([]) });
|
|
340
235
|
t.set(e.id, e);
|
|
341
236
|
}
|
|
342
237
|
} finally {
|
|
@@ -349,101 +244,101 @@ function Qe(e) {
|
|
|
349
244
|
}
|
|
350
245
|
};
|
|
351
246
|
}
|
|
352
|
-
function
|
|
247
|
+
function V(e) {
|
|
353
248
|
let { db: t, table: n, ids: r } = e;
|
|
354
249
|
return new Set(t.selectValues(`SELECT id FROM ${n} WHERE id IN (SELECT value FROM json_each(?))`, [JSON.stringify(r)]).map(String));
|
|
355
250
|
}
|
|
356
|
-
function
|
|
251
|
+
function Qe(e) {
|
|
357
252
|
return Number(e.db.selectValue(`SELECT count(*) FROM ${e.table}`));
|
|
358
253
|
}
|
|
359
|
-
function
|
|
254
|
+
function $e(e) {
|
|
360
255
|
let { db: t, table: n, documentId: r, creates: i } = e;
|
|
361
256
|
if (i.length === 0) return;
|
|
362
257
|
let a = i.map((e) => e.id);
|
|
363
|
-
|
|
258
|
+
et({
|
|
364
259
|
documentId: r,
|
|
365
260
|
ids: a,
|
|
366
|
-
heldIds:
|
|
261
|
+
heldIds: V({
|
|
367
262
|
db: t,
|
|
368
263
|
table: n,
|
|
369
264
|
ids: a
|
|
370
265
|
})
|
|
371
266
|
});
|
|
372
267
|
}
|
|
373
|
-
function
|
|
374
|
-
let { documentId: t, ids: n, heldIds: r } = e, i = /* @__PURE__ */ new Set(),
|
|
375
|
-
for (let e of n) r.has(e) &&
|
|
376
|
-
return (
|
|
268
|
+
function et(e) {
|
|
269
|
+
let { documentId: t, ids: n, heldIds: r } = e, i = /* @__PURE__ */ new Set(), o = [], s = [];
|
|
270
|
+
for (let e of n) r.has(e) && o.push(e), i.has(e) && s.push(e), i.add(e);
|
|
271
|
+
return (o.length > 0 || s.length > 0) && a({
|
|
377
272
|
documentId: t,
|
|
378
|
-
held:
|
|
379
|
-
repeated:
|
|
273
|
+
held: o,
|
|
274
|
+
repeated: s
|
|
380
275
|
}), i;
|
|
381
276
|
}
|
|
382
|
-
function
|
|
383
|
-
let { sqlite3: t, db: n, table: r, documentId: i, thrown:
|
|
384
|
-
if (
|
|
385
|
-
let
|
|
386
|
-
|
|
277
|
+
function tt(e) {
|
|
278
|
+
let { sqlite3: t, db: n, table: r, documentId: i, thrown: o } = e;
|
|
279
|
+
if (o?.resultCode !== t.capi.SQLITE_CONSTRAINT_UNIQUE) return;
|
|
280
|
+
let s = n.selectValues(`SELECT id FROM ${r} GROUP BY id HAVING count(*) > 1 LIMIT ?`, [100]).map(String);
|
|
281
|
+
a({
|
|
387
282
|
documentId: i,
|
|
388
283
|
held: [],
|
|
389
|
-
repeated:
|
|
390
|
-
cause:
|
|
284
|
+
repeated: s,
|
|
285
|
+
cause: o instanceof Error ? o : void 0
|
|
391
286
|
});
|
|
392
287
|
}
|
|
393
|
-
function
|
|
288
|
+
function nt(e) {
|
|
394
289
|
let { db: t, table: n, patches: r } = e;
|
|
395
290
|
if (r.length === 0) return;
|
|
396
291
|
let i = /* @__PURE__ */ new Set();
|
|
397
|
-
for (let e = 0; e < r.length; e +=
|
|
398
|
-
let a = r.slice(e, e +
|
|
399
|
-
for (let e of
|
|
292
|
+
for (let e = 0; e < r.length; e += P) {
|
|
293
|
+
let a = r.slice(e, e + P).map((e) => e.recordId);
|
|
294
|
+
for (let e of V({
|
|
400
295
|
db: t,
|
|
401
296
|
table: n,
|
|
402
297
|
ids: a
|
|
403
298
|
})) i.add(e);
|
|
404
299
|
}
|
|
405
|
-
|
|
300
|
+
rt({
|
|
406
301
|
patches: r,
|
|
407
302
|
held: i
|
|
408
303
|
});
|
|
409
304
|
}
|
|
410
|
-
function
|
|
305
|
+
function rt(e) {
|
|
411
306
|
let { patches: t, held: n } = e, r = t.filter((e) => n.has(e.recordId));
|
|
412
|
-
return
|
|
307
|
+
return l({ value: r }), r;
|
|
413
308
|
}
|
|
414
|
-
function
|
|
415
|
-
let { db: t, table:
|
|
416
|
-
if (
|
|
417
|
-
let
|
|
309
|
+
function it(e) {
|
|
310
|
+
let { db: t, table: n, patches: r } = e;
|
|
311
|
+
if (r.length === 0) return;
|
|
312
|
+
let i = t.prepare(`UPDATE ${n} SET ${S} FROM (SELECT ${ge} FROM json_each(?) e) AS u WHERE ${n}.id = u.c0`);
|
|
418
313
|
try {
|
|
419
|
-
for (let e = 0; e <
|
|
420
|
-
let
|
|
314
|
+
for (let e = 0; e < r.length; e += P) {
|
|
315
|
+
let a = r.slice(e, e + P), o = Xe({
|
|
421
316
|
db: t,
|
|
422
|
-
table:
|
|
423
|
-
ids:
|
|
317
|
+
table: n,
|
|
318
|
+
ids: a.map((e) => e.recordId)
|
|
424
319
|
}), s = /* @__PURE__ */ new Map();
|
|
425
|
-
for (let e of
|
|
320
|
+
for (let e of a) {
|
|
426
321
|
let t = s.get(e.recordId) ?? o.get(e.recordId);
|
|
427
|
-
t && s.set(e.recordId,
|
|
322
|
+
t && s.set(e.recordId, ve({
|
|
428
323
|
record: t,
|
|
429
324
|
patch: e
|
|
430
325
|
}));
|
|
431
326
|
}
|
|
432
|
-
let c =
|
|
433
|
-
for (let e of c.payloads)
|
|
327
|
+
let c = Ve({ records: [...s.values()] });
|
|
328
|
+
for (let e of c.payloads) i.bind([e]).stepReset();
|
|
434
329
|
}
|
|
435
330
|
} finally {
|
|
436
|
-
|
|
331
|
+
i.finalize();
|
|
437
332
|
}
|
|
438
333
|
}
|
|
439
|
-
function
|
|
334
|
+
function at(e) {
|
|
440
335
|
let { db: t, table: n, ids: r } = e;
|
|
441
336
|
return r.length === 0 ? 0 : (t.exec({
|
|
442
337
|
sql: `DELETE FROM ${n} WHERE id IN (SELECT value FROM json_each(?))`,
|
|
443
338
|
bind: [JSON.stringify(r)]
|
|
444
339
|
}), t.changes());
|
|
445
340
|
}
|
|
446
|
-
function
|
|
341
|
+
function H(e) {
|
|
447
342
|
let [t, n, r, i, a, o, s, c, l] = e.row;
|
|
448
343
|
return {
|
|
449
344
|
id: String(t),
|
|
@@ -462,120 +357,120 @@ function U(e) {
|
|
|
462
357
|
};
|
|
463
358
|
}
|
|
464
359
|
// src/store/sqlite/engine/history.ts
|
|
465
|
-
function
|
|
360
|
+
function ot(e) {
|
|
466
361
|
let { db: t, documentId: n, table: r, writeId: i } = e;
|
|
467
362
|
t.exec({
|
|
468
|
-
sql: `DELETE FROM ${r} WHERE entry IN (SELECT id FROM ${
|
|
469
|
-
bind: [n,
|
|
363
|
+
sql: `DELETE FROM ${r} WHERE entry IN (SELECT id FROM ${h} WHERE documentId = ? AND state = ?)`,
|
|
364
|
+
bind: [n, O.undone]
|
|
470
365
|
}), t.exec({
|
|
471
|
-
sql: `UPDATE ${
|
|
366
|
+
sql: `UPDATE ${h} SET state = ?, sequenceNumber = NULL WHERE documentId = ? AND state = ?`,
|
|
472
367
|
bind: [
|
|
473
|
-
|
|
368
|
+
O.discarded,
|
|
474
369
|
n,
|
|
475
|
-
|
|
370
|
+
O.undone
|
|
476
371
|
]
|
|
477
372
|
});
|
|
478
|
-
let a = Number(t.selectValue(`SELECT coalesce(max(sequenceNumber), 0) FROM ${
|
|
373
|
+
let a = Number(t.selectValue(`SELECT coalesce(max(sequenceNumber), 0) FROM ${h} WHERE documentId = ?`, [n]));
|
|
479
374
|
return t.exec({
|
|
480
|
-
sql: `INSERT INTO ${
|
|
375
|
+
sql: `INSERT INTO ${h} (documentId, sequenceNumber, timestamp, writeId, state) VALUES (?, ?, ?, ?, ?)`,
|
|
481
376
|
bind: [
|
|
482
377
|
n,
|
|
483
378
|
a + 1,
|
|
484
379
|
Date.now(),
|
|
485
380
|
i,
|
|
486
|
-
|
|
381
|
+
O.applied
|
|
487
382
|
]
|
|
488
383
|
}), { id: Number(t.selectValue("SELECT last_insert_rowid()")) };
|
|
489
384
|
}
|
|
490
|
-
function
|
|
385
|
+
function st(e) {
|
|
491
386
|
let { db: t, records: n, table: r, entry: i, part: a, ids: o } = e;
|
|
492
387
|
o.length !== 0 && t.exec({
|
|
493
|
-
sql: `INSERT INTO ${r} (entry, part, ${
|
|
388
|
+
sql: `INSERT INTO ${r} (entry, part, ${k}) SELECT ?, ?, ${D.map((e) => `t.${e}`).join(", ")} FROM json_each(?) j JOIN ${n} t ON t.id = j.value ORDER BY j.key`,
|
|
494
389
|
bind: [
|
|
495
390
|
i.id,
|
|
496
|
-
|
|
391
|
+
N[a],
|
|
497
392
|
JSON.stringify(o)
|
|
498
393
|
]
|
|
499
394
|
});
|
|
500
395
|
}
|
|
501
|
-
function
|
|
396
|
+
function ct(e) {
|
|
502
397
|
let { db: t, table: n, entry: r, part: i, rows: a } = e;
|
|
503
|
-
|
|
398
|
+
He({
|
|
504
399
|
db: t,
|
|
505
400
|
table: n,
|
|
506
401
|
rows: a,
|
|
507
402
|
lead: {
|
|
508
403
|
columns: ["entry", "part"],
|
|
509
|
-
values: [r.id,
|
|
404
|
+
values: [r.id, N[i]]
|
|
510
405
|
}
|
|
511
406
|
});
|
|
512
407
|
}
|
|
513
|
-
function
|
|
408
|
+
function lt(e) {
|
|
514
409
|
let { direction: t, ...n } = e;
|
|
515
|
-
return t === "forward" ?
|
|
410
|
+
return t === "forward" ? U({
|
|
516
411
|
...n,
|
|
517
412
|
part: "create"
|
|
518
|
-
}) +
|
|
413
|
+
}) + U({
|
|
519
414
|
...n,
|
|
520
415
|
part: "after"
|
|
521
|
-
}) -
|
|
416
|
+
}) - ut({
|
|
522
417
|
...n,
|
|
523
418
|
part: "delete"
|
|
524
|
-
}) :
|
|
419
|
+
}) : U({
|
|
525
420
|
...n,
|
|
526
421
|
part: "delete"
|
|
527
|
-
}) +
|
|
422
|
+
}) + U({
|
|
528
423
|
...n,
|
|
529
424
|
part: "before"
|
|
530
|
-
}) -
|
|
425
|
+
}) - ut({
|
|
531
426
|
...n,
|
|
532
427
|
part: "create"
|
|
533
428
|
});
|
|
534
429
|
}
|
|
535
|
-
function
|
|
536
|
-
let { db: t, records: n, table: r, entry: i, part: a } = e, o = [i.id,
|
|
430
|
+
function U(e) {
|
|
431
|
+
let { db: t, records: n, table: r, entry: i, part: a } = e, o = [i.id, N[a]], s = Number(t.selectValue(`SELECT count(DISTINCT h.id) FROM ${r} h WHERE h.entry = ? AND h.part = ? AND NOT EXISTS (SELECT 1 FROM ${n} t WHERE t.id = h.id)`, o));
|
|
537
432
|
return t.exec({
|
|
538
|
-
sql: `INSERT OR REPLACE INTO ${n} (${
|
|
433
|
+
sql: `INSERT OR REPLACE INTO ${n} (${k}) SELECT ${k} FROM ${r} WHERE entry = ? AND part = ? ORDER BY rowNo`,
|
|
539
434
|
bind: o
|
|
540
435
|
}), s;
|
|
541
436
|
}
|
|
542
|
-
function
|
|
437
|
+
function ut(e) {
|
|
543
438
|
let { db: t, records: n, table: r, entry: i, part: a } = e;
|
|
544
439
|
return t.exec({
|
|
545
440
|
sql: `DELETE FROM ${n} WHERE id IN (SELECT id FROM ${r} WHERE entry = ? AND part = ?)`,
|
|
546
|
-
bind: [i.id,
|
|
441
|
+
bind: [i.id, N[a]]
|
|
547
442
|
}), t.changes();
|
|
548
443
|
}
|
|
549
|
-
function
|
|
550
|
-
let { db: t, documentId: n } = e, r = t.selectValue(`SELECT id FROM ${
|
|
444
|
+
function dt(e) {
|
|
445
|
+
let { db: t, documentId: n } = e, r = t.selectValue(`SELECT id FROM ${h} WHERE documentId = ? AND state = ? ORDER BY sequenceNumber DESC LIMIT 1`, [n, O.applied]);
|
|
551
446
|
return r === void 0 ? void 0 : { id: Number(r) };
|
|
552
447
|
}
|
|
553
|
-
function
|
|
554
|
-
let { db: t, documentId: n } = e, r = t.selectValue(`SELECT id FROM ${
|
|
448
|
+
function ft(e) {
|
|
449
|
+
let { db: t, documentId: n } = e, r = t.selectValue(`SELECT id FROM ${h} WHERE documentId = ? AND state = ? ORDER BY sequenceNumber LIMIT 1`, [n, O.undone]);
|
|
555
450
|
return r === void 0 ? void 0 : { id: Number(r) };
|
|
556
451
|
}
|
|
557
|
-
function
|
|
452
|
+
function pt(e) {
|
|
558
453
|
let { db: t, entry: n, state: r } = e;
|
|
559
454
|
t.exec({
|
|
560
|
-
sql: `UPDATE ${
|
|
561
|
-
bind: [
|
|
455
|
+
sql: `UPDATE ${h} SET state = ? WHERE id = ?`,
|
|
456
|
+
bind: [O[r], n.id]
|
|
562
457
|
});
|
|
563
458
|
}
|
|
564
|
-
function
|
|
565
|
-
let { db: t, documentId: n } = e, r = `EXISTS (SELECT 1 FROM ${
|
|
459
|
+
function mt(e) {
|
|
460
|
+
let { db: t, documentId: n } = e, r = `EXISTS (SELECT 1 FROM ${h} WHERE documentId = ? AND state = ?)`, [i] = t.selectArrays(`SELECT ${r}, ${r}`, [
|
|
566
461
|
n,
|
|
567
|
-
|
|
462
|
+
O.applied,
|
|
568
463
|
n,
|
|
569
|
-
|
|
464
|
+
O.undone
|
|
570
465
|
]);
|
|
571
466
|
return {
|
|
572
467
|
canUndo: Number(i?.[0]) === 1,
|
|
573
468
|
canRedo: Number(i?.[1]) === 1
|
|
574
469
|
};
|
|
575
470
|
}
|
|
576
|
-
function
|
|
471
|
+
function ht(e) {
|
|
577
472
|
let { db: t, documentId: n, table: r } = e, i = /* @__PURE__ */ new Map(), a = /* @__PURE__ */ new Map(), o = /* @__PURE__ */ new Map();
|
|
578
|
-
for (let [e, r, s, c] of t.selectArrays(`SELECT id, sequenceNumber, timestamp, writeId FROM ${
|
|
473
|
+
for (let [e, r, s, c] of t.selectArrays(`SELECT id, sequenceNumber, timestamp, writeId FROM ${h} WHERE documentId = ? AND state != ? ORDER BY sequenceNumber`, [n, O.discarded])) i.set(Number(e), {
|
|
579
474
|
id: Number(e),
|
|
580
475
|
documentId: n,
|
|
581
476
|
sequenceNumber: Number(r),
|
|
@@ -588,11 +483,11 @@ function _t(e) {
|
|
|
588
483
|
}
|
|
589
484
|
}), a.set(Number(e), []), o.set(Number(e), []);
|
|
590
485
|
if (i.size === 0) return [];
|
|
591
|
-
for (let [e, n, ...s] of t.selectArrays(`SELECT entry, part, ${
|
|
486
|
+
for (let [e, n, ...s] of t.selectArrays(`SELECT entry, part, ${k} FROM ${r} ORDER BY rowNo`)) {
|
|
592
487
|
let t = i.get(Number(e));
|
|
593
488
|
if (!t) continue;
|
|
594
|
-
let r =
|
|
595
|
-
n ===
|
|
489
|
+
let r = H({ row: s });
|
|
490
|
+
n === N.create && t.operations.creates.push(r), n === N.before && a.get(t.id).push(r), n === N.after && o.get(t.id).push(r), n === N.delete && t.operations.deletes.push(r);
|
|
596
491
|
}
|
|
597
492
|
for (let e of i.values()) {
|
|
598
493
|
let t = o.get(e.id);
|
|
@@ -603,19 +498,19 @@ function _t(e) {
|
|
|
603
498
|
}
|
|
604
499
|
return [...i.values()];
|
|
605
500
|
}
|
|
606
|
-
function
|
|
501
|
+
function gt(e) {
|
|
607
502
|
let { db: t, writeId: n } = e;
|
|
608
|
-
return t.selectValue(`SELECT 1 FROM ${
|
|
503
|
+
return t.selectValue(`SELECT 1 FROM ${h} WHERE writeId = ? LIMIT 1`, [n]) !== void 0;
|
|
609
504
|
}
|
|
610
|
-
function
|
|
505
|
+
function _t(e) {
|
|
611
506
|
let { db: t, documentId: n, table: r } = e;
|
|
612
507
|
t.exec(`DROP TABLE ${r}`), t.exec({
|
|
613
|
-
sql: `DELETE FROM ${
|
|
508
|
+
sql: `DELETE FROM ${h} WHERE documentId = ?`,
|
|
614
509
|
bind: [n]
|
|
615
510
|
});
|
|
616
511
|
}
|
|
617
512
|
// src/store/sqlite/engine/transaction.ts
|
|
618
|
-
function
|
|
513
|
+
function W(e) {
|
|
619
514
|
let { sqlite3: t, db: n, work: r } = e;
|
|
620
515
|
n.exec("BEGIN IMMEDIATE");
|
|
621
516
|
try {
|
|
@@ -626,86 +521,86 @@ function G(e) {
|
|
|
626
521
|
}
|
|
627
522
|
}
|
|
628
523
|
// src/store/sqlite/engine/schema.ts
|
|
629
|
-
function
|
|
524
|
+
function vt(e) {
|
|
630
525
|
let { db: t, steadyCacheMiB: n } = e;
|
|
631
526
|
t.exec(`PRAGMA locking_mode=EXCLUSIVE; PRAGMA temp_store=MEMORY; PRAGMA journal_mode=TRUNCATE; PRAGMA synchronous=FULL; PRAGMA cache_size=${-n * 1024};`);
|
|
632
527
|
}
|
|
633
|
-
function
|
|
634
|
-
let { sqlite3: t, db:
|
|
635
|
-
return
|
|
528
|
+
function yt(e) {
|
|
529
|
+
let { sqlite3: t, db: r, dialecteId: i } = e, a = crypto.randomUUID();
|
|
530
|
+
return r.exec("PRAGMA auto_vacuum=INCREMENTAL"), W({
|
|
636
531
|
sqlite3: t,
|
|
637
|
-
db:
|
|
638
|
-
work:
|
|
639
|
-
}),
|
|
640
|
-
function
|
|
641
|
-
|
|
642
|
-
sql: `INSERT INTO ${
|
|
532
|
+
db: r,
|
|
533
|
+
work: o
|
|
534
|
+
}), a;
|
|
535
|
+
function o() {
|
|
536
|
+
r.exec(`CREATE TABLE ${n} (key TEXT PRIMARY KEY, value TEXT NOT NULL);CREATE TABLE ${f} (seq INTEGER PRIMARY KEY, ${G({ columns: fe })});CREATE TABLE ${h} (${G({ columns: de })});CREATE UNIQUE INDEX ${h}_sequence ON ${h}(documentId, sequenceNumber);CREATE INDEX ${h}_state ON ${h}(documentId, state, sequenceNumber);CREATE INDEX ${h}_writeId ON ${h}(writeId);CREATE TABLE ${d} (${G({ columns: A })});CREATE INDEX ${d}_documentId ON ${d}(documentId);CREATE TABLE ${F} (${G({ columns: pe })});`), r.exec({
|
|
537
|
+
sql: `INSERT INTO ${n} (key, value) VALUES (?, ?), (?, ?), (?, ?)`,
|
|
643
538
|
bind: [
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
539
|
+
T.dialecteId,
|
|
540
|
+
i,
|
|
541
|
+
T.layoutVersion,
|
|
647
542
|
"4",
|
|
648
|
-
|
|
649
|
-
|
|
543
|
+
T.creationId,
|
|
544
|
+
a
|
|
650
545
|
]
|
|
651
|
-
}),
|
|
546
|
+
}), r.exec(`PRAGMA application_id=${bt({ dialecteId: i })}`), r.exec("PRAGMA user_version=4");
|
|
652
547
|
}
|
|
653
548
|
}
|
|
654
|
-
function
|
|
655
|
-
let { offsetBasis: t, prime: n } =
|
|
549
|
+
function bt(e) {
|
|
550
|
+
let { offsetBasis: t, prime: n } = me, r = t;
|
|
656
551
|
for (let t of new TextEncoder().encode(e.dialecteId)) r = Math.imul(r ^ t, n);
|
|
657
552
|
return r | 0;
|
|
658
553
|
}
|
|
659
|
-
function
|
|
660
|
-
let { sqlite3:
|
|
661
|
-
if (
|
|
662
|
-
project:
|
|
663
|
-
expectedCreationId:
|
|
554
|
+
function xt(e) {
|
|
555
|
+
let { sqlite3: t, db: n, project: r, dialecteId: i, expectedCreationId: a, steadyCacheMiB: o } = e, s = Number(n.selectValue("PRAGMA user_version")), c = Number(n.selectValue("SELECT count(*) FROM sqlite_schema"));
|
|
556
|
+
if (s === 0 && c === 0) return v({
|
|
557
|
+
project: r,
|
|
558
|
+
expectedCreationId: a,
|
|
664
559
|
creationId: void 0
|
|
665
|
-
}),
|
|
666
|
-
db:
|
|
667
|
-
steadyCacheMiB:
|
|
668
|
-
}), { creationId:
|
|
669
|
-
sqlite3:
|
|
670
|
-
db:
|
|
671
|
-
dialecteId:
|
|
560
|
+
}), vt({
|
|
561
|
+
db: n,
|
|
562
|
+
steadyCacheMiB: o
|
|
563
|
+
}), { creationId: yt({
|
|
564
|
+
sqlite3: t,
|
|
565
|
+
db: n,
|
|
566
|
+
dialecteId: i
|
|
672
567
|
}) };
|
|
673
|
-
if (
|
|
674
|
-
let e =
|
|
675
|
-
return
|
|
676
|
-
project:
|
|
677
|
-
dialecteId:
|
|
568
|
+
if (s === 4) {
|
|
569
|
+
let e = St({ db: n });
|
|
570
|
+
return wt({
|
|
571
|
+
project: r,
|
|
572
|
+
dialecteId: i,
|
|
678
573
|
fileDialecteId: e.dialecteId
|
|
679
|
-
}),
|
|
680
|
-
project:
|
|
681
|
-
expectedCreationId:
|
|
574
|
+
}), v({
|
|
575
|
+
project: r,
|
|
576
|
+
expectedCreationId: a,
|
|
682
577
|
creationId: e.creationId
|
|
683
|
-
}),
|
|
684
|
-
db:
|
|
685
|
-
steadyCacheMiB:
|
|
578
|
+
}), vt({
|
|
579
|
+
db: n,
|
|
580
|
+
steadyCacheMiB: o
|
|
686
581
|
}), { creationId: e.creationId };
|
|
687
582
|
}
|
|
688
|
-
|
|
689
|
-
detail: `The project file is at layout ${
|
|
583
|
+
_(b.PROJECT_LAYOUT_OUTDATED, {
|
|
584
|
+
detail: `The project file is at layout ${s}, this library reads layout 4: delete the project and import its files again`,
|
|
690
585
|
meta: {
|
|
691
|
-
layoutVersion:
|
|
586
|
+
layoutVersion: s,
|
|
692
587
|
expectedLayoutVersion: 4
|
|
693
588
|
}
|
|
694
589
|
});
|
|
695
590
|
}
|
|
696
|
-
function
|
|
697
|
-
let t = e.db.selectObjects(`SELECT key, value FROM ${
|
|
591
|
+
function St(e) {
|
|
592
|
+
let t = e.db.selectObjects(`SELECT key, value FROM ${n}`), r = new Map(t.map(Ct));
|
|
698
593
|
return {
|
|
699
|
-
dialecteId:
|
|
700
|
-
creationId:
|
|
594
|
+
dialecteId: r.get(T.dialecteId) ?? "",
|
|
595
|
+
creationId: r.get(T.creationId) ?? ""
|
|
701
596
|
};
|
|
702
597
|
}
|
|
703
|
-
function
|
|
598
|
+
function Ct(e) {
|
|
704
599
|
return [e.key, e.value];
|
|
705
600
|
}
|
|
706
|
-
function
|
|
601
|
+
function wt(e) {
|
|
707
602
|
let { project: t, dialecteId: n, fileDialecteId: r } = e;
|
|
708
|
-
r !== n &&
|
|
603
|
+
r !== n && _("PROJECT_DIALECTE_MISMATCH", {
|
|
709
604
|
detail: `The file of "${t}" was stored by ${r || "no dialecte"}, this engine runs ${n}: nothing of it was written`,
|
|
710
605
|
meta: {
|
|
711
606
|
project: t,
|
|
@@ -714,71 +609,71 @@ function Et(e) {
|
|
|
714
609
|
}
|
|
715
610
|
});
|
|
716
611
|
}
|
|
717
|
-
function
|
|
612
|
+
function Tt(e) {
|
|
718
613
|
let { db: t, table: n } = e;
|
|
719
|
-
t.exec(`CREATE TABLE ${n} (${
|
|
614
|
+
t.exec(`CREATE TABLE ${n} (${G({ columns: j })})`);
|
|
720
615
|
}
|
|
721
|
-
function
|
|
616
|
+
function Et(e) {
|
|
722
617
|
let { db: t, table: n } = e;
|
|
723
|
-
t.exec(`CREATE TABLE ${n} (rowNo INTEGER PRIMARY KEY, entry INTEGER NOT NULL, part INTEGER NOT NULL, ${
|
|
618
|
+
t.exec(`CREATE TABLE ${n} (rowNo INTEGER PRIMARY KEY, entry INTEGER NOT NULL, part INTEGER NOT NULL, ${G({ columns: j })});CREATE INDEX ${n}_entry ON ${n}(entry, part);`);
|
|
724
619
|
}
|
|
725
|
-
function
|
|
726
|
-
let { db: t, table: n, index: r } = e, { column: i, unique: a } =
|
|
620
|
+
function Dt(e) {
|
|
621
|
+
let { db: t, table: n, index: r } = e, { column: i, unique: a } = E[r];
|
|
727
622
|
t.exec(`CREATE ${a ? "UNIQUE " : ""}INDEX ${n}_${r} ON ${n}(${i})`);
|
|
728
623
|
}
|
|
729
|
-
function
|
|
730
|
-
for (let t of Object.keys(
|
|
624
|
+
function Ot(e) {
|
|
625
|
+
for (let t of Object.keys(E)) Dt({
|
|
731
626
|
...e,
|
|
732
627
|
index: t
|
|
733
628
|
});
|
|
734
629
|
}
|
|
735
|
-
function
|
|
630
|
+
function G(e) {
|
|
736
631
|
return Object.entries(e.columns).map(([e, t]) => `${e} ${t}`).join(", ");
|
|
737
632
|
}
|
|
738
633
|
// src/store/sqlite/engine/registry.ts
|
|
739
|
-
function
|
|
634
|
+
function kt(e) {
|
|
740
635
|
let { db: t } = e;
|
|
741
|
-
|
|
636
|
+
Bt({
|
|
742
637
|
db: t,
|
|
743
638
|
documentId: e.document.id
|
|
744
|
-
}) !== void 0 &&
|
|
745
|
-
let n =
|
|
746
|
-
n.path !== void 0 &&
|
|
639
|
+
}) !== void 0 && u({ documentId: e.document.id });
|
|
640
|
+
let n = o({ value: e.document });
|
|
641
|
+
n.path !== void 0 && I({
|
|
747
642
|
document: n,
|
|
748
|
-
documents:
|
|
643
|
+
documents: zt({ db: t })
|
|
749
644
|
});
|
|
750
|
-
let r = Object.keys(
|
|
645
|
+
let r = Object.keys(fe).map(() => "?").join(", ");
|
|
751
646
|
t.exec({
|
|
752
|
-
sql: `INSERT INTO ${
|
|
753
|
-
bind:
|
|
647
|
+
sql: `INSERT INTO ${f} (${M}) VALUES (${r})`,
|
|
648
|
+
bind: Ut({ document: n })
|
|
754
649
|
});
|
|
755
|
-
let i = Number(t.selectValue("SELECT last_insert_rowid()")), a =
|
|
756
|
-
return
|
|
650
|
+
let i = Number(t.selectValue("SELECT last_insert_rowid()")), a = Vt({ seq: i });
|
|
651
|
+
return Tt({
|
|
757
652
|
db: t,
|
|
758
653
|
table: a
|
|
759
|
-
}),
|
|
654
|
+
}), Et({
|
|
760
655
|
db: t,
|
|
761
|
-
table:
|
|
656
|
+
table: Ht({ seq: i })
|
|
762
657
|
}), {
|
|
763
658
|
seq: i,
|
|
764
659
|
table: a
|
|
765
660
|
};
|
|
766
661
|
}
|
|
767
|
-
function
|
|
768
|
-
let { db: t, documentId: n } = e, [r] = t.selectArrays(`SELECT seq, status, writeId, createdAt FROM ${
|
|
662
|
+
function At(e) {
|
|
663
|
+
let { db: t, documentId: n } = e, [r] = t.selectArrays(`SELECT seq, status, writeId, createdAt FROM ${f} WHERE id = ?`, [n]);
|
|
769
664
|
if (!r) return;
|
|
770
665
|
let [i, a, o, s] = r;
|
|
771
666
|
return {
|
|
772
667
|
seq: Number(i),
|
|
773
|
-
status:
|
|
668
|
+
status: Kt({ value: a }),
|
|
774
669
|
writeId: o === null ? void 0 : String(o),
|
|
775
670
|
createdAt: Number(s)
|
|
776
671
|
};
|
|
777
672
|
}
|
|
778
|
-
function
|
|
673
|
+
function jt(e) {
|
|
779
674
|
let { db: t, documentId: n } = e;
|
|
780
675
|
return t.exec({
|
|
781
|
-
sql: `UPDATE ${
|
|
676
|
+
sql: `UPDATE ${f} SET status = ? WHERE id = ? AND status = ?`,
|
|
782
677
|
bind: [
|
|
783
678
|
"ready",
|
|
784
679
|
n,
|
|
@@ -786,103 +681,103 @@ function Nt(e) {
|
|
|
786
681
|
]
|
|
787
682
|
}), t.changes() === 1;
|
|
788
683
|
}
|
|
789
|
-
function
|
|
790
|
-
let { db: t, documentId: n } = e, [r] = t.selectArrays(`SELECT ${
|
|
791
|
-
return r ?
|
|
684
|
+
function Mt(e) {
|
|
685
|
+
let { db: t, documentId: n } = e, [r] = t.selectArrays(`SELECT ${M} FROM ${f} WHERE id = ?`, [n]);
|
|
686
|
+
return r ? Gt({ row: r }) : void 0;
|
|
792
687
|
}
|
|
793
|
-
function
|
|
794
|
-
return e.db.selectArrays(`SELECT ${
|
|
688
|
+
function Nt(e) {
|
|
689
|
+
return e.db.selectArrays(`SELECT ${M} FROM ${f}`).map((e) => Gt({ row: e })).sort(L);
|
|
795
690
|
}
|
|
796
|
-
function
|
|
797
|
-
let { db: t, documentId: n } = e, r =
|
|
691
|
+
function Pt(e) {
|
|
692
|
+
let { db: t, documentId: n } = e, r = o({ value: e.updates }), i = Mt({
|
|
798
693
|
db: t,
|
|
799
694
|
documentId: n
|
|
800
695
|
});
|
|
801
696
|
if (!i) return !1;
|
|
802
|
-
let a =
|
|
697
|
+
let a = be({
|
|
803
698
|
document: i,
|
|
804
699
|
updates: r
|
|
805
700
|
});
|
|
806
|
-
return a.path !== i.path &&
|
|
701
|
+
return a.path !== i.path && I({
|
|
807
702
|
document: a,
|
|
808
|
-
documents:
|
|
809
|
-
}),
|
|
703
|
+
documents: zt({ db: t })
|
|
704
|
+
}), Ft({
|
|
810
705
|
held: i,
|
|
811
706
|
updated: a
|
|
812
707
|
}) ? (t.exec({
|
|
813
|
-
sql: `UPDATE ${
|
|
708
|
+
sql: `UPDATE ${f} SET name = ?, metadata = ?, path = ? WHERE id = ?`,
|
|
814
709
|
bind: [
|
|
815
710
|
a.name,
|
|
816
|
-
|
|
711
|
+
Wt({ document: a }),
|
|
817
712
|
a.path ?? null,
|
|
818
713
|
n
|
|
819
714
|
]
|
|
820
715
|
}), !0) : !1;
|
|
821
716
|
}
|
|
822
|
-
function
|
|
717
|
+
function Ft(e) {
|
|
823
718
|
let { held: t, updated: n } = e;
|
|
824
|
-
return t.name !== n.name || t.path !== n.path || !
|
|
719
|
+
return t.name !== n.name || t.path !== n.path || !Se({
|
|
825
720
|
first: t.metadata,
|
|
826
721
|
second: n.metadata
|
|
827
722
|
});
|
|
828
723
|
}
|
|
829
|
-
function
|
|
830
|
-
let { db: t, documentId: n } = e, r =
|
|
724
|
+
function It(e) {
|
|
725
|
+
let { db: t, documentId: n } = e, r = Bt({
|
|
831
726
|
db: t,
|
|
832
727
|
documentId: n
|
|
833
728
|
});
|
|
834
|
-
return r !== void 0 && (
|
|
729
|
+
return r !== void 0 && (Rt({
|
|
835
730
|
db: t,
|
|
836
731
|
documentId: n,
|
|
837
732
|
seq: r
|
|
838
733
|
}), !0);
|
|
839
734
|
}
|
|
840
|
-
function
|
|
841
|
-
let t =
|
|
842
|
-
return t === void 0 ? void 0 :
|
|
735
|
+
function K(e) {
|
|
736
|
+
let t = Bt(e);
|
|
737
|
+
return t === void 0 ? void 0 : Vt({ seq: t });
|
|
843
738
|
}
|
|
844
|
-
function
|
|
845
|
-
let t =
|
|
739
|
+
function Lt(e) {
|
|
740
|
+
let t = At(e);
|
|
846
741
|
if (!t) return;
|
|
847
742
|
let { seq: n, status: r } = t;
|
|
848
743
|
return {
|
|
849
744
|
seq: n,
|
|
850
745
|
status: r,
|
|
851
|
-
records:
|
|
852
|
-
history:
|
|
746
|
+
records: Vt({ seq: n }),
|
|
747
|
+
history: Ht({ seq: n })
|
|
853
748
|
};
|
|
854
749
|
}
|
|
855
|
-
function
|
|
750
|
+
function Rt(e) {
|
|
856
751
|
let { db: t, documentId: n, seq: r } = e;
|
|
857
|
-
t.exec(`DROP TABLE ${
|
|
752
|
+
t.exec(`DROP TABLE ${Vt({ seq: r })}`), _t({
|
|
858
753
|
db: t,
|
|
859
754
|
documentId: n,
|
|
860
|
-
table:
|
|
861
|
-
}),
|
|
755
|
+
table: Ht({ seq: r })
|
|
756
|
+
}), ze({
|
|
862
757
|
db: t,
|
|
863
758
|
documentId: n
|
|
864
759
|
}), t.exec({
|
|
865
|
-
sql: `DELETE FROM ${
|
|
760
|
+
sql: `DELETE FROM ${f} WHERE seq = ?`,
|
|
866
761
|
bind: [r]
|
|
867
762
|
});
|
|
868
763
|
}
|
|
869
|
-
function
|
|
870
|
-
return e.db.selectArrays(`SELECT id, path FROM ${
|
|
764
|
+
function zt(e) {
|
|
765
|
+
return e.db.selectArrays(`SELECT id, path FROM ${f} WHERE path IS NOT NULL`).map(([e, t]) => ({
|
|
871
766
|
id: String(e),
|
|
872
767
|
path: String(t)
|
|
873
768
|
}));
|
|
874
769
|
}
|
|
875
|
-
function
|
|
876
|
-
let { db: t, documentId: n } = e, r = t.selectValue(`SELECT seq FROM ${
|
|
770
|
+
function Bt(e) {
|
|
771
|
+
let { db: t, documentId: n } = e, r = t.selectValue(`SELECT seq FROM ${f} WHERE id = ?`, [n]);
|
|
877
772
|
return r === void 0 ? void 0 : Number(r);
|
|
878
773
|
}
|
|
879
|
-
function
|
|
880
|
-
return `${
|
|
774
|
+
function Vt(e) {
|
|
775
|
+
return `${t}${e.seq}`;
|
|
881
776
|
}
|
|
882
|
-
function
|
|
883
|
-
return `${
|
|
777
|
+
function Ht(e) {
|
|
778
|
+
return `${x}${e.seq}`;
|
|
884
779
|
}
|
|
885
|
-
function
|
|
780
|
+
function Ut(e) {
|
|
886
781
|
let { document: t } = e;
|
|
887
782
|
return [
|
|
888
783
|
t.id,
|
|
@@ -890,131 +785,131 @@ function Gt(e) {
|
|
|
890
785
|
t.extension,
|
|
891
786
|
t.configKey,
|
|
892
787
|
t.createdAt,
|
|
893
|
-
|
|
788
|
+
Wt({ document: t }),
|
|
894
789
|
t.status,
|
|
895
790
|
t.writeId ?? null,
|
|
896
791
|
t.path ?? null
|
|
897
792
|
];
|
|
898
793
|
}
|
|
899
|
-
function
|
|
794
|
+
function Wt(e) {
|
|
900
795
|
let { metadata: t } = e.document;
|
|
901
796
|
return t === void 0 ? null : JSON.stringify(t);
|
|
902
797
|
}
|
|
903
|
-
function
|
|
798
|
+
function Gt(e) {
|
|
904
799
|
let [t, n, r, i, a, o, s, c, l] = e.row, u = {
|
|
905
800
|
id: String(t),
|
|
906
801
|
name: String(n),
|
|
907
802
|
extension: String(r),
|
|
908
803
|
configKey: String(i),
|
|
909
804
|
createdAt: Number(a),
|
|
910
|
-
status:
|
|
805
|
+
status: Kt({ value: s })
|
|
911
806
|
};
|
|
912
807
|
return o !== null && (u.metadata = JSON.parse(String(o))), c !== null && (u.writeId = String(c)), l !== null && (u.path = String(l)), u;
|
|
913
808
|
}
|
|
914
|
-
function
|
|
809
|
+
function Kt(e) {
|
|
915
810
|
return e.value === "importing" ? "importing" : "ready";
|
|
916
811
|
}
|
|
917
|
-
function
|
|
918
|
-
let { db: t } = e, n = t.selectArrays(`SELECT seq, id FROM ${
|
|
919
|
-
for (let [e, r] of n)
|
|
812
|
+
function qt(e) {
|
|
813
|
+
let { db: t } = e, n = t.selectArrays(`SELECT seq, id FROM ${f} WHERE status = ?`, ["importing"]);
|
|
814
|
+
for (let [e, r] of n) Rt({
|
|
920
815
|
db: t,
|
|
921
816
|
documentId: String(r),
|
|
922
817
|
seq: Number(e)
|
|
923
818
|
});
|
|
924
819
|
}
|
|
925
|
-
function
|
|
820
|
+
function Jt(e) {
|
|
926
821
|
let { db: t, writeId: n } = e;
|
|
927
|
-
return t.selectArrays(`SELECT ${
|
|
822
|
+
return t.selectArrays(`SELECT ${M} FROM ${f} WHERE writeId = ?`, [n]).map((e) => Gt({ row: e }));
|
|
928
823
|
}
|
|
929
824
|
// src/store/sqlite/engine/commit.ts
|
|
930
|
-
function
|
|
931
|
-
let { sqlite3: t, db: n, documentId:
|
|
932
|
-
detail: `Document "${
|
|
825
|
+
function Yt(e) {
|
|
826
|
+
let { sqlite3: t, db: n, documentId: i, writeId: a, creates: o, updates: s, deletes: c, settle: l } = e, u = B({
|
|
827
|
+
detail: `Document "${i}"`,
|
|
933
828
|
work: function() {
|
|
934
|
-
return
|
|
829
|
+
return Lt({
|
|
935
830
|
db: n,
|
|
936
|
-
documentId:
|
|
831
|
+
documentId: i
|
|
937
832
|
});
|
|
938
833
|
}
|
|
939
834
|
});
|
|
940
|
-
|
|
941
|
-
documentId:
|
|
835
|
+
u || g({
|
|
836
|
+
documentId: i,
|
|
942
837
|
what: "records"
|
|
943
|
-
}),
|
|
944
|
-
documentId:
|
|
838
|
+
}), u.status === "importing" && g({
|
|
839
|
+
documentId: i,
|
|
945
840
|
what: "a commit"
|
|
946
|
-
}),
|
|
947
|
-
detail: `The records to update in document "${
|
|
841
|
+
}), r({ writeId: a }), B({
|
|
842
|
+
detail: `The records to update in document "${i}"`,
|
|
948
843
|
work: function() {
|
|
949
|
-
|
|
844
|
+
Zt({
|
|
950
845
|
db: n,
|
|
951
|
-
table:
|
|
952
|
-
documentId:
|
|
953
|
-
ids:
|
|
846
|
+
table: u.records,
|
|
847
|
+
documentId: i,
|
|
848
|
+
ids: s.map(Qt)
|
|
954
849
|
});
|
|
955
850
|
}
|
|
956
851
|
});
|
|
957
|
-
let
|
|
958
|
-
|
|
959
|
-
detail: `The ids of document "${
|
|
852
|
+
let d = Be({ records: o });
|
|
853
|
+
B({
|
|
854
|
+
detail: `The ids of document "${i}"`,
|
|
960
855
|
work: function() {
|
|
961
|
-
|
|
856
|
+
$e({
|
|
962
857
|
db: n,
|
|
963
|
-
table:
|
|
964
|
-
documentId:
|
|
965
|
-
creates:
|
|
858
|
+
table: u.records,
|
|
859
|
+
documentId: i,
|
|
860
|
+
creates: o
|
|
966
861
|
});
|
|
967
862
|
}
|
|
968
863
|
});
|
|
969
|
-
let
|
|
970
|
-
return
|
|
864
|
+
let f = Be({ records: s });
|
|
865
|
+
return z({
|
|
971
866
|
key: "STORE_COMMIT_FAILED",
|
|
972
|
-
detail: `The commit on document "${
|
|
867
|
+
detail: `The commit on document "${i}" could not be written`,
|
|
973
868
|
work: function() {
|
|
974
|
-
return
|
|
869
|
+
return l(), W({
|
|
975
870
|
sqlite3: t,
|
|
976
871
|
db: n,
|
|
977
872
|
work: function() {
|
|
978
|
-
let e =
|
|
873
|
+
let e = ot({
|
|
979
874
|
db: n,
|
|
980
|
-
documentId:
|
|
981
|
-
table:
|
|
982
|
-
writeId:
|
|
875
|
+
documentId: i,
|
|
876
|
+
table: u.history,
|
|
877
|
+
writeId: a
|
|
983
878
|
}), t = {
|
|
984
879
|
db: n,
|
|
985
|
-
records:
|
|
986
|
-
table:
|
|
880
|
+
records: u.records,
|
|
881
|
+
table: u.history,
|
|
987
882
|
entry: e
|
|
988
883
|
};
|
|
989
|
-
|
|
884
|
+
st({
|
|
990
885
|
...t,
|
|
991
886
|
part: "before",
|
|
992
|
-
ids:
|
|
993
|
-
}),
|
|
887
|
+
ids: s.map(Qt)
|
|
888
|
+
}), ct({
|
|
994
889
|
db: n,
|
|
995
|
-
table:
|
|
890
|
+
table: u.history,
|
|
996
891
|
entry: e,
|
|
997
892
|
part: "create",
|
|
998
|
-
rows:
|
|
999
|
-
}),
|
|
893
|
+
rows: d
|
|
894
|
+
}), ct({
|
|
1000
895
|
db: n,
|
|
1001
|
-
table:
|
|
896
|
+
table: u.history,
|
|
1002
897
|
entry: e,
|
|
1003
898
|
part: "after",
|
|
1004
|
-
rows:
|
|
899
|
+
rows: f
|
|
1005
900
|
});
|
|
1006
|
-
let
|
|
901
|
+
let r = U({
|
|
1007
902
|
...t,
|
|
1008
903
|
part: "create"
|
|
1009
|
-
}) +
|
|
904
|
+
}) + U({
|
|
1010
905
|
...t,
|
|
1011
906
|
part: "after"
|
|
1012
907
|
});
|
|
1013
|
-
return
|
|
908
|
+
return st({
|
|
1014
909
|
...t,
|
|
1015
910
|
part: "delete",
|
|
1016
|
-
ids:
|
|
1017
|
-
}),
|
|
911
|
+
ids: c
|
|
912
|
+
}), r - ut({
|
|
1018
913
|
...t,
|
|
1019
914
|
part: "delete"
|
|
1020
915
|
});
|
|
@@ -1023,19 +918,19 @@ function Zt(e) {
|
|
|
1023
918
|
}
|
|
1024
919
|
});
|
|
1025
920
|
}
|
|
1026
|
-
function
|
|
1027
|
-
let { sqlite3: t, db: n, documentId: r, direction: i, settle: a } = e, o =
|
|
921
|
+
function Xt(e) {
|
|
922
|
+
let { sqlite3: t, db: n, documentId: r, direction: i, settle: a } = e, o = B({
|
|
1028
923
|
detail: `The history of document "${r}"`,
|
|
1029
924
|
work: function() {
|
|
1030
|
-
let e =
|
|
925
|
+
let e = Lt({
|
|
1031
926
|
db: n,
|
|
1032
927
|
documentId: r
|
|
1033
928
|
});
|
|
1034
929
|
if (!e) return;
|
|
1035
|
-
let t = i === "back" ?
|
|
930
|
+
let t = i === "back" ? dt({
|
|
1036
931
|
db: n,
|
|
1037
932
|
documentId: r
|
|
1038
|
-
}) :
|
|
933
|
+
}) : ft({
|
|
1039
934
|
db: n,
|
|
1040
935
|
documentId: r
|
|
1041
936
|
});
|
|
@@ -1047,22 +942,22 @@ function Qt(e) {
|
|
|
1047
942
|
});
|
|
1048
943
|
if (!o) return;
|
|
1049
944
|
let { tables: s, entry: c } = o;
|
|
1050
|
-
return
|
|
945
|
+
return z({
|
|
1051
946
|
key: "STORE_COMMIT_FAILED",
|
|
1052
947
|
detail: `The ${i === "back" ? "undo" : "redo"} on document "${r}" could not be written`,
|
|
1053
948
|
work: function() {
|
|
1054
|
-
return a(),
|
|
949
|
+
return a(), W({
|
|
1055
950
|
sqlite3: t,
|
|
1056
951
|
db: n,
|
|
1057
952
|
work: function() {
|
|
1058
|
-
let e =
|
|
953
|
+
let e = lt({
|
|
1059
954
|
db: n,
|
|
1060
955
|
records: s.records,
|
|
1061
956
|
table: s.history,
|
|
1062
957
|
entry: c,
|
|
1063
958
|
direction: i
|
|
1064
959
|
});
|
|
1065
|
-
return
|
|
960
|
+
return pt({
|
|
1066
961
|
db: n,
|
|
1067
962
|
entry: c,
|
|
1068
963
|
state: i === "forward" ? "applied" : "undone"
|
|
@@ -1072,55 +967,55 @@ function Qt(e) {
|
|
|
1072
967
|
}
|
|
1073
968
|
});
|
|
1074
969
|
}
|
|
1075
|
-
function
|
|
970
|
+
function Zt(e) {
|
|
1076
971
|
let { db: t, table: n, documentId: r, ids: i } = e;
|
|
1077
|
-
for (let e = 0; e < i.length; e +=
|
|
1078
|
-
let a = i.slice(e, e +
|
|
972
|
+
for (let e = 0; e < i.length; e += P) {
|
|
973
|
+
let a = i.slice(e, e + P), o = V({
|
|
1079
974
|
db: t,
|
|
1080
975
|
table: n,
|
|
1081
976
|
ids: a
|
|
1082
977
|
}), s = a.find((e) => !o.has(e));
|
|
1083
|
-
s !== void 0 &&
|
|
978
|
+
s !== void 0 && m({
|
|
1084
979
|
documentId: r,
|
|
1085
980
|
recordId: s
|
|
1086
981
|
});
|
|
1087
982
|
}
|
|
1088
983
|
}
|
|
1089
|
-
function
|
|
984
|
+
function Qt(e) {
|
|
1090
985
|
return e.id;
|
|
1091
986
|
}
|
|
1092
987
|
// src/store/sqlite/engine/device-cache.ts
|
|
1093
|
-
function
|
|
1094
|
-
let { deviceMemoryGiB: t = 4, rule: n =
|
|
1095
|
-
return Math.min(
|
|
988
|
+
function $t(e) {
|
|
989
|
+
let { deviceMemoryGiB: t = 4, rule: n = le.cacheRule } = e, { mibPerGiB: r, floorMiB: i, ceilingMiB: a } = n;
|
|
990
|
+
return Math.min(a, Math.max(i, Math.round(t * r)));
|
|
1096
991
|
}
|
|
1097
|
-
function
|
|
992
|
+
function en() {
|
|
1098
993
|
return globalThis.navigator?.deviceMemory;
|
|
1099
994
|
}
|
|
1100
995
|
// src/store/sqlite/engine/import-queue.ts
|
|
1101
|
-
function
|
|
996
|
+
function tn() {
|
|
1102
997
|
let e = [];
|
|
1103
998
|
return {
|
|
1104
999
|
run: function(t) {
|
|
1105
|
-
return
|
|
1000
|
+
return nn({
|
|
1106
1001
|
entries: e,
|
|
1107
1002
|
...t
|
|
1108
1003
|
});
|
|
1109
1004
|
},
|
|
1110
1005
|
abort: function({ writeId: t }) {
|
|
1111
|
-
|
|
1006
|
+
rn({
|
|
1112
1007
|
entries: e,
|
|
1113
1008
|
matches: (e) => e.writeId === t
|
|
1114
1009
|
});
|
|
1115
1010
|
},
|
|
1116
1011
|
abortOwnedBy: function({ clientId: t }) {
|
|
1117
|
-
|
|
1012
|
+
rn({
|
|
1118
1013
|
entries: e,
|
|
1119
1014
|
matches: (e) => e.clientId === t
|
|
1120
1015
|
});
|
|
1121
1016
|
},
|
|
1122
1017
|
abortAll: function() {
|
|
1123
|
-
|
|
1018
|
+
rn({
|
|
1124
1019
|
entries: e,
|
|
1125
1020
|
matches: () => !0
|
|
1126
1021
|
});
|
|
@@ -1136,7 +1031,7 @@ function rn() {
|
|
|
1136
1031
|
}
|
|
1137
1032
|
};
|
|
1138
1033
|
}
|
|
1139
|
-
async function
|
|
1034
|
+
async function nn(e) {
|
|
1140
1035
|
let { entries: t, writeId: n, clientId: r, work: i } = e, a = Promise.withResolvers(), o = {
|
|
1141
1036
|
writeId: n,
|
|
1142
1037
|
clientId: r,
|
|
@@ -1145,33 +1040,33 @@ async function an(e) {
|
|
|
1145
1040
|
registered: !1,
|
|
1146
1041
|
start: a.resolve
|
|
1147
1042
|
};
|
|
1148
|
-
t.push(o), t.length === 1 &&
|
|
1043
|
+
t.push(o), t.length === 1 && an({ entry: o });
|
|
1149
1044
|
try {
|
|
1150
1045
|
return await a.promise, await i(o.controller.signal);
|
|
1151
1046
|
} finally {
|
|
1152
|
-
|
|
1047
|
+
on({
|
|
1153
1048
|
entries: t,
|
|
1154
1049
|
entry: o
|
|
1155
1050
|
});
|
|
1156
1051
|
}
|
|
1157
1052
|
}
|
|
1158
|
-
function
|
|
1053
|
+
function rn(e) {
|
|
1159
1054
|
let { entries: t, matches: n } = e;
|
|
1160
|
-
for (let e of t.filter(n)) e.controller.abort(), e.hasTurn || (t.splice(t.indexOf(e), 1),
|
|
1055
|
+
for (let e of t.filter(n)) e.controller.abort(), e.hasTurn || (t.splice(t.indexOf(e), 1), an({ entry: e }));
|
|
1161
1056
|
}
|
|
1162
|
-
function
|
|
1057
|
+
function an(e) {
|
|
1163
1058
|
let { entry: t } = e;
|
|
1164
1059
|
t.hasTurn = !0, t.start();
|
|
1165
1060
|
}
|
|
1166
|
-
function
|
|
1061
|
+
function on(e) {
|
|
1167
1062
|
let { entries: t, entry: n } = e, r = t.indexOf(n);
|
|
1168
1063
|
if (r === -1) return;
|
|
1169
1064
|
t.splice(r, 1);
|
|
1170
1065
|
let i = t[0];
|
|
1171
|
-
i && !i.hasTurn &&
|
|
1066
|
+
i && !i.hasTurn && an({ entry: i });
|
|
1172
1067
|
}
|
|
1173
1068
|
// src/store/sqlite/engine/import-window.ts
|
|
1174
|
-
function
|
|
1069
|
+
function sn(e) {
|
|
1175
1070
|
let t = {
|
|
1176
1071
|
openedAt: void 0,
|
|
1177
1072
|
synchronousOff: !1,
|
|
@@ -1180,27 +1075,27 @@ function ln(e) {
|
|
|
1180
1075
|
};
|
|
1181
1076
|
return {
|
|
1182
1077
|
write: function(n) {
|
|
1183
|
-
return
|
|
1078
|
+
return cn({
|
|
1184
1079
|
params: e,
|
|
1185
1080
|
state: t
|
|
1186
1081
|
}), n();
|
|
1187
1082
|
},
|
|
1188
1083
|
commitIfDue: function() {
|
|
1189
|
-
return t.openedAt === void 0 || performance.now() - t.openedAt < e.windowMs ? !1 : (
|
|
1084
|
+
return t.openedAt === void 0 || performance.now() - t.openedAt < e.windowMs ? !1 : (q({
|
|
1190
1085
|
params: e,
|
|
1191
1086
|
state: t
|
|
1192
1087
|
}), !0);
|
|
1193
1088
|
},
|
|
1194
1089
|
alone: function(n) {
|
|
1195
|
-
|
|
1090
|
+
q({
|
|
1196
1091
|
params: e,
|
|
1197
1092
|
state: t
|
|
1198
|
-
}),
|
|
1093
|
+
}), cn({
|
|
1199
1094
|
params: e,
|
|
1200
1095
|
state: t
|
|
1201
1096
|
});
|
|
1202
1097
|
let r = n();
|
|
1203
|
-
return
|
|
1098
|
+
return q({
|
|
1204
1099
|
params: e,
|
|
1205
1100
|
state: t
|
|
1206
1101
|
}), r;
|
|
@@ -1208,26 +1103,26 @@ function ln(e) {
|
|
|
1208
1103
|
settle: function() {
|
|
1209
1104
|
let { sqlite3: n, db: r } = e;
|
|
1210
1105
|
try {
|
|
1211
|
-
|
|
1106
|
+
q({
|
|
1212
1107
|
params: e,
|
|
1213
1108
|
state: t
|
|
1214
1109
|
});
|
|
1215
1110
|
} catch (e) {
|
|
1216
1111
|
throw n.capi.sqlite3_get_autocommit(r) === 0 && r.exec("ROLLBACK"), t.openedAt = void 0, t.lost = e instanceof Error ? e : Error(String(e)), e;
|
|
1217
1112
|
}
|
|
1218
|
-
|
|
1113
|
+
un({
|
|
1219
1114
|
params: e,
|
|
1220
1115
|
state: t
|
|
1221
1116
|
});
|
|
1222
1117
|
},
|
|
1223
1118
|
finish: function() {
|
|
1224
|
-
|
|
1119
|
+
ln({ state: t }), q({
|
|
1225
1120
|
params: e,
|
|
1226
1121
|
state: t
|
|
1227
|
-
}),
|
|
1122
|
+
}), un({
|
|
1228
1123
|
params: e,
|
|
1229
1124
|
state: t
|
|
1230
|
-
}),
|
|
1125
|
+
}), dn({
|
|
1231
1126
|
params: e,
|
|
1232
1127
|
state: t
|
|
1233
1128
|
});
|
|
@@ -1241,10 +1136,10 @@ function ln(e) {
|
|
|
1241
1136
|
try {
|
|
1242
1137
|
n.capi.sqlite3_get_autocommit(r) === 0 && r.exec("COMMIT");
|
|
1243
1138
|
} finally {
|
|
1244
|
-
|
|
1139
|
+
dn({
|
|
1245
1140
|
params: e,
|
|
1246
1141
|
state: t
|
|
1247
|
-
}), n.capi.sqlite3_get_autocommit(r) !== 0 && (t.openedAt = void 0,
|
|
1142
|
+
}), n.capi.sqlite3_get_autocommit(r) !== 0 && (t.openedAt = void 0, un({
|
|
1248
1143
|
params: e,
|
|
1249
1144
|
state: t
|
|
1250
1145
|
}));
|
|
@@ -1253,38 +1148,38 @@ function ln(e) {
|
|
|
1253
1148
|
}
|
|
1254
1149
|
};
|
|
1255
1150
|
}
|
|
1256
|
-
function
|
|
1151
|
+
function cn(e) {
|
|
1257
1152
|
let { state: t } = e, { db: n, importCacheMiB: r } = e.params;
|
|
1258
|
-
|
|
1153
|
+
ln({ state: t }), t.openedAt === void 0 && (t.cacheRaised ||= (n.exec(`PRAGMA cache_size=${-r * 1024}`), !0), t.synchronousOff ||= (n.exec("PRAGMA synchronous=OFF"), !0), n.exec("BEGIN IMMEDIATE"), t.openedAt = performance.now());
|
|
1259
1154
|
}
|
|
1260
|
-
function
|
|
1155
|
+
function q(e) {
|
|
1261
1156
|
let { state: t } = e, { db: n, perf: r } = e.params;
|
|
1262
1157
|
t.openedAt !== void 0 && (r.time("import::commit", function() {
|
|
1263
1158
|
n.exec("COMMIT");
|
|
1264
1159
|
}), t.openedAt = void 0);
|
|
1265
1160
|
}
|
|
1266
|
-
function
|
|
1161
|
+
function ln(e) {
|
|
1267
1162
|
let { lost: t } = e.state;
|
|
1268
|
-
t &&
|
|
1163
|
+
t && _("STORE_COMMIT_FAILED", {
|
|
1269
1164
|
detail: `The import's records could not be committed: ${t.message}`,
|
|
1270
1165
|
cause: t
|
|
1271
1166
|
});
|
|
1272
1167
|
}
|
|
1273
|
-
function
|
|
1168
|
+
function un(e) {
|
|
1274
1169
|
let { state: t } = e;
|
|
1275
1170
|
t.synchronousOff &&= (e.params.db.exec("PRAGMA synchronous=FULL"), !1);
|
|
1276
1171
|
}
|
|
1277
|
-
function
|
|
1172
|
+
function dn(e) {
|
|
1278
1173
|
let { state: t } = e, { db: n, steadyCacheMiB: r } = e.params;
|
|
1279
1174
|
t.cacheRaised &&= (n.exec(`PRAGMA cache_size=${-r * 1024}`), !1);
|
|
1280
1175
|
}
|
|
1281
|
-
function
|
|
1176
|
+
function fn(e) {
|
|
1282
1177
|
try {
|
|
1283
1178
|
e.window.end();
|
|
1284
1179
|
} catch {}
|
|
1285
1180
|
}
|
|
1286
1181
|
// src/store/sqlite/engine/import-target.ts
|
|
1287
|
-
function
|
|
1182
|
+
function pn(e) {
|
|
1288
1183
|
let { sqlite3: t, db: n, signal: r, file: i, counts: a, removeDocument: o } = e, s = {
|
|
1289
1184
|
registered: void 0,
|
|
1290
1185
|
built: /* @__PURE__ */ new Set(),
|
|
@@ -1292,19 +1187,19 @@ function hn(e) {
|
|
|
1292
1187
|
};
|
|
1293
1188
|
return {
|
|
1294
1189
|
registerDocument: async function(o) {
|
|
1295
|
-
|
|
1190
|
+
R({
|
|
1296
1191
|
signal: r,
|
|
1297
1192
|
file: i
|
|
1298
1193
|
});
|
|
1299
|
-
let c =
|
|
1194
|
+
let c = z({
|
|
1300
1195
|
key: "STORE_COMMIT_FAILED",
|
|
1301
1196
|
detail: `Document "${o.id}" could not be registered`,
|
|
1302
1197
|
work: function() {
|
|
1303
|
-
return
|
|
1198
|
+
return W({
|
|
1304
1199
|
sqlite3: t,
|
|
1305
1200
|
db: n,
|
|
1306
1201
|
work: function() {
|
|
1307
|
-
return
|
|
1202
|
+
return kt({
|
|
1308
1203
|
db: n,
|
|
1309
1204
|
document: o
|
|
1310
1205
|
});
|
|
@@ -1320,13 +1215,13 @@ function hn(e) {
|
|
|
1320
1215
|
}, e.onRegistered(), a.set(o.id, 0);
|
|
1321
1216
|
},
|
|
1322
1217
|
getDocument: async function(e) {
|
|
1323
|
-
return
|
|
1218
|
+
return R({
|
|
1324
1219
|
signal: r,
|
|
1325
1220
|
file: i
|
|
1326
|
-
}),
|
|
1221
|
+
}), B({
|
|
1327
1222
|
detail: `Document "${e}"`,
|
|
1328
1223
|
work: function() {
|
|
1329
|
-
return
|
|
1224
|
+
return Mt({
|
|
1330
1225
|
db: n,
|
|
1331
1226
|
documentId: e
|
|
1332
1227
|
});
|
|
@@ -1334,7 +1229,7 @@ function hn(e) {
|
|
|
1334
1229
|
});
|
|
1335
1230
|
},
|
|
1336
1231
|
bulkWrite: async function(t, n) {
|
|
1337
|
-
await
|
|
1232
|
+
await mn({
|
|
1338
1233
|
params: e,
|
|
1339
1234
|
state: s,
|
|
1340
1235
|
documentId: t,
|
|
@@ -1342,12 +1237,12 @@ function hn(e) {
|
|
|
1342
1237
|
});
|
|
1343
1238
|
},
|
|
1344
1239
|
writeSession: async function(t, n) {
|
|
1345
|
-
s.built.has("id") || await
|
|
1240
|
+
s.built.has("id") || await xn({
|
|
1346
1241
|
params: e,
|
|
1347
1242
|
state: s,
|
|
1348
1243
|
documentId: t,
|
|
1349
1244
|
index: "id"
|
|
1350
|
-
}), await
|
|
1245
|
+
}), await mn({
|
|
1351
1246
|
params: e,
|
|
1352
1247
|
state: s,
|
|
1353
1248
|
documentId: t,
|
|
@@ -1355,13 +1250,13 @@ function hn(e) {
|
|
|
1355
1250
|
});
|
|
1356
1251
|
},
|
|
1357
1252
|
markReady: async function(t) {
|
|
1358
|
-
for (let n of Object.keys(
|
|
1253
|
+
for (let n of Object.keys(E)) s.built.has(n) || await xn({
|
|
1359
1254
|
params: e,
|
|
1360
1255
|
state: s,
|
|
1361
1256
|
documentId: t,
|
|
1362
1257
|
index: n
|
|
1363
1258
|
});
|
|
1364
|
-
|
|
1259
|
+
Sn({
|
|
1365
1260
|
params: e,
|
|
1366
1261
|
state: s,
|
|
1367
1262
|
documentId: t
|
|
@@ -1369,8 +1264,8 @@ function hn(e) {
|
|
|
1369
1264
|
},
|
|
1370
1265
|
removeDocument: async function(t) {
|
|
1371
1266
|
let { registered: r } = s;
|
|
1372
|
-
r?.documentId === t && n.isOpen() && (
|
|
1373
|
-
row:
|
|
1267
|
+
r?.documentId === t && n.isOpen() && (fn({ window: e.window }), hn({
|
|
1268
|
+
row: Tn({
|
|
1374
1269
|
db: n,
|
|
1375
1270
|
documentId: t
|
|
1376
1271
|
}),
|
|
@@ -1380,19 +1275,19 @@ function hn(e) {
|
|
|
1380
1275
|
}
|
|
1381
1276
|
};
|
|
1382
1277
|
}
|
|
1383
|
-
async function
|
|
1278
|
+
async function mn(e) {
|
|
1384
1279
|
let { state: t, documentId: n, ops: r } = e, { creates: i = [], updates: a = [], deletes: o = [] } = r;
|
|
1385
|
-
i.length > 0 && await
|
|
1280
|
+
i.length > 0 && await gn({
|
|
1386
1281
|
params: e.params,
|
|
1387
1282
|
state: t,
|
|
1388
1283
|
documentId: n,
|
|
1389
1284
|
creates: i
|
|
1390
|
-
}), (a.length !== 0 || o.length !== 0) && (t.built.has("id") || await
|
|
1285
|
+
}), (a.length !== 0 || o.length !== 0) && (t.built.has("id") || await xn({
|
|
1391
1286
|
params: e.params,
|
|
1392
1287
|
state: t,
|
|
1393
1288
|
documentId: n,
|
|
1394
1289
|
index: "id"
|
|
1395
|
-
}), await
|
|
1290
|
+
}), await _n({
|
|
1396
1291
|
params: e.params,
|
|
1397
1292
|
state: t,
|
|
1398
1293
|
documentId: n,
|
|
@@ -1400,100 +1295,100 @@ async function gn(e) {
|
|
|
1400
1295
|
deletes: o
|
|
1401
1296
|
}));
|
|
1402
1297
|
}
|
|
1403
|
-
function
|
|
1298
|
+
function J(e) {
|
|
1404
1299
|
let { state: t, documentId: n } = e, { db: r, signal: i, file: a } = e.params;
|
|
1405
|
-
|
|
1300
|
+
R({
|
|
1406
1301
|
signal: i,
|
|
1407
1302
|
file: a
|
|
1408
1303
|
});
|
|
1409
|
-
let { registered: o } = t, s =
|
|
1304
|
+
let { registered: o } = t, s = Tn({
|
|
1410
1305
|
db: r,
|
|
1411
1306
|
documentId: n
|
|
1412
1307
|
});
|
|
1413
|
-
return o &&
|
|
1308
|
+
return o && hn({
|
|
1414
1309
|
row: s,
|
|
1415
1310
|
registered: o,
|
|
1416
1311
|
documentId: n
|
|
1417
|
-
}) ||
|
|
1312
|
+
}) || g({
|
|
1418
1313
|
documentId: n,
|
|
1419
1314
|
what: "records"
|
|
1420
1315
|
}), o.table;
|
|
1421
1316
|
}
|
|
1422
|
-
function
|
|
1317
|
+
function hn(e) {
|
|
1423
1318
|
let { row: t, registered: n, documentId: r } = e;
|
|
1424
1319
|
return !t || !n || n.documentId !== r ? !1 : t.status === "importing" && t.seq === n.seq && t.writeId === n.writeId && t.createdAt === n.createdAt;
|
|
1425
1320
|
}
|
|
1426
|
-
async function
|
|
1427
|
-
let { state: t, documentId: n, creates: r } = e, { db: i, perf: a, counts: o, window: s } = e.params, c = `Records of document "${n}" could not be written`,
|
|
1321
|
+
async function gn(e) {
|
|
1322
|
+
let { state: t, documentId: n, creates: r } = e, { db: i, perf: a, counts: o, window: s } = e.params, c = `Records of document "${n}" could not be written`, u = J(e);
|
|
1428
1323
|
a.time("import::encode", function() {
|
|
1429
|
-
|
|
1430
|
-
}),
|
|
1324
|
+
l({ value: r });
|
|
1325
|
+
}), z({
|
|
1431
1326
|
key: "STORE_BULK_ADD_FAILED",
|
|
1432
1327
|
detail: c,
|
|
1433
1328
|
work: function() {
|
|
1434
|
-
|
|
1329
|
+
wn({
|
|
1435
1330
|
db: i,
|
|
1436
|
-
table:
|
|
1331
|
+
table: u,
|
|
1437
1332
|
state: t,
|
|
1438
1333
|
documentId: n,
|
|
1439
1334
|
creates: r
|
|
1440
1335
|
});
|
|
1441
1336
|
}
|
|
1442
1337
|
});
|
|
1443
|
-
for (let t = 0; t < r.length; t +=
|
|
1444
|
-
let
|
|
1445
|
-
|
|
1338
|
+
for (let t = 0; t < r.length; t += P) {
|
|
1339
|
+
let l = r.slice(t, t + P), d = t === 0 ? u : J(e);
|
|
1340
|
+
z({
|
|
1446
1341
|
key: "STORE_BULK_ADD_FAILED",
|
|
1447
1342
|
detail: c,
|
|
1448
1343
|
work: function() {
|
|
1449
1344
|
s.write(function() {
|
|
1450
|
-
|
|
1345
|
+
Ue({
|
|
1451
1346
|
db: i,
|
|
1452
1347
|
table: d,
|
|
1453
|
-
records:
|
|
1348
|
+
records: l,
|
|
1454
1349
|
perf: a
|
|
1455
1350
|
});
|
|
1456
1351
|
});
|
|
1457
1352
|
}
|
|
1458
|
-
}), o.set(n, (o.get(n) ?? 0) +
|
|
1353
|
+
}), o.set(n, (o.get(n) ?? 0) + l.length), await yn({
|
|
1459
1354
|
params: e.params,
|
|
1460
1355
|
documentId: n
|
|
1461
1356
|
});
|
|
1462
1357
|
}
|
|
1463
1358
|
}
|
|
1464
|
-
async function
|
|
1465
|
-
let { documentId: t, updates: n, deletes: r } = e, { db: i, counts: a, window: o } = e.params, s = `Records of document "${t}" could not be written`, c = await
|
|
1359
|
+
async function _n(e) {
|
|
1360
|
+
let { documentId: t, updates: n, deletes: r } = e, { db: i, counts: a, window: o } = e.params, s = `Records of document "${t}" could not be written`, c = await vn({
|
|
1466
1361
|
params: e.params,
|
|
1467
1362
|
state: e.state,
|
|
1468
1363
|
documentId: t,
|
|
1469
1364
|
updates: n
|
|
1470
1365
|
});
|
|
1471
|
-
for (let n = 0; n < c.length; n +=
|
|
1472
|
-
let r =
|
|
1473
|
-
|
|
1366
|
+
for (let n = 0; n < c.length; n += P) {
|
|
1367
|
+
let r = J(e), a = c.slice(n, n + P);
|
|
1368
|
+
z({
|
|
1474
1369
|
key: "STORE_BULK_UPDATE_FAILED",
|
|
1475
1370
|
detail: s,
|
|
1476
1371
|
work: function() {
|
|
1477
1372
|
o.write(function() {
|
|
1478
|
-
|
|
1373
|
+
it({
|
|
1479
1374
|
db: i,
|
|
1480
1375
|
table: r,
|
|
1481
1376
|
patches: a
|
|
1482
1377
|
});
|
|
1483
1378
|
});
|
|
1484
1379
|
}
|
|
1485
|
-
}), await
|
|
1380
|
+
}), await yn({
|
|
1486
1381
|
params: e.params,
|
|
1487
1382
|
documentId: t
|
|
1488
1383
|
});
|
|
1489
1384
|
}
|
|
1490
|
-
for (let n = 0; n < r.length; n +=
|
|
1491
|
-
let c =
|
|
1385
|
+
for (let n = 0; n < r.length; n += P) {
|
|
1386
|
+
let c = J(e), l = r.slice(n, n + P), u = z({
|
|
1492
1387
|
key: "STORE_DELETE_FAILED",
|
|
1493
1388
|
detail: s,
|
|
1494
1389
|
work: function() {
|
|
1495
1390
|
return o.write(function() {
|
|
1496
|
-
return
|
|
1391
|
+
return at({
|
|
1497
1392
|
db: i,
|
|
1498
1393
|
table: c,
|
|
1499
1394
|
ids: l
|
|
@@ -1501,62 +1396,62 @@ async function yn(e) {
|
|
|
1501
1396
|
});
|
|
1502
1397
|
}
|
|
1503
1398
|
});
|
|
1504
|
-
a.set(t, (a.get(t) ?? 0) - u), await
|
|
1399
|
+
a.set(t, (a.get(t) ?? 0) - u), await yn({
|
|
1505
1400
|
params: e.params,
|
|
1506
1401
|
documentId: t
|
|
1507
1402
|
});
|
|
1508
1403
|
}
|
|
1509
1404
|
}
|
|
1510
|
-
async function
|
|
1405
|
+
async function vn(e) {
|
|
1511
1406
|
let { documentId: t, updates: n } = e, { db: r, windowMs: i } = e.params, a = /* @__PURE__ */ new Set(), o = performance.now();
|
|
1512
|
-
for (let s = 0; s < n.length; s +=
|
|
1513
|
-
let c =
|
|
1514
|
-
for (let e of
|
|
1407
|
+
for (let s = 0; s < n.length; s += P) {
|
|
1408
|
+
let c = J(e), l = n.slice(s, s + P).map((e) => e.recordId);
|
|
1409
|
+
for (let e of B({
|
|
1515
1410
|
detail: `The records to patch in document "${t}"`,
|
|
1516
1411
|
work: function() {
|
|
1517
|
-
return
|
|
1412
|
+
return V({
|
|
1518
1413
|
db: r,
|
|
1519
1414
|
table: c,
|
|
1520
1415
|
ids: l
|
|
1521
1416
|
});
|
|
1522
1417
|
}
|
|
1523
1418
|
})) a.add(e);
|
|
1524
|
-
performance.now() - o >= i && (await
|
|
1419
|
+
performance.now() - o >= i && (await bn(), o = performance.now());
|
|
1525
1420
|
}
|
|
1526
|
-
return
|
|
1421
|
+
return rt({
|
|
1527
1422
|
patches: n,
|
|
1528
1423
|
held: a
|
|
1529
1424
|
});
|
|
1530
1425
|
}
|
|
1531
|
-
async function
|
|
1426
|
+
async function yn(e) {
|
|
1532
1427
|
let { documentId: t } = e, { window: n } = e.params;
|
|
1533
|
-
|
|
1428
|
+
z({
|
|
1534
1429
|
key: "STORE_COMMIT_FAILED",
|
|
1535
1430
|
detail: `Records of document "${t}" could not be committed`,
|
|
1536
1431
|
work: n.commitIfDue
|
|
1537
|
-
}) && await
|
|
1432
|
+
}) && await bn();
|
|
1538
1433
|
}
|
|
1539
|
-
function
|
|
1434
|
+
function bn() {
|
|
1540
1435
|
return new Promise((e) => setTimeout(e, 0));
|
|
1541
1436
|
}
|
|
1542
|
-
async function
|
|
1543
|
-
let { state: t, documentId: n, index: r } = e, { sqlite3: i, db: a, perf: o, window: s, tellPhase: c, onLongStatement: l } = e.params, u =
|
|
1437
|
+
async function xn(e) {
|
|
1438
|
+
let { state: t, documentId: n, index: r } = e, { sqlite3: i, db: a, perf: o, window: s, tellPhase: c, onLongStatement: l } = e.params, u = J(e);
|
|
1544
1439
|
c({ phase: "indexing" }), o.start("import::index");
|
|
1545
1440
|
try {
|
|
1546
|
-
|
|
1441
|
+
z({
|
|
1547
1442
|
key: "STORE_COMMIT_FAILED",
|
|
1548
1443
|
detail: `The ${r} index of document "${n}" could not be built`,
|
|
1549
1444
|
work: function() {
|
|
1550
1445
|
l({ work: function() {
|
|
1551
1446
|
s.alone(function() {
|
|
1552
1447
|
try {
|
|
1553
|
-
|
|
1448
|
+
Dt({
|
|
1554
1449
|
db: a,
|
|
1555
1450
|
table: u,
|
|
1556
1451
|
index: r
|
|
1557
1452
|
});
|
|
1558
1453
|
} catch (e) {
|
|
1559
|
-
throw
|
|
1454
|
+
throw tt({
|
|
1560
1455
|
sqlite3: i,
|
|
1561
1456
|
db: a,
|
|
1562
1457
|
table: u,
|
|
@@ -1571,66 +1466,66 @@ async function Cn(e) {
|
|
|
1571
1466
|
} finally {
|
|
1572
1467
|
o.stop("import::index");
|
|
1573
1468
|
}
|
|
1574
|
-
t.built.add(r), r === "id" && (t.givenIds = void 0), c({ phase: "storing" }), await
|
|
1469
|
+
t.built.add(r), r === "id" && (t.givenIds = void 0), c({ phase: "storing" }), await bn();
|
|
1575
1470
|
}
|
|
1576
|
-
function
|
|
1471
|
+
function Sn(e) {
|
|
1577
1472
|
let { documentId: t } = e, { sqlite3: n, db: r, window: i } = e.params;
|
|
1578
|
-
|
|
1473
|
+
J(e), z({
|
|
1579
1474
|
key: "STORE_COMMIT_FAILED",
|
|
1580
1475
|
detail: `Records of document "${t}" could not be committed`,
|
|
1581
1476
|
work: i.finish
|
|
1582
|
-
}),
|
|
1477
|
+
}), z({
|
|
1583
1478
|
key: "STORE_COMMIT_FAILED",
|
|
1584
1479
|
detail: `Document "${t}" could not be marked ready`,
|
|
1585
1480
|
work: function() {
|
|
1586
|
-
return
|
|
1481
|
+
return W({
|
|
1587
1482
|
sqlite3: n,
|
|
1588
1483
|
db: r,
|
|
1589
1484
|
work: function() {
|
|
1590
|
-
return
|
|
1485
|
+
return jt({
|
|
1591
1486
|
db: r,
|
|
1592
1487
|
documentId: t
|
|
1593
1488
|
});
|
|
1594
1489
|
}
|
|
1595
1490
|
});
|
|
1596
1491
|
}
|
|
1597
|
-
}) ||
|
|
1492
|
+
}) || g({
|
|
1598
1493
|
documentId: t,
|
|
1599
1494
|
what: "its ready state"
|
|
1600
1495
|
});
|
|
1601
1496
|
}
|
|
1602
|
-
function
|
|
1603
|
-
let { file:
|
|
1497
|
+
function Cn(t) {
|
|
1498
|
+
let { file: n, listener: r } = t, i = {
|
|
1604
1499
|
phase: "storing",
|
|
1605
1500
|
bytesRead: 0,
|
|
1606
|
-
totalBytes:
|
|
1501
|
+
totalBytes: n.size
|
|
1607
1502
|
};
|
|
1608
1503
|
return {
|
|
1609
|
-
onProgress: function(
|
|
1610
|
-
Object.assign(
|
|
1611
|
-
listener:
|
|
1612
|
-
value:
|
|
1613
|
-
of:
|
|
1614
|
-
call:
|
|
1504
|
+
onProgress: function(t) {
|
|
1505
|
+
Object.assign(i, t), s({
|
|
1506
|
+
listener: r,
|
|
1507
|
+
value: t,
|
|
1508
|
+
of: e.importProgress,
|
|
1509
|
+
call: i
|
|
1615
1510
|
});
|
|
1616
1511
|
},
|
|
1617
|
-
tellPhase: function({ phase:
|
|
1618
|
-
|
|
1619
|
-
listener:
|
|
1512
|
+
tellPhase: function({ phase: t }) {
|
|
1513
|
+
s({
|
|
1514
|
+
listener: r,
|
|
1620
1515
|
value: {
|
|
1621
|
-
...
|
|
1622
|
-
phase:
|
|
1516
|
+
...i,
|
|
1517
|
+
phase: t
|
|
1623
1518
|
},
|
|
1624
|
-
of:
|
|
1625
|
-
call:
|
|
1519
|
+
of: e.importProgress,
|
|
1520
|
+
call: i
|
|
1626
1521
|
});
|
|
1627
1522
|
}
|
|
1628
1523
|
};
|
|
1629
1524
|
}
|
|
1630
|
-
function
|
|
1525
|
+
function wn(e) {
|
|
1631
1526
|
let { db: t, table: n, state: r, documentId: i, creates: a } = e;
|
|
1632
1527
|
if (r.built.has("id")) {
|
|
1633
|
-
|
|
1528
|
+
$e({
|
|
1634
1529
|
db: t,
|
|
1635
1530
|
table: n,
|
|
1636
1531
|
documentId: i,
|
|
@@ -1640,19 +1535,19 @@ function En(e) {
|
|
|
1640
1535
|
}
|
|
1641
1536
|
let { givenIds: o } = r;
|
|
1642
1537
|
if (!o) return;
|
|
1643
|
-
let s =
|
|
1538
|
+
let s = et({
|
|
1644
1539
|
documentId: i,
|
|
1645
1540
|
ids: a.map((e) => e.id),
|
|
1646
1541
|
heldIds: o
|
|
1647
1542
|
});
|
|
1648
1543
|
for (let e of s) o.add(e);
|
|
1649
1544
|
}
|
|
1650
|
-
function
|
|
1545
|
+
function Tn(e) {
|
|
1651
1546
|
let { db: t, documentId: n } = e;
|
|
1652
|
-
return
|
|
1547
|
+
return B({
|
|
1653
1548
|
detail: `Document "${n}"`,
|
|
1654
1549
|
work: function() {
|
|
1655
|
-
return
|
|
1550
|
+
return At({
|
|
1656
1551
|
db: t,
|
|
1657
1552
|
documentId: n
|
|
1658
1553
|
});
|
|
@@ -1660,20 +1555,20 @@ function Dn(e) {
|
|
|
1660
1555
|
});
|
|
1661
1556
|
}
|
|
1662
1557
|
// src/store/sqlite/engine/reclaim.ts
|
|
1663
|
-
async function
|
|
1558
|
+
async function En(e) {
|
|
1664
1559
|
let { db: t, settle: n, isClosed: r, pagesPerStatement: i, sliceMs: a, onStep: o, giveWayTo: s } = e, c = performance.now();
|
|
1665
|
-
for (; !r() &&
|
|
1560
|
+
for (; !r() && Dn({ db: t }) > 0;) {
|
|
1666
1561
|
let e = s?.();
|
|
1667
|
-
e ? (await e, c = performance.now()) : (n(),
|
|
1562
|
+
e ? (await e, c = performance.now()) : (n(), On({
|
|
1668
1563
|
db: t,
|
|
1669
1564
|
pages: i
|
|
1670
|
-
}), o?.(), performance.now() - c < a || (await
|
|
1565
|
+
}), o?.(), performance.now() - c < a || (await ee(), c = performance.now()));
|
|
1671
1566
|
}
|
|
1672
1567
|
}
|
|
1673
|
-
function
|
|
1568
|
+
function Dn(e) {
|
|
1674
1569
|
return Number(e.db.selectValue("PRAGMA freelist_count"));
|
|
1675
1570
|
}
|
|
1676
|
-
function
|
|
1571
|
+
function On(e) {
|
|
1677
1572
|
let t = e.db.prepare(`PRAGMA incremental_vacuum(${e.pages})`);
|
|
1678
1573
|
try {
|
|
1679
1574
|
for (; t.step(););
|
|
@@ -1682,40 +1577,40 @@ function An(e) {
|
|
|
1682
1577
|
}
|
|
1683
1578
|
}
|
|
1684
1579
|
// src/store/sqlite/engine/sqlite-engine.ts
|
|
1685
|
-
function
|
|
1686
|
-
let { sqlite3: t, db: n, dialecteId:
|
|
1580
|
+
function kn(e) {
|
|
1581
|
+
let { sqlite3: t, db: n, dialecteId: r, expectedCreationId: i, name: a, runtime: o, ensureImportSpace: s, onWork: c, onBroken: u } = e;
|
|
1687
1582
|
try {
|
|
1688
|
-
|
|
1583
|
+
Mn({
|
|
1689
1584
|
sqlite3: t,
|
|
1690
|
-
name:
|
|
1585
|
+
name: a
|
|
1691
1586
|
});
|
|
1692
1587
|
} catch (e) {
|
|
1693
1588
|
throw n.close(), e;
|
|
1694
1589
|
}
|
|
1695
|
-
let
|
|
1696
|
-
...
|
|
1590
|
+
let d = e.onLongStatement ?? In, { explainIoFailure: f } = e, p = {
|
|
1591
|
+
...le,
|
|
1697
1592
|
...e.options
|
|
1698
|
-
},
|
|
1699
|
-
deviceMemoryGiB:
|
|
1700
|
-
rule:
|
|
1701
|
-
}),
|
|
1593
|
+
}, m = $t({
|
|
1594
|
+
deviceMemoryGiB: en(),
|
|
1595
|
+
rule: p.cacheRule
|
|
1596
|
+
}), te = p.steadyCacheMiB ?? m, ae = Math.max(m, te), h = "";
|
|
1702
1597
|
try {
|
|
1703
|
-
|
|
1598
|
+
z({
|
|
1704
1599
|
key: "STORE_CONNECTION_FAILED",
|
|
1705
1600
|
detail: "The project file could not be opened",
|
|
1706
1601
|
work: function() {
|
|
1707
|
-
|
|
1602
|
+
h = xt({
|
|
1708
1603
|
sqlite3: t,
|
|
1709
1604
|
db: n,
|
|
1710
|
-
project:
|
|
1711
|
-
dialecteId:
|
|
1712
|
-
expectedCreationId:
|
|
1713
|
-
steadyCacheMiB:
|
|
1714
|
-
}).creationId,
|
|
1605
|
+
project: a,
|
|
1606
|
+
dialecteId: r,
|
|
1607
|
+
expectedCreationId: i,
|
|
1608
|
+
steadyCacheMiB: te
|
|
1609
|
+
}).creationId, W({
|
|
1715
1610
|
sqlite3: t,
|
|
1716
1611
|
db: n,
|
|
1717
1612
|
work: function() {
|
|
1718
|
-
|
|
1613
|
+
qt({ db: n });
|
|
1719
1614
|
}
|
|
1720
1615
|
});
|
|
1721
1616
|
}
|
|
@@ -1723,54 +1618,54 @@ function jn(e) {
|
|
|
1723
1618
|
} catch (e) {
|
|
1724
1619
|
throw n.close(), e;
|
|
1725
1620
|
}
|
|
1726
|
-
let v = /* @__PURE__ */ new Map(), y = /* @__PURE__ */ new Map(), b = /* @__PURE__ */ new Map(), x = { count: 0 }, S =
|
|
1621
|
+
let v = /* @__PURE__ */ new Map(), y = /* @__PURE__ */ new Map(), b = /* @__PURE__ */ new Map(), x = { count: 0 }, S = tn(), C = {
|
|
1727
1622
|
window: void 0,
|
|
1728
1623
|
ended: void 0
|
|
1729
|
-
},
|
|
1624
|
+
}, w = {
|
|
1730
1625
|
closed: !1,
|
|
1731
1626
|
broken: !1
|
|
1732
|
-
},
|
|
1627
|
+
}, T = {
|
|
1733
1628
|
addBlob: async function(e, t) {
|
|
1734
|
-
|
|
1735
|
-
state:
|
|
1736
|
-
name:
|
|
1629
|
+
X({
|
|
1630
|
+
state: w,
|
|
1631
|
+
name: a
|
|
1737
1632
|
});
|
|
1738
|
-
let r =
|
|
1739
|
-
|
|
1740
|
-
state:
|
|
1741
|
-
name:
|
|
1742
|
-
}),
|
|
1633
|
+
let r = await t.arrayBuffer(), i = new Uint8Array(r);
|
|
1634
|
+
X({
|
|
1635
|
+
state: w,
|
|
1636
|
+
name: a
|
|
1637
|
+
}), B({
|
|
1743
1638
|
detail: `Document "${e.documentId}"`,
|
|
1744
1639
|
work: function() {
|
|
1745
|
-
return
|
|
1640
|
+
return Mt({
|
|
1746
1641
|
db: n,
|
|
1747
1642
|
documentId: e.documentId
|
|
1748
1643
|
});
|
|
1749
1644
|
}
|
|
1750
|
-
}) ||
|
|
1645
|
+
}) || g({
|
|
1751
1646
|
documentId: e.documentId,
|
|
1752
1647
|
what: "a blob"
|
|
1753
|
-
}),
|
|
1648
|
+
}), l({ value: e }), k({
|
|
1754
1649
|
detail: `Blob "${e.id}" could not be added`,
|
|
1755
1650
|
work: function() {
|
|
1756
|
-
|
|
1651
|
+
Ne({
|
|
1757
1652
|
db: n,
|
|
1758
1653
|
entry: e,
|
|
1759
1654
|
type: t.type,
|
|
1760
|
-
bytes:
|
|
1655
|
+
bytes: i
|
|
1761
1656
|
});
|
|
1762
1657
|
}
|
|
1763
1658
|
});
|
|
1764
1659
|
},
|
|
1765
1660
|
getBlob: async function(e) {
|
|
1766
|
-
|
|
1767
|
-
state:
|
|
1768
|
-
name:
|
|
1661
|
+
X({
|
|
1662
|
+
state: w,
|
|
1663
|
+
name: a
|
|
1769
1664
|
});
|
|
1770
|
-
let t =
|
|
1665
|
+
let t = B({
|
|
1771
1666
|
detail: `Blob "${e}"`,
|
|
1772
1667
|
work: function() {
|
|
1773
|
-
return
|
|
1668
|
+
return Pe({
|
|
1774
1669
|
db: n,
|
|
1775
1670
|
blobId: e
|
|
1776
1671
|
});
|
|
@@ -1782,36 +1677,36 @@ function jn(e) {
|
|
|
1782
1677
|
};
|
|
1783
1678
|
},
|
|
1784
1679
|
getBlobsByDocument: async function(e) {
|
|
1785
|
-
return
|
|
1786
|
-
state:
|
|
1787
|
-
name:
|
|
1788
|
-
}),
|
|
1680
|
+
return X({
|
|
1681
|
+
state: w,
|
|
1682
|
+
name: a
|
|
1683
|
+
}), D({ filter: { documentId: e } });
|
|
1789
1684
|
},
|
|
1790
1685
|
getBlobsByRecord: async function(e, t) {
|
|
1791
|
-
return
|
|
1792
|
-
state:
|
|
1793
|
-
name:
|
|
1794
|
-
}),
|
|
1686
|
+
return X({
|
|
1687
|
+
state: w,
|
|
1688
|
+
name: a
|
|
1689
|
+
}), D({ filter: {
|
|
1795
1690
|
documentId: e,
|
|
1796
1691
|
recordRef: t
|
|
1797
1692
|
} });
|
|
1798
1693
|
},
|
|
1799
1694
|
getStandaloneBlobs: async function() {
|
|
1800
|
-
return
|
|
1801
|
-
state:
|
|
1802
|
-
name:
|
|
1803
|
-
}),
|
|
1695
|
+
return X({
|
|
1696
|
+
state: w,
|
|
1697
|
+
name: a
|
|
1698
|
+
}), D({ filter: "standalone" });
|
|
1804
1699
|
},
|
|
1805
1700
|
attachBlob: async function(e, t) {
|
|
1806
|
-
|
|
1807
|
-
state:
|
|
1808
|
-
name:
|
|
1701
|
+
X({
|
|
1702
|
+
state: w,
|
|
1703
|
+
name: a
|
|
1809
1704
|
});
|
|
1810
|
-
let r =
|
|
1811
|
-
return
|
|
1705
|
+
let r = E({ blobId: e });
|
|
1706
|
+
return l({ value: t }), !r.attachedTo.some((e) => e.documentId === t.documentId && e.recordRef === t.recordRef && e.attribute === t.attribute) && (k({
|
|
1812
1707
|
detail: `Blob "${e}" could not be attached`,
|
|
1813
1708
|
work: function() {
|
|
1814
|
-
|
|
1709
|
+
Ie({
|
|
1815
1710
|
db: n,
|
|
1816
1711
|
entry: {
|
|
1817
1712
|
...r,
|
|
@@ -1822,15 +1717,15 @@ function jn(e) {
|
|
|
1822
1717
|
}), !0);
|
|
1823
1718
|
},
|
|
1824
1719
|
detachBlob: async function(e, t) {
|
|
1825
|
-
|
|
1826
|
-
state:
|
|
1827
|
-
name:
|
|
1720
|
+
X({
|
|
1721
|
+
state: w,
|
|
1722
|
+
name: a
|
|
1828
1723
|
});
|
|
1829
|
-
let r =
|
|
1830
|
-
return i.length !== r.attachedTo.length && (
|
|
1724
|
+
let r = E({ blobId: e }), i = r.attachedTo.filter((e) => e.documentId !== t.documentId || e.recordRef !== t.recordRef);
|
|
1725
|
+
return i.length !== r.attachedTo.length && (k({
|
|
1831
1726
|
detail: `Blob "${e}" could not be detached`,
|
|
1832
1727
|
work: function() {
|
|
1833
|
-
|
|
1728
|
+
Ie({
|
|
1834
1729
|
db: n,
|
|
1835
1730
|
entry: {
|
|
1836
1731
|
...r,
|
|
@@ -1841,21 +1736,21 @@ function jn(e) {
|
|
|
1841
1736
|
}), !0);
|
|
1842
1737
|
},
|
|
1843
1738
|
removeBlob: async function(e) {
|
|
1844
|
-
return
|
|
1845
|
-
state:
|
|
1846
|
-
name:
|
|
1847
|
-
}),
|
|
1739
|
+
return X({
|
|
1740
|
+
state: w,
|
|
1741
|
+
name: a
|
|
1742
|
+
}), B({
|
|
1848
1743
|
detail: `Blob "${e}"`,
|
|
1849
1744
|
work: function() {
|
|
1850
|
-
return
|
|
1745
|
+
return Fe({
|
|
1851
1746
|
db: n,
|
|
1852
1747
|
blobId: e
|
|
1853
1748
|
});
|
|
1854
1749
|
}
|
|
1855
|
-
}) ? (
|
|
1750
|
+
}) ? (k({
|
|
1856
1751
|
detail: `Blob "${e}" could not be removed`,
|
|
1857
1752
|
work: function() {
|
|
1858
|
-
|
|
1753
|
+
Re({
|
|
1859
1754
|
db: n,
|
|
1860
1755
|
blobId: e
|
|
1861
1756
|
});
|
|
@@ -1863,22 +1758,22 @@ function jn(e) {
|
|
|
1863
1758
|
}), !0) : !1;
|
|
1864
1759
|
},
|
|
1865
1760
|
registerDocument: async function(e) {
|
|
1866
|
-
|
|
1867
|
-
state:
|
|
1868
|
-
name:
|
|
1869
|
-
}),
|
|
1761
|
+
X({
|
|
1762
|
+
state: w,
|
|
1763
|
+
name: a
|
|
1764
|
+
}), z({
|
|
1870
1765
|
key: "STORE_COMMIT_FAILED",
|
|
1871
1766
|
detail: `Document "${e.id}" could not be registered`,
|
|
1872
1767
|
work: function() {
|
|
1873
|
-
|
|
1768
|
+
Y({ importing: C }), W({
|
|
1874
1769
|
sqlite3: t,
|
|
1875
1770
|
db: n,
|
|
1876
1771
|
work: function() {
|
|
1877
|
-
let { table: t } =
|
|
1772
|
+
let { table: t } = kt({
|
|
1878
1773
|
db: n,
|
|
1879
1774
|
document: e
|
|
1880
1775
|
});
|
|
1881
|
-
|
|
1776
|
+
Ot({
|
|
1882
1777
|
db: n,
|
|
1883
1778
|
table: t
|
|
1884
1779
|
});
|
|
@@ -1888,13 +1783,13 @@ function jn(e) {
|
|
|
1888
1783
|
}), v.set(e.id, 0);
|
|
1889
1784
|
},
|
|
1890
1785
|
getDocument: async function(e) {
|
|
1891
|
-
return
|
|
1892
|
-
state:
|
|
1893
|
-
name:
|
|
1894
|
-
}),
|
|
1786
|
+
return X({
|
|
1787
|
+
state: w,
|
|
1788
|
+
name: a
|
|
1789
|
+
}), B({
|
|
1895
1790
|
detail: `Document "${e}"`,
|
|
1896
1791
|
work: function() {
|
|
1897
|
-
return
|
|
1792
|
+
return Mt({
|
|
1898
1793
|
db: n,
|
|
1899
1794
|
documentId: e
|
|
1900
1795
|
});
|
|
@@ -1902,29 +1797,29 @@ function jn(e) {
|
|
|
1902
1797
|
});
|
|
1903
1798
|
},
|
|
1904
1799
|
getDocuments: async function() {
|
|
1905
|
-
return
|
|
1906
|
-
state:
|
|
1907
|
-
name:
|
|
1908
|
-
}),
|
|
1800
|
+
return X({
|
|
1801
|
+
state: w,
|
|
1802
|
+
name: a
|
|
1803
|
+
}), B({
|
|
1909
1804
|
detail: "The documents",
|
|
1910
1805
|
work: function() {
|
|
1911
|
-
return
|
|
1806
|
+
return Nt({ db: n });
|
|
1912
1807
|
}
|
|
1913
1808
|
});
|
|
1914
1809
|
},
|
|
1915
1810
|
updateDocument: async function(e, r) {
|
|
1916
|
-
return
|
|
1917
|
-
state:
|
|
1918
|
-
name:
|
|
1919
|
-
}),
|
|
1811
|
+
return X({
|
|
1812
|
+
state: w,
|
|
1813
|
+
name: a
|
|
1814
|
+
}), z({
|
|
1920
1815
|
key: "STORE_COMMIT_FAILED",
|
|
1921
1816
|
detail: `Document "${e}" could not be updated`,
|
|
1922
1817
|
work: function() {
|
|
1923
|
-
return
|
|
1818
|
+
return Y({ importing: C }), W({
|
|
1924
1819
|
sqlite3: t,
|
|
1925
1820
|
db: n,
|
|
1926
1821
|
work: function() {
|
|
1927
|
-
return
|
|
1822
|
+
return Pt({
|
|
1928
1823
|
db: n,
|
|
1929
1824
|
documentId: e,
|
|
1930
1825
|
updates: r
|
|
@@ -1935,23 +1830,23 @@ function jn(e) {
|
|
|
1935
1830
|
});
|
|
1936
1831
|
},
|
|
1937
1832
|
removeDocument: async function(e) {
|
|
1938
|
-
return
|
|
1939
|
-
state:
|
|
1940
|
-
name:
|
|
1941
|
-
}),
|
|
1833
|
+
return X({
|
|
1834
|
+
state: w,
|
|
1835
|
+
name: a
|
|
1836
|
+
}), de({ documentId: e });
|
|
1942
1837
|
},
|
|
1943
1838
|
get: async function(e, t) {
|
|
1944
|
-
return
|
|
1945
|
-
state:
|
|
1946
|
-
name:
|
|
1947
|
-
}),
|
|
1839
|
+
return X({
|
|
1840
|
+
state: w,
|
|
1841
|
+
name: a
|
|
1842
|
+
}), B({
|
|
1948
1843
|
detail: `Record "${e}" of document "${t}"`,
|
|
1949
1844
|
work: function() {
|
|
1950
|
-
let r =
|
|
1845
|
+
let r = K({
|
|
1951
1846
|
db: n,
|
|
1952
1847
|
documentId: t
|
|
1953
1848
|
});
|
|
1954
|
-
return r ?
|
|
1849
|
+
return r ? qe({
|
|
1955
1850
|
db: n,
|
|
1956
1851
|
table: r,
|
|
1957
1852
|
id: e
|
|
@@ -1960,17 +1855,17 @@ function jn(e) {
|
|
|
1960
1855
|
});
|
|
1961
1856
|
},
|
|
1962
1857
|
getByDocumentId: async function(e) {
|
|
1963
|
-
return
|
|
1964
|
-
state:
|
|
1965
|
-
name:
|
|
1966
|
-
}),
|
|
1858
|
+
return X({
|
|
1859
|
+
state: w,
|
|
1860
|
+
name: a
|
|
1861
|
+
}), B({
|
|
1967
1862
|
detail: `The records of document "${e}"`,
|
|
1968
1863
|
work: function() {
|
|
1969
|
-
let t =
|
|
1864
|
+
let t = K({
|
|
1970
1865
|
db: n,
|
|
1971
1866
|
documentId: e
|
|
1972
1867
|
});
|
|
1973
|
-
return t ?
|
|
1868
|
+
return t ? Je({
|
|
1974
1869
|
db: n,
|
|
1975
1870
|
table: t
|
|
1976
1871
|
}) : [];
|
|
@@ -1978,20 +1873,20 @@ function jn(e) {
|
|
|
1978
1873
|
});
|
|
1979
1874
|
},
|
|
1980
1875
|
count: async function(e) {
|
|
1981
|
-
|
|
1982
|
-
state:
|
|
1983
|
-
name:
|
|
1876
|
+
X({
|
|
1877
|
+
state: w,
|
|
1878
|
+
name: a
|
|
1984
1879
|
});
|
|
1985
1880
|
let t = v.get(e);
|
|
1986
|
-
return t === void 0 ?
|
|
1881
|
+
return t === void 0 ? B({
|
|
1987
1882
|
detail: `The record count of document "${e}"`,
|
|
1988
1883
|
work: function() {
|
|
1989
|
-
let t =
|
|
1884
|
+
let t = K({
|
|
1990
1885
|
db: n,
|
|
1991
1886
|
documentId: e
|
|
1992
1887
|
});
|
|
1993
1888
|
if (!t) return 0;
|
|
1994
|
-
let r =
|
|
1889
|
+
let r = Qe({
|
|
1995
1890
|
db: n,
|
|
1996
1891
|
table: t
|
|
1997
1892
|
});
|
|
@@ -2000,17 +1895,17 @@ function jn(e) {
|
|
|
2000
1895
|
}) : t;
|
|
2001
1896
|
},
|
|
2002
1897
|
getByTagNameInDocument: async function(e, t) {
|
|
2003
|
-
return
|
|
2004
|
-
state:
|
|
2005
|
-
name:
|
|
2006
|
-
}),
|
|
1898
|
+
return X({
|
|
1899
|
+
state: w,
|
|
1900
|
+
name: a
|
|
1901
|
+
}), B({
|
|
2007
1902
|
detail: `The ${e} records of document "${t}"`,
|
|
2008
1903
|
work: function() {
|
|
2009
|
-
let r =
|
|
1904
|
+
let r = K({
|
|
2010
1905
|
db: n,
|
|
2011
1906
|
documentId: t
|
|
2012
1907
|
});
|
|
2013
|
-
return r ?
|
|
1908
|
+
return r ? Ye({
|
|
2014
1909
|
db: n,
|
|
2015
1910
|
table: r,
|
|
2016
1911
|
tagName: e
|
|
@@ -2019,18 +1914,18 @@ function jn(e) {
|
|
|
2019
1914
|
});
|
|
2020
1915
|
},
|
|
2021
1916
|
getMany: async function(e, t) {
|
|
2022
|
-
return
|
|
2023
|
-
state:
|
|
2024
|
-
name:
|
|
2025
|
-
}),
|
|
1917
|
+
return X({
|
|
1918
|
+
state: w,
|
|
1919
|
+
name: a
|
|
1920
|
+
}), B({
|
|
2026
1921
|
detail: `Records of document "${t}"`,
|
|
2027
1922
|
work: function() {
|
|
2028
|
-
let r =
|
|
1923
|
+
let r = K({
|
|
2029
1924
|
db: n,
|
|
2030
1925
|
documentId: t
|
|
2031
1926
|
});
|
|
2032
1927
|
if (!r) return e.map(() => void 0);
|
|
2033
|
-
let i =
|
|
1928
|
+
let i = Xe({
|
|
2034
1929
|
db: n,
|
|
2035
1930
|
table: r,
|
|
2036
1931
|
ids: e
|
|
@@ -2040,21 +1935,21 @@ function jn(e) {
|
|
|
2040
1935
|
});
|
|
2041
1936
|
},
|
|
2042
1937
|
getWriteOutcome: async function({ writeId: e }) {
|
|
2043
|
-
return
|
|
2044
|
-
state:
|
|
2045
|
-
name:
|
|
2046
|
-
}),
|
|
1938
|
+
return X({
|
|
1939
|
+
state: w,
|
|
1940
|
+
name: a
|
|
1941
|
+
}), B({
|
|
2047
1942
|
detail: `The outcome of write "${e}"`,
|
|
2048
1943
|
work: function() {
|
|
2049
1944
|
if (S.awaitsRow({ writeId: e })) return "running";
|
|
2050
|
-
let t =
|
|
1945
|
+
let t = Jt({
|
|
2051
1946
|
db: n,
|
|
2052
1947
|
writeId: e
|
|
2053
1948
|
});
|
|
2054
|
-
return
|
|
1949
|
+
return _e({
|
|
2055
1950
|
documents: t,
|
|
2056
1951
|
writeId: e,
|
|
2057
|
-
committed:
|
|
1952
|
+
committed: gt({
|
|
2058
1953
|
db: n,
|
|
2059
1954
|
writeId: e
|
|
2060
1955
|
}),
|
|
@@ -2064,75 +1959,75 @@ function jn(e) {
|
|
|
2064
1959
|
});
|
|
2065
1960
|
},
|
|
2066
1961
|
bulkWrite: async function(e, r) {
|
|
2067
|
-
|
|
2068
|
-
state:
|
|
2069
|
-
name:
|
|
1962
|
+
X({
|
|
1963
|
+
state: w,
|
|
1964
|
+
name: a
|
|
2070
1965
|
});
|
|
2071
|
-
let { creates: i = [], updates:
|
|
1966
|
+
let { creates: i = [], updates: o = [], deletes: s = [] } = r, c = Pn({
|
|
2072
1967
|
sqlite3: t,
|
|
2073
1968
|
db: n,
|
|
2074
1969
|
documentId: e,
|
|
2075
1970
|
creates: i,
|
|
2076
|
-
updates:
|
|
2077
|
-
deletes:
|
|
1971
|
+
updates: o,
|
|
1972
|
+
deletes: s,
|
|
2078
1973
|
importing: C
|
|
2079
1974
|
});
|
|
2080
|
-
return
|
|
1975
|
+
return A({
|
|
2081
1976
|
documentId: e,
|
|
2082
1977
|
gained: i.length - c
|
|
2083
|
-
}), i.length > 0 ||
|
|
1978
|
+
}), i.length > 0 || o.length > 0 || c > 0;
|
|
2084
1979
|
},
|
|
2085
1980
|
commit: async function(e, r) {
|
|
2086
|
-
|
|
2087
|
-
state:
|
|
2088
|
-
name:
|
|
1981
|
+
X({
|
|
1982
|
+
state: w,
|
|
1983
|
+
name: a
|
|
2089
1984
|
});
|
|
2090
|
-
let { documentId: i, creates:
|
|
2091
|
-
|
|
1985
|
+
let { documentId: i, creates: o, updates: s, deletes: c } = e;
|
|
1986
|
+
A({
|
|
2092
1987
|
documentId: i,
|
|
2093
|
-
gained:
|
|
1988
|
+
gained: Yt({
|
|
2094
1989
|
...e,
|
|
2095
1990
|
sqlite3: t,
|
|
2096
1991
|
db: n,
|
|
2097
1992
|
settle: function() {
|
|
2098
|
-
|
|
1993
|
+
Y({ importing: C });
|
|
2099
1994
|
}
|
|
2100
1995
|
})
|
|
2101
|
-
}),
|
|
1996
|
+
}), Ce({
|
|
2102
1997
|
onProgress: r,
|
|
2103
1998
|
parts: [
|
|
2104
|
-
a.length,
|
|
2105
1999
|
o.length,
|
|
2000
|
+
s.length,
|
|
2106
2001
|
c.length
|
|
2107
2002
|
]
|
|
2108
2003
|
});
|
|
2109
2004
|
},
|
|
2110
2005
|
undo: async function(e) {
|
|
2111
|
-
return
|
|
2112
|
-
state:
|
|
2113
|
-
name:
|
|
2006
|
+
return X({
|
|
2007
|
+
state: w,
|
|
2008
|
+
name: a
|
|
2114
2009
|
}), j({
|
|
2115
2010
|
documentId: e,
|
|
2116
2011
|
direction: "back"
|
|
2117
2012
|
});
|
|
2118
2013
|
},
|
|
2119
2014
|
redo: async function(e) {
|
|
2120
|
-
return
|
|
2121
|
-
state:
|
|
2122
|
-
name:
|
|
2015
|
+
return X({
|
|
2016
|
+
state: w,
|
|
2017
|
+
name: a
|
|
2123
2018
|
}), j({
|
|
2124
2019
|
documentId: e,
|
|
2125
2020
|
direction: "forward"
|
|
2126
2021
|
});
|
|
2127
2022
|
},
|
|
2128
2023
|
getHistoryStatus: async function(e) {
|
|
2129
|
-
return
|
|
2130
|
-
state:
|
|
2131
|
-
name:
|
|
2132
|
-
}),
|
|
2024
|
+
return X({
|
|
2025
|
+
state: w,
|
|
2026
|
+
name: a
|
|
2027
|
+
}), B({
|
|
2133
2028
|
detail: `The history of document "${e}"`,
|
|
2134
2029
|
work: function() {
|
|
2135
|
-
return
|
|
2030
|
+
return mt({
|
|
2136
2031
|
db: n,
|
|
2137
2032
|
documentId: e
|
|
2138
2033
|
});
|
|
@@ -2140,17 +2035,17 @@ function jn(e) {
|
|
|
2140
2035
|
});
|
|
2141
2036
|
},
|
|
2142
2037
|
getChangeLog: async function(e) {
|
|
2143
|
-
return
|
|
2144
|
-
state:
|
|
2145
|
-
name:
|
|
2146
|
-
}),
|
|
2038
|
+
return X({
|
|
2039
|
+
state: w,
|
|
2040
|
+
name: a
|
|
2041
|
+
}), B({
|
|
2147
2042
|
detail: `The changelog of document "${e}"`,
|
|
2148
2043
|
work: function() {
|
|
2149
|
-
let t =
|
|
2044
|
+
let t = Lt({
|
|
2150
2045
|
db: n,
|
|
2151
2046
|
documentId: e
|
|
2152
2047
|
});
|
|
2153
|
-
return t ?
|
|
2048
|
+
return t ? ht({
|
|
2154
2049
|
db: n,
|
|
2155
2050
|
documentId: e,
|
|
2156
2051
|
table: t.history
|
|
@@ -2159,42 +2054,42 @@ function jn(e) {
|
|
|
2159
2054
|
});
|
|
2160
2055
|
}
|
|
2161
2056
|
};
|
|
2162
|
-
function
|
|
2163
|
-
let { blobId: t } = e, r =
|
|
2057
|
+
function E(e) {
|
|
2058
|
+
let { blobId: t } = e, r = B({
|
|
2164
2059
|
detail: `Blob "${t}"`,
|
|
2165
2060
|
work: function() {
|
|
2166
|
-
return
|
|
2061
|
+
return Fe({
|
|
2167
2062
|
db: n,
|
|
2168
2063
|
blobId: t
|
|
2169
2064
|
});
|
|
2170
2065
|
}
|
|
2171
2066
|
});
|
|
2172
|
-
return r ||
|
|
2067
|
+
return r || _("STORE_BLOB_NOT_FOUND", { detail: `Blob "${t}" not found` }), r;
|
|
2173
2068
|
}
|
|
2174
|
-
function
|
|
2175
|
-
return
|
|
2069
|
+
function D(e) {
|
|
2070
|
+
return B({
|
|
2176
2071
|
detail: "The blobs",
|
|
2177
2072
|
work: function() {
|
|
2178
|
-
return
|
|
2073
|
+
return Le({
|
|
2179
2074
|
db: n,
|
|
2180
2075
|
filter: e.filter
|
|
2181
2076
|
});
|
|
2182
2077
|
}
|
|
2183
2078
|
});
|
|
2184
2079
|
}
|
|
2185
|
-
async function
|
|
2080
|
+
async function de(e) {
|
|
2186
2081
|
let { documentId: r } = e, i = `Document "${r}" could not be removed`, a = !1;
|
|
2187
2082
|
try {
|
|
2188
|
-
|
|
2083
|
+
z({
|
|
2189
2084
|
key: "STORE_DELETE_FAILED",
|
|
2190
2085
|
detail: i,
|
|
2191
2086
|
work: function() {
|
|
2192
|
-
|
|
2193
|
-
|
|
2087
|
+
Y({ importing: C }), d({ work: function() {
|
|
2088
|
+
W({
|
|
2194
2089
|
sqlite3: t,
|
|
2195
2090
|
db: n,
|
|
2196
2091
|
work: function() {
|
|
2197
|
-
a =
|
|
2092
|
+
a = It({
|
|
2198
2093
|
db: n,
|
|
2199
2094
|
documentId: r
|
|
2200
2095
|
});
|
|
@@ -2207,9 +2102,9 @@ function jn(e) {
|
|
|
2207
2102
|
x.count += 1, y.set(r, (y.get(r) ?? 0) + 1);
|
|
2208
2103
|
}
|
|
2209
2104
|
try {
|
|
2210
|
-
await
|
|
2105
|
+
await O({ background: !1 });
|
|
2211
2106
|
} catch (e) {
|
|
2212
|
-
throw
|
|
2107
|
+
throw Ge({
|
|
2213
2108
|
key: "STORE_DELETE_FAILED",
|
|
2214
2109
|
detail: i,
|
|
2215
2110
|
thrown: e
|
|
@@ -2217,28 +2112,28 @@ function jn(e) {
|
|
|
2217
2112
|
}
|
|
2218
2113
|
return a;
|
|
2219
2114
|
}
|
|
2220
|
-
function
|
|
2221
|
-
return
|
|
2222
|
-
giveWayTo: e.background ?
|
|
2115
|
+
function O(e) {
|
|
2116
|
+
return En({
|
|
2117
|
+
giveWayTo: e.background ? me : void 0,
|
|
2223
2118
|
db: n,
|
|
2224
2119
|
settle: function() {
|
|
2225
|
-
|
|
2120
|
+
Y({ importing: C });
|
|
2226
2121
|
},
|
|
2227
2122
|
isClosed: function() {
|
|
2228
|
-
return
|
|
2123
|
+
return w.closed;
|
|
2229
2124
|
},
|
|
2230
|
-
pagesPerStatement:
|
|
2231
|
-
sliceMs:
|
|
2232
|
-
onStep:
|
|
2125
|
+
pagesPerStatement: p.reclaimPagesPerStatement,
|
|
2126
|
+
sliceMs: p.reclaimSliceMs,
|
|
2127
|
+
onStep: c
|
|
2233
2128
|
});
|
|
2234
2129
|
}
|
|
2235
|
-
function
|
|
2130
|
+
function k(e) {
|
|
2236
2131
|
let { detail: r, work: i } = e;
|
|
2237
|
-
|
|
2132
|
+
z({
|
|
2238
2133
|
key: "STORE_COMMIT_FAILED",
|
|
2239
2134
|
detail: r,
|
|
2240
2135
|
work: function() {
|
|
2241
|
-
|
|
2136
|
+
Y({ importing: C }), W({
|
|
2242
2137
|
sqlite3: t,
|
|
2243
2138
|
db: n,
|
|
2244
2139
|
work: i
|
|
@@ -2246,13 +2141,13 @@ function jn(e) {
|
|
|
2246
2141
|
}
|
|
2247
2142
|
});
|
|
2248
2143
|
}
|
|
2249
|
-
function
|
|
2144
|
+
function A(e) {
|
|
2250
2145
|
let { documentId: t, gained: n } = e, r = v.get(t);
|
|
2251
2146
|
r !== void 0 && v.set(t, r + n), y.set(t, (y.get(t) ?? 0) + 1);
|
|
2252
2147
|
}
|
|
2253
|
-
function
|
|
2148
|
+
function fe(e) {
|
|
2254
2149
|
let { signal: t, documentId: r, reads: i } = e;
|
|
2255
|
-
function
|
|
2150
|
+
function o() {
|
|
2256
2151
|
ie({
|
|
2257
2152
|
signal: t,
|
|
2258
2153
|
documentId: r
|
|
@@ -2260,16 +2155,16 @@ function jn(e) {
|
|
|
2260
2155
|
}
|
|
2261
2156
|
return {
|
|
2262
2157
|
getDocument: async function(e) {
|
|
2263
|
-
return
|
|
2158
|
+
return o(), T.getDocument(e);
|
|
2264
2159
|
},
|
|
2265
2160
|
count: async function(e) {
|
|
2266
|
-
return
|
|
2161
|
+
return o(), T.count(e);
|
|
2267
2162
|
},
|
|
2268
2163
|
getMany: async function(e, t) {
|
|
2269
|
-
return
|
|
2270
|
-
state:
|
|
2271
|
-
name:
|
|
2272
|
-
}),
|
|
2164
|
+
return o(), X({
|
|
2165
|
+
state: w,
|
|
2166
|
+
name: a
|
|
2167
|
+
}), B({
|
|
2273
2168
|
detail: `Records of document "${t}"`,
|
|
2274
2169
|
work: function() {
|
|
2275
2170
|
let n = ge({
|
|
@@ -2281,16 +2176,16 @@ function jn(e) {
|
|
|
2281
2176
|
});
|
|
2282
2177
|
},
|
|
2283
2178
|
getByTagNameInDocument: async function(e, t) {
|
|
2284
|
-
return
|
|
2179
|
+
return o(), T.getByTagNameInDocument(e, t);
|
|
2285
2180
|
},
|
|
2286
2181
|
getExportVersion: async function({ documentId: e }) {
|
|
2287
|
-
if (
|
|
2288
|
-
state:
|
|
2289
|
-
name:
|
|
2290
|
-
}),
|
|
2182
|
+
if (o(), X({
|
|
2183
|
+
state: w,
|
|
2184
|
+
name: a
|
|
2185
|
+
}), B({
|
|
2291
2186
|
detail: `Document "${e}"`,
|
|
2292
2187
|
work: function() {
|
|
2293
|
-
return
|
|
2188
|
+
return At({
|
|
2294
2189
|
db: n,
|
|
2295
2190
|
documentId: e
|
|
2296
2191
|
});
|
|
@@ -2300,214 +2195,214 @@ function jn(e) {
|
|
|
2300
2195
|
};
|
|
2301
2196
|
}
|
|
2302
2197
|
function j(e) {
|
|
2303
|
-
let { documentId: r, direction: i } = e, a =
|
|
2198
|
+
let { documentId: r, direction: i } = e, a = Xt({
|
|
2304
2199
|
sqlite3: t,
|
|
2305
2200
|
db: n,
|
|
2306
2201
|
documentId: r,
|
|
2307
2202
|
direction: i,
|
|
2308
2203
|
settle: function() {
|
|
2309
|
-
|
|
2204
|
+
Y({ importing: C });
|
|
2310
2205
|
}
|
|
2311
2206
|
});
|
|
2312
|
-
return a !== void 0 && (
|
|
2207
|
+
return a !== void 0 && (A({
|
|
2313
2208
|
documentId: r,
|
|
2314
2209
|
gained: a
|
|
2315
2210
|
}), !0);
|
|
2316
2211
|
}
|
|
2317
|
-
async function
|
|
2212
|
+
async function pe(e) {
|
|
2318
2213
|
let { thrown: n } = e;
|
|
2319
|
-
if (
|
|
2320
|
-
let r =
|
|
2321
|
-
return r === t.capi.SQLITE_FULL ?
|
|
2322
|
-
detail: `The file of project "${
|
|
2323
|
-
meta: { project:
|
|
2214
|
+
if (oe(n)?.key === "STORE_READ_FAILED") return n;
|
|
2215
|
+
let r = Ke({ thrown: n });
|
|
2216
|
+
return r === t.capi.SQLITE_FULL ? se("STORE_QUOTA_EXCEEDED", {
|
|
2217
|
+
detail: `The file of project "${a}" can grow no more`,
|
|
2218
|
+
meta: { project: a },
|
|
2324
2219
|
cause: n instanceof Error ? n : void 0
|
|
2325
|
-
}) : r === t.capi.SQLITE_IOERR &&
|
|
2220
|
+
}) : r === t.capi.SQLITE_IOERR && f ? await f({ thrown: n }) ?? n : n;
|
|
2326
2221
|
}
|
|
2327
|
-
async function
|
|
2328
|
-
|
|
2329
|
-
state:
|
|
2330
|
-
name:
|
|
2222
|
+
async function M(e, r) {
|
|
2223
|
+
X({
|
|
2224
|
+
state: w,
|
|
2225
|
+
name: a
|
|
2331
2226
|
});
|
|
2332
|
-
let i =
|
|
2333
|
-
runtime:
|
|
2334
|
-
storeName:
|
|
2227
|
+
let i = xe({
|
|
2228
|
+
runtime: o,
|
|
2229
|
+
storeName: a,
|
|
2335
2230
|
operation: "import"
|
|
2336
|
-
}), { file:
|
|
2231
|
+
}), { file: l, options: u, writeId: f, clientId: m } = e;
|
|
2337
2232
|
return S.run({
|
|
2338
|
-
writeId:
|
|
2339
|
-
clientId:
|
|
2233
|
+
writeId: f,
|
|
2234
|
+
clientId: m,
|
|
2340
2235
|
work: async function(e) {
|
|
2341
|
-
|
|
2236
|
+
R({
|
|
2342
2237
|
signal: e,
|
|
2343
|
-
file:
|
|
2344
|
-
}),
|
|
2238
|
+
file: l
|
|
2239
|
+
}), s && (await s({ bytes: jn({
|
|
2345
2240
|
db: n,
|
|
2346
|
-
file:
|
|
2347
|
-
}) }),
|
|
2241
|
+
file: l
|
|
2242
|
+
}) }), R({
|
|
2348
2243
|
signal: e,
|
|
2349
|
-
file:
|
|
2244
|
+
file: l
|
|
2350
2245
|
}));
|
|
2351
|
-
let
|
|
2246
|
+
let a = re({
|
|
2352
2247
|
enabled: i.perf ?? !1,
|
|
2353
2248
|
timeline: !1
|
|
2354
|
-
}),
|
|
2249
|
+
}), o = sn({
|
|
2355
2250
|
sqlite3: t,
|
|
2356
2251
|
db: n,
|
|
2357
|
-
perf:
|
|
2358
|
-
windowMs:
|
|
2359
|
-
importCacheMiB:
|
|
2360
|
-
steadyCacheMiB:
|
|
2361
|
-
}),
|
|
2362
|
-
file:
|
|
2252
|
+
perf: a,
|
|
2253
|
+
windowMs: p.importWindowMs,
|
|
2254
|
+
importCacheMiB: ae,
|
|
2255
|
+
steadyCacheMiB: te
|
|
2256
|
+
}), m = Cn({
|
|
2257
|
+
file: l,
|
|
2363
2258
|
listener: function(e) {
|
|
2364
|
-
return
|
|
2259
|
+
return c?.(), r?.(e);
|
|
2365
2260
|
}
|
|
2366
|
-
}),
|
|
2261
|
+
}), ee = pn({
|
|
2367
2262
|
sqlite3: t,
|
|
2368
2263
|
db: n,
|
|
2369
|
-
perf:
|
|
2264
|
+
perf: a,
|
|
2370
2265
|
signal: e,
|
|
2371
|
-
file:
|
|
2266
|
+
file: l,
|
|
2372
2267
|
counts: v,
|
|
2373
2268
|
removeDocument: async function({ documentId: e }) {
|
|
2374
|
-
await
|
|
2269
|
+
await de({ documentId: e });
|
|
2375
2270
|
},
|
|
2376
|
-
window:
|
|
2377
|
-
windowMs:
|
|
2378
|
-
tellPhase:
|
|
2379
|
-
onLongStatement:
|
|
2271
|
+
window: o,
|
|
2272
|
+
windowMs: p.importWindowMs,
|
|
2273
|
+
tellPhase: m.tellPhase,
|
|
2274
|
+
onLongStatement: d,
|
|
2380
2275
|
onRegistered: function() {
|
|
2381
|
-
S.markRegistered({ writeId:
|
|
2276
|
+
S.markRegistered({ writeId: f });
|
|
2382
2277
|
},
|
|
2383
|
-
customIds:
|
|
2384
|
-
}),
|
|
2385
|
-
C.window =
|
|
2278
|
+
customIds: u?.useCustomRecordsIds ?? !1
|
|
2279
|
+
}), ne = Promise.withResolvers();
|
|
2280
|
+
C.window = o, C.ended = ne.promise;
|
|
2386
2281
|
try {
|
|
2387
|
-
let t = await
|
|
2388
|
-
store:
|
|
2282
|
+
let t = await ye({
|
|
2283
|
+
store: ee,
|
|
2389
2284
|
runtime: i,
|
|
2390
|
-
file:
|
|
2391
|
-
options:
|
|
2392
|
-
writeId:
|
|
2393
|
-
perf:
|
|
2285
|
+
file: l,
|
|
2286
|
+
options: u,
|
|
2287
|
+
writeId: f,
|
|
2288
|
+
perf: a
|
|
2394
2289
|
}, {
|
|
2395
|
-
onProgress:
|
|
2290
|
+
onProgress: m.onProgress,
|
|
2396
2291
|
signal: e
|
|
2397
2292
|
});
|
|
2398
|
-
return
|
|
2293
|
+
return z({
|
|
2399
2294
|
key: "STORE_COMMIT_FAILED",
|
|
2400
|
-
detail: `The import of "${
|
|
2401
|
-
work:
|
|
2295
|
+
detail: `The import of "${l.name}" could not end`,
|
|
2296
|
+
work: o.end
|
|
2402
2297
|
}), t;
|
|
2403
2298
|
} catch (e) {
|
|
2404
|
-
throw
|
|
2299
|
+
throw fn({ window: o }), await pe({ thrown: e });
|
|
2405
2300
|
} finally {
|
|
2406
|
-
C.window = void 0, C.ended = void 0,
|
|
2301
|
+
C.window = void 0, C.ended = void 0, ne.resolve(), N();
|
|
2407
2302
|
}
|
|
2408
2303
|
}
|
|
2409
2304
|
});
|
|
2410
2305
|
}
|
|
2411
|
-
function
|
|
2306
|
+
function me() {
|
|
2412
2307
|
return C.ended;
|
|
2413
2308
|
}
|
|
2414
|
-
function
|
|
2309
|
+
function N() {
|
|
2415
2310
|
if (n.isOpen() && t.capi.sqlite3_get_autocommit(n) === 0) {
|
|
2416
|
-
|
|
2311
|
+
w.broken = !0;
|
|
2417
2312
|
try {
|
|
2418
|
-
|
|
2313
|
+
P();
|
|
2419
2314
|
} catch {} finally {
|
|
2420
|
-
|
|
2315
|
+
u?.();
|
|
2421
2316
|
}
|
|
2422
2317
|
}
|
|
2423
2318
|
}
|
|
2424
|
-
function
|
|
2425
|
-
|
|
2319
|
+
function P() {
|
|
2320
|
+
w.closed = !0;
|
|
2426
2321
|
try {
|
|
2427
2322
|
S.abortAll();
|
|
2428
|
-
for (let { controller: e, reads: t } of b.values()) e.abort(),
|
|
2323
|
+
for (let { controller: e, reads: t } of b.values()) e.abort(), Nn({ reads: t });
|
|
2429
2324
|
} finally {
|
|
2430
2325
|
n.close();
|
|
2431
2326
|
}
|
|
2432
2327
|
}
|
|
2433
|
-
async function
|
|
2328
|
+
async function he(e) {
|
|
2434
2329
|
S.abort(e);
|
|
2435
2330
|
}
|
|
2436
|
-
async function
|
|
2437
|
-
|
|
2438
|
-
state:
|
|
2439
|
-
name:
|
|
2331
|
+
async function F(e, t) {
|
|
2332
|
+
X({
|
|
2333
|
+
state: w,
|
|
2334
|
+
name: a
|
|
2440
2335
|
});
|
|
2441
|
-
let r =
|
|
2442
|
-
runtime:
|
|
2443
|
-
storeName:
|
|
2336
|
+
let r = xe({
|
|
2337
|
+
runtime: o,
|
|
2338
|
+
storeName: a,
|
|
2444
2339
|
operation: "export"
|
|
2445
|
-
}), { documentId: i, options:
|
|
2446
|
-
|
|
2340
|
+
}), { documentId: i, options: s, exportId: l, clientId: u } = e;
|
|
2341
|
+
ce(!b.has(l), { detail: `An export of id "${l}" runs already: give each export an id of its own` });
|
|
2447
2342
|
let d = new AbortController(), f = { current: void 0 };
|
|
2448
|
-
b.set(
|
|
2449
|
-
clientId:
|
|
2343
|
+
b.set(l, {
|
|
2344
|
+
clientId: u,
|
|
2450
2345
|
controller: d,
|
|
2451
2346
|
reads: f
|
|
2452
2347
|
});
|
|
2453
2348
|
try {
|
|
2454
|
-
return await
|
|
2455
|
-
source:
|
|
2349
|
+
return await ee(), await ne({
|
|
2350
|
+
source: fe({
|
|
2456
2351
|
signal: d.signal,
|
|
2457
2352
|
documentId: i,
|
|
2458
2353
|
reads: f
|
|
2459
2354
|
}),
|
|
2460
2355
|
runtime: r,
|
|
2461
2356
|
documentId: i,
|
|
2462
|
-
options:
|
|
2357
|
+
options: s
|
|
2463
2358
|
}, {
|
|
2464
2359
|
onProgress: function(e) {
|
|
2465
|
-
return
|
|
2360
|
+
return c?.(), t?.(e);
|
|
2466
2361
|
},
|
|
2467
2362
|
signal: d.signal
|
|
2468
2363
|
});
|
|
2469
2364
|
} finally {
|
|
2470
|
-
b.delete(
|
|
2365
|
+
b.delete(l), n.isOpen() && Nn({ reads: f });
|
|
2471
2366
|
}
|
|
2472
2367
|
}
|
|
2473
2368
|
function ge(e) {
|
|
2474
2369
|
let { reads: t, documentId: r } = e, i = t.current;
|
|
2475
2370
|
if (i && i.documentId === r && i.removals === x.count) return i.statement;
|
|
2476
2371
|
i?.statement.finalize(), t.current = void 0;
|
|
2477
|
-
let a =
|
|
2372
|
+
let a = K({
|
|
2478
2373
|
db: n,
|
|
2479
2374
|
documentId: r
|
|
2480
2375
|
});
|
|
2481
2376
|
if (a) return t.current = {
|
|
2482
2377
|
documentId: r,
|
|
2483
2378
|
removals: x.count,
|
|
2484
|
-
statement:
|
|
2379
|
+
statement: Ze({
|
|
2485
2380
|
db: n,
|
|
2486
2381
|
table: a
|
|
2487
2382
|
})
|
|
2488
2383
|
}, t.current.statement;
|
|
2489
2384
|
}
|
|
2490
|
-
async function
|
|
2385
|
+
async function ve(e) {
|
|
2491
2386
|
b.get(e.exportId)?.controller.abort();
|
|
2492
2387
|
}
|
|
2493
|
-
let
|
|
2494
|
-
for (let e of
|
|
2495
|
-
let t =
|
|
2496
|
-
Object.assign(
|
|
2388
|
+
let I = { ...T };
|
|
2389
|
+
for (let e of ue) {
|
|
2390
|
+
let t = T[e];
|
|
2391
|
+
Object.assign(I, { [e]: async function(...e) {
|
|
2497
2392
|
try {
|
|
2498
2393
|
return await t(...e);
|
|
2499
2394
|
} catch (e) {
|
|
2500
|
-
throw await
|
|
2395
|
+
throw await pe({ thrown: e });
|
|
2501
2396
|
}
|
|
2502
2397
|
} });
|
|
2503
2398
|
}
|
|
2504
|
-
return
|
|
2505
|
-
...
|
|
2506
|
-
creationId:
|
|
2507
|
-
importFile:
|
|
2508
|
-
abortImport:
|
|
2509
|
-
exportFile:
|
|
2510
|
-
abortExport:
|
|
2399
|
+
return O({ background: !0 }).catch(An), {
|
|
2400
|
+
...I,
|
|
2401
|
+
creationId: h,
|
|
2402
|
+
importFile: M,
|
|
2403
|
+
abortImport: he,
|
|
2404
|
+
exportFile: F,
|
|
2405
|
+
abortExport: ve,
|
|
2511
2406
|
abortExportsOf: function({ clientId: e }) {
|
|
2512
2407
|
for (let t of b.values()) t.clientId === e && t.controller.abort();
|
|
2513
2408
|
},
|
|
@@ -2516,83 +2411,83 @@ function jn(e) {
|
|
|
2516
2411
|
},
|
|
2517
2412
|
clientView: function({ clientId: e }) {
|
|
2518
2413
|
return {
|
|
2519
|
-
...
|
|
2414
|
+
...I,
|
|
2520
2415
|
importFile: function(t, n) {
|
|
2521
|
-
return
|
|
2416
|
+
return M({
|
|
2522
2417
|
...t,
|
|
2523
2418
|
clientId: e
|
|
2524
2419
|
}, n);
|
|
2525
2420
|
},
|
|
2526
|
-
abortImport:
|
|
2421
|
+
abortImport: he,
|
|
2527
2422
|
exportFile: function(t, n) {
|
|
2528
|
-
return
|
|
2423
|
+
return F({
|
|
2529
2424
|
...t,
|
|
2530
2425
|
clientId: e
|
|
2531
2426
|
}, n);
|
|
2532
2427
|
},
|
|
2533
|
-
abortExport:
|
|
2428
|
+
abortExport: ve
|
|
2534
2429
|
};
|
|
2535
2430
|
},
|
|
2536
|
-
close:
|
|
2431
|
+
close: P
|
|
2537
2432
|
};
|
|
2538
2433
|
}
|
|
2539
|
-
function
|
|
2540
|
-
function
|
|
2541
|
-
let { db: t, file: n } = e, r = Number(t.selectValue("PRAGMA freelist_count")) * Number(t.selectValue("PRAGMA page_size")), i = Math.max(
|
|
2434
|
+
function An() {}
|
|
2435
|
+
function jn(e) {
|
|
2436
|
+
let { db: t, file: n } = e, r = Number(t.selectValue("PRAGMA freelist_count")) * Number(t.selectValue("PRAGMA page_size")), i = Math.max(w, 8 * n.size);
|
|
2542
2437
|
return Math.max(0, i - r);
|
|
2543
2438
|
}
|
|
2544
|
-
function
|
|
2439
|
+
function Y(e) {
|
|
2545
2440
|
e.importing.window?.settle();
|
|
2546
2441
|
}
|
|
2547
|
-
function
|
|
2442
|
+
function Mn(e) {
|
|
2548
2443
|
let { sqlite3: t, name: n } = e;
|
|
2549
|
-
|
|
2444
|
+
ke({ sqlite3: t }) || _("ASSERTION_FAILED", { detail: `The engine of "${n}" runs on a SQLite whose text codec is not installed: load SQLite with loadSqlite` });
|
|
2550
2445
|
}
|
|
2551
|
-
function
|
|
2446
|
+
function Nn(e) {
|
|
2552
2447
|
let { reads: t } = e;
|
|
2553
2448
|
t.current?.statement.finalize(), t.current = void 0;
|
|
2554
2449
|
}
|
|
2555
|
-
function
|
|
2450
|
+
function X(e) {
|
|
2556
2451
|
let { state: t, name: n } = e;
|
|
2557
|
-
t.broken &&
|
|
2452
|
+
t.broken && _("STORE_CONNECTION_LOST", {
|
|
2558
2453
|
detail: `The project engine of "${n}" broke (an import left its connection inside a transaction): the next call starts the next one`,
|
|
2559
2454
|
meta: { reason: "host-gone" }
|
|
2560
|
-
}), t.closed &&
|
|
2455
|
+
}), t.closed && i({ storeName: n });
|
|
2561
2456
|
}
|
|
2562
|
-
function
|
|
2563
|
-
let { sqlite3: t, db: n, documentId: r, creates: i, updates: a, deletes: o, importing: s } = e, c = `Records of document "${r}" could not be written`, l =
|
|
2457
|
+
function Pn(e) {
|
|
2458
|
+
let { sqlite3: t, db: n, documentId: r, creates: i, updates: a, deletes: o, importing: s } = e, c = `Records of document "${r}" could not be written`, l = B({
|
|
2564
2459
|
detail: `Document "${r}"`,
|
|
2565
2460
|
work: function() {
|
|
2566
|
-
return
|
|
2461
|
+
return K({
|
|
2567
2462
|
db: n,
|
|
2568
2463
|
documentId: r
|
|
2569
2464
|
});
|
|
2570
2465
|
}
|
|
2571
2466
|
});
|
|
2572
|
-
l ||
|
|
2467
|
+
l || g({
|
|
2573
2468
|
documentId: r,
|
|
2574
2469
|
what: "records"
|
|
2575
2470
|
});
|
|
2576
|
-
let u =
|
|
2577
|
-
return
|
|
2471
|
+
let u = Be({ records: i });
|
|
2472
|
+
return B({
|
|
2578
2473
|
detail: `The ids of document "${r}"`,
|
|
2579
2474
|
work: function() {
|
|
2580
|
-
|
|
2475
|
+
$e({
|
|
2581
2476
|
db: n,
|
|
2582
2477
|
table: l,
|
|
2583
2478
|
documentId: r,
|
|
2584
2479
|
creates: i
|
|
2585
2480
|
});
|
|
2586
2481
|
}
|
|
2587
|
-
}),
|
|
2482
|
+
}), z({
|
|
2588
2483
|
key: "STORE_COMMIT_FAILED",
|
|
2589
2484
|
detail: c,
|
|
2590
2485
|
work: function() {
|
|
2591
|
-
return
|
|
2486
|
+
return Y({ importing: s }), W({
|
|
2592
2487
|
sqlite3: t,
|
|
2593
2488
|
db: n,
|
|
2594
2489
|
work: function() {
|
|
2595
|
-
return
|
|
2490
|
+
return Fn({
|
|
2596
2491
|
db: n,
|
|
2597
2492
|
table: l,
|
|
2598
2493
|
rows: u,
|
|
@@ -2605,37 +2500,37 @@ function In(e) {
|
|
|
2605
2500
|
}
|
|
2606
2501
|
});
|
|
2607
2502
|
}
|
|
2608
|
-
function
|
|
2503
|
+
function Fn(e) {
|
|
2609
2504
|
let { db: t, table: n, rows: r, updates: i, deletes: a, detail: o } = e;
|
|
2610
|
-
return
|
|
2505
|
+
return z({
|
|
2611
2506
|
key: "STORE_BULK_ADD_FAILED",
|
|
2612
2507
|
detail: o,
|
|
2613
2508
|
work: function() {
|
|
2614
|
-
|
|
2509
|
+
He({
|
|
2615
2510
|
db: t,
|
|
2616
2511
|
table: n,
|
|
2617
2512
|
rows: r
|
|
2618
2513
|
});
|
|
2619
2514
|
}
|
|
2620
|
-
}),
|
|
2515
|
+
}), z({
|
|
2621
2516
|
key: "STORE_BULK_UPDATE_FAILED",
|
|
2622
2517
|
detail: o,
|
|
2623
2518
|
work: function() {
|
|
2624
|
-
|
|
2519
|
+
nt({
|
|
2625
2520
|
db: t,
|
|
2626
2521
|
table: n,
|
|
2627
2522
|
patches: i
|
|
2628
|
-
}),
|
|
2523
|
+
}), it({
|
|
2629
2524
|
db: t,
|
|
2630
2525
|
table: n,
|
|
2631
2526
|
patches: i
|
|
2632
2527
|
});
|
|
2633
2528
|
}
|
|
2634
|
-
}),
|
|
2529
|
+
}), z({
|
|
2635
2530
|
key: "STORE_DELETE_FAILED",
|
|
2636
2531
|
detail: o,
|
|
2637
2532
|
work: function() {
|
|
2638
|
-
return
|
|
2533
|
+
return at({
|
|
2639
2534
|
db: t,
|
|
2640
2535
|
table: n,
|
|
2641
2536
|
ids: a
|
|
@@ -2643,67 +2538,175 @@ function Ln(e) {
|
|
|
2643
2538
|
}
|
|
2644
2539
|
});
|
|
2645
2540
|
}
|
|
2646
|
-
function
|
|
2541
|
+
function In(e) {
|
|
2647
2542
|
return e.work();
|
|
2648
2543
|
}
|
|
2649
2544
|
// src/store/sqlite/load-sqlite.ts
|
|
2650
|
-
var
|
|
2651
|
-
function
|
|
2545
|
+
var Ln = we, Rn, zn;
|
|
2546
|
+
function Bn(e = {}) {
|
|
2652
2547
|
let { wasmUrl: t } = e, n = globalThis;
|
|
2653
2548
|
if (n.sqlite3ApiConfig = {
|
|
2654
2549
|
...n.sqlite3ApiConfig,
|
|
2655
|
-
disable: { vfs:
|
|
2656
|
-
}, t !== void 0 &&
|
|
2657
|
-
return
|
|
2550
|
+
disable: { vfs: Te }
|
|
2551
|
+
}, t !== void 0 && zn !== void 0 && t !== zn) throw se("ASSERTION_FAILED", { detail: `SQLite is loaded in this realm from "${zn}", not from "${t}": one wasm file per realm` });
|
|
2552
|
+
return Rn || (zn = t), Rn ??= (t ? Ln({ locateFile: function() {
|
|
2658
2553
|
return t;
|
|
2659
|
-
} }) :
|
|
2660
|
-
return
|
|
2661
|
-
}),
|
|
2554
|
+
} }) : Ln()).then(function(e) {
|
|
2555
|
+
return Oe({ sqlite3: e }), e;
|
|
2556
|
+
}), Rn;
|
|
2557
|
+
}
|
|
2558
|
+
// src/store/sqlite/served/host/changed.ts
|
|
2559
|
+
function Z(e) {
|
|
2560
|
+
return e.value !== !1;
|
|
2662
2561
|
}
|
|
2562
|
+
// src/store/sqlite/served/host/store-events.constants.ts
|
|
2563
|
+
var Vn = {
|
|
2564
|
+
registerDocument: function({ args: e }) {
|
|
2565
|
+
return {
|
|
2566
|
+
type: "init-empty-document",
|
|
2567
|
+
documentId: e[0].id
|
|
2568
|
+
};
|
|
2569
|
+
},
|
|
2570
|
+
updateDocument: function({ args: e, value: t }) {
|
|
2571
|
+
return Z({ value: t }) ? {
|
|
2572
|
+
type: "document-updated",
|
|
2573
|
+
documentId: e[0]
|
|
2574
|
+
} : void 0;
|
|
2575
|
+
},
|
|
2576
|
+
removeDocument: function({ args: e, value: t }) {
|
|
2577
|
+
return Z({ value: t }) ? {
|
|
2578
|
+
type: "document-removed",
|
|
2579
|
+
documentId: e[0]
|
|
2580
|
+
} : void 0;
|
|
2581
|
+
},
|
|
2582
|
+
bulkWrite: function({ args: e, value: t }) {
|
|
2583
|
+
return Z({ value: t }) ? {
|
|
2584
|
+
type: "commit",
|
|
2585
|
+
documentId: e[0]
|
|
2586
|
+
} : void 0;
|
|
2587
|
+
},
|
|
2588
|
+
commit: function({ args: e }) {
|
|
2589
|
+
return {
|
|
2590
|
+
type: "commit",
|
|
2591
|
+
documentId: e[0].documentId
|
|
2592
|
+
};
|
|
2593
|
+
},
|
|
2594
|
+
undo: function({ args: e, value: t }) {
|
|
2595
|
+
return Z({ value: t }) ? {
|
|
2596
|
+
type: "commit",
|
|
2597
|
+
documentId: e[0]
|
|
2598
|
+
} : void 0;
|
|
2599
|
+
},
|
|
2600
|
+
redo: function({ args: e, value: t }) {
|
|
2601
|
+
return Z({ value: t }) ? {
|
|
2602
|
+
type: "commit",
|
|
2603
|
+
documentId: e[0]
|
|
2604
|
+
} : void 0;
|
|
2605
|
+
},
|
|
2606
|
+
importFile: function({ value: e }) {
|
|
2607
|
+
return {
|
|
2608
|
+
type: "document-imported",
|
|
2609
|
+
documentId: e.record.id
|
|
2610
|
+
};
|
|
2611
|
+
},
|
|
2612
|
+
addBlob: function({ args: e }) {
|
|
2613
|
+
let t = e[0];
|
|
2614
|
+
return {
|
|
2615
|
+
type: "blob-added",
|
|
2616
|
+
blobId: t.id,
|
|
2617
|
+
documentId: t.documentId
|
|
2618
|
+
};
|
|
2619
|
+
},
|
|
2620
|
+
attachBlob: function({ args: e, value: t }) {
|
|
2621
|
+
if (Z({ value: t })) return {
|
|
2622
|
+
type: "blob-attached",
|
|
2623
|
+
blobId: e[0],
|
|
2624
|
+
ref: e[1]
|
|
2625
|
+
};
|
|
2626
|
+
},
|
|
2627
|
+
detachBlob: function({ args: e, value: t }) {
|
|
2628
|
+
if (Z({ value: t })) return {
|
|
2629
|
+
type: "blob-detached",
|
|
2630
|
+
blobId: e[0],
|
|
2631
|
+
ref: e[1]
|
|
2632
|
+
};
|
|
2633
|
+
},
|
|
2634
|
+
removeBlob: function({ args: e, value: t }) {
|
|
2635
|
+
return Z({ value: t }) ? {
|
|
2636
|
+
type: "blob-removed",
|
|
2637
|
+
blobId: e[0]
|
|
2638
|
+
} : void 0;
|
|
2639
|
+
}
|
|
2640
|
+
};
|
|
2641
|
+
// src/store/sqlite/served/host/store-events.ts
|
|
2642
|
+
function Hn(e) {
|
|
2643
|
+
let { member: t, args: n, value: r, connectionId: i } = e, a = Vn[t]?.({
|
|
2644
|
+
args: n,
|
|
2645
|
+
value: r
|
|
2646
|
+
});
|
|
2647
|
+
if (!a) return;
|
|
2648
|
+
let o = Un({ args: n });
|
|
2649
|
+
return {
|
|
2650
|
+
type: y.event,
|
|
2651
|
+
message: {
|
|
2652
|
+
...a,
|
|
2653
|
+
timestamp: Date.now()
|
|
2654
|
+
},
|
|
2655
|
+
connectionId: i,
|
|
2656
|
+
...o !== void 0 && { writeId: o }
|
|
2657
|
+
};
|
|
2658
|
+
}
|
|
2659
|
+
function Un(e) {
|
|
2660
|
+
let [t] = e.args;
|
|
2661
|
+
if (typeof t != "object" || !t || !("writeId" in t)) return;
|
|
2662
|
+
let { writeId: n } = t;
|
|
2663
|
+
return typeof n == "string" ? n : void 0;
|
|
2664
|
+
}
|
|
2665
|
+
// src/store/sqlite/adapter/in-process-link.constants.ts
|
|
2666
|
+
var Q = /* @__PURE__ */ new Map(), $ = /* @__PURE__ */ new Map(), Wn = /* @__PURE__ */ new WeakMap();
|
|
2663
2667
|
// src/store/sqlite/adapter/in-process-link.ts
|
|
2664
|
-
|
|
2665
|
-
function Wn(e) {
|
|
2668
|
+
function Gn(e) {
|
|
2666
2669
|
return te({
|
|
2667
2670
|
project: e.name,
|
|
2668
2671
|
dialecteId: e.dialecteId
|
|
2669
2672
|
}), {
|
|
2670
2673
|
connect: function() {
|
|
2671
|
-
return
|
|
2674
|
+
return Kn(e);
|
|
2672
2675
|
},
|
|
2673
2676
|
destroy: async function(t) {
|
|
2674
|
-
let n = t?.own, r =
|
|
2675
|
-
a > 0 &&
|
|
2677
|
+
let n = t?.own, r = $n(e), i = $.get(r), a = (i?.size ?? 0) - (n !== void 0 && i?.has(n.link) ? 1 : 0);
|
|
2678
|
+
a > 0 && p({
|
|
2676
2679
|
storeName: e.name,
|
|
2677
2680
|
connections: a
|
|
2678
|
-
}), n?.letGo(),
|
|
2681
|
+
}), n?.letGo(), Zn({ key: r });
|
|
2679
2682
|
}
|
|
2680
2683
|
};
|
|
2681
2684
|
}
|
|
2682
|
-
async function
|
|
2683
|
-
let { name:
|
|
2684
|
-
$.set(
|
|
2685
|
+
async function Kn(e) {
|
|
2686
|
+
let { name: t } = e, n = $n(e), r = $.get(n) ?? /* @__PURE__ */ new Set();
|
|
2687
|
+
$.set(n, r);
|
|
2685
2688
|
let a = crypto.randomUUID(), o = !1, s, c, l = /* @__PURE__ */ new Set(), u = {
|
|
2686
2689
|
engine: async function() {
|
|
2687
|
-
o &&
|
|
2688
|
-
let
|
|
2690
|
+
o && i({ storeName: t });
|
|
2691
|
+
let r = await Xn({
|
|
2689
2692
|
...e,
|
|
2690
2693
|
expectedCreationId: s
|
|
2691
2694
|
});
|
|
2692
|
-
return
|
|
2693
|
-
project:
|
|
2695
|
+
return v({
|
|
2696
|
+
project: t,
|
|
2694
2697
|
expectedCreationId: s,
|
|
2695
|
-
creationId:
|
|
2696
|
-
}), s =
|
|
2698
|
+
creationId: r.creationId
|
|
2699
|
+
}), s = r.creationId, c !== void 0 && c !== r && Jn({
|
|
2697
2700
|
link: u,
|
|
2698
2701
|
notice: { type: "resync" }
|
|
2699
|
-
}), c =
|
|
2700
|
-
view:
|
|
2702
|
+
}), c = r, qn({
|
|
2703
|
+
view: r.clientView({ clientId: a }),
|
|
2701
2704
|
announce: function(e) {
|
|
2702
|
-
let t =
|
|
2705
|
+
let t = Hn({
|
|
2703
2706
|
...e,
|
|
2704
2707
|
connectionId: a
|
|
2705
2708
|
});
|
|
2706
|
-
if (t) for (let e of $.get(
|
|
2709
|
+
if (t) for (let e of $.get(n) ?? []) Jn({
|
|
2707
2710
|
link: e,
|
|
2708
2711
|
notice: {
|
|
2709
2712
|
type: "event",
|
|
@@ -2715,20 +2718,20 @@ async function Gn(e) {
|
|
|
2715
2718
|
},
|
|
2716
2719
|
connectionId: a,
|
|
2717
2720
|
onNotice: function(e) {
|
|
2718
|
-
return o ?
|
|
2721
|
+
return o ? Yn : (l.add(e), function() {
|
|
2719
2722
|
l.delete(e);
|
|
2720
2723
|
});
|
|
2721
2724
|
},
|
|
2722
2725
|
close: async function() {
|
|
2723
|
-
if (o = !0, l.clear(), !
|
|
2724
|
-
$.delete(
|
|
2725
|
-
let e = Q.get(
|
|
2726
|
+
if (o = !0, l.clear(), !r.delete(u) || r.size > 0) return;
|
|
2727
|
+
$.delete(n);
|
|
2728
|
+
let e = Q.get(n);
|
|
2726
2729
|
e?.engine?.close(), e && (e.engine = void 0);
|
|
2727
2730
|
}
|
|
2728
2731
|
};
|
|
2729
|
-
return
|
|
2732
|
+
return Wn.set(u, l), r.add(u), u;
|
|
2730
2733
|
}
|
|
2731
|
-
function
|
|
2734
|
+
function qn(e) {
|
|
2732
2735
|
let { view: t, announce: n } = e;
|
|
2733
2736
|
return Object.fromEntries(Object.keys(t).map(function(e) {
|
|
2734
2737
|
let r = t[e];
|
|
@@ -2742,50 +2745,50 @@ function Kn(e) {
|
|
|
2742
2745
|
}];
|
|
2743
2746
|
}));
|
|
2744
2747
|
}
|
|
2745
|
-
function
|
|
2746
|
-
|
|
2747
|
-
listeners:
|
|
2748
|
-
value:
|
|
2749
|
-
of:
|
|
2748
|
+
function Jn(t) {
|
|
2749
|
+
c({
|
|
2750
|
+
listeners: Wn.get(t.link) ?? [],
|
|
2751
|
+
value: t.notice,
|
|
2752
|
+
of: e.engineChanges
|
|
2750
2753
|
});
|
|
2751
2754
|
}
|
|
2752
|
-
function
|
|
2753
|
-
async function
|
|
2754
|
-
let { name:
|
|
2755
|
-
|
|
2756
|
-
project:
|
|
2757
|
-
expectedCreationId:
|
|
2755
|
+
function Yn() {}
|
|
2756
|
+
async function Xn(e) {
|
|
2757
|
+
let { name: t, dialecteId: n, runtime: r, options: i, expectedCreationId: a } = e, o = $n(e), s = await Bn({ wasmUrl: he() }), c = Q.get(o);
|
|
2758
|
+
c || v({
|
|
2759
|
+
project: t,
|
|
2760
|
+
expectedCreationId: a,
|
|
2758
2761
|
creationId: void 0
|
|
2759
2762
|
});
|
|
2760
|
-
let
|
|
2761
|
-
if (Q.set(
|
|
2762
|
-
let e =
|
|
2763
|
-
sqlite3:
|
|
2764
|
-
db: new
|
|
2765
|
-
dialecteId:
|
|
2766
|
-
expectedCreationId:
|
|
2767
|
-
name:
|
|
2768
|
-
runtime:
|
|
2769
|
-
options:
|
|
2763
|
+
let l = c ?? { keeper: new s.oo1.DB(Qn({ key: o }), "c") };
|
|
2764
|
+
if (Q.set(o, l), !l.engine) {
|
|
2765
|
+
let e = kn({
|
|
2766
|
+
sqlite3: s,
|
|
2767
|
+
db: new s.oo1.DB(Qn({ key: o }), "c"),
|
|
2768
|
+
dialecteId: n,
|
|
2769
|
+
expectedCreationId: a,
|
|
2770
|
+
name: t,
|
|
2771
|
+
runtime: r,
|
|
2772
|
+
options: i,
|
|
2770
2773
|
onBroken: function() {
|
|
2771
|
-
|
|
2774
|
+
l.engine === e && (l.engine = void 0);
|
|
2772
2775
|
}
|
|
2773
2776
|
});
|
|
2774
|
-
|
|
2777
|
+
l.engine = e;
|
|
2775
2778
|
}
|
|
2776
|
-
return
|
|
2779
|
+
return l.engine;
|
|
2777
2780
|
}
|
|
2778
|
-
function
|
|
2781
|
+
function Zn(e) {
|
|
2779
2782
|
let t = Q.get(e.key);
|
|
2780
2783
|
t && (t.engine?.close(), t.keeper.close(), Q.delete(e.key));
|
|
2781
2784
|
}
|
|
2782
|
-
function
|
|
2785
|
+
function Qn(e) {
|
|
2783
2786
|
return `file:/${encodeURIComponent(e.key)}?vfs=memdb`;
|
|
2784
2787
|
}
|
|
2785
|
-
function
|
|
2786
|
-
return
|
|
2788
|
+
function $n(e) {
|
|
2789
|
+
return ae({
|
|
2787
2790
|
dialecteId: e.dialecteId,
|
|
2788
2791
|
project: e.name
|
|
2789
2792
|
});
|
|
2790
2793
|
}
|
|
2791
|
-
export {
|
|
2794
|
+
export { Gn as createInProcessConnector };
|