@pkcprotocol/pkc-js 0.0.40 → 0.0.41

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.
Files changed (109) hide show
  1. package/dist/browser/clients/rpc-client/pkc-rpc-client.d.ts +5 -1
  2. package/dist/browser/clients/rpc-client/pkc-rpc-client.js +23 -1
  3. package/dist/browser/clients/rpc-client/pkc-rpc-client.js.map +1 -1
  4. package/dist/browser/clients/rpc-client/rpc-schema-util.d.ts +31 -0
  5. package/dist/browser/clients/rpc-client/rpc-schema-util.js +6 -1
  6. package/dist/browser/clients/rpc-client/rpc-schema-util.js.map +1 -1
  7. package/dist/browser/clients/rpc-client/schema.d.ts +27 -0
  8. package/dist/browser/clients/rpc-client/schema.js +12 -1
  9. package/dist/browser/clients/rpc-client/schema.js.map +1 -1
  10. package/dist/browser/clients/rpc-client/types.d.ts +5 -1
  11. package/dist/browser/community/remote-community.d.ts +5 -1
  12. package/dist/browser/community/remote-community.js +8 -0
  13. package/dist/browser/community/remote-community.js.map +1 -1
  14. package/dist/browser/community/rpc-local-community.d.ts +10 -1
  15. package/dist/browser/community/rpc-local-community.js +102 -0
  16. package/dist/browser/community/rpc-local-community.js.map +1 -1
  17. package/dist/browser/community/schema.d.ts +37 -0
  18. package/dist/browser/community/schema.js +47 -1
  19. package/dist/browser/community/schema.js.map +1 -1
  20. package/dist/browser/community/types.d.ts +4 -1
  21. package/dist/browser/constants.d.ts +2 -1
  22. package/dist/browser/constants.js +2 -1
  23. package/dist/browser/constants.js.map +1 -1
  24. package/dist/browser/errors.d.ts +8 -0
  25. package/dist/browser/errors.js +9 -0
  26. package/dist/browser/errors.js.map +1 -1
  27. package/dist/browser/generated-version.d.ts +1 -1
  28. package/dist/browser/generated-version.js +1 -1
  29. package/dist/browser/pkc/pkc-with-rpc-client.js +3 -0
  30. package/dist/browser/pkc/pkc-with-rpc-client.js.map +1 -1
  31. package/dist/browser/pkc/pkc.js +24 -3
  32. package/dist/browser/pkc/pkc.js.map +1 -1
  33. package/dist/browser/pkc-error.d.ts +1 -1
  34. package/dist/browser/rpc/src/index.d.ts +16 -2
  35. package/dist/browser/rpc/src/index.js +276 -6
  36. package/dist/browser/rpc/src/index.js.map +1 -1
  37. package/dist/browser/rpc/src/schema.d.ts +2 -0
  38. package/dist/browser/rpc/src/schema.js +10 -1
  39. package/dist/browser/rpc/src/schema.js.map +1 -1
  40. package/dist/browser/runtime/node/community/db-handler.js.map +1 -1
  41. package/dist/browser/runtime/node/community/local-community/db-state.js +8 -0
  42. package/dist/browser/runtime/node/community/local-community/db-state.js.map +1 -1
  43. package/dist/browser/runtime/node/community/local-community/export.d.ts +15 -0
  44. package/dist/browser/runtime/node/community/local-community/export.js +237 -0
  45. package/dist/browser/runtime/node/community/local-community/export.js.map +1 -0
  46. package/dist/browser/runtime/node/community/local-community/lifecycle.js +1 -0
  47. package/dist/browser/runtime/node/community/local-community/lifecycle.js.map +1 -1
  48. package/dist/browser/runtime/node/community/local-community.d.ts +12 -0
  49. package/dist/browser/runtime/node/community/local-community.js +22 -0
  50. package/dist/browser/runtime/node/community/local-community.js.map +1 -1
  51. package/dist/browser/runtime/node/util.d.ts +15 -0
  52. package/dist/browser/runtime/node/util.js +111 -1
  53. package/dist/browser/runtime/node/util.js.map +1 -1
  54. package/dist/browser/test/test-util.d.ts +1 -0
  55. package/dist/node/clients/rpc-client/pkc-rpc-client.d.ts +5 -1
  56. package/dist/node/clients/rpc-client/pkc-rpc-client.js +23 -1
  57. package/dist/node/clients/rpc-client/pkc-rpc-client.js.map +1 -1
  58. package/dist/node/clients/rpc-client/rpc-schema-util.d.ts +31 -0
  59. package/dist/node/clients/rpc-client/rpc-schema-util.js +6 -1
  60. package/dist/node/clients/rpc-client/rpc-schema-util.js.map +1 -1
  61. package/dist/node/clients/rpc-client/schema.d.ts +27 -0
  62. package/dist/node/clients/rpc-client/schema.js +12 -1
  63. package/dist/node/clients/rpc-client/schema.js.map +1 -1
  64. package/dist/node/clients/rpc-client/types.d.ts +5 -1
  65. package/dist/node/community/remote-community.d.ts +5 -1
  66. package/dist/node/community/remote-community.js +8 -0
  67. package/dist/node/community/remote-community.js.map +1 -1
  68. package/dist/node/community/rpc-local-community.d.ts +10 -1
  69. package/dist/node/community/rpc-local-community.js +102 -0
  70. package/dist/node/community/rpc-local-community.js.map +1 -1
  71. package/dist/node/community/schema.d.ts +37 -0
  72. package/dist/node/community/schema.js +47 -1
  73. package/dist/node/community/schema.js.map +1 -1
  74. package/dist/node/community/types.d.ts +4 -1
  75. package/dist/node/constants.d.ts +2 -1
  76. package/dist/node/constants.js +2 -1
  77. package/dist/node/constants.js.map +1 -1
  78. package/dist/node/errors.d.ts +8 -0
  79. package/dist/node/errors.js +9 -0
  80. package/dist/node/errors.js.map +1 -1
  81. package/dist/node/generated-version.d.ts +1 -1
  82. package/dist/node/generated-version.js +1 -1
  83. package/dist/node/pkc/pkc-with-rpc-client.js +3 -0
  84. package/dist/node/pkc/pkc-with-rpc-client.js.map +1 -1
  85. package/dist/node/pkc/pkc.js +24 -3
  86. package/dist/node/pkc/pkc.js.map +1 -1
  87. package/dist/node/pkc-error.d.ts +1 -1
  88. package/dist/node/rpc/src/index.d.ts +16 -2
  89. package/dist/node/rpc/src/index.js +276 -6
  90. package/dist/node/rpc/src/index.js.map +1 -1
  91. package/dist/node/rpc/src/schema.d.ts +2 -0
  92. package/dist/node/rpc/src/schema.js +10 -1
  93. package/dist/node/rpc/src/schema.js.map +1 -1
  94. package/dist/node/runtime/node/community/db-handler.js.map +1 -1
  95. package/dist/node/runtime/node/community/local-community/db-state.js +8 -0
  96. package/dist/node/runtime/node/community/local-community/db-state.js.map +1 -1
  97. package/dist/node/runtime/node/community/local-community/export.d.ts +15 -0
  98. package/dist/node/runtime/node/community/local-community/export.js +237 -0
  99. package/dist/node/runtime/node/community/local-community/export.js.map +1 -0
  100. package/dist/node/runtime/node/community/local-community/lifecycle.js +1 -0
  101. package/dist/node/runtime/node/community/local-community/lifecycle.js.map +1 -1
  102. package/dist/node/runtime/node/community/local-community.d.ts +12 -0
  103. package/dist/node/runtime/node/community/local-community.js +22 -0
  104. package/dist/node/runtime/node/community/local-community.js.map +1 -1
  105. package/dist/node/runtime/node/util.d.ts +15 -0
  106. package/dist/node/runtime/node/util.js +111 -1
  107. package/dist/node/runtime/node/util.js.map +1 -1
  108. package/dist/node/test/test-util.d.ts +1 -0
  109. package/package.json +1 -1
