@atproto/bsky 0.0.111 → 0.0.113
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/CHANGELOG.md +21 -0
- package/dist/api/app/bsky/actor/getSuggestions.d.ts.map +1 -1
- package/dist/api/app/bsky/actor/getSuggestions.js.map +1 -1
- package/dist/api/app/bsky/feed/getAuthorFeed.d.ts.map +1 -1
- package/dist/api/app/bsky/feed/getAuthorFeed.js +4 -2
- package/dist/api/app/bsky/feed/getAuthorFeed.js.map +1 -1
- package/dist/api/app/bsky/feed/getFeed.d.ts.map +1 -1
- package/dist/api/app/bsky/feed/getFeed.js +1 -0
- package/dist/api/app/bsky/feed/getFeed.js.map +1 -1
- package/dist/api/app/bsky/graph/getSuggestedFollowsByActor.d.ts.map +1 -1
- package/dist/api/app/bsky/graph/getSuggestedFollowsByActor.js.map +1 -1
- package/dist/api/blob-resolver.d.ts.map +1 -1
- package/dist/api/blob-resolver.js +2 -0
- package/dist/api/blob-resolver.js.map +1 -1
- package/dist/api/util.d.ts +1 -0
- package/dist/api/util.d.ts.map +1 -1
- package/dist/api/util.js +2 -1
- package/dist/api/util.js.map +1 -1
- package/dist/data-plane/server/routes/relationships.d.ts.map +1 -1
- package/dist/data-plane/server/routes/relationships.js +51 -31
- package/dist/data-plane/server/routes/relationships.js.map +1 -1
- package/dist/hydration/graph.d.ts +7 -4
- package/dist/hydration/graph.d.ts.map +1 -1
- package/dist/hydration/graph.js +17 -19
- package/dist/hydration/graph.js.map +1 -1
- package/dist/hydration/hydrator.d.ts +3 -1
- package/dist/hydration/hydrator.d.ts.map +1 -1
- package/dist/hydration/hydrator.js +49 -17
- package/dist/hydration/hydrator.js.map +1 -1
- package/dist/lexicon/types/app/bsky/actor/getPreferences.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/actor/getPreferences.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/actor/getProfile.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/actor/getProfile.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/actor/getProfiles.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/actor/getProfiles.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/actor/getSuggestions.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/actor/getSuggestions.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/actor/putPreferences.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/actor/putPreferences.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/actor/searchActors.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/actor/searchActors.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/actor/searchActorsTypeahead.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/actor/searchActorsTypeahead.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/feed/describeFeedGenerator.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/feed/describeFeedGenerator.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/feed/describeFeedGenerator.js.map +1 -1
- package/dist/lexicon/types/app/bsky/feed/getActorFeeds.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/feed/getActorFeeds.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/feed/getActorLikes.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/feed/getActorLikes.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/feed/getAuthorFeed.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/feed/getAuthorFeed.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/feed/getFeed.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/feed/getFeed.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/feed/getFeedGenerator.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/feed/getFeedGenerator.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/feed/getFeedGenerators.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/feed/getFeedGenerators.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/feed/getFeedSkeleton.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/feed/getFeedSkeleton.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/feed/getLikes.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/feed/getLikes.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/feed/getLikes.js.map +1 -1
- package/dist/lexicon/types/app/bsky/feed/getListFeed.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/feed/getListFeed.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/feed/getPostThread.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/feed/getPostThread.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/feed/getPosts.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/feed/getPosts.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/feed/getQuotes.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/feed/getQuotes.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/feed/getRepostedBy.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/feed/getRepostedBy.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/feed/getSuggestedFeeds.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/feed/getSuggestedFeeds.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/feed/getTimeline.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/feed/getTimeline.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/feed/searchPosts.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/feed/searchPosts.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/feed/sendInteractions.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/feed/sendInteractions.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/graph/getActorStarterPacks.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/graph/getActorStarterPacks.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/graph/getBlocks.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/graph/getBlocks.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/graph/getFollowers.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/graph/getFollowers.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/graph/getFollows.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/graph/getFollows.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/graph/getKnownFollowers.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/graph/getKnownFollowers.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/graph/getList.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/graph/getList.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/graph/getListBlocks.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/graph/getListBlocks.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/graph/getListMutes.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/graph/getListMutes.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/graph/getLists.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/graph/getLists.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/graph/getMutes.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/graph/getMutes.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/graph/getRelationships.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/graph/getRelationships.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/graph/getStarterPack.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/graph/getStarterPack.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/graph/getStarterPacks.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/graph/getStarterPacks.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/graph/getSuggestedFollowsByActor.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/graph/getSuggestedFollowsByActor.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/graph/muteActor.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/graph/muteActor.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/graph/muteActorList.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/graph/muteActorList.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/graph/muteThread.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/graph/muteThread.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/graph/searchStarterPacks.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/graph/searchStarterPacks.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/graph/unmuteActor.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/graph/unmuteActor.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/graph/unmuteActorList.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/graph/unmuteActorList.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/graph/unmuteThread.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/graph/unmuteThread.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/labeler/getServices.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/labeler/getServices.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/notification/getUnreadCount.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/notification/getUnreadCount.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/notification/listNotifications.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/notification/listNotifications.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/notification/listNotifications.js.map +1 -1
- package/dist/lexicon/types/app/bsky/notification/putPreferences.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/notification/putPreferences.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/notification/registerPush.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/notification/registerPush.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/notification/updateSeen.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/notification/updateSeen.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/unspecced/getConfig.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/unspecced/getConfig.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/unspecced/getPopularFeedGenerators.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/unspecced/getPopularFeedGenerators.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/unspecced/getSuggestionsSkeleton.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/unspecced/getSuggestionsSkeleton.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/unspecced/getTaggedSuggestions.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/unspecced/getTaggedSuggestions.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/unspecced/getTaggedSuggestions.js.map +1 -1
- package/dist/lexicon/types/app/bsky/unspecced/getTrendingTopics.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/unspecced/getTrendingTopics.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/unspecced/searchActorsSkeleton.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/unspecced/searchActorsSkeleton.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/unspecced/searchPostsSkeleton.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/unspecced/searchPostsSkeleton.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/unspecced/searchStarterPacksSkeleton.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/unspecced/searchStarterPacksSkeleton.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/video/getJobStatus.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/video/getJobStatus.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/video/getUploadLimits.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/video/getUploadLimits.d.ts.map +1 -1
- package/dist/lexicon/types/app/bsky/video/uploadVideo.d.ts +1 -0
- package/dist/lexicon/types/app/bsky/video/uploadVideo.d.ts.map +1 -1
- package/dist/lexicon/types/chat/bsky/actor/deleteAccount.d.ts +1 -0
- package/dist/lexicon/types/chat/bsky/actor/deleteAccount.d.ts.map +1 -1
- package/dist/lexicon/types/chat/bsky/actor/exportAccountData.d.ts +1 -0
- package/dist/lexicon/types/chat/bsky/actor/exportAccountData.d.ts.map +1 -1
- package/dist/lexicon/types/chat/bsky/convo/deleteMessageForSelf.d.ts +1 -0
- package/dist/lexicon/types/chat/bsky/convo/deleteMessageForSelf.d.ts.map +1 -1
- package/dist/lexicon/types/chat/bsky/convo/getConvo.d.ts +1 -0
- package/dist/lexicon/types/chat/bsky/convo/getConvo.d.ts.map +1 -1
- package/dist/lexicon/types/chat/bsky/convo/getConvoForMembers.d.ts +1 -0
- package/dist/lexicon/types/chat/bsky/convo/getConvoForMembers.d.ts.map +1 -1
- package/dist/lexicon/types/chat/bsky/convo/getLog.d.ts +1 -0
- package/dist/lexicon/types/chat/bsky/convo/getLog.d.ts.map +1 -1
- package/dist/lexicon/types/chat/bsky/convo/getMessages.d.ts +1 -0
- package/dist/lexicon/types/chat/bsky/convo/getMessages.d.ts.map +1 -1
- package/dist/lexicon/types/chat/bsky/convo/leaveConvo.d.ts +1 -0
- package/dist/lexicon/types/chat/bsky/convo/leaveConvo.d.ts.map +1 -1
- package/dist/lexicon/types/chat/bsky/convo/listConvos.d.ts +1 -0
- package/dist/lexicon/types/chat/bsky/convo/listConvos.d.ts.map +1 -1
- package/dist/lexicon/types/chat/bsky/convo/muteConvo.d.ts +1 -0
- package/dist/lexicon/types/chat/bsky/convo/muteConvo.d.ts.map +1 -1
- package/dist/lexicon/types/chat/bsky/convo/sendMessage.d.ts +1 -0
- package/dist/lexicon/types/chat/bsky/convo/sendMessage.d.ts.map +1 -1
- package/dist/lexicon/types/chat/bsky/convo/sendMessageBatch.d.ts +1 -0
- package/dist/lexicon/types/chat/bsky/convo/sendMessageBatch.d.ts.map +1 -1
- package/dist/lexicon/types/chat/bsky/convo/sendMessageBatch.js.map +1 -1
- package/dist/lexicon/types/chat/bsky/convo/unmuteConvo.d.ts +1 -0
- package/dist/lexicon/types/chat/bsky/convo/unmuteConvo.d.ts.map +1 -1
- package/dist/lexicon/types/chat/bsky/convo/updateRead.d.ts +1 -0
- package/dist/lexicon/types/chat/bsky/convo/updateRead.d.ts.map +1 -1
- package/dist/lexicon/types/chat/bsky/moderation/getActorMetadata.d.ts +1 -0
- package/dist/lexicon/types/chat/bsky/moderation/getActorMetadata.d.ts.map +1 -1
- package/dist/lexicon/types/chat/bsky/moderation/getActorMetadata.js.map +1 -1
- package/dist/lexicon/types/chat/bsky/moderation/getMessageContext.d.ts +1 -0
- package/dist/lexicon/types/chat/bsky/moderation/getMessageContext.d.ts.map +1 -1
- package/dist/lexicon/types/chat/bsky/moderation/updateActorAccess.d.ts +1 -0
- package/dist/lexicon/types/chat/bsky/moderation/updateActorAccess.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/admin/deleteAccount.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/admin/deleteAccount.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/admin/disableAccountInvites.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/admin/disableAccountInvites.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/admin/disableInviteCodes.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/admin/disableInviteCodes.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/admin/enableAccountInvites.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/admin/enableAccountInvites.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/admin/getAccountInfo.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/admin/getAccountInfo.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/admin/getAccountInfos.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/admin/getAccountInfos.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/admin/getInviteCodes.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/admin/getInviteCodes.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/admin/getSubjectStatus.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/admin/getSubjectStatus.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/admin/searchAccounts.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/admin/searchAccounts.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/admin/sendEmail.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/admin/sendEmail.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/admin/updateAccountEmail.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/admin/updateAccountEmail.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/admin/updateAccountHandle.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/admin/updateAccountHandle.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/admin/updateAccountPassword.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/admin/updateAccountPassword.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/admin/updateSubjectStatus.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/admin/updateSubjectStatus.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/identity/getRecommendedDidCredentials.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/identity/getRecommendedDidCredentials.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/identity/requestPlcOperationSignature.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/identity/requestPlcOperationSignature.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/identity/resolveHandle.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/identity/resolveHandle.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/identity/signPlcOperation.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/identity/signPlcOperation.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/identity/submitPlcOperation.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/identity/submitPlcOperation.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/identity/updateHandle.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/identity/updateHandle.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/label/queryLabels.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/label/queryLabels.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/moderation/createReport.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/moderation/createReport.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/repo/applyWrites.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/repo/applyWrites.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/repo/applyWrites.js.map +1 -1
- package/dist/lexicon/types/com/atproto/repo/createRecord.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/repo/createRecord.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/repo/deleteRecord.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/repo/deleteRecord.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/repo/describeRepo.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/repo/describeRepo.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/repo/getRecord.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/repo/getRecord.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/repo/importRepo.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/repo/importRepo.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/repo/listMissingBlobs.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/repo/listMissingBlobs.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/repo/listMissingBlobs.js.map +1 -1
- package/dist/lexicon/types/com/atproto/repo/listRecords.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/repo/listRecords.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/repo/listRecords.js.map +1 -1
- package/dist/lexicon/types/com/atproto/repo/putRecord.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/repo/putRecord.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/repo/uploadBlob.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/repo/uploadBlob.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/server/activateAccount.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/server/activateAccount.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/server/checkAccountStatus.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/server/checkAccountStatus.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/server/confirmEmail.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/server/confirmEmail.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/server/createAccount.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/server/createAccount.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/server/createAppPassword.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/server/createAppPassword.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/server/createAppPassword.js.map +1 -1
- package/dist/lexicon/types/com/atproto/server/createInviteCode.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/server/createInviteCode.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/server/createInviteCodes.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/server/createInviteCodes.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/server/createInviteCodes.js.map +1 -1
- package/dist/lexicon/types/com/atproto/server/createSession.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/server/createSession.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/server/deactivateAccount.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/server/deactivateAccount.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/server/deleteAccount.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/server/deleteAccount.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/server/deleteSession.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/server/deleteSession.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/server/describeServer.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/server/describeServer.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/server/describeServer.js.map +1 -1
- package/dist/lexicon/types/com/atproto/server/getAccountInviteCodes.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/server/getAccountInviteCodes.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/server/getServiceAuth.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/server/getServiceAuth.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/server/getSession.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/server/getSession.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/server/listAppPasswords.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/server/listAppPasswords.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/server/listAppPasswords.js.map +1 -1
- package/dist/lexicon/types/com/atproto/server/refreshSession.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/server/refreshSession.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/server/requestAccountDelete.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/server/requestAccountDelete.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/server/requestEmailConfirmation.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/server/requestEmailConfirmation.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/server/requestEmailUpdate.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/server/requestEmailUpdate.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/server/requestPasswordReset.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/server/requestPasswordReset.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/server/reserveSigningKey.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/server/reserveSigningKey.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/server/resetPassword.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/server/resetPassword.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/server/revokeAppPassword.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/server/revokeAppPassword.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/server/updateEmail.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/server/updateEmail.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/sync/getBlob.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/sync/getBlob.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/sync/getBlocks.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/sync/getBlocks.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/sync/getCheckout.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/sync/getCheckout.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/sync/getHead.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/sync/getHead.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/sync/getLatestCommit.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/sync/getLatestCommit.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/sync/getRecord.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/sync/getRecord.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/sync/getRepo.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/sync/getRepo.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/sync/getRepoStatus.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/sync/getRepoStatus.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/sync/listBlobs.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/sync/listBlobs.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/sync/listRepos.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/sync/listRepos.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/sync/listRepos.js.map +1 -1
- package/dist/lexicon/types/com/atproto/sync/notifyOfUpdate.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/sync/notifyOfUpdate.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/sync/requestCrawl.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/sync/requestCrawl.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/temp/addReservedHandle.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/temp/addReservedHandle.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/temp/checkSignupQueue.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/temp/checkSignupQueue.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/temp/fetchLabels.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/temp/fetchLabels.d.ts.map +1 -1
- package/dist/lexicon/types/com/atproto/temp/requestPhoneVerification.d.ts +1 -0
- package/dist/lexicon/types/com/atproto/temp/requestPhoneVerification.d.ts.map +1 -1
- package/dist/views/index.d.ts +8 -3
- package/dist/views/index.d.ts.map +1 -1
- package/dist/views/index.js +39 -18
- package/dist/views/index.js.map +1 -1
- package/package.json +11 -11
- package/src/api/app/bsky/actor/getSuggestions.ts +4 -3
- package/src/api/app/bsky/feed/getAuthorFeed.ts +8 -2
- package/src/api/app/bsky/feed/getFeed.ts +2 -1
- package/src/api/app/bsky/graph/getSuggestedFollowsByActor.ts +3 -2
- package/src/api/blob-resolver.ts +3 -0
- package/src/api/util.ts +1 -0
- package/src/data-plane/server/routes/relationships.ts +64 -40
- package/src/hydration/graph.ts +23 -23
- package/src/hydration/hydrator.ts +66 -19
- package/src/lexicon/types/app/bsky/actor/getPreferences.ts +1 -0
- package/src/lexicon/types/app/bsky/actor/getProfile.ts +1 -0
- package/src/lexicon/types/app/bsky/actor/getProfiles.ts +1 -0
- package/src/lexicon/types/app/bsky/actor/getSuggestions.ts +1 -0
- package/src/lexicon/types/app/bsky/actor/putPreferences.ts +1 -0
- package/src/lexicon/types/app/bsky/actor/searchActors.ts +1 -0
- package/src/lexicon/types/app/bsky/actor/searchActorsTypeahead.ts +1 -0
- package/src/lexicon/types/app/bsky/feed/describeFeedGenerator.ts +1 -0
- package/src/lexicon/types/app/bsky/feed/getActorFeeds.ts +1 -0
- package/src/lexicon/types/app/bsky/feed/getActorLikes.ts +1 -0
- package/src/lexicon/types/app/bsky/feed/getAuthorFeed.ts +1 -0
- package/src/lexicon/types/app/bsky/feed/getFeed.ts +1 -0
- package/src/lexicon/types/app/bsky/feed/getFeedGenerator.ts +1 -0
- package/src/lexicon/types/app/bsky/feed/getFeedGenerators.ts +1 -0
- package/src/lexicon/types/app/bsky/feed/getFeedSkeleton.ts +1 -0
- package/src/lexicon/types/app/bsky/feed/getLikes.ts +1 -0
- package/src/lexicon/types/app/bsky/feed/getListFeed.ts +1 -0
- package/src/lexicon/types/app/bsky/feed/getPostThread.ts +1 -0
- package/src/lexicon/types/app/bsky/feed/getPosts.ts +1 -0
- package/src/lexicon/types/app/bsky/feed/getQuotes.ts +1 -0
- package/src/lexicon/types/app/bsky/feed/getRepostedBy.ts +1 -0
- package/src/lexicon/types/app/bsky/feed/getSuggestedFeeds.ts +1 -0
- package/src/lexicon/types/app/bsky/feed/getTimeline.ts +1 -0
- package/src/lexicon/types/app/bsky/feed/searchPosts.ts +1 -0
- package/src/lexicon/types/app/bsky/feed/sendInteractions.ts +1 -0
- package/src/lexicon/types/app/bsky/graph/getActorStarterPacks.ts +1 -0
- package/src/lexicon/types/app/bsky/graph/getBlocks.ts +1 -0
- package/src/lexicon/types/app/bsky/graph/getFollowers.ts +1 -0
- package/src/lexicon/types/app/bsky/graph/getFollows.ts +1 -0
- package/src/lexicon/types/app/bsky/graph/getKnownFollowers.ts +1 -0
- package/src/lexicon/types/app/bsky/graph/getList.ts +1 -0
- package/src/lexicon/types/app/bsky/graph/getListBlocks.ts +1 -0
- package/src/lexicon/types/app/bsky/graph/getListMutes.ts +1 -0
- package/src/lexicon/types/app/bsky/graph/getLists.ts +1 -0
- package/src/lexicon/types/app/bsky/graph/getMutes.ts +1 -0
- package/src/lexicon/types/app/bsky/graph/getRelationships.ts +1 -0
- package/src/lexicon/types/app/bsky/graph/getStarterPack.ts +1 -0
- package/src/lexicon/types/app/bsky/graph/getStarterPacks.ts +1 -0
- package/src/lexicon/types/app/bsky/graph/getSuggestedFollowsByActor.ts +1 -0
- package/src/lexicon/types/app/bsky/graph/muteActor.ts +1 -0
- package/src/lexicon/types/app/bsky/graph/muteActorList.ts +1 -0
- package/src/lexicon/types/app/bsky/graph/muteThread.ts +1 -0
- package/src/lexicon/types/app/bsky/graph/searchStarterPacks.ts +1 -0
- package/src/lexicon/types/app/bsky/graph/unmuteActor.ts +1 -0
- package/src/lexicon/types/app/bsky/graph/unmuteActorList.ts +1 -0
- package/src/lexicon/types/app/bsky/graph/unmuteThread.ts +1 -0
- package/src/lexicon/types/app/bsky/labeler/getServices.ts +1 -0
- package/src/lexicon/types/app/bsky/notification/getUnreadCount.ts +1 -0
- package/src/lexicon/types/app/bsky/notification/listNotifications.ts +1 -0
- package/src/lexicon/types/app/bsky/notification/putPreferences.ts +1 -0
- package/src/lexicon/types/app/bsky/notification/registerPush.ts +1 -0
- package/src/lexicon/types/app/bsky/notification/updateSeen.ts +1 -0
- package/src/lexicon/types/app/bsky/unspecced/getConfig.ts +1 -0
- package/src/lexicon/types/app/bsky/unspecced/getPopularFeedGenerators.ts +1 -0
- package/src/lexicon/types/app/bsky/unspecced/getSuggestionsSkeleton.ts +1 -0
- package/src/lexicon/types/app/bsky/unspecced/getTaggedSuggestions.ts +1 -0
- package/src/lexicon/types/app/bsky/unspecced/getTrendingTopics.ts +1 -0
- package/src/lexicon/types/app/bsky/unspecced/searchActorsSkeleton.ts +1 -0
- package/src/lexicon/types/app/bsky/unspecced/searchPostsSkeleton.ts +1 -0
- package/src/lexicon/types/app/bsky/unspecced/searchStarterPacksSkeleton.ts +1 -0
- package/src/lexicon/types/app/bsky/video/getJobStatus.ts +1 -0
- package/src/lexicon/types/app/bsky/video/getUploadLimits.ts +1 -0
- package/src/lexicon/types/app/bsky/video/uploadVideo.ts +1 -0
- package/src/lexicon/types/chat/bsky/actor/deleteAccount.ts +1 -0
- package/src/lexicon/types/chat/bsky/actor/exportAccountData.ts +1 -0
- package/src/lexicon/types/chat/bsky/convo/deleteMessageForSelf.ts +1 -0
- package/src/lexicon/types/chat/bsky/convo/getConvo.ts +1 -0
- package/src/lexicon/types/chat/bsky/convo/getConvoForMembers.ts +1 -0
- package/src/lexicon/types/chat/bsky/convo/getLog.ts +1 -0
- package/src/lexicon/types/chat/bsky/convo/getMessages.ts +1 -0
- package/src/lexicon/types/chat/bsky/convo/leaveConvo.ts +1 -0
- package/src/lexicon/types/chat/bsky/convo/listConvos.ts +1 -0
- package/src/lexicon/types/chat/bsky/convo/muteConvo.ts +1 -0
- package/src/lexicon/types/chat/bsky/convo/sendMessage.ts +1 -0
- package/src/lexicon/types/chat/bsky/convo/sendMessageBatch.ts +1 -0
- package/src/lexicon/types/chat/bsky/convo/unmuteConvo.ts +1 -0
- package/src/lexicon/types/chat/bsky/convo/updateRead.ts +1 -0
- package/src/lexicon/types/chat/bsky/moderation/getActorMetadata.ts +1 -0
- package/src/lexicon/types/chat/bsky/moderation/getMessageContext.ts +1 -0
- package/src/lexicon/types/chat/bsky/moderation/updateActorAccess.ts +1 -0
- package/src/lexicon/types/com/atproto/admin/deleteAccount.ts +1 -0
- package/src/lexicon/types/com/atproto/admin/disableAccountInvites.ts +1 -0
- package/src/lexicon/types/com/atproto/admin/disableInviteCodes.ts +1 -0
- package/src/lexicon/types/com/atproto/admin/enableAccountInvites.ts +1 -0
- package/src/lexicon/types/com/atproto/admin/getAccountInfo.ts +1 -0
- package/src/lexicon/types/com/atproto/admin/getAccountInfos.ts +1 -0
- package/src/lexicon/types/com/atproto/admin/getInviteCodes.ts +1 -0
- package/src/lexicon/types/com/atproto/admin/getSubjectStatus.ts +1 -0
- package/src/lexicon/types/com/atproto/admin/searchAccounts.ts +1 -0
- package/src/lexicon/types/com/atproto/admin/sendEmail.ts +1 -0
- package/src/lexicon/types/com/atproto/admin/updateAccountEmail.ts +1 -0
- package/src/lexicon/types/com/atproto/admin/updateAccountHandle.ts +1 -0
- package/src/lexicon/types/com/atproto/admin/updateAccountPassword.ts +1 -0
- package/src/lexicon/types/com/atproto/admin/updateSubjectStatus.ts +1 -0
- package/src/lexicon/types/com/atproto/identity/getRecommendedDidCredentials.ts +1 -0
- package/src/lexicon/types/com/atproto/identity/requestPlcOperationSignature.ts +1 -0
- package/src/lexicon/types/com/atproto/identity/resolveHandle.ts +1 -0
- package/src/lexicon/types/com/atproto/identity/signPlcOperation.ts +1 -0
- package/src/lexicon/types/com/atproto/identity/submitPlcOperation.ts +1 -0
- package/src/lexicon/types/com/atproto/identity/updateHandle.ts +1 -0
- package/src/lexicon/types/com/atproto/label/queryLabels.ts +1 -0
- package/src/lexicon/types/com/atproto/moderation/createReport.ts +1 -0
- package/src/lexicon/types/com/atproto/repo/applyWrites.ts +1 -0
- package/src/lexicon/types/com/atproto/repo/createRecord.ts +1 -0
- package/src/lexicon/types/com/atproto/repo/deleteRecord.ts +1 -0
- package/src/lexicon/types/com/atproto/repo/describeRepo.ts +1 -0
- package/src/lexicon/types/com/atproto/repo/getRecord.ts +1 -0
- package/src/lexicon/types/com/atproto/repo/importRepo.ts +1 -0
- package/src/lexicon/types/com/atproto/repo/listMissingBlobs.ts +1 -0
- package/src/lexicon/types/com/atproto/repo/listRecords.ts +1 -0
- package/src/lexicon/types/com/atproto/repo/putRecord.ts +1 -0
- package/src/lexicon/types/com/atproto/repo/uploadBlob.ts +1 -0
- package/src/lexicon/types/com/atproto/server/activateAccount.ts +1 -0
- package/src/lexicon/types/com/atproto/server/checkAccountStatus.ts +1 -0
- package/src/lexicon/types/com/atproto/server/confirmEmail.ts +1 -0
- package/src/lexicon/types/com/atproto/server/createAccount.ts +1 -0
- package/src/lexicon/types/com/atproto/server/createAppPassword.ts +1 -0
- package/src/lexicon/types/com/atproto/server/createInviteCode.ts +1 -0
- package/src/lexicon/types/com/atproto/server/createInviteCodes.ts +1 -0
- package/src/lexicon/types/com/atproto/server/createSession.ts +1 -0
- package/src/lexicon/types/com/atproto/server/deactivateAccount.ts +1 -0
- package/src/lexicon/types/com/atproto/server/deleteAccount.ts +1 -0
- package/src/lexicon/types/com/atproto/server/deleteSession.ts +1 -0
- package/src/lexicon/types/com/atproto/server/describeServer.ts +1 -0
- package/src/lexicon/types/com/atproto/server/getAccountInviteCodes.ts +1 -0
- package/src/lexicon/types/com/atproto/server/getServiceAuth.ts +1 -0
- package/src/lexicon/types/com/atproto/server/getSession.ts +1 -0
- package/src/lexicon/types/com/atproto/server/listAppPasswords.ts +1 -0
- package/src/lexicon/types/com/atproto/server/refreshSession.ts +1 -0
- package/src/lexicon/types/com/atproto/server/requestAccountDelete.ts +1 -0
- package/src/lexicon/types/com/atproto/server/requestEmailConfirmation.ts +1 -0
- package/src/lexicon/types/com/atproto/server/requestEmailUpdate.ts +1 -0
- package/src/lexicon/types/com/atproto/server/requestPasswordReset.ts +1 -0
- package/src/lexicon/types/com/atproto/server/reserveSigningKey.ts +1 -0
- package/src/lexicon/types/com/atproto/server/resetPassword.ts +1 -0
- package/src/lexicon/types/com/atproto/server/revokeAppPassword.ts +1 -0
- package/src/lexicon/types/com/atproto/server/updateEmail.ts +1 -0
- package/src/lexicon/types/com/atproto/sync/getBlob.ts +1 -0
- package/src/lexicon/types/com/atproto/sync/getBlocks.ts +1 -0
- package/src/lexicon/types/com/atproto/sync/getCheckout.ts +1 -0
- package/src/lexicon/types/com/atproto/sync/getHead.ts +1 -0
- package/src/lexicon/types/com/atproto/sync/getLatestCommit.ts +1 -0
- package/src/lexicon/types/com/atproto/sync/getRecord.ts +1 -0
- package/src/lexicon/types/com/atproto/sync/getRepo.ts +1 -0
- package/src/lexicon/types/com/atproto/sync/getRepoStatus.ts +1 -0
- package/src/lexicon/types/com/atproto/sync/listBlobs.ts +1 -0
- package/src/lexicon/types/com/atproto/sync/listRepos.ts +1 -0
- package/src/lexicon/types/com/atproto/sync/notifyOfUpdate.ts +1 -0
- package/src/lexicon/types/com/atproto/sync/requestCrawl.ts +1 -0
- package/src/lexicon/types/com/atproto/temp/addReservedHandle.ts +1 -0
- package/src/lexicon/types/com/atproto/temp/checkSignupQueue.ts +1 -0
- package/src/lexicon/types/com/atproto/temp/fetchLabels.ts +1 -0
- package/src/lexicon/types/com/atproto/temp/requestPhoneVerification.ts +1 -0
- package/src/views/index.ts +57 -26
- package/tests/label-hydration.test.ts +5 -2
- package/tests/views/author-feed.test.ts +1 -1
- package/tests/views/labels-takedown.test.ts +29 -0
|
@@ -41,6 +41,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
41
41
|
input: HandlerInput
|
|
42
42
|
req: express.Request
|
|
43
43
|
res: express.Response
|
|
44
|
+
resetRouteRateLimits: () => Promise<void>
|
|
44
45
|
}
|
|
45
46
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
46
47
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -25,6 +25,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
25
25
|
input: HandlerInput
|
|
26
26
|
req: express.Request
|
|
27
27
|
res: express.Response
|
|
28
|
+
resetRouteRateLimits: () => Promise<void>
|
|
28
29
|
}
|
|
29
30
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
30
31
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -45,6 +45,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
45
45
|
input: HandlerInput
|
|
46
46
|
req: express.Request
|
|
47
47
|
res: express.Response
|
|
48
|
+
resetRouteRateLimits: () => Promise<void>
|
|
48
49
|
}
|
|
49
50
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
50
51
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -34,6 +34,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
34
34
|
input: HandlerInput
|
|
35
35
|
req: express.Request
|
|
36
36
|
res: express.Response
|
|
37
|
+
resetRouteRateLimits: () => Promise<void>
|
|
37
38
|
}
|
|
38
39
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
39
40
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -71,6 +71,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
71
71
|
input: HandlerInput
|
|
72
72
|
req: express.Request
|
|
73
73
|
res: express.Response
|
|
74
|
+
resetRouteRateLimits: () => Promise<void>
|
|
74
75
|
}
|
|
75
76
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
76
77
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -44,6 +44,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
44
44
|
input: HandlerInput
|
|
45
45
|
req: express.Request
|
|
46
46
|
res: express.Response
|
|
47
|
+
resetRouteRateLimits: () => Promise<void>
|
|
47
48
|
}
|
|
48
49
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
49
50
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -44,6 +44,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
44
44
|
input: HandlerInput
|
|
45
45
|
req: express.Request
|
|
46
46
|
res: express.Response
|
|
47
|
+
resetRouteRateLimits: () => Promise<void>
|
|
47
48
|
}
|
|
48
49
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
49
50
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -45,6 +45,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
45
45
|
input: HandlerInput
|
|
46
46
|
req: express.Request
|
|
47
47
|
res: express.Response
|
|
48
|
+
resetRouteRateLimits: () => Promise<void>
|
|
48
49
|
}
|
|
49
50
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
50
51
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -59,6 +59,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
59
59
|
input: HandlerInput
|
|
60
60
|
req: express.Request
|
|
61
61
|
res: express.Response
|
|
62
|
+
resetRouteRateLimits: () => Promise<void>
|
|
62
63
|
}
|
|
63
64
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
64
65
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -33,6 +33,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
33
33
|
input: HandlerInput
|
|
34
34
|
req: express.Request
|
|
35
35
|
res: express.Response
|
|
36
|
+
resetRouteRateLimits: () => Promise<void>
|
|
36
37
|
}
|
|
37
38
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
38
39
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -35,6 +35,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
35
35
|
input: HandlerInput
|
|
36
36
|
req: express.Request
|
|
37
37
|
res: express.Response
|
|
38
|
+
resetRouteRateLimits: () => Promise<void>
|
|
38
39
|
}
|
|
39
40
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
40
41
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -25,6 +25,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
25
25
|
input: HandlerInput
|
|
26
26
|
req: express.Request
|
|
27
27
|
res: express.Response
|
|
28
|
+
resetRouteRateLimits: () => Promise<void>
|
|
28
29
|
}
|
|
29
30
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
30
31
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -45,6 +45,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
45
45
|
input: HandlerInput
|
|
46
46
|
req: express.Request
|
|
47
47
|
res: express.Response
|
|
48
|
+
resetRouteRateLimits: () => Promise<void>
|
|
48
49
|
}
|
|
49
50
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
50
51
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -43,6 +43,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
43
43
|
input: HandlerInput
|
|
44
44
|
req: express.Request
|
|
45
45
|
res: express.Response
|
|
46
|
+
resetRouteRateLimits: () => Promise<void>
|
|
46
47
|
}
|
|
47
48
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
48
49
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -45,6 +45,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
45
45
|
input: HandlerInput
|
|
46
46
|
req: express.Request
|
|
47
47
|
res: express.Response
|
|
48
|
+
resetRouteRateLimits: () => Promise<void>
|
|
48
49
|
}
|
|
49
50
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
50
51
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -45,6 +45,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
45
45
|
input: HandlerInput
|
|
46
46
|
req: express.Request
|
|
47
47
|
res: express.Response
|
|
48
|
+
resetRouteRateLimits: () => Promise<void>
|
|
48
49
|
}
|
|
49
50
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
50
51
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -38,6 +38,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
38
38
|
input: HandlerInput
|
|
39
39
|
req: express.Request
|
|
40
40
|
res: express.Response
|
|
41
|
+
resetRouteRateLimits: () => Promise<void>
|
|
41
42
|
}
|
|
42
43
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
43
44
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -45,6 +45,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
45
45
|
input: HandlerInput
|
|
46
46
|
req: express.Request
|
|
47
47
|
res: express.Response
|
|
48
|
+
resetRouteRateLimits: () => Promise<void>
|
|
48
49
|
}
|
|
49
50
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
50
51
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -25,6 +25,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
25
25
|
input: HandlerInput
|
|
26
26
|
req: express.Request
|
|
27
27
|
res: express.Response
|
|
28
|
+
resetRouteRateLimits: () => Promise<void>
|
|
28
29
|
}
|
|
29
30
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
30
31
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -25,6 +25,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
25
25
|
input: HandlerInput
|
|
26
26
|
req: express.Request
|
|
27
27
|
res: express.Response
|
|
28
|
+
resetRouteRateLimits: () => Promise<void>
|
|
28
29
|
}
|
|
29
30
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
30
31
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -37,6 +37,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
37
37
|
input: HandlerInput
|
|
38
38
|
req: express.Request
|
|
39
39
|
res: express.Response
|
|
40
|
+
resetRouteRateLimits: () => Promise<void>
|
|
40
41
|
}
|
|
41
42
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
42
43
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -32,6 +32,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
32
32
|
input: HandlerInput
|
|
33
33
|
req: express.Request
|
|
34
34
|
res: express.Response
|
|
35
|
+
resetRouteRateLimits: () => Promise<void>
|
|
35
36
|
}
|
|
36
37
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
37
38
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -45,6 +45,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
45
45
|
input: HandlerInput
|
|
46
46
|
req: express.Request
|
|
47
47
|
res: express.Response
|
|
48
|
+
resetRouteRateLimits: () => Promise<void>
|
|
48
49
|
}
|
|
49
50
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
50
51
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -34,6 +34,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
34
34
|
input: HandlerInput
|
|
35
35
|
req: express.Request
|
|
36
36
|
res: express.Response
|
|
37
|
+
resetRouteRateLimits: () => Promise<void>
|
|
37
38
|
}
|
|
38
39
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
39
40
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -32,6 +32,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
32
32
|
input: HandlerInput
|
|
33
33
|
req: express.Request
|
|
34
34
|
res: express.Response
|
|
35
|
+
resetRouteRateLimits: () => Promise<void>
|
|
35
36
|
}
|
|
36
37
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
37
38
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -36,6 +36,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
36
36
|
input: HandlerInput
|
|
37
37
|
req: express.Request
|
|
38
38
|
res: express.Response
|
|
39
|
+
resetRouteRateLimits: () => Promise<void>
|
|
39
40
|
}
|
|
40
41
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
41
42
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -43,6 +43,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
43
43
|
input: HandlerInput
|
|
44
44
|
req: express.Request
|
|
45
45
|
res: express.Response
|
|
46
|
+
resetRouteRateLimits: () => Promise<void>
|
|
46
47
|
}
|
|
47
48
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
48
49
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -42,6 +42,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
42
42
|
input: HandlerInput
|
|
43
43
|
req: express.Request
|
|
44
44
|
res: express.Response
|
|
45
|
+
resetRouteRateLimits: () => Promise<void>
|
|
45
46
|
}
|
|
46
47
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
47
48
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -35,6 +35,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
35
35
|
input: HandlerInput
|
|
36
36
|
req: express.Request
|
|
37
37
|
res: express.Response
|
|
38
|
+
resetRouteRateLimits: () => Promise<void>
|
|
38
39
|
}
|
|
39
40
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
40
41
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -41,6 +41,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
41
41
|
input: HandlerInput
|
|
42
42
|
req: express.Request
|
|
43
43
|
res: express.Response
|
|
44
|
+
resetRouteRateLimits: () => Promise<void>
|
|
44
45
|
}
|
|
45
46
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
46
47
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -42,6 +42,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
42
42
|
input: HandlerInput
|
|
43
43
|
req: express.Request
|
|
44
44
|
res: express.Response
|
|
45
|
+
resetRouteRateLimits: () => Promise<void>
|
|
45
46
|
}
|
|
46
47
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
47
48
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -46,6 +46,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
46
46
|
input: HandlerInput
|
|
47
47
|
req: express.Request
|
|
48
48
|
res: express.Response
|
|
49
|
+
resetRouteRateLimits: () => Promise<void>
|
|
49
50
|
}
|
|
50
51
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
51
52
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -38,6 +38,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
38
38
|
input: HandlerInput
|
|
39
39
|
req: express.Request
|
|
40
40
|
res: express.Response
|
|
41
|
+
resetRouteRateLimits: () => Promise<void>
|
|
41
42
|
}
|
|
42
43
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
43
44
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -46,6 +46,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
46
46
|
input: HandlerInput
|
|
47
47
|
req: express.Request
|
|
48
48
|
res: express.Response
|
|
49
|
+
resetRouteRateLimits: () => Promise<void>
|
|
49
50
|
}
|
|
50
51
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
51
52
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -46,6 +46,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
46
46
|
input: HandlerInput
|
|
47
47
|
req: express.Request
|
|
48
48
|
res: express.Response
|
|
49
|
+
resetRouteRateLimits: () => Promise<void>
|
|
49
50
|
}
|
|
50
51
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
51
52
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -41,6 +41,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
41
41
|
input: HandlerInput
|
|
42
42
|
req: express.Request
|
|
43
43
|
res: express.Response
|
|
44
|
+
resetRouteRateLimits: () => Promise<void>
|
|
44
45
|
}
|
|
45
46
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
46
47
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -33,6 +33,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
33
33
|
input: HandlerInput
|
|
34
34
|
req: express.Request
|
|
35
35
|
res: express.Response
|
|
36
|
+
resetRouteRateLimits: () => Promise<void>
|
|
36
37
|
}
|
|
37
38
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
38
39
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -33,6 +33,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
33
33
|
input: HandlerInput
|
|
34
34
|
req: express.Request
|
|
35
35
|
res: express.Response
|
|
36
|
+
resetRouteRateLimits: () => Promise<void>
|
|
36
37
|
}
|
|
37
38
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
38
39
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -42,6 +42,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
42
42
|
input: HandlerInput
|
|
43
43
|
req: express.Request
|
|
44
44
|
res: express.Response
|
|
45
|
+
resetRouteRateLimits: () => Promise<void>
|
|
45
46
|
}
|
|
46
47
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
47
48
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -39,6 +39,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
39
39
|
input: HandlerInput
|
|
40
40
|
req: express.Request
|
|
41
41
|
res: express.Response
|
|
42
|
+
resetRouteRateLimits: () => Promise<void>
|
|
42
43
|
}
|
|
43
44
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
44
45
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -41,6 +41,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
41
41
|
input: HandlerInput
|
|
42
42
|
req: express.Request
|
|
43
43
|
res: express.Response
|
|
44
|
+
resetRouteRateLimits: () => Promise<void>
|
|
44
45
|
}
|
|
45
46
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
46
47
|
ctx: HandlerReqCtx<HA>,
|
|
@@ -32,6 +32,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
|
|
|
32
32
|
input: HandlerInput
|
|
33
33
|
req: express.Request
|
|
34
34
|
res: express.Response
|
|
35
|
+
resetRouteRateLimits: () => Promise<void>
|
|
35
36
|
}
|
|
36
37
|
export type Handler<HA extends HandlerAuth = never> = (
|
|
37
38
|
ctx: HandlerReqCtx<HA>,
|
package/src/views/index.ts
CHANGED
|
@@ -7,7 +7,7 @@ import {
|
|
|
7
7
|
ProfileViewDetailed,
|
|
8
8
|
ProfileView,
|
|
9
9
|
ProfileViewBasic,
|
|
10
|
-
ViewerState as
|
|
10
|
+
ViewerState as ProfileViewer,
|
|
11
11
|
} from '../lexicon/types/app/bsky/actor/defs'
|
|
12
12
|
import {
|
|
13
13
|
BlockedPost,
|
|
@@ -35,7 +35,11 @@ import {
|
|
|
35
35
|
VideoUriBuilder,
|
|
36
36
|
parsePostgate,
|
|
37
37
|
} from './util'
|
|
38
|
-
import {
|
|
38
|
+
import {
|
|
39
|
+
uriToDid as creatorFromUri,
|
|
40
|
+
safePinnedPost,
|
|
41
|
+
uriToDid,
|
|
42
|
+
} from '../util/uris'
|
|
39
43
|
import { isListRule } from '../lexicon/types/app/bsky/feed/threadgate'
|
|
40
44
|
import { isSelfLabels } from '../lexicon/types/com/atproto/label/defs'
|
|
41
45
|
import {
|
|
@@ -73,6 +77,7 @@ import {
|
|
|
73
77
|
} from '../lexicon/types/app/bsky/labeler/defs'
|
|
74
78
|
import { Notification } from '../proto/bsky_pb'
|
|
75
79
|
import { postUriToThreadgateUri, postUriToPostgateUri } from '../util/uris'
|
|
80
|
+
import { ProfileViewerState } from '../hydration/actor'
|
|
76
81
|
|
|
77
82
|
export class Views {
|
|
78
83
|
public imgUriBuilder: ImageUriBuilder = this.opts.imgUriBuilder
|
|
@@ -101,9 +106,10 @@ export class Views {
|
|
|
101
106
|
}
|
|
102
107
|
|
|
103
108
|
actorIsTakendown(did: string, state: HydrationState): boolean {
|
|
104
|
-
|
|
105
|
-
if (
|
|
106
|
-
if (
|
|
109
|
+
const actor = state.actors?.get(did)
|
|
110
|
+
if (actor?.takedownRef) return true
|
|
111
|
+
if (actor?.upstreamStatus === 'takendown') return true
|
|
112
|
+
if (actor?.upstreamStatus === 'suspended') return true
|
|
107
113
|
if (state.labels?.get(did)?.isTakendown) return true
|
|
108
114
|
return false
|
|
109
115
|
}
|
|
@@ -111,18 +117,45 @@ export class Views {
|
|
|
111
117
|
viewerBlockExists(did: string, state: HydrationState): boolean {
|
|
112
118
|
const actor = state.profileViewers?.get(did)
|
|
113
119
|
if (!actor) return false
|
|
114
|
-
return (
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
120
|
+
return !!(
|
|
121
|
+
actor.blockedBy ||
|
|
122
|
+
actor.blocking ||
|
|
123
|
+
this.blockedByList(actor, state) ||
|
|
124
|
+
this.blockingByList(actor, state)
|
|
119
125
|
)
|
|
120
126
|
}
|
|
121
127
|
|
|
122
128
|
viewerMuteExists(did: string, state: HydrationState): boolean {
|
|
123
129
|
const actor = state.profileViewers?.get(did)
|
|
124
130
|
if (!actor) return false
|
|
125
|
-
return actor.muted ||
|
|
131
|
+
return !!(actor.muted || this.mutedByList(actor, state))
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
blockingByList(viewer: ProfileViewerState, state: HydrationState) {
|
|
135
|
+
return (
|
|
136
|
+
viewer.blockingByList && this.recordActive(viewer.blockingByList, state)
|
|
137
|
+
)
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
blockedByList(viewer: ProfileViewerState, state: HydrationState) {
|
|
141
|
+
return (
|
|
142
|
+
viewer.blockedByList && this.recordActive(viewer.blockedByList, state)
|
|
143
|
+
)
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
mutedByList(viewer: ProfileViewerState, state: HydrationState) {
|
|
147
|
+
return viewer.mutedByList && this.recordActive(viewer.mutedByList, state)
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
recordActive(uri: string, state: HydrationState) {
|
|
151
|
+
const did = uriToDid(uri)
|
|
152
|
+
const actor = state.actors?.get(did)
|
|
153
|
+
if (!actor || this.actorIsTakendown(did, state)) {
|
|
154
|
+
// actor may not be present when takedowns are eagerly applied during hydration.
|
|
155
|
+
// so it's important to _try_ to hydrate the actor for records checked this way.
|
|
156
|
+
return
|
|
157
|
+
}
|
|
158
|
+
return uri
|
|
126
159
|
}
|
|
127
160
|
|
|
128
161
|
viewerSeesNeedsReview(did: string, state: HydrationState): boolean {
|
|
@@ -276,24 +309,22 @@ export class Views {
|
|
|
276
309
|
}
|
|
277
310
|
}
|
|
278
311
|
|
|
279
|
-
profileViewer(
|
|
280
|
-
did: string,
|
|
281
|
-
state: HydrationState,
|
|
282
|
-
): ProfileViewerState | undefined {
|
|
312
|
+
profileViewer(did: string, state: HydrationState): ProfileViewer | undefined {
|
|
283
313
|
const viewer = state.profileViewers?.get(did)
|
|
284
314
|
if (!viewer) return
|
|
285
|
-
const
|
|
286
|
-
const
|
|
315
|
+
const blockedByList = this.blockedByList(viewer, state)
|
|
316
|
+
const blockedByUri = viewer.blockedBy || blockedByList
|
|
317
|
+
const blockingByList = this.blockingByList(viewer, state)
|
|
318
|
+
const blockingUri = viewer.blocking || blockingByList
|
|
287
319
|
const block = !!blockedByUri || !!blockingUri
|
|
320
|
+
const mutedByList = this.mutedByList(viewer, state)
|
|
288
321
|
return {
|
|
289
|
-
muted: viewer.muted ||
|
|
290
|
-
mutedByList:
|
|
291
|
-
? this.listBasic(viewer.mutedByList, state)
|
|
292
|
-
: undefined,
|
|
322
|
+
muted: !!(viewer.muted || mutedByList),
|
|
323
|
+
mutedByList: mutedByList ? this.listBasic(mutedByList, state) : undefined,
|
|
293
324
|
blockedBy: !!blockedByUri,
|
|
294
325
|
blocking: blockingUri,
|
|
295
|
-
blockingByList:
|
|
296
|
-
? this.listBasic(
|
|
326
|
+
blockingByList: blockingByList
|
|
327
|
+
? this.listBasic(blockingByList, state)
|
|
297
328
|
: undefined,
|
|
298
329
|
following: viewer.following && !block ? viewer.following : undefined,
|
|
299
330
|
followedBy: viewer.followedBy && !block ? viewer.followedBy : undefined,
|
|
@@ -323,11 +354,11 @@ export class Views {
|
|
|
323
354
|
blockedProfileViewer(
|
|
324
355
|
did: string,
|
|
325
356
|
state: HydrationState,
|
|
326
|
-
):
|
|
357
|
+
): ProfileViewer | undefined {
|
|
327
358
|
const viewer = state.profileViewers?.get(did)
|
|
328
359
|
if (!viewer) return
|
|
329
|
-
const blockedByUri = viewer.blockedBy ||
|
|
330
|
-
const blockingUri = viewer.blocking ||
|
|
360
|
+
const blockedByUri = viewer.blockedBy || this.blockedByList(viewer, state)
|
|
361
|
+
const blockingUri = viewer.blocking || this.blockingByList(viewer, state)
|
|
331
362
|
return {
|
|
332
363
|
blockedBy: !!blockedByUri,
|
|
333
364
|
blocking: blockingUri,
|
|
@@ -73,8 +73,11 @@ describe('label hydration', () => {
|
|
|
73
73
|
expect(res.data.labels?.find((l) => l.src === labelerDid)?.val).toEqual(
|
|
74
74
|
'misleading',
|
|
75
75
|
)
|
|
76
|
-
const labelerHeaderDids = res.headers['atproto-content-labelers']
|
|
77
|
-
|
|
76
|
+
const labelerHeaderDids = res.headers['atproto-content-labelers']
|
|
77
|
+
?.split(',')
|
|
78
|
+
.sort()
|
|
79
|
+
|
|
80
|
+
expect(labelerHeaderDids).toEqual(
|
|
78
81
|
[alice, `${bob};redact`, labelerDid].sort(),
|
|
79
82
|
)
|
|
80
83
|
})
|
|
@@ -487,7 +487,7 @@ describe('pds author feed views', () => {
|
|
|
487
487
|
await sc.post(alice, 'not pinned post')
|
|
488
488
|
const post = await createAndPinPost()
|
|
489
489
|
await sc.post(alice, 'not pinned post')
|
|
490
|
-
|
|
490
|
+
await network.processAll()
|
|
491
491
|
const { data } = await agent.api.app.bsky.feed.getAuthorFeed(
|
|
492
492
|
{ actor: sc.accounts[alice].handle, includePins: true },
|
|
493
493
|
{
|
|
@@ -37,6 +37,16 @@ describe('bsky takedown labels', () => {
|
|
|
37
37
|
sc.getHeaders(sc.dids.carol),
|
|
38
38
|
)
|
|
39
39
|
carolListRef = await sc.createList(sc.dids.carol, 'carol list', 'mod')
|
|
40
|
+
// alice blocks dan via carol's list, and carol is takendown
|
|
41
|
+
await sc.addToList(sc.dids.carol, sc.dids.dan, carolListRef)
|
|
42
|
+
await pdsAgent.app.bsky.graph.listblock.create(
|
|
43
|
+
{ repo: sc.dids.alice },
|
|
44
|
+
{
|
|
45
|
+
subject: carolListRef.uriStr,
|
|
46
|
+
createdAt: new Date().toISOString(),
|
|
47
|
+
},
|
|
48
|
+
sc.getHeaders(sc.dids.alice),
|
|
49
|
+
)
|
|
40
50
|
aliceGenRef = await sc.createFeedGen(
|
|
41
51
|
sc.dids.alice,
|
|
42
52
|
'did:web:example.com',
|
|
@@ -190,6 +200,25 @@ describe('bsky takedown labels', () => {
|
|
|
190
200
|
expect(profile.viewer?.blockingByList).toBeUndefined()
|
|
191
201
|
})
|
|
192
202
|
|
|
203
|
+
it('author takedown halts application of mod lists', async () => {
|
|
204
|
+
const { data: profile } = await agent.app.bsky.actor.getProfile(
|
|
205
|
+
{
|
|
206
|
+
actor: sc.dids.dan, // blocked via carol's list, and carol is takendown
|
|
207
|
+
},
|
|
208
|
+
{
|
|
209
|
+
headers: await network.serviceHeaders(
|
|
210
|
+
sc.dids.alice,
|
|
211
|
+
ids.AppBskyActorGetProfile,
|
|
212
|
+
),
|
|
213
|
+
},
|
|
214
|
+
)
|
|
215
|
+
expect(profile.did).toBe(sc.dids.dan)
|
|
216
|
+
expect(profile.viewer).not.toBeUndefined()
|
|
217
|
+
expect(profile.viewer?.blockedBy).toBe(false)
|
|
218
|
+
expect(profile.viewer?.blocking).toBeUndefined()
|
|
219
|
+
expect(profile.viewer?.blockingByList).toBeUndefined()
|
|
220
|
+
})
|
|
221
|
+
|
|
193
222
|
it('takesdown feed generators', async () => {
|
|
194
223
|
const res = await agent.api.app.bsky.feed.getFeedGenerators({
|
|
195
224
|
feeds: [aliceGenRef.uriStr, bobGenRef.uriStr, carolGenRef.uriStr],
|