@welshman/app 0.0.44 → 0.1.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/build/src/commands.js +7 -7
- package/build/src/commands.js.map +1 -1
- package/build/src/context.d.ts +1 -27
- package/build/src/context.js +1 -37
- package/build/src/context.js.map +1 -1
- package/build/src/core.d.ts +3 -5
- package/build/src/core.js +18 -4
- package/build/src/core.js.map +1 -1
- package/build/src/feeds.d.ts +1 -2
- package/build/src/feeds.js +11 -7
- package/build/src/feeds.js.map +1 -1
- package/build/src/follows.d.ts +3 -3
- package/build/src/follows.js +5 -2
- package/build/src/follows.js.map +1 -1
- package/build/src/handles.d.ts +2 -2
- package/build/src/handles.js +3 -2
- package/build/src/handles.js.map +1 -1
- package/build/src/index.d.ts +0 -9
- package/build/src/index.js +0 -1
- package/build/src/index.js.map +1 -1
- package/build/src/mutes.d.ts +3 -3
- package/build/src/mutes.js +5 -2
- package/build/src/mutes.js.map +1 -1
- package/build/src/pins.d.ts +3 -3
- package/build/src/pins.js +5 -2
- package/build/src/pins.js.map +1 -1
- package/build/src/profiles.d.ts +3 -3
- package/build/src/profiles.js +6 -13
- package/build/src/profiles.js.map +1 -1
- package/build/src/relaySelections.d.ts +4 -4
- package/build/src/relaySelections.js +18 -3
- package/build/src/relaySelections.js.map +1 -1
- package/build/src/relays.d.ts +3 -5
- package/build/src/relays.js +43 -49
- package/build/src/relays.js.map +1 -1
- package/build/src/router.d.ts +13 -9
- package/build/src/router.js +76 -76
- package/build/src/router.js.map +1 -1
- package/build/src/search.d.ts +4 -4
- package/build/src/search.js +6 -2
- package/build/src/search.js.map +1 -1
- package/build/src/storage.d.ts +5 -4
- package/build/src/storage.js.map +1 -1
- package/build/src/sync.d.ts +0 -1
- package/build/src/sync.js +8 -12
- package/build/src/sync.js.map +1 -1
- package/build/src/tags.js +12 -11
- package/build/src/tags.js.map +1 -1
- package/build/src/thunk.d.ts +6 -6
- package/build/src/thunk.js +72 -63
- package/build/src/thunk.js.map +1 -1
- package/build/src/zappers.d.ts +3 -3
- package/build/src/zappers.js +3 -2
- package/build/src/zappers.js.map +1 -1
- package/build/tsconfig.tsbuildinfo +1 -1
- package/package.json +3 -2
- package/build/src/subscribe.d.ts +0 -7
- package/build/src/subscribe.js +0 -42
- package/build/src/subscribe.js.map +0 -1
package/build/src/commands.js
CHANGED
|
@@ -1,37 +1,37 @@
|
|
|
1
1
|
import { get } from "svelte/store";
|
|
2
|
-
import { ctx } from "@welshman/lib";
|
|
3
2
|
import { addToListPublicly, removeFromList, makeList, FOLLOWS, MUTES, PINS } from "@welshman/util";
|
|
4
3
|
import { userFollows, userMutes, userPins } from "./user.js";
|
|
5
4
|
import { nip44EncryptToSelf } from "./session.js";
|
|
6
5
|
import { publishThunk } from "./thunk.js";
|
|
6
|
+
import { Router } 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);
|
|
10
|
-
return publishThunk({ event, relays:
|
|
10
|
+
return publishThunk({ event, relays: Router.get().FromUser().getUrls() });
|
|
11
11
|
};
|
|
12
12
|
export const follow = async (tag) => {
|
|
13
13
|
const list = get(userFollows) || makeList({ kind: FOLLOWS });
|
|
14
14
|
const event = await addToListPublicly(list, tag).reconcile(nip44EncryptToSelf);
|
|
15
|
-
return publishThunk({ event, relays:
|
|
15
|
+
return publishThunk({ event, relays: Router.get().FromUser().getUrls() });
|
|
16
16
|
};
|
|
17
17
|
export const unmute = async (value) => {
|
|
18
18
|
const list = get(userMutes) || makeList({ kind: MUTES });
|
|
19
19
|
const event = await removeFromList(list, value).reconcile(nip44EncryptToSelf);
|
|
20
|
-
return publishThunk({ event, relays:
|
|
20
|
+
return publishThunk({ event, relays: Router.get().FromUser().getUrls() });
|
|
21
21
|
};
|
|
22
22
|
export const mute = async (tag) => {
|
|
23
23
|
const list = get(userMutes) || makeList({ kind: MUTES });
|
|
24
24
|
const event = await addToListPublicly(list, tag).reconcile(nip44EncryptToSelf);
|
|
25
|
-
return publishThunk({ event, relays:
|
|
25
|
+
return publishThunk({ event, relays: Router.get().FromUser().getUrls() });
|
|
26
26
|
};
|
|
27
27
|
export const unpin = async (value) => {
|
|
28
28
|
const list = get(userPins) || makeList({ kind: PINS });
|
|
29
29
|
const event = await removeFromList(list, value).reconcile(nip44EncryptToSelf);
|
|
30
|
-
return publishThunk({ event, relays:
|
|
30
|
+
return publishThunk({ event, relays: Router.get().FromUser().getUrls() });
|
|
31
31
|
};
|
|
32
32
|
export const pin = async (tag) => {
|
|
33
33
|
const list = get(userPins) || makeList({ kind: PINS });
|
|
34
34
|
const event = await addToListPublicly(list, tag).reconcile(nip44EncryptToSelf);
|
|
35
|
-
return publishThunk({ event, relays:
|
|
35
|
+
return publishThunk({ event, relays: Router.get().FromUser().getUrls() });
|
|
36
36
|
};
|
|
37
37
|
//# sourceMappingURL=commands.js.map
|
|
@@ -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,
|
|
1
|
+
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../../src/commands.ts"],"names":[],"mappings":"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"}
|
package/build/src/context.d.ts
CHANGED
|
@@ -1,30 +1,4 @@
|
|
|
1
|
-
import type { Subscription, RelaysAndFilters, NetContext } from "@welshman/net";
|
|
2
|
-
import type { TrustedEvent, StampedEvent } from "@welshman/util";
|
|
3
|
-
import type { Router } from "./router.js";
|
|
4
1
|
export type AppContext = {
|
|
5
|
-
router: Router;
|
|
6
|
-
requestDelay: number;
|
|
7
|
-
authTimeout: number;
|
|
8
|
-
requestTimeout: number;
|
|
9
2
|
dufflepudUrl?: string;
|
|
10
|
-
indexerRelays?: string[];
|
|
11
|
-
};
|
|
12
|
-
export declare const getDefaultNetContext: (overrides?: Partial<NetContext>) => {
|
|
13
|
-
pool: import("@welshman/net").Pool;
|
|
14
|
-
authMode: import("@welshman/net").AuthMode;
|
|
15
|
-
onEvent: (url: string, event: TrustedEvent) => void;
|
|
16
|
-
signEvent: (event: StampedEvent) => Promise<any>;
|
|
17
|
-
getExecutor: (relays: string[]) => import("@welshman/net").Executor;
|
|
18
|
-
isDeleted: (url: string, event: TrustedEvent) => boolean;
|
|
19
|
-
isValid: (url: string, event: TrustedEvent) => boolean;
|
|
20
|
-
matchFilters: (url: string, filters: import("@welshman/util").Filter[], event: TrustedEvent) => boolean;
|
|
21
|
-
optimizeSubscriptions: (subs: Subscription[]) => RelaysAndFilters[];
|
|
22
|
-
};
|
|
23
|
-
export declare const getDefaultAppContext: (overrides?: Partial<AppContext>) => {
|
|
24
|
-
router: Router;
|
|
25
|
-
requestDelay: number;
|
|
26
|
-
authTimeout: number;
|
|
27
|
-
requestTimeout: number;
|
|
28
|
-
dufflepudUrl?: string | undefined;
|
|
29
|
-
indexerRelays?: string[] | undefined;
|
|
30
3
|
};
|
|
4
|
+
export declare const appContext: AppContext;
|
package/build/src/context.js
CHANGED
|
@@ -1,38 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
import { defaultOptimizeSubscriptions, getDefaultNetContext as originalGetDefaultNetContext, } from "@welshman/net";
|
|
3
|
-
import { LOCAL_RELAY_URL, isEphemeralKind, isDVMKind, unionFilters } from "@welshman/util";
|
|
4
|
-
import { tracker, repository } from "./core.js";
|
|
5
|
-
import { makeRouter, getFilterSelections } from "./router.js";
|
|
6
|
-
import { signer } from "./session.js";
|
|
7
|
-
export const getDefaultNetContext = (overrides = {}) => ({
|
|
8
|
-
...originalGetDefaultNetContext(),
|
|
9
|
-
signEvent: async (event) => signer.get()?.sign(event),
|
|
10
|
-
onEvent: (url, event) => {
|
|
11
|
-
if (isEphemeralKind(event.kind) || isDVMKind(event.kind))
|
|
12
|
-
return;
|
|
13
|
-
tracker.track(event.id, url);
|
|
14
|
-
repository.publish(event);
|
|
15
|
-
},
|
|
16
|
-
isDeleted: (url, event) => repository.isDeleted(event),
|
|
17
|
-
optimizeSubscriptions: (subs) => {
|
|
18
|
-
const [withRelays, withoutRelays] = partition(sub => sub.request.relays.length > 0, subs);
|
|
19
|
-
const filters = unionFilters(withoutRelays.flatMap(sub => sub.request.filters));
|
|
20
|
-
const selections = defaultOptimizeSubscriptions(withRelays);
|
|
21
|
-
selections.push({ relays: [LOCAL_RELAY_URL], filters });
|
|
22
|
-
if (filters.length > 0) {
|
|
23
|
-
for (const selection of getFilterSelections(filters)) {
|
|
24
|
-
selections.push(selection);
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
return selections;
|
|
28
|
-
},
|
|
29
|
-
...overrides,
|
|
30
|
-
});
|
|
31
|
-
export const getDefaultAppContext = (overrides = {}) => ({
|
|
32
|
-
router: makeRouter(),
|
|
33
|
-
requestDelay: 50,
|
|
34
|
-
authTimeout: 300,
|
|
35
|
-
requestTimeout: 3000,
|
|
36
|
-
...overrides,
|
|
37
|
-
});
|
|
1
|
+
export const appContext = {};
|
|
38
2
|
//# sourceMappingURL=context.js.map
|
package/build/src/context.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/context.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/context.ts"],"names":[],"mappings":"AAIA,MAAM,CAAC,MAAM,UAAU,GAAe,EAAE,CAAA"}
|
package/build/src/core.d.ts
CHANGED
|
@@ -1,12 +1,10 @@
|
|
|
1
|
-
import { Repository
|
|
2
|
-
import type { TrustedEvent } from "@welshman/util";
|
|
1
|
+
import { Repository } from "@welshman/relay";
|
|
3
2
|
import { Tracker } from "@welshman/net";
|
|
4
|
-
export declare const repository: Repository<TrustedEvent>;
|
|
5
|
-
export declare const relay: Relay<TrustedEvent>;
|
|
3
|
+
export declare const repository: Repository<import("@welshman/util").TrustedEvent>;
|
|
6
4
|
export declare const tracker: Tracker;
|
|
7
5
|
export declare const makeRepositoryStore: ({ throttle: t }?: {
|
|
8
6
|
throttle?: number;
|
|
9
|
-
}) => import("@welshman/store").WritableWithGetter<Repository<TrustedEvent>>;
|
|
7
|
+
}) => import("@welshman/store").WritableWithGetter<Repository<import("@welshman/util").TrustedEvent>>;
|
|
10
8
|
export declare const makeTrackerStore: ({ throttle: t }?: {
|
|
11
9
|
throttle?: number;
|
|
12
10
|
}) => import("@welshman/store").WritableWithGetter<Tracker>;
|
package/build/src/core.js
CHANGED
|
@@ -1,10 +1,24 @@
|
|
|
1
1
|
import { throttle } from "@welshman/lib";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { verifyEvent, isEphemeralKind, isDVMKind } from "@welshman/util";
|
|
3
|
+
import { Repository } from "@welshman/relay";
|
|
4
|
+
import { Pool, Tracker, SocketEvent, isRelayEvent } from "@welshman/net";
|
|
4
5
|
import { custom } from "@welshman/store";
|
|
5
|
-
|
|
6
|
-
export const
|
|
6
|
+
import { loadRelay, trackRelayStats } from "./relays.js";
|
|
7
|
+
export const repository = Repository.getSingleton();
|
|
7
8
|
export const tracker = new Tracker();
|
|
9
|
+
Pool.getSingleton().subscribe(socket => {
|
|
10
|
+
loadRelay(socket.url);
|
|
11
|
+
trackRelayStats(socket);
|
|
12
|
+
socket.on(SocketEvent.Receive, message => {
|
|
13
|
+
if (isRelayEvent(message)) {
|
|
14
|
+
const event = message[2];
|
|
15
|
+
if (!isEphemeralKind(event.kind) && !isDVMKind(event.kind) && verifyEvent(event)) {
|
|
16
|
+
tracker.track(event.id, socket.url);
|
|
17
|
+
repository.publish(event);
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
});
|
|
21
|
+
});
|
|
8
22
|
// Adapt above objects to stores
|
|
9
23
|
export const makeRepositoryStore = ({ throttle: t = 300 } = {}) => custom(setter => {
|
|
10
24
|
let onUpdate = () => setter(repository);
|
package/build/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":"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"}
|
package/build/src/feeds.d.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import { FeedController } from "@welshman/feeds";
|
|
2
|
-
import type { RequestOpts, FeedOptions, DVMOpts, Feed } from "@welshman/feeds";
|
|
1
|
+
import { FeedController, RequestOpts, FeedOptions, DVMOpts, Feed } from "@welshman/feeds";
|
|
3
2
|
export declare const request: ({ filters, relays, onEvent }: RequestOpts) => Promise<void>;
|
|
4
3
|
export declare const requestDVM: ({ kind, onEvent, ...request }: DVMOpts) => Promise<void>;
|
|
5
4
|
export declare const getPubkeysForScope: (scope: string) => string[];
|
package/build/src/feeds.js
CHANGED
|
@@ -1,19 +1,23 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { nthEq, now } from "@welshman/lib";
|
|
2
2
|
import { createEvent, getPubkeyTagValues } from "@welshman/util";
|
|
3
|
+
import { MultiRequest, RequestEvent } from "@welshman/net";
|
|
3
4
|
import { Scope, FeedController } from "@welshman/feeds";
|
|
4
5
|
import { makeDvmRequest, DVMEvent } from "@welshman/dvm";
|
|
5
6
|
import { makeSecret, Nip01Signer } from "@welshman/signer";
|
|
6
7
|
import { pubkey, signer } from "./session.js";
|
|
7
|
-
import { getFilterSelections } from "./router.js";
|
|
8
|
+
import { Router, getFilterSelections } from "./router.js";
|
|
8
9
|
import { loadRelaySelections } from "./relaySelections.js";
|
|
9
10
|
import { wotGraph, maxWot, getFollows, getNetwork, getFollowers } from "./wot.js";
|
|
10
|
-
import { load } from "./subscribe.js";
|
|
11
11
|
export const request = async ({ filters = [{}], relays = [], onEvent }) => {
|
|
12
12
|
if (relays.length > 0) {
|
|
13
|
-
await
|
|
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
|
+
});
|
|
14
18
|
}
|
|
15
19
|
else {
|
|
16
|
-
await Promise.all(getFilterSelections(filters).map(opts =>
|
|
20
|
+
await Promise.all(getFilterSelections(filters).map(opts => request({ ...opts, onEvent })));
|
|
17
21
|
}
|
|
18
22
|
};
|
|
19
23
|
export const requestDVM = async ({ kind, onEvent, ...request }) => {
|
|
@@ -27,8 +31,8 @@ export const requestDVM = async ({ kind, onEvent, ...request }) => {
|
|
|
27
31
|
const $signer = signer.get() || new Nip01Signer(makeSecret());
|
|
28
32
|
const pubkey = await $signer.getPubkey();
|
|
29
33
|
const relays = request.relays
|
|
30
|
-
?
|
|
31
|
-
:
|
|
34
|
+
? Router.get().FromRelays(request.relays).getUrls()
|
|
35
|
+
: Router.get().FromPubkeys(getPubkeyTagValues(tags)).getUrls();
|
|
32
36
|
if (!tags.some(nthEq(0, "expiration"))) {
|
|
33
37
|
tags.push(["expiration", String(now() + 60)]);
|
|
34
38
|
}
|
package/build/src/feeds.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feeds.js","sourceRoot":"","sources":["../../src/feeds.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,
|
|
1
|
+
{"version":3,"file":"feeds.js","sourceRoot":"","sources":["../../src/feeds.ts"],"names":[],"mappings":"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"}
|
package/build/src/follows.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { PublishedList } from "@welshman/util";
|
|
2
|
+
import { MultiRequestOptions } from "@welshman/net";
|
|
3
3
|
export declare const follows: import("@welshman/store").WritableWithGetter<PublishedList[]>;
|
|
4
|
-
export declare const followsByPubkey: import("@welshman/store").ReadableWithGetter<Map<string, PublishedList>>, deriveFollows: (key: import("@welshman/lib").Maybe<string>, request?: Partial<
|
|
4
|
+
export declare const followsByPubkey: import("@welshman/store").ReadableWithGetter<Map<string, PublishedList>>, deriveFollows: (key: import("@welshman/lib").Maybe<string>, request?: Partial<MultiRequestOptions> | undefined) => import("svelte/store").Readable<PublishedList | undefined>, loadFollows: (key: string, request?: Partial<MultiRequestOptions> | undefined) => Promise<PublishedList | undefined>;
|
package/build/src/follows.js
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { FOLLOWS, asDecryptedEvent, readList } from "@welshman/util";
|
|
2
|
+
import { load } from "@welshman/net";
|
|
2
3
|
import { deriveEventsMapped } from "@welshman/store";
|
|
3
4
|
import { repository } from "./core.js";
|
|
4
|
-
import {
|
|
5
|
+
import { Router } from "./router.js";
|
|
5
6
|
import { collection } from "./collection.js";
|
|
6
7
|
import { loadRelaySelections } from "./relaySelections.js";
|
|
7
8
|
export const follows = deriveEventsMapped(repository, {
|
|
@@ -15,7 +16,9 @@ export const { indexStore: followsByPubkey, deriveItem: deriveFollows, loadItem:
|
|
|
15
16
|
getKey: follows => follows.event.pubkey,
|
|
16
17
|
load: async (pubkey, request = {}) => {
|
|
17
18
|
await loadRelaySelections(pubkey, request);
|
|
18
|
-
|
|
19
|
+
const filters = [{ kinds: [FOLLOWS], authors: [pubkey] }];
|
|
20
|
+
const relays = Router.get().FromPubkey(pubkey).getUrls();
|
|
21
|
+
await load({ relays, ...request, filters });
|
|
19
22
|
},
|
|
20
23
|
});
|
|
21
24
|
//# sourceMappingURL=follows.js.map
|
package/build/src/follows.js.map
CHANGED
|
@@ -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;
|
|
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,EAAsB,IAAI,EAAC,MAAM,eAAe,CAAA;AACvD,OAAO,EAAC,kBAAkB,EAAC,MAAM,iBAAiB,CAAA;AAClD,OAAO,EAAC,UAAU,EAAC,MAAM,WAAW,CAAA;AACpC,OAAO,EAAC,MAAM,EAAC,MAAM,aAAa,CAAA;AAClC,OAAO,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAA;AAC1C,OAAO,EAAC,mBAAmB,EAAC,MAAM,sBAAsB,CAAA;AAExD,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,KAAK,EAAE,MAAc,EAAE,UAAwC,EAAE,EAAE,EAAE;QACzE,MAAM,mBAAmB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QAE1C,MAAM,OAAO,GAAG,CAAC,EAAC,KAAK,EAAE,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,CAAC,MAAM,CAAC,EAAC,CAAC,CAAA;QACvD,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAA;QAExD,MAAM,IAAI,CAAC,EAAC,MAAM,EAAE,GAAG,OAAO,EAAE,OAAO,EAAC,CAAC,CAAA;IAC3C,CAAC;CACF,CAAC,CAAA"}
|
package/build/src/handles.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { MultiRequestOptions } from "@welshman/net";
|
|
2
2
|
export type Handle = {
|
|
3
3
|
nip05: string;
|
|
4
4
|
pubkey?: string;
|
|
@@ -15,6 +15,6 @@ export declare function queryProfile(nip05: string): Promise<{
|
|
|
15
15
|
export declare const handles: import("svelte/store").Writable<Handle[]>;
|
|
16
16
|
export declare const fetchHandles: (nip05s: string[]) => Promise<Map<string, Handle>>;
|
|
17
17
|
export declare const handlesByNip05: import("@welshman/store").ReadableWithGetter<Map<string, Handle>>, deriveHandle: (key: import("@welshman/lib").Maybe<string>) => import("svelte/store").Readable<Handle | undefined>, loadHandle: (key: string) => Promise<Handle | undefined>;
|
|
18
|
-
export declare const deriveHandleForPubkey: (pubkey: string, request?: Partial<
|
|
18
|
+
export declare const deriveHandleForPubkey: (pubkey: string, request?: Partial<MultiRequestOptions>) => import("svelte/store").Readable<Handle | undefined>;
|
|
19
19
|
export declare const displayNip05: (nip05: string) => string;
|
|
20
20
|
export declare const displayHandle: (handle: Handle) => string;
|
package/build/src/handles.js
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { writable, derived } from "svelte/store";
|
|
2
|
-
import {
|
|
2
|
+
import { tryCatch, fetchJson, uniq, batcher, postJson, last } from "@welshman/lib";
|
|
3
3
|
import { collection } from "./collection.js";
|
|
4
4
|
import { deriveProfile } from "./profiles.js";
|
|
5
|
+
import { appContext } from "./context.js";
|
|
5
6
|
export const NIP05_REGEX = /^(?:([\w.+-]+)@)?([\w_-]+(\.[\w_-]+)+)$/;
|
|
6
7
|
export async function queryProfile(nip05) {
|
|
7
8
|
const match = nip05.match(NIP05_REGEX);
|
|
@@ -27,7 +28,7 @@ export async function queryProfile(nip05) {
|
|
|
27
28
|
}
|
|
28
29
|
export const handles = writable([]);
|
|
29
30
|
export const fetchHandles = async (nip05s) => {
|
|
30
|
-
const base =
|
|
31
|
+
const base = appContext.dufflepudUrl;
|
|
31
32
|
const handlesByNip05 = new Map();
|
|
32
33
|
// Use dufflepud if we it's set up to protect user privacy, otherwise fetch directly
|
|
33
34
|
if (base) {
|
package/build/src/handles.js.map
CHANGED
|
@@ -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;AAE9C,OAAO,EAAC,
|
|
1
|
+
{"version":3,"file":"handles.js","sourceRoot":"","sources":["../../src/handles.ts"],"names":[],"mappings":"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"}
|
package/build/src/index.d.ts
CHANGED
|
@@ -16,7 +16,6 @@ export * from "./router.js";
|
|
|
16
16
|
export * from "./search.js";
|
|
17
17
|
export * from "./session.js";
|
|
18
18
|
export * from "./storage.js";
|
|
19
|
-
export * from "./subscribe.js";
|
|
20
19
|
export * from "./sync.js";
|
|
21
20
|
export * from "./tags.js";
|
|
22
21
|
export * from "./thunk.js";
|
|
@@ -25,11 +24,3 @@ export * from "./user.js";
|
|
|
25
24
|
export * from "./util.js";
|
|
26
25
|
export * from "./wot.js";
|
|
27
26
|
export * from "./zappers.js";
|
|
28
|
-
import type { NetContext } from "@welshman/net";
|
|
29
|
-
import type { AppContext } from "./context.js";
|
|
30
|
-
declare module "@welshman/lib" {
|
|
31
|
-
interface Context {
|
|
32
|
-
net: NetContext;
|
|
33
|
-
app: AppContext;
|
|
34
|
-
}
|
|
35
|
-
}
|
package/build/src/index.js
CHANGED
package/build/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,WAAW,CAAA;AACzB,cAAc,iBAAiB,CAAA;AAC/B,cAAc,eAAe,CAAA;AAC7B,cAAc,YAAY,CAAA;AAC1B,cAAc,gBAAgB,CAAA;AAC9B,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,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAC5B,cAAc,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,WAAW,CAAA;AACzB,cAAc,iBAAiB,CAAA;AAC/B,cAAc,eAAe,CAAA;AAC7B,cAAc,YAAY,CAAA;AAC1B,cAAc,gBAAgB,CAAA;AAC9B,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,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAC5B,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/build/src/mutes.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { PublishedList } from "@welshman/util";
|
|
2
|
+
import { MultiRequestOptions } from "@welshman/net";
|
|
3
3
|
export declare const mutes: import("@welshman/store").WritableWithGetter<PublishedList[]>;
|
|
4
|
-
export declare const mutesByPubkey: import("@welshman/store").ReadableWithGetter<Map<string, PublishedList>>, deriveMutes: (key: import("@welshman/lib").Maybe<string>, request?: Partial<
|
|
4
|
+
export declare const mutesByPubkey: import("@welshman/store").ReadableWithGetter<Map<string, PublishedList>>, deriveMutes: (key: import("@welshman/lib").Maybe<string>, request?: Partial<MultiRequestOptions> | undefined) => import("svelte/store").Readable<PublishedList | undefined>, loadMutes: (key: string, request?: Partial<MultiRequestOptions> | undefined) => Promise<PublishedList | undefined>;
|
package/build/src/mutes.js
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { MUTES, asDecryptedEvent, readList } from "@welshman/util";
|
|
2
|
+
import { load } from "@welshman/net";
|
|
2
3
|
import { deriveEventsMapped } from "@welshman/store";
|
|
3
4
|
import { repository } from "./core.js";
|
|
4
|
-
import {
|
|
5
|
+
import { Router } from "./router.js";
|
|
5
6
|
import { collection } from "./collection.js";
|
|
6
7
|
import { ensurePlaintext } from "./plaintext.js";
|
|
7
8
|
import { loadRelaySelections } from "./relaySelections.js";
|
|
@@ -18,7 +19,9 @@ export const { indexStore: mutesByPubkey, deriveItem: deriveMutes, loadItem: loa
|
|
|
18
19
|
getKey: mute => mute.event.pubkey,
|
|
19
20
|
load: async (pubkey, request = {}) => {
|
|
20
21
|
await loadRelaySelections(pubkey, request);
|
|
21
|
-
|
|
22
|
+
const filters = [{ kinds: [MUTES], authors: [pubkey] }];
|
|
23
|
+
const relays = Router.get().FromPubkey(pubkey).getUrls();
|
|
24
|
+
await load({ relays, ...request, filters });
|
|
22
25
|
},
|
|
23
26
|
});
|
|
24
27
|
//# sourceMappingURL=mutes.js.map
|
package/build/src/mutes.js.map
CHANGED
|
@@ -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;
|
|
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,IAAI,EAAsB,MAAM,eAAe,CAAA;AACvD,OAAO,EAAC,kBAAkB,EAAC,MAAM,iBAAiB,CAAA;AAClD,OAAO,EAAC,UAAU,EAAC,MAAM,WAAW,CAAA;AACpC,OAAO,EAAC,MAAM,EAAC,MAAM,aAAa,CAAA;AAClC,OAAO,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAA;AAC1C,OAAO,EAAC,eAAe,EAAC,MAAM,gBAAgB,CAAA;AAC9C,OAAO,EAAC,mBAAmB,EAAC,MAAM,sBAAsB,CAAA;AAExD,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,KAAK,EAAE,MAAc,EAAE,UAAwC,EAAE,EAAE,EAAE;QACzE,MAAM,mBAAmB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QAE1C,MAAM,OAAO,GAAG,CAAC,EAAC,KAAK,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,MAAM,CAAC,EAAC,CAAC,CAAA;QACrD,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAA;QAExD,MAAM,IAAI,CAAC,EAAC,MAAM,EAAE,GAAG,OAAO,EAAE,OAAO,EAAC,CAAC,CAAA;IAC3C,CAAC;CACF,CAAC,CAAA"}
|
package/build/src/pins.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { PublishedList } from "@welshman/util";
|
|
2
|
+
import { MultiRequestOptions } from "@welshman/net";
|
|
3
3
|
export declare const pins: import("@welshman/store").WritableWithGetter<PublishedList[]>;
|
|
4
|
-
export declare const pinsByPubkey: import("@welshman/store").ReadableWithGetter<Map<string, PublishedList>>, derivePins: (key: import("@welshman/lib").Maybe<string>, request?: Partial<
|
|
4
|
+
export declare const pinsByPubkey: import("@welshman/store").ReadableWithGetter<Map<string, PublishedList>>, derivePins: (key: import("@welshman/lib").Maybe<string>, request?: Partial<MultiRequestOptions> | undefined) => import("svelte/store").Readable<PublishedList | undefined>, loadPins: (key: string, request?: Partial<MultiRequestOptions> | undefined) => Promise<PublishedList | undefined>;
|
package/build/src/pins.js
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { PINS, asDecryptedEvent, readList } from "@welshman/util";
|
|
2
|
+
import { load } from "@welshman/net";
|
|
2
3
|
import { deriveEventsMapped } from "@welshman/store";
|
|
3
4
|
import { repository } from "./core.js";
|
|
4
|
-
import {
|
|
5
|
+
import { Router } from "./router.js";
|
|
5
6
|
import { collection } from "./collection.js";
|
|
6
7
|
import { loadRelaySelections } from "./relaySelections.js";
|
|
7
8
|
export const pins = deriveEventsMapped(repository, {
|
|
@@ -15,7 +16,9 @@ export const { indexStore: pinsByPubkey, deriveItem: derivePins, loadItem: loadP
|
|
|
15
16
|
getKey: pins => pins.event.pubkey,
|
|
16
17
|
load: async (pubkey, request = {}) => {
|
|
17
18
|
await loadRelaySelections(pubkey, request);
|
|
18
|
-
|
|
19
|
+
const filters = [{ kinds: [PINS], authors: [pubkey] }];
|
|
20
|
+
const relays = Router.get().FromPubkey(pubkey).getUrls();
|
|
21
|
+
await load({ relays, ...request, filters });
|
|
19
22
|
},
|
|
20
23
|
});
|
|
21
24
|
//# sourceMappingURL=pins.js.map
|
package/build/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;
|
|
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,IAAI,EAAsB,MAAM,eAAe,CAAA;AACvD,OAAO,EAAC,kBAAkB,EAAC,MAAM,iBAAiB,CAAA;AAClD,OAAO,EAAC,UAAU,EAAC,MAAM,WAAW,CAAA;AACpC,OAAO,EAAC,MAAM,EAAC,MAAM,aAAa,CAAA;AAClC,OAAO,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAA;AAC1C,OAAO,EAAC,mBAAmB,EAAC,MAAM,sBAAsB,CAAA;AAExD,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,KAAK,EAAE,MAAc,EAAE,UAAwC,EAAE,EAAE,EAAE;QACzE,MAAM,mBAAmB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QAE1C,MAAM,OAAO,GAAG,CAAC,EAAC,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC,MAAM,CAAC,EAAC,CAAC,CAAA;QACpD,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAA;QAExD,MAAM,IAAI,CAAC,EAAC,MAAM,EAAE,GAAG,OAAO,EAAE,OAAO,EAAC,CAAC,CAAA;IAC3C,CAAC;CACF,CAAC,CAAA"}
|
package/build/src/profiles.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
1
|
+
import { MultiRequestOptions } from "@welshman/net";
|
|
2
|
+
import { PublishedProfile } from "@welshman/util";
|
|
3
3
|
export declare const profiles: import("@welshman/store").WritableWithGetter<PublishedProfile[]>;
|
|
4
|
-
export declare const profilesByPubkey: import("@welshman/store").ReadableWithGetter<Map<string, PublishedProfile>>, deriveProfile: (key: import("@welshman/lib").Maybe<string>, request?: Partial<
|
|
4
|
+
export declare const profilesByPubkey: import("@welshman/store").ReadableWithGetter<Map<string, PublishedProfile>>, deriveProfile: (key: import("@welshman/lib").Maybe<string>, request?: Partial<MultiRequestOptions> | undefined) => import("svelte/store").Readable<PublishedProfile | undefined>, loadProfile: (key: string, request?: Partial<MultiRequestOptions> | undefined) => Promise<PublishedProfile | undefined>;
|
|
5
5
|
export declare const displayProfileByPubkey: (pubkey: string | undefined) => string;
|
|
6
6
|
export declare const deriveProfileDisplay: (pubkey: string | undefined) => import("svelte/store").Readable<string>;
|
package/build/src/profiles.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { derived, readable } from "svelte/store";
|
|
2
2
|
import { readProfile, displayProfile, displayPubkey, PROFILE } from "@welshman/util";
|
|
3
|
+
import { load } from "@welshman/net";
|
|
3
4
|
import { deriveEventsMapped, withGetter } from "@welshman/store";
|
|
4
5
|
import { repository } from "./core.js";
|
|
5
|
-
import {
|
|
6
|
+
import { Router } from "./router.js";
|
|
6
7
|
import { collection } from "./collection.js";
|
|
7
8
|
import { loadRelaySelections } from "./relaySelections.js";
|
|
8
9
|
export const profiles = withGetter(deriveEventsMapped(repository, {
|
|
@@ -15,19 +16,11 @@ export const { indexStore: profilesByPubkey, deriveItem: deriveProfile, loadItem
|
|
|
15
16
|
store: profiles,
|
|
16
17
|
getKey: profile => profile.event.pubkey,
|
|
17
18
|
load: async (pubkey, request = {}) => {
|
|
19
|
+
await loadRelaySelections(pubkey, request);
|
|
20
|
+
const router = Router.get();
|
|
18
21
|
const filters = [{ kinds: [PROFILE], authors: [pubkey] }];
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
load({ ...request, filters });
|
|
22
|
-
// Load relay selections as quickly as possible, moving on to retrying profiles with
|
|
23
|
-
// better selections the moment we have a result, even if it's outdated
|
|
24
|
-
await new Promise(resolve => {
|
|
25
|
-
loadRelaySelections(pubkey, {
|
|
26
|
-
onEvent: () => resolve(),
|
|
27
|
-
onComplete: () => resolve(),
|
|
28
|
-
});
|
|
29
|
-
});
|
|
30
|
-
await load({ ...request, filters });
|
|
22
|
+
const relays = router.merge([router.Index(), router.FromPubkey(pubkey)]).getUrls();
|
|
23
|
+
await load({ relays, ...request, filters });
|
|
31
24
|
},
|
|
32
25
|
});
|
|
33
26
|
export const displayProfileByPubkey = (pubkey) => pubkey ? displayProfile(profilesByPubkey.get().get(pubkey), displayPubkey(pubkey)) : "";
|
|
@@ -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;
|
|
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;AAClF,OAAO,EAAC,IAAI,EAAsB,MAAM,eAAe,CAAA;AAEvD,OAAO,EAAC,kBAAkB,EAAE,UAAU,EAAC,MAAM,iBAAiB,CAAA;AAC9D,OAAO,EAAC,UAAU,EAAC,MAAM,WAAW,CAAA;AACpC,OAAO,EAAC,MAAM,EAAC,MAAM,aAAa,CAAA;AAClC,OAAO,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAA;AAC1C,OAAO,EAAC,mBAAmB,EAAC,MAAM,sBAAsB,CAAA;AAExD,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,KAAK,EAAE,MAAc,EAAE,UAAwC,EAAE,EAAE,EAAE;QACzE,MAAM,mBAAmB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QAE1C,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,EAAE,CAAA;QAC3B,MAAM,OAAO,GAAG,CAAC,EAAC,KAAK,EAAE,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,CAAC,MAAM,CAAC,EAAC,CAAC,CAAA;QACvD,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAA;QAElF,MAAM,IAAI,CAAC,EAAC,MAAM,EAAE,GAAG,OAAO,EAAE,OAAO,EAAC,CAAC,CAAA;IAC3C,CAAC;CACF,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,EAAE,CACjE,MAAM;IACJ,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC,EAAE,CAAC,cAAc,CAAC,QAAQ,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC;IAC7F,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
1
|
+
import { PublishedList, List } from "@welshman/util";
|
|
2
|
+
import { MultiRequestOptions } from "@welshman/net";
|
|
3
3
|
export declare const getRelayUrls: (list?: List) => string[];
|
|
4
4
|
export declare const getReadRelayUrls: (list?: List) => string[];
|
|
5
5
|
export declare const getWriteRelayUrls: (list?: List) => string[];
|
|
6
6
|
export declare const relaySelections: import("@welshman/store").WritableWithGetter<PublishedList[]>;
|
|
7
|
-
export declare const relaySelectionsByPubkey: import("@welshman/store").ReadableWithGetter<Map<string, PublishedList>>, deriveRelaySelections: (key: import("@welshman/lib").Maybe<string>, request?: Partial<
|
|
7
|
+
export declare const relaySelectionsByPubkey: import("@welshman/store").ReadableWithGetter<Map<string, PublishedList>>, deriveRelaySelections: (key: import("@welshman/lib").Maybe<string>, request?: Partial<MultiRequestOptions> | undefined) => import("svelte/store").Readable<PublishedList | undefined>, loadRelaySelections: (key: string, request?: Partial<MultiRequestOptions> | undefined) => Promise<PublishedList | undefined>;
|
|
8
8
|
export declare const inboxRelaySelections: import("@welshman/store").WritableWithGetter<PublishedList[]>;
|
|
9
|
-
export declare const inboxRelaySelectionsByPubkey: import("@welshman/store").ReadableWithGetter<Map<string, PublishedList>>, deriveInboxRelaySelections: (key: import("@welshman/lib").Maybe<string>, request?: Partial<
|
|
9
|
+
export declare const inboxRelaySelectionsByPubkey: import("@welshman/store").ReadableWithGetter<Map<string, PublishedList>>, deriveInboxRelaySelections: (key: import("@welshman/lib").Maybe<string>, request?: Partial<MultiRequestOptions> | undefined) => import("svelte/store").Readable<PublishedList | undefined>, loadInboxRelaySelections: (key: string, request?: Partial<MultiRequestOptions> | undefined) => Promise<PublishedList | undefined>;
|