@welshman/app 0.1.2 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/app/src/commands.d.ts +6 -42
- package/dist/app/src/commands.d.ts.map +1 -1
- package/dist/app/src/commands.js +1 -1
- package/dist/app/src/commands.js.map +1 -1
- package/dist/app/src/core.d.ts.map +1 -1
- package/dist/app/src/core.js +2 -17
- package/dist/app/src/core.js.map +1 -1
- package/dist/app/src/feeds.d.ts +3 -5
- package/dist/app/src/feeds.d.ts.map +1 -1
- package/dist/app/src/feeds.js +4 -55
- package/dist/app/src/feeds.js.map +1 -1
- package/dist/app/src/follows.d.ts.map +1 -1
- package/dist/app/src/follows.js +3 -4
- package/dist/app/src/follows.js.map +1 -1
- package/dist/app/src/handles.d.ts.map +1 -1
- package/dist/app/src/handles.js +4 -2
- package/dist/app/src/handles.js.map +1 -1
- package/dist/app/src/index.d.ts +1 -4
- package/dist/app/src/index.d.ts.map +1 -1
- package/dist/app/src/index.js +39 -4
- package/dist/app/src/index.js.map +1 -1
- package/dist/app/src/mutes.d.ts.map +1 -1
- package/dist/app/src/mutes.js +3 -4
- package/dist/app/src/mutes.js.map +1 -1
- package/dist/app/src/pins.d.ts.map +1 -1
- package/dist/app/src/pins.js +3 -4
- package/dist/app/src/pins.js.map +1 -1
- package/dist/app/src/profiles.d.ts +1 -1
- package/dist/app/src/profiles.d.ts.map +1 -1
- package/dist/app/src/profiles.js +5 -6
- package/dist/app/src/profiles.js.map +1 -1
- package/dist/app/src/relaySelections.d.ts +10 -5
- package/dist/app/src/relaySelections.d.ts.map +1 -1
- package/dist/app/src/relaySelections.js +31 -41
- package/dist/app/src/relaySelections.js.map +1 -1
- package/dist/app/src/relays.d.ts +1 -0
- package/dist/app/src/relays.d.ts.map +1 -1
- package/dist/app/src/relays.js +31 -4
- package/dist/app/src/relays.js.map +1 -1
- package/dist/app/src/search.d.ts.map +1 -1
- package/dist/app/src/search.js +1 -1
- package/dist/app/src/search.js.map +1 -1
- package/dist/app/src/session.d.ts +25 -7
- package/dist/app/src/session.d.ts.map +1 -1
- package/dist/app/src/session.js +50 -3
- package/dist/app/src/session.js.map +1 -1
- package/dist/app/src/storage.d.ts +1 -0
- package/dist/app/src/storage.d.ts.map +1 -1
- package/dist/app/src/storage.js +6 -1
- package/dist/app/src/storage.js.map +1 -1
- package/dist/app/src/storageAdapters.d.ts +88 -0
- package/dist/app/src/storageAdapters.d.ts.map +1 -0
- package/dist/app/src/storageAdapters.js +174 -0
- package/dist/app/src/storageAdapters.js.map +1 -0
- package/dist/app/src/sync.d.ts.map +1 -1
- package/dist/app/src/sync.js +7 -9
- package/dist/app/src/sync.js.map +1 -1
- package/dist/app/src/tags.js +1 -1
- package/dist/app/src/tags.js.map +1 -1
- package/dist/app/src/thunk.d.ts +38 -53
- package/dist/app/src/thunk.d.ts.map +1 -1
- package/dist/app/src/thunk.js +182 -132
- package/dist/app/src/thunk.js.map +1 -1
- package/dist/app/src/zappers.js +1 -1
- package/dist/dvm/src/handler.d.ts.map +1 -1
- package/dist/dvm/src/handler.js +9 -7
- package/dist/dvm/src/handler.js.map +1 -1
- package/dist/dvm/src/request.d.ts +6 -15
- package/dist/dvm/src/request.d.ts.map +1 -1
- package/dist/dvm/src/request.js +23 -23
- package/dist/dvm/src/request.js.map +1 -1
- package/dist/feeds/src/compiler.d.ts +15 -4
- package/dist/feeds/src/compiler.d.ts.map +1 -1
- package/dist/feeds/src/compiler.js +11 -6
- package/dist/feeds/src/compiler.js.map +1 -1
- package/dist/feeds/src/controller.d.ts +16 -9
- package/dist/feeds/src/controller.d.ts.map +1 -1
- package/dist/feeds/src/controller.js +23 -24
- package/dist/feeds/src/controller.js.map +1 -1
- package/dist/feeds/src/core.d.ts +1 -23
- package/dist/feeds/src/core.d.ts.map +1 -1
- package/dist/feeds/src/display.d.ts +21 -0
- package/dist/feeds/src/display.d.ts.map +1 -0
- package/dist/feeds/src/display.js +136 -0
- package/dist/feeds/src/display.js.map +1 -0
- package/dist/feeds/src/index.d.ts +2 -0
- package/dist/feeds/src/index.d.ts.map +1 -1
- package/dist/feeds/src/index.js +2 -0
- package/dist/feeds/src/index.js.map +1 -1
- package/dist/feeds/src/request.d.ts +22 -0
- package/dist/feeds/src/request.d.ts.map +1 -0
- package/dist/feeds/src/request.js +61 -0
- package/dist/feeds/src/request.js.map +1 -0
- package/dist/feeds/src/utils.d.ts +1 -1
- package/dist/feeds/src/utils.d.ts.map +1 -1
- package/dist/feeds/src/utils.js +2 -1
- package/dist/feeds/src/utils.js.map +1 -1
- package/dist/feeds/src/validate.d.ts +24 -0
- package/dist/feeds/src/validate.d.ts.map +1 -0
- package/dist/feeds/src/validate.js +137 -0
- package/dist/feeds/src/validate.js.map +1 -0
- package/dist/lib/src/TaskQueue.d.ts +2 -0
- package/dist/lib/src/TaskQueue.d.ts.map +1 -1
- package/dist/lib/src/TaskQueue.js +10 -0
- package/dist/lib/src/TaskQueue.js.map +1 -1
- package/dist/lib/src/Tools.d.ts +100 -3
- package/dist/lib/src/Tools.d.ts.map +1 -1
- package/dist/lib/src/Tools.js +166 -3
- package/dist/lib/src/Tools.js.map +1 -1
- package/dist/net/src/auth.d.ts +2 -1
- package/dist/net/src/auth.d.ts.map +1 -1
- package/dist/net/src/auth.js +16 -2
- package/dist/net/src/auth.js.map +1 -1
- package/dist/net/src/context.d.ts.map +1 -1
- package/dist/net/src/context.js +3 -3
- package/dist/net/src/context.js.map +1 -1
- package/dist/net/src/diff.d.ts.map +1 -1
- package/dist/net/src/diff.js +11 -12
- package/dist/net/src/diff.js.map +1 -1
- package/dist/net/src/policy.js +3 -3
- package/dist/net/src/policy.js.map +1 -1
- package/dist/net/src/pool.d.ts +1 -1
- package/dist/net/src/pool.d.ts.map +1 -1
- package/dist/net/src/pool.js +1 -1
- package/dist/net/src/pool.js.map +1 -1
- package/dist/net/src/publish.d.ts +29 -30
- package/dist/net/src/publish.d.ts.map +1 -1
- package/dist/net/src/publish.js +79 -108
- package/dist/net/src/publish.js.map +1 -1
- package/dist/net/src/request.d.ts +26 -60
- package/dist/net/src/request.d.ts.map +1 -1
- package/dist/net/src/request.js +170 -158
- package/dist/net/src/request.js.map +1 -1
- package/dist/relay/src/repository.d.ts +1 -1
- package/dist/relay/src/repository.d.ts.map +1 -1
- package/dist/relay/src/repository.js +1 -1
- package/dist/relay/src/repository.js.map +1 -1
- package/dist/signer/src/signers/nip46.d.ts +3 -3
- package/dist/signer/src/signers/nip46.d.ts.map +1 -1
- package/dist/signer/src/signers/nip46.js +26 -20
- package/dist/signer/src/signers/nip46.js.map +1 -1
- package/dist/store/src/collection.d.ts +32 -0
- package/dist/store/src/collection.d.ts.map +1 -0
- package/dist/{app → store}/src/collection.js +20 -8
- package/dist/store/src/collection.js.map +1 -0
- package/dist/store/src/custom.d.ts +10 -0
- package/dist/store/src/custom.d.ts.map +1 -0
- package/dist/store/src/custom.js +41 -0
- package/dist/store/src/custom.js.map +1 -0
- package/dist/store/src/getter.d.ts +11 -0
- package/dist/store/src/getter.d.ts.map +1 -0
- package/dist/store/src/getter.js +11 -0
- package/dist/store/src/getter.js.map +1 -0
- package/dist/store/src/index.d.ts +6 -34
- package/dist/store/src/index.d.ts.map +1 -1
- package/dist/store/src/index.js +6 -163
- package/dist/store/src/index.js.map +1 -1
- package/dist/store/src/repository.d.ts +16 -0
- package/dist/store/src/repository.d.ts.map +1 -0
- package/dist/store/src/repository.js +100 -0
- package/dist/store/src/repository.js.map +1 -0
- package/dist/store/src/synced.d.ts +2 -0
- package/dist/store/src/synced.d.ts.map +1 -0
- package/dist/store/src/synced.js +9 -0
- package/dist/store/src/synced.js.map +1 -0
- package/dist/store/src/throttle.d.ts +3 -0
- package/dist/store/src/throttle.d.ts.map +1 -0
- package/dist/store/src/throttle.js +9 -0
- package/dist/store/src/throttle.js.map +1 -0
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/util/src/Events.d.ts +1 -1
- package/dist/util/src/Events.d.ts.map +1 -1
- package/dist/util/src/Events.js +6 -5
- package/dist/util/src/Events.js.map +1 -1
- package/dist/util/src/List.d.ts +2 -0
- package/dist/util/src/List.d.ts.map +1 -1
- package/dist/util/src/List.js +10 -3
- package/dist/util/src/List.js.map +1 -1
- package/dist/util/src/Profile.d.ts +3 -10
- package/dist/util/src/Profile.d.ts.map +1 -1
- package/dist/util/src/Profile.js +1 -0
- package/dist/util/src/Profile.js.map +1 -1
- package/dist/util/src/Relay.d.ts +6 -0
- package/dist/util/src/Relay.d.ts.map +1 -1
- package/dist/util/src/Relay.js +9 -2
- package/dist/util/src/Relay.js.map +1 -1
- package/package.json +10 -9
- package/dist/app/src/adapters.d.ts +0 -33
- package/dist/app/src/adapters.d.ts.map +0 -1
- package/dist/app/src/adapters.js +0 -84
- package/dist/app/src/adapters.js.map +0 -1
- package/dist/app/src/collection.d.ts +0 -13
- package/dist/app/src/collection.d.ts.map +0 -1
- package/dist/app/src/collection.js.map +0 -1
- package/dist/app/src/freshness.d.ts +0 -11
- package/dist/app/src/freshness.d.ts.map +0 -1
- package/dist/app/src/freshness.js +0 -14
- package/dist/app/src/freshness.js.map +0 -1
- package/dist/app/src/router.d.ts +0 -199
- package/dist/app/src/router.d.ts.map +0 -1
- package/dist/app/src/router.js +0 -273
- package/dist/app/src/router.js.map +0 -1
|
@@ -1,43 +1,7 @@
|
|
|
1
|
-
export declare const unfollow: (value: string) => Promise<
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
}>;
|
|
8
|
-
export declare const follow: (tag: string[]) => Promise<{
|
|
9
|
-
event: import("@welshman/util").TrustedEvent;
|
|
10
|
-
request: import("./thunk.js").ThunkRequest;
|
|
11
|
-
controller: AbortController;
|
|
12
|
-
result: import("@welshman/lib").Deferred<import("./thunk.js").ThunkStatusByUrl>;
|
|
13
|
-
status: import("svelte/store").Writable<import("./thunk.js").ThunkStatusByUrl>;
|
|
14
|
-
}>;
|
|
15
|
-
export declare const unmute: (value: string) => Promise<{
|
|
16
|
-
event: import("@welshman/util").TrustedEvent;
|
|
17
|
-
request: import("./thunk.js").ThunkRequest;
|
|
18
|
-
controller: AbortController;
|
|
19
|
-
result: import("@welshman/lib").Deferred<import("./thunk.js").ThunkStatusByUrl>;
|
|
20
|
-
status: import("svelte/store").Writable<import("./thunk.js").ThunkStatusByUrl>;
|
|
21
|
-
}>;
|
|
22
|
-
export declare const mute: (tag: string[]) => Promise<{
|
|
23
|
-
event: import("@welshman/util").TrustedEvent;
|
|
24
|
-
request: import("./thunk.js").ThunkRequest;
|
|
25
|
-
controller: AbortController;
|
|
26
|
-
result: import("@welshman/lib").Deferred<import("./thunk.js").ThunkStatusByUrl>;
|
|
27
|
-
status: import("svelte/store").Writable<import("./thunk.js").ThunkStatusByUrl>;
|
|
28
|
-
}>;
|
|
29
|
-
export declare const unpin: (value: string) => Promise<{
|
|
30
|
-
event: import("@welshman/util").TrustedEvent;
|
|
31
|
-
request: import("./thunk.js").ThunkRequest;
|
|
32
|
-
controller: AbortController;
|
|
33
|
-
result: import("@welshman/lib").Deferred<import("./thunk.js").ThunkStatusByUrl>;
|
|
34
|
-
status: import("svelte/store").Writable<import("./thunk.js").ThunkStatusByUrl>;
|
|
35
|
-
}>;
|
|
36
|
-
export declare const pin: (tag: string[]) => Promise<{
|
|
37
|
-
event: import("@welshman/util").TrustedEvent;
|
|
38
|
-
request: import("./thunk.js").ThunkRequest;
|
|
39
|
-
controller: AbortController;
|
|
40
|
-
result: import("@welshman/lib").Deferred<import("./thunk.js").ThunkStatusByUrl>;
|
|
41
|
-
status: import("svelte/store").Writable<import("./thunk.js").ThunkStatusByUrl>;
|
|
42
|
-
}>;
|
|
1
|
+
export declare const unfollow: (value: string) => Promise<import("./thunk.js").Thunk>;
|
|
2
|
+
export declare const follow: (tag: string[]) => Promise<import("./thunk.js").Thunk>;
|
|
3
|
+
export declare const unmute: (value: string) => Promise<import("./thunk.js").Thunk>;
|
|
4
|
+
export declare const mute: (tag: string[]) => Promise<import("./thunk.js").Thunk>;
|
|
5
|
+
export declare const unpin: (value: string) => Promise<import("./thunk.js").Thunk>;
|
|
6
|
+
export declare const pin: (tag: string[]) => Promise<import("./thunk.js").Thunk>;
|
|
43
7
|
//# sourceMappingURL=commands.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../../src/commands.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,QAAQ,GAAU,OAAO,MAAM
|
|
1
|
+
{"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../../src/commands.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,QAAQ,GAAU,OAAO,MAAM,wCAM3C,CAAA;AAED,eAAO,MAAM,MAAM,GAAU,KAAK,MAAM,EAAE,wCAMzC,CAAA;AAED,eAAO,MAAM,MAAM,GAAU,OAAO,MAAM,wCAMzC,CAAA;AAED,eAAO,MAAM,IAAI,GAAU,KAAK,MAAM,EAAE,wCAMvC,CAAA;AAED,eAAO,MAAM,KAAK,GAAU,OAAO,MAAM,wCAMxC,CAAA;AAED,eAAO,MAAM,GAAG,GAAU,KAAK,MAAM,EAAE,wCAMtC,CAAA"}
|
package/dist/app/src/commands.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { get } from "svelte/store";
|
|
2
2
|
import { addToListPublicly, removeFromList, makeList, FOLLOWS, MUTES, PINS } from "@welshman/util";
|
|
3
|
+
import { Router, addMaximalFallbacks } from "@welshman/router";
|
|
3
4
|
import { userFollows, userMutes, userPins } from "./user.js";
|
|
4
5
|
import { nip44EncryptToSelf } from "./session.js";
|
|
5
6
|
import { publishThunk } from "./thunk.js";
|
|
6
|
-
import { Router, addMaximalFallbacks } from "./router.js";
|
|
7
7
|
export const unfollow = async (value) => {
|
|
8
8
|
const list = get(userFollows) || makeList({ kind: FOLLOWS });
|
|
9
9
|
const event = await removeFromList(list, value).reconcile(nip44EncryptToSelf);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../../../src/commands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAC,MAAM,cAAc,CAAA;AAChC,OAAO,EAAC,iBAAiB,EAAE,cAAc,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAC,MAAM,gBAAgB,CAAA;AAChG,OAAO,EAAC,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAC,MAAM,WAAW,CAAA;AAC1D,OAAO,EAAC,kBAAkB,EAAC,MAAM,cAAc,CAAA;AAC/C,OAAO,EAAC,YAAY,EAAC,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../../../src/commands.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../src/core.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../src/core.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,UAAU,EAAE,UAAU,EAAC,MAAM,iBAAiB,CAAA;AAEtD,OAAO,EAAC,OAAO,EAAC,MAAM,eAAe,CAAA;AAErC,eAAO,MAAM,UAAU,mDAAmB,CAAA;AAE1C,eAAO,MAAM,KAAK,mDAA6B,CAAA;AAE/C,eAAO,MAAM,OAAO,SAAgB,CAAA;AAIpC,eAAO,MAAM,mBAAmB,GAAI,kBAAqB;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAM,oGAiB9E,CAAA;AAEH,eAAO,MAAM,gBAAgB,GAAI,kBAAqB;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAM,0DAiB3E,CAAA"}
|
package/dist/app/src/core.js
CHANGED
|
@@ -1,25 +1,10 @@
|
|
|
1
1
|
import { throttle } from "@welshman/lib";
|
|
2
|
-
import { verifyEvent, isEphemeralKind, isDVMKind } from "@welshman/util";
|
|
3
2
|
import { Repository, LocalRelay } from "@welshman/relay";
|
|
4
|
-
import { Pool, Tracker, SocketEvent, isRelayEvent } from "@welshman/net";
|
|
5
3
|
import { custom } from "@welshman/store";
|
|
6
|
-
import {
|
|
7
|
-
export const repository = Repository.
|
|
4
|
+
import { Tracker } from "@welshman/net";
|
|
5
|
+
export const repository = Repository.get();
|
|
8
6
|
export const relay = new LocalRelay(repository);
|
|
9
7
|
export const tracker = new Tracker();
|
|
10
|
-
Pool.getSingleton().subscribe(socket => {
|
|
11
|
-
loadRelay(socket.url);
|
|
12
|
-
trackRelayStats(socket);
|
|
13
|
-
socket.on(SocketEvent.Receive, message => {
|
|
14
|
-
if (isRelayEvent(message)) {
|
|
15
|
-
const event = message[2];
|
|
16
|
-
if (!isEphemeralKind(event.kind) && !isDVMKind(event.kind) && verifyEvent(event)) {
|
|
17
|
-
tracker.track(event.id, socket.url);
|
|
18
|
-
repository.publish(event);
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
});
|
|
22
|
-
});
|
|
23
8
|
// Adapt above objects to stores
|
|
24
9
|
export const makeRepositoryStore = ({ throttle: t = 300 } = {}) => custom(setter => {
|
|
25
10
|
let onUpdate = () => setter(repository);
|
package/dist/app/src/core.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.js","sourceRoot":"","sources":["../../../src/core.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,eAAe,CAAA;AACtC,OAAO,EAAC,
|
|
1
|
+
{"version":3,"file":"core.js","sourceRoot":"","sources":["../../../src/core.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,eAAe,CAAA;AACtC,OAAO,EAAC,UAAU,EAAE,UAAU,EAAC,MAAM,iBAAiB,CAAA;AACtD,OAAO,EAAC,MAAM,EAAC,MAAM,iBAAiB,CAAA;AACtC,OAAO,EAAC,OAAO,EAAC,MAAM,eAAe,CAAA;AAErC,MAAM,CAAC,MAAM,UAAU,GAAG,UAAU,CAAC,GAAG,EAAE,CAAA;AAE1C,MAAM,CAAC,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,UAAU,CAAC,CAAA;AAE/C,MAAM,CAAC,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAA;AAEpC,gCAAgC;AAEhC,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,EAAC,QAAQ,EAAE,CAAC,GAAG,GAAG,KAAyB,EAAE,EAAE,EAAE,CACnF,MAAM,CACJ,MAAM,CAAC,EAAE;IACP,IAAI,QAAQ,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;IAEvC,IAAI,CAAC,EAAE,CAAC;QACN,QAAQ,GAAG,QAAQ,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAA;IAClC,CAAC;IAED,QAAQ,EAAE,CAAA;IACV,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;IAEjC,OAAO,GAAG,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;AACjD,CAAC,EACD;IACE,GAAG,EAAE,CAAC,KAAiB,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;CAC1D,CACF,CAAA;AAEH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,EAAC,QAAQ,EAAE,CAAC,GAAG,GAAG,KAAyB,EAAE,EAAE,EAAE,CAChF,MAAM,CACJ,MAAM,CAAC,EAAE;IACP,IAAI,QAAQ,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IAEpC,IAAI,CAAC,EAAE,CAAC;QACN,QAAQ,GAAG,QAAQ,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAA;IAClC,CAAC;IAED,QAAQ,EAAE,CAAA;IACV,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;IAE9B,OAAO,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;AAC9C,CAAC,EACD;IACE,GAAG,EAAE,CAAC,KAAc,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;CACxD,CACF,CAAA"}
|
package/dist/app/src/feeds.d.ts
CHANGED
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
import { FeedController,
|
|
2
|
-
export declare const request: ({ filters, relays, onEvent }: RequestOpts) => Promise<void>;
|
|
3
|
-
export declare const requestDVM: ({ kind, onEvent, ...request }: DVMOpts) => Promise<void>;
|
|
1
|
+
import { FeedController, FeedControllerOptions, Feed } from "@welshman/feeds";
|
|
4
2
|
export declare const getPubkeysForScope: (scope: string) => string[];
|
|
5
3
|
export declare const getPubkeysForWOTRange: (min: number, max: number) => string[];
|
|
6
|
-
type
|
|
4
|
+
type MakeFeedControllerOptions = Partial<Omit<FeedControllerOptions, "feed">> & {
|
|
7
5
|
feed: Feed;
|
|
8
6
|
};
|
|
9
|
-
export declare const
|
|
7
|
+
export declare const makeFeedController: (options: MakeFeedControllerOptions) => FeedController;
|
|
10
8
|
export {};
|
|
11
9
|
//# sourceMappingURL=feeds.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feeds.d.ts","sourceRoot":"","sources":["../../../src/feeds.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"feeds.d.ts","sourceRoot":"","sources":["../../../src/feeds.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,cAAc,EAAE,qBAAqB,EAAE,IAAI,EAAC,MAAM,iBAAiB,CAAA;AAKlF,eAAO,MAAM,kBAAkB,GAAI,OAAO,MAAM,aAmB/C,CAAA;AAED,eAAO,MAAM,qBAAqB,GAAI,KAAK,MAAM,EAAE,KAAK,MAAM,aAY7D,CAAA;AAED,KAAK,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC,GAAG;IAAC,IAAI,EAAE,IAAI,CAAA;CAAC,CAAA;AAE5F,eAAO,MAAM,kBAAkB,GAAI,SAAS,yBAAyB,mBAOjE,CAAA"}
|
package/dist/app/src/feeds.js
CHANGED
|
@@ -1,58 +1,7 @@
|
|
|
1
|
-
import { nthEq, now } from "@welshman/lib";
|
|
2
|
-
import { createEvent, getPubkeyTagValues } from "@welshman/util";
|
|
3
|
-
import { MultiRequest, RequestEvent } from "@welshman/net";
|
|
4
1
|
import { Scope, FeedController } from "@welshman/feeds";
|
|
5
|
-
import { makeDvmRequest, DVMEvent } from "@welshman/dvm";
|
|
6
|
-
import { makeSecret, Nip01Signer } from "@welshman/signer";
|
|
7
2
|
import { pubkey, signer } from "./session.js";
|
|
8
|
-
import { Router, addMinimalFallbacks, getFilterSelections } from "./router.js";
|
|
9
|
-
import { loadRelaySelections } from "./relaySelections.js";
|
|
10
3
|
import { wotGraph, maxWot, getFollows, getNetwork, getFollowers } from "./wot.js";
|
|
11
|
-
|
|
12
|
-
if (relays.length > 0) {
|
|
13
|
-
await new Promise(resolve => {
|
|
14
|
-
const sub = new MultiRequest({ filters, relays, timeout: 5000, autoClose: true });
|
|
15
|
-
sub.on(RequestEvent.Event, onEvent);
|
|
16
|
-
sub.on(RequestEvent.Close, resolve);
|
|
17
|
-
});
|
|
18
|
-
}
|
|
19
|
-
else {
|
|
20
|
-
await Promise.all(getFilterSelections(filters).map(opts => request({ ...opts, onEvent })));
|
|
21
|
-
}
|
|
22
|
-
};
|
|
23
|
-
export const requestDVM = async ({ kind, onEvent, ...request }) => {
|
|
24
|
-
// Make sure we know what relays to use for target dvms
|
|
25
|
-
if (request.tags && !request.relays) {
|
|
26
|
-
for (const pubkey of getPubkeyTagValues(request.tags)) {
|
|
27
|
-
await loadRelaySelections(pubkey);
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
const tags = request.tags || [];
|
|
31
|
-
const $signer = signer.get() || new Nip01Signer(makeSecret());
|
|
32
|
-
const pubkey = await $signer.getPubkey();
|
|
33
|
-
const relays = request.relays ||
|
|
34
|
-
Router.get().FromPubkeys(getPubkeyTagValues(tags)).policy(addMinimalFallbacks).getUrls();
|
|
35
|
-
if (!tags.some(nthEq(0, "expiration"))) {
|
|
36
|
-
tags.push(["expiration", String(now() + 60)]);
|
|
37
|
-
}
|
|
38
|
-
if (!tags.some(nthEq(0, "relays"))) {
|
|
39
|
-
tags.push(["relays", ...relays]);
|
|
40
|
-
}
|
|
41
|
-
if (!tags.some(nthEq(1, "user"))) {
|
|
42
|
-
tags.push(["param", "user", pubkey]);
|
|
43
|
-
}
|
|
44
|
-
if (!tags.some(nthEq(1, "max_results"))) {
|
|
45
|
-
tags.push(["param", "max_results", "200"]);
|
|
46
|
-
}
|
|
47
|
-
const event = await $signer.sign(createEvent(kind, { tags }));
|
|
48
|
-
const req = makeDvmRequest({ event, relays });
|
|
49
|
-
await new Promise(resolve => {
|
|
50
|
-
req.emitter.on(DVMEvent.Result, (url, event) => {
|
|
51
|
-
onEvent(event);
|
|
52
|
-
resolve();
|
|
53
|
-
});
|
|
54
|
-
});
|
|
55
|
-
};
|
|
4
|
+
import { repository } from "./core.js";
|
|
56
5
|
export const getPubkeysForScope = (scope) => {
|
|
57
6
|
const $pubkey = pubkey.get();
|
|
58
7
|
if (!$pubkey) {
|
|
@@ -82,11 +31,11 @@ export const getPubkeysForWOTRange = (min, max) => {
|
|
|
82
31
|
}
|
|
83
32
|
return pubkeys;
|
|
84
33
|
};
|
|
85
|
-
export const
|
|
86
|
-
|
|
87
|
-
requestDVM,
|
|
34
|
+
export const makeFeedController = (options) => new FeedController({
|
|
35
|
+
repository,
|
|
88
36
|
getPubkeysForScope,
|
|
89
37
|
getPubkeysForWOTRange,
|
|
38
|
+
signer: signer.get(),
|
|
90
39
|
...options,
|
|
91
40
|
});
|
|
92
41
|
//# sourceMappingURL=feeds.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feeds.js","sourceRoot":"","sources":["../../../src/feeds.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"feeds.js","sourceRoot":"","sources":["../../../src/feeds.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAE,cAAc,EAA8B,MAAM,iBAAiB,CAAA;AAClF,OAAO,EAAC,MAAM,EAAE,MAAM,EAAC,MAAM,cAAc,CAAA;AAC3C,OAAO,EAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,YAAY,EAAC,MAAM,UAAU,CAAA;AAC/E,OAAO,EAAC,UAAU,EAAC,MAAM,WAAW,CAAA;AAEpC,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,KAAa,EAAE,EAAE;IAClD,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,EAAE,CAAA;IAE5B,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,EAAE,CAAA;IACX,CAAC;IAED,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,KAAK,CAAC,IAAI;YACb,OAAO,CAAC,OAAO,CAAC,CAAA;QAClB,KAAK,KAAK,CAAC,OAAO;YAChB,OAAO,UAAU,CAAC,OAAO,CAAC,CAAA;QAC5B,KAAK,KAAK,CAAC,OAAO;YAChB,OAAO,UAAU,CAAC,OAAO,CAAC,CAAA;QAC5B,KAAK,KAAK,CAAC,SAAS;YAClB,OAAO,YAAY,CAAC,OAAO,CAAC,CAAA;QAC9B;YACE,OAAO,EAAE,CAAA;IACb,CAAC;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,GAAW,EAAE,GAAW,EAAE,EAAE;IAChE,MAAM,OAAO,GAAG,EAAE,CAAA;IAClB,MAAM,YAAY,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,GAAG,CAAA;IACvC,MAAM,YAAY,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,GAAG,CAAA;IAEvC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,QAAQ,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC;QACpD,IAAI,KAAK,IAAI,YAAY,IAAI,KAAK,IAAI,YAAY,EAAE,CAAC;YACnD,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACnB,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA;AAID,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,OAAkC,EAAE,EAAE,CACvE,IAAI,cAAc,CAAC;IACjB,UAAU;IACV,kBAAkB;IAClB,qBAAqB;IACrB,MAAM,EAAE,MAAM,CAAC,GAAG,EAAE;IACpB,GAAG,OAAO;CACX,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"follows.d.ts","sourceRoot":"","sources":["../../../src/follows.ts"],"names":[],"mappings":"AACA,OAAO,EAAe,aAAa,EAAC,MAAM,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"follows.d.ts","sourceRoot":"","sources":["../../../src/follows.ts"],"names":[],"mappings":"AACA,OAAO,EAAe,aAAa,EAAC,MAAM,gBAAgB,CAAA;AAK1D,eAAO,MAAM,OAAO,+DAIlB,CAAA;AAEF,eAAO,MACO,eAAe,4EACf,aAAa,8GACf,WAAW,wEAMrB,CAAA"}
|
package/dist/app/src/follows.js
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { FOLLOWS, asDecryptedEvent, readList } from "@welshman/util";
|
|
2
|
-
import { deriveEventsMapped } from "@welshman/store";
|
|
2
|
+
import { deriveEventsMapped, collection } from "@welshman/store";
|
|
3
3
|
import { repository } from "./core.js";
|
|
4
|
-
import {
|
|
5
|
-
import { loadWithAsapMetaRelayUrls } from "./relaySelections.js";
|
|
4
|
+
import { makeOutboxLoader } from "./relaySelections.js";
|
|
6
5
|
export const follows = deriveEventsMapped(repository, {
|
|
7
6
|
filters: [{ kinds: [FOLLOWS] }],
|
|
8
7
|
itemToEvent: item => item.event,
|
|
@@ -12,6 +11,6 @@ export const { indexStore: followsByPubkey, deriveItem: deriveFollows, loadItem:
|
|
|
12
11
|
name: "follows",
|
|
13
12
|
store: follows,
|
|
14
13
|
getKey: follows => follows.event.pubkey,
|
|
15
|
-
load: (
|
|
14
|
+
load: makeOutboxLoader(FOLLOWS),
|
|
16
15
|
});
|
|
17
16
|
//# sourceMappingURL=follows.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"follows.js","sourceRoot":"","sources":["../../../src/follows.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAC,MAAM,gBAAgB,CAAA;AAElE,OAAO,EAAC,kBAAkB,EAAC,MAAM,iBAAiB,CAAA;
|
|
1
|
+
{"version":3,"file":"follows.js","sourceRoot":"","sources":["../../../src/follows.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAC,MAAM,gBAAgB,CAAA;AAElE,OAAO,EAAC,kBAAkB,EAAE,UAAU,EAAC,MAAM,iBAAiB,CAAA;AAC9D,OAAO,EAAC,UAAU,EAAC,MAAM,WAAW,CAAA;AACpC,OAAO,EAAC,gBAAgB,EAAC,MAAM,sBAAsB,CAAA;AAErD,MAAM,CAAC,MAAM,OAAO,GAAG,kBAAkB,CAAgB,UAAU,EAAE;IACnE,OAAO,EAAE,CAAC,EAAC,KAAK,EAAE,CAAC,OAAO,CAAC,EAAC,CAAC;IAC7B,WAAW,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK;IAC/B,WAAW,EAAE,CAAC,KAAmB,EAAE,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;CACxE,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,EACX,UAAU,EAAE,eAAe,EAC3B,UAAU,EAAE,aAAa,EACzB,QAAQ,EAAE,WAAW,GACtB,GAAG,UAAU,CAAC;IACb,IAAI,EAAE,SAAS;IACf,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM;IACvC,IAAI,EAAE,gBAAgB,CAAC,OAAO,CAAC;CAChC,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handles.d.ts","sourceRoot":"","sources":["../../../src/handles.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,MAAM,GAAG;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;CAClB,CAAA;AAED,eAAO,MAAM,WAAW,QAA4C,CAAA;AAEpE,wBAAsB,YAAY,CAAC,KAAK,EAAE,MAAM;;;;;eA6B/C;AAED,eAAO,MAAM,OAAO,2CAAyB,CAAA;AAE7C,eAAO,MAAM,YAAY,GAAU,QAAQ,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"handles.d.ts","sourceRoot":"","sources":["../../../src/handles.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,MAAM,GAAG;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;CAClB,CAAA;AAED,eAAO,MAAM,WAAW,QAA4C,CAAA;AAEpE,wBAAsB,YAAY,CAAC,KAAK,EAAE,MAAM;;;;;eA6B/C;AAED,eAAO,MAAM,OAAO,2CAAyB,CAAA;AAE7C,eAAO,MAAM,YAAY,GAAU,QAAQ,MAAM,EAAE,iCA+BlD,CAAA;AAED,eAAO,MACO,cAAc,qEACd,YAAY,uGACd,UAAU,mEACZ,QAAQ,+DAqBhB,CAAA;AAEF,eAAO,MAAM,qBAAqB,GAAI,QAAQ,MAAM,EAAE,SAAQ,MAAM,EAAO,wDASvE,CAAA;AAEJ,eAAO,MAAM,YAAY,GAAI,OAAO,MAAM,WACgB,CAAA;AAE1D,eAAO,MAAM,aAAa,GAAI,QAAQ,MAAM,WAA+B,CAAA"}
|
package/dist/app/src/handles.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { writable, derived } from "svelte/store";
|
|
2
2
|
import { tryCatch, fetchJson, uniq, batcher, postJson, last } from "@welshman/lib";
|
|
3
|
-
import { collection } from "
|
|
3
|
+
import { collection } from "@welshman/store";
|
|
4
4
|
import { deriveProfile } from "./profiles.js";
|
|
5
5
|
import { appContext } from "./context.js";
|
|
6
6
|
export const NIP05_REGEX = /^(?:([\w.+-]+)@)?([\w_-]+(\.[\w_-]+)+)$/;
|
|
@@ -34,7 +34,9 @@ export const fetchHandles = async (nip05s) => {
|
|
|
34
34
|
if (base) {
|
|
35
35
|
const res = await tryCatch(async () => await postJson(`${base}/handle/info`, { handles: nip05s }));
|
|
36
36
|
for (const { handle: nip05, info } of res?.data || []) {
|
|
37
|
-
|
|
37
|
+
if (info) {
|
|
38
|
+
handlesByNip05.set(nip05, info);
|
|
39
|
+
}
|
|
38
40
|
}
|
|
39
41
|
}
|
|
40
42
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handles.js","sourceRoot":"","sources":["../../../src/handles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAE,OAAO,EAAC,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAC,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAC,MAAM,eAAe,CAAA;AAChF,OAAO,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAA;AAC1C,OAAO,EAAC,aAAa,EAAC,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAA;AASvC,MAAM,CAAC,MAAM,WAAW,GAAG,yCAAyC,CAAA;AAEpE,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,KAAa;IAC9C,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;IAEtC,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAA;IAE5B,MAAM,CAAC,CAAC,EAAE,IAAI,GAAG,GAAG,EAAE,MAAM,CAAC,GAAG,KAAK,CAAA;IAErC,IAAI,CAAC;QACH,MAAM,EACJ,KAAK,EACL,MAAM,GAAG,EAAE,EACX,KAAK,GAAG,EAAE,GACX,GAAG,MAAM,SAAS,CAAC,WAAW,MAAM,gCAAgC,IAAI,EAAE,CAAC,CAAA;QAE5E,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,CAAA;QAE1B,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,SAAS,CAAA;QAClB,CAAC;QAED,OAAO;YACL,KAAK;YACL,MAAM;YACN,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC;YACpB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;SACvB,CAAA;IACH,CAAC;IAAC,OAAO,EAAE,EAAE,CAAC;QACZ,OAAO,SAAS,CAAA;IAClB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,OAAO,GAAG,QAAQ,CAAW,EAAE,CAAC,CAAA;AAE7C,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAAE,MAAgB,EAAE,EAAE;IACrD,MAAM,IAAI,GAAG,UAAU,CAAC,YAAa,CAAA;IACrC,MAAM,cAAc,GAAG,IAAI,GAAG,EAAkB,CAAA;IAEhD,oFAAoF;IACpF,IAAI,IAAI,EAAE,CAAC;QACT,MAAM,GAAG,GAAQ,MAAM,QAAQ,CAC7B,KAAK,IAAI,EAAE,CAAC,MAAM,QAAQ,CAAC,GAAG,IAAI,cAAc,EAAE,EAAC,OAAO,EAAE,MAAM,EAAC,CAAC,CACrE,CAAA;QAED,KAAK,MAAM,EAAC,MAAM,EAAE,KAAK,EAAE,IAAI,EAAC,IAAI,GAAG,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC;YACpD,cAAc,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"handles.js","sourceRoot":"","sources":["../../../src/handles.ts"],"names":[],"mappings":"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"}
|
package/dist/app/src/index.d.ts
CHANGED
|
@@ -1,10 +1,7 @@
|
|
|
1
|
-
export * from "./adapters.js";
|
|
2
1
|
export * from "./context.js";
|
|
3
2
|
export * from "./core.js";
|
|
4
|
-
export * from "./collection.js";
|
|
5
3
|
export * from "./commands.js";
|
|
6
4
|
export * from "./feeds.js";
|
|
7
|
-
export * from "./freshness.js";
|
|
8
5
|
export * from "./follows.js";
|
|
9
6
|
export * from "./handles.js";
|
|
10
7
|
export * from "./mutes.js";
|
|
@@ -13,10 +10,10 @@ export * from "./profiles.js";
|
|
|
13
10
|
export * from "./pins.js";
|
|
14
11
|
export * from "./relays.js";
|
|
15
12
|
export * from "./relaySelections.js";
|
|
16
|
-
export * from "./router.js";
|
|
17
13
|
export * from "./search.js";
|
|
18
14
|
export * from "./session.js";
|
|
19
15
|
export * from "./storage.js";
|
|
16
|
+
export * from "./storageAdapters.js";
|
|
20
17
|
export * from "./sync.js";
|
|
21
18
|
export * from "./tags.js";
|
|
22
19
|
export * from "./thunk.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,WAAW,CAAA;AACzB,cAAc,eAAe,CAAA;AAC7B,cAAc,YAAY,CAAA;AAC1B,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAC5B,cAAc,YAAY,CAAA;AAC1B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,eAAe,CAAA;AAC7B,cAAc,WAAW,CAAA;AACzB,cAAc,aAAa,CAAA;AAC3B,cAAc,sBAAsB,CAAA;AACpC,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAC5B,cAAc,sBAAsB,CAAA;AACpC,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,aAAa,CAAA;AAC3B,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,UAAU,CAAA;AACxB,cAAc,cAAc,CAAA"}
|
package/dist/app/src/index.js
CHANGED
|
@@ -1,10 +1,7 @@
|
|
|
1
|
-
export * from "./adapters.js";
|
|
2
1
|
export * from "./context.js";
|
|
3
2
|
export * from "./core.js";
|
|
4
|
-
export * from "./collection.js";
|
|
5
3
|
export * from "./commands.js";
|
|
6
4
|
export * from "./feeds.js";
|
|
7
|
-
export * from "./freshness.js";
|
|
8
5
|
export * from "./follows.js";
|
|
9
6
|
export * from "./handles.js";
|
|
10
7
|
export * from "./mutes.js";
|
|
@@ -13,10 +10,10 @@ export * from "./profiles.js";
|
|
|
13
10
|
export * from "./pins.js";
|
|
14
11
|
export * from "./relays.js";
|
|
15
12
|
export * from "./relaySelections.js";
|
|
16
|
-
export * from "./router.js";
|
|
17
13
|
export * from "./search.js";
|
|
18
14
|
export * from "./session.js";
|
|
19
15
|
export * from "./storage.js";
|
|
16
|
+
export * from "./storageAdapters.js";
|
|
20
17
|
export * from "./sync.js";
|
|
21
18
|
export * from "./tags.js";
|
|
22
19
|
export * from "./thunk.js";
|
|
@@ -25,4 +22,42 @@ export * from "./user.js";
|
|
|
25
22
|
export * from "./util.js";
|
|
26
23
|
export * from "./wot.js";
|
|
27
24
|
export * from "./zappers.js";
|
|
25
|
+
import { sortBy, throttleWithValue, tryCatch } from "@welshman/lib";
|
|
26
|
+
import { verifyEvent, isEphemeralKind, isDVMKind } from "@welshman/util";
|
|
27
|
+
import { routerContext } from "@welshman/router";
|
|
28
|
+
import { Pool, SocketEvent, isRelayEvent } from "@welshman/net";
|
|
29
|
+
import { pubkey } from "./session.js";
|
|
30
|
+
import { repository, tracker } from "./core.js";
|
|
31
|
+
import { getPubkeyRelays } from "./relaySelections.js";
|
|
32
|
+
import { relays, loadRelay, trackRelayStats, getRelayQuality } from "./relays.js";
|
|
33
|
+
// Sync relays with our database
|
|
34
|
+
Pool.get().subscribe(socket => {
|
|
35
|
+
loadRelay(socket.url);
|
|
36
|
+
trackRelayStats(socket);
|
|
37
|
+
socket.on(SocketEvent.Receive, message => {
|
|
38
|
+
if (isRelayEvent(message)) {
|
|
39
|
+
const event = message[2];
|
|
40
|
+
if (!isEphemeralKind(event.kind) && !isDVMKind(event.kind) && verifyEvent(event)) {
|
|
41
|
+
tracker.track(event.id, socket.url);
|
|
42
|
+
repository.publish(event);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
});
|
|
46
|
+
});
|
|
47
|
+
// Configure the router
|
|
48
|
+
const _relayGetter = (fn) => throttleWithValue(200, () => {
|
|
49
|
+
let _relays = relays.get();
|
|
50
|
+
if (fn) {
|
|
51
|
+
_relays = _relays.filter(fn);
|
|
52
|
+
}
|
|
53
|
+
return sortBy(r => -getRelayQuality(r.url), _relays)
|
|
54
|
+
.slice(0, 5)
|
|
55
|
+
.map(r => r.url);
|
|
56
|
+
});
|
|
57
|
+
routerContext.getUserPubkey = () => pubkey.get();
|
|
58
|
+
routerContext.getPubkeyRelays = getPubkeyRelays;
|
|
59
|
+
routerContext.getRelayQuality = getRelayQuality;
|
|
60
|
+
routerContext.getDefaultRelays = _relayGetter();
|
|
61
|
+
routerContext.getIndexerRelays = _relayGetter();
|
|
62
|
+
routerContext.getSearchRelays = _relayGetter(r => tryCatch(() => r.profile?.supported_nips?.includes(50)));
|
|
28
63
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mutes.d.ts","sourceRoot":"","sources":["../../../src/mutes.ts"],"names":[],"mappings":"AACA,OAAO,EAAe,aAAa,EAAC,MAAM,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"mutes.d.ts","sourceRoot":"","sources":["../../../src/mutes.ts"],"names":[],"mappings":"AACA,OAAO,EAAe,aAAa,EAAC,MAAM,gBAAgB,CAAA;AAM1D,eAAO,MAAM,KAAK,+DAShB,CAAA;AAEF,eAAO,MACO,aAAa,4EACb,WAAW,8GACb,SAAS,wEAMnB,CAAA"}
|
package/dist/app/src/mutes.js
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import { MUTES, asDecryptedEvent, readList } from "@welshman/util";
|
|
2
|
-
import { deriveEventsMapped } from "@welshman/store";
|
|
2
|
+
import { deriveEventsMapped, collection } from "@welshman/store";
|
|
3
3
|
import { repository } from "./core.js";
|
|
4
|
-
import { collection } from "./collection.js";
|
|
5
4
|
import { ensurePlaintext } from "./plaintext.js";
|
|
6
|
-
import {
|
|
5
|
+
import { makeOutboxLoader } from "./relaySelections.js";
|
|
7
6
|
export const mutes = deriveEventsMapped(repository, {
|
|
8
7
|
filters: [{ kinds: [MUTES] }],
|
|
9
8
|
itemToEvent: item => item.event,
|
|
@@ -15,6 +14,6 @@ export const { indexStore: mutesByPubkey, deriveItem: deriveMutes, loadItem: loa
|
|
|
15
14
|
name: "mutes",
|
|
16
15
|
store: mutes,
|
|
17
16
|
getKey: mute => mute.event.pubkey,
|
|
18
|
-
load: (
|
|
17
|
+
load: makeOutboxLoader(MUTES),
|
|
19
18
|
});
|
|
20
19
|
//# sourceMappingURL=mutes.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mutes.js","sourceRoot":"","sources":["../../../src/mutes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAE,gBAAgB,EAAE,QAAQ,EAAC,MAAM,gBAAgB,CAAA;AAEhE,OAAO,EAAC,kBAAkB,EAAC,MAAM,iBAAiB,CAAA;
|
|
1
|
+
{"version":3,"file":"mutes.js","sourceRoot":"","sources":["../../../src/mutes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAE,gBAAgB,EAAE,QAAQ,EAAC,MAAM,gBAAgB,CAAA;AAEhE,OAAO,EAAC,kBAAkB,EAAE,UAAU,EAAC,MAAM,iBAAiB,CAAA;AAC9D,OAAO,EAAC,UAAU,EAAC,MAAM,WAAW,CAAA;AACpC,OAAO,EAAC,eAAe,EAAC,MAAM,gBAAgB,CAAA;AAC9C,OAAO,EAAC,gBAAgB,EAAC,MAAM,sBAAsB,CAAA;AAErD,MAAM,CAAC,MAAM,KAAK,GAAG,kBAAkB,CAAgB,UAAU,EAAE;IACjE,OAAO,EAAE,CAAC,EAAC,KAAK,EAAE,CAAC,KAAK,CAAC,EAAC,CAAC;IAC3B,WAAW,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK;IAC/B,WAAW,EAAE,KAAK,EAAE,KAAmB,EAAE,EAAE,CACzC,QAAQ,CACN,gBAAgB,CAAC,KAAK,EAAE;QACtB,OAAO,EAAE,MAAM,eAAe,CAAC,KAAK,CAAC;KACtC,CAAC,CACH;CACJ,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,EACX,UAAU,EAAE,aAAa,EACzB,UAAU,EAAE,WAAW,EACvB,QAAQ,EAAE,SAAS,GACpB,GAAG,UAAU,CAAC;IACb,IAAI,EAAE,OAAO;IACb,KAAK,EAAE,KAAK;IACZ,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM;IACjC,IAAI,EAAE,gBAAgB,CAAC,KAAK,CAAC;CAC9B,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pins.d.ts","sourceRoot":"","sources":["../../../src/pins.ts"],"names":[],"mappings":"AACA,OAAO,EAAe,aAAa,EAAC,MAAM,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"pins.d.ts","sourceRoot":"","sources":["../../../src/pins.ts"],"names":[],"mappings":"AACA,OAAO,EAAe,aAAa,EAAC,MAAM,gBAAgB,CAAA;AAK1D,eAAO,MAAM,IAAI,+DAIf,CAAA;AAEF,eAAO,MACO,YAAY,4EACZ,UAAU,8GACZ,QAAQ,wEAMlB,CAAA"}
|
package/dist/app/src/pins.js
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { PINS, asDecryptedEvent, readList } from "@welshman/util";
|
|
2
|
-
import { deriveEventsMapped } from "@welshman/store";
|
|
2
|
+
import { deriveEventsMapped, collection } from "@welshman/store";
|
|
3
3
|
import { repository } from "./core.js";
|
|
4
|
-
import {
|
|
5
|
-
import { loadWithAsapMetaRelayUrls } from "./relaySelections.js";
|
|
4
|
+
import { makeOutboxLoader } from "./relaySelections.js";
|
|
6
5
|
export const pins = deriveEventsMapped(repository, {
|
|
7
6
|
filters: [{ kinds: [PINS] }],
|
|
8
7
|
itemToEvent: item => item.event,
|
|
@@ -12,6 +11,6 @@ export const { indexStore: pinsByPubkey, deriveItem: derivePins, loadItem: loadP
|
|
|
12
11
|
name: "pins",
|
|
13
12
|
store: pins,
|
|
14
13
|
getKey: pins => pins.event.pubkey,
|
|
15
|
-
load: (
|
|
14
|
+
load: makeOutboxLoader(PINS),
|
|
16
15
|
});
|
|
17
16
|
//# sourceMappingURL=pins.js.map
|
package/dist/app/src/pins.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pins.js","sourceRoot":"","sources":["../../../src/pins.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,IAAI,EAAE,gBAAgB,EAAE,QAAQ,EAAC,MAAM,gBAAgB,CAAA;AAE/D,OAAO,EAAC,kBAAkB,EAAC,MAAM,iBAAiB,CAAA;
|
|
1
|
+
{"version":3,"file":"pins.js","sourceRoot":"","sources":["../../../src/pins.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,IAAI,EAAE,gBAAgB,EAAE,QAAQ,EAAC,MAAM,gBAAgB,CAAA;AAE/D,OAAO,EAAC,kBAAkB,EAAE,UAAU,EAAC,MAAM,iBAAiB,CAAA;AAC9D,OAAO,EAAC,UAAU,EAAC,MAAM,WAAW,CAAA;AACpC,OAAO,EAAC,gBAAgB,EAAC,MAAM,sBAAsB,CAAA;AAErD,MAAM,CAAC,MAAM,IAAI,GAAG,kBAAkB,CAAgB,UAAU,EAAE;IAChE,OAAO,EAAE,CAAC,EAAC,KAAK,EAAE,CAAC,IAAI,CAAC,EAAC,CAAC;IAC1B,WAAW,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK;IAC/B,WAAW,EAAE,CAAC,KAAmB,EAAE,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;CACxE,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,EACX,UAAU,EAAE,YAAY,EACxB,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,QAAQ,GACnB,GAAG,UAAU,CAAC;IACb,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,IAAI;IACX,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM;IACjC,IAAI,EAAE,gBAAgB,CAAC,IAAI,CAAC;CAC7B,CAAC,CAAA"}
|
|
@@ -2,5 +2,5 @@ import { PublishedProfile } from "@welshman/util";
|
|
|
2
2
|
export declare const profiles: import("@welshman/store").WritableWithGetter<PublishedProfile[]>;
|
|
3
3
|
export declare const profilesByPubkey: import("@welshman/store").ReadableWithGetter<Map<string, PublishedProfile>>, deriveProfile: (key: string | undefined, relays?: string[]) => import("svelte/store").Readable<PublishedProfile | undefined>, loadProfile: (key: string, relays?: string[]) => Promise<PublishedProfile | undefined>;
|
|
4
4
|
export declare const displayProfileByPubkey: (pubkey: string | undefined) => string;
|
|
5
|
-
export declare const deriveProfileDisplay: (pubkey: string | undefined) => import("svelte/store").Readable<string>;
|
|
5
|
+
export declare const deriveProfileDisplay: (pubkey: string | undefined, relays?: string[]) => import("svelte/store").Readable<string>;
|
|
6
6
|
//# sourceMappingURL=profiles.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"profiles.d.ts","sourceRoot":"","sources":["../../../src/profiles.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,gBAAgB,EAAC,MAAM,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"profiles.d.ts","sourceRoot":"","sources":["../../../src/profiles.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,gBAAgB,EAAC,MAAM,gBAAgB,CAAA;AAK/C,eAAO,MAAM,QAAQ,kEAMpB,CAAA;AAED,eAAO,MACO,gBAAgB,+EAChB,aAAa,iHACf,WAAW,2EAMrB,CAAA;AAEF,eAAO,MAAM,sBAAsB,GAAI,QAAQ,MAAM,GAAG,SAAS,WACwB,CAAA;AAEzF,eAAO,MAAM,oBAAoB,GAAI,QAAQ,MAAM,GAAG,SAAS,EAAE,SAAQ,MAAM,EAAO,4CAKpE,CAAA"}
|
package/dist/app/src/profiles.js
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import { derived, readable } from "svelte/store";
|
|
2
2
|
import { readProfile, displayProfile, displayPubkey, PROFILE } from "@welshman/util";
|
|
3
|
-
import { deriveEventsMapped, withGetter } from "@welshman/store";
|
|
3
|
+
import { deriveEventsMapped, collection, withGetter } from "@welshman/store";
|
|
4
4
|
import { repository } from "./core.js";
|
|
5
|
-
import {
|
|
6
|
-
import { loadWithAsapMetaRelayUrls } from "./relaySelections.js";
|
|
5
|
+
import { makeOutboxLoader } from "./relaySelections.js";
|
|
7
6
|
export const profiles = withGetter(deriveEventsMapped(repository, {
|
|
8
7
|
filters: [{ kinds: [PROFILE] }],
|
|
9
8
|
eventToItem: readProfile,
|
|
@@ -13,10 +12,10 @@ export const { indexStore: profilesByPubkey, deriveItem: deriveProfile, loadItem
|
|
|
13
12
|
name: "profiles",
|
|
14
13
|
store: profiles,
|
|
15
14
|
getKey: profile => profile.event.pubkey,
|
|
16
|
-
load: (
|
|
15
|
+
load: makeOutboxLoader(PROFILE),
|
|
17
16
|
});
|
|
18
17
|
export const displayProfileByPubkey = (pubkey) => pubkey ? displayProfile(profilesByPubkey.get().get(pubkey), displayPubkey(pubkey)) : "";
|
|
19
|
-
export const deriveProfileDisplay = (pubkey) => pubkey
|
|
20
|
-
? derived(deriveProfile(pubkey), $profile => displayProfile($profile, displayPubkey(pubkey)))
|
|
18
|
+
export const deriveProfileDisplay = (pubkey, relays = []) => pubkey
|
|
19
|
+
? derived(deriveProfile(pubkey, relays), $profile => displayProfile($profile, displayPubkey(pubkey)))
|
|
21
20
|
: readable("");
|
|
22
21
|
//# sourceMappingURL=profiles.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"profiles.js","sourceRoot":"","sources":["../../../src/profiles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAE,QAAQ,EAAC,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAC,WAAW,EAAE,cAAc,EAAE,aAAa,EAAE,OAAO,EAAC,MAAM,gBAAgB,CAAA;AAElF,OAAO,EAAC,kBAAkB,EAAE,UAAU,EAAC,MAAM,iBAAiB,CAAA;
|
|
1
|
+
{"version":3,"file":"profiles.js","sourceRoot":"","sources":["../../../src/profiles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAE,QAAQ,EAAC,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAC,WAAW,EAAE,cAAc,EAAE,aAAa,EAAE,OAAO,EAAC,MAAM,gBAAgB,CAAA;AAElF,OAAO,EAAC,kBAAkB,EAAE,UAAU,EAAE,UAAU,EAAC,MAAM,iBAAiB,CAAA;AAC1E,OAAO,EAAC,UAAU,EAAC,MAAM,WAAW,CAAA;AACpC,OAAO,EAAC,gBAAgB,EAAC,MAAM,sBAAsB,CAAA;AAErD,MAAM,CAAC,MAAM,QAAQ,GAAG,UAAU,CAChC,kBAAkB,CAAmB,UAAU,EAAE;IAC/C,OAAO,EAAE,CAAC,EAAC,KAAK,EAAE,CAAC,OAAO,CAAC,EAAC,CAAC;IAC7B,WAAW,EAAE,WAAW;IACxB,WAAW,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK;CAChC,CAAC,CACH,CAAA;AAED,MAAM,CAAC,MAAM,EACX,UAAU,EAAE,gBAAgB,EAC5B,UAAU,EAAE,aAAa,EACzB,QAAQ,EAAE,WAAW,GACtB,GAAG,UAAU,CAAC;IACb,IAAI,EAAE,UAAU;IAChB,KAAK,EAAE,QAAQ;IACf,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM;IACvC,IAAI,EAAE,gBAAgB,CAAC,OAAO,CAAC;CAChC,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,MAA0B,EAAE,EAAE,CACnE,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,gBAAgB,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;AAEzF,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,MAA0B,EAAE,SAAmB,EAAE,EAAE,EAAE,CACxF,MAAM;IACJ,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,QAAQ,CAAC,EAAE,CAChD,cAAc,CAAC,QAAQ,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC,CAChD;IACH,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA"}
|
|
@@ -1,10 +1,15 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
import { TrustedEvent, PublishedList, RelayMode } from "@welshman/util";
|
|
2
|
+
export type OutboxLoaderRequest = {
|
|
3
|
+
pubkey: string;
|
|
4
|
+
relays: string[];
|
|
5
|
+
kind: number;
|
|
6
|
+
};
|
|
7
|
+
export declare const loadUsingOutbox: (request: OutboxLoaderRequest) => Promise<Promise<TrustedEvent[]>>;
|
|
8
|
+
export declare const makeOutboxLoader: (kind: number) => (pubkey: string, relays: string[]) => Promise<Promise<TrustedEvent[]>>;
|
|
5
9
|
export declare const relaySelections: import("@welshman/store").WritableWithGetter<PublishedList[]>;
|
|
6
10
|
export declare const relaySelectionsByPubkey: import("@welshman/store").ReadableWithGetter<Map<string, PublishedList>>, deriveRelaySelections: (key: string | undefined, relays?: string[]) => import("svelte/store").Readable<PublishedList | undefined>, loadRelaySelections: (key: string, relays?: string[]) => Promise<PublishedList | undefined>;
|
|
7
|
-
export declare const
|
|
11
|
+
export declare const getPubkeyRelays: (pubkey: string, mode?: RelayMode) => string[];
|
|
12
|
+
export declare const derivePubkeyRelays: (pubkey: string, mode?: RelayMode) => import("svelte/store").Readable<string[]>;
|
|
8
13
|
export declare const inboxRelaySelections: import("@welshman/store").WritableWithGetter<PublishedList[]>;
|
|
9
14
|
export declare const inboxRelaySelectionsByPubkey: import("@welshman/store").ReadableWithGetter<Map<string, PublishedList>>, deriveInboxRelaySelections: (key: string | undefined, relays?: string[]) => import("svelte/store").Readable<PublishedList | undefined>, loadInboxRelaySelections: (key: string, relays?: string[]) => Promise<PublishedList | undefined>;
|
|
10
15
|
//# sourceMappingURL=relaySelections.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relaySelections.d.ts","sourceRoot":"","sources":["../../../src/relaySelections.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"relaySelections.d.ts","sourceRoot":"","sources":["../../../src/relaySelections.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,YAAY,EAAE,aAAa,EAAE,SAAS,EAAC,MAAM,gBAAgB,CAAA;AAMrE,MAAM,MAAM,mBAAmB,GAAG;IAChC,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;AAED,eAAO,MAAM,eAAe,oEAiB1B,CAAA;AAEF,eAAO,MAAM,gBAAgB,GAAI,MAAM,MAAM,MAAM,QAAQ,MAAM,EAAE,QAAQ,MAAM,EAAE,qCAC1C,CAAA;AAEzC,eAAO,MAAM,eAAe,+DAI1B,CAAA;AAEF,eAAO,MACO,uBAAuB,4EACvB,qBAAqB,8GACvB,mBAAmB,wEAM7B,CAAA;AAEF,eAAO,MAAM,eAAe,GAAI,QAAQ,MAAM,EAAE,OAAO,SAAS,aAGQ,CAAA;AAExE,eAAO,MAAM,kBAAkB,GAAI,QAAQ,MAAM,EAAE,OAAO,SAAS,8CAGkB,CAAA;AAErF,eAAO,MAAM,oBAAoB,+DAI/B,CAAA;AAEF,eAAO,MACO,4BAA4B,4EAC5B,0BAA0B,8GAC5B,wBAAwB,wEAMlC,CAAA"}
|