@pkcprotocol/pkc-js 0.0.44 → 0.0.46
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +41 -0
- package/dist/browser/clients/rpc-client/pkc-rpc-client.d.ts +2 -1
- package/dist/browser/clients/rpc-client/pkc-rpc-client.js +5 -1
- package/dist/browser/clients/rpc-client/pkc-rpc-client.js.map +1 -1
- package/dist/browser/clients/rpc-client/rpc-schema-util.d.ts +96 -0
- package/dist/browser/clients/rpc-client/rpc-schema-util.js +4 -1
- package/dist/browser/clients/rpc-client/rpc-schema-util.js.map +1 -1
- package/dist/browser/clients/rpc-client/schema.d.ts +89 -2
- package/dist/browser/clients/rpc-client/schema.js +10 -1
- package/dist/browser/clients/rpc-client/schema.js.map +1 -1
- package/dist/browser/clients/rpc-client/types.d.ts +3 -1
- package/dist/browser/community/remote-community.d.ts +5 -1
- package/dist/browser/community/remote-community.js +6 -0
- package/dist/browser/community/remote-community.js.map +1 -1
- package/dist/browser/community/rpc-local-community.d.ts +5 -1
- package/dist/browser/community/rpc-local-community.js +3 -0
- package/dist/browser/community/rpc-local-community.js.map +1 -1
- package/dist/browser/community/schema.d.ts +28 -18
- package/dist/browser/community/schema.js +8 -0
- package/dist/browser/community/schema.js.map +1 -1
- package/dist/browser/community/types.d.ts +2 -1
- package/dist/browser/generated-version.d.ts +1 -1
- package/dist/browser/generated-version.js +1 -1
- package/dist/browser/index-with-compile-cache.d.ts +254 -0
- package/dist/browser/index-with-compile-cache.js +25 -0
- package/dist/browser/index-with-compile-cache.js.map +1 -0
- package/dist/browser/pages/schema.d.ts +5 -5
- package/dist/browser/pkc/pkc.d.ts +3 -4
- package/dist/browser/pkc/pkc.js +16 -19
- package/dist/browser/pkc/pkc.js.map +1 -1
- package/dist/browser/publications/comment/schema.d.ts +2 -2
- package/dist/browser/publications/comment/schema.js +7 -1
- package/dist/browser/publications/comment/schema.js.map +1 -1
- package/dist/browser/rpc/src/index.d.ts +2 -1
- package/dist/browser/rpc/src/index.js +30 -2
- package/dist/browser/rpc/src/index.js.map +1 -1
- package/dist/browser/runtime/browser/compile-cache.d.ts +1 -0
- package/dist/browser/runtime/browser/compile-cache.js +7 -0
- package/dist/browser/runtime/browser/compile-cache.js.map +1 -0
- package/dist/browser/runtime/browser/setup-kubo-http-routers.d.ts +1 -0
- package/dist/browser/runtime/browser/setup-kubo-http-routers.js +4 -0
- package/dist/browser/runtime/browser/setup-kubo-http-routers.js.map +1 -0
- package/dist/browser/runtime/node/community/db-handler.d.ts +4 -2
- package/dist/browser/runtime/node/community/db-handler.js +30 -1
- package/dist/browser/runtime/node/community/db-handler.js.map +1 -1
- package/dist/browser/runtime/node/community/db-row-parser.d.ts +2 -0
- package/dist/browser/runtime/node/community/db-row-parser.js +6 -0
- package/dist/browser/runtime/node/community/db-row-parser.js.map +1 -1
- package/dist/browser/runtime/node/community/local-community.d.ts +5 -1
- package/dist/browser/runtime/node/community/local-community.js +12 -0
- package/dist/browser/runtime/node/community/local-community.js.map +1 -1
- package/dist/browser/runtime/node/compile-cache.d.ts +1 -0
- package/dist/browser/runtime/node/compile-cache.js +29 -0
- package/dist/browser/runtime/node/compile-cache.js.map +1 -0
- package/dist/browser/runtime/node/setup-kubo-http-routers.d.ts +2 -0
- package/dist/browser/runtime/node/{setup-kubo-address-rewriter-and-http-router.js → setup-kubo-http-routers.js} +10 -79
- package/dist/browser/runtime/node/setup-kubo-http-routers.js.map +1 -0
- package/dist/bundled/bundle-manifest.json +1288 -0
- package/dist/bundled/challenges.js +1 -0
- package/dist/bundled/chunks/helia-for-pkc-uRINWDzG.js +281 -0
- package/dist/bundled/chunks/local-community-CCSP8e6_.js +2 -0
- package/dist/bundled/chunks/local-community-iVvgerOY.js +7218 -0
- package/dist/bundled/chunks/node-DMNVMYGv.js +7567 -0
- package/dist/bundled/chunks/rpc-local-community-DG6G0xL6.js +128945 -0
- package/dist/bundled/chunks/schema-Bo3XK8Oe.js +34342 -0
- package/dist/bundled/chunks/util-I3gVOp6w.js +200 -0
- package/dist/bundled/index-with-compile-cache.js +19 -0
- package/dist/bundled/index.js +2 -0
- package/dist/bundled/rpc/src/index.js +1473 -0
- package/dist/node/clients/rpc-client/pkc-rpc-client.d.ts +2 -1
- package/dist/node/clients/rpc-client/pkc-rpc-client.js +5 -1
- package/dist/node/clients/rpc-client/pkc-rpc-client.js.map +1 -1
- package/dist/node/clients/rpc-client/rpc-schema-util.d.ts +96 -0
- package/dist/node/clients/rpc-client/rpc-schema-util.js +4 -1
- package/dist/node/clients/rpc-client/rpc-schema-util.js.map +1 -1
- package/dist/node/clients/rpc-client/schema.d.ts +89 -2
- package/dist/node/clients/rpc-client/schema.js +10 -1
- package/dist/node/clients/rpc-client/schema.js.map +1 -1
- package/dist/node/clients/rpc-client/types.d.ts +3 -1
- package/dist/node/community/remote-community.d.ts +5 -1
- package/dist/node/community/remote-community.js +6 -0
- package/dist/node/community/remote-community.js.map +1 -1
- package/dist/node/community/rpc-local-community.d.ts +5 -1
- package/dist/node/community/rpc-local-community.js +3 -0
- package/dist/node/community/rpc-local-community.js.map +1 -1
- package/dist/node/community/schema.d.ts +28 -18
- package/dist/node/community/schema.js +8 -0
- package/dist/node/community/schema.js.map +1 -1
- package/dist/node/community/types.d.ts +2 -1
- package/dist/node/generated-version.d.ts +1 -1
- package/dist/node/generated-version.js +1 -1
- package/dist/node/index-with-compile-cache.d.ts +254 -0
- package/dist/node/index-with-compile-cache.js +25 -0
- package/dist/node/index-with-compile-cache.js.map +1 -0
- package/dist/node/pages/schema.d.ts +5 -5
- package/dist/node/pkc/pkc.d.ts +3 -4
- package/dist/node/pkc/pkc.js +16 -19
- package/dist/node/pkc/pkc.js.map +1 -1
- package/dist/node/publications/comment/schema.d.ts +2 -2
- package/dist/node/publications/comment/schema.js +7 -1
- package/dist/node/publications/comment/schema.js.map +1 -1
- package/dist/node/rpc/src/index.d.ts +2 -1
- package/dist/node/rpc/src/index.js +30 -2
- package/dist/node/rpc/src/index.js.map +1 -1
- package/dist/node/runtime/browser/compile-cache.d.ts +1 -0
- package/dist/node/runtime/browser/compile-cache.js +7 -0
- package/dist/node/runtime/browser/compile-cache.js.map +1 -0
- package/dist/node/runtime/browser/setup-kubo-http-routers.d.ts +1 -0
- package/dist/node/runtime/browser/setup-kubo-http-routers.js +4 -0
- package/dist/node/runtime/browser/setup-kubo-http-routers.js.map +1 -0
- package/dist/node/runtime/node/community/db-handler.d.ts +4 -2
- package/dist/node/runtime/node/community/db-handler.js +30 -1
- package/dist/node/runtime/node/community/db-handler.js.map +1 -1
- package/dist/node/runtime/node/community/db-row-parser.d.ts +2 -0
- package/dist/node/runtime/node/community/db-row-parser.js +6 -0
- package/dist/node/runtime/node/community/db-row-parser.js.map +1 -1
- package/dist/node/runtime/node/community/local-community.d.ts +5 -1
- package/dist/node/runtime/node/community/local-community.js +12 -0
- package/dist/node/runtime/node/community/local-community.js.map +1 -1
- package/dist/node/runtime/node/compile-cache.d.ts +1 -0
- package/dist/node/runtime/node/compile-cache.js +29 -0
- package/dist/node/runtime/node/compile-cache.js.map +1 -0
- package/dist/node/runtime/node/setup-kubo-http-routers.d.ts +2 -0
- package/dist/node/runtime/node/{setup-kubo-address-rewriter-and-http-router.js → setup-kubo-http-routers.js} +10 -79
- package/dist/node/runtime/node/setup-kubo-http-routers.js.map +1 -0
- package/package.json +18 -9
- package/dist/browser/runtime/browser/setup-kubo-address-rewriter-and-http-router.d.ts +0 -1
- package/dist/browser/runtime/browser/setup-kubo-address-rewriter-and-http-router.js +0 -4
- package/dist/browser/runtime/browser/setup-kubo-address-rewriter-and-http-router.js.map +0 -1
- package/dist/browser/runtime/node/address-rewriter-db.d.ts +0 -31
- package/dist/browser/runtime/node/address-rewriter-db.js +0 -156
- package/dist/browser/runtime/node/address-rewriter-db.js.map +0 -1
- package/dist/browser/runtime/node/addresses-rewriter-proxy-server.d.ts +0 -45
- package/dist/browser/runtime/node/addresses-rewriter-proxy-server.js +0 -493
- package/dist/browser/runtime/node/addresses-rewriter-proxy-server.js.map +0 -1
- package/dist/browser/runtime/node/setup-kubo-address-rewriter-and-http-router.d.ts +0 -4
- package/dist/browser/runtime/node/setup-kubo-address-rewriter-and-http-router.js.map +0 -1
- package/dist/node/runtime/browser/setup-kubo-address-rewriter-and-http-router.d.ts +0 -1
- package/dist/node/runtime/browser/setup-kubo-address-rewriter-and-http-router.js +0 -4
- package/dist/node/runtime/browser/setup-kubo-address-rewriter-and-http-router.js.map +0 -1
- package/dist/node/runtime/node/address-rewriter-db.d.ts +0 -31
- package/dist/node/runtime/node/address-rewriter-db.js +0 -156
- package/dist/node/runtime/node/address-rewriter-db.js.map +0 -1
- package/dist/node/runtime/node/addresses-rewriter-proxy-server.d.ts +0 -45
- package/dist/node/runtime/node/addresses-rewriter-proxy-server.js +0 -493
- package/dist/node/runtime/node/addresses-rewriter-proxy-server.js.map +0 -1
- package/dist/node/runtime/node/setup-kubo-address-rewriter-and-http-router.d.ts +0 -4
- package/dist/node/runtime/node/setup-kubo-address-rewriter-and-http-router.js.map +0 -1
|
@@ -0,0 +1,254 @@
|
|
|
1
|
+
declare const _default: {
|
|
2
|
+
(pkcOptions?: import("./types.js").InputPKCOptions): Promise<import("./pkc/pkc.js").PKC>;
|
|
3
|
+
setNativeFunctions: (newNativeFunctions: Partial<import("./types.js").NativeFunctions>) => void;
|
|
4
|
+
nativeFunctions: {
|
|
5
|
+
node: import("./types.js").NativeFunctions;
|
|
6
|
+
browser: import("./types.js").NativeFunctions;
|
|
7
|
+
};
|
|
8
|
+
getShortCid: (params: import("./clients/rpc-client/types.js").CidRpcParam) => string;
|
|
9
|
+
getShortAddress: (params: import("./clients/rpc-client/types.js").AuthorNameRpcParam) => string;
|
|
10
|
+
challenges: Record<string, import("zod/v4/core").$InferInnerFunctionType<import("zod").ZodTuple<readonly [import("zod").ZodObject<{
|
|
11
|
+
challengeSettings: import("zod").ZodObject<{
|
|
12
|
+
path: import("zod").ZodOptional<import("zod").ZodString>;
|
|
13
|
+
name: import("zod").ZodOptional<import("zod").ZodString>;
|
|
14
|
+
options: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodString>>;
|
|
15
|
+
exclude: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodObject<{
|
|
16
|
+
community: import("zod").ZodOptional<import("zod").ZodObject<{
|
|
17
|
+
addresses: import("zod").ZodArray<import("zod").ZodString>;
|
|
18
|
+
maxCommentCids: import("zod").ZodNumber;
|
|
19
|
+
postScore: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
20
|
+
replyScore: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
21
|
+
firstCommentTimestamp: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
22
|
+
}, import("zod/v4/core").$strict>>;
|
|
23
|
+
postScore: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
24
|
+
replyScore: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
25
|
+
postCount: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
26
|
+
replyCount: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
27
|
+
firstCommentTimestamp: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
28
|
+
challenges: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodNumber>>;
|
|
29
|
+
role: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodUnion<[import("zod").ZodEnum<{
|
|
30
|
+
owner: "owner";
|
|
31
|
+
admin: "admin";
|
|
32
|
+
moderator: "moderator";
|
|
33
|
+
}>, import("zod").ZodString]>>>;
|
|
34
|
+
address: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString>>;
|
|
35
|
+
rateLimit: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
36
|
+
rateLimitChallengeSuccess: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
37
|
+
publicationType: import("zod").ZodOptional<import("zod").ZodObject<{
|
|
38
|
+
post: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
39
|
+
reply: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
40
|
+
vote: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
41
|
+
commentEdit: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
42
|
+
commentModeration: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
43
|
+
communityEdit: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
44
|
+
}, import("zod/v4/core").$loose>>;
|
|
45
|
+
}, import("zod/v4/core").$loose>>>;
|
|
46
|
+
description: import("zod").ZodOptional<import("zod").ZodString>;
|
|
47
|
+
pendingApproval: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
48
|
+
}, import("zod/v4/core").$strict>;
|
|
49
|
+
}, import("zod/v4/core").$strip>], null>, import("zod").ZodObject<{
|
|
50
|
+
optionInputs: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodObject<{
|
|
51
|
+
option: import("zod").ZodString;
|
|
52
|
+
label: import("zod").ZodString;
|
|
53
|
+
default: import("zod").ZodOptional<import("zod").ZodString>;
|
|
54
|
+
description: import("zod").ZodOptional<import("zod").ZodString>;
|
|
55
|
+
placeholder: import("zod").ZodOptional<import("zod").ZodString>;
|
|
56
|
+
required: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
57
|
+
}, import("zod/v4/core").$loose>>>;
|
|
58
|
+
type: import("zod").ZodString;
|
|
59
|
+
challenge: import("zod").ZodOptional<import("zod").ZodString>;
|
|
60
|
+
caseInsensitive: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
61
|
+
description: import("zod").ZodOptional<import("zod").ZodString>;
|
|
62
|
+
getChallenge: import("zod").ZodFunction<import("zod").ZodTuple<readonly [import("zod").ZodObject<{
|
|
63
|
+
challengeSettings: import("zod").ZodObject<{
|
|
64
|
+
path: import("zod").ZodOptional<import("zod").ZodString>;
|
|
65
|
+
name: import("zod").ZodOptional<import("zod").ZodString>;
|
|
66
|
+
options: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodString>>;
|
|
67
|
+
exclude: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodObject<{
|
|
68
|
+
community: import("zod").ZodOptional<import("zod").ZodObject<{
|
|
69
|
+
addresses: import("zod").ZodArray<import("zod").ZodString>;
|
|
70
|
+
maxCommentCids: import("zod").ZodNumber;
|
|
71
|
+
postScore: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
72
|
+
replyScore: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
73
|
+
firstCommentTimestamp: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
74
|
+
}, import("zod/v4/core").$strict>>;
|
|
75
|
+
postScore: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
76
|
+
replyScore: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
77
|
+
postCount: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
78
|
+
replyCount: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
79
|
+
firstCommentTimestamp: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
80
|
+
challenges: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodNumber>>;
|
|
81
|
+
role: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodUnion<[import("zod").ZodEnum<{
|
|
82
|
+
owner: "owner";
|
|
83
|
+
admin: "admin";
|
|
84
|
+
moderator: "moderator";
|
|
85
|
+
}>, import("zod").ZodString]>>>;
|
|
86
|
+
address: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString>>;
|
|
87
|
+
rateLimit: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
88
|
+
rateLimitChallengeSuccess: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
89
|
+
publicationType: import("zod").ZodOptional<import("zod").ZodObject<{
|
|
90
|
+
post: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
91
|
+
reply: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
92
|
+
vote: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
93
|
+
commentEdit: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
94
|
+
commentModeration: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
95
|
+
communityEdit: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
96
|
+
}, import("zod/v4/core").$loose>>;
|
|
97
|
+
}, import("zod/v4/core").$loose>>>;
|
|
98
|
+
description: import("zod").ZodOptional<import("zod").ZodString>;
|
|
99
|
+
pendingApproval: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
100
|
+
}, import("zod/v4/core").$strict>;
|
|
101
|
+
challengeRequestMessage: import("zod").ZodCustom<import("./pubsub-messages/types.js").DecryptedChallengeRequestMessageTypeWithCommunityAuthor, import("./pubsub-messages/types.js").DecryptedChallengeRequestMessageTypeWithCommunityAuthor>;
|
|
102
|
+
challengeIndex: import("zod").ZodNumber;
|
|
103
|
+
community: import("zod").ZodCustom<import("./runtime/node/community/local-community.js").LocalCommunity, import("./runtime/node/community/local-community.js").LocalCommunity>;
|
|
104
|
+
}, import("zod/v4/core").$strip>], null>, import("zod").ZodPromise<import("zod").ZodUnion<[import("zod").ZodObject<{
|
|
105
|
+
challenge: import("zod").ZodString;
|
|
106
|
+
verify: import("zod").ZodFunction<import("zod").ZodTuple<readonly [import("zod").ZodLazy<import("zod").ZodString>], null>, import("zod").ZodPromise<import("zod").ZodUnion<[import("zod").ZodObject<{
|
|
107
|
+
success: import("zod").ZodLiteral<true>;
|
|
108
|
+
comment: import("zod").ZodOptional<import("zod").ZodObject<{}, import("zod/v4/core").$loose>>;
|
|
109
|
+
commentUpdate: import("zod").ZodOptional<import("zod").ZodObject<{}, import("zod/v4/core").$loose>>;
|
|
110
|
+
}, import("zod/v4/core").$strip>, import("zod").ZodObject<{
|
|
111
|
+
success: import("zod").ZodLiteral<false>;
|
|
112
|
+
error: import("zod").ZodString;
|
|
113
|
+
reason: import("zod").ZodOptional<import("zod").ZodString>;
|
|
114
|
+
}, import("zod/v4/core").$strip>]>>>;
|
|
115
|
+
type: import("zod").ZodString;
|
|
116
|
+
caseInsensitive: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
117
|
+
}, import("zod/v4/core").$strict>, import("zod").ZodUnion<[import("zod").ZodObject<{
|
|
118
|
+
success: import("zod").ZodLiteral<true>;
|
|
119
|
+
comment: import("zod").ZodOptional<import("zod").ZodObject<{}, import("zod/v4/core").$loose>>;
|
|
120
|
+
commentUpdate: import("zod").ZodOptional<import("zod").ZodObject<{}, import("zod/v4/core").$loose>>;
|
|
121
|
+
}, import("zod/v4/core").$strip>, import("zod").ZodObject<{
|
|
122
|
+
success: import("zod").ZodLiteral<false>;
|
|
123
|
+
error: import("zod").ZodString;
|
|
124
|
+
reason: import("zod").ZodOptional<import("zod").ZodString>;
|
|
125
|
+
}, import("zod/v4/core").$strip>]>]>>>;
|
|
126
|
+
}, import("zod/v4/core").$strict>>>;
|
|
127
|
+
};
|
|
128
|
+
export default _default;
|
|
129
|
+
export declare const setNativeFunctions: (newNativeFunctions: Partial<import("./types.js").NativeFunctions>) => void;
|
|
130
|
+
export declare const nativeFunctions: {
|
|
131
|
+
node: import("./types.js").NativeFunctions;
|
|
132
|
+
browser: import("./types.js").NativeFunctions;
|
|
133
|
+
};
|
|
134
|
+
export declare const getShortCid: (params: import("./clients/rpc-client/types.js").CidRpcParam) => string;
|
|
135
|
+
export declare const getShortAddress: (params: import("./clients/rpc-client/types.js").AuthorNameRpcParam) => string;
|
|
136
|
+
export declare const challenges: Record<string, import("zod/v4/core").$InferInnerFunctionType<import("zod").ZodTuple<readonly [import("zod").ZodObject<{
|
|
137
|
+
challengeSettings: import("zod").ZodObject<{
|
|
138
|
+
path: import("zod").ZodOptional<import("zod").ZodString>;
|
|
139
|
+
name: import("zod").ZodOptional<import("zod").ZodString>;
|
|
140
|
+
options: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodString>>;
|
|
141
|
+
exclude: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodObject<{
|
|
142
|
+
community: import("zod").ZodOptional<import("zod").ZodObject<{
|
|
143
|
+
addresses: import("zod").ZodArray<import("zod").ZodString>;
|
|
144
|
+
maxCommentCids: import("zod").ZodNumber;
|
|
145
|
+
postScore: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
146
|
+
replyScore: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
147
|
+
firstCommentTimestamp: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
148
|
+
}, import("zod/v4/core").$strict>>;
|
|
149
|
+
postScore: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
150
|
+
replyScore: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
151
|
+
postCount: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
152
|
+
replyCount: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
153
|
+
firstCommentTimestamp: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
154
|
+
challenges: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodNumber>>;
|
|
155
|
+
role: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodUnion<[import("zod").ZodEnum<{
|
|
156
|
+
owner: "owner";
|
|
157
|
+
admin: "admin";
|
|
158
|
+
moderator: "moderator";
|
|
159
|
+
}>, import("zod").ZodString]>>>;
|
|
160
|
+
address: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString>>;
|
|
161
|
+
rateLimit: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
162
|
+
rateLimitChallengeSuccess: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
163
|
+
publicationType: import("zod").ZodOptional<import("zod").ZodObject<{
|
|
164
|
+
post: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
165
|
+
reply: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
166
|
+
vote: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
167
|
+
commentEdit: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
168
|
+
commentModeration: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
169
|
+
communityEdit: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
170
|
+
}, import("zod/v4/core").$loose>>;
|
|
171
|
+
}, import("zod/v4/core").$loose>>>;
|
|
172
|
+
description: import("zod").ZodOptional<import("zod").ZodString>;
|
|
173
|
+
pendingApproval: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
174
|
+
}, import("zod/v4/core").$strict>;
|
|
175
|
+
}, import("zod/v4/core").$strip>], null>, import("zod").ZodObject<{
|
|
176
|
+
optionInputs: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodObject<{
|
|
177
|
+
option: import("zod").ZodString;
|
|
178
|
+
label: import("zod").ZodString;
|
|
179
|
+
default: import("zod").ZodOptional<import("zod").ZodString>;
|
|
180
|
+
description: import("zod").ZodOptional<import("zod").ZodString>;
|
|
181
|
+
placeholder: import("zod").ZodOptional<import("zod").ZodString>;
|
|
182
|
+
required: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
183
|
+
}, import("zod/v4/core").$loose>>>;
|
|
184
|
+
type: import("zod").ZodString;
|
|
185
|
+
challenge: import("zod").ZodOptional<import("zod").ZodString>;
|
|
186
|
+
caseInsensitive: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
187
|
+
description: import("zod").ZodOptional<import("zod").ZodString>;
|
|
188
|
+
getChallenge: import("zod").ZodFunction<import("zod").ZodTuple<readonly [import("zod").ZodObject<{
|
|
189
|
+
challengeSettings: import("zod").ZodObject<{
|
|
190
|
+
path: import("zod").ZodOptional<import("zod").ZodString>;
|
|
191
|
+
name: import("zod").ZodOptional<import("zod").ZodString>;
|
|
192
|
+
options: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodString>>;
|
|
193
|
+
exclude: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodObject<{
|
|
194
|
+
community: import("zod").ZodOptional<import("zod").ZodObject<{
|
|
195
|
+
addresses: import("zod").ZodArray<import("zod").ZodString>;
|
|
196
|
+
maxCommentCids: import("zod").ZodNumber;
|
|
197
|
+
postScore: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
198
|
+
replyScore: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
199
|
+
firstCommentTimestamp: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
200
|
+
}, import("zod/v4/core").$strict>>;
|
|
201
|
+
postScore: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
202
|
+
replyScore: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
203
|
+
postCount: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
204
|
+
replyCount: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
205
|
+
firstCommentTimestamp: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
206
|
+
challenges: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodNumber>>;
|
|
207
|
+
role: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodUnion<[import("zod").ZodEnum<{
|
|
208
|
+
owner: "owner";
|
|
209
|
+
admin: "admin";
|
|
210
|
+
moderator: "moderator";
|
|
211
|
+
}>, import("zod").ZodString]>>>;
|
|
212
|
+
address: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString>>;
|
|
213
|
+
rateLimit: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
214
|
+
rateLimitChallengeSuccess: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
215
|
+
publicationType: import("zod").ZodOptional<import("zod").ZodObject<{
|
|
216
|
+
post: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
217
|
+
reply: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
218
|
+
vote: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
219
|
+
commentEdit: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
220
|
+
commentModeration: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
221
|
+
communityEdit: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
222
|
+
}, import("zod/v4/core").$loose>>;
|
|
223
|
+
}, import("zod/v4/core").$loose>>>;
|
|
224
|
+
description: import("zod").ZodOptional<import("zod").ZodString>;
|
|
225
|
+
pendingApproval: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
226
|
+
}, import("zod/v4/core").$strict>;
|
|
227
|
+
challengeRequestMessage: import("zod").ZodCustom<import("./pubsub-messages/types.js").DecryptedChallengeRequestMessageTypeWithCommunityAuthor, import("./pubsub-messages/types.js").DecryptedChallengeRequestMessageTypeWithCommunityAuthor>;
|
|
228
|
+
challengeIndex: import("zod").ZodNumber;
|
|
229
|
+
community: import("zod").ZodCustom<import("./runtime/node/community/local-community.js").LocalCommunity, import("./runtime/node/community/local-community.js").LocalCommunity>;
|
|
230
|
+
}, import("zod/v4/core").$strip>], null>, import("zod").ZodPromise<import("zod").ZodUnion<[import("zod").ZodObject<{
|
|
231
|
+
challenge: import("zod").ZodString;
|
|
232
|
+
verify: import("zod").ZodFunction<import("zod").ZodTuple<readonly [import("zod").ZodLazy<import("zod").ZodString>], null>, import("zod").ZodPromise<import("zod").ZodUnion<[import("zod").ZodObject<{
|
|
233
|
+
success: import("zod").ZodLiteral<true>;
|
|
234
|
+
comment: import("zod").ZodOptional<import("zod").ZodObject<{}, import("zod/v4/core").$loose>>;
|
|
235
|
+
commentUpdate: import("zod").ZodOptional<import("zod").ZodObject<{}, import("zod/v4/core").$loose>>;
|
|
236
|
+
}, import("zod/v4/core").$strip>, import("zod").ZodObject<{
|
|
237
|
+
success: import("zod").ZodLiteral<false>;
|
|
238
|
+
error: import("zod").ZodString;
|
|
239
|
+
reason: import("zod").ZodOptional<import("zod").ZodString>;
|
|
240
|
+
}, import("zod/v4/core").$strip>]>>>;
|
|
241
|
+
type: import("zod").ZodString;
|
|
242
|
+
caseInsensitive: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
243
|
+
}, import("zod/v4/core").$strict>, import("zod").ZodUnion<[import("zod").ZodObject<{
|
|
244
|
+
success: import("zod").ZodLiteral<true>;
|
|
245
|
+
comment: import("zod").ZodOptional<import("zod").ZodObject<{}, import("zod/v4/core").$loose>>;
|
|
246
|
+
commentUpdate: import("zod").ZodOptional<import("zod").ZodObject<{}, import("zod/v4/core").$loose>>;
|
|
247
|
+
}, import("zod/v4/core").$strip>, import("zod").ZodObject<{
|
|
248
|
+
success: import("zod").ZodLiteral<false>;
|
|
249
|
+
error: import("zod").ZodString;
|
|
250
|
+
reason: import("zod").ZodOptional<import("zod").ZodString>;
|
|
251
|
+
}, import("zod/v4/core").$strip>]>]>>>;
|
|
252
|
+
}, import("zod/v4/core").$strict>>>;
|
|
253
|
+
export type { NameResolverInterface } from "./schema.js";
|
|
254
|
+
export type { NameResolver } from "./types.js";
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
// Thin bootstrap entry for Node ESM consumers (the `"."` -> `import` condition in
|
|
2
|
+
// package.json). Part of issue #120: it enables Node's on-disk V8 compile cache and ONLY
|
|
3
|
+
// THEN dynamic-imports the real entry, so the whole module graph compiles with the cache
|
|
4
|
+
// active and runs after the first import reuse the cached bytecode (recovering the
|
|
5
|
+
// parse/compile ~29% of import time).
|
|
6
|
+
//
|
|
7
|
+
// Why a separate file instead of calling enableCompileCache() in index.ts: Node's ESM
|
|
8
|
+
// loader compiles the ENTIRE static import graph before any module body executes, and the
|
|
9
|
+
// compile cache only covers modules compiled after the call — so from inside index.ts it
|
|
10
|
+
// would always be too late. The dynamic import() below is what delays the graph's
|
|
11
|
+
// compilation until the cache is on.
|
|
12
|
+
//
|
|
13
|
+
// Why the `require` condition keeps pointing at plain index.js: this file uses top-level
|
|
14
|
+
// await, and require(esm) throws ERR_REQUIRE_ASYNC_MODULE on graphs containing TLA. CJS
|
|
15
|
+
// consumers simply keep the previous (uncached) behavior.
|
|
16
|
+
import { enableNodeCompileCache } from "./runtime/node/compile-cache.js";
|
|
17
|
+
enableNodeCompileCache();
|
|
18
|
+
const index = await import("./index.js");
|
|
19
|
+
export default index.default;
|
|
20
|
+
export const setNativeFunctions = index.setNativeFunctions;
|
|
21
|
+
export const nativeFunctions = index.nativeFunctions;
|
|
22
|
+
export const getShortCid = index.getShortCid;
|
|
23
|
+
export const getShortAddress = index.getShortAddress;
|
|
24
|
+
export const challenges = index.challenges;
|
|
25
|
+
//# sourceMappingURL=index-with-compile-cache.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-with-compile-cache.js","sourceRoot":"","sources":["../../src/index-with-compile-cache.ts"],"names":[],"mappings":"AAAA,kFAAkF;AAClF,yFAAyF;AACzF,yFAAyF;AACzF,mFAAmF;AACnF,sCAAsC;AACtC,EAAE;AACF,sFAAsF;AACtF,0FAA0F;AAC1F,yFAAyF;AACzF,kFAAkF;AAClF,qCAAqC;AACrC,EAAE;AACF,yFAAyF;AACzF,wFAAwF;AACxF,0DAA0D;AAC1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAEzE,sBAAsB,EAAE,CAAC;AAEzB,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;AAEzC,eAAe,KAAK,CAAC,OAAO,CAAC;AAC7B,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,CAAC,kBAAkB,CAAC;AAC3D,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,CAAC,eAAe,CAAC;AACrD,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;AAC7C,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,CAAC,eAAe,CAAC;AACrD,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC"}
|
|
@@ -169,7 +169,7 @@ export declare const PageIpfsSchema: z.ZodObject<{
|
|
|
169
169
|
signedPropertyNames: z.ZodArray<z.ZodString>;
|
|
170
170
|
}, z.core.$strip>;
|
|
171
171
|
protocolVersion: z.ZodString;
|
|
172
|
-
replies: z.ZodOptional<z.ZodObject<{
|
|
172
|
+
replies: z.ZodOptional<z.ZodLazy<z.ZodObject<{
|
|
173
173
|
pages: z.ZodRecord<z.ZodUnion<[z.ZodEnum<{
|
|
174
174
|
new: "new";
|
|
175
175
|
best: "best";
|
|
@@ -184,7 +184,7 @@ export declare const PageIpfsSchema: z.ZodObject<{
|
|
|
184
184
|
newFlat: "newFlat";
|
|
185
185
|
oldFlat: "oldFlat";
|
|
186
186
|
}>, z.ZodString]>, z.ZodString>>;
|
|
187
|
-
}, z.core.$strip
|
|
187
|
+
}, z.core.$strip>>>;
|
|
188
188
|
}, z.core.$loose>;
|
|
189
189
|
}, z.core.$strip>>>;
|
|
190
190
|
nextCid: z.ZodOptional<z.ZodString>;
|
|
@@ -388,7 +388,7 @@ export declare const PostsPagesIpfsSchema: z.ZodObject<{
|
|
|
388
388
|
signedPropertyNames: z.ZodArray<z.ZodString>;
|
|
389
389
|
}, z.core.$strip>;
|
|
390
390
|
protocolVersion: z.ZodString;
|
|
391
|
-
replies: z.ZodOptional<z.ZodObject<{
|
|
391
|
+
replies: z.ZodOptional<z.ZodLazy<z.ZodObject<{
|
|
392
392
|
pages: z.ZodRecord<z.ZodUnion<[z.ZodEnum<{
|
|
393
393
|
new: "new";
|
|
394
394
|
best: "best";
|
|
@@ -403,7 +403,7 @@ export declare const PostsPagesIpfsSchema: z.ZodObject<{
|
|
|
403
403
|
newFlat: "newFlat";
|
|
404
404
|
oldFlat: "oldFlat";
|
|
405
405
|
}>, z.ZodString]>, z.ZodString>>;
|
|
406
|
-
}, z.core.$strip
|
|
406
|
+
}, z.core.$strip>>>;
|
|
407
407
|
}, z.core.$loose>;
|
|
408
408
|
}, z.core.$strip>>>;
|
|
409
409
|
nextCid: z.ZodOptional<z.ZodString>;
|
|
@@ -597,7 +597,7 @@ export declare const RepliesPagesIpfsSchema: z.ZodObject<{
|
|
|
597
597
|
signedPropertyNames: z.ZodArray<z.ZodString>;
|
|
598
598
|
}, z.core.$strip>;
|
|
599
599
|
protocolVersion: z.ZodString;
|
|
600
|
-
replies: z.ZodOptional<z.ZodObject</*elided*/ any, z.core.$strip
|
|
600
|
+
replies: z.ZodOptional<z.ZodLazy<z.ZodObject</*elided*/ any, z.core.$strip>>>;
|
|
601
601
|
}, z.core.$loose>;
|
|
602
602
|
}, z.core.$strip>>>;
|
|
603
603
|
nextCid: z.ZodOptional<z.ZodString>;
|
package/dist/node/pkc/pkc.d.ts
CHANGED
|
@@ -10,7 +10,7 @@ import type { ChallengeFileFactoryInput, CreateRemoteCommunityOptions, Community
|
|
|
10
10
|
import { RemoteCommunity } from "../community/remote-community.js";
|
|
11
11
|
import { RpcRemoteCommunity } from "../community/rpc-remote-community.js";
|
|
12
12
|
import { RpcLocalCommunity } from "../community/rpc-local-community.js";
|
|
13
|
-
import { LocalCommunity } from "../runtime/node/community/local-community.js";
|
|
13
|
+
import type { LocalCommunity } from "../runtime/node/community/local-community.js";
|
|
14
14
|
import { z } from "zod";
|
|
15
15
|
import type { CreateSignerOptions } from "../signer/types.js";
|
|
16
16
|
import type { CommentEditPubsubMessagePublication, CommentEditTypeJson, CreateCommentEditOptions } from "../publications/comment-edit/types.js";
|
|
@@ -23,7 +23,7 @@ import CommunityEdit from "../publications/community-edit/community-edit.js";
|
|
|
23
23
|
import type { CreateCommunityEditPublicationOptions, CommunityEditJson, CommunityEditPubsubMessagePublication } from "../publications/community-edit/types.js";
|
|
24
24
|
import { PKCTypedEmitter } from "../clients/pkc-typed-emitter.js";
|
|
25
25
|
import type { PageTypeJson } from "../pages/types.js";
|
|
26
|
-
import { Libp2pJsClient } from "../helia/libp2pjsClient.js";
|
|
26
|
+
import type { Libp2pJsClient } from "../helia/libp2pjsClient.js";
|
|
27
27
|
import type { AuthorNameRpcParam, CidRpcParam, RpcFetchCidResult } from "../clients/rpc-client/types.js";
|
|
28
28
|
import { IndexedTrackedInstanceRegistry } from "./tracked-instance-registry.js";
|
|
29
29
|
export declare class PKC extends PKCTypedEmitter<PKCEvents> implements ParsedPKCOptions {
|
|
@@ -74,8 +74,7 @@ export declare class PKC extends PKCTypedEmitter<PKCEvents> implements ParsedPKC
|
|
|
74
74
|
_startedCommunities: IndexedTrackedInstanceRegistry<LocalCommunity | RpcLocalCommunity>;
|
|
75
75
|
private _communityFsWatchAbort?;
|
|
76
76
|
private _destroyAbortController?;
|
|
77
|
-
private
|
|
78
|
-
private _addressRewriterSetupPromise?;
|
|
77
|
+
private _httpRouterSetupPromise?;
|
|
79
78
|
destroyed: boolean;
|
|
80
79
|
private _promiseToWaitForFirstCommunitieschangeEvent;
|
|
81
80
|
private _storageLRUs;
|
package/dist/node/pkc/pkc.js
CHANGED
|
@@ -15,18 +15,16 @@ import { PKCError } from "../pkc-error.js";
|
|
|
15
15
|
import { InflightFetchManager } from "../util/inflight-fetch-manager.js";
|
|
16
16
|
import LRUStorage from "../runtime/node/lru-storage.js";
|
|
17
17
|
import { RemoteCommunity } from "../community/remote-community.js";
|
|
18
|
-
import { LocalCommunity, createNewLocalCommunityDb, updateInstancePropsWithStartedCommunityOrDb } from "../runtime/node/community/local-community.js";
|
|
19
18
|
import { extractCommunityRuntimeFieldsFromParsedPages } from "../pages/util.js";
|
|
20
19
|
import pTimeout, { TimeoutError } from "p-timeout";
|
|
21
20
|
import * as remeda from "remeda";
|
|
22
21
|
import { PubsubTopicSchema, CommunityIpfsSchema } from "../community/schema.js";
|
|
23
22
|
import { parseCidStringSchemaWithPKCErrorIfItFails, parseCommentEditPubsubMessagePublicationSchemaWithPKCErrorIfItFails, parseCommentIpfsSchemaWithPKCErrorIfItFails, parseCommentModerationPubsubMessagePublicationSchemaWithPKCErrorIfItFails, parseCommentPubsubMessagePublicationWithPKCErrorIfItFails, parseCreateCommentEditOptionsSchemaWithPKCErrorIfItFails, parseCreateCommentModerationOptionsSchemaWithPKCErrorIfItFails, parseCreateCommentOptionsSchemaWithPKCErrorIfItFails, parseCreateRemoteCommunityFunctionArgumentSchemaWithPKCErrorIfItFails, parseCreateCommunityEditPublicationOptionsSchemaWithPKCErrorIfItFails, parseCreateVoteOptionsSchemaWithPKCErrorIfItFails, parsePKCUserOptionsSchemaWithPKCErrorIfItFails, parseCommunityAddressWithPKCErrorIfItFails, parseCommunityEditPubsubMessagePublicationSchemaWithPKCErrorIfItFails, parseVotePubsubMessagePublicationSchemaWithPKCErrorIfItFails } from "../schema/schema-util.js";
|
|
24
23
|
import { CommentModeration } from "../publications/comment-moderation/comment-moderation.js";
|
|
25
|
-
import {
|
|
24
|
+
import { setupKuboHttpRouters } from "../runtime/node/setup-kubo-http-routers.js";
|
|
26
25
|
import CommunityEdit from "../publications/community-edit/community-edit.js";
|
|
27
26
|
import { LRUCache } from "lru-cache";
|
|
28
27
|
import { PKCTypedEmitter } from "../clients/pkc-typed-emitter.js";
|
|
29
|
-
import { createLibp2pJsClientOrUseExistingOne } from "../helia/helia-for-pkc.js";
|
|
30
28
|
import { parseRpcAuthorNameParam, parseRpcCidParam } from "../clients/rpc-client/rpc-schema-util.js";
|
|
31
29
|
import { cleanWireAuthor, normalizeCreatePublicationAuthor } from "../publications/publication-author.js";
|
|
32
30
|
import { TrackedInstanceRegistry } from "./tracked-instance-registry.js";
|
|
@@ -188,6 +186,9 @@ export class PKC extends PKCTypedEmitter {
|
|
|
188
186
|
return;
|
|
189
187
|
if (!this.httpRoutersOptions)
|
|
190
188
|
throw Error("httpRoutersOptions is required for libp2pJsClient");
|
|
189
|
+
// Loaded here (not at the top of the file) so the large helia/libp2p graph is only imported
|
|
190
|
+
// when a libp2p-js node is actually started — RPC-only and gateway consumers never pay it.
|
|
191
|
+
const { createLibp2pJsClientOrUseExistingOne } = await import("../helia/helia-for-pkc.js");
|
|
191
192
|
for (const clientOptions of this.libp2pJsClientsOptions) {
|
|
192
193
|
const heliaNode = await createLibp2pJsClientOrUseExistingOne({
|
|
193
194
|
...clientOptions,
|
|
@@ -217,22 +218,19 @@ export class PKC extends PKCTypedEmitter {
|
|
|
217
218
|
return;
|
|
218
219
|
if (this.httpRoutersOptions?.length && this.kuboRpcClientsOptions?.length && this._canCreateNewLocalCommunity()) {
|
|
219
220
|
// only for node
|
|
220
|
-
const setupPromise =
|
|
221
|
-
.then(
|
|
222
|
-
if (this.destroyed)
|
|
223
|
-
await addressesRewriterProxyServer.destroy();
|
|
221
|
+
const setupPromise = setupKuboHttpRouters(this)
|
|
222
|
+
.then(() => {
|
|
223
|
+
if (this.destroyed)
|
|
224
224
|
return;
|
|
225
|
-
|
|
226
|
-
log("Set http router options and their proxies successfully on all connected ipfs", Object.keys(this.clients.kuboRpcClients));
|
|
227
|
-
this._addressRewriterDestroy = addressesRewriterProxyServer.destroy;
|
|
225
|
+
log("Set http router options successfully on all connected ipfs", Object.keys(this.clients.kuboRpcClients));
|
|
228
226
|
})
|
|
229
227
|
.catch((e) => {
|
|
230
228
|
if (this.destroyed)
|
|
231
229
|
return;
|
|
232
|
-
log.error("Failed to set http router options
|
|
230
|
+
log.error("Failed to set http router options on ipfs nodes due to error", e);
|
|
233
231
|
this.emit("error", e);
|
|
234
232
|
});
|
|
235
|
-
this.
|
|
233
|
+
this._httpRouterSetupPromise = setupPromise;
|
|
236
234
|
}
|
|
237
235
|
}
|
|
238
236
|
async _init() {
|
|
@@ -523,6 +521,9 @@ export class PKC extends PKCTypedEmitter {
|
|
|
523
521
|
const canCreateLocalCommunity = this._canCreateNewLocalCommunity();
|
|
524
522
|
if (!canCreateLocalCommunity)
|
|
525
523
|
throw new PKCError("ERR_CAN_NOT_CREATE_A_LOCAL_COMMUNITY", { pkcOptions: this._userPKCOptions });
|
|
524
|
+
// Loaded here (not at the top of the file) so the local-community -> better-sqlite3 graph is
|
|
525
|
+
// only imported when a local community is actually created — see issue #120.
|
|
526
|
+
const { LocalCommunity, createNewLocalCommunityDb, updateInstancePropsWithStartedCommunityOrDb } = await import("../runtime/node/community/local-community.js");
|
|
526
527
|
const localCommunities = await nodeListCommunities(this);
|
|
527
528
|
const isLocalCommunity = localCommunities.includes(options.address); // Community exists already, only pass address so we don't override other props
|
|
528
529
|
const community = new LocalCommunity(this);
|
|
@@ -903,13 +904,9 @@ export class PKC extends PKCTypedEmitter {
|
|
|
903
904
|
await Promise.all(listStartedCommunities(this).map((community) => community.stop()));
|
|
904
905
|
if (this._communityFsWatchAbort)
|
|
905
906
|
this._communityFsWatchAbort.abort();
|
|
906
|
-
if (this.
|
|
907
|
-
await this.
|
|
908
|
-
this.
|
|
909
|
-
}
|
|
910
|
-
if (this._addressRewriterDestroy) {
|
|
911
|
-
await this._addressRewriterDestroy();
|
|
912
|
-
this._addressRewriterDestroy = undefined;
|
|
907
|
+
if (this._httpRouterSetupPromise) {
|
|
908
|
+
await this._httpRouterSetupPromise;
|
|
909
|
+
this._httpRouterSetupPromise = undefined;
|
|
913
910
|
}
|
|
914
911
|
await this._storage.destroy();
|
|
915
912
|
for (const storage of Object.values(this._storageLRUs))
|