@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.
Files changed (520) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/dist/api/app/bsky/actor/getSuggestions.d.ts.map +1 -1
  3. package/dist/api/app/bsky/actor/getSuggestions.js.map +1 -1
  4. package/dist/api/app/bsky/feed/getAuthorFeed.d.ts.map +1 -1
  5. package/dist/api/app/bsky/feed/getAuthorFeed.js +4 -2
  6. package/dist/api/app/bsky/feed/getAuthorFeed.js.map +1 -1
  7. package/dist/api/app/bsky/feed/getFeed.d.ts.map +1 -1
  8. package/dist/api/app/bsky/feed/getFeed.js +1 -0
  9. package/dist/api/app/bsky/feed/getFeed.js.map +1 -1
  10. package/dist/api/app/bsky/graph/getSuggestedFollowsByActor.d.ts.map +1 -1
  11. package/dist/api/app/bsky/graph/getSuggestedFollowsByActor.js.map +1 -1
  12. package/dist/api/blob-resolver.d.ts.map +1 -1
  13. package/dist/api/blob-resolver.js +2 -0
  14. package/dist/api/blob-resolver.js.map +1 -1
  15. package/dist/api/util.d.ts +1 -0
  16. package/dist/api/util.d.ts.map +1 -1
  17. package/dist/api/util.js +2 -1
  18. package/dist/api/util.js.map +1 -1
  19. package/dist/data-plane/server/routes/relationships.d.ts.map +1 -1
  20. package/dist/data-plane/server/routes/relationships.js +51 -31
  21. package/dist/data-plane/server/routes/relationships.js.map +1 -1
  22. package/dist/hydration/graph.d.ts +7 -4
  23. package/dist/hydration/graph.d.ts.map +1 -1
  24. package/dist/hydration/graph.js +17 -19
  25. package/dist/hydration/graph.js.map +1 -1
  26. package/dist/hydration/hydrator.d.ts +3 -1
  27. package/dist/hydration/hydrator.d.ts.map +1 -1
  28. package/dist/hydration/hydrator.js +49 -17
  29. package/dist/hydration/hydrator.js.map +1 -1
  30. package/dist/lexicon/types/app/bsky/actor/getPreferences.d.ts +1 -0
  31. package/dist/lexicon/types/app/bsky/actor/getPreferences.d.ts.map +1 -1
  32. package/dist/lexicon/types/app/bsky/actor/getProfile.d.ts +1 -0
  33. package/dist/lexicon/types/app/bsky/actor/getProfile.d.ts.map +1 -1
  34. package/dist/lexicon/types/app/bsky/actor/getProfiles.d.ts +1 -0
  35. package/dist/lexicon/types/app/bsky/actor/getProfiles.d.ts.map +1 -1
  36. package/dist/lexicon/types/app/bsky/actor/getSuggestions.d.ts +1 -0
  37. package/dist/lexicon/types/app/bsky/actor/getSuggestions.d.ts.map +1 -1
  38. package/dist/lexicon/types/app/bsky/actor/putPreferences.d.ts +1 -0
  39. package/dist/lexicon/types/app/bsky/actor/putPreferences.d.ts.map +1 -1
  40. package/dist/lexicon/types/app/bsky/actor/searchActors.d.ts +1 -0
  41. package/dist/lexicon/types/app/bsky/actor/searchActors.d.ts.map +1 -1
  42. package/dist/lexicon/types/app/bsky/actor/searchActorsTypeahead.d.ts +1 -0
  43. package/dist/lexicon/types/app/bsky/actor/searchActorsTypeahead.d.ts.map +1 -1
  44. package/dist/lexicon/types/app/bsky/feed/describeFeedGenerator.d.ts +1 -0
  45. package/dist/lexicon/types/app/bsky/feed/describeFeedGenerator.d.ts.map +1 -1
  46. package/dist/lexicon/types/app/bsky/feed/describeFeedGenerator.js.map +1 -1
  47. package/dist/lexicon/types/app/bsky/feed/getActorFeeds.d.ts +1 -0
  48. package/dist/lexicon/types/app/bsky/feed/getActorFeeds.d.ts.map +1 -1
  49. package/dist/lexicon/types/app/bsky/feed/getActorLikes.d.ts +1 -0
  50. package/dist/lexicon/types/app/bsky/feed/getActorLikes.d.ts.map +1 -1
  51. package/dist/lexicon/types/app/bsky/feed/getAuthorFeed.d.ts +1 -0
  52. package/dist/lexicon/types/app/bsky/feed/getAuthorFeed.d.ts.map +1 -1
  53. package/dist/lexicon/types/app/bsky/feed/getFeed.d.ts +1 -0
  54. package/dist/lexicon/types/app/bsky/feed/getFeed.d.ts.map +1 -1
  55. package/dist/lexicon/types/app/bsky/feed/getFeedGenerator.d.ts +1 -0
  56. package/dist/lexicon/types/app/bsky/feed/getFeedGenerator.d.ts.map +1 -1
  57. package/dist/lexicon/types/app/bsky/feed/getFeedGenerators.d.ts +1 -0
  58. package/dist/lexicon/types/app/bsky/feed/getFeedGenerators.d.ts.map +1 -1
  59. package/dist/lexicon/types/app/bsky/feed/getFeedSkeleton.d.ts +1 -0
  60. package/dist/lexicon/types/app/bsky/feed/getFeedSkeleton.d.ts.map +1 -1
  61. package/dist/lexicon/types/app/bsky/feed/getLikes.d.ts +1 -0
  62. package/dist/lexicon/types/app/bsky/feed/getLikes.d.ts.map +1 -1
  63. package/dist/lexicon/types/app/bsky/feed/getLikes.js.map +1 -1
  64. package/dist/lexicon/types/app/bsky/feed/getListFeed.d.ts +1 -0
  65. package/dist/lexicon/types/app/bsky/feed/getListFeed.d.ts.map +1 -1
  66. package/dist/lexicon/types/app/bsky/feed/getPostThread.d.ts +1 -0
  67. package/dist/lexicon/types/app/bsky/feed/getPostThread.d.ts.map +1 -1
  68. package/dist/lexicon/types/app/bsky/feed/getPosts.d.ts +1 -0
  69. package/dist/lexicon/types/app/bsky/feed/getPosts.d.ts.map +1 -1
  70. package/dist/lexicon/types/app/bsky/feed/getQuotes.d.ts +1 -0
  71. package/dist/lexicon/types/app/bsky/feed/getQuotes.d.ts.map +1 -1
  72. package/dist/lexicon/types/app/bsky/feed/getRepostedBy.d.ts +1 -0
  73. package/dist/lexicon/types/app/bsky/feed/getRepostedBy.d.ts.map +1 -1
  74. package/dist/lexicon/types/app/bsky/feed/getSuggestedFeeds.d.ts +1 -0
  75. package/dist/lexicon/types/app/bsky/feed/getSuggestedFeeds.d.ts.map +1 -1
  76. package/dist/lexicon/types/app/bsky/feed/getTimeline.d.ts +1 -0
  77. package/dist/lexicon/types/app/bsky/feed/getTimeline.d.ts.map +1 -1
  78. package/dist/lexicon/types/app/bsky/feed/searchPosts.d.ts +1 -0
  79. package/dist/lexicon/types/app/bsky/feed/searchPosts.d.ts.map +1 -1
  80. package/dist/lexicon/types/app/bsky/feed/sendInteractions.d.ts +1 -0
  81. package/dist/lexicon/types/app/bsky/feed/sendInteractions.d.ts.map +1 -1
  82. package/dist/lexicon/types/app/bsky/graph/getActorStarterPacks.d.ts +1 -0
  83. package/dist/lexicon/types/app/bsky/graph/getActorStarterPacks.d.ts.map +1 -1
  84. package/dist/lexicon/types/app/bsky/graph/getBlocks.d.ts +1 -0
  85. package/dist/lexicon/types/app/bsky/graph/getBlocks.d.ts.map +1 -1
  86. package/dist/lexicon/types/app/bsky/graph/getFollowers.d.ts +1 -0
  87. package/dist/lexicon/types/app/bsky/graph/getFollowers.d.ts.map +1 -1
  88. package/dist/lexicon/types/app/bsky/graph/getFollows.d.ts +1 -0
  89. package/dist/lexicon/types/app/bsky/graph/getFollows.d.ts.map +1 -1
  90. package/dist/lexicon/types/app/bsky/graph/getKnownFollowers.d.ts +1 -0
  91. package/dist/lexicon/types/app/bsky/graph/getKnownFollowers.d.ts.map +1 -1
  92. package/dist/lexicon/types/app/bsky/graph/getList.d.ts +1 -0
  93. package/dist/lexicon/types/app/bsky/graph/getList.d.ts.map +1 -1
  94. package/dist/lexicon/types/app/bsky/graph/getListBlocks.d.ts +1 -0
  95. package/dist/lexicon/types/app/bsky/graph/getListBlocks.d.ts.map +1 -1
  96. package/dist/lexicon/types/app/bsky/graph/getListMutes.d.ts +1 -0
  97. package/dist/lexicon/types/app/bsky/graph/getListMutes.d.ts.map +1 -1
  98. package/dist/lexicon/types/app/bsky/graph/getLists.d.ts +1 -0
  99. package/dist/lexicon/types/app/bsky/graph/getLists.d.ts.map +1 -1
  100. package/dist/lexicon/types/app/bsky/graph/getMutes.d.ts +1 -0
  101. package/dist/lexicon/types/app/bsky/graph/getMutes.d.ts.map +1 -1
  102. package/dist/lexicon/types/app/bsky/graph/getRelationships.d.ts +1 -0
  103. package/dist/lexicon/types/app/bsky/graph/getRelationships.d.ts.map +1 -1
  104. package/dist/lexicon/types/app/bsky/graph/getStarterPack.d.ts +1 -0
  105. package/dist/lexicon/types/app/bsky/graph/getStarterPack.d.ts.map +1 -1
  106. package/dist/lexicon/types/app/bsky/graph/getStarterPacks.d.ts +1 -0
  107. package/dist/lexicon/types/app/bsky/graph/getStarterPacks.d.ts.map +1 -1
  108. package/dist/lexicon/types/app/bsky/graph/getSuggestedFollowsByActor.d.ts +1 -0
  109. package/dist/lexicon/types/app/bsky/graph/getSuggestedFollowsByActor.d.ts.map +1 -1
  110. package/dist/lexicon/types/app/bsky/graph/muteActor.d.ts +1 -0
  111. package/dist/lexicon/types/app/bsky/graph/muteActor.d.ts.map +1 -1
  112. package/dist/lexicon/types/app/bsky/graph/muteActorList.d.ts +1 -0
  113. package/dist/lexicon/types/app/bsky/graph/muteActorList.d.ts.map +1 -1
  114. package/dist/lexicon/types/app/bsky/graph/muteThread.d.ts +1 -0
  115. package/dist/lexicon/types/app/bsky/graph/muteThread.d.ts.map +1 -1
  116. package/dist/lexicon/types/app/bsky/graph/searchStarterPacks.d.ts +1 -0
  117. package/dist/lexicon/types/app/bsky/graph/searchStarterPacks.d.ts.map +1 -1
  118. package/dist/lexicon/types/app/bsky/graph/unmuteActor.d.ts +1 -0
  119. package/dist/lexicon/types/app/bsky/graph/unmuteActor.d.ts.map +1 -1
  120. package/dist/lexicon/types/app/bsky/graph/unmuteActorList.d.ts +1 -0
  121. package/dist/lexicon/types/app/bsky/graph/unmuteActorList.d.ts.map +1 -1
  122. package/dist/lexicon/types/app/bsky/graph/unmuteThread.d.ts +1 -0
  123. package/dist/lexicon/types/app/bsky/graph/unmuteThread.d.ts.map +1 -1
  124. package/dist/lexicon/types/app/bsky/labeler/getServices.d.ts +1 -0
  125. package/dist/lexicon/types/app/bsky/labeler/getServices.d.ts.map +1 -1
  126. package/dist/lexicon/types/app/bsky/notification/getUnreadCount.d.ts +1 -0
  127. package/dist/lexicon/types/app/bsky/notification/getUnreadCount.d.ts.map +1 -1
  128. package/dist/lexicon/types/app/bsky/notification/listNotifications.d.ts +1 -0
  129. package/dist/lexicon/types/app/bsky/notification/listNotifications.d.ts.map +1 -1
  130. package/dist/lexicon/types/app/bsky/notification/listNotifications.js.map +1 -1
  131. package/dist/lexicon/types/app/bsky/notification/putPreferences.d.ts +1 -0
  132. package/dist/lexicon/types/app/bsky/notification/putPreferences.d.ts.map +1 -1
  133. package/dist/lexicon/types/app/bsky/notification/registerPush.d.ts +1 -0
  134. package/dist/lexicon/types/app/bsky/notification/registerPush.d.ts.map +1 -1
  135. package/dist/lexicon/types/app/bsky/notification/updateSeen.d.ts +1 -0
  136. package/dist/lexicon/types/app/bsky/notification/updateSeen.d.ts.map +1 -1
  137. package/dist/lexicon/types/app/bsky/unspecced/getConfig.d.ts +1 -0
  138. package/dist/lexicon/types/app/bsky/unspecced/getConfig.d.ts.map +1 -1
  139. package/dist/lexicon/types/app/bsky/unspecced/getPopularFeedGenerators.d.ts +1 -0
  140. package/dist/lexicon/types/app/bsky/unspecced/getPopularFeedGenerators.d.ts.map +1 -1
  141. package/dist/lexicon/types/app/bsky/unspecced/getSuggestionsSkeleton.d.ts +1 -0
  142. package/dist/lexicon/types/app/bsky/unspecced/getSuggestionsSkeleton.d.ts.map +1 -1
  143. package/dist/lexicon/types/app/bsky/unspecced/getTaggedSuggestions.d.ts +1 -0
  144. package/dist/lexicon/types/app/bsky/unspecced/getTaggedSuggestions.d.ts.map +1 -1
  145. package/dist/lexicon/types/app/bsky/unspecced/getTaggedSuggestions.js.map +1 -1
  146. package/dist/lexicon/types/app/bsky/unspecced/getTrendingTopics.d.ts +1 -0
  147. package/dist/lexicon/types/app/bsky/unspecced/getTrendingTopics.d.ts.map +1 -1
  148. package/dist/lexicon/types/app/bsky/unspecced/searchActorsSkeleton.d.ts +1 -0
  149. package/dist/lexicon/types/app/bsky/unspecced/searchActorsSkeleton.d.ts.map +1 -1
  150. package/dist/lexicon/types/app/bsky/unspecced/searchPostsSkeleton.d.ts +1 -0
  151. package/dist/lexicon/types/app/bsky/unspecced/searchPostsSkeleton.d.ts.map +1 -1
  152. package/dist/lexicon/types/app/bsky/unspecced/searchStarterPacksSkeleton.d.ts +1 -0
  153. package/dist/lexicon/types/app/bsky/unspecced/searchStarterPacksSkeleton.d.ts.map +1 -1
  154. package/dist/lexicon/types/app/bsky/video/getJobStatus.d.ts +1 -0
  155. package/dist/lexicon/types/app/bsky/video/getJobStatus.d.ts.map +1 -1
  156. package/dist/lexicon/types/app/bsky/video/getUploadLimits.d.ts +1 -0
  157. package/dist/lexicon/types/app/bsky/video/getUploadLimits.d.ts.map +1 -1
  158. package/dist/lexicon/types/app/bsky/video/uploadVideo.d.ts +1 -0
  159. package/dist/lexicon/types/app/bsky/video/uploadVideo.d.ts.map +1 -1
  160. package/dist/lexicon/types/chat/bsky/actor/deleteAccount.d.ts +1 -0
  161. package/dist/lexicon/types/chat/bsky/actor/deleteAccount.d.ts.map +1 -1
  162. package/dist/lexicon/types/chat/bsky/actor/exportAccountData.d.ts +1 -0
  163. package/dist/lexicon/types/chat/bsky/actor/exportAccountData.d.ts.map +1 -1
  164. package/dist/lexicon/types/chat/bsky/convo/deleteMessageForSelf.d.ts +1 -0
  165. package/dist/lexicon/types/chat/bsky/convo/deleteMessageForSelf.d.ts.map +1 -1
  166. package/dist/lexicon/types/chat/bsky/convo/getConvo.d.ts +1 -0
  167. package/dist/lexicon/types/chat/bsky/convo/getConvo.d.ts.map +1 -1
  168. package/dist/lexicon/types/chat/bsky/convo/getConvoForMembers.d.ts +1 -0
  169. package/dist/lexicon/types/chat/bsky/convo/getConvoForMembers.d.ts.map +1 -1
  170. package/dist/lexicon/types/chat/bsky/convo/getLog.d.ts +1 -0
  171. package/dist/lexicon/types/chat/bsky/convo/getLog.d.ts.map +1 -1
  172. package/dist/lexicon/types/chat/bsky/convo/getMessages.d.ts +1 -0
  173. package/dist/lexicon/types/chat/bsky/convo/getMessages.d.ts.map +1 -1
  174. package/dist/lexicon/types/chat/bsky/convo/leaveConvo.d.ts +1 -0
  175. package/dist/lexicon/types/chat/bsky/convo/leaveConvo.d.ts.map +1 -1
  176. package/dist/lexicon/types/chat/bsky/convo/listConvos.d.ts +1 -0
  177. package/dist/lexicon/types/chat/bsky/convo/listConvos.d.ts.map +1 -1
  178. package/dist/lexicon/types/chat/bsky/convo/muteConvo.d.ts +1 -0
  179. package/dist/lexicon/types/chat/bsky/convo/muteConvo.d.ts.map +1 -1
  180. package/dist/lexicon/types/chat/bsky/convo/sendMessage.d.ts +1 -0
  181. package/dist/lexicon/types/chat/bsky/convo/sendMessage.d.ts.map +1 -1
  182. package/dist/lexicon/types/chat/bsky/convo/sendMessageBatch.d.ts +1 -0
  183. package/dist/lexicon/types/chat/bsky/convo/sendMessageBatch.d.ts.map +1 -1
  184. package/dist/lexicon/types/chat/bsky/convo/sendMessageBatch.js.map +1 -1
  185. package/dist/lexicon/types/chat/bsky/convo/unmuteConvo.d.ts +1 -0
  186. package/dist/lexicon/types/chat/bsky/convo/unmuteConvo.d.ts.map +1 -1
  187. package/dist/lexicon/types/chat/bsky/convo/updateRead.d.ts +1 -0
  188. package/dist/lexicon/types/chat/bsky/convo/updateRead.d.ts.map +1 -1
  189. package/dist/lexicon/types/chat/bsky/moderation/getActorMetadata.d.ts +1 -0
  190. package/dist/lexicon/types/chat/bsky/moderation/getActorMetadata.d.ts.map +1 -1
  191. package/dist/lexicon/types/chat/bsky/moderation/getActorMetadata.js.map +1 -1
  192. package/dist/lexicon/types/chat/bsky/moderation/getMessageContext.d.ts +1 -0
  193. package/dist/lexicon/types/chat/bsky/moderation/getMessageContext.d.ts.map +1 -1
  194. package/dist/lexicon/types/chat/bsky/moderation/updateActorAccess.d.ts +1 -0
  195. package/dist/lexicon/types/chat/bsky/moderation/updateActorAccess.d.ts.map +1 -1
  196. package/dist/lexicon/types/com/atproto/admin/deleteAccount.d.ts +1 -0
  197. package/dist/lexicon/types/com/atproto/admin/deleteAccount.d.ts.map +1 -1
  198. package/dist/lexicon/types/com/atproto/admin/disableAccountInvites.d.ts +1 -0
  199. package/dist/lexicon/types/com/atproto/admin/disableAccountInvites.d.ts.map +1 -1
  200. package/dist/lexicon/types/com/atproto/admin/disableInviteCodes.d.ts +1 -0
  201. package/dist/lexicon/types/com/atproto/admin/disableInviteCodes.d.ts.map +1 -1
  202. package/dist/lexicon/types/com/atproto/admin/enableAccountInvites.d.ts +1 -0
  203. package/dist/lexicon/types/com/atproto/admin/enableAccountInvites.d.ts.map +1 -1
  204. package/dist/lexicon/types/com/atproto/admin/getAccountInfo.d.ts +1 -0
  205. package/dist/lexicon/types/com/atproto/admin/getAccountInfo.d.ts.map +1 -1
  206. package/dist/lexicon/types/com/atproto/admin/getAccountInfos.d.ts +1 -0
  207. package/dist/lexicon/types/com/atproto/admin/getAccountInfos.d.ts.map +1 -1
  208. package/dist/lexicon/types/com/atproto/admin/getInviteCodes.d.ts +1 -0
  209. package/dist/lexicon/types/com/atproto/admin/getInviteCodes.d.ts.map +1 -1
  210. package/dist/lexicon/types/com/atproto/admin/getSubjectStatus.d.ts +1 -0
  211. package/dist/lexicon/types/com/atproto/admin/getSubjectStatus.d.ts.map +1 -1
  212. package/dist/lexicon/types/com/atproto/admin/searchAccounts.d.ts +1 -0
  213. package/dist/lexicon/types/com/atproto/admin/searchAccounts.d.ts.map +1 -1
  214. package/dist/lexicon/types/com/atproto/admin/sendEmail.d.ts +1 -0
  215. package/dist/lexicon/types/com/atproto/admin/sendEmail.d.ts.map +1 -1
  216. package/dist/lexicon/types/com/atproto/admin/updateAccountEmail.d.ts +1 -0
  217. package/dist/lexicon/types/com/atproto/admin/updateAccountEmail.d.ts.map +1 -1
  218. package/dist/lexicon/types/com/atproto/admin/updateAccountHandle.d.ts +1 -0
  219. package/dist/lexicon/types/com/atproto/admin/updateAccountHandle.d.ts.map +1 -1
  220. package/dist/lexicon/types/com/atproto/admin/updateAccountPassword.d.ts +1 -0
  221. package/dist/lexicon/types/com/atproto/admin/updateAccountPassword.d.ts.map +1 -1
  222. package/dist/lexicon/types/com/atproto/admin/updateSubjectStatus.d.ts +1 -0
  223. package/dist/lexicon/types/com/atproto/admin/updateSubjectStatus.d.ts.map +1 -1
  224. package/dist/lexicon/types/com/atproto/identity/getRecommendedDidCredentials.d.ts +1 -0
  225. package/dist/lexicon/types/com/atproto/identity/getRecommendedDidCredentials.d.ts.map +1 -1
  226. package/dist/lexicon/types/com/atproto/identity/requestPlcOperationSignature.d.ts +1 -0
  227. package/dist/lexicon/types/com/atproto/identity/requestPlcOperationSignature.d.ts.map +1 -1
  228. package/dist/lexicon/types/com/atproto/identity/resolveHandle.d.ts +1 -0
  229. package/dist/lexicon/types/com/atproto/identity/resolveHandle.d.ts.map +1 -1
  230. package/dist/lexicon/types/com/atproto/identity/signPlcOperation.d.ts +1 -0
  231. package/dist/lexicon/types/com/atproto/identity/signPlcOperation.d.ts.map +1 -1
  232. package/dist/lexicon/types/com/atproto/identity/submitPlcOperation.d.ts +1 -0
  233. package/dist/lexicon/types/com/atproto/identity/submitPlcOperation.d.ts.map +1 -1
  234. package/dist/lexicon/types/com/atproto/identity/updateHandle.d.ts +1 -0
  235. package/dist/lexicon/types/com/atproto/identity/updateHandle.d.ts.map +1 -1
  236. package/dist/lexicon/types/com/atproto/label/queryLabels.d.ts +1 -0
  237. package/dist/lexicon/types/com/atproto/label/queryLabels.d.ts.map +1 -1
  238. package/dist/lexicon/types/com/atproto/moderation/createReport.d.ts +1 -0
  239. package/dist/lexicon/types/com/atproto/moderation/createReport.d.ts.map +1 -1
  240. package/dist/lexicon/types/com/atproto/repo/applyWrites.d.ts +1 -0
  241. package/dist/lexicon/types/com/atproto/repo/applyWrites.d.ts.map +1 -1
  242. package/dist/lexicon/types/com/atproto/repo/applyWrites.js.map +1 -1
  243. package/dist/lexicon/types/com/atproto/repo/createRecord.d.ts +1 -0
  244. package/dist/lexicon/types/com/atproto/repo/createRecord.d.ts.map +1 -1
  245. package/dist/lexicon/types/com/atproto/repo/deleteRecord.d.ts +1 -0
  246. package/dist/lexicon/types/com/atproto/repo/deleteRecord.d.ts.map +1 -1
  247. package/dist/lexicon/types/com/atproto/repo/describeRepo.d.ts +1 -0
  248. package/dist/lexicon/types/com/atproto/repo/describeRepo.d.ts.map +1 -1
  249. package/dist/lexicon/types/com/atproto/repo/getRecord.d.ts +1 -0
  250. package/dist/lexicon/types/com/atproto/repo/getRecord.d.ts.map +1 -1
  251. package/dist/lexicon/types/com/atproto/repo/importRepo.d.ts +1 -0
  252. package/dist/lexicon/types/com/atproto/repo/importRepo.d.ts.map +1 -1
  253. package/dist/lexicon/types/com/atproto/repo/listMissingBlobs.d.ts +1 -0
  254. package/dist/lexicon/types/com/atproto/repo/listMissingBlobs.d.ts.map +1 -1
  255. package/dist/lexicon/types/com/atproto/repo/listMissingBlobs.js.map +1 -1
  256. package/dist/lexicon/types/com/atproto/repo/listRecords.d.ts +1 -0
  257. package/dist/lexicon/types/com/atproto/repo/listRecords.d.ts.map +1 -1
  258. package/dist/lexicon/types/com/atproto/repo/listRecords.js.map +1 -1
  259. package/dist/lexicon/types/com/atproto/repo/putRecord.d.ts +1 -0
  260. package/dist/lexicon/types/com/atproto/repo/putRecord.d.ts.map +1 -1
  261. package/dist/lexicon/types/com/atproto/repo/uploadBlob.d.ts +1 -0
  262. package/dist/lexicon/types/com/atproto/repo/uploadBlob.d.ts.map +1 -1
  263. package/dist/lexicon/types/com/atproto/server/activateAccount.d.ts +1 -0
  264. package/dist/lexicon/types/com/atproto/server/activateAccount.d.ts.map +1 -1
  265. package/dist/lexicon/types/com/atproto/server/checkAccountStatus.d.ts +1 -0
  266. package/dist/lexicon/types/com/atproto/server/checkAccountStatus.d.ts.map +1 -1
  267. package/dist/lexicon/types/com/atproto/server/confirmEmail.d.ts +1 -0
  268. package/dist/lexicon/types/com/atproto/server/confirmEmail.d.ts.map +1 -1
  269. package/dist/lexicon/types/com/atproto/server/createAccount.d.ts +1 -0
  270. package/dist/lexicon/types/com/atproto/server/createAccount.d.ts.map +1 -1
  271. package/dist/lexicon/types/com/atproto/server/createAppPassword.d.ts +1 -0
  272. package/dist/lexicon/types/com/atproto/server/createAppPassword.d.ts.map +1 -1
  273. package/dist/lexicon/types/com/atproto/server/createAppPassword.js.map +1 -1
  274. package/dist/lexicon/types/com/atproto/server/createInviteCode.d.ts +1 -0
  275. package/dist/lexicon/types/com/atproto/server/createInviteCode.d.ts.map +1 -1
  276. package/dist/lexicon/types/com/atproto/server/createInviteCodes.d.ts +1 -0
  277. package/dist/lexicon/types/com/atproto/server/createInviteCodes.d.ts.map +1 -1
  278. package/dist/lexicon/types/com/atproto/server/createInviteCodes.js.map +1 -1
  279. package/dist/lexicon/types/com/atproto/server/createSession.d.ts +1 -0
  280. package/dist/lexicon/types/com/atproto/server/createSession.d.ts.map +1 -1
  281. package/dist/lexicon/types/com/atproto/server/deactivateAccount.d.ts +1 -0
  282. package/dist/lexicon/types/com/atproto/server/deactivateAccount.d.ts.map +1 -1
  283. package/dist/lexicon/types/com/atproto/server/deleteAccount.d.ts +1 -0
  284. package/dist/lexicon/types/com/atproto/server/deleteAccount.d.ts.map +1 -1
  285. package/dist/lexicon/types/com/atproto/server/deleteSession.d.ts +1 -0
  286. package/dist/lexicon/types/com/atproto/server/deleteSession.d.ts.map +1 -1
  287. package/dist/lexicon/types/com/atproto/server/describeServer.d.ts +1 -0
  288. package/dist/lexicon/types/com/atproto/server/describeServer.d.ts.map +1 -1
  289. package/dist/lexicon/types/com/atproto/server/describeServer.js.map +1 -1
  290. package/dist/lexicon/types/com/atproto/server/getAccountInviteCodes.d.ts +1 -0
  291. package/dist/lexicon/types/com/atproto/server/getAccountInviteCodes.d.ts.map +1 -1
  292. package/dist/lexicon/types/com/atproto/server/getServiceAuth.d.ts +1 -0
  293. package/dist/lexicon/types/com/atproto/server/getServiceAuth.d.ts.map +1 -1
  294. package/dist/lexicon/types/com/atproto/server/getSession.d.ts +1 -0
  295. package/dist/lexicon/types/com/atproto/server/getSession.d.ts.map +1 -1
  296. package/dist/lexicon/types/com/atproto/server/listAppPasswords.d.ts +1 -0
  297. package/dist/lexicon/types/com/atproto/server/listAppPasswords.d.ts.map +1 -1
  298. package/dist/lexicon/types/com/atproto/server/listAppPasswords.js.map +1 -1
  299. package/dist/lexicon/types/com/atproto/server/refreshSession.d.ts +1 -0
  300. package/dist/lexicon/types/com/atproto/server/refreshSession.d.ts.map +1 -1
  301. package/dist/lexicon/types/com/atproto/server/requestAccountDelete.d.ts +1 -0
  302. package/dist/lexicon/types/com/atproto/server/requestAccountDelete.d.ts.map +1 -1
  303. package/dist/lexicon/types/com/atproto/server/requestEmailConfirmation.d.ts +1 -0
  304. package/dist/lexicon/types/com/atproto/server/requestEmailConfirmation.d.ts.map +1 -1
  305. package/dist/lexicon/types/com/atproto/server/requestEmailUpdate.d.ts +1 -0
  306. package/dist/lexicon/types/com/atproto/server/requestEmailUpdate.d.ts.map +1 -1
  307. package/dist/lexicon/types/com/atproto/server/requestPasswordReset.d.ts +1 -0
  308. package/dist/lexicon/types/com/atproto/server/requestPasswordReset.d.ts.map +1 -1
  309. package/dist/lexicon/types/com/atproto/server/reserveSigningKey.d.ts +1 -0
  310. package/dist/lexicon/types/com/atproto/server/reserveSigningKey.d.ts.map +1 -1
  311. package/dist/lexicon/types/com/atproto/server/resetPassword.d.ts +1 -0
  312. package/dist/lexicon/types/com/atproto/server/resetPassword.d.ts.map +1 -1
  313. package/dist/lexicon/types/com/atproto/server/revokeAppPassword.d.ts +1 -0
  314. package/dist/lexicon/types/com/atproto/server/revokeAppPassword.d.ts.map +1 -1
  315. package/dist/lexicon/types/com/atproto/server/updateEmail.d.ts +1 -0
  316. package/dist/lexicon/types/com/atproto/server/updateEmail.d.ts.map +1 -1
  317. package/dist/lexicon/types/com/atproto/sync/getBlob.d.ts +1 -0
  318. package/dist/lexicon/types/com/atproto/sync/getBlob.d.ts.map +1 -1
  319. package/dist/lexicon/types/com/atproto/sync/getBlocks.d.ts +1 -0
  320. package/dist/lexicon/types/com/atproto/sync/getBlocks.d.ts.map +1 -1
  321. package/dist/lexicon/types/com/atproto/sync/getCheckout.d.ts +1 -0
  322. package/dist/lexicon/types/com/atproto/sync/getCheckout.d.ts.map +1 -1
  323. package/dist/lexicon/types/com/atproto/sync/getHead.d.ts +1 -0
  324. package/dist/lexicon/types/com/atproto/sync/getHead.d.ts.map +1 -1
  325. package/dist/lexicon/types/com/atproto/sync/getLatestCommit.d.ts +1 -0
  326. package/dist/lexicon/types/com/atproto/sync/getLatestCommit.d.ts.map +1 -1
  327. package/dist/lexicon/types/com/atproto/sync/getRecord.d.ts +1 -0
  328. package/dist/lexicon/types/com/atproto/sync/getRecord.d.ts.map +1 -1
  329. package/dist/lexicon/types/com/atproto/sync/getRepo.d.ts +1 -0
  330. package/dist/lexicon/types/com/atproto/sync/getRepo.d.ts.map +1 -1
  331. package/dist/lexicon/types/com/atproto/sync/getRepoStatus.d.ts +1 -0
  332. package/dist/lexicon/types/com/atproto/sync/getRepoStatus.d.ts.map +1 -1
  333. package/dist/lexicon/types/com/atproto/sync/listBlobs.d.ts +1 -0
  334. package/dist/lexicon/types/com/atproto/sync/listBlobs.d.ts.map +1 -1
  335. package/dist/lexicon/types/com/atproto/sync/listRepos.d.ts +1 -0
  336. package/dist/lexicon/types/com/atproto/sync/listRepos.d.ts.map +1 -1
  337. package/dist/lexicon/types/com/atproto/sync/listRepos.js.map +1 -1
  338. package/dist/lexicon/types/com/atproto/sync/notifyOfUpdate.d.ts +1 -0
  339. package/dist/lexicon/types/com/atproto/sync/notifyOfUpdate.d.ts.map +1 -1
  340. package/dist/lexicon/types/com/atproto/sync/requestCrawl.d.ts +1 -0
  341. package/dist/lexicon/types/com/atproto/sync/requestCrawl.d.ts.map +1 -1
  342. package/dist/lexicon/types/com/atproto/temp/addReservedHandle.d.ts +1 -0
  343. package/dist/lexicon/types/com/atproto/temp/addReservedHandle.d.ts.map +1 -1
  344. package/dist/lexicon/types/com/atproto/temp/checkSignupQueue.d.ts +1 -0
  345. package/dist/lexicon/types/com/atproto/temp/checkSignupQueue.d.ts.map +1 -1
  346. package/dist/lexicon/types/com/atproto/temp/fetchLabels.d.ts +1 -0
  347. package/dist/lexicon/types/com/atproto/temp/fetchLabels.d.ts.map +1 -1
  348. package/dist/lexicon/types/com/atproto/temp/requestPhoneVerification.d.ts +1 -0
  349. package/dist/lexicon/types/com/atproto/temp/requestPhoneVerification.d.ts.map +1 -1
  350. package/dist/views/index.d.ts +8 -3
  351. package/dist/views/index.d.ts.map +1 -1
  352. package/dist/views/index.js +39 -18
  353. package/dist/views/index.js.map +1 -1
  354. package/package.json +11 -11
  355. package/src/api/app/bsky/actor/getSuggestions.ts +4 -3
  356. package/src/api/app/bsky/feed/getAuthorFeed.ts +8 -2
  357. package/src/api/app/bsky/feed/getFeed.ts +2 -1
  358. package/src/api/app/bsky/graph/getSuggestedFollowsByActor.ts +3 -2
  359. package/src/api/blob-resolver.ts +3 -0
  360. package/src/api/util.ts +1 -0
  361. package/src/data-plane/server/routes/relationships.ts +64 -40
  362. package/src/hydration/graph.ts +23 -23
  363. package/src/hydration/hydrator.ts +66 -19
  364. package/src/lexicon/types/app/bsky/actor/getPreferences.ts +1 -0
  365. package/src/lexicon/types/app/bsky/actor/getProfile.ts +1 -0
  366. package/src/lexicon/types/app/bsky/actor/getProfiles.ts +1 -0
  367. package/src/lexicon/types/app/bsky/actor/getSuggestions.ts +1 -0
  368. package/src/lexicon/types/app/bsky/actor/putPreferences.ts +1 -0
  369. package/src/lexicon/types/app/bsky/actor/searchActors.ts +1 -0
  370. package/src/lexicon/types/app/bsky/actor/searchActorsTypeahead.ts +1 -0
  371. package/src/lexicon/types/app/bsky/feed/describeFeedGenerator.ts +1 -0
  372. package/src/lexicon/types/app/bsky/feed/getActorFeeds.ts +1 -0
  373. package/src/lexicon/types/app/bsky/feed/getActorLikes.ts +1 -0
  374. package/src/lexicon/types/app/bsky/feed/getAuthorFeed.ts +1 -0
  375. package/src/lexicon/types/app/bsky/feed/getFeed.ts +1 -0
  376. package/src/lexicon/types/app/bsky/feed/getFeedGenerator.ts +1 -0
  377. package/src/lexicon/types/app/bsky/feed/getFeedGenerators.ts +1 -0
  378. package/src/lexicon/types/app/bsky/feed/getFeedSkeleton.ts +1 -0
  379. package/src/lexicon/types/app/bsky/feed/getLikes.ts +1 -0
  380. package/src/lexicon/types/app/bsky/feed/getListFeed.ts +1 -0
  381. package/src/lexicon/types/app/bsky/feed/getPostThread.ts +1 -0
  382. package/src/lexicon/types/app/bsky/feed/getPosts.ts +1 -0
  383. package/src/lexicon/types/app/bsky/feed/getQuotes.ts +1 -0
  384. package/src/lexicon/types/app/bsky/feed/getRepostedBy.ts +1 -0
  385. package/src/lexicon/types/app/bsky/feed/getSuggestedFeeds.ts +1 -0
  386. package/src/lexicon/types/app/bsky/feed/getTimeline.ts +1 -0
  387. package/src/lexicon/types/app/bsky/feed/searchPosts.ts +1 -0
  388. package/src/lexicon/types/app/bsky/feed/sendInteractions.ts +1 -0
  389. package/src/lexicon/types/app/bsky/graph/getActorStarterPacks.ts +1 -0
  390. package/src/lexicon/types/app/bsky/graph/getBlocks.ts +1 -0
  391. package/src/lexicon/types/app/bsky/graph/getFollowers.ts +1 -0
  392. package/src/lexicon/types/app/bsky/graph/getFollows.ts +1 -0
  393. package/src/lexicon/types/app/bsky/graph/getKnownFollowers.ts +1 -0
  394. package/src/lexicon/types/app/bsky/graph/getList.ts +1 -0
  395. package/src/lexicon/types/app/bsky/graph/getListBlocks.ts +1 -0
  396. package/src/lexicon/types/app/bsky/graph/getListMutes.ts +1 -0
  397. package/src/lexicon/types/app/bsky/graph/getLists.ts +1 -0
  398. package/src/lexicon/types/app/bsky/graph/getMutes.ts +1 -0
  399. package/src/lexicon/types/app/bsky/graph/getRelationships.ts +1 -0
  400. package/src/lexicon/types/app/bsky/graph/getStarterPack.ts +1 -0
  401. package/src/lexicon/types/app/bsky/graph/getStarterPacks.ts +1 -0
  402. package/src/lexicon/types/app/bsky/graph/getSuggestedFollowsByActor.ts +1 -0
  403. package/src/lexicon/types/app/bsky/graph/muteActor.ts +1 -0
  404. package/src/lexicon/types/app/bsky/graph/muteActorList.ts +1 -0
  405. package/src/lexicon/types/app/bsky/graph/muteThread.ts +1 -0
  406. package/src/lexicon/types/app/bsky/graph/searchStarterPacks.ts +1 -0
  407. package/src/lexicon/types/app/bsky/graph/unmuteActor.ts +1 -0
  408. package/src/lexicon/types/app/bsky/graph/unmuteActorList.ts +1 -0
  409. package/src/lexicon/types/app/bsky/graph/unmuteThread.ts +1 -0
  410. package/src/lexicon/types/app/bsky/labeler/getServices.ts +1 -0
  411. package/src/lexicon/types/app/bsky/notification/getUnreadCount.ts +1 -0
  412. package/src/lexicon/types/app/bsky/notification/listNotifications.ts +1 -0
  413. package/src/lexicon/types/app/bsky/notification/putPreferences.ts +1 -0
  414. package/src/lexicon/types/app/bsky/notification/registerPush.ts +1 -0
  415. package/src/lexicon/types/app/bsky/notification/updateSeen.ts +1 -0
  416. package/src/lexicon/types/app/bsky/unspecced/getConfig.ts +1 -0
  417. package/src/lexicon/types/app/bsky/unspecced/getPopularFeedGenerators.ts +1 -0
  418. package/src/lexicon/types/app/bsky/unspecced/getSuggestionsSkeleton.ts +1 -0
  419. package/src/lexicon/types/app/bsky/unspecced/getTaggedSuggestions.ts +1 -0
  420. package/src/lexicon/types/app/bsky/unspecced/getTrendingTopics.ts +1 -0
  421. package/src/lexicon/types/app/bsky/unspecced/searchActorsSkeleton.ts +1 -0
  422. package/src/lexicon/types/app/bsky/unspecced/searchPostsSkeleton.ts +1 -0
  423. package/src/lexicon/types/app/bsky/unspecced/searchStarterPacksSkeleton.ts +1 -0
  424. package/src/lexicon/types/app/bsky/video/getJobStatus.ts +1 -0
  425. package/src/lexicon/types/app/bsky/video/getUploadLimits.ts +1 -0
  426. package/src/lexicon/types/app/bsky/video/uploadVideo.ts +1 -0
  427. package/src/lexicon/types/chat/bsky/actor/deleteAccount.ts +1 -0
  428. package/src/lexicon/types/chat/bsky/actor/exportAccountData.ts +1 -0
  429. package/src/lexicon/types/chat/bsky/convo/deleteMessageForSelf.ts +1 -0
  430. package/src/lexicon/types/chat/bsky/convo/getConvo.ts +1 -0
  431. package/src/lexicon/types/chat/bsky/convo/getConvoForMembers.ts +1 -0
  432. package/src/lexicon/types/chat/bsky/convo/getLog.ts +1 -0
  433. package/src/lexicon/types/chat/bsky/convo/getMessages.ts +1 -0
  434. package/src/lexicon/types/chat/bsky/convo/leaveConvo.ts +1 -0
  435. package/src/lexicon/types/chat/bsky/convo/listConvos.ts +1 -0
  436. package/src/lexicon/types/chat/bsky/convo/muteConvo.ts +1 -0
  437. package/src/lexicon/types/chat/bsky/convo/sendMessage.ts +1 -0
  438. package/src/lexicon/types/chat/bsky/convo/sendMessageBatch.ts +1 -0
  439. package/src/lexicon/types/chat/bsky/convo/unmuteConvo.ts +1 -0
  440. package/src/lexicon/types/chat/bsky/convo/updateRead.ts +1 -0
  441. package/src/lexicon/types/chat/bsky/moderation/getActorMetadata.ts +1 -0
  442. package/src/lexicon/types/chat/bsky/moderation/getMessageContext.ts +1 -0
  443. package/src/lexicon/types/chat/bsky/moderation/updateActorAccess.ts +1 -0
  444. package/src/lexicon/types/com/atproto/admin/deleteAccount.ts +1 -0
  445. package/src/lexicon/types/com/atproto/admin/disableAccountInvites.ts +1 -0
  446. package/src/lexicon/types/com/atproto/admin/disableInviteCodes.ts +1 -0
  447. package/src/lexicon/types/com/atproto/admin/enableAccountInvites.ts +1 -0
  448. package/src/lexicon/types/com/atproto/admin/getAccountInfo.ts +1 -0
  449. package/src/lexicon/types/com/atproto/admin/getAccountInfos.ts +1 -0
  450. package/src/lexicon/types/com/atproto/admin/getInviteCodes.ts +1 -0
  451. package/src/lexicon/types/com/atproto/admin/getSubjectStatus.ts +1 -0
  452. package/src/lexicon/types/com/atproto/admin/searchAccounts.ts +1 -0
  453. package/src/lexicon/types/com/atproto/admin/sendEmail.ts +1 -0
  454. package/src/lexicon/types/com/atproto/admin/updateAccountEmail.ts +1 -0
  455. package/src/lexicon/types/com/atproto/admin/updateAccountHandle.ts +1 -0
  456. package/src/lexicon/types/com/atproto/admin/updateAccountPassword.ts +1 -0
  457. package/src/lexicon/types/com/atproto/admin/updateSubjectStatus.ts +1 -0
  458. package/src/lexicon/types/com/atproto/identity/getRecommendedDidCredentials.ts +1 -0
  459. package/src/lexicon/types/com/atproto/identity/requestPlcOperationSignature.ts +1 -0
  460. package/src/lexicon/types/com/atproto/identity/resolveHandle.ts +1 -0
  461. package/src/lexicon/types/com/atproto/identity/signPlcOperation.ts +1 -0
  462. package/src/lexicon/types/com/atproto/identity/submitPlcOperation.ts +1 -0
  463. package/src/lexicon/types/com/atproto/identity/updateHandle.ts +1 -0
  464. package/src/lexicon/types/com/atproto/label/queryLabels.ts +1 -0
  465. package/src/lexicon/types/com/atproto/moderation/createReport.ts +1 -0
  466. package/src/lexicon/types/com/atproto/repo/applyWrites.ts +1 -0
  467. package/src/lexicon/types/com/atproto/repo/createRecord.ts +1 -0
  468. package/src/lexicon/types/com/atproto/repo/deleteRecord.ts +1 -0
  469. package/src/lexicon/types/com/atproto/repo/describeRepo.ts +1 -0
  470. package/src/lexicon/types/com/atproto/repo/getRecord.ts +1 -0
  471. package/src/lexicon/types/com/atproto/repo/importRepo.ts +1 -0
  472. package/src/lexicon/types/com/atproto/repo/listMissingBlobs.ts +1 -0
  473. package/src/lexicon/types/com/atproto/repo/listRecords.ts +1 -0
  474. package/src/lexicon/types/com/atproto/repo/putRecord.ts +1 -0
  475. package/src/lexicon/types/com/atproto/repo/uploadBlob.ts +1 -0
  476. package/src/lexicon/types/com/atproto/server/activateAccount.ts +1 -0
  477. package/src/lexicon/types/com/atproto/server/checkAccountStatus.ts +1 -0
  478. package/src/lexicon/types/com/atproto/server/confirmEmail.ts +1 -0
  479. package/src/lexicon/types/com/atproto/server/createAccount.ts +1 -0
  480. package/src/lexicon/types/com/atproto/server/createAppPassword.ts +1 -0
  481. package/src/lexicon/types/com/atproto/server/createInviteCode.ts +1 -0
  482. package/src/lexicon/types/com/atproto/server/createInviteCodes.ts +1 -0
  483. package/src/lexicon/types/com/atproto/server/createSession.ts +1 -0
  484. package/src/lexicon/types/com/atproto/server/deactivateAccount.ts +1 -0
  485. package/src/lexicon/types/com/atproto/server/deleteAccount.ts +1 -0
  486. package/src/lexicon/types/com/atproto/server/deleteSession.ts +1 -0
  487. package/src/lexicon/types/com/atproto/server/describeServer.ts +1 -0
  488. package/src/lexicon/types/com/atproto/server/getAccountInviteCodes.ts +1 -0
  489. package/src/lexicon/types/com/atproto/server/getServiceAuth.ts +1 -0
  490. package/src/lexicon/types/com/atproto/server/getSession.ts +1 -0
  491. package/src/lexicon/types/com/atproto/server/listAppPasswords.ts +1 -0
  492. package/src/lexicon/types/com/atproto/server/refreshSession.ts +1 -0
  493. package/src/lexicon/types/com/atproto/server/requestAccountDelete.ts +1 -0
  494. package/src/lexicon/types/com/atproto/server/requestEmailConfirmation.ts +1 -0
  495. package/src/lexicon/types/com/atproto/server/requestEmailUpdate.ts +1 -0
  496. package/src/lexicon/types/com/atproto/server/requestPasswordReset.ts +1 -0
  497. package/src/lexicon/types/com/atproto/server/reserveSigningKey.ts +1 -0
  498. package/src/lexicon/types/com/atproto/server/resetPassword.ts +1 -0
  499. package/src/lexicon/types/com/atproto/server/revokeAppPassword.ts +1 -0
  500. package/src/lexicon/types/com/atproto/server/updateEmail.ts +1 -0
  501. package/src/lexicon/types/com/atproto/sync/getBlob.ts +1 -0
  502. package/src/lexicon/types/com/atproto/sync/getBlocks.ts +1 -0
  503. package/src/lexicon/types/com/atproto/sync/getCheckout.ts +1 -0
  504. package/src/lexicon/types/com/atproto/sync/getHead.ts +1 -0
  505. package/src/lexicon/types/com/atproto/sync/getLatestCommit.ts +1 -0
  506. package/src/lexicon/types/com/atproto/sync/getRecord.ts +1 -0
  507. package/src/lexicon/types/com/atproto/sync/getRepo.ts +1 -0
  508. package/src/lexicon/types/com/atproto/sync/getRepoStatus.ts +1 -0
  509. package/src/lexicon/types/com/atproto/sync/listBlobs.ts +1 -0
  510. package/src/lexicon/types/com/atproto/sync/listRepos.ts +1 -0
  511. package/src/lexicon/types/com/atproto/sync/notifyOfUpdate.ts +1 -0
  512. package/src/lexicon/types/com/atproto/sync/requestCrawl.ts +1 -0
  513. package/src/lexicon/types/com/atproto/temp/addReservedHandle.ts +1 -0
  514. package/src/lexicon/types/com/atproto/temp/checkSignupQueue.ts +1 -0
  515. package/src/lexicon/types/com/atproto/temp/fetchLabels.ts +1 -0
  516. package/src/lexicon/types/com/atproto/temp/requestPhoneVerification.ts +1 -0
  517. package/src/views/index.ts +57 -26
  518. package/tests/label-hydration.test.ts +5 -2
  519. package/tests/views/author-feed.test.ts +1 -1
  520. 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>,
