@welshman/domain 0.9.9 → 0.10.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/domain/src/behaviors/Client.d.ts +19 -0
- package/dist/domain/src/behaviors/Client.d.ts.map +1 -0
- package/dist/domain/src/behaviors/Client.js +18 -0
- package/dist/domain/src/behaviors/Client.js.map +1 -0
- package/dist/domain/src/behaviors/ContentWarning.d.ts +15 -0
- package/dist/domain/src/behaviors/ContentWarning.d.ts.map +1 -0
- package/dist/domain/src/behaviors/ContentWarning.js +13 -0
- package/dist/domain/src/behaviors/ContentWarning.js.map +1 -0
- package/dist/domain/src/behaviors/Expiration.d.ts +9 -0
- package/dist/domain/src/behaviors/Expiration.d.ts.map +1 -0
- package/dist/domain/src/behaviors/Expiration.js +10 -0
- package/dist/domain/src/behaviors/Expiration.js.map +1 -0
- package/dist/domain/src/behaviors/Protected.d.ts +8 -0
- package/dist/domain/src/behaviors/Protected.d.ts.map +1 -0
- package/dist/domain/src/behaviors/Protected.js +8 -0
- package/dist/domain/src/behaviors/Protected.js.map +1 -0
- package/dist/domain/src/core/EventQuery.d.ts +102 -0
- package/dist/domain/src/core/EventQuery.d.ts.map +1 -0
- package/dist/domain/src/core/EventQuery.js +227 -0
- package/dist/domain/src/core/EventQuery.js.map +1 -0
- package/dist/domain/src/core/EventReader.d.ts +4 -0
- package/dist/domain/src/core/EventReader.d.ts.map +1 -1
- package/dist/domain/src/core/EventReader.js +15 -3
- package/dist/domain/src/core/EventReader.js.map +1 -1
- package/dist/domain/src/core/EventWriter.d.ts +21 -5
- package/dist/domain/src/core/EventWriter.d.ts.map +1 -1
- package/dist/domain/src/core/EventWriter.js +59 -15
- package/dist/domain/src/core/EventWriter.js.map +1 -1
- package/dist/domain/src/core/Kind.d.ts +16 -13
- package/dist/domain/src/core/Kind.d.ts.map +1 -1
- package/dist/domain/src/core/Kind.js +8 -5
- package/dist/domain/src/core/Kind.js.map +1 -1
- package/dist/domain/src/index.d.ts +6 -0
- package/dist/domain/src/index.d.ts.map +1 -1
- package/dist/domain/src/index.js +6 -0
- package/dist/domain/src/index.js.map +1 -1
- package/dist/domain/src/kinds/AppData.d.ts +5 -1
- package/dist/domain/src/kinds/AppData.d.ts.map +1 -1
- package/dist/domain/src/kinds/AppData.js +7 -0
- package/dist/domain/src/kinds/AppData.js.map +1 -1
- package/dist/domain/src/kinds/Article.d.ts +5 -1
- package/dist/domain/src/kinds/Article.d.ts.map +1 -1
- package/dist/domain/src/kinds/Article.js +7 -0
- package/dist/domain/src/kinds/Article.js.map +1 -1
- package/dist/domain/src/kinds/BlockedRelayList.d.ts +5 -1
- package/dist/domain/src/kinds/BlockedRelayList.d.ts.map +1 -1
- package/dist/domain/src/kinds/BlockedRelayList.js +7 -0
- package/dist/domain/src/kinds/BlockedRelayList.js.map +1 -1
- package/dist/domain/src/kinds/BlossomServerList.d.ts +5 -1
- package/dist/domain/src/kinds/BlossomServerList.d.ts.map +1 -1
- package/dist/domain/src/kinds/BlossomServerList.js +7 -0
- package/dist/domain/src/kinds/BlossomServerList.js.map +1 -1
- package/dist/domain/src/kinds/BookmarkList.d.ts +5 -1
- package/dist/domain/src/kinds/BookmarkList.d.ts.map +1 -1
- package/dist/domain/src/kinds/BookmarkList.js +7 -0
- package/dist/domain/src/kinds/BookmarkList.js.map +1 -1
- package/dist/domain/src/kinds/Classified.d.ts +5 -1
- package/dist/domain/src/kinds/Classified.d.ts.map +1 -1
- package/dist/domain/src/kinds/Classified.js +7 -0
- package/dist/domain/src/kinds/Classified.js.map +1 -1
- package/dist/domain/src/kinds/Command.d.ts +28 -0
- package/dist/domain/src/kinds/Command.d.ts.map +1 -0
- package/dist/domain/src/kinds/Command.js +99 -0
- package/dist/domain/src/kinds/Command.js.map +1 -0
- package/dist/domain/src/kinds/Comment.d.ts +11 -2
- package/dist/domain/src/kinds/Comment.d.ts.map +1 -1
- package/dist/domain/src/kinds/Comment.js +47 -12
- package/dist/domain/src/kinds/Comment.js.map +1 -1
- package/dist/domain/src/kinds/CommunityList.d.ts +5 -1
- package/dist/domain/src/kinds/CommunityList.d.ts.map +1 -1
- package/dist/domain/src/kinds/CommunityList.js +7 -0
- package/dist/domain/src/kinds/CommunityList.js.map +1 -1
- package/dist/domain/src/kinds/Delete.d.ts +5 -1
- package/dist/domain/src/kinds/Delete.d.ts.map +1 -1
- package/dist/domain/src/kinds/Delete.js +7 -0
- package/dist/domain/src/kinds/Delete.js.map +1 -1
- package/dist/domain/src/kinds/DirectMessage.d.ts +5 -1
- package/dist/domain/src/kinds/DirectMessage.d.ts.map +1 -1
- package/dist/domain/src/kinds/DirectMessage.js +8 -1
- package/dist/domain/src/kinds/DirectMessage.js.map +1 -1
- package/dist/domain/src/kinds/EmojiList.d.ts +5 -1
- package/dist/domain/src/kinds/EmojiList.d.ts.map +1 -1
- package/dist/domain/src/kinds/EmojiList.js +7 -0
- package/dist/domain/src/kinds/EmojiList.js.map +1 -1
- package/dist/domain/src/kinds/Feed.d.ts +5 -1
- package/dist/domain/src/kinds/Feed.d.ts.map +1 -1
- package/dist/domain/src/kinds/Feed.js +7 -0
- package/dist/domain/src/kinds/Feed.js.map +1 -1
- package/dist/domain/src/kinds/FeedList.d.ts +5 -1
- package/dist/domain/src/kinds/FeedList.d.ts.map +1 -1
- package/dist/domain/src/kinds/FeedList.js +7 -0
- package/dist/domain/src/kinds/FeedList.js.map +1 -1
- package/dist/domain/src/kinds/FollowList.d.ts +5 -1
- package/dist/domain/src/kinds/FollowList.d.ts.map +1 -1
- package/dist/domain/src/kinds/FollowList.js +8 -1
- package/dist/domain/src/kinds/FollowList.js.map +1 -1
- package/dist/domain/src/kinds/Handler.d.ts +5 -1
- package/dist/domain/src/kinds/Handler.d.ts.map +1 -1
- package/dist/domain/src/kinds/Handler.js +7 -0
- package/dist/domain/src/kinds/Handler.js.map +1 -1
- package/dist/domain/src/kinds/HandlerRecommendation.d.ts +5 -1
- package/dist/domain/src/kinds/HandlerRecommendation.d.ts.map +1 -1
- package/dist/domain/src/kinds/HandlerRecommendation.js +7 -0
- package/dist/domain/src/kinds/HandlerRecommendation.js.map +1 -1
- package/dist/domain/src/kinds/Highlight.d.ts +5 -1
- package/dist/domain/src/kinds/Highlight.d.ts.map +1 -1
- package/dist/domain/src/kinds/Highlight.js +7 -0
- package/dist/domain/src/kinds/Highlight.js.map +1 -1
- package/dist/domain/src/kinds/MessagingRelayList.d.ts +5 -1
- package/dist/domain/src/kinds/MessagingRelayList.d.ts.map +1 -1
- package/dist/domain/src/kinds/MessagingRelayList.js +8 -1
- package/dist/domain/src/kinds/MessagingRelayList.js.map +1 -1
- package/dist/domain/src/kinds/MuteList.d.ts +5 -1
- package/dist/domain/src/kinds/MuteList.d.ts.map +1 -1
- package/dist/domain/src/kinds/MuteList.js +7 -0
- package/dist/domain/src/kinds/MuteList.js.map +1 -1
- package/dist/domain/src/kinds/Note.d.ts +6 -2
- package/dist/domain/src/kinds/Note.d.ts.map +1 -1
- package/dist/domain/src/kinds/Note.js +7 -0
- package/dist/domain/src/kinds/Note.js.map +1 -1
- package/dist/domain/src/kinds/Pin.d.ts +5 -1
- package/dist/domain/src/kinds/Pin.d.ts.map +1 -1
- package/dist/domain/src/kinds/Pin.js +7 -0
- package/dist/domain/src/kinds/Pin.js.map +1 -1
- package/dist/domain/src/kinds/PinList.d.ts +5 -1
- package/dist/domain/src/kinds/PinList.d.ts.map +1 -1
- package/dist/domain/src/kinds/PinList.js +7 -0
- package/dist/domain/src/kinds/PinList.js.map +1 -1
- package/dist/domain/src/kinds/Pinboard.d.ts +5 -1
- package/dist/domain/src/kinds/Pinboard.d.ts.map +1 -1
- package/dist/domain/src/kinds/Pinboard.js +7 -0
- package/dist/domain/src/kinds/Pinboard.js.map +1 -1
- package/dist/domain/src/kinds/Poll.d.ts +5 -1
- package/dist/domain/src/kinds/Poll.d.ts.map +1 -1
- package/dist/domain/src/kinds/Poll.js +7 -0
- package/dist/domain/src/kinds/Poll.js.map +1 -1
- package/dist/domain/src/kinds/PollResponse.d.ts +5 -1
- package/dist/domain/src/kinds/PollResponse.d.ts.map +1 -1
- package/dist/domain/src/kinds/PollResponse.js +7 -0
- package/dist/domain/src/kinds/PollResponse.js.map +1 -1
- package/dist/domain/src/kinds/Profile.d.ts +5 -1
- package/dist/domain/src/kinds/Profile.d.ts.map +1 -1
- package/dist/domain/src/kinds/Profile.js +8 -1
- package/dist/domain/src/kinds/Profile.js.map +1 -1
- package/dist/domain/src/kinds/Reaction.d.ts +5 -1
- package/dist/domain/src/kinds/Reaction.d.ts.map +1 -1
- package/dist/domain/src/kinds/Reaction.js +7 -0
- package/dist/domain/src/kinds/Reaction.js.map +1 -1
- package/dist/domain/src/kinds/RelayAddMember.d.ts +5 -1
- package/dist/domain/src/kinds/RelayAddMember.d.ts.map +1 -1
- package/dist/domain/src/kinds/RelayAddMember.js +7 -0
- package/dist/domain/src/kinds/RelayAddMember.js.map +1 -1
- package/dist/domain/src/kinds/RelayInvite.d.ts +5 -1
- package/dist/domain/src/kinds/RelayInvite.d.ts.map +1 -1
- package/dist/domain/src/kinds/RelayInvite.js +7 -0
- package/dist/domain/src/kinds/RelayInvite.js.map +1 -1
- package/dist/domain/src/kinds/RelayJoin.d.ts +5 -1
- package/dist/domain/src/kinds/RelayJoin.d.ts.map +1 -1
- package/dist/domain/src/kinds/RelayJoin.js +7 -0
- package/dist/domain/src/kinds/RelayJoin.js.map +1 -1
- package/dist/domain/src/kinds/RelayLeave.d.ts +5 -1
- package/dist/domain/src/kinds/RelayLeave.d.ts.map +1 -1
- package/dist/domain/src/kinds/RelayLeave.js +7 -0
- package/dist/domain/src/kinds/RelayLeave.js.map +1 -1
- package/dist/domain/src/kinds/RelayList.d.ts +5 -1
- package/dist/domain/src/kinds/RelayList.d.ts.map +1 -1
- package/dist/domain/src/kinds/RelayList.js +7 -0
- package/dist/domain/src/kinds/RelayList.js.map +1 -1
- package/dist/domain/src/kinds/RelayMembers.d.ts +5 -1
- package/dist/domain/src/kinds/RelayMembers.d.ts.map +1 -1
- package/dist/domain/src/kinds/RelayMembers.js +7 -0
- package/dist/domain/src/kinds/RelayMembers.js.map +1 -1
- package/dist/domain/src/kinds/RelayRemoveMember.d.ts +5 -1
- package/dist/domain/src/kinds/RelayRemoveMember.d.ts.map +1 -1
- package/dist/domain/src/kinds/RelayRemoveMember.js +7 -0
- package/dist/domain/src/kinds/RelayRemoveMember.js.map +1 -1
- package/dist/domain/src/kinds/RelayRole.d.ts +5 -1
- package/dist/domain/src/kinds/RelayRole.d.ts.map +1 -1
- package/dist/domain/src/kinds/RelayRole.js +7 -0
- package/dist/domain/src/kinds/RelayRole.js.map +1 -1
- package/dist/domain/src/kinds/RelaySet.d.ts +5 -1
- package/dist/domain/src/kinds/RelaySet.d.ts.map +1 -1
- package/dist/domain/src/kinds/RelaySet.js +7 -0
- package/dist/domain/src/kinds/RelaySet.js.map +1 -1
- package/dist/domain/src/kinds/Report.d.ts +5 -1
- package/dist/domain/src/kinds/Report.d.ts.map +1 -1
- package/dist/domain/src/kinds/Report.js +7 -0
- package/dist/domain/src/kinds/Report.js.map +1 -1
- package/dist/domain/src/kinds/RoomAddMember.d.ts +5 -1
- package/dist/domain/src/kinds/RoomAddMember.d.ts.map +1 -1
- package/dist/domain/src/kinds/RoomAddMember.js +7 -0
- package/dist/domain/src/kinds/RoomAddMember.js.map +1 -1
- package/dist/domain/src/kinds/RoomAdmins.d.ts +5 -1
- package/dist/domain/src/kinds/RoomAdmins.d.ts.map +1 -1
- package/dist/domain/src/kinds/RoomAdmins.js +7 -0
- package/dist/domain/src/kinds/RoomAdmins.js.map +1 -1
- package/dist/domain/src/kinds/RoomCreate.d.ts +5 -1
- package/dist/domain/src/kinds/RoomCreate.d.ts.map +1 -1
- package/dist/domain/src/kinds/RoomCreate.js +7 -0
- package/dist/domain/src/kinds/RoomCreate.js.map +1 -1
- package/dist/domain/src/kinds/RoomCreatePermission.d.ts +5 -1
- package/dist/domain/src/kinds/RoomCreatePermission.d.ts.map +1 -1
- package/dist/domain/src/kinds/RoomCreatePermission.js +7 -0
- package/dist/domain/src/kinds/RoomCreatePermission.js.map +1 -1
- package/dist/domain/src/kinds/RoomDelete.d.ts +5 -1
- package/dist/domain/src/kinds/RoomDelete.d.ts.map +1 -1
- package/dist/domain/src/kinds/RoomDelete.js +7 -0
- package/dist/domain/src/kinds/RoomDelete.js.map +1 -1
- package/dist/domain/src/kinds/RoomEdit.d.ts +5 -1
- package/dist/domain/src/kinds/RoomEdit.d.ts.map +1 -1
- package/dist/domain/src/kinds/RoomEdit.js +7 -0
- package/dist/domain/src/kinds/RoomEdit.js.map +1 -1
- package/dist/domain/src/kinds/RoomJoin.d.ts +5 -1
- package/dist/domain/src/kinds/RoomJoin.d.ts.map +1 -1
- package/dist/domain/src/kinds/RoomJoin.js +7 -0
- package/dist/domain/src/kinds/RoomJoin.js.map +1 -1
- package/dist/domain/src/kinds/RoomLeave.d.ts +5 -1
- package/dist/domain/src/kinds/RoomLeave.d.ts.map +1 -1
- package/dist/domain/src/kinds/RoomLeave.js +7 -0
- package/dist/domain/src/kinds/RoomLeave.js.map +1 -1
- package/dist/domain/src/kinds/RoomList.d.ts +5 -1
- package/dist/domain/src/kinds/RoomList.d.ts.map +1 -1
- package/dist/domain/src/kinds/RoomList.js +7 -0
- package/dist/domain/src/kinds/RoomList.js.map +1 -1
- package/dist/domain/src/kinds/RoomMembers.d.ts +5 -1
- package/dist/domain/src/kinds/RoomMembers.d.ts.map +1 -1
- package/dist/domain/src/kinds/RoomMembers.js +7 -0
- package/dist/domain/src/kinds/RoomMembers.js.map +1 -1
- package/dist/domain/src/kinds/RoomMeta.d.ts +5 -1
- package/dist/domain/src/kinds/RoomMeta.d.ts.map +1 -1
- package/dist/domain/src/kinds/RoomMeta.js +7 -0
- package/dist/domain/src/kinds/RoomMeta.js.map +1 -1
- package/dist/domain/src/kinds/RoomPins.d.ts +5 -1
- package/dist/domain/src/kinds/RoomPins.d.ts.map +1 -1
- package/dist/domain/src/kinds/RoomPins.js +7 -0
- package/dist/domain/src/kinds/RoomPins.js.map +1 -1
- package/dist/domain/src/kinds/RoomRemoveMember.d.ts +5 -1
- package/dist/domain/src/kinds/RoomRemoveMember.d.ts.map +1 -1
- package/dist/domain/src/kinds/RoomRemoveMember.js +7 -0
- package/dist/domain/src/kinds/RoomRemoveMember.js.map +1 -1
- package/dist/domain/src/kinds/RoomUpdatePins.d.ts +5 -1
- package/dist/domain/src/kinds/RoomUpdatePins.d.ts.map +1 -1
- package/dist/domain/src/kinds/RoomUpdatePins.js +7 -0
- package/dist/domain/src/kinds/RoomUpdatePins.js.map +1 -1
- package/dist/domain/src/kinds/SearchRelayList.d.ts +5 -1
- package/dist/domain/src/kinds/SearchRelayList.d.ts.map +1 -1
- package/dist/domain/src/kinds/SearchRelayList.js +7 -0
- package/dist/domain/src/kinds/SearchRelayList.js.map +1 -1
- package/dist/domain/src/kinds/Thread.d.ts +5 -1
- package/dist/domain/src/kinds/Thread.d.ts.map +1 -1
- package/dist/domain/src/kinds/Thread.js +7 -0
- package/dist/domain/src/kinds/Thread.js.map +1 -1
- package/dist/domain/src/kinds/TimeEvent.d.ts +5 -1
- package/dist/domain/src/kinds/TimeEvent.d.ts.map +1 -1
- package/dist/domain/src/kinds/TimeEvent.js +7 -0
- package/dist/domain/src/kinds/TimeEvent.js.map +1 -1
- package/dist/domain/src/kinds/TopicList.d.ts +5 -1
- package/dist/domain/src/kinds/TopicList.d.ts.map +1 -1
- package/dist/domain/src/kinds/TopicList.js +7 -0
- package/dist/domain/src/kinds/TopicList.js.map +1 -1
- package/dist/domain/src/kinds/ZapGoal.d.ts +5 -1
- package/dist/domain/src/kinds/ZapGoal.d.ts.map +1 -1
- package/dist/domain/src/kinds/ZapGoal.js +7 -0
- package/dist/domain/src/kinds/ZapGoal.js.map +1 -1
- package/dist/domain/src/kinds/ZapReceipt.d.ts +5 -1
- package/dist/domain/src/kinds/ZapReceipt.d.ts.map +1 -1
- package/dist/domain/src/kinds/ZapReceipt.js +7 -0
- package/dist/domain/src/kinds/ZapReceipt.js.map +1 -1
- package/dist/domain/src/kinds/ZapRequest.d.ts +5 -1
- package/dist/domain/src/kinds/ZapRequest.d.ts.map +1 -1
- package/dist/domain/src/kinds/ZapRequest.js +7 -0
- package/dist/domain/src/kinds/ZapRequest.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/util/src/Command.d.ts +53 -0
- package/dist/util/src/Command.d.ts.map +1 -0
- package/dist/util/src/Command.js +226 -0
- package/dist/util/src/Command.js.map +1 -0
- package/dist/util/src/Kinds.d.ts +1 -0
- package/dist/util/src/Kinds.d.ts.map +1 -1
- package/dist/util/src/Kinds.js +1 -0
- package/dist/util/src/Kinds.js.map +1 -1
- package/dist/util/src/index.d.ts +1 -0
- package/dist/util/src/index.d.ts.map +1 -1
- package/dist/util/src/index.js +1 -0
- package/dist/util/src/index.js.map +1 -1
- package/package.json +11 -11
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { remove, complement, first, partition, randomId, removeUndefined, spec } from "@welshman/lib";
|
|
2
|
-
import { isParameterizedReplaceableKind, normalizeRelayUrl, hexTags, tagValues, outbox, userOutbox, inboxes,
|
|
2
|
+
import { Address, isParameterizedReplaceableKind, normalizeRelayUrl, hexTags, tagValues, outbox, userOutbox, inboxes, relay, } from "@welshman/util";
|
|
3
3
|
// A cursor over a tag list that splits out tags by key as they're consumed,
|
|
4
4
|
// leaving the rest in `tags`. Writers use it to peel behavior/kind-specific tags
|
|
5
5
|
// off an event being edited.
|
|
@@ -22,9 +22,11 @@ export class EventWriter {
|
|
|
22
22
|
roomTag;
|
|
23
23
|
protectTag;
|
|
24
24
|
expirationTag;
|
|
25
|
+
contentWarningTag;
|
|
26
|
+
clientTag;
|
|
25
27
|
identifierTag;
|
|
26
28
|
extraTags = [];
|
|
27
|
-
|
|
29
|
+
forcedRoutes;
|
|
28
30
|
pendingResolves = [];
|
|
29
31
|
// Kinds that must publish to explicit relays (e.g. NIP-29 room events) set this.
|
|
30
32
|
// Annotated `boolean` (not the inferred literal `false`) so subclasses can override.
|
|
@@ -39,6 +41,8 @@ export class EventWriter {
|
|
|
39
41
|
this.roomTag = first(parser.consume("h"));
|
|
40
42
|
this.protectTag = first(parser.consume("-"));
|
|
41
43
|
this.expirationTag = first(parser.consume("expiration"));
|
|
44
|
+
this.contentWarningTag = first(parser.consume("content-warning"));
|
|
45
|
+
this.clientTag = first(parser.consume("client"));
|
|
42
46
|
this.identifierTag = first(parser.consume("d"));
|
|
43
47
|
this.extraTags = parser.tags;
|
|
44
48
|
}
|
|
@@ -48,21 +52,26 @@ export class EventWriter {
|
|
|
48
52
|
return this;
|
|
49
53
|
}
|
|
50
54
|
setRoom(url, room) {
|
|
51
|
-
this.
|
|
55
|
+
this.forcedRoutes = [relay(normalizeRelayUrl(url))];
|
|
52
56
|
this.roomTag = ["h", room];
|
|
53
57
|
return this;
|
|
54
58
|
}
|
|
55
59
|
clearRoom() {
|
|
56
|
-
this.
|
|
60
|
+
this.forcedRoutes = undefined;
|
|
57
61
|
this.roomTag = undefined;
|
|
58
62
|
return this;
|
|
59
63
|
}
|
|
60
|
-
|
|
61
|
-
|
|
64
|
+
/**
|
|
65
|
+
* Replaces the rendered routes. These are routes rather than urls, so
|
|
66
|
+
* `forceRoutes(userInbox())` pins an event to the user's read relays without
|
|
67
|
+
* resolving them first.
|
|
68
|
+
*/
|
|
69
|
+
forceRoutes(...routes) {
|
|
70
|
+
this.forcedRoutes = routes;
|
|
62
71
|
return this;
|
|
63
72
|
}
|
|
64
|
-
|
|
65
|
-
this.
|
|
73
|
+
clearForcedRoutes() {
|
|
74
|
+
this.forcedRoutes = undefined;
|
|
66
75
|
return this;
|
|
67
76
|
}
|
|
68
77
|
setProtected(protect) {
|
|
@@ -77,6 +86,34 @@ export class EventWriter {
|
|
|
77
86
|
this.expirationTag = undefined;
|
|
78
87
|
return this;
|
|
79
88
|
}
|
|
89
|
+
// The reason is optional per NIP-36 — a bare tag flags the content without saying why.
|
|
90
|
+
setContentWarning(reason) {
|
|
91
|
+
this.contentWarningTag = removeUndefined(["content-warning", reason]);
|
|
92
|
+
return this;
|
|
93
|
+
}
|
|
94
|
+
clearContentWarning() {
|
|
95
|
+
this.contentWarningTag = undefined;
|
|
96
|
+
return this;
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Attributes the event to the NIP-89 client that produced it. `address` is an
|
|
100
|
+
* optional `31990:pubkey:d-tag` pointer to the client's handler information
|
|
101
|
+
* event; when given, its author's outbox fills in the tag's relay hint slot.
|
|
102
|
+
*/
|
|
103
|
+
setClient(name, address) {
|
|
104
|
+
const tag = removeUndefined(["client", name, address]);
|
|
105
|
+
this.clientTag = tag;
|
|
106
|
+
if (address && Address.isAddress(address)) {
|
|
107
|
+
this.hint(outbox(Address.from(address).pubkey)).then(url => {
|
|
108
|
+
tag[3] = url;
|
|
109
|
+
});
|
|
110
|
+
}
|
|
111
|
+
return this;
|
|
112
|
+
}
|
|
113
|
+
clearClient() {
|
|
114
|
+
this.clientTag = undefined;
|
|
115
|
+
return this;
|
|
116
|
+
}
|
|
80
117
|
setIdentifier(identifier = randomId()) {
|
|
81
118
|
this.identifierTag = ["d", identifier];
|
|
82
119
|
return this;
|
|
@@ -137,11 +174,11 @@ export class EventWriter {
|
|
|
137
174
|
if (isParameterizedReplaceableKind(this.kind) && !this.identifierTag) {
|
|
138
175
|
throw new Error(`A d tag is required for kind ${this.kind}`);
|
|
139
176
|
}
|
|
140
|
-
if (this.roomTag && !this.
|
|
177
|
+
if (this.roomTag && !this.forcedRoutes?.length) {
|
|
141
178
|
throw new Error("A room event requires a relay url (set the room via setRoom)");
|
|
142
179
|
}
|
|
143
|
-
if (this.requiresRelays && !this.
|
|
144
|
-
throw new Error(`A kind ${this.kind} event must publish to explicit relays (via setRoom or
|
|
180
|
+
if (this.requiresRelays && !this.forcedRoutes?.length) {
|
|
181
|
+
throw new Error(`A kind ${this.kind} event must publish to explicit relays (via setRoom or forceRoutes)`);
|
|
145
182
|
}
|
|
146
183
|
}
|
|
147
184
|
/**
|
|
@@ -166,7 +203,14 @@ export class EventWriter {
|
|
|
166
203
|
* Returns a list of tags that may be attached to any kind.
|
|
167
204
|
*/
|
|
168
205
|
renderBehaviorTags() {
|
|
169
|
-
return removeUndefined([
|
|
206
|
+
return removeUndefined([
|
|
207
|
+
this.roomTag,
|
|
208
|
+
this.protectTag,
|
|
209
|
+
this.expirationTag,
|
|
210
|
+
this.contentWarningTag,
|
|
211
|
+
this.clientTag,
|
|
212
|
+
this.identifierTag,
|
|
213
|
+
]);
|
|
170
214
|
}
|
|
171
215
|
/**
|
|
172
216
|
* Returns a list of tags related to the kind.
|
|
@@ -209,11 +253,11 @@ export class EventWriter {
|
|
|
209
253
|
return [userOutbox(), ...inboxes(tagValues(hexTags("p"), await this.renderTags()), 0.5)];
|
|
210
254
|
}
|
|
211
255
|
/**
|
|
212
|
-
* Returns a router scenario for this event. Publishes to forced
|
|
213
|
-
* NIP-29 room) when set, otherwise to the rendered routes.
|
|
256
|
+
* Returns a router scenario for this event. Publishes to the forced routes (e.g. a
|
|
257
|
+
* NIP-29 room's relay) when set, otherwise to the rendered routes.
|
|
214
258
|
*/
|
|
215
259
|
async scenario() {
|
|
216
|
-
const routes = this.
|
|
260
|
+
const routes = this.forcedRoutes?.length ? this.forcedRoutes : await this.renderRoutes();
|
|
217
261
|
return this.context.resolver.scenario(routes);
|
|
218
262
|
}
|
|
219
263
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EventWriter.js","sourceRoot":"","sources":["../../../../src/core/EventWriter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,eAAe,EAAE,IAAI,EAAC,MAAM,eAAe,CAAA;AAEnG,OAAO,EACL,8BAA8B,EAC9B,iBAAiB,EACjB,OAAO,EACP,SAAS,EACT,MAAM,EACN,UAAU,EACV,OAAO,EACP,
|
|
1
|
+
{"version":3,"file":"EventWriter.js","sourceRoot":"","sources":["../../../../src/core/EventWriter.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,38 +2,41 @@ import type { TrustedEvent, Resolver } from "@welshman/util";
|
|
|
2
2
|
import type { ISigner } from "@welshman/signer";
|
|
3
3
|
import type { BaseEventReader } from "./EventReader.js";
|
|
4
4
|
import type { EventWriter } from "./EventWriter.js";
|
|
5
|
+
import type { EventQuery } from "./EventQuery.js";
|
|
5
6
|
export type KindContext = {
|
|
6
7
|
resolver: Resolver;
|
|
7
8
|
signer?: ISigner;
|
|
8
9
|
};
|
|
9
|
-
export type KindConfig<Reader extends BaseEventReader, Writer extends EventWriter<Reader
|
|
10
|
+
export type KindConfig<Reader extends BaseEventReader, Writer extends EventWriter<Reader>, Query extends EventQuery> = {
|
|
10
11
|
kind: number;
|
|
11
12
|
reader: new (kind: number, context: KindContext, event: TrustedEvent) => Reader;
|
|
12
13
|
writer: new (kind: number, context: KindContext, reader?: Reader) => Writer;
|
|
14
|
+
query: new (kind: number, context: KindContext) => Query;
|
|
13
15
|
};
|
|
14
16
|
/**
|
|
15
|
-
* Bundles a kind's number, reader, and
|
|
17
|
+
* Bundles a kind's number, reader, writer, and query classes.
|
|
16
18
|
*
|
|
17
19
|
* Usage: `export const Profile = new KindFactory({kind: PROFILE, reader:
|
|
18
|
-
* ProfileReader, writer: ProfileWriter})`, then `Profile.kind`
|
|
19
|
-
* `Profile.configure(context)` binds the app's dependencies once.
|
|
20
|
+
* ProfileReader, writer: ProfileWriter, query: ProfileQuery})`, then `Profile.kind`
|
|
21
|
+
* reads the number and `Profile.configure(context)` binds the app's dependencies once.
|
|
20
22
|
*/
|
|
21
|
-
export declare class KindFactory<Reader extends BaseEventReader, Writer extends EventWriter<Reader
|
|
22
|
-
readonly config: KindConfig<Reader, Writer>;
|
|
23
|
-
constructor(config: KindConfig<Reader, Writer>);
|
|
23
|
+
export declare class KindFactory<Reader extends BaseEventReader, Writer extends EventWriter<Reader>, Query extends EventQuery> {
|
|
24
|
+
readonly config: KindConfig<Reader, Writer, Query>;
|
|
25
|
+
constructor(config: KindConfig<Reader, Writer, Query>);
|
|
24
26
|
get kind(): number;
|
|
25
|
-
configure(context: KindContext): ConfiguredKind<Reader, Writer>;
|
|
27
|
+
configure(context: KindContext): ConfiguredKind<Reader, Writer, Query>;
|
|
26
28
|
}
|
|
27
29
|
/**
|
|
28
|
-
* A kind bound to a `KindContext`. Produces readers and
|
|
29
|
-
* configured dependencies.
|
|
30
|
+
* A kind bound to a `KindContext`. Produces readers, writers, and queries which
|
|
31
|
+
* share the configured dependencies.
|
|
30
32
|
*/
|
|
31
|
-
export declare class ConfiguredKind<Reader extends BaseEventReader, Writer extends EventWriter<Reader
|
|
32
|
-
readonly config: KindConfig<Reader, Writer>;
|
|
33
|
+
export declare class ConfiguredKind<Reader extends BaseEventReader, Writer extends EventWriter<Reader>, Query extends EventQuery> {
|
|
34
|
+
readonly config: KindConfig<Reader, Writer, Query>;
|
|
33
35
|
readonly context: KindContext;
|
|
34
|
-
constructor(config: KindConfig<Reader, Writer>, context: KindContext);
|
|
36
|
+
constructor(config: KindConfig<Reader, Writer, Query>, context: KindContext);
|
|
35
37
|
get kind(): number;
|
|
36
38
|
reader: (event: TrustedEvent) => Reader;
|
|
37
39
|
writer: (reader?: Reader) => Writer;
|
|
40
|
+
query: () => Query;
|
|
38
41
|
}
|
|
39
42
|
//# sourceMappingURL=Kind.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Kind.d.ts","sourceRoot":"","sources":["../../../../src/core/Kind.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,YAAY,EAAE,QAAQ,EAAC,MAAM,gBAAgB,CAAA;AAC1D,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,kBAAkB,CAAA;AAC7C,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,kBAAkB,CAAA;AACrD,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"Kind.d.ts","sourceRoot":"","sources":["../../../../src/core/Kind.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,YAAY,EAAE,QAAQ,EAAC,MAAM,gBAAgB,CAAA;AAC1D,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,kBAAkB,CAAA;AAC7C,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,kBAAkB,CAAA;AACrD,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,kBAAkB,CAAA;AACjD,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAA;AAE/C,MAAM,MAAM,WAAW,GAAG;IACxB,QAAQ,EAAE,QAAQ,CAAA;IAClB,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,UAAU,CACpB,MAAM,SAAS,eAAe,EAC9B,MAAM,SAAS,WAAW,CAAC,MAAM,CAAC,EAClC,KAAK,SAAS,UAAU,IACtB;IACF,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,KAAK,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,YAAY,KAAK,MAAM,CAAA;IAC/E,MAAM,EAAE,KAAK,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,MAAM,CAAA;IAC3E,KAAK,EAAE,KAAK,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,KAAK,KAAK,CAAA;CACzD,CAAA;AAED;;;;;;GAMG;AACH,qBAAa,WAAW,CACtB,MAAM,SAAS,eAAe,EAC9B,MAAM,SAAS,WAAW,CAAC,MAAM,CAAC,EAClC,KAAK,SAAS,UAAU;IAEZ,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC;gBAAzC,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC;IAE9D,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,SAAS,CAAC,OAAO,EAAE,WAAW,GAAG,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC;CAGvE;AAED;;;GAGG;AACH,qBAAa,cAAc,CACzB,MAAM,SAAS,eAAe,EAC9B,MAAM,SAAS,WAAW,CAAC,MAAM,CAAC,EAClC,KAAK,SAAS,UAAU;IAGtB,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC;IAClD,QAAQ,CAAC,OAAO,EAAE,WAAW;gBADpB,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EACzC,OAAO,EAAE,WAAW;IAG/B,IAAI,IAAI,IAAI,MAAM,CAEjB;IAKD,MAAM,GAAI,OAAO,YAAY,KAAG,MAAM,CACyB;IAG/D,MAAM,GAAI,SAAS,MAAM,KAAG,MAAM,CAC8B;IAIhE,KAAK,QAAO,KAAK,CAAyD;CAC3E"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Bundles a kind's number, reader, and
|
|
2
|
+
* Bundles a kind's number, reader, writer, and query classes.
|
|
3
3
|
*
|
|
4
4
|
* Usage: `export const Profile = new KindFactory({kind: PROFILE, reader:
|
|
5
|
-
* ProfileReader, writer: ProfileWriter})`, then `Profile.kind`
|
|
6
|
-
* `Profile.configure(context)` binds the app's dependencies once.
|
|
5
|
+
* ProfileReader, writer: ProfileWriter, query: ProfileQuery})`, then `Profile.kind`
|
|
6
|
+
* reads the number and `Profile.configure(context)` binds the app's dependencies once.
|
|
7
7
|
*/
|
|
8
8
|
export class KindFactory {
|
|
9
9
|
config;
|
|
@@ -18,8 +18,8 @@ export class KindFactory {
|
|
|
18
18
|
}
|
|
19
19
|
}
|
|
20
20
|
/**
|
|
21
|
-
* A kind bound to a `KindContext`. Produces readers and
|
|
22
|
-
* configured dependencies.
|
|
21
|
+
* A kind bound to a `KindContext`. Produces readers, writers, and queries which
|
|
22
|
+
* share the configured dependencies.
|
|
23
23
|
*/
|
|
24
24
|
export class ConfiguredKind {
|
|
25
25
|
config;
|
|
@@ -37,5 +37,8 @@ export class ConfiguredKind {
|
|
|
37
37
|
reader = (event) => new this.config.reader(this.config.kind, this.context, event);
|
|
38
38
|
// Build a writer. Pass a reader to edit its event, or omit to draft a new one.
|
|
39
39
|
writer = (reader) => new this.config.writer(this.config.kind, this.context, reader);
|
|
40
|
+
// Build a query. Its setters build up a filter; `render()` returns it along with
|
|
41
|
+
// the relays to request it from.
|
|
42
|
+
query = () => new this.config.query(this.config.kind, this.context);
|
|
40
43
|
}
|
|
41
44
|
//# sourceMappingURL=Kind.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Kind.js","sourceRoot":"","sources":["../../../../src/core/Kind.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Kind.js","sourceRoot":"","sources":["../../../../src/core/Kind.ts"],"names":[],"mappings":"AAsBA;;;;;;GAMG;AACH,MAAM,OAAO,WAAW;IAKD;IAArB,YAAqB,MAAyC;QAAzC,WAAM,GAAN,MAAM,CAAmC;IAAG,CAAC;IAElE,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAA;IACzB,CAAC;IAED,SAAS,CAAC,OAAoB;QAC5B,OAAO,IAAI,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACjD,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,OAAO,cAAc;IAMd;IACA;IAFX,YACW,MAAyC,EACzC,OAAoB;QADpB,WAAM,GAAN,MAAM,CAAmC;QACzC,YAAO,GAAP,OAAO,CAAa;IAC5B,CAAC;IAEJ,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAA;IACzB,CAAC;IAED,+EAA+E;IAC/E,6EAA6E;IAC7E,qEAAqE;IACrE,MAAM,GAAG,CAAC,KAAmB,EAAU,EAAE,CACvC,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;IAE/D,+EAA+E;IAC/E,MAAM,GAAG,CAAC,MAAe,EAAU,EAAE,CACnC,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;IAEhE,iFAAiF;IACjF,iCAAiC;IACjC,KAAK,GAAG,GAAU,EAAE,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;CAC3E"}
|
|
@@ -1,7 +1,12 @@
|
|
|
1
1
|
export * from "./core/EventReader.js";
|
|
2
2
|
export * from "./core/EventWriter.js";
|
|
3
|
+
export * from "./core/EventQuery.js";
|
|
3
4
|
export * from "./core/Kind.js";
|
|
5
|
+
export * from "./behaviors/Client.js";
|
|
6
|
+
export * from "./behaviors/ContentWarning.js";
|
|
4
7
|
export * from "./behaviors/Emoji.js";
|
|
8
|
+
export * from "./behaviors/Expiration.js";
|
|
9
|
+
export * from "./behaviors/Protected.js";
|
|
5
10
|
export * from "./behaviors/ZapSplits.js";
|
|
6
11
|
export * from "./other/Relay.js";
|
|
7
12
|
export * from "./other/Zapper.js";
|
|
@@ -11,6 +16,7 @@ export * from "./kinds/BlockedRelayList.js";
|
|
|
11
16
|
export * from "./kinds/BlossomServerList.js";
|
|
12
17
|
export * from "./kinds/BookmarkList.js";
|
|
13
18
|
export * from "./kinds/Classified.js";
|
|
19
|
+
export * from "./kinds/Command.js";
|
|
14
20
|
export * from "./kinds/Comment.js";
|
|
15
21
|
export * from "./kinds/CommunityList.js";
|
|
16
22
|
export * from "./kinds/Delete.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAA;AACrC,cAAc,uBAAuB,CAAA;AACrC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,sBAAsB,CAAA;AACpC,cAAc,0BAA0B,CAAA;AACxC,cAAc,kBAAkB,CAAA;AAChC,cAAc,mBAAmB,CAAA;AACjC,cAAc,oBAAoB,CAAA;AAClC,cAAc,oBAAoB,CAAA;AAClC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,8BAA8B,CAAA;AAC5C,cAAc,yBAAyB,CAAA;AACvC,cAAc,uBAAuB,CAAA;AACrC,cAAc,oBAAoB,CAAA;AAClC,cAAc,0BAA0B,CAAA;AACxC,cAAc,mBAAmB,CAAA;AACjC,cAAc,0BAA0B,CAAA;AACxC,cAAc,sBAAsB,CAAA;AACpC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,qBAAqB,CAAA;AACnC,cAAc,uBAAuB,CAAA;AACrC,cAAc,oBAAoB,CAAA;AAClC,cAAc,kCAAkC,CAAA;AAChD,cAAc,sBAAsB,CAAA;AACpC,cAAc,sBAAsB,CAAA;AACpC,cAAc,sBAAsB,CAAA;AACpC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,qBAAqB,CAAA;AACnC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,qBAAqB,CAAA;AACnC,cAAc,oBAAoB,CAAA;AAClC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,yBAAyB,CAAA;AACvC,cAAc,oBAAoB,CAAA;AAClC,cAAc,qBAAqB,CAAA;AACnC,cAAc,2BAA2B,CAAA;AACzC,cAAc,wBAAwB,CAAA;AACtC,cAAc,sBAAsB,CAAA;AACpC,cAAc,uBAAuB,CAAA;AACrC,cAAc,sBAAsB,CAAA;AACpC,cAAc,yBAAyB,CAAA;AACvC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,sBAAsB,CAAA;AACpC,cAAc,qBAAqB,CAAA;AACnC,cAAc,mBAAmB,CAAA;AACjC,cAAc,0BAA0B,CAAA;AACxC,cAAc,uBAAuB,CAAA;AACrC,cAAc,uBAAuB,CAAA;AACrC,cAAc,iCAAiC,CAAA;AAC/C,cAAc,uBAAuB,CAAA;AACrC,cAAc,qBAAqB,CAAA;AACnC,cAAc,qBAAqB,CAAA;AACnC,cAAc,sBAAsB,CAAA;AACpC,cAAc,qBAAqB,CAAA;AACnC,cAAc,wBAAwB,CAAA;AACtC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,qBAAqB,CAAA;AACnC,cAAc,qBAAqB,CAAA;AACnC,cAAc,2BAA2B,CAAA;AACzC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,mBAAmB,CAAA;AACjC,cAAc,sBAAsB,CAAA;AACpC,cAAc,sBAAsB,CAAA;AACpC,cAAc,oBAAoB,CAAA;AAClC,cAAc,uBAAuB,CAAA;AACrC,cAAc,uBAAuB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAA;AACrC,cAAc,uBAAuB,CAAA;AACrC,cAAc,sBAAsB,CAAA;AACpC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,uBAAuB,CAAA;AACrC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,sBAAsB,CAAA;AACpC,cAAc,2BAA2B,CAAA;AACzC,cAAc,0BAA0B,CAAA;AACxC,cAAc,0BAA0B,CAAA;AACxC,cAAc,kBAAkB,CAAA;AAChC,cAAc,mBAAmB,CAAA;AACjC,cAAc,oBAAoB,CAAA;AAClC,cAAc,oBAAoB,CAAA;AAClC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,8BAA8B,CAAA;AAC5C,cAAc,yBAAyB,CAAA;AACvC,cAAc,uBAAuB,CAAA;AACrC,cAAc,oBAAoB,CAAA;AAClC,cAAc,oBAAoB,CAAA;AAClC,cAAc,0BAA0B,CAAA;AACxC,cAAc,mBAAmB,CAAA;AACjC,cAAc,0BAA0B,CAAA;AACxC,cAAc,sBAAsB,CAAA;AACpC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,qBAAqB,CAAA;AACnC,cAAc,uBAAuB,CAAA;AACrC,cAAc,oBAAoB,CAAA;AAClC,cAAc,kCAAkC,CAAA;AAChD,cAAc,sBAAsB,CAAA;AACpC,cAAc,sBAAsB,CAAA;AACpC,cAAc,sBAAsB,CAAA;AACpC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,qBAAqB,CAAA;AACnC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,qBAAqB,CAAA;AACnC,cAAc,oBAAoB,CAAA;AAClC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,yBAAyB,CAAA;AACvC,cAAc,oBAAoB,CAAA;AAClC,cAAc,qBAAqB,CAAA;AACnC,cAAc,2BAA2B,CAAA;AACzC,cAAc,wBAAwB,CAAA;AACtC,cAAc,sBAAsB,CAAA;AACpC,cAAc,uBAAuB,CAAA;AACrC,cAAc,sBAAsB,CAAA;AACpC,cAAc,yBAAyB,CAAA;AACvC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,sBAAsB,CAAA;AACpC,cAAc,qBAAqB,CAAA;AACnC,cAAc,mBAAmB,CAAA;AACjC,cAAc,0BAA0B,CAAA;AACxC,cAAc,uBAAuB,CAAA;AACrC,cAAc,uBAAuB,CAAA;AACrC,cAAc,iCAAiC,CAAA;AAC/C,cAAc,uBAAuB,CAAA;AACrC,cAAc,qBAAqB,CAAA;AACnC,cAAc,qBAAqB,CAAA;AACnC,cAAc,sBAAsB,CAAA;AACpC,cAAc,qBAAqB,CAAA;AACnC,cAAc,wBAAwB,CAAA;AACtC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,qBAAqB,CAAA;AACnC,cAAc,qBAAqB,CAAA;AACnC,cAAc,2BAA2B,CAAA;AACzC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,mBAAmB,CAAA;AACjC,cAAc,sBAAsB,CAAA;AACpC,cAAc,sBAAsB,CAAA;AACpC,cAAc,oBAAoB,CAAA;AAClC,cAAc,uBAAuB,CAAA;AACrC,cAAc,uBAAuB,CAAA"}
|
package/dist/domain/src/index.js
CHANGED
|
@@ -1,7 +1,12 @@
|
|
|
1
1
|
export * from "./core/EventReader.js";
|
|
2
2
|
export * from "./core/EventWriter.js";
|
|
3
|
+
export * from "./core/EventQuery.js";
|
|
3
4
|
export * from "./core/Kind.js";
|
|
5
|
+
export * from "./behaviors/Client.js";
|
|
6
|
+
export * from "./behaviors/ContentWarning.js";
|
|
4
7
|
export * from "./behaviors/Emoji.js";
|
|
8
|
+
export * from "./behaviors/Expiration.js";
|
|
9
|
+
export * from "./behaviors/Protected.js";
|
|
5
10
|
export * from "./behaviors/ZapSplits.js";
|
|
6
11
|
export * from "./other/Relay.js";
|
|
7
12
|
export * from "./other/Zapper.js";
|
|
@@ -11,6 +16,7 @@ export * from "./kinds/BlockedRelayList.js";
|
|
|
11
16
|
export * from "./kinds/BlossomServerList.js";
|
|
12
17
|
export * from "./kinds/BookmarkList.js";
|
|
13
18
|
export * from "./kinds/Classified.js";
|
|
19
|
+
export * from "./kinds/Command.js";
|
|
14
20
|
export * from "./kinds/Comment.js";
|
|
15
21
|
export * from "./kinds/CommunityList.js";
|
|
16
22
|
export * from "./kinds/Delete.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAA;AACrC,cAAc,uBAAuB,CAAA;AACrC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,sBAAsB,CAAA;AACpC,cAAc,0BAA0B,CAAA;AACxC,cAAc,kBAAkB,CAAA;AAChC,cAAc,mBAAmB,CAAA;AACjC,cAAc,oBAAoB,CAAA;AAClC,cAAc,oBAAoB,CAAA;AAClC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,8BAA8B,CAAA;AAC5C,cAAc,yBAAyB,CAAA;AACvC,cAAc,uBAAuB,CAAA;AACrC,cAAc,oBAAoB,CAAA;AAClC,cAAc,0BAA0B,CAAA;AACxC,cAAc,mBAAmB,CAAA;AACjC,cAAc,0BAA0B,CAAA;AACxC,cAAc,sBAAsB,CAAA;AACpC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,qBAAqB,CAAA;AACnC,cAAc,uBAAuB,CAAA;AACrC,cAAc,oBAAoB,CAAA;AAClC,cAAc,kCAAkC,CAAA;AAChD,cAAc,sBAAsB,CAAA;AACpC,cAAc,sBAAsB,CAAA;AACpC,cAAc,sBAAsB,CAAA;AACpC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,qBAAqB,CAAA;AACnC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,qBAAqB,CAAA;AACnC,cAAc,oBAAoB,CAAA;AAClC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,yBAAyB,CAAA;AACvC,cAAc,oBAAoB,CAAA;AAClC,cAAc,qBAAqB,CAAA;AACnC,cAAc,2BAA2B,CAAA;AACzC,cAAc,wBAAwB,CAAA;AACtC,cAAc,sBAAsB,CAAA;AACpC,cAAc,uBAAuB,CAAA;AACrC,cAAc,sBAAsB,CAAA;AACpC,cAAc,yBAAyB,CAAA;AACvC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,sBAAsB,CAAA;AACpC,cAAc,qBAAqB,CAAA;AACnC,cAAc,mBAAmB,CAAA;AACjC,cAAc,0BAA0B,CAAA;AACxC,cAAc,uBAAuB,CAAA;AACrC,cAAc,uBAAuB,CAAA;AACrC,cAAc,iCAAiC,CAAA;AAC/C,cAAc,uBAAuB,CAAA;AACrC,cAAc,qBAAqB,CAAA;AACnC,cAAc,qBAAqB,CAAA;AACnC,cAAc,sBAAsB,CAAA;AACpC,cAAc,qBAAqB,CAAA;AACnC,cAAc,wBAAwB,CAAA;AACtC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,qBAAqB,CAAA;AACnC,cAAc,qBAAqB,CAAA;AACnC,cAAc,2BAA2B,CAAA;AACzC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,mBAAmB,CAAA;AACjC,cAAc,sBAAsB,CAAA;AACpC,cAAc,sBAAsB,CAAA;AACpC,cAAc,oBAAoB,CAAA;AAClC,cAAc,uBAAuB,CAAA;AACrC,cAAc,uBAAuB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAA;AACrC,cAAc,uBAAuB,CAAA;AACrC,cAAc,sBAAsB,CAAA;AACpC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,uBAAuB,CAAA;AACrC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,sBAAsB,CAAA;AACpC,cAAc,2BAA2B,CAAA;AACzC,cAAc,0BAA0B,CAAA;AACxC,cAAc,0BAA0B,CAAA;AACxC,cAAc,kBAAkB,CAAA;AAChC,cAAc,mBAAmB,CAAA;AACjC,cAAc,oBAAoB,CAAA;AAClC,cAAc,oBAAoB,CAAA;AAClC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,8BAA8B,CAAA;AAC5C,cAAc,yBAAyB,CAAA;AACvC,cAAc,uBAAuB,CAAA;AACrC,cAAc,oBAAoB,CAAA;AAClC,cAAc,oBAAoB,CAAA;AAClC,cAAc,0BAA0B,CAAA;AACxC,cAAc,mBAAmB,CAAA;AACjC,cAAc,0BAA0B,CAAA;AACxC,cAAc,sBAAsB,CAAA;AACpC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,qBAAqB,CAAA;AACnC,cAAc,uBAAuB,CAAA;AACrC,cAAc,oBAAoB,CAAA;AAClC,cAAc,kCAAkC,CAAA;AAChD,cAAc,sBAAsB,CAAA;AACpC,cAAc,sBAAsB,CAAA;AACpC,cAAc,sBAAsB,CAAA;AACpC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,qBAAqB,CAAA;AACnC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,qBAAqB,CAAA;AACnC,cAAc,oBAAoB,CAAA;AAClC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,yBAAyB,CAAA;AACvC,cAAc,oBAAoB,CAAA;AAClC,cAAc,qBAAqB,CAAA;AACnC,cAAc,2BAA2B,CAAA;AACzC,cAAc,wBAAwB,CAAA;AACtC,cAAc,sBAAsB,CAAA;AACpC,cAAc,uBAAuB,CAAA;AACrC,cAAc,sBAAsB,CAAA;AACpC,cAAc,yBAAyB,CAAA;AACvC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,sBAAsB,CAAA;AACpC,cAAc,qBAAqB,CAAA;AACnC,cAAc,mBAAmB,CAAA;AACjC,cAAc,0BAA0B,CAAA;AACxC,cAAc,uBAAuB,CAAA;AACrC,cAAc,uBAAuB,CAAA;AACrC,cAAc,iCAAiC,CAAA;AAC/C,cAAc,uBAAuB,CAAA;AACrC,cAAc,qBAAqB,CAAA;AACnC,cAAc,qBAAqB,CAAA;AACnC,cAAc,sBAAsB,CAAA;AACpC,cAAc,qBAAqB,CAAA;AACnC,cAAc,wBAAwB,CAAA;AACtC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,qBAAqB,CAAA;AACnC,cAAc,qBAAqB,CAAA;AACnC,cAAc,2BAA2B,CAAA;AACzC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,mBAAmB,CAAA;AACjC,cAAc,sBAAsB,CAAA;AACpC,cAAc,sBAAsB,CAAA;AACpC,cAAc,oBAAoB,CAAA;AAClC,cAAc,uBAAuB,CAAA;AACrC,cAAc,uBAAuB,CAAA"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { AsyncEventReader } from "../core/EventReader.js";
|
|
2
2
|
import { EventWriter } from "../core/EventWriter.js";
|
|
3
|
+
import { EventQuery } from "../core/EventQuery.js";
|
|
3
4
|
import { KindFactory } from "../core/Kind.js";
|
|
4
5
|
import type { KindContext } from "../core/Kind.js";
|
|
5
6
|
export declare class AppDataReader extends AsyncEventReader {
|
|
@@ -18,5 +19,8 @@ export declare class AppDataWriter extends EventWriter<AppDataReader> {
|
|
|
18
19
|
validate(): void;
|
|
19
20
|
renderContent(): Promise<string>;
|
|
20
21
|
}
|
|
21
|
-
export declare
|
|
22
|
+
export declare class AppDataQuery extends EventQuery {
|
|
23
|
+
protected renderRoutes(): import("@welshman/util").RelaySelection[];
|
|
24
|
+
}
|
|
25
|
+
export declare const AppData: KindFactory<AppDataReader, AppDataWriter, AppDataQuery>;
|
|
22
26
|
//# sourceMappingURL=AppData.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AppData.d.ts","sourceRoot":"","sources":["../../../../src/kinds/AppData.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,gBAAgB,EAAC,MAAM,wBAAwB,CAAA;AACvD,OAAO,EAAC,WAAW,EAAC,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAC,WAAW,EAAC,MAAM,iBAAiB,CAAA;AAC3C,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,iBAAiB,CAAA;AAIhD,qBAAa,aAAc,SAAQ,gBAAgB;IACjD,SAAS,UAAQ;IACjB,SAAS,UAAQ;IAEjB,SAAS,CAAC,IAAI,EAAE,OAAO,CAAY;IAE7B,KAAK;IAgCX,MAAM,CAAC,CAAC,KACc,CAAC,GAAG,SAAS;CAEpC;AAED,qBAAa,aAAc,SAAQ,WAAW,CAAC,aAAa,CAAC;IAC3D,MAAM,EAAE,OAAO,CAAY;IAC3B,SAAS,UAAQ;gBAEL,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,aAAa;IAOtE,SAAS,CAAC,MAAM,EAAE,OAAO;IAMzB,YAAY,CAAC,SAAS,EAAE,OAAO;IAM/B,QAAQ;IAQF,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC;CAoBvC;AAED,eAAO,MAAM,OAAO,
|
|
1
|
+
{"version":3,"file":"AppData.d.ts","sourceRoot":"","sources":["../../../../src/kinds/AppData.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,gBAAgB,EAAC,MAAM,wBAAwB,CAAA;AACvD,OAAO,EAAC,WAAW,EAAC,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAC,UAAU,EAAC,MAAM,uBAAuB,CAAA;AAChD,OAAO,EAAC,WAAW,EAAC,MAAM,iBAAiB,CAAA;AAC3C,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,iBAAiB,CAAA;AAIhD,qBAAa,aAAc,SAAQ,gBAAgB;IACjD,SAAS,UAAQ;IACjB,SAAS,UAAQ;IAEjB,SAAS,CAAC,IAAI,EAAE,OAAO,CAAY;IAE7B,KAAK;IAgCX,MAAM,CAAC,CAAC,KACc,CAAC,GAAG,SAAS;CAEpC;AAED,qBAAa,aAAc,SAAQ,WAAW,CAAC,aAAa,CAAC;IAC3D,MAAM,EAAE,OAAO,CAAY;IAC3B,SAAS,UAAQ;gBAEL,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,aAAa;IAOtE,SAAS,CAAC,MAAM,EAAE,OAAO;IAMzB,YAAY,CAAC,SAAS,EAAE,OAAO;IAM/B,QAAQ;IAQF,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC;CAoBvC;AAED,qBAAa,YAAa,SAAQ,UAAU;IAC1C,SAAS,CAAC,YAAY;CAGvB;AAED,eAAO,MAAM,OAAO,yDAKlB,CAAA"}
|
|
@@ -3,6 +3,7 @@ import { decrypt } from "@welshman/signer";
|
|
|
3
3
|
import { APP_DATA } from "@welshman/util";
|
|
4
4
|
import { AsyncEventReader } from "../core/EventReader.js";
|
|
5
5
|
import { EventWriter } from "../core/EventWriter.js";
|
|
6
|
+
import { EventQuery } from "../core/EventQuery.js";
|
|
6
7
|
import { KindFactory } from "../core/Kind.js";
|
|
7
8
|
// NIP-78 kind-30078 arbitrary app data, keyed by `d` tag. Content is JSON,
|
|
8
9
|
// optionally NIP-44 encrypted to the author.
|
|
@@ -77,9 +78,15 @@ export class AppDataWriter extends EventWriter {
|
|
|
77
78
|
return signer.nip44.encrypt(pubkey, json);
|
|
78
79
|
}
|
|
79
80
|
}
|
|
81
|
+
export class AppDataQuery extends EventQuery {
|
|
82
|
+
renderRoutes() {
|
|
83
|
+
return this.authorRoutes();
|
|
84
|
+
}
|
|
85
|
+
}
|
|
80
86
|
export const AppData = new KindFactory({
|
|
81
87
|
kind: APP_DATA,
|
|
82
88
|
reader: AppDataReader,
|
|
83
89
|
writer: AppDataWriter,
|
|
90
|
+
query: AppDataQuery,
|
|
84
91
|
});
|
|
85
92
|
//# sourceMappingURL=AppData.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AppData.js","sourceRoot":"","sources":["../../../../src/kinds/AppData.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"AppData.js","sourceRoot":"","sources":["../../../../src/kinds/AppData.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { EventReader } from "../core/EventReader.js";
|
|
2
2
|
import { EventWriter } from "../core/EventWriter.js";
|
|
3
|
+
import { EventQuery } from "../core/EventQuery.js";
|
|
3
4
|
import { KindFactory } from "../core/Kind.js";
|
|
4
5
|
export declare class ArticleReader extends EventReader {
|
|
5
6
|
title(): string | undefined;
|
|
@@ -15,5 +16,8 @@ export declare class ArticleWriter extends EventWriter<ArticleReader> {
|
|
|
15
16
|
setPublishedAt(publishedAt: number): this;
|
|
16
17
|
setTopics(topics: string[]): this;
|
|
17
18
|
}
|
|
18
|
-
export declare
|
|
19
|
+
export declare class ArticleQuery extends EventQuery {
|
|
20
|
+
protected renderRoutes(): import("@welshman/util").RelaySelection[];
|
|
21
|
+
}
|
|
22
|
+
export declare const Article: KindFactory<ArticleReader, ArticleWriter, ArticleQuery>;
|
|
19
23
|
//# sourceMappingURL=Article.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Article.d.ts","sourceRoot":"","sources":["../../../../src/kinds/Article.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,WAAW,EAAC,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAC,WAAW,EAAC,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAC,WAAW,EAAC,MAAM,iBAAiB,CAAA;AAG3C,qBAAa,aAAc,SAAQ,WAAW;IAC5C,KAAK;IAIL,OAAO;IAIP,KAAK;IAML,WAAW;IAMX,MAAM;CAGP;AAED,qBAAa,aAAc,SAAQ,WAAW,CAAC,aAAa,CAAC;IAC3D,QAAQ,CAAC,KAAK,EAAE,MAAM;IAItB,UAAU,CAAC,OAAO,EAAE,MAAM;IAI1B,QAAQ,CAAC,KAAK,EAAE,MAAM;IAItB,cAAc,CAAC,WAAW,EAAE,MAAM;IAIlC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE;CAG3B;AAED,eAAO,MAAM,OAAO,
|
|
1
|
+
{"version":3,"file":"Article.d.ts","sourceRoot":"","sources":["../../../../src/kinds/Article.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,WAAW,EAAC,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAC,WAAW,EAAC,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAC,UAAU,EAAC,MAAM,uBAAuB,CAAA;AAChD,OAAO,EAAC,WAAW,EAAC,MAAM,iBAAiB,CAAA;AAG3C,qBAAa,aAAc,SAAQ,WAAW;IAC5C,KAAK;IAIL,OAAO;IAIP,KAAK;IAML,WAAW;IAMX,MAAM;CAGP;AAED,qBAAa,aAAc,SAAQ,WAAW,CAAC,aAAa,CAAC;IAC3D,QAAQ,CAAC,KAAK,EAAE,MAAM;IAItB,UAAU,CAAC,OAAO,EAAE,MAAM;IAI1B,QAAQ,CAAC,KAAK,EAAE,MAAM;IAItB,cAAc,CAAC,WAAW,EAAE,MAAM;IAIlC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE;CAG3B;AAED,qBAAa,YAAa,SAAQ,UAAU;IAC1C,SAAS,CAAC,YAAY;CAGvB;AAED,eAAO,MAAM,OAAO,yDAKlB,CAAA"}
|
|
@@ -2,6 +2,7 @@ import { spec } from "@welshman/lib";
|
|
|
2
2
|
import { LONG_FORM, tagSpec, tagValue, tagValues, topicTags } from "@welshman/util";
|
|
3
3
|
import { EventReader } from "../core/EventReader.js";
|
|
4
4
|
import { EventWriter } from "../core/EventWriter.js";
|
|
5
|
+
import { EventQuery } from "../core/EventQuery.js";
|
|
5
6
|
import { KindFactory } from "../core/Kind.js";
|
|
6
7
|
// NIP-23 kind-30023 long-form article.
|
|
7
8
|
export class ArticleReader extends EventReader {
|
|
@@ -41,9 +42,15 @@ export class ArticleWriter extends EventWriter {
|
|
|
41
42
|
return this.dropTags(spec(["t"])).addTags(...topics.map(topic => ["t", topic]));
|
|
42
43
|
}
|
|
43
44
|
}
|
|
45
|
+
export class ArticleQuery extends EventQuery {
|
|
46
|
+
renderRoutes() {
|
|
47
|
+
return [...this.authorRoutes(), ...this.mentionRoutes()];
|
|
48
|
+
}
|
|
49
|
+
}
|
|
44
50
|
export const Article = new KindFactory({
|
|
45
51
|
kind: LONG_FORM,
|
|
46
52
|
reader: ArticleReader,
|
|
47
53
|
writer: ArticleWriter,
|
|
54
|
+
query: ArticleQuery,
|
|
48
55
|
});
|
|
49
56
|
//# sourceMappingURL=Article.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Article.js","sourceRoot":"","sources":["../../../../src/kinds/Article.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,IAAI,EAAC,MAAM,eAAe,CAAA;AAClC,OAAO,EAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAC,MAAM,gBAAgB,CAAA;AACjF,OAAO,EAAC,WAAW,EAAC,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAC,WAAW,EAAC,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAC,WAAW,EAAC,MAAM,iBAAiB,CAAA;AAE3C,uCAAuC;AACvC,MAAM,OAAO,aAAc,SAAQ,WAAW;IAC5C,KAAK;QACH,OAAO,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IACpD,CAAC;IAED,OAAO;QACL,OAAO,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IACtD,CAAC;IAED,KAAK;QACH,OAAO,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IACpD,CAAC;IAED,wFAAwF;IACxF,8DAA8D;IAC9D,WAAW;QACT,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;QAEhF,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAA;IACrD,CAAC;IAED,MAAM;QACJ,OAAO,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IACnD,CAAC;CACF;AAED,MAAM,OAAO,aAAc,SAAQ,WAA0B;IAC3D,QAAQ,CAAC,KAAa;QACpB,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAA;IACjE,CAAC;IAED,UAAU,CAAC,OAAe;QACxB,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAA;IACvE,CAAC;IAED,QAAQ,CAAC,KAAa;QACpB,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAA;IACjE,CAAC;IAED,cAAc,CAAC,WAAmB;QAChC,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,cAAc,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAA;IAC7F,CAAC;IAED,SAAS,CAAC,MAAgB;QACxB,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAA;IACjF,CAAC;CACF;AAED,MAAM,CAAC,MAAM,OAAO,GAAG,IAAI,WAAW,CAAC;IACrC,IAAI,EAAE,SAAS;IACf,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,aAAa;
|
|
1
|
+
{"version":3,"file":"Article.js","sourceRoot":"","sources":["../../../../src/kinds/Article.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { EventReader } from "../core/EventReader.js";
|
|
2
2
|
import { EventWriter } from "../core/EventWriter.js";
|
|
3
|
+
import { EventQuery } from "../core/EventQuery.js";
|
|
3
4
|
import { KindFactory } from "../core/Kind.js";
|
|
4
5
|
export declare class BlockedRelayListReader extends EventReader {
|
|
5
6
|
urls(): string[];
|
|
@@ -10,5 +11,8 @@ export declare class BlockedRelayListWriter extends EventWriter<BlockedRelayList
|
|
|
10
11
|
removeUrl(url: string): this;
|
|
11
12
|
setUrls(urls: string[]): this;
|
|
12
13
|
}
|
|
13
|
-
export declare
|
|
14
|
+
export declare class BlockedRelayListQuery extends EventQuery {
|
|
15
|
+
protected renderRoutes(): import("@welshman/util").RelaySelection[];
|
|
16
|
+
}
|
|
17
|
+
export declare const BlockedRelayList: KindFactory<BlockedRelayListReader, BlockedRelayListWriter, BlockedRelayListQuery>;
|
|
14
18
|
//# sourceMappingURL=BlockedRelayList.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BlockedRelayList.d.ts","sourceRoot":"","sources":["../../../../src/kinds/BlockedRelayList.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,WAAW,EAAC,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAC,WAAW,EAAC,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAC,WAAW,EAAC,MAAM,iBAAiB,CAAA;AAG3C,qBAAa,sBAAuB,SAAQ,WAAW;IACrD,IAAI;IAIJ,QAAQ,CAAC,GAAG,EAAE,MAAM;CAGrB;AAED,qBAAa,sBAAuB,SAAQ,WAAW,CAAC,sBAAsB,CAAC;IAC7E,MAAM,CAAC,GAAG,EAAE,MAAM;IAIlB,SAAS,CAAC,GAAG,EAAE,MAAM;IAIrB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE;CAKvB;AAED,eAAO,MAAM,gBAAgB,
|
|
1
|
+
{"version":3,"file":"BlockedRelayList.d.ts","sourceRoot":"","sources":["../../../../src/kinds/BlockedRelayList.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,WAAW,EAAC,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAC,WAAW,EAAC,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAC,UAAU,EAAC,MAAM,uBAAuB,CAAA;AAChD,OAAO,EAAC,WAAW,EAAC,MAAM,iBAAiB,CAAA;AAG3C,qBAAa,sBAAuB,SAAQ,WAAW;IACrD,IAAI;IAIJ,QAAQ,CAAC,GAAG,EAAE,MAAM;CAGrB;AAED,qBAAa,sBAAuB,SAAQ,WAAW,CAAC,sBAAsB,CAAC;IAC7E,MAAM,CAAC,GAAG,EAAE,MAAM;IAIlB,SAAS,CAAC,GAAG,EAAE,MAAM;IAIrB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE;CAKvB;AAED,qBAAa,qBAAsB,SAAQ,UAAU;IACnD,SAAS,CAAC,YAAY;CAGvB;AAED,eAAO,MAAM,gBAAgB,oFAK3B,CAAA"}
|
|
@@ -2,6 +2,7 @@ import { uniq, spec } from "@welshman/lib";
|
|
|
2
2
|
import { BLOCKED_RELAYS, relayTags, tagValues, normalizeRelayUrl } from "@welshman/util";
|
|
3
3
|
import { EventReader } from "../core/EventReader.js";
|
|
4
4
|
import { EventWriter } from "../core/EventWriter.js";
|
|
5
|
+
import { EventQuery } from "../core/EventQuery.js";
|
|
5
6
|
import { KindFactory } from "../core/Kind.js";
|
|
6
7
|
// NIP-51 kind-10006 blocked relays list.
|
|
7
8
|
export class BlockedRelayListReader extends EventReader {
|
|
@@ -23,9 +24,15 @@ export class BlockedRelayListWriter extends EventWriter {
|
|
|
23
24
|
return this.dropTags(spec(["relay"])).addTags(...urls.map(url => ["relay", normalizeRelayUrl(url)]));
|
|
24
25
|
}
|
|
25
26
|
}
|
|
27
|
+
export class BlockedRelayListQuery extends EventQuery {
|
|
28
|
+
renderRoutes() {
|
|
29
|
+
return this.authorRoutes();
|
|
30
|
+
}
|
|
31
|
+
}
|
|
26
32
|
export const BlockedRelayList = new KindFactory({
|
|
27
33
|
kind: BLOCKED_RELAYS,
|
|
28
34
|
reader: BlockedRelayListReader,
|
|
29
35
|
writer: BlockedRelayListWriter,
|
|
36
|
+
query: BlockedRelayListQuery,
|
|
30
37
|
});
|
|
31
38
|
//# sourceMappingURL=BlockedRelayList.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BlockedRelayList.js","sourceRoot":"","sources":["../../../../src/kinds/BlockedRelayList.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,IAAI,EAAE,IAAI,EAAC,MAAM,eAAe,CAAA;AACxC,OAAO,EAAC,cAAc,EAAE,SAAS,EAAE,SAAS,EAAE,iBAAiB,EAAC,MAAM,gBAAgB,CAAA;AACtF,OAAO,EAAC,WAAW,EAAC,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAC,WAAW,EAAC,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAC,WAAW,EAAC,MAAM,iBAAiB,CAAA;AAE3C,yCAAyC;AACzC,MAAM,OAAO,sBAAuB,SAAQ,WAAW;IACrD,IAAI;QACF,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;IACzD,CAAC;IAED,QAAQ,CAAC,GAAW;QAClB,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAA;IACrD,CAAC;CACF;AAED,MAAM,OAAO,sBAAuB,SAAQ,WAAmC;IAC7E,MAAM,CAAC,GAAW;QAChB,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;IACxD,CAAC;IAED,SAAS,CAAC,GAAW;QACnB,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;IAC/D,CAAC;IAED,OAAO,CAAC,IAAc;QACpB,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAC3C,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,CACtD,CAAA;IACH,CAAC;CACF;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,WAAW,CAAC;IAC9C,IAAI,EAAE,cAAc;IACpB,MAAM,EAAE,sBAAsB;IAC9B,MAAM,EAAE,sBAAsB;
|
|
1
|
+
{"version":3,"file":"BlockedRelayList.js","sourceRoot":"","sources":["../../../../src/kinds/BlockedRelayList.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,IAAI,EAAE,IAAI,EAAC,MAAM,eAAe,CAAA;AACxC,OAAO,EAAC,cAAc,EAAE,SAAS,EAAE,SAAS,EAAE,iBAAiB,EAAC,MAAM,gBAAgB,CAAA;AACtF,OAAO,EAAC,WAAW,EAAC,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAC,WAAW,EAAC,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAC,UAAU,EAAC,MAAM,uBAAuB,CAAA;AAChD,OAAO,EAAC,WAAW,EAAC,MAAM,iBAAiB,CAAA;AAE3C,yCAAyC;AACzC,MAAM,OAAO,sBAAuB,SAAQ,WAAW;IACrD,IAAI;QACF,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;IACzD,CAAC;IAED,QAAQ,CAAC,GAAW;QAClB,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAA;IACrD,CAAC;CACF;AAED,MAAM,OAAO,sBAAuB,SAAQ,WAAmC;IAC7E,MAAM,CAAC,GAAW;QAChB,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;IACxD,CAAC;IAED,SAAS,CAAC,GAAW;QACnB,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;IAC/D,CAAC;IAED,OAAO,CAAC,IAAc;QACpB,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAC3C,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,CACtD,CAAA;IACH,CAAC;CACF;AAED,MAAM,OAAO,qBAAsB,SAAQ,UAAU;IACzC,YAAY;QACpB,OAAO,IAAI,CAAC,YAAY,EAAE,CAAA;IAC5B,CAAC;CACF;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,WAAW,CAAC;IAC9C,IAAI,EAAE,cAAc;IACpB,MAAM,EAAE,sBAAsB;IAC9B,MAAM,EAAE,sBAAsB;IAC9B,KAAK,EAAE,qBAAqB;CAC7B,CAAC,CAAA"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { EventReader } from "../core/EventReader.js";
|
|
2
2
|
import { EventWriter } from "../core/EventWriter.js";
|
|
3
|
+
import { EventQuery } from "../core/EventQuery.js";
|
|
3
4
|
import { KindFactory } from "../core/Kind.js";
|
|
4
5
|
export declare class BlossomServerListReader extends EventReader {
|
|
5
6
|
urls(): string[];
|
|
@@ -10,5 +11,8 @@ export declare class BlossomServerListWriter extends EventWriter<BlossomServerLi
|
|
|
10
11
|
removeUrl(url: string): this;
|
|
11
12
|
setUrls(urls: string[]): this;
|
|
12
13
|
}
|
|
13
|
-
export declare
|
|
14
|
+
export declare class BlossomServerListQuery extends EventQuery {
|
|
15
|
+
protected renderRoutes(): import("@welshman/util").RelaySelection[];
|
|
16
|
+
}
|
|
17
|
+
export declare const BlossomServerList: KindFactory<BlossomServerListReader, BlossomServerListWriter, BlossomServerListQuery>;
|
|
14
18
|
//# sourceMappingURL=BlossomServerList.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BlossomServerList.d.ts","sourceRoot":"","sources":["../../../../src/kinds/BlossomServerList.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,WAAW,EAAC,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAC,WAAW,EAAC,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAC,WAAW,EAAC,MAAM,iBAAiB,CAAA;AAG3C,qBAAa,uBAAwB,SAAQ,WAAW;IACtD,IAAI;IAIJ,QAAQ,CAAC,GAAG,EAAE,MAAM;CAGrB;AAED,qBAAa,uBAAwB,SAAQ,WAAW,CAAC,uBAAuB,CAAC;IAC/E,MAAM,CAAC,GAAG,EAAE,MAAM;IAIlB,SAAS,CAAC,GAAG,EAAE,MAAM;IAIrB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE;CAKvB;AAED,eAAO,MAAM,iBAAiB
|
|
1
|
+
{"version":3,"file":"BlossomServerList.d.ts","sourceRoot":"","sources":["../../../../src/kinds/BlossomServerList.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,WAAW,EAAC,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAC,WAAW,EAAC,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAC,UAAU,EAAC,MAAM,uBAAuB,CAAA;AAChD,OAAO,EAAC,WAAW,EAAC,MAAM,iBAAiB,CAAA;AAG3C,qBAAa,uBAAwB,SAAQ,WAAW;IACtD,IAAI;IAIJ,QAAQ,CAAC,GAAG,EAAE,MAAM;CAGrB;AAED,qBAAa,uBAAwB,SAAQ,WAAW,CAAC,uBAAuB,CAAC;IAC/E,MAAM,CAAC,GAAG,EAAE,MAAM;IAIlB,SAAS,CAAC,GAAG,EAAE,MAAM;IAIrB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE;CAKvB;AAED,qBAAa,sBAAuB,SAAQ,UAAU;IACpD,SAAS,CAAC,YAAY;CAGvB;AAED,eAAO,MAAM,iBAAiB,uFAK5B,CAAA"}
|
|
@@ -2,6 +2,7 @@ import { uniq, spec, normalizeUrl } from "@welshman/lib";
|
|
|
2
2
|
import { BLOSSOM_SERVERS, tagSpec, tagValues } from "@welshman/util";
|
|
3
3
|
import { EventReader } from "../core/EventReader.js";
|
|
4
4
|
import { EventWriter } from "../core/EventWriter.js";
|
|
5
|
+
import { EventQuery } from "../core/EventQuery.js";
|
|
5
6
|
import { KindFactory } from "../core/Kind.js";
|
|
6
7
|
// Blossom BUD-03 kind-10063 user server list.
|
|
7
8
|
export class BlossomServerListReader extends EventReader {
|
|
@@ -23,9 +24,15 @@ export class BlossomServerListWriter extends EventWriter {
|
|
|
23
24
|
return this.dropTags(spec(["server"])).addTags(...urls.map(url => ["server", normalizeUrl(url)]));
|
|
24
25
|
}
|
|
25
26
|
}
|
|
27
|
+
export class BlossomServerListQuery extends EventQuery {
|
|
28
|
+
renderRoutes() {
|
|
29
|
+
return this.authorRoutes();
|
|
30
|
+
}
|
|
31
|
+
}
|
|
26
32
|
export const BlossomServerList = new KindFactory({
|
|
27
33
|
kind: BLOSSOM_SERVERS,
|
|
28
34
|
reader: BlossomServerListReader,
|
|
29
35
|
writer: BlossomServerListWriter,
|
|
36
|
+
query: BlossomServerListQuery,
|
|
30
37
|
});
|
|
31
38
|
//# sourceMappingURL=BlossomServerList.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BlossomServerList.js","sourceRoot":"","sources":["../../../../src/kinds/BlossomServerList.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,IAAI,EAAE,IAAI,EAAE,YAAY,EAAC,MAAM,eAAe,CAAA;AACtD,OAAO,EAAC,eAAe,EAAE,OAAO,EAAE,SAAS,EAAC,MAAM,gBAAgB,CAAA;AAClE,OAAO,EAAC,WAAW,EAAC,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAC,WAAW,EAAC,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAC,WAAW,EAAC,MAAM,iBAAiB,CAAA;AAE3C,8CAA8C;AAC9C,MAAM,OAAO,uBAAwB,SAAQ,WAAW;IACtD,IAAI;QACF,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;IACtF,CAAC;IAED,QAAQ,CAAC,GAAW;QAClB,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAA;IAChD,CAAC;CACF;AAED,MAAM,OAAO,uBAAwB,SAAQ,WAAoC;IAC/E,MAAM,CAAC,GAAW;QAChB,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;IACpD,CAAC;IAED,SAAS,CAAC,GAAW;QACnB,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;IAC3D,CAAC;IAED,OAAO,CAAC,IAAc;QACpB,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAC5C,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAClD,CAAA;IACH,CAAC;CACF;AAED,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,WAAW,CAAC;IAC/C,IAAI,EAAE,eAAe;IACrB,MAAM,EAAE,uBAAuB;IAC/B,MAAM,EAAE,uBAAuB;
|
|
1
|
+
{"version":3,"file":"BlossomServerList.js","sourceRoot":"","sources":["../../../../src/kinds/BlossomServerList.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,IAAI,EAAE,IAAI,EAAE,YAAY,EAAC,MAAM,eAAe,CAAA;AACtD,OAAO,EAAC,eAAe,EAAE,OAAO,EAAE,SAAS,EAAC,MAAM,gBAAgB,CAAA;AAClE,OAAO,EAAC,WAAW,EAAC,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAC,WAAW,EAAC,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAC,UAAU,EAAC,MAAM,uBAAuB,CAAA;AAChD,OAAO,EAAC,WAAW,EAAC,MAAM,iBAAiB,CAAA;AAE3C,8CAA8C;AAC9C,MAAM,OAAO,uBAAwB,SAAQ,WAAW;IACtD,IAAI;QACF,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;IACtF,CAAC;IAED,QAAQ,CAAC,GAAW;QAClB,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAA;IAChD,CAAC;CACF;AAED,MAAM,OAAO,uBAAwB,SAAQ,WAAoC;IAC/E,MAAM,CAAC,GAAW;QAChB,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;IACpD,CAAC;IAED,SAAS,CAAC,GAAW;QACnB,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;IAC3D,CAAC;IAED,OAAO,CAAC,IAAc;QACpB,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAC5C,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAClD,CAAA;IACH,CAAC;CACF;AAED,MAAM,OAAO,sBAAuB,SAAQ,UAAU;IAC1C,YAAY;QACpB,OAAO,IAAI,CAAC,YAAY,EAAE,CAAA;IAC5B,CAAC;CACF;AAED,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,WAAW,CAAC;IAC/C,IAAI,EAAE,eAAe;IACrB,MAAM,EAAE,uBAAuB;IAC/B,MAAM,EAAE,uBAAuB;IAC/B,KAAK,EAAE,sBAAsB;CAC9B,CAAC,CAAA"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { ListReader } from "../core/ListReader.js";
|
|
2
2
|
import { ListWriter } from "../core/ListWriter.js";
|
|
3
|
+
import { EventQuery } from "../core/EventQuery.js";
|
|
3
4
|
import { KindFactory } from "../core/Kind.js";
|
|
4
5
|
export declare class BookmarkListReader extends ListReader {
|
|
5
6
|
ids(): string[];
|
|
@@ -12,5 +13,8 @@ export declare class BookmarkListWriter extends ListWriter<BookmarkListReader> {
|
|
|
12
13
|
bookmarkPrivately(tag: string[]): this;
|
|
13
14
|
removeBookmark(value: string): this;
|
|
14
15
|
}
|
|
15
|
-
export declare
|
|
16
|
+
export declare class BookmarkListQuery extends EventQuery {
|
|
17
|
+
protected renderRoutes(): import("@welshman/util").RelaySelection[];
|
|
18
|
+
}
|
|
19
|
+
export declare const BookmarkList: KindFactory<BookmarkListReader, BookmarkListWriter, BookmarkListQuery>;
|
|
16
20
|
//# sourceMappingURL=BookmarkList.d.ts.map
|