@pkcprotocol/pkc-js 0.0.84 → 0.0.86

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 (119) hide show
  1. package/dist/browser/clients/rpc-client/rpc-schema-util.d.ts +1 -0
  2. package/dist/browser/clients/rpc-client/schema.d.ts +1 -0
  3. package/dist/browser/community/remote-community.d.ts +5 -0
  4. package/dist/browser/community/remote-community.js +98 -16
  5. package/dist/browser/community/remote-community.js.map +1 -1
  6. package/dist/browser/community/schema.d.ts +106 -2
  7. package/dist/browser/community/schema.js +30 -7
  8. package/dist/browser/community/schema.js.map +1 -1
  9. package/dist/browser/errors.d.ts +6 -1
  10. package/dist/browser/errors.js +8 -0
  11. package/dist/browser/errors.js.map +1 -1
  12. package/dist/browser/generated-version.d.ts +1 -1
  13. package/dist/browser/generated-version.js +1 -1
  14. package/dist/browser/index-with-compile-cache.d.ts +88 -2
  15. package/dist/browser/index.d.ts +88 -2
  16. package/dist/browser/pkc-error.d.ts +1 -1
  17. package/dist/browser/publications/community-edit/schema.d.ts +4 -0
  18. package/dist/browser/pubsub-messages/schema.d.ts +2 -0
  19. package/dist/browser/rpc/src/index.js +4 -1
  20. package/dist/browser/rpc/src/index.js.map +1 -1
  21. package/dist/browser/rpc/src/lib/pkc-js/index.d.ts +44 -1
  22. package/dist/browser/rpc/src/schema.d.ts +265 -7
  23. package/dist/browser/rpc/src/schema.js +4 -2
  24. package/dist/browser/rpc/src/schema.js.map +1 -1
  25. package/dist/browser/runtime/node/community/challenges/exclude/exclude.d.ts +2 -2
  26. package/dist/browser/runtime/node/community/challenges/exclude/exclude.js +5 -1
  27. package/dist/browser/runtime/node/community/challenges/exclude/exclude.js.map +1 -1
  28. package/dist/browser/runtime/node/community/challenges/index.d.ts +7 -3
  29. package/dist/browser/runtime/node/community/challenges/index.js +29 -6
  30. package/dist/browser/runtime/node/community/challenges/index.js.map +1 -1
  31. package/dist/browser/runtime/node/community/challenges/pkc-js-challenges/address-list-validation.d.ts +4 -0
  32. package/dist/browser/runtime/node/community/challenges/pkc-js-challenges/address-list-validation.js +27 -0
  33. package/dist/browser/runtime/node/community/challenges/pkc-js-challenges/address-list-validation.js.map +1 -0
  34. package/dist/browser/runtime/node/community/challenges/pkc-js-challenges/blacklist.js +2 -1
  35. package/dist/browser/runtime/node/community/challenges/pkc-js-challenges/blacklist.js.map +1 -1
  36. package/dist/browser/runtime/node/community/challenges/pkc-js-challenges/publication-match.js +34 -1
  37. package/dist/browser/runtime/node/community/challenges/pkc-js-challenges/publication-match.js.map +1 -1
  38. package/dist/browser/runtime/node/community/challenges/pkc-js-challenges/question.js +8 -1
  39. package/dist/browser/runtime/node/community/challenges/pkc-js-challenges/question.js.map +1 -1
  40. package/dist/browser/runtime/node/community/challenges/pkc-js-challenges/whitelist.js +2 -1
  41. package/dist/browser/runtime/node/community/challenges/pkc-js-challenges/whitelist.js.map +1 -1
  42. package/dist/browser/runtime/node/community/challenges/validate-challenge-settings.d.ts +22 -0
  43. package/dist/browser/runtime/node/community/challenges/validate-challenge-settings.js +92 -0
  44. package/dist/browser/runtime/node/community/challenges/validate-challenge-settings.js.map +1 -0
  45. package/dist/browser/runtime/node/community/db-handler.d.ts +1 -0
  46. package/dist/browser/runtime/node/community/local-community/db-state.js +8 -0
  47. package/dist/browser/runtime/node/community/local-community/db-state.js.map +1 -1
  48. package/dist/browser/runtime/node/community/local-community/editing.js +8 -0
  49. package/dist/browser/runtime/node/community/local-community/editing.js.map +1 -1
  50. package/dist/browser/runtime/node/community/local-community/lifecycle.js +29 -0
  51. package/dist/browser/runtime/node/community/local-community/lifecycle.js.map +1 -1
  52. package/dist/browser/schema/schema-util.d.ts +9 -0
  53. package/dist/browser/schema.d.ts +352 -8
  54. package/dist/browser/test/test-util.d.ts +2 -0
  55. package/dist/bundled/bundle-manifest.json +27 -25
  56. package/dist/bundled/chunks/{helia-for-pkc-BlDudTLN.js → helia-for-pkc-yqf2rWMx.js} +2 -2
  57. package/dist/bundled/chunks/{local-community-4wIeaqty.js → local-community-BURzF_1m.js} +1 -1
  58. package/dist/bundled/chunks/{local-community-5PMI-TDB.js → local-community-NUwjwbZz.js} +107 -2
  59. package/dist/bundled/chunks/{node-B7GkmuSc.js → node-BbvETZ1u.js} +5 -5
  60. package/dist/bundled/chunks/{rpc-local-community-r51cTBYd.js → rpc-local-community-Cpw9_Nuo.js} +119 -30
  61. package/dist/bundled/chunks/{schema-AXrL86Q4.js → schema-BT0023M6.js} +50 -6
  62. package/dist/bundled/chunks/{util-CwzCEPKs.js → util-BmT_84kq.js} +1 -1
  63. package/dist/bundled/index.js +1 -1
  64. package/dist/bundled/rpc/src/index.js +5 -5
  65. package/dist/node/clients/rpc-client/rpc-schema-util.d.ts +1 -0
  66. package/dist/node/clients/rpc-client/schema.d.ts +1 -0
  67. package/dist/node/community/remote-community.d.ts +5 -0
  68. package/dist/node/community/remote-community.js +98 -16
  69. package/dist/node/community/remote-community.js.map +1 -1
  70. package/dist/node/community/schema.d.ts +106 -2
  71. package/dist/node/community/schema.js +30 -7
  72. package/dist/node/community/schema.js.map +1 -1
  73. package/dist/node/errors.d.ts +6 -1
  74. package/dist/node/errors.js +8 -0
  75. package/dist/node/errors.js.map +1 -1
  76. package/dist/node/generated-version.d.ts +1 -1
  77. package/dist/node/generated-version.js +1 -1
  78. package/dist/node/index-with-compile-cache.d.ts +88 -2
  79. package/dist/node/index.d.ts +88 -2
  80. package/dist/node/pkc-error.d.ts +1 -1
  81. package/dist/node/publications/community-edit/schema.d.ts +4 -0
  82. package/dist/node/pubsub-messages/schema.d.ts +2 -0
  83. package/dist/node/rpc/src/index.js +4 -1
  84. package/dist/node/rpc/src/index.js.map +1 -1
  85. package/dist/node/rpc/src/lib/pkc-js/index.d.ts +44 -1
  86. package/dist/node/rpc/src/schema.d.ts +265 -7
  87. package/dist/node/rpc/src/schema.js +4 -2
  88. package/dist/node/rpc/src/schema.js.map +1 -1
  89. package/dist/node/runtime/node/community/challenges/exclude/exclude.d.ts +2 -2
  90. package/dist/node/runtime/node/community/challenges/exclude/exclude.js +5 -1
  91. package/dist/node/runtime/node/community/challenges/exclude/exclude.js.map +1 -1
  92. package/dist/node/runtime/node/community/challenges/index.d.ts +7 -3
  93. package/dist/node/runtime/node/community/challenges/index.js +29 -6
  94. package/dist/node/runtime/node/community/challenges/index.js.map +1 -1
  95. package/dist/node/runtime/node/community/challenges/pkc-js-challenges/address-list-validation.d.ts +4 -0
  96. package/dist/node/runtime/node/community/challenges/pkc-js-challenges/address-list-validation.js +27 -0
  97. package/dist/node/runtime/node/community/challenges/pkc-js-challenges/address-list-validation.js.map +1 -0
  98. package/dist/node/runtime/node/community/challenges/pkc-js-challenges/blacklist.js +2 -1
  99. package/dist/node/runtime/node/community/challenges/pkc-js-challenges/blacklist.js.map +1 -1
  100. package/dist/node/runtime/node/community/challenges/pkc-js-challenges/publication-match.js +34 -1
  101. package/dist/node/runtime/node/community/challenges/pkc-js-challenges/publication-match.js.map +1 -1
  102. package/dist/node/runtime/node/community/challenges/pkc-js-challenges/question.js +8 -1
  103. package/dist/node/runtime/node/community/challenges/pkc-js-challenges/question.js.map +1 -1
  104. package/dist/node/runtime/node/community/challenges/pkc-js-challenges/whitelist.js +2 -1
  105. package/dist/node/runtime/node/community/challenges/pkc-js-challenges/whitelist.js.map +1 -1
  106. package/dist/node/runtime/node/community/challenges/validate-challenge-settings.d.ts +22 -0
  107. package/dist/node/runtime/node/community/challenges/validate-challenge-settings.js +92 -0
  108. package/dist/node/runtime/node/community/challenges/validate-challenge-settings.js.map +1 -0
  109. package/dist/node/runtime/node/community/db-handler.d.ts +1 -0
  110. package/dist/node/runtime/node/community/local-community/db-state.js +8 -0
  111. package/dist/node/runtime/node/community/local-community/db-state.js.map +1 -1
  112. package/dist/node/runtime/node/community/local-community/editing.js +8 -0
  113. package/dist/node/runtime/node/community/local-community/editing.js.map +1 -1
  114. package/dist/node/runtime/node/community/local-community/lifecycle.js +29 -0
  115. package/dist/node/runtime/node/community/local-community/lifecycle.js.map +1 -1
  116. package/dist/node/schema/schema-util.d.ts +9 -0
  117. package/dist/node/schema.d.ts +352 -8
  118. package/dist/node/test/test-util.d.ts +2 -0
  119. package/package.json +3 -3