@@ -7,7 +7,7 @@ import {
7
7
  ProfileViewDetailed,
8
8
  ProfileView,
9
9
  ProfileViewBasic,
10
- ViewerState as ProfileViewerState,
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 { uriToDid as creatorFromUri, safePinnedPost } from '../util/uris'
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
- if (state.actors?.get(did)?.takedownRef) return true
105
- if (state.actors?.get(did)?.upstreamStatus === 'takendown') return true
106
- if (state.actors?.get(did)?.upstreamStatus === 'suspended') return true
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
- !!actor.blockedBy ||
116
- !!actor.blocking ||
117
- !!actor.blockedByList ||
118
- !!actor.blockingByList
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 || !!actor.mutedByList
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 blockedByUri = viewer.blockedBy || viewer.blockedByList
286
- const blockingUri = viewer.blocking || viewer.blockingByList
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 || !!viewer.mutedByList,
290
- mutedByList: viewer.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: viewer.blockingByList
296
- ? this.listBasic(viewer.blockingByList, state)
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
- ): ProfileViewerState | undefined {
357
+ ): ProfileViewer | undefined {
327
358
  const viewer = state.profileViewers?.get(did)
328
359
  if (!viewer) return
329
- const blockedByUri = viewer.blockedBy || viewer.blockedByList
330
- const blockingUri = viewer.blocking || viewer.blockingByList
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'].split(',')
77
- expect(labelerHeaderDids.sort()).toEqual(
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],