@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
@@ -46,50 +46,46 @@ export type ListAggs = HydrationMap<ListAgg>
46
46
  export type RelationshipPair = [didA: string, didB: string]
47
47
 
48
48
  const dedupePairs = (pairs: RelationshipPair[]): RelationshipPair[] => {
49
- const mapped = pairs.reduce(
50
- (acc, cur) => {
51
- const sorted = ([...cur] as RelationshipPair).sort()
52
- acc[sorted.join('-')] = sorted
53
- return acc
54
- },
55
- {} as Record<string, RelationshipPair>,
56
- )
57
- return Object.values(mapped)
49
+ const deduped = pairs.reduce((acc, pair) => {
50
+ return acc.set(Blocks.key(...pair), pair)
51
+ }, new Map<string, RelationshipPair>())
52
+ return [...deduped.values()]
58
53
  }
59
54
 
60
55
  export class Blocks {
61
- _blocks: Map<string, boolean> = new Map()
56
+ _blocks: Map<string, BlockEntry> = new Map() // did:a,did:b -> block
62
57
  constructor() {}
63
58
 
64
59
  static key(didA: string, didB: string): string {
65
60
  return [didA, didB].sort().join(',')
66
61
  }
67
62
 
68
- set(didA: string, didB: string, exists: boolean): Blocks {
63
+ set(didA: string, didB: string, block: BlockEntry): Blocks {
69
64
  const key = Blocks.key(didA, didB)
70
- this._blocks.set(key, exists)
65
+ this._blocks.set(key, block)
71
66
  return this
72
67
  }
73
68
 
74
- has(didA: string, didB: string): boolean {
69
+ get(didA: string, didB: string): BlockEntry | null {
70
+ if (didA === didB) return null // ignore self-blocks
75
71
  const key = Blocks.key(didA, didB)
76
- return this._blocks.has(key)
77
- }
78
-
79
- isBlocked(didA: string, didB: string): boolean {
80
- if (didA === didB) return false // ignore self-blocks
81
- const key = Blocks.key(didA, didB)
82
- return this._blocks.get(key) ?? false
72
+ return this._blocks.get(key) ?? null
83
73
  }
84
74
 
85
75
  merge(blocks: Blocks): Blocks {
86
- blocks._blocks.forEach((exists, key) => {
87
- this._blocks.set(key, exists)
76
+ blocks._blocks.forEach((block, key) => {
77
+ this._blocks.set(key, block)
88
78
  })
89
79
  return this
90
80
  }
91
81
  }
92
82
 
83
+ // No "blocking" vs. "blocked" directionality: only suitable for bidirectional block checks
84
+ export type BlockEntry = {
85
+ blockUri: string | undefined
86
+ blockListUri: string | undefined
87
+ }
88
+
93
89
  export class GraphHydrator {
94
90
  constructor(public dataplane: DataPlaneClient) {}
95
91
 
@@ -162,7 +158,11 @@ export class GraphHydrator {
162
158
  const blocks = new Blocks()
163
159
  for (let i = 0; i < deduped.length; i++) {
164
160
  const pair = deduped[i]
165
- blocks.set(pair.a, pair.b, res.exists[i] ?? false)
161
+ const block = res.blocks[i]
162
+ blocks.set(pair.a, pair.b, {
163
+ blockUri: block.blockedBy || block.blocking || undefined,
164
+ blockListUri: block.blockedByList || block.blockingByList || undefined,
165
+ })
166
166
  }
167
167
  return blocks
168
168
  }
@@ -43,7 +43,7 @@ import {
43
43
  mergeNestedMaps,
44
44
  mergeManyMaps,
45
45
  } from './util'
46
- import { uriToDid as didFromUri } from '../util/uris'
46
+ import { uriToDid as didFromUri, uriToDid } from '../util/uris'
47
47
  import {
48
48
  FeedGenAggs,
49
49
  FeedGens,
@@ -279,10 +279,11 @@ export class Hydrator {
279
279
  // - profile basic
280
280
  async hydrateLists(uris: string[], ctx: HydrateCtx): Promise<HydrationState> {
281
281
  const [listsState, profilesState] = await Promise.all([
282
- await this.hydrateListsBasic(uris, ctx),
283
- await this.hydrateProfilesBasic(uris.map(didFromUri), ctx),
282
+ this.hydrateListsBasic(uris, ctx, {
283
+ skipAuthors: true, // handled via author profile hydration
284
+ }),
285
+ this.hydrateProfilesBasic(uris.map(didFromUri), ctx),
284
286
  ])
285
-
286
287
  return mergeStates(listsState, profilesState)
287
288
  }
288
289
 
@@ -291,19 +292,26 @@ export class Hydrator {
291
292
  async hydrateListsBasic(
292
293
  uris: string[],
293
294
  ctx: HydrateCtx,
295
+ opts?: { skipAuthors: boolean },
294
296
  ): Promise<HydrationState> {
295
- const [lists, listAggs, listViewers, labels] = await Promise.all([
297
+ const includeAuthorDids = opts?.skipAuthors ? [] : uris.map(uriToDid)
298
+ const [lists, listAggs, listViewers, labels, actors] = await Promise.all([
296
299
  this.graph.getLists(uris, ctx.includeTakedowns),
297
300
  this.graph.getListAggregates(uris.map((uri) => ({ uri }))),
298
301
  ctx.viewer ? this.graph.getListViewerStates(uris, ctx.viewer) : undefined,
299
- this.label.getLabelsForSubjects(uris, ctx.labelers),
302
+ this.label.getLabelsForSubjects(
303
+ [...uris, ...includeAuthorDids],
304
+ ctx.labelers,
305
+ ),
306
+ this.actor.getActors(includeAuthorDids, ctx.includeTakedowns),
300
307
  ])
301
308
 
302
309
  if (!ctx.includeTakedowns) {
303
310
  actionTakedownLabels(uris, lists, labels)
311
+ actionTakedownLabels(includeAuthorDids, actors, labels)
304
312
  }
305
313
 
306
- return { lists, listAggs, listViewers, labels, ctx }
314
+ return { lists, listAggs, listViewers, labels, actors, ctx }
307
315
  }
308
316
 
309
317
  // app.bsky.graph.defs#listItemView
@@ -533,12 +541,14 @@ export class Hydrator {
533
541
  }
534
542
  }
535
543
  // replace embed/parent/root pairs with block state
536
- const blocks = await this.graph.getBidirectionalBlocks(relationships)
544
+ const blocks = await this.hydrateBidirectionalBlocks(
545
+ pairsToMap(relationships),
546
+ )
537
547
  for (const [uri, { embed, parent, root }] of postBlocksPairs) {
538
548
  postBlocks.set(uri, {
539
- embed: !!embed && blocks.isBlocked(...embed),
540
- parent: !!parent && blocks.isBlocked(...parent),
541
- root: !!root && blocks.isBlocked(...root),
549
+ embed: !!embed && !!isBlocked(blocks, embed),
550
+ parent: !!parent && !!isBlocked(blocks, parent),
551
+ root: !!root && !!isBlocked(blocks, root),
542
552
  })
543
553
  }
544
554
  return postBlocks
@@ -756,8 +766,8 @@ export class Hydrator {
756
766
  )
757
767
  },
758
768
  )
759
- const blocks = await this.graph.getBidirectionalBlocks(
760
- listCreatorMemberPairs,
769
+ const blocks = await this.hydrateBidirectionalBlocks(
770
+ pairsToMap(listCreatorMemberPairs),
761
771
  )
762
772
  // sample top list items per starter pack based on their follows
763
773
  const listMemberAggs = await this.actor.getProfileAggregates(listMemberDids)
@@ -772,7 +782,8 @@ export class Hydrator {
772
782
  // update aggregation with list items for top 12 most followed members
773
783
  agg.listItemSampleUris = [
774
784
  ...members.listitems.filter(
775
- (li) => ctx.viewer === creator || !blocks?.isBlocked(creator, li.did),
785
+ (li) =>
786
+ ctx.viewer === creator || !isBlocked(blocks, [creator, li.did]),
776
787
  ),
777
788
  ]
778
789
  .sort((li1, li2) => {
@@ -814,11 +825,11 @@ export class Hydrator {
814
825
  pairs.push([authorDid, didFromUri(uri)])
815
826
  }
816
827
  }
817
- const blocks = await this.graph.getBidirectionalBlocks(pairs)
828
+ const blocks = await this.hydrateBidirectionalBlocks(pairsToMap(pairs))
818
829
  const likeBlocks = new HydrationMap<LikeBlock>()
819
830
  for (const [uri, like] of likes) {
820
831
  if (like) {
821
- likeBlocks.set(uri, blocks.isBlocked(authorDid, didFromUri(uri)))
832
+ likeBlocks.set(uri, isBlocked(blocks, [authorDid, didFromUri(uri)]))
822
833
  } else {
823
834
  likeBlocks.set(uri, null)
824
835
  }
@@ -898,13 +909,13 @@ export class Hydrator {
898
909
  pairs.push([didFromUri(uri), follow.record.subject])
899
910
  }
900
911
  }
901
- const blocks = await this.graph.getBidirectionalBlocks(pairs)
912
+ const blocks = await this.hydrateBidirectionalBlocks(pairsToMap(pairs))
902
913
  const followBlocks = new HydrationMap<FollowBlock>()
903
914
  for (const [uri, follow] of follows) {
904
915
  if (follow) {
905
916
  followBlocks.set(
906
917
  uri,
907
- blocks.isBlocked(didFromUri(uri), follow.record.subject),
918
+ isBlocked(blocks, [didFromUri(uri), follow.record.subject]),
908
919
  )
909
920
  } else {
910
921
  followBlocks.set(uri, null)
@@ -926,10 +937,32 @@ export class Hydrator {
926
937
  const result = new HydrationMap<HydrationMap<boolean>>()
927
938
  const blocks = await this.graph.getBidirectionalBlocks(pairs)
928
939
 
940
+ // lookup list authors to apply takedown status to blocklists
941
+ const listAuthorDids = new Set<string>()
942
+ for (const [source, targets] of didMap) {
943
+ for (const target of targets) {
944
+ const block = blocks.get(source, target)
945
+ if (block?.blockListUri) {
946
+ listAuthorDids.add(uriToDid(block.blockListUri))
947
+ }
948
+ }
949
+ }
950
+
951
+ const activeListAuthors = await this.actor.getActors(
952
+ [...listAuthorDids],
953
+ false,
954
+ )
955
+
929
956
  for (const [source, targets] of didMap) {
930
957
  const didBlocks = new HydrationMap<boolean>()
931
958
  for (const target of targets) {
932
- didBlocks.set(target, blocks.isBlocked(source, target))
959
+ const block = blocks.get(source, target)
960
+ const isBlocked = !!(
961
+ block?.blockUri ||
962
+ (block?.blockListUri &&
963
+ activeListAuthors.get(uriToDid(block.blockListUri)))
964
+ )
965
+ didBlocks.set(target, isBlocked)
933
966
  }
934
967
  result.set(source, didBlocks)
935
968
  }
@@ -1198,6 +1231,20 @@ const getListUrisFromThreadgates = (gates: Threadgates) => {
1198
1231
  return uris
1199
1232
  }
1200
1233
 
1234
+ const isBlocked = (blocks: BidirectionalBlocks, [a, b]: RelationshipPair) => {
1235
+ return blocks.get(a)?.get(b) ?? null
1236
+ }
1237
+
1238
+ const pairsToMap = (pairs: RelationshipPair[]): Map<string, string[]> => {
1239
+ const map = new Map<string, string[]>()
1240
+ for (const [a, b] of pairs) {
1241
+ const list = map.get(a) ?? []
1242
+ list.push(b)
1243
+ map.set(a, list)
1244
+ }
1245
+ return map
1246
+ }
1247
+
1201
1248
  export const mergeStates = (
1202
1249
  stateA: HydrationState,
1203
1250
  stateB: HydrationState,
@@ -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>,
@@ -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>,
@@ -40,6 +40,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
40
40
  input: HandlerInput
41
41
  req: express.Request
42
42
  res: express.Response
43
+ resetRouteRateLimits: () => Promise<void>
43
44
  }
44
45
  export type Handler<HA extends HandlerAuth = never> = (
45
46
  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>,
@@ -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>,
@@ -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>,
@@ -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>,
@@ -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>,
@@ -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>,
@@ -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>,
@@ -53,6 +53,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
53
53
  input: HandlerInput
54
54
  req: express.Request
55
55
  res: express.Response
56
+ resetRouteRateLimits: () => Promise<void>
56
57
  }
57
58
  export type Handler<HA extends HandlerAuth = never> = (
58
59
  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>,
@@ -40,6 +40,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
40
40
  input: HandlerInput
41
41
  req: express.Request
42
42
  res: express.Response
43
+ resetRouteRateLimits: () => Promise<void>
43
44
  }
44
45
  export type Handler<HA extends HandlerAuth = never> = (
45
46
  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>,
@@ -48,6 +48,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
48
48
  input: HandlerInput
49
49
  req: express.Request
50
50
  res: express.Response
51
+ resetRouteRateLimits: () => Promise<void>
51
52
  }
52
53
  export type Handler<HA extends HandlerAuth = never> = (
53
54
  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>,
@@ -51,6 +51,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
51
51
  input: HandlerInput
52
52
  req: express.Request
53
53
  res: express.Response
54
+ resetRouteRateLimits: () => Promise<void>
54
55
  }
55
56
  export type Handler<HA extends HandlerAuth = never> = (
56
57
  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>,
@@ -48,6 +48,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
48
48
  input: HandlerInput
49
49
  req: express.Request
50
50
  res: express.Response
51
+ resetRouteRateLimits: () => Promise<void>
51
52
  }
52
53
  export type Handler<HA extends HandlerAuth = never> = (
53
54
  ctx: HandlerReqCtx<HA>,
@@ -48,6 +48,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
48
48
  input: HandlerInput
49
49
  req: express.Request
50
50
  res: express.Response
51
+ resetRouteRateLimits: () => Promise<void>
51
52
  }
52
53
  export type Handler<HA extends HandlerAuth = never> = (
53
54
  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>,
@@ -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>,
@@ -66,6 +66,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
66
66
  input: HandlerInput
67
67
  req: express.Request
68
68
  res: express.Response
69
+ resetRouteRateLimits: () => Promise<void>
69
70
  }
70
71
  export type Handler<HA extends HandlerAuth = never> = (
71
72
  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>,
@@ -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>,
@@ -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>,
@@ -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>,
@@ -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>,
@@ -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>,
@@ -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>,
@@ -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>,
@@ -49,6 +49,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
49
49
  input: HandlerInput
50
50
  req: express.Request
51
51
  res: express.Response
52
+ resetRouteRateLimits: () => Promise<void>
52
53
  }
53
54
  export type Handler<HA extends HandlerAuth = never> = (
54
55
  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>,
@@ -40,6 +40,7 @@ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
40
40
  input: HandlerInput
41
41
  req: express.Request
42
42
  res: express.Response
43
+ resetRouteRateLimits: () => Promise<void>
43
44
  }
44
45
  export type Handler<HA extends HandlerAuth = never> = (
45
46
  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>,
@@ -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>,
@@ -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>,
@@ -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>,
@@ -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>,