@@ -14,7 +14,7 @@
14
14
  "node:module"
15
15
  ],
16
16
  "dynamicImports": [
17
- "chunks/node-B7GkmuSc.js"
17
+ "chunks/node-BbvETZ1u.js"
18
18
  ],
19
19
  "inputs": [
20
20
  "dist/node/runtime/node/compile-cache.js",
@@ -24,7 +24,7 @@
24
24
  "index.js": {
25
25
  "isEntry": true,
26
26
  "imports": [
27
- "chunks/node-B7GkmuSc.js"
27
+ "chunks/node-BbvETZ1u.js"
28
28
  ],
29
29
  "dynamicImports": [],
30
30
  "inputs": []
@@ -32,10 +32,10 @@
32
32
  "rpc/src/index.js": {
33
33
  "isEntry": true,
34
34
  "imports": [
35
- "chunks/rpc-local-community-r51cTBYd.js",
36
- "chunks/node-B7GkmuSc.js",
37
- "chunks/schema-AXrL86Q4.js",
38
- "chunks/local-community-5PMI-TDB.js",
35
+ "chunks/rpc-local-community-Cpw9_Nuo.js",
36
+ "chunks/node-BbvETZ1u.js",
37
+ "chunks/schema-BT0023M6.js",
38
+ "chunks/local-community-NUwjwbZz.js",
39
39
  "node:url",
40
40
  "path",
41
41
  "assert",
@@ -65,12 +65,12 @@
65
65
  "\u0000rolldown/runtime.js"
66
66
  ]
67
67
  },
68
- "chunks/helia-for-pkc-BlDudTLN.js": {
68
+ "chunks/helia-for-pkc-yqf2rWMx.js": {
69
69
  "isEntry": false,
70
70
  "imports": [
71
71
  "chunks/chunk-2rV9d50f.js",
72
- "chunks/schema-AXrL86Q4.js",
73
- "chunks/util-CwzCEPKs.js",
72
+ "chunks/schema-BT0023M6.js",
73
+ "chunks/util-BmT_84kq.js",
74
74
  "chunks/src-DKntVmyX.js",
75
75
  "chunks/src-Cpx2Sts8.js",
76
76
  "node:url",
@@ -186,20 +186,20 @@
186
186
  "dist/node/helia/helia-for-pkc.js"
187
187
  ]
188
188
  },
189
- "chunks/local-community-4wIeaqty.js": {
189
+ "chunks/local-community-BURzF_1m.js": {
190
190
  "isEntry": false,
191
191
  "imports": [
192
- "chunks/local-community-5PMI-TDB.js"
192
+ "chunks/local-community-NUwjwbZz.js"
193
193
  ],
194
194
  "dynamicImports": [],
195
195
  "inputs": []
196
196
  },
197
- "chunks/local-community-5PMI-TDB.js": {
197
+ "chunks/local-community-NUwjwbZz.js": {
198
198
  "isEntry": false,
199
199
  "imports": [
200
200
  "chunks/chunk-2rV9d50f.js",
201
- "chunks/rpc-local-community-r51cTBYd.js",
202
- "chunks/schema-AXrL86Q4.js",
201
+ "chunks/rpc-local-community-Cpw9_Nuo.js",
202
+ "chunks/schema-BT0023M6.js",
203
203
  "node:crypto",
204
204
  "node:url",
205
205
  "node:path",
@@ -231,6 +231,7 @@
231
231
  "dist/node/runtime/node/community/local-community/challenges.js",
232
232
  "dist/node/runtime/node/community/local-community/publication-validation.js",
233
233
  "dist/node/runtime/node/community/local-community/publication-store.js",
234
+ "dist/node/runtime/node/community/challenges/validate-challenge-settings.js",
234
235
  "dist/node/runtime/node/community/local-community/registry.js",
235
236
  "node_modules/graceful-fs/polyfills.js",
236
237
  "node_modules/graceful-fs/legacy-streams.js",
@@ -255,13 +256,13 @@
255
256
  "dist/node/runtime/node/community/local-community.js"
256
257
  ]
257
258
  },
258
- "chunks/node-B7GkmuSc.js": {
259
+ "chunks/node-BbvETZ1u.js": {
259
260
  "isEntry": false,
260
261
  "imports": [
261
262
  "chunks/chunk-2rV9d50f.js",
262
- "chunks/rpc-local-community-r51cTBYd.js",
263
- "chunks/schema-AXrL86Q4.js",
264
- "chunks/util-CwzCEPKs.js",
263
+ "chunks/rpc-local-community-Cpw9_Nuo.js",
264
+ "chunks/schema-BT0023M6.js",
265
+ "chunks/util-BmT_84kq.js",
265
266
  "path",
266
267
  "assert",
267
268
  "fs",
@@ -272,8 +273,8 @@
272
273
  "rpc-websockets"
273
274
  ],
274
275
  "dynamicImports": [
275
- "chunks/helia-for-pkc-BlDudTLN.js",
276
- "chunks/local-community-5PMI-TDB.js"
276
+ "chunks/helia-for-pkc-yqf2rWMx.js",
277
+ "chunks/local-community-NUwjwbZz.js"
277
278
  ],
278
279
  "inputs": [
279
280
  "node_modules/zod/v4/locales/en.js",
@@ -315,11 +316,11 @@
315
316
  "dist/node/index.js"
316
317
  ]
317
318
  },
318
- "chunks/rpc-local-community-r51cTBYd.js": {
319
+ "chunks/rpc-local-community-Cpw9_Nuo.js": {
319
320
  "isEntry": false,
320
321
  "imports": [
321
322
  "chunks/chunk-2rV9d50f.js",
322
- "chunks/schema-AXrL86Q4.js",
323
+ "chunks/schema-BT0023M6.js",
323
324
  "chunks/src-CYIMjhjK.js",
324
325
  "node:crypto",
325
326
  "node:url",
@@ -862,6 +863,7 @@
862
863
  "dist/node/runtime/node/community/challenges/exclude/index.js",
863
864
  "dist/node/runtime/node/community/challenges/pkc-js-challenges/text-math.js",
864
865
  "dist/node/runtime/node/community/challenges/pkc-js-challenges/fail.js",
866
+ "dist/node/runtime/node/community/challenges/pkc-js-challenges/address-list-validation.js",
865
867
  "dist/node/runtime/node/community/challenges/pkc-js-challenges/blacklist.js",
866
868
  "dist/node/runtime/node/community/challenges/pkc-js-challenges/whitelist.js",
867
869
  "dist/node/runtime/node/community/challenges/pkc-js-challenges/question.js",
@@ -872,7 +874,7 @@
872
874
  "dist/node/community/rpc-local-community.js"
873
875
  ]
874
876
  },
875
- "chunks/schema-AXrL86Q4.js": {
877
+ "chunks/schema-BT0023M6.js": {
876
878
  "isEntry": false,
877
879
  "imports": [
878
880
  "chunks/chunk-2rV9d50f.js",
@@ -1325,10 +1327,10 @@
1325
1327
  "node_modules/kubo-rpc-client/dist/src/index.js"
1326
1328
  ]
1327
1329
  },
1328
- "chunks/util-CwzCEPKs.js": {
1330
+ "chunks/util-BmT_84kq.js": {
1329
1331
  "isEntry": false,
1330
1332
  "imports": [
1331
- "chunks/schema-AXrL86Q4.js",
1333
+ "chunks/schema-BT0023M6.js",
1332
1334
  "ipns/selector",
1333
1335
  "uint8arrays/equals"
1334
1336
  ],
@@ -1,6 +1,6 @@
1
1
  import { i as __toESM, r as __require, t as __commonJSMin } from "./chunk-2rV9d50f.js";
2
- import { L as hideClassPrivateProps, R as ipnsNameToIpnsOverPubsubTopic, Sr as logger_default, br as PKCError } from "./schema-AXrL86Q4.js";
3
- import { a as fetchBlockWithStalledSessionFailover, i as directFetchIpnsRecordFromProviders, n as cacheIpnsRecordInPubsubLocalStore, o as getHeliaDebugContext, r as connectToPubsubPeers, s as selectBitswapSessionSeedPeers } from "./util-CwzCEPKs.js";
2
+ import { L as hideClassPrivateProps, R as ipnsNameToIpnsOverPubsubTopic, Sr as logger_default, br as PKCError } from "./schema-BT0023M6.js";
3
+ import { a as fetchBlockWithStalledSessionFailover, i as directFetchIpnsRecordFromProviders, n as cacheIpnsRecordInPubsubLocalStore, o as getHeliaDebugContext, r as connectToPubsubPeers, s as selectBitswapSessionSeedPeers } from "./util-BmT_84kq.js";
4
4
  import { t as map } from "./src-Cpx2Sts8.js";
5
5
  import { t as parallelBatch } from "./src-DKntVmyX.js";
6
6
  import { fileURLToPath } from "node:url";
@@ -1,2 +1,2 @@
1
- import { n as createNewLocalCommunityDb, r as updateInstancePropsWithStartedCommunityOrDb, t as LocalCommunity } from "./local-community-5PMI-TDB.js";
1
+ import { n as createNewLocalCommunityDb, r as updateInstancePropsWithStartedCommunityOrDb, t as LocalCommunity } from "./local-community-NUwjwbZz.js";
2
2
  export { LocalCommunity, createNewLocalCommunityDb, updateInstancePropsWithStartedCommunityOrDb };
@@ -1,6 +1,6 @@
1
1
  import { i as __toESM, r as __require, t as __commonJSMin } from "./chunk-2rV9d50f.js";
2
- import { $ as pubsubTopicToDhtKey, $n as n$4, Bn as CommentEditReservedFields, C as contentContainsMarkdownAudio, Ct as findStartedCommunity, F as getIpnsRecordInLocalKuboNode, Fr as ZodError, Ft as untrackStartedCommunity, G as isLinkOfAudio, Hn as CommentEditsTableRowSchema, Ht as CommunityEditPublicationPubsubReservedFields, J as isLinkOfVideo, Jt as CommentModerationReservedFields, K as isLinkOfImage, Kn as AuthorReservedFields, L as hideClassPrivateProps, Lt as untrackUpdatingCommunity, M as genToArray, Mn as CommentsTableRowSchema, Mt as trackStartedCommunity, N as getEquivalentCommunityAddresses, O as derivePublicationFromChallengeRequest, P as getErrorCodeFromMessage, Pt as trackUpdatingCommunity, Q as isStringDomain, R as ipnsNameToIpnsOverPubsubTopic, Rn as CommentEditPubsubMessagePublicationSchema, Rt as require_sha256, S as calculateStringSizeSameAsIpfsAddCidV0, Sn as CommentPubsubMessageReservedFields, Sr as logger_default, St as findCommunityInRegistry, T as contentContainsMarkdownVideos, Tt as findUpdatingCommunity, W as isLinkOfAnimatedImage, Xt as CommentModerationsTableRowSchema, Y as isLinkValid, _t as statMfsPathSafely, a as ChallengeRequestMessageSchema, an as CommunityIpfsSchema, ar as e$1, at as removeMfsFilesSafely, b as areEquivalentCommunityAddresses, br as PKCError, cr as t$4, d as DecryptedChallengeRequestSchema, dr as t$5, dt as retryKuboBlockPutPinAndProvidePubsubTopic, er as t$8, fr as t$3, gn as VotePubsubReservedFields, gt as sleepUntilTimeoutOrAbort, hn as VotePubsubMessagePublicationSchema, ir as e, it as removeBlocksFromKuboNode, jn as CommentUpdateTableRowSchema, jt as syncCommunityRegistryEntry, k as doesDomainAddressHaveCapitalLetter, kn as CommentUpdateSchema, mr as require_retry, nr as t$7, on as CommunitySignedPropertyNames, pt as retryKuboIpfsAddAndProvide, q as isLinkOfMedia, qt as CommentModerationPubsubMessagePublicationSchema, r as ChallengeMessageSchema, rr as t$6, s as ChallengeVerificationMessageSchema, sr as r$1, st as removeNullUndefinedValues, t as ChallengeAnswerMessageSchema, tr as n$3, u as DecryptedChallengeRequestPublicationSchema, vn as VoteTablesRowSchema, w as contentContainsMarkdownImages, x as calculateIpfsCidV0, xn as CommentIpfsSchema, xr as messages, xt as writeKuboFilesWithTimeout, y as version_default, yt as timestamp, zn as CommentEditPubsubMessagePublicationWithFlexibleAuthorSchema } from "./schema-AXrL86Q4.js";
3
- import { $n as crosspostChainDepthUpTo, $t as createSchemaRowParser, A as deriveDbReplies, At as verifyCommentModeration, C as backupCommunityDb, D as deleteOldCommunityInWindows, Et as verifyChallengeRequest, Ft as verifyVote, G as TIMEFRAMES_TO_SECONDS, H as POSTS_SORT_TYPES, It as buildRuntimeAuthor, Kt as decode, L as moveCommunityDbToDeletedDirectory, Lt as cleanWireAuthor, Mt as verifyCommentUpdate, N as getThumbnailPropsOfLink, Nt as verifyCommunity, O as deriveCommentIpfsFromCommentTableRow, Ot as verifyCommentEdit, P as importSignerIntoKuboNode, Pt as verifyCommunityEdit, Qt as getPublicKeyFromPrivateKey, R as resolveDbPostsCidRefs, S as BackupAbortError, Sn as parseDecryptedChallengeAnswerWithPKCErrorIfItFails, T as calculateInlineRepliesBudget, Tn as parseJsonWithPKCErrorIfFails, U as POST_REPLIES_SORT_TYPES, Ut as getCommunityNameFromWire, W as REPLY_REPLIES_SORT_TYPES, Wt as getCommunityPublicKeyFromWire, X as iterateOverPageCidsToFindAllCids, Xt as getPKCAddressFromPublicKey, Yt as getIpfsKeyFromPrivateKey, Zt as getPKCAddressFromPublicKeySync, _t as signCommentEdit, a as pkcJsChallenges, ar as n$6, bt as signCommentUpdateForChallengeVerification, cr as t$10, ct as pLimit, dr as require_lodash_merge, dt as cleanUpBeforePublishing, er as effectiveMaxCrosspostDepth, fn as parseCommunityIpfsSchemaPassthroughWithPKCErrorIfItFails, gt as signComment, h as SignerWithPublicKeyAddress, ht as signChallengeVerification, i as getCommunityChallengeFromCommunityChallengeSettings, ir as t$11, j as getDefaultCommunityDbConfig, jt as verifyCommentPubsubMessage, k as deriveDbPosts, kt as verifyCommentIpfs, l as MAX_FILE_SIZE_BYTES_FOR_COMMUNITY_IPFS, lr as stringify, nr as t$12, o as TrackedInstanceRegistry, or as n$5, pt as signChallengeMessage, qt as encode, r as getChallengeVerification, rr as r$2, s as LRUCache, t as RpcLocalCommunity, tr as t$9, u as KeyvBetterSqlite3, un as parseCommunityEditOptionsSchemaWithPKCErrorIfItFails, ur as STORAGE_KEYS, w as calculateExpectedSignatureSize, wt as verifyChallengeAnswer, x as encryptEd25519AesGcmPublicKeyBuffer, xt as signCommunity, y as decryptEd25519AesGcmPublicKeyBuffer, yt as signCommentUpdate, zt as getAuthorNameFromWire } from "./rpc-local-community-r51cTBYd.js";
2
+ import { $ as pubsubTopicToDhtKey, $n as n$4, Bn as CommentEditReservedFields, C as contentContainsMarkdownAudio, Ct as findStartedCommunity, F as getIpnsRecordInLocalKuboNode, Fr as ZodError, Ft as untrackStartedCommunity, G as isLinkOfAudio, Hn as CommentEditsTableRowSchema, Ht as CommunityEditPublicationPubsubReservedFields, J as isLinkOfVideo, Jt as CommentModerationReservedFields, K as isLinkOfImage, Kn as AuthorReservedFields, L as hideClassPrivateProps, Lt as untrackUpdatingCommunity, M as genToArray, Mn as CommentsTableRowSchema, Mt as trackStartedCommunity, N as getEquivalentCommunityAddresses, O as derivePublicationFromChallengeRequest, P as getErrorCodeFromMessage, Pt as trackUpdatingCommunity, Q as isStringDomain, R as ipnsNameToIpnsOverPubsubTopic, Rn as CommentEditPubsubMessagePublicationSchema, Rt as require_sha256, S as calculateStringSizeSameAsIpfsAddCidV0, Sn as CommentPubsubMessageReservedFields, Sr as logger_default, St as findCommunityInRegistry, T as contentContainsMarkdownVideos, Tt as findUpdatingCommunity, W as isLinkOfAnimatedImage, Xt as CommentModerationsTableRowSchema, Y as isLinkValid, _t as statMfsPathSafely, a as ChallengeRequestMessageSchema, an as CommunityIpfsSchema, ar as e$1, at as removeMfsFilesSafely, b as areEquivalentCommunityAddresses, br as PKCError, cr as t$4, d as DecryptedChallengeRequestSchema, dr as t$5, dt as retryKuboBlockPutPinAndProvidePubsubTopic, er as t$8, fr as t$3, gn as VotePubsubReservedFields, gt as sleepUntilTimeoutOrAbort, hn as VotePubsubMessagePublicationSchema, ir as e, it as removeBlocksFromKuboNode, jn as CommentUpdateTableRowSchema, jt as syncCommunityRegistryEntry, k as doesDomainAddressHaveCapitalLetter, kn as CommentUpdateSchema, mr as require_retry, nr as t$7, on as CommunitySignedPropertyNames, pt as retryKuboIpfsAddAndProvide, q as isLinkOfMedia, qt as CommentModerationPubsubMessagePublicationSchema, r as ChallengeMessageSchema, rr as t$6, s as ChallengeVerificationMessageSchema, sr as r$1, st as removeNullUndefinedValues, t as ChallengeAnswerMessageSchema, tr as n$3, u as DecryptedChallengeRequestPublicationSchema, vn as VoteTablesRowSchema, w as contentContainsMarkdownImages, x as calculateIpfsCidV0, xn as CommentIpfsSchema, xr as messages, xt as writeKuboFilesWithTimeout, y as version_default, yt as timestamp, zn as CommentEditPubsubMessagePublicationWithFlexibleAuthorSchema } from "./schema-BT0023M6.js";
3
+ import { $t as getPublicKeyFromPrivateKey, A as deriveDbPosts, At as verifyCommentIpfs, Bt as getAuthorNameFromWire, C as BackupAbortError, Cn as parseDecryptedChallengeAnswerWithPKCErrorIfItFails, Dt as verifyChallengeRequest, E as calculateInlineRepliesBudget, En as parseJsonWithPKCErrorIfFails, F as importSignerIntoKuboNode, Ft as verifyCommunityEdit, G as REPLY_REPLIES_SORT_TYPES, Gt as getCommunityPublicKeyFromWire, It as verifyVote, Jt as encode, K as TIMEFRAMES_TO_SECONDS, Lt as buildRuntimeAuthor, M as getDefaultCommunityDbConfig, Mt as verifyCommentPubsubMessage, Nt as verifyCommentUpdate, O as deleteOldCommunityInWindows, P as getThumbnailPropsOfLink, Pt as verifyCommunity, Qt as getPKCAddressFromPublicKeySync, R as moveCommunityDbToDeletedDirectory, Rt as cleanWireAuthor, S as encryptEd25519AesGcmPublicKeyBuffer, St as signCommunity, T as calculateExpectedSignatureSize, Tt as verifyChallengeAnswer, U as POSTS_SORT_TYPES, W as POST_REPLIES_SORT_TYPES, Wt as getCommunityNameFromWire, Xt as getIpfsKeyFromPrivateKey, Z as iterateOverPageCidsToFindAllCids, Zt as getPKCAddressFromPublicKey, _t as signComment, a as loadChallengeFileFromCommunityChallengeSettings, ar as t$11, b as decryptEd25519AesGcmPublicKeyBuffer, bt as signCommentUpdate, c as LRUCache, d as KeyvBetterSqlite3, dn as parseCommunityEditOptionsSchemaWithPKCErrorIfItFails, dr as STORAGE_KEYS, en as createSchemaRowParser, er as crosspostChainDepthUpTo, fr as require_lodash_merge, ft as cleanUpBeforePublishing, g as SignerWithPublicKeyAddress, gt as signChallengeVerification, i as getCommunityChallengeFromCommunityChallengeSettings, ir as r$2, j as deriveDbReplies, jt as verifyCommentModeration, k as deriveCommentIpfsFromCommentTableRow, kt as verifyCommentEdit, lr as t$10, lt as pLimit, mt as signChallengeMessage, nr as t$9, o as pkcJsChallenges, or as n$6, pn as parseCommunityIpfsSchemaPassthroughWithPKCErrorIfItFails, qt as decode, r as getChallengeVerification, rr as t$12, s as TrackedInstanceRegistry, sr as n$5, t as RpcLocalCommunity, tr as effectiveMaxCrosspostDepth, u as MAX_FILE_SIZE_BYTES_FOR_COMMUNITY_IPFS, ur as stringify, vt as signCommentEdit, w as backupCommunityDb, xt as signCommentUpdateForChallengeVerification, z as resolveDbPostsCidRefs } from "./rpc-local-community-Cpw9_Nuo.js";
4
4
  import { randomFillSync, randomUUID } from "node:crypto";
5
5
  import { fileURLToPath, pathToFileURL } from "node:url";
6
6
  import path from "node:path";
@@ -1739,6 +1739,77 @@ async function storePublication(community, request, pendingApproval, challengeAg
1739
1739
  else throw Error("Don't know how to store this publication" + request);
1740
1740
  }
1741
1741
  //#endregion
1742
+ //#region dist/node/runtime/node/community/challenges/validate-challenge-settings.js
1743
+ const describeChallenge = (communityChallengeSettings) => communityChallengeSettings.name || communityChallengeSettings.path || "unknown challenge";
1744
+ const isOptionSet = (value) => value !== void 0 && value !== null;
1745
+ function validateChallengeSettingsAgainstChallengeFile({ challengeSettings, challengeFile, challengeIndex }) {
1746
+ const baseDetails = {
1747
+ challengeIndex,
1748
+ challengeName: describeChallenge(challengeSettings)
1749
+ };
1750
+ const { optionInputs } = challengeFile;
1751
+ if (optionInputs) {
1752
+ const declaredOptions = new Set(optionInputs.map((optionInput) => optionInput.option));
1753
+ for (const optionName of Object.keys(challengeSettings.options ?? {})) if (!declaredOptions.has(optionName)) return new PKCError("ERR_CHALLENGE_OPTION_NOT_DECLARED_IN_OPTION_INPUTS", {
1754
+ ...baseDetails,
1755
+ offendingOption: optionName,
1756
+ declaredOptions: [...declaredOptions]
1757
+ });
1758
+ for (const optionInput of optionInputs) if (optionInput.required && !isOptionSet(challengeSettings.options?.[optionInput.option])) return new PKCError("ERR_CHALLENGE_REQUIRED_OPTION_MISSING", {
1759
+ ...baseDetails,
1760
+ missingOption: optionInput.option
1761
+ });
1762
+ for (const optionName of challengeSettings.publicOptions ?? []) if (!declaredOptions.has(optionName)) return new PKCError("ERR_CHALLENGE_PUBLIC_OPTION_NOT_DECLARED_IN_OPTION_INPUTS", {
1763
+ ...baseDetails,
1764
+ offendingOption: optionName,
1765
+ declaredOptions: [...declaredOptions]
1766
+ });
1767
+ }
1768
+ if (challengeFile.validateChallengeSettings) try {
1769
+ challengeFile.validateChallengeSettings({ challengeSettings });
1770
+ } catch (e) {
1771
+ const wrapped = new PKCError("ERR_CHALLENGE_SETTINGS_VALIDATION_FAILED", {
1772
+ ...baseDetails,
1773
+ validationError: e instanceof Error ? e.message : String(e)
1774
+ });
1775
+ Object.assign(wrapped, { cause: e });
1776
+ return wrapped;
1777
+ }
1778
+ }
1779
+ async function collectChallengeSettingsValidationFailures({ challengeSettings, pkc }) {
1780
+ const failures = [];
1781
+ for (const [challengeIndex, communityChallengeSettings] of challengeSettings.entries()) {
1782
+ const error = validateChallengeSettingsAgainstChallengeFile({
1783
+ challengeSettings: communityChallengeSettings,
1784
+ challengeFile: await loadChallengeFileFromCommunityChallengeSettings({
1785
+ communityChallengeSettings,
1786
+ pkc
1787
+ }),
1788
+ challengeIndex
1789
+ });
1790
+ if (error) failures.push({
1791
+ challengeIndex,
1792
+ challengeName: describeChallenge(communityChallengeSettings),
1793
+ error
1794
+ });
1795
+ }
1796
+ return failures;
1797
+ }
1798
+ async function throwIfChallengeSettingsAreInvalid({ challengeSettings, pkc, communityAddress }) {
1799
+ const failures = await collectChallengeSettingsValidationFailures({
1800
+ challengeSettings,
1801
+ pkc
1802
+ });
1803
+ if (failures.length) throw new PKCError("ERR_CHALLENGE_SETTINGS_VALIDATION_FAILED_FOR_CHALLENGES", {
1804
+ communityAddress,
1805
+ failures: failures.map(({ challengeIndex, challengeName, error }) => ({
1806
+ challengeIndex,
1807
+ challengeName,
1808
+ error
1809
+ }))
1810
+ });
1811
+ }
1812
+ //#endregion
1742
1813
  //#region dist/node/runtime/node/community/local-community/registry.js
1743
1814
  const processStartedCommunities = new TrackedInstanceRegistry();
1744
1815
  //#endregion
@@ -6091,6 +6162,11 @@ async function createNewLocalCommunityDb(community) {
6091
6162
  ...community.settings,
6092
6163
  purgeDisapprovedCommentsOlderThan: 121e4
6093
6164
  };
6165
+ await throwIfChallengeSettingsAreInvalid({
6166
+ challengeSettings: community.settings.challenges,
6167
+ pkc: community._pkc,
6168
+ communityAddress: community.address
6169
+ });
6094
6170
  community.challenges = await Promise.all(community.settings.challenges.map(async (cs) => (await getCommunityChallengeFromCommunityChallengeSettings({
6095
6171
  communityChallengeSettings: cs,
6096
6172
  pkc: community._pkc
@@ -6633,6 +6709,29 @@ async function initBeforeStarting(community) {
6633
6709
  });
6634
6710
  await community._dbHandler.initDbIfNeeded();
6635
6711
  }
6712
+ async function emitChallengeSettingsValidationErrors(community, log) {
6713
+ let failures;
6714
+ try {
6715
+ failures = await collectChallengeSettingsValidationFailures({
6716
+ challengeSettings: community.settings?.challenges ?? [],
6717
+ pkc: community._pkc
6718
+ });
6719
+ } catch (e) {
6720
+ log.error("Failed to validate settings.challenges on start", community.address, e);
6721
+ community.emit("error", e);
6722
+ return;
6723
+ }
6724
+ for (const { error, challengeIndex, challengeName } of failures) {
6725
+ error.details = {
6726
+ ...error.details,
6727
+ challengeIndex,
6728
+ challengeName,
6729
+ communityAddress: community.address
6730
+ };
6731
+ log.error("Invalid challenge settings on start", community.address, error);
6732
+ community.emit("error", error);
6733
+ }
6734
+ }
6636
6735
  async function start(community) {
6637
6736
  const log = logger_default("pkc-js:local-community:start");
6638
6737
  if (community.state === "updating") throw new PKCError("ERR_NEED_TO_STOP_UPDATING_COMMUNITY_BEFORE_STARTING", { address: community.address });
@@ -6680,6 +6779,7 @@ async function start(community) {
6680
6779
  communityChallengeSettings: cs,
6681
6780
  pkc: community._pkc
6682
6781
  })).communityChallenge));
6782
+ await emitChallengeSettingsValidationErrors(community, log);
6683
6783
  } catch (e) {
6684
6784
  await community.stop();
6685
6785
  e.details = {
@@ -6991,6 +7091,11 @@ async function parseRolesToEdit(community, newRawRoles) {
6991
7091
  return t$8(newRawRoles, (val, key) => val === void 0 || val === null);
6992
7092
  }
6993
7093
  async function parseChallengesToEdit(community, newChallengeSettings) {
7094
+ await throwIfChallengeSettingsAreInvalid({
7095
+ challengeSettings: newChallengeSettings,
7096
+ pkc: community._pkc,
7097
+ communityAddress: community.address
7098
+ });
6994
7099
  return {
6995
7100
  challenges: await Promise.all(newChallengeSettings.map(async (cs) => (await getCommunityChallengeFromCommunityChallengeSettings({
6996
7101
  communityChallengeSettings: cs,
@@ -1,7 +1,7 @@
1
1
  import { i as __toESM, r as __require, t as __commonJSMin } from "./chunk-2rV9d50f.js";
2
- import { $n as n$2, B as isIpfsCid, Bt as pTimeout, Ct as findStartedCommunity, D as deepMergeRuntimeFields, Dt as listUpdatingComments, E as createAbortError, En as CommentUpdateForChallengeVerificationSchema, Et as listStartedCommunities, H as isIpns, Ir as joinValues, It as untrackUpdatingComment, L as hideClassPrivateProps, Lr as parsedType, Nt as trackUpdatingComment, Ot as listUpdatingCommunities, Q as isStringDomain, R as ipnsNameToIpnsOverPubsubTopic, Rr as stringifyPrimitive, Rt as require_sha256, Sr as logger_default, Tr as setErrorMap, Tt as findUpdatingCommunity, a as ChallengeRequestMessageSchema, an as CommunityIpfsSchema, ar as e$1, b as areEquivalentCommunityAddresses, br as PKCError, bt as waitForUpdateInCommunityInstanceWithErrorAndTimeout, ct as removeUndefinedValuesRecursively, dn as PubsubTopicSchema, en as CommunityAnchorSchema, ft as retryKuboIpfsAdd, gt as sleepUntilTimeoutOrAbort, hr as FailedToFetchCommentIpfsFromGatewaysError, ht as shortifyCid, ir as e, k as doesDomainAddressHaveCapitalLetter, kn as CommentUpdateSchema, kt as refreshTrackedCommentAliases, lt as replaceXWithY, mr as require_retry, mt as shortifyAddress, nt as rejectWhenAbortSignalFires, r as ChallengeMessageSchema, rr as t$1, rt as rejectWhenCommunityStopsOrAborts, s as ChallengeVerificationMessageSchema, sr as r, t as ChallengeAnswerMessageSchema, tr as n$1, ut as resolveWhenPredicateIsTrue, vt as throwIfAbortSignalAborted, wt as findUpdatingComment, xn as CommentIpfsSchema, xr as messages, y as version_default, yt as timestamp, z as isAbortError, zt as TimeoutError } from "./schema-AXrL86Q4.js";
3
- import { $ as applyNameResolvedCacheToCrosspost, At as verifyCommentModeration, B as tryToDeleteCommunitiesThatFailedToBeDeletedBefore, Bn as RpcExportCommunityModLogsParamSchema, Bt as normalizeCreatePublicationAuthor, Cn as parseDecryptedChallengeVerification, Ct as signVote, Dn as parseRpcCommentEventWithPKCErrorIfItFails, Dt as verifyChallengeVerification, E as createKuboRpcClient, En as parsePKCUserOptionsSchemaWithPKCErrorIfItFails, F as listCommunitiesSync, Fn as RpcCidParamSchema, Ft as verifyVote, Gn as RpcFetchCidResultSchema, Gt as normalizeCommunityInputFromCommunity, Hn as RpcExportCommunityParamSchema, Ht as getCommunityAddressFromRecord, I as monitorCommunitiesDirectory, In as RpcCommentRepliesPageParamSchema, It as buildRuntimeAuthor, J as extractCommunityRuntimeFieldsFromParsedPages, Jn as RpcPublishedAnchorRecordResultSchema, Jt as getBufferedPKCAddressFromPublicKey, Kn as RpcPublishAnchorRecordParamSchema, Kt as decode, Ln as RpcCommunityIdentifierParamSchema, Lt as cleanWireAuthor, M as getDefaultDataPath, Mn as RpcAnchorPublishPreparationResultSchema, Mt as verifyCommentUpdate, Nn as RpcAuthorNameParamSchema, On as parseRpcCommentUpdateEventWithPKCErrorIfItFails, Ot as verifyCommentEdit, Pn as RpcCancelExportParamSchema, Pt as verifyCommunityEdit, Q as RepliesPages, Qn as RpcUnsubscribeParamSchema, Rn as RpcCommunityPageParamSchema, Rt as getAuthorNameFromRuntime, Sn as parseDecryptedChallengeAnswerWithPKCErrorIfItFails, St as signCommunityEdit, Tn as parseJsonWithPKCErrorIfFails, Tt as verifyChallengeMessage, Un as RpcExportCommunityResultSchema, Ut as getCommunityNameFromWire, V as CommentClientsManager, Vn as RpcExportCommunityModLogsResultSchema, Vt as buildRuntimeCommunityFields, Wn as RpcFetchCidParamSchema, Wt as getCommunityPublicKeyFromWire, Xn as RpcSubscriptionIdResultSchema, Y as findCommentInPageInstanceRecursively, Yn as RpcResolveAuthorNameResultSchema, Z as parseRawPages, Zn as RpcSuccessResultSchema, Zt as getPKCAddressFromPublicKeySync, _ as createAnchorIpnsRecord$1, _t as signCommentEdit, a as pkcJsChallenges, ar as n$3, at as PKCClientsManager, b as encryptEd25519AesGcm, bn as parseCreateRpcCommunityFunctionArgumentSchemaWithPKCErrorIfItFails, c as RemoteCommunity, cn as parseCommunityAddressWithPKCErrorIfItFails, cr as t$5, d as decodeRpcChallengeAnswerPubsubMsg, dn as parseCommunityEditPubsubMessagePublicationSchemaWithPKCErrorIfItFails, dt as cleanUpBeforePublishing, en as parseCidStringSchemaWithPKCErrorIfItFails, et as cloneCrosspostForRuntime, f as decodeRpcChallengePubsubMsg, fr as nativeFunctions$2, ft as signChallengeAnswer, g as createSigner, gn as parseCreateCommunityEditPublicationOptionsSchemaWithPKCErrorIfItFails, gt as signComment, hn as parseCreateCommentOptionsSchemaWithPKCErrorIfItFails, in as parseCommentIpfsSchemaWithPKCErrorIfItFails, ir as t$3, it as PublicationClientsManager, jn as parseVotePubsubMessagePublicationSchemaWithPKCErrorIfItFails, jt as verifyCommentPubsubMessage, kn as parseSetNewSettingsPKCWsServerSchemaWithPKCErrorIfItFails, kt as verifyCommentIpfs, lt as PKCTypedEmitter, m as decodeRpcChallengeVerificationPubsubMsg, mn as parseCreateCommentModerationOptionsSchemaWithPKCErrorIfItFails, mt as signChallengeRequest, n as RpcRemoteCommunity, o as TrackedInstanceRegistry, on as parseCommentModerationPubsubMessagePublicationSchemaWithPKCErrorIfItFails, ot as InflightFetchManager, p as decodeRpcChallengeRequestPubsubMsg, pn as parseCreateCommentEditOptionsSchemaWithPKCErrorIfItFails, pr as require_undici, qn as RpcPublishChallengeAnswersParamSchema, rn as parseCommentEditPubsubMessagePublicationSchemaWithPKCErrorIfItFails, rt as stripNameResolvedFromCrosspost, s as LRUCache, sn as parseCommentPubsubMessagePublicationWithPKCErrorIfItFails, sr as t$2, t as RpcLocalCommunity, tr as t$4, tt as collectCrosspostAuthorsToResolve, u as KeyvBetterSqlite3, ut as require_lib$1, v as decryptEd25519AesGcm, vt as signCommentModeration, wn as parseDecryptedChallengeWithPKCErrorIfItFails, xn as parseCreateVoteOptionsSchemaWithPKCErrorIfItFails, yn as parseCreateRemoteCommunityFunctionArgumentSchemaWithPKCErrorIfItFails, z as setNativeFunctions$1, zn as RpcEditCommunityParamSchema } from "./rpc-local-community-r51cTBYd.js";
4
- import { o as getHeliaDebugContext } from "./util-CwzCEPKs.js";
2
+ import { $n as n$2, B as isIpfsCid, Bt as pTimeout, Ct as findStartedCommunity, D as deepMergeRuntimeFields, Dt as listUpdatingComments, E as createAbortError, En as CommentUpdateForChallengeVerificationSchema, Et as listStartedCommunities, H as isIpns, Ir as joinValues, It as untrackUpdatingComment, L as hideClassPrivateProps, Lr as parsedType, Nt as trackUpdatingComment, Ot as listUpdatingCommunities, Q as isStringDomain, R as ipnsNameToIpnsOverPubsubTopic, Rr as stringifyPrimitive, Rt as require_sha256, Sr as logger_default, Tr as setErrorMap, Tt as findUpdatingCommunity, a as ChallengeRequestMessageSchema, an as CommunityIpfsSchema, ar as e$1, b as areEquivalentCommunityAddresses, br as PKCError, bt as waitForUpdateInCommunityInstanceWithErrorAndTimeout, ct as removeUndefinedValuesRecursively, dn as PubsubTopicSchema, en as CommunityAnchorSchema, ft as retryKuboIpfsAdd, gt as sleepUntilTimeoutOrAbort, hr as FailedToFetchCommentIpfsFromGatewaysError, ht as shortifyCid, ir as e, k as doesDomainAddressHaveCapitalLetter, kn as CommentUpdateSchema, kt as refreshTrackedCommentAliases, lt as replaceXWithY, mr as require_retry, mt as shortifyAddress, nt as rejectWhenAbortSignalFires, r as ChallengeMessageSchema, rr as t$1, rt as rejectWhenCommunityStopsOrAborts, s as ChallengeVerificationMessageSchema, sr as r, t as ChallengeAnswerMessageSchema, tr as n$1, ut as resolveWhenPredicateIsTrue, vt as throwIfAbortSignalAborted, wt as findUpdatingComment, xn as CommentIpfsSchema, xr as messages, y as version_default, yt as timestamp, z as isAbortError, zt as TimeoutError } from "./schema-BT0023M6.js";
3
+ import { $ as RepliesPages, $n as RpcUnsubscribeParamSchema, An as parseSetNewSettingsPKCWsServerSchemaWithPKCErrorIfItFails, At as verifyCommentIpfs, B as setNativeFunctions$1, Bn as RpcEditCommunityParamSchema, Cn as parseDecryptedChallengeAnswerWithPKCErrorIfItFails, Ct as signCommunityEdit, D as createKuboRpcClient, Dn as parsePKCUserOptionsSchemaWithPKCErrorIfItFails, En as parseJsonWithPKCErrorIfFails, Et as verifyChallengeMessage, Fn as RpcCancelExportParamSchema, Ft as verifyCommunityEdit, Gn as RpcFetchCidParamSchema, Gt as getCommunityPublicKeyFromWire, H as CommentClientsManager, Hn as RpcExportCommunityModLogsResultSchema, Ht as buildRuntimeCommunityFields, I as listCommunitiesSync, In as RpcCidParamSchema, It as verifyVote, Jn as RpcPublishChallengeAnswersParamSchema, Kn as RpcFetchCidResultSchema, Kt as normalizeCommunityInputFromCommunity, L as monitorCommunitiesDirectory, Ln as RpcCommentRepliesPageParamSchema, Lt as buildRuntimeAuthor, Mn as parseVotePubsubMessagePublicationSchemaWithPKCErrorIfItFails, Mt as verifyCommentPubsubMessage, N as getDefaultDataPath, Nn as RpcAnchorPublishPreparationResultSchema, Nt as verifyCommentUpdate, On as parseRpcCommentEventWithPKCErrorIfItFails, Ot as verifyChallengeVerification, Pn as RpcAuthorNameParamSchema, Q as parseRawPages, Qn as RpcSuccessResultSchema, Qt as getPKCAddressFromPublicKeySync, Rn as RpcCommunityIdentifierParamSchema, Rt as cleanWireAuthor, Sn as parseCreateVoteOptionsSchemaWithPKCErrorIfItFails, Tn as parseDecryptedChallengeWithPKCErrorIfItFails, Un as RpcExportCommunityParamSchema, Ut as getCommunityAddressFromRecord, V as tryToDeleteCommunitiesThatFailedToBeDeletedBefore, Vn as RpcExportCommunityModLogsParamSchema, Vt as normalizeCreatePublicationAuthor, Wn as RpcExportCommunityResultSchema, Wt as getCommunityNameFromWire, X as findCommentInPageInstanceRecursively, Xn as RpcResolveAuthorNameResultSchema, Y as extractCommunityRuntimeFieldsFromParsedPages, Yn as RpcPublishedAnchorRecordResultSchema, Yt as getBufferedPKCAddressFromPublicKey, Zn as RpcSubscriptionIdResultSchema, _ as createSigner, _n as parseCreateCommunityEditPublicationOptionsSchemaWithPKCErrorIfItFails, _t as signComment, an as parseCommentIpfsSchemaWithPKCErrorIfItFails, ar as t$3, at as PublicationClientsManager, bn as parseCreateRemoteCommunityFunctionArgumentSchemaWithPKCErrorIfItFails, c as LRUCache, cn as parseCommentPubsubMessagePublicationWithPKCErrorIfItFails, cr as t$2, d as KeyvBetterSqlite3, dt as require_lib$1, et as applyNameResolvedCacheToCrosspost, f as decodeRpcChallengeAnswerPubsubMsg, fn as parseCommunityEditPubsubMessagePublicationSchemaWithPKCErrorIfItFails, ft as cleanUpBeforePublishing, gn as parseCreateCommentOptionsSchemaWithPKCErrorIfItFails, h as decodeRpcChallengeVerificationPubsubMsg, hn as parseCreateCommentModerationOptionsSchemaWithPKCErrorIfItFails, ht as signChallengeRequest, in as parseCommentEditPubsubMessagePublicationSchemaWithPKCErrorIfItFails, it as stripNameResolvedFromCrosspost, jt as verifyCommentModeration, kn as parseRpcCommentUpdateEventWithPKCErrorIfItFails, kt as verifyCommentEdit, l as RemoteCommunity, ln as parseCommunityAddressWithPKCErrorIfItFails, lr as t$5, m as decodeRpcChallengeRequestPubsubMsg, mn as parseCreateCommentEditOptionsSchemaWithPKCErrorIfItFails, mr as require_undici, n as RpcRemoteCommunity, nr as t$4, nt as collectCrosspostAuthorsToResolve, o as pkcJsChallenges, or as n$3, ot as PKCClientsManager, p as decodeRpcChallengePubsubMsg, pr as nativeFunctions$2, pt as signChallengeAnswer, qn as RpcPublishAnchorRecordParamSchema, qt as decode, s as TrackedInstanceRegistry, sn as parseCommentModerationPubsubMessagePublicationSchemaWithPKCErrorIfItFails, st as InflightFetchManager, t as RpcLocalCommunity, tn as parseCidStringSchemaWithPKCErrorIfItFails, tt as cloneCrosspostForRuntime, ut as PKCTypedEmitter, v as createAnchorIpnsRecord$1, vt as signCommentEdit, wn as parseDecryptedChallengeVerification, wt as signVote, x as encryptEd25519AesGcm, xn as parseCreateRpcCommunityFunctionArgumentSchemaWithPKCErrorIfItFails, y as decryptEd25519AesGcm, yt as signCommentModeration, zn as RpcCommunityPageParamSchema, zt as getAuthorNameFromRuntime } from "./rpc-local-community-Cpw9_Nuo.js";
4
+ import { o as getHeliaDebugContext } from "./util-BmT_84kq.js";
5
5
  import path from "path";
6
6
  import assert from "assert";
7
7
  import fs from "fs";
@@ -6948,7 +6948,7 @@ var PKC$1 = class extends PKCTypedEmitter {
6948
6948
  this.clients.libp2pJsClients = {};
6949
6949
  if (!this.libp2pJsClientsOptions) return;
6950
6950
  if (!this.httpRoutersOptions) throw Error("httpRoutersOptions is required for libp2pJsClient");
6951
- const { createLibp2pJsClientOrUseExistingOne } = await import("./helia-for-pkc-BlDudTLN.js");
6951
+ const { createLibp2pJsClientOrUseExistingOne } = await import("./helia-for-pkc-yqf2rWMx.js");
6952
6952
  for (const clientOptions of this.libp2pJsClientsOptions) {
6953
6953
  const heliaNode = await createLibp2pJsClientOrUseExistingOne({
6954
6954
  ...clientOptions,
@@ -7227,7 +7227,7 @@ var PKC$1 = class extends PKCTypedEmitter {
7227
7227
  const log = logger_default("pkc-js:pkc:createLocalCommunity");
7228
7228
  log.trace("Received community options to create a local community instance:", options);
7229
7229
  if (!this._canCreateNewLocalCommunity()) throw new PKCError("ERR_CAN_NOT_CREATE_A_LOCAL_COMMUNITY", { pkcOptions: this._userPKCOptions });
7230
- const { LocalCommunity, createNewLocalCommunityDb, updateInstancePropsWithStartedCommunityOrDb } = await import("./local-community-4wIeaqty.js");
7230
+ const { LocalCommunity, createNewLocalCommunityDb, updateInstancePropsWithStartedCommunityOrDb } = await import("./local-community-BURzF_1m.js");
7231
7231
  const isLocalCommunity = (await listCommunitiesSync(this)).includes(options.address);
7232
7232
  const community = new LocalCommunity(this);
7233
7233
  if (isLocalCommunity) {