@@ -0,0 +1,237 @@
1
+ import Logger from "../../../../logger.js";
2
+ import path from "node:path";
3
+ import { promises as fsPromises, existsSync } from "node:fs";
4
+ import { pathToFileURL, fileURLToPath } from "node:url";
5
+ import { v4 as uuidV4 } from "uuid";
6
+ import { STORAGE_KEYS } from "../../../../constants.js";
7
+ import { PKCError } from "../../../../pkc-error.js";
8
+ import { backupCommunityDb, BackupAbortError } from "../../util.js";
9
+ const EXPORTS_KEY = STORAGE_KEYS[STORAGE_KEYS.EXPORTS];
10
+ function defaultExportPathFor(community, exportId) {
11
+ if (typeof community._pkc.dataPath !== "string")
12
+ throw new PKCError("ERR_DATA_PATH_IS_NOT_DEFINED", { communityAddress: community.address });
13
+ return path.join(community._pkc.dataPath, "exports", `${exportId}.sqlite`);
14
+ }
15
+ function sourceDbPathFor(community) {
16
+ if (typeof community._pkc.dataPath !== "string")
17
+ throw new PKCError("ERR_DATA_PATH_IS_NOT_DEFINED", { communityAddress: community.address });
18
+ return path.join(community._pkc.dataPath, "communities", community.address);
19
+ }
20
+ async function persistExports(community) {
21
+ if (!community._dbHandler)
22
+ return;
23
+ try {
24
+ await community._dbHandler.keyvSet(EXPORTS_KEY, community._exports);
25
+ }
26
+ catch (e) {
27
+ Logger("pkc-js:local-community:export").error("Failed to persist exports to keyv", e);
28
+ }
29
+ }
30
+ export function cloneExportRecord(record) {
31
+ return {
32
+ ...record,
33
+ ...(record.error ? { error: { ...record.error } } : {})
34
+ };
35
+ }
36
+ function snapshotExports(community) {
37
+ return community._exports.map(cloneExportRecord);
38
+ }
39
+ function emitExportsChange(community) {
40
+ community.emit("exportschange", snapshotExports(community));
41
+ }
42
+ async function updateRecord(community, exportId, patch) {
43
+ const idx = community._exports.findIndex((r) => r.exportId === exportId);
44
+ if (idx === -1)
45
+ return;
46
+ community._exports[idx] = { ...community._exports[idx], ...patch };
47
+ await persistExports(community);
48
+ emitExportsChange(community);
49
+ }
50
+ async function runExportTask(community, exportId, opts) {
51
+ const log = Logger("pkc-js:local-community:export:run");
52
+ const sourcePath = sourceDbPathFor(community);
53
+ try {
54
+ if (opts.signal.aborted)
55
+ throw new BackupAbortError();
56
+ let lastEmittedProgress = 0;
57
+ const { size, sha256 } = await backupCommunityDb({
58
+ sourcePath,
59
+ destPath: opts.destPath,
60
+ includePrivateKey: opts.includePrivateKey,
61
+ signal: opts.signal,
62
+ onProgress: (progress) => {
63
+ // Throttle emissions so we don't churn keyv/listeners on every step
64
+ if (progress - lastEmittedProgress < 0.05 && progress < 0.99)
65
+ return;
66
+ lastEmittedProgress = progress;
67
+ void updateRecord(community, exportId, { progress });
68
+ }
69
+ });
70
+ await updateRecord(community, exportId, {
71
+ progress: 1,
72
+ size,
73
+ sha256,
74
+ url: pathToFileURL(opts.destPath).href
75
+ });
76
+ log.trace("Export complete for community", community.address, "exportId", exportId);
77
+ }
78
+ catch (err) {
79
+ const message = err instanceof Error ? err.message : String(err);
80
+ if (err instanceof BackupAbortError || opts.signal.aborted) {
81
+ await updateRecord(community, exportId, {
82
+ error: { code: "ERR_EXPORT_CANCELLED", message: message || "Export was cancelled" }
83
+ });
84
+ }
85
+ else {
86
+ log.error("Backup failed for community", community.address, "exportId", exportId, err);
87
+ await updateRecord(community, exportId, {
88
+ error: { code: "ERR_EXPORT_BACKUP_FAILED", message }
89
+ });
90
+ }
91
+ }
92
+ finally {
93
+ community._activeExports.delete(exportId);
94
+ }
95
+ }
96
+ export async function exportCommunityEmbedded(community, options = {}) {
97
+ // Sync validation
98
+ if (options.signal?.aborted) {
99
+ const reason = options.signal.reason;
100
+ throw reason ?? new DOMException("The operation was aborted.", "AbortError");
101
+ }
102
+ const exportId = uuidV4();
103
+ const destPath = options.exportPath ? path.resolve(options.exportPath) : defaultExportPathFor(community, exportId);
104
+ const includePrivateKey = options.includePrivateKey === true;
105
+ if (path.resolve(destPath) === path.resolve(sourceDbPathFor(community)))
106
+ throw new PKCError("ERR_EXPORT_PATH_TARGETS_LIVE_DB", { communityAddress: community.address, exportPath: destPath });
107
+ if (!community.publicKey)
108
+ throw new PKCError("ERR_LOCAL_COMMUNITY_HAS_NO_SIGNER_IN_INTERNAL_STATE", { address: community.address });
109
+ const record = {
110
+ exportId,
111
+ ...(community.name ? { name: community.name } : {}),
112
+ publicKey: community.publicKey,
113
+ includePrivateKey,
114
+ progress: 0
115
+ };
116
+ community._exports.push(record);
117
+ await persistExports(community);
118
+ emitExportsChange(community);
119
+ const controller = new AbortController();
120
+ let detachUserSignal;
121
+ if (options.signal) {
122
+ const userSignal = options.signal;
123
+ const onAbort = () => controller.abort(userSignal.reason);
124
+ userSignal.addEventListener("abort", onAbort, { once: true });
125
+ detachUserSignal = () => userSignal.removeEventListener("abort", onAbort);
126
+ }
127
+ // Serialize per-community: each export waits for the prior queue entry before running.
128
+ // Using a chained Promise guarantees ordering even under high concurrency.
129
+ const previousQueue = community._exportQueue;
130
+ let resolveDone;
131
+ const donePromise = new Promise((res) => {
132
+ resolveDone = res;
133
+ });
134
+ community._activeExports.set(exportId, { exportId, controller, detachUserSignal, donePromise });
135
+ community._exportQueue = previousQueue
136
+ .then(async () => {
137
+ // Skip the actual work if the record was already cancelled while queued
138
+ const current = community._exports.find((r) => r.exportId === exportId);
139
+ if (!current || current.error)
140
+ return;
141
+ if (controller.signal.aborted) {
142
+ await updateRecord(community, exportId, {
143
+ error: { code: "ERR_EXPORT_CANCELLED", message: "Export was cancelled before it could start" }
144
+ });
145
+ return;
146
+ }
147
+ await runExportTask(community, exportId, { destPath, includePrivateKey, signal: controller.signal });
148
+ })
149
+ .catch(() => {
150
+ // runExportTask already records errors on the record; swallow so the queue stays alive
151
+ })
152
+ .finally(() => {
153
+ detachUserSignal?.();
154
+ resolveDone();
155
+ });
156
+ return { exportId };
157
+ }
158
+ export async function cancelExportEmbedded(community, exportId) {
159
+ const handle = community._activeExports.get(exportId);
160
+ if (!handle)
161
+ return;
162
+ handle.controller.abort();
163
+ try {
164
+ await handle.donePromise;
165
+ }
166
+ catch {
167
+ // already recorded
168
+ }
169
+ }
170
+ // Removes an export record from `community._exports`, deletes its backing file (if it lives
171
+ // under a file:// URL), persists to KeyV, and emits `exportschange`. Used by the RPC HTTP
172
+ // download endpoint to clean up after a successful download.
173
+ export async function deleteExportRecord(community, exportId) {
174
+ const idx = community._exports.findIndex((r) => r.exportId === exportId);
175
+ if (idx === -1)
176
+ return;
177
+ const record = community._exports[idx];
178
+ if (record.url) {
179
+ try {
180
+ const parsed = new URL(record.url);
181
+ if (parsed.protocol === "file:")
182
+ await fsPromises.unlink(fileURLToPath(parsed)).catch(() => { });
183
+ }
184
+ catch {
185
+ // Malformed URL — ignore; we still drop the record.
186
+ }
187
+ }
188
+ community._exports.splice(idx, 1);
189
+ await persistExports(community);
190
+ emitExportsChange(community);
191
+ }
192
+ // Called on community load to:
193
+ // (a) hydrate community._exports from KeyV, and
194
+ // (b) prune records whose backing file no longer exists on disk (e.g. user deleted it).
195
+ export async function loadAndPruneExportsFromKeyv(community) {
196
+ if (!community._dbHandler)
197
+ return;
198
+ let stored;
199
+ try {
200
+ stored = community._dbHandler.keyvHas(EXPORTS_KEY) ? community._dbHandler.keyvGet(EXPORTS_KEY) ?? [] : [];
201
+ }
202
+ catch (e) {
203
+ Logger("pkc-js:local-community:export").error("Failed to load exports from keyv", e);
204
+ return;
205
+ }
206
+ const pruned = [];
207
+ let didPrune = false;
208
+ for (const record of stored) {
209
+ // Drop records that never reached completion (in-flight crashes) or whose file is missing
210
+ if (record.progress === 1 && record.url) {
211
+ try {
212
+ const parsed = new URL(record.url);
213
+ if (parsed.protocol === "file:" && !existsSync(fileURLToPath(parsed))) {
214
+ didPrune = true;
215
+ continue;
216
+ }
217
+ }
218
+ catch {
219
+ didPrune = true;
220
+ continue;
221
+ }
222
+ pruned.push(record);
223
+ }
224
+ else if (record.error) {
225
+ // Terminal failure record — keep so the user can inspect it
226
+ pruned.push(record);
227
+ }
228
+ else {
229
+ // Was in-flight when the process exited; we can't resume, so drop
230
+ didPrune = true;
231
+ }
232
+ }
233
+ community._exports = pruned;
234
+ if (didPrune)
235
+ await persistExports(community);
236
+ }
237
+ //# sourceMappingURL=export.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"export.js","sourceRoot":"","sources":["../../../../../../src/runtime/browser/community/local-community/export.ts"],"names":[],"mappings":"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"}
@@ -98,6 +98,7 @@ export async function start(community) {
98
98
  await community._dbHandler.initDbIfNeeded();
99
99
  await community._dbHandler.createOrMigrateTablesIfNeeded();
100
100
  await updateInstanceStateWithDbState(community); // sync in-memory state after potential migration
101
+ await community._loadExportsFromKeyv();
101
102
  await setChallengesToDefaultIfNotDefined(community, log);
102
103
  // Import community keys onto ipfs node
103
104
  await importCommunitySignerIntoIpfsIfNeeded(community);
@@ -1 +1 @@
1
- {"version":3,"file":"lifecycle.js","sourceRoot":"","sources":["../../../../../../src/runtime/browser/community/local-community/lifecycle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lifecycle.js","sourceRoot":"","sources":["../../../../../../src/runtime/browser/community/local-community/lifecycle.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,8 @@ import { publishChallengeVerification, publishIdempotentDuplicateVerification }
16
16
  import { checkPublicationValidity } from "./local-community/publication-validation.js";
17
17
  import { calculateLocalMfsPathForCommentUpdate } from "./local-community/comment-updates.js";
18
18
  import { addOldPageCidsToCidsToUnpin, updateCommunityIpnsIfNeeded } from "./local-community/ipns-publishing.js";
19
+ import type { InternalExportHandle } from "./local-community/export.js";
20
+ import type { CommunityExportRecord, ExportCommunityUserOptions } from "../../../community/types.js";
19
21
  export declare class LocalCommunity extends RpcLocalCommunity implements CreateNewLocalCommunityParsedOptions {
20
22
  signer: SignerWithPublicKeyAddress;
21
23
  raw: RpcLocalCommunity["raw"];
@@ -50,6 +52,9 @@ export declare class LocalCommunity extends RpcLocalCommunity implements CreateN
50
52
  }>[];
51
53
  _blocksToRm: string[];
52
54
  _postsAllPageCids: AllPageCids | undefined;
55
+ _exports: CommunityExportRecord[];
56
+ _activeExports: Map<string, InternalExportHandle>;
57
+ _exportQueue: Promise<void>;
53
58
  constructor(pkc: PKC);
54
59
  toJSONInternalAfterFirstUpdate(): InternalCommunityRecordAfterFirstUpdateType;
55
60
  toJSONInternalBeforeFirstUpdate(): InternalCommunityRecordBeforeFirstUpdateType;
@@ -71,6 +76,13 @@ export declare class LocalCommunity extends RpcLocalCommunity implements CreateN
71
76
  stop(): Promise<void>;
72
77
  delete(): Promise<void>;
73
78
  edit(newCommunityOptions: CommunityEditOptions): Promise<typeof this>;
79
+ get exports(): CommunityExportRecord[];
80
+ export(options?: ExportCommunityUserOptions): Promise<{
81
+ exportId: string;
82
+ }>;
83
+ _cancelExport(exportId: string): Promise<void>;
84
+ _deleteExport(exportId: string): Promise<void>;
85
+ _loadExportsFromKeyv(): Promise<void>;
74
86
  _getDbInternalState(includeMutable?: boolean): Promise<InternalCommunityRecordBeforeFirstUpdateType | InternalCommunityRecordAfterFirstUpdateType>;
75
87
  _listenToIncomingRequests(): Promise<void>;
76
88
  _repinCommentsIPFSIfNeeded(): Promise<void>;
@@ -23,6 +23,7 @@ import { purgeDisapprovedCommentsOlderThan } from "./local-community/cleanup.js"
23
23
  import { addOldPageCidsToCidsToUnpin, calculateLatestUpdateTrigger, calculateNewPostUpdates, resolveIpnsAndLogIfPotentialProblematicSequence, shouldResolveDomainForVerification, updateCommunityIpnsIfNeeded } from "./local-community/ipns-publishing.js";
24
24
  import { deleteCommunity, start as lifecycleStart, stop as lifecycleStop, update as lifecycleUpdate } from "./local-community/lifecycle.js";
25
25
  import { edit as editCommunity } from "./local-community/editing.js";
26
+ import { cancelExportEmbedded, cloneExportRecord, deleteExportRecord, exportCommunityEmbedded, loadAndPruneExportsFromKeyv } from "./local-community/export.js";
26
27
  // This is a sub we have locally in our pkc datapath, in a NodeJS environment
27
28
  export class LocalCommunity extends RpcLocalCommunity {
28
29
  constructor(pkc) {
@@ -44,6 +45,12 @@ export class LocalCommunity extends RpcLocalCommunity {
44
45
  this._pendingEditProps = [];
45
46
  this._blocksToRm = [];
46
47
  this._postsAllPageCids = undefined;
48
+ // Community export (issue #79). _exports is the public list surfaced through
49
+ // `community.exports`; _activeExports tracks in-flight backups so pkc.destroy() can cancel
50
+ // them; _exportQueue serializes back-to-back exports on the same community per spec.
51
+ this._exports = [];
52
+ this._activeExports = new Map();
53
+ this._exportQueue = Promise.resolve();
47
54
  this.handleChallengeExchange = this.handleChallengeExchange.bind(this);
48
55
  this._setState("stopped");
49
56
  this.started = false;
@@ -256,6 +263,21 @@ export class LocalCommunity extends RpcLocalCommunity {
256
263
  async edit(newCommunityOptions) {
257
264
  return (await editCommunity(this, newCommunityOptions));
258
265
  }
266
+ get exports() {
267
+ return this._exports.map(cloneExportRecord);
268
+ }
269
+ async export(options) {
270
+ return exportCommunityEmbedded(this, options);
271
+ }
272
+ async _cancelExport(exportId) {
273
+ return cancelExportEmbedded(this, exportId);
274
+ }
275
+ async _deleteExport(exportId) {
276
+ return deleteExportRecord(this, exportId);
277
+ }
278
+ async _loadExportsFromKeyv() {
279
+ return loadAndPruneExportsFromKeyv(this);
280
+ }
259
281
  // The three helpers below stay as methods (in addition to being free functions in their
260
282
  // respective modules) because integration tests in test/node/community/ monkey-patch
261
283
  // community._xxx = async () => { throw ... } to inject failures into the start/publish
@@ -1 +1 @@
1
- {"version":3,"file":"local-community.js","sourceRoot":"","sources":["../../../../../src/runtime/browser/community/local-community.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"local-community.js","sourceRoot":"","sources":["../../../../../src/runtime/browser/community/local-community.ts"],"names":[],"mappings":"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"}
@@ -21,6 +21,21 @@ export declare function importSignerIntoKuboNode(ipnsKeyName: string, ipfsKey: U
21
21
  id: string;
22
22
  name: string;
23
23
  } | undefined>;
24
+ export type BackupCommunityDbOptions = {
25
+ sourcePath: string;
26
+ destPath: string;
27
+ includePrivateKey: boolean;
28
+ onProgress?: (progress: number) => void;
29
+ signal?: AbortSignal;
30
+ };
31
+ export declare class BackupAbortError extends Error {
32
+ readonly name = "BackupAbortError";
33
+ constructor();
34
+ }
35
+ export declare function backupCommunityDb(opts: BackupCommunityDbOptions): Promise<{
36
+ size: number;
37
+ sha256: string;
38
+ }>;
24
39
  export declare function moveCommunityDbToDeletedDirectory(communityAddress: string, pkc: PKC): Promise<void>;
25
40
  export declare function createKuboRpcClient(kuboRpcClientOptions: KuboRpcClient["_clientOptions"]): KuboRpcClient["_client"];
26
41
  export declare function monitorCommunitiesDirectory(pkc: PKC): Promise<AbortController>;
@@ -1,4 +1,5 @@
1
- import { existsSync, readdirSync, openSync, readSync, closeSync, rm as rmSync, watch as fsWatch, promises as fsPromises } from "node:fs";
1
+ import { existsSync, readdirSync, openSync, readSync, closeSync, rm as rmSync, watch as fsWatch, promises as fsPromises, createReadStream } from "node:fs";
2
+ import { createHash } from "node:crypto";
2
3
  import { default as nodeNativeFunctions } from "./native-functions.js";
3
4
  import path from "path";
4
5
  import assert from "assert";
@@ -271,6 +272,115 @@ export async function importSignerIntoKuboNode(ipnsKeyName, ipfsKey, kuboRpcClie
271
272
  });
272
273
  });
273
274
  }
275
+ // Cancellation sentinel thrown from the better-sqlite3 progress handler when the AbortSignal fires.
276
+ // Re-thrown by backupCommunityDb so callers can distinguish abort from genuine backup failures.
277
+ export class BackupAbortError extends Error {
278
+ constructor() {
279
+ super("Backup aborted via AbortSignal");
280
+ this.name = "BackupAbortError";
281
+ }
282
+ }
283
+ export async function backupCommunityDb(opts) {
284
+ const { sourcePath, destPath, includePrivateKey, onProgress, signal } = opts;
285
+ if (signal?.aborted)
286
+ throw new BackupAbortError();
287
+ await fsPromises.mkdir(path.dirname(destPath), { recursive: true });
288
+ const partialPath = destPath + ".partial";
289
+ try {
290
+ await fsPromises.unlink(partialPath);
291
+ }
292
+ catch {
293
+ // .partial may not exist; ignore
294
+ }
295
+ let sourceDb;
296
+ try {
297
+ sourceDb = new Database(sourcePath, { fileMustExist: true, readonly: true });
298
+ await sourceDb.backup(partialPath, {
299
+ progress: ({ totalPages, remainingPages }) => {
300
+ if (signal?.aborted)
301
+ throw new BackupAbortError();
302
+ if (onProgress && totalPages > 0) {
303
+ // The final progress invocation comes with remainingPages === 0; we still
304
+ // intentionally report < 1 here so the "complete" emission is owned by the
305
+ // caller after sha256 + rename are done.
306
+ const fraction = (totalPages - remainingPages) / totalPages;
307
+ onProgress(Math.min(0.99, fraction));
308
+ }
309
+ return 100; // pages-per-step rate; mirrors better-sqlite3's internal default
310
+ }
311
+ });
312
+ sourceDb.close();
313
+ sourceDb = undefined;
314
+ if (signal?.aborted)
315
+ throw new BackupAbortError();
316
+ if (!includePrivateKey) {
317
+ await scrubPrivateKeyFromBackup(partialPath);
318
+ if (signal?.aborted)
319
+ throw new BackupAbortError();
320
+ }
321
+ const { size, sha256 } = await statAndHashFile(partialPath);
322
+ if (signal?.aborted)
323
+ throw new BackupAbortError();
324
+ await fsPromises.rename(partialPath, destPath);
325
+ return { size, sha256 };
326
+ }
327
+ catch (err) {
328
+ try {
329
+ sourceDb?.close();
330
+ }
331
+ catch {
332
+ // already closed
333
+ }
334
+ try {
335
+ await fsPromises.unlink(partialPath);
336
+ }
337
+ catch {
338
+ // already gone
339
+ }
340
+ throw err;
341
+ }
342
+ }
343
+ function isKeyvSignerPayload(v) {
344
+ if (typeof v !== "object" || v === null)
345
+ return false;
346
+ const value = v.value;
347
+ if (typeof value !== "object" || value === null)
348
+ return false;
349
+ const signer = value.signer;
350
+ return signer === undefined || (typeof signer === "object" && signer !== null);
351
+ }
352
+ // Scope: only the community signer's privateKey/ipfsKey (in the internalCommunity KeyV record).
353
+ // The pseudonymityAliases table stores per-comment aliasPrivateKey values and is intentionally
354
+ // NOT scrubbed — those keys belong to the alias identities themselves and are part of the
355
+ // publication record, not the community's own signing material.
356
+ async function scrubPrivateKeyFromBackup(dbPath) {
357
+ const db = new Database(dbPath, { fileMustExist: true });
358
+ try {
359
+ const internalKey = "keyv:" + STORAGE_KEYS[STORAGE_KEYS.INTERNAL_COMMUNITY];
360
+ const row = db.prepare("SELECT value FROM keyv WHERE key = ?").get(internalKey);
361
+ if (!row)
362
+ return;
363
+ const parsed = JSON.parse(row.value);
364
+ if (!isKeyvSignerPayload(parsed) || !parsed.value.signer)
365
+ return;
366
+ parsed.value.signer = { ...parsed.value.signer, privateKey: undefined, ipfsKey: undefined };
367
+ db.prepare("UPDATE keyv SET value = ? WHERE key = ?").run(JSON.stringify(parsed), internalKey);
368
+ }
369
+ finally {
370
+ db.close();
371
+ }
372
+ }
373
+ async function statAndHashFile(filePath) {
374
+ const stat = await fsPromises.stat(filePath);
375
+ const hash = createHash("sha256");
376
+ await new Promise((resolve, reject) => {
377
+ const stream = createReadStream(filePath);
378
+ stream.on("data", (chunk) => hash.update(chunk));
379
+ stream.on("end", resolve);
380
+ stream.on("error", reject);
381
+ });
382
+ return { size: stat.size, sha256: hash.digest("hex") };
383
+ }
274
384
  export async function moveCommunityDbToDeletedDirectory(communityAddress, pkc) {
275
385
  if (typeof pkc.dataPath !== "string")
276
386
  throw Error("pkc.dataPath is not defined");