@welshman/domain 0.9.0-pre1
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/LICENSE +21 -0
- package/dist/domain/src/EventBuilder.d.ts +35 -0
- package/dist/domain/src/EventBuilder.d.ts.map +1 -0
- package/dist/domain/src/EventBuilder.js +111 -0
- package/dist/domain/src/EventBuilder.js.map +1 -0
- package/dist/domain/src/EventReader.d.ts +24 -0
- package/dist/domain/src/EventReader.d.ts.map +1 -0
- package/dist/domain/src/EventReader.js +57 -0
- package/dist/domain/src/EventReader.js.map +1 -0
- package/dist/domain/src/ListBuilder.d.ts +21 -0
- package/dist/domain/src/ListBuilder.d.ts.map +1 -0
- package/dist/domain/src/ListBuilder.js +73 -0
- package/dist/domain/src/ListBuilder.js.map +1 -0
- package/dist/domain/src/ListReader.d.ts +12 -0
- package/dist/domain/src/ListReader.d.ts.map +1 -0
- package/dist/domain/src/ListReader.js +31 -0
- package/dist/domain/src/ListReader.js.map +1 -0
- package/dist/domain/src/index.d.ts +54 -0
- package/dist/domain/src/index.d.ts.map +1 -0
- package/dist/domain/src/index.js +54 -0
- package/dist/domain/src/index.js.map +1 -0
- package/dist/domain/src/kinds/BlockedRelayList.d.ts +15 -0
- package/dist/domain/src/kinds/BlockedRelayList.d.ts.map +1 -0
- package/dist/domain/src/kinds/BlockedRelayList.js +30 -0
- package/dist/domain/src/kinds/BlockedRelayList.js.map +1 -0
- package/dist/domain/src/kinds/BlossomServerList.d.ts +15 -0
- package/dist/domain/src/kinds/BlossomServerList.d.ts.map +1 -0
- package/dist/domain/src/kinds/BlossomServerList.js +30 -0
- package/dist/domain/src/kinds/BlossomServerList.js.map +1 -0
- package/dist/domain/src/kinds/BookmarkList.d.ts +17 -0
- package/dist/domain/src/kinds/BookmarkList.d.ts.map +1 -0
- package/dist/domain/src/kinds/BookmarkList.js +36 -0
- package/dist/domain/src/kinds/BookmarkList.js.map +1 -0
- package/dist/domain/src/kinds/Classified.d.ts +27 -0
- package/dist/domain/src/kinds/Classified.d.ts.map +1 -0
- package/dist/domain/src/kinds/Classified.js +65 -0
- package/dist/domain/src/kinds/Classified.js.map +1 -0
- package/dist/domain/src/kinds/Comment.d.ts +29 -0
- package/dist/domain/src/kinds/Comment.d.ts.map +1 -0
- package/dist/domain/src/kinds/Comment.js +82 -0
- package/dist/domain/src/kinds/Comment.js.map +1 -0
- package/dist/domain/src/kinds/EmojiList.d.ts +16 -0
- package/dist/domain/src/kinds/EmojiList.d.ts.map +1 -0
- package/dist/domain/src/kinds/EmojiList.js +33 -0
- package/dist/domain/src/kinds/EmojiList.js.map +1 -0
- package/dist/domain/src/kinds/Feed.d.ts +17 -0
- package/dist/domain/src/kinds/Feed.d.ts.map +1 -0
- package/dist/domain/src/kinds/Feed.js +33 -0
- package/dist/domain/src/kinds/Feed.js.map +1 -0
- package/dist/domain/src/kinds/FeedList.d.ts +15 -0
- package/dist/domain/src/kinds/FeedList.d.ts.map +1 -0
- package/dist/domain/src/kinds/FeedList.js +30 -0
- package/dist/domain/src/kinds/FeedList.js.map +1 -0
- package/dist/domain/src/kinds/FollowList.d.ts +14 -0
- package/dist/domain/src/kinds/FollowList.d.ts.map +1 -0
- package/dist/domain/src/kinds/FollowList.js +27 -0
- package/dist/domain/src/kinds/FollowList.js.map +1 -0
- package/dist/domain/src/kinds/GroupList.d.ts +13 -0
- package/dist/domain/src/kinds/GroupList.d.ts.map +1 -0
- package/dist/domain/src/kinds/GroupList.js +24 -0
- package/dist/domain/src/kinds/GroupList.js.map +1 -0
- package/dist/domain/src/kinds/Handler.d.ts +41 -0
- package/dist/domain/src/kinds/Handler.d.ts.map +1 -0
- package/dist/domain/src/kinds/Handler.js +86 -0
- package/dist/domain/src/kinds/Handler.js.map +1 -0
- package/dist/domain/src/kinds/HandlerRecommendation.d.ts +15 -0
- package/dist/domain/src/kinds/HandlerRecommendation.d.ts.map +1 -0
- package/dist/domain/src/kinds/HandlerRecommendation.js +32 -0
- package/dist/domain/src/kinds/HandlerRecommendation.js.map +1 -0
- package/dist/domain/src/kinds/MessagingRelayList.d.ts +14 -0
- package/dist/domain/src/kinds/MessagingRelayList.d.ts.map +1 -0
- package/dist/domain/src/kinds/MessagingRelayList.js +27 -0
- package/dist/domain/src/kinds/MessagingRelayList.js.map +1 -0
- package/dist/domain/src/kinds/MuteList.d.ts +15 -0
- package/dist/domain/src/kinds/MuteList.d.ts.map +1 -0
- package/dist/domain/src/kinds/MuteList.js +30 -0
- package/dist/domain/src/kinds/MuteList.js.map +1 -0
- package/dist/domain/src/kinds/Pin.d.ts +37 -0
- package/dist/domain/src/kinds/Pin.d.ts.map +1 -0
- package/dist/domain/src/kinds/Pin.js +74 -0
- package/dist/domain/src/kinds/Pin.js.map +1 -0
- package/dist/domain/src/kinds/PinList.d.ts +15 -0
- package/dist/domain/src/kinds/PinList.d.ts.map +1 -0
- package/dist/domain/src/kinds/PinList.js +30 -0
- package/dist/domain/src/kinds/PinList.js.map +1 -0
- package/dist/domain/src/kinds/Pinboard.d.ts +21 -0
- package/dist/domain/src/kinds/Pinboard.d.ts.map +1 -0
- package/dist/domain/src/kinds/Pinboard.js +53 -0
- package/dist/domain/src/kinds/Pinboard.js.map +1 -0
- package/dist/domain/src/kinds/Poll.d.ts +37 -0
- package/dist/domain/src/kinds/Poll.d.ts.map +1 -0
- package/dist/domain/src/kinds/Poll.js +80 -0
- package/dist/domain/src/kinds/Poll.js.map +1 -0
- package/dist/domain/src/kinds/PollResponse.d.ts +15 -0
- package/dist/domain/src/kinds/PollResponse.d.ts.map +1 -0
- package/dist/domain/src/kinds/PollResponse.js +33 -0
- package/dist/domain/src/kinds/PollResponse.js.map +1 -0
- package/dist/domain/src/kinds/Profile.d.ts +36 -0
- package/dist/domain/src/kinds/Profile.d.ts.map +1 -0
- package/dist/domain/src/kinds/Profile.js +105 -0
- package/dist/domain/src/kinds/Profile.js.map +1 -0
- package/dist/domain/src/kinds/RelayAddMember.d.ts +12 -0
- package/dist/domain/src/kinds/RelayAddMember.d.ts.map +1 -0
- package/dist/domain/src/kinds/RelayAddMember.js +21 -0
- package/dist/domain/src/kinds/RelayAddMember.js.map +1 -0
- package/dist/domain/src/kinds/RelayInvite.d.ts +12 -0
- package/dist/domain/src/kinds/RelayInvite.d.ts.map +1 -0
- package/dist/domain/src/kinds/RelayInvite.js +21 -0
- package/dist/domain/src/kinds/RelayInvite.js.map +1 -0
- package/dist/domain/src/kinds/RelayJoin.d.ts +14 -0
- package/dist/domain/src/kinds/RelayJoin.d.ts.map +1 -0
- package/dist/domain/src/kinds/RelayJoin.js +27 -0
- package/dist/domain/src/kinds/RelayJoin.js.map +1 -0
- package/dist/domain/src/kinds/RelayLeave.d.ts +10 -0
- package/dist/domain/src/kinds/RelayLeave.d.ts.map +1 -0
- package/dist/domain/src/kinds/RelayLeave.js +14 -0
- package/dist/domain/src/kinds/RelayLeave.js.map +1 -0
- package/dist/domain/src/kinds/RelayList.d.ts +24 -0
- package/dist/domain/src/kinds/RelayList.d.ts.map +1 -0
- package/dist/domain/src/kinds/RelayList.js +89 -0
- package/dist/domain/src/kinds/RelayList.js.map +1 -0
- package/dist/domain/src/kinds/RelayMembers.d.ts +17 -0
- package/dist/domain/src/kinds/RelayMembers.d.ts.map +1 -0
- package/dist/domain/src/kinds/RelayMembers.js +38 -0
- package/dist/domain/src/kinds/RelayMembers.js.map +1 -0
- package/dist/domain/src/kinds/RelayRemoveMember.d.ts +12 -0
- package/dist/domain/src/kinds/RelayRemoveMember.d.ts.map +1 -0
- package/dist/domain/src/kinds/RelayRemoveMember.js +21 -0
- package/dist/domain/src/kinds/RelayRemoveMember.js.map +1 -0
- package/dist/domain/src/kinds/RelaySet.d.ts +20 -0
- package/dist/domain/src/kinds/RelaySet.d.ts.map +1 -0
- package/dist/domain/src/kinds/RelaySet.js +45 -0
- package/dist/domain/src/kinds/RelaySet.js.map +1 -0
- package/dist/domain/src/kinds/Report.d.ts +18 -0
- package/dist/domain/src/kinds/Report.d.ts.map +1 -0
- package/dist/domain/src/kinds/Report.js +59 -0
- package/dist/domain/src/kinds/Report.js.map +1 -0
- package/dist/domain/src/kinds/RoomAddMember.d.ts +12 -0
- package/dist/domain/src/kinds/RoomAddMember.d.ts.map +1 -0
- package/dist/domain/src/kinds/RoomAddMember.js +21 -0
- package/dist/domain/src/kinds/RoomAddMember.js.map +1 -0
- package/dist/domain/src/kinds/RoomAdmins.d.ts +14 -0
- package/dist/domain/src/kinds/RoomAdmins.d.ts.map +1 -0
- package/dist/domain/src/kinds/RoomAdmins.js +27 -0
- package/dist/domain/src/kinds/RoomAdmins.js.map +1 -0
- package/dist/domain/src/kinds/RoomCreate.d.ts +11 -0
- package/dist/domain/src/kinds/RoomCreate.d.ts.map +1 -0
- package/dist/domain/src/kinds/RoomCreate.js +20 -0
- package/dist/domain/src/kinds/RoomCreate.js.map +1 -0
- package/dist/domain/src/kinds/RoomCreatePermission.d.ts +15 -0
- package/dist/domain/src/kinds/RoomCreatePermission.d.ts.map +1 -0
- package/dist/domain/src/kinds/RoomCreatePermission.js +30 -0
- package/dist/domain/src/kinds/RoomCreatePermission.js.map +1 -0
- package/dist/domain/src/kinds/RoomDelete.d.ts +11 -0
- package/dist/domain/src/kinds/RoomDelete.d.ts.map +1 -0
- package/dist/domain/src/kinds/RoomDelete.js +20 -0
- package/dist/domain/src/kinds/RoomDelete.js.map +1 -0
- package/dist/domain/src/kinds/RoomEdit.d.ts +28 -0
- package/dist/domain/src/kinds/RoomEdit.d.ts.map +1 -0
- package/dist/domain/src/kinds/RoomEdit.js +80 -0
- package/dist/domain/src/kinds/RoomEdit.js.map +1 -0
- package/dist/domain/src/kinds/RoomJoin.d.ts +15 -0
- package/dist/domain/src/kinds/RoomJoin.d.ts.map +1 -0
- package/dist/domain/src/kinds/RoomJoin.js +33 -0
- package/dist/domain/src/kinds/RoomJoin.js.map +1 -0
- package/dist/domain/src/kinds/RoomLeave.d.ts +11 -0
- package/dist/domain/src/kinds/RoomLeave.d.ts.map +1 -0
- package/dist/domain/src/kinds/RoomLeave.js +20 -0
- package/dist/domain/src/kinds/RoomLeave.js.map +1 -0
- package/dist/domain/src/kinds/RoomList.d.ts +14 -0
- package/dist/domain/src/kinds/RoomList.d.ts.map +1 -0
- package/dist/domain/src/kinds/RoomList.js +27 -0
- package/dist/domain/src/kinds/RoomList.js.map +1 -0
- package/dist/domain/src/kinds/RoomMembers.d.ts +15 -0
- package/dist/domain/src/kinds/RoomMembers.d.ts.map +1 -0
- package/dist/domain/src/kinds/RoomMembers.js +30 -0
- package/dist/domain/src/kinds/RoomMembers.js.map +1 -0
- package/dist/domain/src/kinds/RoomMeta.d.ts +27 -0
- package/dist/domain/src/kinds/RoomMeta.d.ts.map +1 -0
- package/dist/domain/src/kinds/RoomMeta.js +72 -0
- package/dist/domain/src/kinds/RoomMeta.js.map +1 -0
- package/dist/domain/src/kinds/RoomRemoveMember.d.ts +14 -0
- package/dist/domain/src/kinds/RoomRemoveMember.d.ts.map +1 -0
- package/dist/domain/src/kinds/RoomRemoveMember.js +27 -0
- package/dist/domain/src/kinds/RoomRemoveMember.js.map +1 -0
- package/dist/domain/src/kinds/SearchRelayList.d.ts +15 -0
- package/dist/domain/src/kinds/SearchRelayList.d.ts.map +1 -0
- package/dist/domain/src/kinds/SearchRelayList.js +30 -0
- package/dist/domain/src/kinds/SearchRelayList.js.map +1 -0
- package/dist/domain/src/kinds/SlashCommand.d.ts +38 -0
- package/dist/domain/src/kinds/SlashCommand.d.ts.map +1 -0
- package/dist/domain/src/kinds/SlashCommand.js +91 -0
- package/dist/domain/src/kinds/SlashCommand.js.map +1 -0
- package/dist/domain/src/kinds/Thread.d.ts +12 -0
- package/dist/domain/src/kinds/Thread.d.ts.map +1 -0
- package/dist/domain/src/kinds/Thread.js +21 -0
- package/dist/domain/src/kinds/Thread.js.map +1 -0
- package/dist/domain/src/kinds/TimeEvent.d.ts +21 -0
- package/dist/domain/src/kinds/TimeEvent.d.ts.map +1 -0
- package/dist/domain/src/kinds/TimeEvent.js +58 -0
- package/dist/domain/src/kinds/TimeEvent.js.map +1 -0
- package/dist/domain/src/kinds/TopicList.d.ts +17 -0
- package/dist/domain/src/kinds/TopicList.d.ts.map +1 -0
- package/dist/domain/src/kinds/TopicList.js +36 -0
- package/dist/domain/src/kinds/TopicList.js.map +1 -0
- package/dist/domain/src/kinds/ZapGoal.d.ts +20 -0
- package/dist/domain/src/kinds/ZapGoal.d.ts.map +1 -0
- package/dist/domain/src/kinds/ZapGoal.js +52 -0
- package/dist/domain/src/kinds/ZapGoal.js.map +1 -0
- package/dist/domain/src/kinds/ZapReceipt.d.ts +28 -0
- package/dist/domain/src/kinds/ZapReceipt.d.ts.map +1 -0
- package/dist/domain/src/kinds/ZapReceipt.js +93 -0
- package/dist/domain/src/kinds/ZapReceipt.js.map +1 -0
- package/dist/domain/src/kinds/ZapRequest.d.ts +20 -0
- package/dist/domain/src/kinds/ZapRequest.d.ts.map +1 -0
- package/dist/domain/src/kinds/ZapRequest.js +47 -0
- package/dist/domain/src/kinds/ZapRequest.js.map +1 -0
- package/dist/feeds/src/compiler.d.ts +49 -0
- package/dist/feeds/src/compiler.d.ts.map +1 -0
- package/dist/feeds/src/compiler.js +253 -0
- package/dist/feeds/src/compiler.js.map +1 -0
- package/dist/feeds/src/controller.d.ts +32 -0
- package/dist/feeds/src/controller.d.ts.map +1 -0
- package/dist/feeds/src/controller.js +329 -0
- package/dist/feeds/src/controller.js.map +1 -0
- package/dist/feeds/src/core.d.ts +76 -0
- package/dist/feeds/src/core.d.ts.map +1 -0
- package/dist/feeds/src/core.js +28 -0
- package/dist/feeds/src/core.js.map +1 -0
- package/dist/feeds/src/display.d.ts +21 -0
- package/dist/feeds/src/display.d.ts.map +1 -0
- package/dist/feeds/src/display.js +144 -0
- package/dist/feeds/src/display.js.map +1 -0
- package/dist/feeds/src/index.d.ts +7 -0
- package/dist/feeds/src/index.d.ts.map +1 -0
- package/dist/feeds/src/index.js +7 -0
- package/dist/feeds/src/index.js.map +1 -0
- package/dist/feeds/src/request.d.ts +26 -0
- package/dist/feeds/src/request.d.ts.map +1 -0
- package/dist/feeds/src/request.js +83 -0
- package/dist/feeds/src/request.js.map +1 -0
- package/dist/feeds/src/utils.d.ts +58 -0
- package/dist/feeds/src/utils.d.ts.map +1 -0
- package/dist/feeds/src/utils.js +218 -0
- package/dist/feeds/src/utils.js.map +1 -0
- package/dist/feeds/src/validate.d.ts +24 -0
- package/dist/feeds/src/validate.d.ts.map +1 -0
- package/dist/feeds/src/validate.js +137 -0
- package/dist/feeds/src/validate.js.map +1 -0
- package/dist/lib/src/Deferred.d.ts +21 -0
- package/dist/lib/src/Deferred.d.ts.map +1 -0
- package/dist/lib/src/Deferred.js +21 -0
- package/dist/lib/src/Deferred.js.map +1 -0
- package/dist/lib/src/Emitter.d.ts +14 -0
- package/dist/lib/src/Emitter.d.ts.map +1 -0
- package/dist/lib/src/Emitter.js +18 -0
- package/dist/lib/src/Emitter.js.map +1 -0
- package/dist/lib/src/LRUCache.d.ts +45 -0
- package/dist/lib/src/LRUCache.d.ts.map +1 -0
- package/dist/lib/src/LRUCache.js +72 -0
- package/dist/lib/src/LRUCache.js.map +1 -0
- package/dist/lib/src/TaskQueue.d.ts +21 -0
- package/dist/lib/src/TaskQueue.d.ts.map +1 -0
- package/dist/lib/src/TaskQueue.js +63 -0
- package/dist/lib/src/TaskQueue.js.map +1 -0
- package/dist/lib/src/Tools.d.ts +828 -0
- package/dist/lib/src/Tools.d.ts.map +1 -0
- package/dist/lib/src/Tools.js +1402 -0
- package/dist/lib/src/Tools.js.map +1 -0
- package/dist/lib/src/index.d.ts +7 -0
- package/dist/lib/src/index.d.ts.map +1 -0
- package/dist/lib/src/index.js +7 -0
- package/dist/lib/src/index.js.map +1 -0
- package/dist/lib/src/normalize-url/index.d.ts +286 -0
- package/dist/lib/src/normalize-url/index.d.ts.map +1 -0
- package/dist/lib/src/normalize-url/index.js +252 -0
- package/dist/lib/src/normalize-url/index.js.map +1 -0
- package/dist/net/src/adapter.d.ts +47 -0
- package/dist/net/src/adapter.d.ts.map +1 -0
- package/dist/net/src/adapter.js +130 -0
- package/dist/net/src/adapter.js.map +1 -0
- package/dist/net/src/auth.d.ts +40 -0
- package/dist/net/src/auth.d.ts.map +1 -0
- package/dist/net/src/auth.js +124 -0
- package/dist/net/src/auth.js.map +1 -0
- package/dist/net/src/context.d.ts +10 -0
- package/dist/net/src/context.d.ts.map +1 -0
- package/dist/net/src/context.js +2 -0
- package/dist/net/src/context.js.map +1 -0
- package/dist/net/src/diff.d.ts +57 -0
- package/dist/net/src/diff.d.ts.map +1 -0
- package/dist/net/src/diff.js +162 -0
- package/dist/net/src/diff.js.map +1 -0
- package/dist/net/src/index.d.ts +15 -0
- package/dist/net/src/index.d.ts.map +1 -0
- package/dist/net/src/index.js +15 -0
- package/dist/net/src/index.js.map +1 -0
- package/dist/net/src/message.d.ts +64 -0
- package/dist/net/src/message.d.ts.map +1 -0
- package/dist/net/src/message.js +37 -0
- package/dist/net/src/message.js.map +1 -0
- package/dist/net/src/negentropy.d.ts +48 -0
- package/dist/net/src/negentropy.d.ts.map +1 -0
- package/dist/net/src/negentropy.js +535 -0
- package/dist/net/src/negentropy.js.map +1 -0
- package/dist/net/src/policy.d.ts +40 -0
- package/dist/net/src/policy.d.ts.map +1 -0
- package/dist/net/src/policy.js +210 -0
- package/dist/net/src/policy.js.map +1 -0
- package/dist/net/src/pool.d.ts +13 -0
- package/dist/net/src/pool.d.ts.map +1 -0
- package/dist/net/src/pool.js +44 -0
- package/dist/net/src/pool.js.map +1 -0
- package/dist/net/src/publish.d.ts +45 -0
- package/dist/net/src/publish.d.ts.map +1 -0
- package/dist/net/src/publish.js +98 -0
- package/dist/net/src/publish.js.map +1 -0
- package/dist/net/src/repository.d.ts +69 -0
- package/dist/net/src/repository.d.ts.map +1 -0
- package/dist/net/src/repository.js +304 -0
- package/dist/net/src/repository.js.map +1 -0
- package/dist/net/src/request.d.ts +58 -0
- package/dist/net/src/request.d.ts.map +1 -0
- package/dist/net/src/request.js +224 -0
- package/dist/net/src/request.js.map +1 -0
- package/dist/net/src/socket.d.ts +49 -0
- package/dist/net/src/socket.d.ts.map +1 -0
- package/dist/net/src/socket.js +126 -0
- package/dist/net/src/socket.js.map +1 -0
- package/dist/net/src/tracker.d.ts +16 -0
- package/dist/net/src/tracker.d.ts.map +1 -0
- package/dist/net/src/tracker.js +63 -0
- package/dist/net/src/tracker.js.map +1 -0
- package/dist/net/src/util.d.ts +2 -0
- package/dist/net/src/util.d.ts.map +1 -0
- package/dist/net/src/util.js +2 -0
- package/dist/net/src/util.js.map +1 -0
- package/dist/net/src/wrapManager.d.ts +37 -0
- package/dist/net/src/wrapManager.d.ts.map +1 -0
- package/dist/net/src/wrapManager.js +94 -0
- package/dist/net/src/wrapManager.js.map +1 -0
- package/dist/signer/src/index.d.ts +7 -0
- package/dist/signer/src/index.d.ts.map +1 -0
- package/dist/signer/src/index.js +7 -0
- package/dist/signer/src/index.js.map +1 -0
- package/dist/signer/src/nip59.d.ts +19 -0
- package/dist/signer/src/nip59.d.ts.map +1 -0
- package/dist/signer/src/nip59.js +70 -0
- package/dist/signer/src/nip59.js.map +1 -0
- package/dist/signer/src/signers/nip01.d.ts +20 -0
- package/dist/signer/src/signers/nip01.d.ts.map +1 -0
- package/dist/signer/src/signers/nip01.js +23 -0
- package/dist/signer/src/signers/nip01.js.map +1 -0
- package/dist/signer/src/signers/nip07.d.ts +23 -0
- package/dist/signer/src/signers/nip07.d.ts.map +1 -0
- package/dist/signer/src/signers/nip07.js +29 -0
- package/dist/signer/src/signers/nip07.js.map +1 -0
- package/dist/signer/src/signers/nip46.d.ts +127 -0
- package/dist/signer/src/signers/nip46.d.ts.map +1 -0
- package/dist/signer/src/signers/nip46.js +379 -0
- package/dist/signer/src/signers/nip46.js.map +1 -0
- package/dist/signer/src/signers/nip55.d.ts +20 -0
- package/dist/signer/src/signers/nip55.d.ts.map +1 -0
- package/dist/signer/src/signers/nip55.js +87 -0
- package/dist/signer/src/signers/nip55.js.map +1 -0
- package/dist/signer/src/util.d.ts +56 -0
- package/dist/signer/src/util.d.ts.map +1 -0
- package/dist/signer/src/util.js +65 -0
- package/dist/signer/src/util.js.map +1 -0
- package/dist/tsconfig.build.tsbuildinfo +1 -0
- package/dist/util/src/Address.d.ts +21 -0
- package/dist/util/src/Address.d.ts.map +1 -0
- package/dist/util/src/Address.js +43 -0
- package/dist/util/src/Address.js.map +1 -0
- package/dist/util/src/Blossom.d.ts +66 -0
- package/dist/util/src/Blossom.d.ts.map +1 -0
- package/dist/util/src/Blossom.js +124 -0
- package/dist/util/src/Blossom.js.map +1 -0
- package/dist/util/src/Events.d.ts +71 -0
- package/dist/util/src/Events.d.ts.map +1 -0
- package/dist/util/src/Events.js +91 -0
- package/dist/util/src/Events.js.map +1 -0
- package/dist/util/src/Filters.d.ts +48 -0
- package/dist/util/src/Filters.d.ts.map +1 -0
- package/dist/util/src/Filters.js +182 -0
- package/dist/util/src/Filters.js.map +1 -0
- package/dist/util/src/Handles.d.ts +15 -0
- package/dist/util/src/Handles.d.ts.map +1 -0
- package/dist/util/src/Handles.js +25 -0
- package/dist/util/src/Handles.js.map +1 -0
- package/dist/util/src/Keys.d.ts +37 -0
- package/dist/util/src/Keys.d.ts.map +1 -0
- package/dist/util/src/Keys.js +26 -0
- package/dist/util/src/Keys.js.map +1 -0
- package/dist/util/src/Kinds.d.ts +194 -0
- package/dist/util/src/Kinds.d.ts.map +1 -0
- package/dist/util/src/Kinds.js +203 -0
- package/dist/util/src/Kinds.js.map +1 -0
- package/dist/util/src/Links.d.ts +3 -0
- package/dist/util/src/Links.d.ts.map +1 -0
- package/dist/util/src/Links.js +3 -0
- package/dist/util/src/Links.js.map +1 -0
- package/dist/util/src/Nip42.d.ts +7 -0
- package/dist/util/src/Nip42.d.ts.map +1 -0
- package/dist/util/src/Nip42.js +9 -0
- package/dist/util/src/Nip42.js.map +1 -0
- package/dist/util/src/Nip86.d.ts +39 -0
- package/dist/util/src/Nip86.d.ts.map +1 -0
- package/dist/util/src/Nip86.js +49 -0
- package/dist/util/src/Nip86.js.map +1 -0
- package/dist/util/src/Nip98.d.ts +9 -0
- package/dist/util/src/Nip98.d.ts.map +1 -0
- package/dist/util/src/Nip98.js +16 -0
- package/dist/util/src/Nip98.js.map +1 -0
- package/dist/util/src/Pow.d.ts +11 -0
- package/dist/util/src/Pow.d.ts.map +1 -0
- package/dist/util/src/Pow.js +127 -0
- package/dist/util/src/Pow.js.map +1 -0
- package/dist/util/src/Pubkey.d.ts +10 -0
- package/dist/util/src/Pubkey.d.ts.map +1 -0
- package/dist/util/src/Pubkey.js +32 -0
- package/dist/util/src/Pubkey.js.map +1 -0
- package/dist/util/src/Relay.d.ts +38 -0
- package/dist/util/src/Relay.d.ts.map +1 -0
- package/dist/util/src/Relay.js +55 -0
- package/dist/util/src/Relay.js.map +1 -0
- package/dist/util/src/Tags.d.ts +37 -0
- package/dist/util/src/Tags.d.ts.map +1 -0
- package/dist/util/src/Tags.js +79 -0
- package/dist/util/src/Tags.js.map +1 -0
- package/dist/util/src/Wallet.d.ts +32 -0
- package/dist/util/src/Wallet.d.ts.map +1 -0
- package/dist/util/src/Wallet.js +9 -0
- package/dist/util/src/Wallet.js.map +1 -0
- package/dist/util/src/Zaps.d.ts +86 -0
- package/dist/util/src/Zaps.d.ts.map +1 -0
- package/dist/util/src/Zaps.js +184 -0
- package/dist/util/src/Zaps.js.map +1 -0
- package/dist/util/src/index.d.ts +18 -0
- package/dist/util/src/index.d.ts.map +1 -0
- package/dist/util/src/index.js +18 -0
- package/dist/util/src/index.js.map +1 -0
- package/package.json +37 -0
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import { verifiedSymbol, verifyEvent as verifyEventPure } from "nostr-tools/pure";
|
|
2
|
+
import { setNostrWasm, verifyEvent as verifyEventWasm } from "nostr-tools/wasm";
|
|
3
|
+
import { initNostrWasm } from "nostr-wasm";
|
|
4
|
+
import { mapVals, sortBy, lte, first, pick, now } from "@welshman/lib";
|
|
5
|
+
import { getReplyTags, getCommentTags, getReplyTagValues, getCommentTagValues } from "./Tags.js";
|
|
6
|
+
import { getAddress, Address } from "./Address.js";
|
|
7
|
+
import { COMMENT, isEphemeralKind, isReplaceableKind, isPlainReplaceableKind, isParameterizedReplaceableKind, } from "./Kinds.js";
|
|
8
|
+
export { verifiedSymbol };
|
|
9
|
+
// Event template creation
|
|
10
|
+
export const makeEvent = (kind, { content = "", tags = [], created_at = now() } = {}) => ({ kind, content, tags, created_at });
|
|
11
|
+
// Event signature verification
|
|
12
|
+
export const verifyEvent = (() => {
|
|
13
|
+
let verify = verifyEventPure;
|
|
14
|
+
if (typeof WebAssembly === "object") {
|
|
15
|
+
initNostrWasm().then(nostrWasm => {
|
|
16
|
+
setNostrWasm(nostrWasm);
|
|
17
|
+
verify = verifyEventWasm;
|
|
18
|
+
}, e => {
|
|
19
|
+
console.warn(e);
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
return (event) => {
|
|
23
|
+
if (!isSignedEvent(event))
|
|
24
|
+
return false;
|
|
25
|
+
if (event[verifiedSymbol])
|
|
26
|
+
return true;
|
|
27
|
+
return verify(event);
|
|
28
|
+
};
|
|
29
|
+
})();
|
|
30
|
+
// Type guards
|
|
31
|
+
export const isEventTemplate = (e) => {
|
|
32
|
+
if (!e)
|
|
33
|
+
return false;
|
|
34
|
+
if (e.kind % 1 !== 0)
|
|
35
|
+
return false;
|
|
36
|
+
if (typeof e.content !== "string")
|
|
37
|
+
return false;
|
|
38
|
+
return e.tags?.every?.(t => t?.every?.(x => typeof x === "string"));
|
|
39
|
+
};
|
|
40
|
+
export const isStampedEvent = (e) => Boolean(isEventTemplate(e) && e.created_at >= 0 && e.created_at % 1 === 0);
|
|
41
|
+
export const isOwnedEvent = (e) => Boolean(isStampedEvent(e) && typeof e.pubkey === "string" && e.pubkey.length === 64);
|
|
42
|
+
export const isHashedEvent = (e) => Boolean(isOwnedEvent(e) && typeof e.id === "string" && e.id.length === 64);
|
|
43
|
+
export const isSignedEvent = (e) => Boolean(isHashedEvent(e) && typeof e.sig === "string" && e.sig.length > 0);
|
|
44
|
+
// Type coercion and attribute stripping
|
|
45
|
+
export const asEventTemplate = (e) => pick(["kind", "tags", "content"], e);
|
|
46
|
+
export const asStampedEvent = (e) => pick(["kind", "tags", "content", "created_at"], e);
|
|
47
|
+
export const asOwnedEvent = (e) => pick(["kind", "tags", "content", "created_at", "pubkey"], e);
|
|
48
|
+
export const asHashedEvent = (e) => pick(["kind", "tags", "content", "created_at", "pubkey", "id"], e);
|
|
49
|
+
export const asSignedEvent = (e) => pick(["kind", "tags", "content", "created_at", "pubkey", "id", "sig"], e);
|
|
50
|
+
// Utilities for working with events
|
|
51
|
+
export const getIdentifier = (e) => e.tags.find(t => t[0] === "d")?.[1];
|
|
52
|
+
export const getIdOrAddress = (e) => (isReplaceable(e) ? getAddress(e) : e.id);
|
|
53
|
+
export const getIdAndAddress = (e) => isReplaceable(e) ? [e.id, getAddress(e)] : [e.id];
|
|
54
|
+
export const deduplicateEvents = (events) => {
|
|
55
|
+
const eventsByKey = new Map();
|
|
56
|
+
for (const event of events) {
|
|
57
|
+
const key = getIdOrAddress(event);
|
|
58
|
+
if (lte(eventsByKey.get(key)?.created_at, event.created_at)) {
|
|
59
|
+
eventsByKey.set(key, event);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
return Array.from(eventsByKey.values());
|
|
63
|
+
};
|
|
64
|
+
export const isEphemeral = (e) => isEphemeralKind(e.kind);
|
|
65
|
+
export const isReplaceable = (e) => isReplaceableKind(e.kind);
|
|
66
|
+
export const isPlainReplaceable = (e) => isPlainReplaceableKind(e.kind);
|
|
67
|
+
export const isParameterizedReplaceable = (e) => isParameterizedReplaceableKind(e.kind);
|
|
68
|
+
export const getAncestorTags = ({ kind, tags }) => kind === COMMENT ? getCommentTags(tags) : getReplyTags(tags);
|
|
69
|
+
export const getAncestors = ({ kind, tags }) => kind === COMMENT ? getCommentTagValues(tags) : getReplyTagValues(tags);
|
|
70
|
+
export const getParentIdsAndAddrs = (event) => {
|
|
71
|
+
const { roots, replies } = getAncestors(event);
|
|
72
|
+
return replies.length > 0 ? replies : roots;
|
|
73
|
+
};
|
|
74
|
+
export const getParentIdOrAddr = (event) => first(getParentIdsAndAddrs(event));
|
|
75
|
+
export const getParentIds = (event) => {
|
|
76
|
+
const { roots, replies } = mapVals(ids => ids.filter(id => !Address.isAddress(id)), getAncestors(event));
|
|
77
|
+
return replies.length > 0 ? replies : roots;
|
|
78
|
+
};
|
|
79
|
+
export const getParentId = (event) => first(getParentIds(event));
|
|
80
|
+
export const getParentAddrs = (event) => {
|
|
81
|
+
const { roots, replies } = mapVals(ids => ids.filter(id => Address.isAddress(id)), getAncestors(event));
|
|
82
|
+
return replies.length > 0 ? replies : roots;
|
|
83
|
+
};
|
|
84
|
+
export const getParentAddr = (event) => first(getParentAddrs(event));
|
|
85
|
+
export const isChildOf = (child, parent) => {
|
|
86
|
+
const idsAndAddrs = getParentIdsAndAddrs(child);
|
|
87
|
+
return getIdAndAddress(parent).some(x => idsAndAddrs.includes(x));
|
|
88
|
+
};
|
|
89
|
+
export const sortEventsAsc = (events) => sortBy(e => e.created_at, events);
|
|
90
|
+
export const sortEventsDesc = (events) => sortBy(e => -e.created_at, events);
|
|
91
|
+
//# sourceMappingURL=Events.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Events.js","sourceRoot":"","sources":["../../../../util/src/Events.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import type { HashedEvent, TrustedEvent } from "./Events.js";
|
|
2
|
+
export declare const EPOCH = 1609459200;
|
|
3
|
+
export declare const neverFilter: {
|
|
4
|
+
ids: never[];
|
|
5
|
+
};
|
|
6
|
+
export type Filter = {
|
|
7
|
+
ids?: string[];
|
|
8
|
+
kinds?: number[];
|
|
9
|
+
authors?: string[];
|
|
10
|
+
since?: number;
|
|
11
|
+
until?: number;
|
|
12
|
+
limit?: number;
|
|
13
|
+
search?: string;
|
|
14
|
+
[key: `#${string}`]: string[];
|
|
15
|
+
};
|
|
16
|
+
export declare const matchFilter: <E extends HashedEvent>(filter: Filter, event: E) => boolean;
|
|
17
|
+
export declare const matchFilters: <E extends HashedEvent>(filters: Filter[], event: E) => boolean;
|
|
18
|
+
export declare const getFilterId: (filter: Filter) => string;
|
|
19
|
+
export declare const calculateFilterGroup: ({ since, until, limit, search, ...filter }: Filter) => string;
|
|
20
|
+
export declare const unionFilters: (filters: Filter[]) => Filter[];
|
|
21
|
+
export declare const intersectFilters: (groups: Filter[][]) => Filter[];
|
|
22
|
+
export declare const getIdFilters: (idsOrAddresses: string[]) => Filter[];
|
|
23
|
+
export declare const getReplyFilters: (events: TrustedEvent[], filter?: Filter) => ({
|
|
24
|
+
"#a": string[];
|
|
25
|
+
ids?: string[];
|
|
26
|
+
kinds?: number[];
|
|
27
|
+
authors?: string[];
|
|
28
|
+
since?: number;
|
|
29
|
+
until?: number;
|
|
30
|
+
limit?: number;
|
|
31
|
+
search?: string;
|
|
32
|
+
} | {
|
|
33
|
+
"#e": string[];
|
|
34
|
+
ids?: string[];
|
|
35
|
+
kinds?: number[];
|
|
36
|
+
authors?: string[];
|
|
37
|
+
since?: number;
|
|
38
|
+
until?: number;
|
|
39
|
+
limit?: number;
|
|
40
|
+
search?: string;
|
|
41
|
+
})[];
|
|
42
|
+
export declare const addRepostFilters: (filters: Filter[]) => Filter[];
|
|
43
|
+
export declare const getFilterGenerality: (filter: Filter) => number;
|
|
44
|
+
export declare const guessFilterDelta: (filters: Filter[], max?: number) => number;
|
|
45
|
+
export declare const getFilterResultCardinality: (filter: Filter) => number | undefined;
|
|
46
|
+
export declare const trimFilter: (filter: Filter) => Filter;
|
|
47
|
+
export declare const trimFilters: (filters: Filter[]) => Filter[];
|
|
48
|
+
//# sourceMappingURL=Filters.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Filters.d.ts","sourceRoot":"","sources":["../../../../util/src/Filters.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAC,WAAW,EAAE,YAAY,EAAc,MAAM,aAAa,CAAA;AAIvE,eAAO,MAAM,KAAK,aAAa,CAAA;AAE/B,eAAO,MAAM,WAAW;;CAAY,CAAA;AAEpC,MAAM,MAAM,MAAM,GAAG;IACnB,GAAG,CAAC,EAAE,MAAM,EAAE,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,CAAC,GAAG,EAAE,IAAI,MAAM,EAAE,GAAG,MAAM,EAAE,CAAA;CAC9B,CAAA;AAED,eAAO,MAAM,WAAW,GAAI,CAAC,SAAS,WAAW,EAAE,QAAQ,MAAM,EAAE,OAAO,CAAC,YAmB1E,CAAA;AAED,eAAO,MAAM,YAAY,GAAI,CAAC,SAAS,WAAW,EAAE,SAAS,MAAM,EAAE,EAAE,OAAO,CAAC,YAQ9E,CAAA;AAED,eAAO,MAAM,WAAW,GAAI,QAAQ,MAAM,WAczC,CAAA;AAED,eAAO,MAAM,oBAAoB,GAAI,4CAA0C,MAAM,WASpF,CAAA;AAED,eAAO,MAAM,YAAY,GAAI,SAAS,MAAM,EAAE,aAmB7C,CAAA;AAED,eAAO,MAAM,gBAAgB,GAAI,QAAQ,MAAM,EAAE,EAAE,aA8BlD,CAAA;AAED,eAAO,MAAM,YAAY,GAAI,gBAAgB,MAAM,EAAE,aAyBpD,CAAA;AAED,eAAO,MAAM,eAAe,GAAI,QAAQ,YAAY,EAAE,EAAE,SAAQ,MAAW;;UApJnE,MAAM,EAAE;YACN,MAAM,EAAE;cACN,MAAM,EAAE;YACV,MAAM;YACN,MAAM;YACN,MAAM;aACL,MAAM;;;UANT,MAAM,EAAE;YACN,MAAM,EAAE;cACN,MAAM,EAAE;YACV,MAAM;YACN,MAAM;YACN,MAAM;aACL,MAAM;IAqKhB,CAAA;AAED,eAAO,MAAM,gBAAgB,GAAI,SAAS,MAAM,EAAE,aAmB9C,CAAA;AAEJ,eAAO,MAAM,mBAAmB,GAAI,QAAQ,MAAM,WAgBjD,CAAA;AAED,eAAO,MAAM,gBAAgB,GAAI,SAAS,MAAM,EAAE,EAAE,YAAkB,WACO,CAAA;AAG7E,eAAO,MAAM,0BAA0B,GAAI,QAAQ,MAAM,uBAMxD,CAAA;AAED,eAAO,MAAM,UAAU,GAAI,QAAQ,MAAM,KAAG,MAI/B,CAAA;AAEb,eAAO,MAAM,WAAW,GAAI,SAAS,MAAM,EAAE,aAA4B,CAAA"}
|
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
import { matchFilter as nostrToolsMatchFilter } from "nostr-tools/filter";
|
|
2
|
+
import { without, uniqBy, prop, mapVals, shuffle, avg, hash, groupBy, randomId, uniq, } from "@welshman/lib";
|
|
3
|
+
import { isReplaceableKind } from "./Kinds.js";
|
|
4
|
+
import { Address, getAddress } from "./Address.js";
|
|
5
|
+
export const EPOCH = 1609459200;
|
|
6
|
+
export const neverFilter = { ids: [] };
|
|
7
|
+
export const matchFilter = (filter, event) => {
|
|
8
|
+
if (!nostrToolsMatchFilter(filter, event)) {
|
|
9
|
+
return false;
|
|
10
|
+
}
|
|
11
|
+
if (filter.search) {
|
|
12
|
+
const content = event.content.toLowerCase();
|
|
13
|
+
const terms = filter.search.toLowerCase().split(/\s+/g);
|
|
14
|
+
for (const term of terms) {
|
|
15
|
+
if (content.includes(term)) {
|
|
16
|
+
return true;
|
|
17
|
+
}
|
|
18
|
+
return false;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
return true;
|
|
22
|
+
};
|
|
23
|
+
export const matchFilters = (filters, event) => {
|
|
24
|
+
for (const filter of filters) {
|
|
25
|
+
if (matchFilter(filter, event)) {
|
|
26
|
+
return true;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
return false;
|
|
30
|
+
};
|
|
31
|
+
export const getFilterId = (filter) => {
|
|
32
|
+
const keys = Object.keys(filter);
|
|
33
|
+
keys.sort();
|
|
34
|
+
const parts = [];
|
|
35
|
+
for (const k of keys) {
|
|
36
|
+
const v = filter[k];
|
|
37
|
+
const s = Array.isArray(v) ? v.join(",") : v;
|
|
38
|
+
parts.push(`${k}:${s}`);
|
|
39
|
+
}
|
|
40
|
+
return hash(parts.join("|")).toString();
|
|
41
|
+
};
|
|
42
|
+
export const calculateFilterGroup = ({ since, until, limit, search, ...filter }) => {
|
|
43
|
+
const group = Object.keys(filter);
|
|
44
|
+
if (since)
|
|
45
|
+
group.push(`since:${since}`);
|
|
46
|
+
if (until)
|
|
47
|
+
group.push(`until:${until}`);
|
|
48
|
+
if (limit)
|
|
49
|
+
group.push(`limit:${randomId()}`);
|
|
50
|
+
if (search)
|
|
51
|
+
group.push(`search:${search}`);
|
|
52
|
+
return group.sort().join("-");
|
|
53
|
+
};
|
|
54
|
+
export const unionFilters = (filters) => {
|
|
55
|
+
const result = [];
|
|
56
|
+
// Group, but also get unique filters by ids because duplicates can come through subscribe
|
|
57
|
+
for (const group of groupBy(calculateFilterGroup, uniqBy(getFilterId, filters)).values()) {
|
|
58
|
+
const newFilter = {};
|
|
59
|
+
for (const k of Object.keys(group[0])) {
|
|
60
|
+
if (["since", "until", "limit", "search"].includes(k)) {
|
|
61
|
+
newFilter[k] = group[0][k];
|
|
62
|
+
}
|
|
63
|
+
else {
|
|
64
|
+
newFilter[k] = uniq(group.flatMap(prop(k)));
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
result.push(newFilter);
|
|
68
|
+
}
|
|
69
|
+
return result;
|
|
70
|
+
};
|
|
71
|
+
export const intersectFilters = (groups) => {
|
|
72
|
+
let result = groups[0];
|
|
73
|
+
for (const filters of groups.slice(1)) {
|
|
74
|
+
result = result.flatMap(f1 => {
|
|
75
|
+
return filters.map(f2 => {
|
|
76
|
+
const f3 = {};
|
|
77
|
+
for (const k of uniq([...Object.keys(f1), ...Object.keys(f2)])) {
|
|
78
|
+
if (k === "since" || k === "limit") {
|
|
79
|
+
f3[k] = Math.max(f1[k] || 0, f2[k] || 0);
|
|
80
|
+
}
|
|
81
|
+
else if (k === "until") {
|
|
82
|
+
f3[k] = Math.min(f1[k] || f2[k] || 0, f2[k] || f1[k] || 0);
|
|
83
|
+
}
|
|
84
|
+
else if (k === "search") {
|
|
85
|
+
if (f1[k] && f2[k] && f1[k] !== f2[k]) {
|
|
86
|
+
f3[k] = [f1[k], f2[k]].join(" ");
|
|
87
|
+
}
|
|
88
|
+
else {
|
|
89
|
+
f3[k] = f1[k] || f2[k];
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
else {
|
|
93
|
+
f3[k] = uniq([...(f1[k] || []), ...(f2[k] || [])]);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
return f3;
|
|
97
|
+
});
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
return unionFilters(result);
|
|
101
|
+
};
|
|
102
|
+
export const getIdFilters = (idsOrAddresses) => {
|
|
103
|
+
const ids = [];
|
|
104
|
+
const aFilters = [];
|
|
105
|
+
for (const idOrAddress of idsOrAddresses) {
|
|
106
|
+
if (Address.isAddress(idOrAddress)) {
|
|
107
|
+
const { kind, pubkey, identifier } = Address.from(idOrAddress);
|
|
108
|
+
if (identifier) {
|
|
109
|
+
aFilters.push({ kinds: [kind], authors: [pubkey], "#d": [identifier] });
|
|
110
|
+
}
|
|
111
|
+
else {
|
|
112
|
+
aFilters.push({ kinds: [kind], authors: [pubkey] });
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
else {
|
|
116
|
+
ids.push(idOrAddress);
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
const filters = unionFilters(aFilters);
|
|
120
|
+
if (ids.length > 0) {
|
|
121
|
+
filters.push({ ids });
|
|
122
|
+
}
|
|
123
|
+
return filters;
|
|
124
|
+
};
|
|
125
|
+
export const getReplyFilters = (events, filter = {}) => {
|
|
126
|
+
const a = [];
|
|
127
|
+
const e = [];
|
|
128
|
+
for (const event of events) {
|
|
129
|
+
e.push(event.id);
|
|
130
|
+
if (isReplaceableKind(event.kind)) {
|
|
131
|
+
a.push(getAddress(event));
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
const filters = [];
|
|
135
|
+
if (a.length > 0) {
|
|
136
|
+
filters.push({ ...filter, "#a": a });
|
|
137
|
+
}
|
|
138
|
+
if (e.length > 0) {
|
|
139
|
+
filters.push({ ...filter, "#e": e });
|
|
140
|
+
}
|
|
141
|
+
return filters;
|
|
142
|
+
};
|
|
143
|
+
export const addRepostFilters = (filters) => filters.flatMap(original => {
|
|
144
|
+
const filterChunk = [original];
|
|
145
|
+
if (!original.kinds) {
|
|
146
|
+
filterChunk.push({ ...original, kinds: [6, 16] });
|
|
147
|
+
}
|
|
148
|
+
else {
|
|
149
|
+
if (original.kinds.includes(1)) {
|
|
150
|
+
filterChunk.push({ ...original, kinds: [6] });
|
|
151
|
+
}
|
|
152
|
+
const otherKinds = without([1], original.kinds);
|
|
153
|
+
if (otherKinds.length > 0) {
|
|
154
|
+
filterChunk.push({ ...original, kinds: [16], "#k": otherKinds.map(String) });
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
return filterChunk;
|
|
158
|
+
});
|
|
159
|
+
export const getFilterGenerality = (filter) => {
|
|
160
|
+
if (filter.ids || filter["#e"] || filter["#a"]) {
|
|
161
|
+
return 0;
|
|
162
|
+
}
|
|
163
|
+
const hasTags = Object.keys(filter).find((k) => k.startsWith("#"));
|
|
164
|
+
if (filter.authors && hasTags) {
|
|
165
|
+
return 0.2;
|
|
166
|
+
}
|
|
167
|
+
if (filter.authors) {
|
|
168
|
+
return Math.min(1, filter.authors.length / 300);
|
|
169
|
+
}
|
|
170
|
+
return 1;
|
|
171
|
+
};
|
|
172
|
+
export const guessFilterDelta = (filters, max = 60 * 60 * 24) => Math.round(max * Math.max(0.01, 1 - avg(filters.map(getFilterGenerality))));
|
|
173
|
+
// If a filter is specifying ids, we know how many results to expect
|
|
174
|
+
export const getFilterResultCardinality = (filter) => {
|
|
175
|
+
if (filter.ids) {
|
|
176
|
+
return filter.ids.length;
|
|
177
|
+
}
|
|
178
|
+
return undefined;
|
|
179
|
+
};
|
|
180
|
+
export const trimFilter = (filter) => mapVals(v => (Array.isArray(v) && v.length > 1000 ? shuffle(v).slice(0, 1000) : v), filter);
|
|
181
|
+
export const trimFilters = (filters) => filters.map(trimFilter);
|
|
182
|
+
//# sourceMappingURL=Filters.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Filters.js","sourceRoot":"","sources":["../../../../util/src/Filters.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { Maybe } from "@welshman/lib";
|
|
2
|
+
/**
|
|
3
|
+
* NIP-05: mapping nostr public keys to DNS-based internet identifiers (e.g.
|
|
4
|
+
* `name@example.com`), resolved via each domain's `/.well-known/nostr.json`.
|
|
5
|
+
*/
|
|
6
|
+
export type Handle = {
|
|
7
|
+
nip05: string;
|
|
8
|
+
pubkey?: string;
|
|
9
|
+
nip46?: string[];
|
|
10
|
+
relays?: string[];
|
|
11
|
+
};
|
|
12
|
+
export declare function queryProfile(nip05: string): Promise<Maybe<Handle>>;
|
|
13
|
+
export declare const displayNip05: (nip05: string) => string;
|
|
14
|
+
export declare const displayHandle: (handle: Handle) => string;
|
|
15
|
+
//# sourceMappingURL=Handles.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Handles.d.ts","sourceRoot":"","sources":["../../../../util/src/Handles.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,KAAK,EAAC,MAAM,eAAe,CAAA;AAExC;;;GAGG;AACH,MAAM,MAAM,MAAM,GAAG;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;CAClB,CAAA;AAED,wBAAsB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CA2BxE;AAED,eAAO,MAAM,YAAY,GAAI,OAAO,MAAM,WACgB,CAAA;AAE1D,eAAO,MAAM,aAAa,GAAI,QAAQ,MAAM,WAA+B,CAAA"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { fetchJson, last } from "@welshman/lib";
|
|
2
|
+
export async function queryProfile(nip05) {
|
|
3
|
+
const parts = nip05.split("@");
|
|
4
|
+
const name = parts.length > 1 ? parts[0] : "_";
|
|
5
|
+
const domain = last(parts);
|
|
6
|
+
try {
|
|
7
|
+
const { names, relays = {}, nip46 = {}, } = await fetchJson(`https://${domain}/.well-known/nostr.json?name=${name}`);
|
|
8
|
+
const pubkey = names[name];
|
|
9
|
+
if (!pubkey) {
|
|
10
|
+
return undefined;
|
|
11
|
+
}
|
|
12
|
+
return {
|
|
13
|
+
nip05,
|
|
14
|
+
pubkey,
|
|
15
|
+
nip46: nip46[pubkey],
|
|
16
|
+
relays: relays[pubkey],
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
catch (_e) {
|
|
20
|
+
return undefined;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
export const displayNip05 = (nip05) => nip05?.startsWith("_@") ? last(nip05.split("@")) : nip05;
|
|
24
|
+
export const displayHandle = (handle) => displayNip05(handle.nip05);
|
|
25
|
+
//# sourceMappingURL=Handles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Handles.js","sourceRoot":"","sources":["../../../../util/src/Handles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAE,IAAI,EAAC,MAAM,eAAe,CAAA;AAc7C,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,KAAa;IAC9C,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC9B,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAA;IAC9C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAA;IAE1B,IAAI,CAAC;QACH,MAAM,EACJ,KAAK,EACL,MAAM,GAAG,EAAE,EACX,KAAK,GAAG,EAAE,GACX,GAAG,MAAM,SAAS,CAAC,WAAW,MAAM,gCAAgC,IAAI,EAAE,CAAC,CAAA;QAE5E,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,CAAA;QAE1B,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,SAAS,CAAA;QAClB,CAAC;QAED,OAAO;YACL,KAAK;YACL,MAAM;YACN,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC;YACpB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;SACvB,CAAA;IACH,CAAC;IAAC,OAAO,EAAE,EAAE,CAAC;QACZ,OAAO,SAAS,CAAA;IAClB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,KAAa,EAAE,EAAE,CAC5C,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;AAE1D,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,MAAc,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { HashedEvent, EventTemplate, StampedEvent, OwnedEvent } from "./Events.js";
|
|
2
|
+
export declare const makeSecret: () => string;
|
|
3
|
+
export declare const getPubkey: (secret: string) => string;
|
|
4
|
+
export declare const getHash: (event: OwnedEvent) => string;
|
|
5
|
+
export declare const getSig: (event: HashedEvent, secret: string) => string;
|
|
6
|
+
export declare const stamp: (event: EventTemplate, created_at?: number) => {
|
|
7
|
+
created_at: number;
|
|
8
|
+
tags: string[][];
|
|
9
|
+
content: string;
|
|
10
|
+
kind: number;
|
|
11
|
+
};
|
|
12
|
+
export declare const own: (event: StampedEvent, pubkey: string) => {
|
|
13
|
+
pubkey: string;
|
|
14
|
+
tags: string[][];
|
|
15
|
+
content: string;
|
|
16
|
+
kind: number;
|
|
17
|
+
created_at: number;
|
|
18
|
+
};
|
|
19
|
+
export declare const hash: (event: OwnedEvent) => {
|
|
20
|
+
id: string;
|
|
21
|
+
tags: string[][];
|
|
22
|
+
content: string;
|
|
23
|
+
kind: number;
|
|
24
|
+
created_at: number;
|
|
25
|
+
pubkey: string;
|
|
26
|
+
};
|
|
27
|
+
export declare const sign: (event: HashedEvent, secret: string) => {
|
|
28
|
+
sig: string;
|
|
29
|
+
tags: string[][];
|
|
30
|
+
content: string;
|
|
31
|
+
kind: number;
|
|
32
|
+
created_at: number;
|
|
33
|
+
pubkey: string;
|
|
34
|
+
id: string;
|
|
35
|
+
};
|
|
36
|
+
export declare const prep: (event: EventTemplate, pubkey: string, created_at?: number) => HashedEvent;
|
|
37
|
+
//# sourceMappingURL=Keys.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Keys.d.ts","sourceRoot":"","sources":["../../../../util/src/Keys.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,WAAW,EACX,aAAa,EACb,YAAY,EACZ,UAAU,EAIX,MAAM,aAAa,CAAA;AAEpB,eAAO,MAAM,UAAU,cAAwC,CAAA;AAE/D,eAAO,MAAM,SAAS,GAAI,QAAQ,MAAM,WAAqC,CAAA;AAE7E,eAAO,MAAM,OAAO,GAAI,OAAO,UAAU,WAAwB,CAAA;AAEjE,eAAO,MAAM,MAAM,GAAI,OAAO,WAAW,EAAE,QAAQ,MAAM,WACb,CAAA;AAE5C,eAAO,MAAM,KAAK,GAAI,OAAO,aAAa,EAAE,mBAAkB;;;;;CAA6B,CAAA;AAE3F,eAAO,MAAM,GAAG,GAAI,OAAO,YAAY,EAAE,QAAQ,MAAM;;;;;;CAAyB,CAAA;AAEhF,eAAO,MAAM,IAAI,GAAI,OAAO,UAAU;;;;;;;CAAqC,CAAA;AAE3E,eAAO,MAAM,IAAI,GAAI,OAAO,WAAW,EAAE,QAAQ,MAAM;;;;;;;;CAA6C,CAAA;AAEpG,eAAO,MAAM,IAAI,GAAI,OAAO,aAAa,EAAE,QAAQ,MAAM,EAAE,mBAAkB,KAa3D,WACjB,CAAA"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { schnorr } from "@noble/curves/secp256k1";
|
|
2
|
+
import { bytesToHex, hexToBytes } from "@noble/curves/abstract/utils";
|
|
3
|
+
import { generateSecretKey, getPublicKey, getEventHash } from "nostr-tools/pure";
|
|
4
|
+
import { now } from "@welshman/lib";
|
|
5
|
+
import { isStampedEvent, isOwnedEvent, isHashedEvent, } from "./Events.js";
|
|
6
|
+
export const makeSecret = () => bytesToHex(generateSecretKey());
|
|
7
|
+
export const getPubkey = (secret) => getPublicKey(hexToBytes(secret));
|
|
8
|
+
export const getHash = (event) => getEventHash(event);
|
|
9
|
+
export const getSig = (event, secret) => bytesToHex(schnorr.sign(event.id, secret));
|
|
10
|
+
export const stamp = (event, created_at = now()) => ({ ...event, created_at });
|
|
11
|
+
export const own = (event, pubkey) => ({ ...event, pubkey });
|
|
12
|
+
export const hash = (event) => ({ ...event, id: getHash(event) });
|
|
13
|
+
export const sign = (event, secret) => ({ ...event, sig: getSig(event, secret) });
|
|
14
|
+
export const prep = (event, pubkey, created_at = now()) => {
|
|
15
|
+
if (!isStampedEvent(event)) {
|
|
16
|
+
event = stamp(event, created_at);
|
|
17
|
+
}
|
|
18
|
+
if (!isOwnedEvent(event)) {
|
|
19
|
+
event = own(event, pubkey);
|
|
20
|
+
}
|
|
21
|
+
if (!isHashedEvent(event)) {
|
|
22
|
+
event = hash(event);
|
|
23
|
+
}
|
|
24
|
+
return event;
|
|
25
|
+
};
|
|
26
|
+
//# sourceMappingURL=Keys.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Keys.js","sourceRoot":"","sources":["../../../../util/src/Keys.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAC,MAAM,yBAAyB,CAAA;AAC/C,OAAO,EAAC,UAAU,EAAE,UAAU,EAAC,MAAM,8BAA8B,CAAA;AACnE,OAAO,EAAC,iBAAiB,EAAE,YAAY,EAAE,YAAY,EAAC,MAAM,kBAAkB,CAAA;AAC9E,OAAO,EAAC,GAAG,EAAC,MAAM,eAAe,CAAA;AACjC,OAAO,EAKL,cAAc,EACd,YAAY,EACZ,aAAa,GACd,MAAM,aAAa,CAAA;AAEpB,MAAM,CAAC,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC,CAAA;AAE/D,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,MAAc,EAAE,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAA;AAE7E,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,KAAiB,EAAE,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,CAAA;AAEjE,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,KAAkB,EAAE,MAAc,EAAE,EAAE,CAC3D,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAA;AAE5C,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,KAAoB,EAAE,UAAU,GAAG,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC,EAAC,GAAG,KAAK,EAAE,UAAU,EAAC,CAAC,CAAA;AAE3F,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,KAAmB,EAAE,MAAc,EAAE,EAAE,CAAC,CAAC,EAAC,GAAG,KAAK,EAAE,MAAM,EAAC,CAAC,CAAA;AAEhF,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,KAAiB,EAAE,EAAE,CAAC,CAAC,EAAC,GAAG,KAAK,EAAE,EAAE,EAAE,OAAO,CAAC,KAAK,CAAC,EAAC,CAAC,CAAA;AAE3E,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,KAAkB,EAAE,MAAc,EAAE,EAAE,CAAC,CAAC,EAAC,GAAG,KAAK,EAAE,GAAG,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,EAAC,CAAC,CAAA;AAEpG,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,KAAoB,EAAE,MAAc,EAAE,UAAU,GAAG,GAAG,EAAE,EAAE,EAAE;IAC/E,IAAI,CAAC,cAAc,CAAC,KAAqB,CAAC,EAAE,CAAC;QAC3C,KAAK,GAAG,KAAK,CAAC,KAAK,EAAE,UAAU,CAAC,CAAA;IAClC,CAAC;IAED,IAAI,CAAC,YAAY,CAAC,KAAmB,CAAC,EAAE,CAAC;QACvC,KAAK,GAAG,GAAG,CAAC,KAAqB,EAAE,MAAM,CAAC,CAAA;IAC5C,CAAC;IAED,IAAI,CAAC,aAAa,CAAC,KAAoB,CAAC,EAAE,CAAC;QACzC,KAAK,GAAG,IAAI,CAAC,KAAmB,CAAC,CAAA;IACnC,CAAC;IAED,OAAO,KAAoB,CAAA;AAC7B,CAAC,CAAA"}
|