@atproto/bsky 0.0.113 → 0.0.115

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 (621) hide show
  1. package/CHANGELOG.md +33 -0
  2. package/bin/migration-create.ts +2 -2
  3. package/dist/api/app/bsky/actor/getProfile.d.ts +1 -1
  4. package/dist/api/app/bsky/actor/getProfile.d.ts.map +1 -1
  5. package/dist/api/app/bsky/actor/getProfile.js +1 -1
  6. package/dist/api/app/bsky/actor/getProfile.js.map +1 -1
  7. package/dist/api/app/bsky/actor/getProfiles.d.ts +1 -1
  8. package/dist/api/app/bsky/actor/getProfiles.d.ts.map +1 -1
  9. package/dist/api/app/bsky/actor/getProfiles.js +2 -2
  10. package/dist/api/app/bsky/actor/getProfiles.js.map +1 -1
  11. package/dist/api/app/bsky/actor/getSuggestions.d.ts +1 -1
  12. package/dist/api/app/bsky/actor/getSuggestions.d.ts.map +1 -1
  13. package/dist/api/app/bsky/actor/getSuggestions.js +1 -1
  14. package/dist/api/app/bsky/actor/getSuggestions.js.map +1 -1
  15. package/dist/api/app/bsky/actor/searchActors.d.ts +1 -1
  16. package/dist/api/app/bsky/actor/searchActors.d.ts.map +1 -1
  17. package/dist/api/app/bsky/actor/searchActors.js +1 -1
  18. package/dist/api/app/bsky/actor/searchActors.js.map +1 -1
  19. package/dist/api/app/bsky/actor/searchActorsTypeahead.d.ts +1 -1
  20. package/dist/api/app/bsky/actor/searchActorsTypeahead.d.ts.map +1 -1
  21. package/dist/api/app/bsky/actor/searchActorsTypeahead.js +1 -1
  22. package/dist/api/app/bsky/actor/searchActorsTypeahead.js.map +1 -1
  23. package/dist/api/app/bsky/feed/getActorFeeds.d.ts +1 -1
  24. package/dist/api/app/bsky/feed/getActorFeeds.d.ts.map +1 -1
  25. package/dist/api/app/bsky/feed/getActorFeeds.js +2 -2
  26. package/dist/api/app/bsky/feed/getActorFeeds.js.map +1 -1
  27. package/dist/api/app/bsky/feed/getActorLikes.d.ts +1 -1
  28. package/dist/api/app/bsky/feed/getActorLikes.d.ts.map +1 -1
  29. package/dist/api/app/bsky/feed/getActorLikes.js +6 -6
  30. package/dist/api/app/bsky/feed/getActorLikes.js.map +1 -1
  31. package/dist/api/app/bsky/feed/getAuthorFeed.d.ts +5 -5
  32. package/dist/api/app/bsky/feed/getAuthorFeed.d.ts.map +1 -1
  33. package/dist/api/app/bsky/feed/getAuthorFeed.js +7 -7
  34. package/dist/api/app/bsky/feed/getAuthorFeed.js.map +1 -1
  35. package/dist/api/app/bsky/feed/getFeed.d.ts +2 -2
  36. package/dist/api/app/bsky/feed/getFeed.d.ts.map +1 -1
  37. package/dist/api/app/bsky/feed/getFeed.js +5 -6
  38. package/dist/api/app/bsky/feed/getFeed.js.map +1 -1
  39. package/dist/api/app/bsky/feed/getFeedGenerator.d.ts +1 -1
  40. package/dist/api/app/bsky/feed/getFeedGenerator.d.ts.map +1 -1
  41. package/dist/api/app/bsky/feed/getFeedGenerator.js.map +1 -1
  42. package/dist/api/app/bsky/feed/getFeedGenerators.d.ts +1 -1
  43. package/dist/api/app/bsky/feed/getFeedGenerators.d.ts.map +1 -1
  44. package/dist/api/app/bsky/feed/getFeedGenerators.js.map +1 -1
  45. package/dist/api/app/bsky/feed/getLikes.d.ts +1 -1
  46. package/dist/api/app/bsky/feed/getLikes.d.ts.map +1 -1
  47. package/dist/api/app/bsky/feed/getLikes.js +2 -2
  48. package/dist/api/app/bsky/feed/getLikes.js.map +1 -1
  49. package/dist/api/app/bsky/feed/getListFeed.d.ts +4 -4
  50. package/dist/api/app/bsky/feed/getListFeed.d.ts.map +1 -1
  51. package/dist/api/app/bsky/feed/getListFeed.js +7 -7
  52. package/dist/api/app/bsky/feed/getListFeed.js.map +1 -1
  53. package/dist/api/app/bsky/feed/getPostThread.d.ts +1 -1
  54. package/dist/api/app/bsky/feed/getPostThread.d.ts.map +1 -1
  55. package/dist/api/app/bsky/feed/getPostThread.js +2 -2
  56. package/dist/api/app/bsky/feed/getPostThread.js.map +1 -1
  57. package/dist/api/app/bsky/feed/getPosts.d.ts +1 -1
  58. package/dist/api/app/bsky/feed/getPosts.d.ts.map +1 -1
  59. package/dist/api/app/bsky/feed/getPosts.js +1 -1
  60. package/dist/api/app/bsky/feed/getPosts.js.map +1 -1
  61. package/dist/api/app/bsky/feed/getQuotes.d.ts +1 -1
  62. package/dist/api/app/bsky/feed/getQuotes.d.ts.map +1 -1
  63. package/dist/api/app/bsky/feed/getQuotes.js +6 -6
  64. package/dist/api/app/bsky/feed/getQuotes.js.map +1 -1
  65. package/dist/api/app/bsky/feed/getRepostedBy.d.ts +1 -1
  66. package/dist/api/app/bsky/feed/getRepostedBy.d.ts.map +1 -1
  67. package/dist/api/app/bsky/feed/getRepostedBy.js +1 -1
  68. package/dist/api/app/bsky/feed/getRepostedBy.js.map +1 -1
  69. package/dist/api/app/bsky/feed/getSuggestedFeeds.d.ts +1 -1
  70. package/dist/api/app/bsky/feed/getSuggestedFeeds.d.ts.map +1 -1
  71. package/dist/api/app/bsky/feed/getSuggestedFeeds.js.map +1 -1
  72. package/dist/api/app/bsky/feed/getTimeline.d.ts +4 -4
  73. package/dist/api/app/bsky/feed/getTimeline.d.ts.map +1 -1
  74. package/dist/api/app/bsky/feed/getTimeline.js +6 -6
  75. package/dist/api/app/bsky/feed/getTimeline.js.map +1 -1
  76. package/dist/api/app/bsky/feed/searchPosts.d.ts +1 -1
  77. package/dist/api/app/bsky/feed/searchPosts.d.ts.map +1 -1
  78. package/dist/api/app/bsky/feed/searchPosts.js +1 -1
  79. package/dist/api/app/bsky/feed/searchPosts.js.map +1 -1
  80. package/dist/api/app/bsky/graph/getActorStarterPacks.d.ts +1 -1
  81. package/dist/api/app/bsky/graph/getActorStarterPacks.d.ts.map +1 -1
  82. package/dist/api/app/bsky/graph/getActorStarterPacks.js +5 -5
  83. package/dist/api/app/bsky/graph/getActorStarterPacks.js.map +1 -1
  84. package/dist/api/app/bsky/graph/getBlocks.d.ts +1 -1
  85. package/dist/api/app/bsky/graph/getBlocks.d.ts.map +1 -1
  86. package/dist/api/app/bsky/graph/getBlocks.js.map +1 -1
  87. package/dist/api/app/bsky/graph/getFollowers.d.ts +1 -1
  88. package/dist/api/app/bsky/graph/getFollowers.d.ts.map +1 -1
  89. package/dist/api/app/bsky/graph/getFollowers.js +1 -1
  90. package/dist/api/app/bsky/graph/getFollowers.js.map +1 -1
  91. package/dist/api/app/bsky/graph/getFollows.d.ts +1 -1
  92. package/dist/api/app/bsky/graph/getFollows.d.ts.map +1 -1
  93. package/dist/api/app/bsky/graph/getFollows.js +1 -1
  94. package/dist/api/app/bsky/graph/getFollows.js.map +1 -1
  95. package/dist/api/app/bsky/graph/getKnownFollowers.d.ts +1 -1
  96. package/dist/api/app/bsky/graph/getKnownFollowers.d.ts.map +1 -1
  97. package/dist/api/app/bsky/graph/getKnownFollowers.js.map +1 -1
  98. package/dist/api/app/bsky/graph/getList.d.ts +1 -1
  99. package/dist/api/app/bsky/graph/getList.d.ts.map +1 -1
  100. package/dist/api/app/bsky/graph/getList.js +2 -2
  101. package/dist/api/app/bsky/graph/getList.js.map +1 -1
  102. package/dist/api/app/bsky/graph/getListBlocks.d.ts +1 -1
  103. package/dist/api/app/bsky/graph/getListBlocks.d.ts.map +1 -1
  104. package/dist/api/app/bsky/graph/getListBlocks.js.map +1 -1
  105. package/dist/api/app/bsky/graph/getListMutes.d.ts +1 -1
  106. package/dist/api/app/bsky/graph/getListMutes.d.ts.map +1 -1
  107. package/dist/api/app/bsky/graph/getListMutes.js.map +1 -1
  108. package/dist/api/app/bsky/graph/getLists.d.ts +1 -1
  109. package/dist/api/app/bsky/graph/getLists.d.ts.map +1 -1
  110. package/dist/api/app/bsky/graph/getLists.js.map +1 -1
  111. package/dist/api/app/bsky/graph/getMutes.d.ts +1 -1
  112. package/dist/api/app/bsky/graph/getMutes.d.ts.map +1 -1
  113. package/dist/api/app/bsky/graph/getMutes.js.map +1 -1
  114. package/dist/api/app/bsky/graph/getRelationships.d.ts +1 -1
  115. package/dist/api/app/bsky/graph/getRelationships.d.ts.map +1 -1
  116. package/dist/api/app/bsky/graph/getStarterPack.d.ts +1 -1
  117. package/dist/api/app/bsky/graph/getStarterPack.d.ts.map +1 -1
  118. package/dist/api/app/bsky/graph/getStarterPack.js.map +1 -1
  119. package/dist/api/app/bsky/graph/getStarterPacks.d.ts +1 -1
  120. package/dist/api/app/bsky/graph/getStarterPacks.d.ts.map +1 -1
  121. package/dist/api/app/bsky/graph/getStarterPacks.js +1 -1
  122. package/dist/api/app/bsky/graph/getStarterPacks.js.map +1 -1
  123. package/dist/api/app/bsky/graph/getSuggestedFollowsByActor.d.ts +1 -1
  124. package/dist/api/app/bsky/graph/getSuggestedFollowsByActor.d.ts.map +1 -1
  125. package/dist/api/app/bsky/graph/getSuggestedFollowsByActor.js.map +1 -1
  126. package/dist/api/app/bsky/graph/muteActor.d.ts +1 -1
  127. package/dist/api/app/bsky/graph/muteActor.d.ts.map +1 -1
  128. package/dist/api/app/bsky/graph/muteActorList.d.ts +1 -1
  129. package/dist/api/app/bsky/graph/muteActorList.d.ts.map +1 -1
  130. package/dist/api/app/bsky/graph/muteThread.d.ts +1 -1
  131. package/dist/api/app/bsky/graph/muteThread.d.ts.map +1 -1
  132. package/dist/api/app/bsky/graph/searchStarterPacks.d.ts +1 -1
  133. package/dist/api/app/bsky/graph/searchStarterPacks.d.ts.map +1 -1
  134. package/dist/api/app/bsky/graph/searchStarterPacks.js +2 -2
  135. package/dist/api/app/bsky/graph/searchStarterPacks.js.map +1 -1
  136. package/dist/api/app/bsky/graph/unmuteActor.d.ts +1 -1
  137. package/dist/api/app/bsky/graph/unmuteActor.d.ts.map +1 -1
  138. package/dist/api/app/bsky/graph/unmuteActorList.d.ts +1 -1
  139. package/dist/api/app/bsky/graph/unmuteActorList.d.ts.map +1 -1
  140. package/dist/api/app/bsky/graph/unmuteThread.d.ts +1 -1
  141. package/dist/api/app/bsky/graph/unmuteThread.d.ts.map +1 -1
  142. package/dist/api/app/bsky/labeler/getServices.d.ts +1 -1
  143. package/dist/api/app/bsky/labeler/getServices.d.ts.map +1 -1
  144. package/dist/api/app/bsky/labeler/getServices.js.map +1 -1
  145. package/dist/api/app/bsky/notification/getUnreadCount.d.ts +1 -1
  146. package/dist/api/app/bsky/notification/getUnreadCount.d.ts.map +1 -1
  147. package/dist/api/app/bsky/notification/getUnreadCount.js.map +1 -1
  148. package/dist/api/app/bsky/notification/listNotifications.d.ts +1 -1
  149. package/dist/api/app/bsky/notification/listNotifications.d.ts.map +1 -1
  150. package/dist/api/app/bsky/notification/listNotifications.js +1 -1
  151. package/dist/api/app/bsky/notification/listNotifications.js.map +1 -1
  152. package/dist/api/app/bsky/notification/putPreferences.d.ts +1 -1
  153. package/dist/api/app/bsky/notification/putPreferences.d.ts.map +1 -1
  154. package/dist/api/app/bsky/notification/registerPush.d.ts +1 -1
  155. package/dist/api/app/bsky/notification/registerPush.d.ts.map +1 -1
  156. package/dist/api/app/bsky/notification/updateSeen.d.ts +1 -1
  157. package/dist/api/app/bsky/notification/updateSeen.d.ts.map +1 -1
  158. package/dist/api/app/bsky/notification/updateSeen.js +2 -5
  159. package/dist/api/app/bsky/notification/updateSeen.js.map +1 -1
  160. package/dist/api/app/bsky/unspecced/getConfig.d.ts +1 -1
  161. package/dist/api/app/bsky/unspecced/getConfig.d.ts.map +1 -1
  162. package/dist/api/app/bsky/unspecced/getPopularFeedGenerators.d.ts +1 -1
  163. package/dist/api/app/bsky/unspecced/getPopularFeedGenerators.d.ts.map +1 -1
  164. package/dist/api/app/bsky/unspecced/getPopularFeedGenerators.js.map +1 -1
  165. package/dist/api/app/bsky/unspecced/getTaggedSuggestions.d.ts +1 -1
  166. package/dist/api/app/bsky/unspecced/getTaggedSuggestions.d.ts.map +1 -1
  167. package/dist/api/app/bsky/unspecced/getTrendingTopics.d.ts +1 -1
  168. package/dist/api/app/bsky/unspecced/getTrendingTopics.d.ts.map +1 -1
  169. package/dist/api/app/bsky/unspecced/getTrendingTopics.js +1 -1
  170. package/dist/api/app/bsky/unspecced/getTrendingTopics.js.map +1 -1
  171. package/dist/api/blob-dispatcher.d.ts.map +1 -1
  172. package/dist/api/blob-dispatcher.js +1 -1
  173. package/dist/api/blob-dispatcher.js.map +1 -1
  174. package/dist/api/blob-resolver.d.ts +3 -3
  175. package/dist/api/blob-resolver.d.ts.map +1 -1
  176. package/dist/api/blob-resolver.js +4 -4
  177. package/dist/api/blob-resolver.js.map +1 -1
  178. package/dist/api/com/atproto/admin/getAccountInfos.d.ts +1 -1
  179. package/dist/api/com/atproto/admin/getAccountInfos.d.ts.map +1 -1
  180. package/dist/api/com/atproto/admin/getAccountInfos.js.map +1 -1
  181. package/dist/api/com/atproto/admin/getSubjectStatus.d.ts +1 -1
  182. package/dist/api/com/atproto/admin/getSubjectStatus.d.ts.map +1 -1
  183. package/dist/api/com/atproto/admin/updateSubjectStatus.d.ts +1 -1
  184. package/dist/api/com/atproto/admin/updateSubjectStatus.d.ts.map +1 -1
  185. package/dist/api/com/atproto/identity/resolveHandle.d.ts +1 -1
  186. package/dist/api/com/atproto/identity/resolveHandle.d.ts.map +1 -1
  187. package/dist/api/com/atproto/identity/resolveHandle.js +1 -1
  188. package/dist/api/com/atproto/identity/resolveHandle.js.map +1 -1
  189. package/dist/api/com/atproto/label/queryLabels.d.ts +1 -1
  190. package/dist/api/com/atproto/label/queryLabels.d.ts.map +1 -1
  191. package/dist/api/com/atproto/label/queryLabels.js.map +1 -1
  192. package/dist/api/com/atproto/repo/getRecord.d.ts +1 -1
  193. package/dist/api/com/atproto/repo/getRecord.d.ts.map +1 -1
  194. package/dist/api/com/atproto/repo/getRecord.js +1 -1
  195. package/dist/api/com/atproto/repo/getRecord.js.map +1 -1
  196. package/dist/api/com/atproto/temp/fetchLabels.d.ts +1 -1
  197. package/dist/api/com/atproto/temp/fetchLabels.d.ts.map +1 -1
  198. package/dist/api/com/atproto/temp/fetchLabels.js.map +1 -1
  199. package/dist/api/health.d.ts +3 -3
  200. package/dist/api/health.d.ts.map +1 -1
  201. package/dist/api/health.js +2 -5
  202. package/dist/api/health.js.map +1 -1
  203. package/dist/api/index.d.ts +1 -1
  204. package/dist/api/index.d.ts.map +1 -1
  205. package/dist/api/index.js +20 -20
  206. package/dist/api/index.js.map +1 -1
  207. package/dist/api/well-known.d.ts +3 -3
  208. package/dist/api/well-known.d.ts.map +1 -1
  209. package/dist/api/well-known.js +2 -5
  210. package/dist/api/well-known.js.map +1 -1
  211. package/dist/auth-verifier.d.ts +1 -1
  212. package/dist/auth-verifier.d.ts.map +1 -1
  213. package/dist/auth-verifier.js +3 -3
  214. package/dist/auth-verifier.js.map +1 -1
  215. package/dist/bsync.d.ts +2 -2
  216. package/dist/bsync.d.ts.map +1 -1
  217. package/dist/bsync.js +1 -1
  218. package/dist/bsync.js.map +1 -1
  219. package/dist/context.d.ts +7 -8
  220. package/dist/context.d.ts.map +1 -1
  221. package/dist/context.js +1 -2
  222. package/dist/context.js.map +1 -1
  223. package/dist/courier.d.ts +2 -2
  224. package/dist/courier.d.ts.map +1 -1
  225. package/dist/courier.js +1 -1
  226. package/dist/courier.js.map +1 -1
  227. package/dist/data-plane/bsync/index.d.ts +1 -1
  228. package/dist/data-plane/bsync/index.d.ts.map +1 -1
  229. package/dist/data-plane/bsync/index.js +6 -6
  230. package/dist/data-plane/bsync/index.js.map +1 -1
  231. package/dist/data-plane/client.d.ts.map +1 -1
  232. package/dist/data-plane/client.js +1 -1
  233. package/dist/data-plane/client.js.map +1 -1
  234. package/dist/data-plane/server/background.d.ts.map +1 -1
  235. package/dist/data-plane/server/background.js.map +1 -1
  236. package/dist/data-plane/server/db/database-schema.d.ts +26 -27
  237. package/dist/data-plane/server/db/database-schema.d.ts.map +1 -1
  238. package/dist/data-plane/server/db/db.d.ts +2 -2
  239. package/dist/data-plane/server/db/db.d.ts.map +1 -1
  240. package/dist/data-plane/server/db/db.js +6 -6
  241. package/dist/data-plane/server/db/db.js.map +1 -1
  242. package/dist/data-plane/server/db/util.d.ts +1 -1
  243. package/dist/data-plane/server/db/util.d.ts.map +1 -1
  244. package/dist/data-plane/server/index.d.ts +2 -2
  245. package/dist/data-plane/server/index.d.ts.map +1 -1
  246. package/dist/data-plane/server/index.js +4 -4
  247. package/dist/data-plane/server/index.js.map +1 -1
  248. package/dist/data-plane/server/indexing/index.d.ts +14 -14
  249. package/dist/data-plane/server/indexing/index.d.ts.map +1 -1
  250. package/dist/data-plane/server/indexing/index.js +16 -16
  251. package/dist/data-plane/server/indexing/index.js.map +1 -1
  252. package/dist/data-plane/server/indexing/plugins/block.d.ts +2 -2
  253. package/dist/data-plane/server/indexing/plugins/block.d.ts.map +1 -1
  254. package/dist/data-plane/server/indexing/plugins/block.js +2 -5
  255. package/dist/data-plane/server/indexing/plugins/block.js.map +1 -1
  256. package/dist/data-plane/server/indexing/plugins/chat-declaration.d.ts +2 -2
  257. package/dist/data-plane/server/indexing/plugins/chat-declaration.d.ts.map +1 -1
  258. package/dist/data-plane/server/indexing/plugins/chat-declaration.js +2 -5
  259. package/dist/data-plane/server/indexing/plugins/chat-declaration.js.map +1 -1
  260. package/dist/data-plane/server/indexing/plugins/feed-generator.d.ts +2 -2
  261. package/dist/data-plane/server/indexing/plugins/feed-generator.d.ts.map +1 -1
  262. package/dist/data-plane/server/indexing/plugins/feed-generator.js +2 -5
  263. package/dist/data-plane/server/indexing/plugins/feed-generator.js.map +1 -1
  264. package/dist/data-plane/server/indexing/plugins/follow.d.ts +2 -2
  265. package/dist/data-plane/server/indexing/plugins/follow.d.ts.map +1 -1
  266. package/dist/data-plane/server/indexing/plugins/follow.js +2 -5
  267. package/dist/data-plane/server/indexing/plugins/follow.js.map +1 -1
  268. package/dist/data-plane/server/indexing/plugins/labeler.d.ts +2 -2
  269. package/dist/data-plane/server/indexing/plugins/labeler.d.ts.map +1 -1
  270. package/dist/data-plane/server/indexing/plugins/labeler.js +2 -5
  271. package/dist/data-plane/server/indexing/plugins/labeler.js.map +1 -1
  272. package/dist/data-plane/server/indexing/plugins/like.d.ts +2 -2
  273. package/dist/data-plane/server/indexing/plugins/like.d.ts.map +1 -1
  274. package/dist/data-plane/server/indexing/plugins/like.js +2 -5
  275. package/dist/data-plane/server/indexing/plugins/like.js.map +1 -1
  276. package/dist/data-plane/server/indexing/plugins/list-block.d.ts +2 -2
  277. package/dist/data-plane/server/indexing/plugins/list-block.d.ts.map +1 -1
  278. package/dist/data-plane/server/indexing/plugins/list-block.js +2 -5
  279. package/dist/data-plane/server/indexing/plugins/list-block.js.map +1 -1
  280. package/dist/data-plane/server/indexing/plugins/list-item.d.ts +2 -2
  281. package/dist/data-plane/server/indexing/plugins/list-item.d.ts.map +1 -1
  282. package/dist/data-plane/server/indexing/plugins/list-item.js +3 -6
  283. package/dist/data-plane/server/indexing/plugins/list-item.js.map +1 -1
  284. package/dist/data-plane/server/indexing/plugins/list.d.ts +3 -3
  285. package/dist/data-plane/server/indexing/plugins/list.d.ts.map +1 -1
  286. package/dist/data-plane/server/indexing/plugins/list.js +2 -5
  287. package/dist/data-plane/server/indexing/plugins/list.js.map +1 -1
  288. package/dist/data-plane/server/indexing/plugins/post-gate.d.ts +3 -3
  289. package/dist/data-plane/server/indexing/plugins/post-gate.d.ts.map +1 -1
  290. package/dist/data-plane/server/indexing/plugins/post-gate.js +2 -5
  291. package/dist/data-plane/server/indexing/plugins/post-gate.js.map +1 -1
  292. package/dist/data-plane/server/indexing/plugins/post.d.ts +3 -3
  293. package/dist/data-plane/server/indexing/plugins/post.d.ts.map +1 -1
  294. package/dist/data-plane/server/indexing/plugins/post.js +21 -24
  295. package/dist/data-plane/server/indexing/plugins/post.js.map +1 -1
  296. package/dist/data-plane/server/indexing/plugins/profile.d.ts +3 -3
  297. package/dist/data-plane/server/indexing/plugins/profile.d.ts.map +1 -1
  298. package/dist/data-plane/server/indexing/plugins/profile.js +2 -5
  299. package/dist/data-plane/server/indexing/plugins/profile.js.map +1 -1
  300. package/dist/data-plane/server/indexing/plugins/repost.d.ts +2 -2
  301. package/dist/data-plane/server/indexing/plugins/repost.d.ts.map +1 -1
  302. package/dist/data-plane/server/indexing/plugins/repost.js +2 -5
  303. package/dist/data-plane/server/indexing/plugins/repost.js.map +1 -1
  304. package/dist/data-plane/server/indexing/plugins/starter-pack.d.ts +2 -2
  305. package/dist/data-plane/server/indexing/plugins/starter-pack.d.ts.map +1 -1
  306. package/dist/data-plane/server/indexing/plugins/starter-pack.js +2 -5
  307. package/dist/data-plane/server/indexing/plugins/starter-pack.js.map +1 -1
  308. package/dist/data-plane/server/indexing/plugins/thread-gate.d.ts +3 -3
  309. package/dist/data-plane/server/indexing/plugins/thread-gate.d.ts.map +1 -1
  310. package/dist/data-plane/server/indexing/plugins/thread-gate.js +2 -5
  311. package/dist/data-plane/server/indexing/plugins/thread-gate.js.map +1 -1
  312. package/dist/data-plane/server/indexing/processor.d.ts +2 -2
  313. package/dist/data-plane/server/indexing/processor.d.ts.map +1 -1
  314. package/dist/data-plane/server/indexing/processor.js +1 -1
  315. package/dist/data-plane/server/indexing/processor.js.map +1 -1
  316. package/dist/data-plane/server/routes/feeds.d.ts.map +1 -1
  317. package/dist/data-plane/server/routes/feeds.js +1 -1
  318. package/dist/data-plane/server/routes/feeds.js.map +1 -1
  319. package/dist/data-plane/server/routes/follows.d.ts.map +1 -1
  320. package/dist/data-plane/server/routes/follows.js +1 -1
  321. package/dist/data-plane/server/routes/follows.js.map +1 -1
  322. package/dist/data-plane/server/routes/identity.d.ts +1 -1
  323. package/dist/data-plane/server/routes/identity.d.ts.map +1 -1
  324. package/dist/data-plane/server/routes/identity.js +1 -1
  325. package/dist/data-plane/server/routes/identity.js.map +1 -1
  326. package/dist/data-plane/server/routes/index.d.ts.map +1 -1
  327. package/dist/data-plane/server/routes/index.js +1 -1
  328. package/dist/data-plane/server/routes/index.js.map +1 -1
  329. package/dist/data-plane/server/routes/interactions.d.ts.map +1 -1
  330. package/dist/data-plane/server/routes/interactions.js +11 -11
  331. package/dist/data-plane/server/routes/interactions.js.map +1 -1
  332. package/dist/data-plane/server/routes/labels.d.ts.map +1 -1
  333. package/dist/data-plane/server/routes/labels.js.map +1 -1
  334. package/dist/data-plane/server/routes/likes.d.ts.map +1 -1
  335. package/dist/data-plane/server/routes/likes.js +1 -2
  336. package/dist/data-plane/server/routes/likes.js.map +1 -1
  337. package/dist/data-plane/server/routes/lists.d.ts.map +1 -1
  338. package/dist/data-plane/server/routes/lists.js +2 -2
  339. package/dist/data-plane/server/routes/lists.js.map +1 -1
  340. package/dist/data-plane/server/routes/mutes.d.ts.map +1 -1
  341. package/dist/data-plane/server/routes/mutes.js +7 -7
  342. package/dist/data-plane/server/routes/mutes.js.map +1 -1
  343. package/dist/data-plane/server/routes/notifs.js +2 -2
  344. package/dist/data-plane/server/routes/notifs.js.map +1 -1
  345. package/dist/data-plane/server/routes/posts.d.ts.map +1 -1
  346. package/dist/data-plane/server/routes/posts.js +1 -1
  347. package/dist/data-plane/server/routes/posts.js.map +1 -1
  348. package/dist/data-plane/server/routes/profile.d.ts.map +1 -1
  349. package/dist/data-plane/server/routes/profile.js +4 -4
  350. package/dist/data-plane/server/routes/profile.js.map +1 -1
  351. package/dist/data-plane/server/routes/records.d.ts.map +1 -1
  352. package/dist/data-plane/server/routes/records.js +7 -7
  353. package/dist/data-plane/server/routes/records.js.map +1 -1
  354. package/dist/data-plane/server/routes/relationships.d.ts.map +1 -1
  355. package/dist/data-plane/server/routes/relationships.js +9 -9
  356. package/dist/data-plane/server/routes/relationships.js.map +1 -1
  357. package/dist/data-plane/server/routes/reposts.d.ts.map +1 -1
  358. package/dist/data-plane/server/routes/reposts.js +1 -2
  359. package/dist/data-plane/server/routes/reposts.js.map +1 -1
  360. package/dist/data-plane/server/routes/suggestions.d.ts.map +1 -1
  361. package/dist/data-plane/server/routes/suggestions.js.map +1 -1
  362. package/dist/data-plane/server/subscription.d.ts +3 -3
  363. package/dist/data-plane/server/subscription.d.ts.map +1 -1
  364. package/dist/data-plane/server/subscription.js +2 -2
  365. package/dist/data-plane/server/subscription.js.map +1 -1
  366. package/dist/data-plane/server/util.d.ts +1 -1
  367. package/dist/data-plane/server/util.d.ts.map +1 -1
  368. package/dist/data-plane/server/util.js +16 -5
  369. package/dist/data-plane/server/util.js.map +1 -1
  370. package/dist/error.d.ts.map +1 -1
  371. package/dist/error.js.map +1 -1
  372. package/dist/feature-gates.d.ts.map +1 -1
  373. package/dist/feature-gates.js.map +1 -1
  374. package/dist/hydration/feed.d.ts +3 -3
  375. package/dist/hydration/feed.d.ts.map +1 -1
  376. package/dist/hydration/feed.js +1 -1
  377. package/dist/hydration/feed.js.map +1 -1
  378. package/dist/hydration/graph.d.ts +4 -4
  379. package/dist/hydration/graph.d.ts.map +1 -1
  380. package/dist/hydration/graph.js.map +1 -1
  381. package/dist/hydration/hydrator.d.ts +4 -4
  382. package/dist/hydration/hydrator.d.ts.map +1 -1
  383. package/dist/hydration/hydrator.js +4 -4
  384. package/dist/hydration/hydrator.js.map +1 -1
  385. package/dist/hydration/label.d.ts +2 -2
  386. package/dist/hydration/label.d.ts.map +1 -1
  387. package/dist/hydration/label.js +1 -1
  388. package/dist/hydration/label.js.map +1 -1
  389. package/dist/hydration/util.d.ts.map +1 -1
  390. package/dist/hydration/util.js +2 -2
  391. package/dist/hydration/util.js.map +1 -1
  392. package/dist/image/index.d.ts +1 -1
  393. package/dist/image/index.d.ts.map +1 -1
  394. package/dist/image/server.d.ts +1 -1
  395. package/dist/image/server.d.ts.map +1 -1
  396. package/dist/image/server.js +3 -3
  397. package/dist/image/server.js.map +1 -1
  398. package/dist/image/sharp.d.ts.map +1 -1
  399. package/dist/image/sharp.js +1 -1
  400. package/dist/image/sharp.js.map +1 -1
  401. package/dist/index.d.ts +6 -6
  402. package/dist/index.d.ts.map +1 -1
  403. package/dist/index.js +22 -22
  404. package/dist/index.js.map +1 -1
  405. package/dist/lexicon/lexicons.d.ts +68 -4
  406. package/dist/lexicon/lexicons.d.ts.map +1 -1
  407. package/dist/lexicon/lexicons.js +39 -0
  408. package/dist/lexicon/lexicons.js.map +1 -1
  409. package/dist/lexicon/types/app/bsky/actor/defs.d.ts +19 -1
  410. package/dist/lexicon/types/app/bsky/actor/defs.d.ts.map +1 -1
  411. package/dist/lexicon/types/app/bsky/actor/defs.js +10 -0
  412. package/dist/lexicon/types/app/bsky/actor/defs.js.map +1 -1
  413. package/dist/lexicon/types/app/bsky/feed/postgate.d.ts +1 -0
  414. package/dist/lexicon/types/app/bsky/feed/postgate.d.ts.map +1 -1
  415. package/dist/lexicon/types/app/bsky/feed/postgate.js.map +1 -1
  416. package/dist/lexicon/types/app/bsky/feed/threadgate.d.ts +8 -1
  417. package/dist/lexicon/types/app/bsky/feed/threadgate.d.ts.map +1 -1
  418. package/dist/lexicon/types/app/bsky/feed/threadgate.js +10 -0
  419. package/dist/lexicon/types/app/bsky/feed/threadgate.js.map +1 -1
  420. package/dist/logger.js +2 -5
  421. package/dist/logger.js.map +1 -1
  422. package/dist/redis.js +5 -5
  423. package/dist/redis.js.map +1 -1
  424. package/dist/util/http.d.ts.map +1 -1
  425. package/dist/util/http.js.map +1 -1
  426. package/dist/util/uris.d.ts.map +1 -1
  427. package/dist/views/index.d.ts +7 -7
  428. package/dist/views/index.d.ts.map +1 -1
  429. package/dist/views/index.js +12 -10
  430. package/dist/views/index.js.map +1 -1
  431. package/dist/views/types.d.ts +3 -3
  432. package/dist/views/types.d.ts.map +1 -1
  433. package/dist/views/util.d.ts +2 -1
  434. package/dist/views/util.d.ts.map +1 -1
  435. package/dist/views/util.js +10 -3
  436. package/dist/views/util.js.map +1 -1
  437. package/package.json +20 -17
  438. package/src/api/app/bsky/actor/getProfile.ts +5 -5
  439. package/src/api/app/bsky/actor/getProfiles.ts +6 -6
  440. package/src/api/app/bsky/actor/getSuggestions.ts +7 -7
  441. package/src/api/app/bsky/actor/searchActors.ts +6 -6
  442. package/src/api/app/bsky/actor/searchActorsTypeahead.ts +5 -5
  443. package/src/api/app/bsky/feed/getActorFeeds.ts +7 -7
  444. package/src/api/app/bsky/feed/getActorLikes.ts +9 -9
  445. package/src/api/app/bsky/feed/getAuthorFeed.ts +10 -10
  446. package/src/api/app/bsky/feed/getFeed.ts +15 -16
  447. package/src/api/app/bsky/feed/getFeedGenerator.ts +3 -3
  448. package/src/api/app/bsky/feed/getFeedGenerators.ts +4 -4
  449. package/src/api/app/bsky/feed/getLikes.ts +6 -7
  450. package/src/api/app/bsky/feed/getListFeed.ts +9 -9
  451. package/src/api/app/bsky/feed/getPostThread.ts +7 -7
  452. package/src/api/app/bsky/feed/getPosts.ts +6 -6
  453. package/src/api/app/bsky/feed/getQuotes.ts +7 -7
  454. package/src/api/app/bsky/feed/getRepostedBy.ts +5 -5
  455. package/src/api/app/bsky/feed/getSuggestedFeeds.ts +2 -2
  456. package/src/api/app/bsky/feed/getTimeline.ts +9 -9
  457. package/src/api/app/bsky/feed/searchPosts.ts +6 -6
  458. package/src/api/app/bsky/graph/getActorStarterPacks.ts +7 -7
  459. package/src/api/app/bsky/graph/getBlocks.ts +4 -4
  460. package/src/api/app/bsky/graph/getFollowers.ts +6 -6
  461. package/src/api/app/bsky/graph/getFollows.ts +6 -6
  462. package/src/api/app/bsky/graph/getKnownFollowers.ts +2 -2
  463. package/src/api/app/bsky/graph/getList.ts +10 -10
  464. package/src/api/app/bsky/graph/getListBlocks.ts +4 -4
  465. package/src/api/app/bsky/graph/getListMutes.ts +4 -4
  466. package/src/api/app/bsky/graph/getLists.ts +4 -4
  467. package/src/api/app/bsky/graph/getMutes.ts +3 -3
  468. package/src/api/app/bsky/graph/getRelationships.ts +1 -1
  469. package/src/api/app/bsky/graph/getStarterPack.ts +4 -4
  470. package/src/api/app/bsky/graph/getStarterPacks.ts +5 -5
  471. package/src/api/app/bsky/graph/getSuggestedFollowsByActor.ts +4 -4
  472. package/src/api/app/bsky/graph/muteActor.ts +1 -1
  473. package/src/api/app/bsky/graph/muteActorList.ts +1 -1
  474. package/src/api/app/bsky/graph/muteThread.ts +1 -1
  475. package/src/api/app/bsky/graph/searchStarterPacks.ts +7 -7
  476. package/src/api/app/bsky/graph/unmuteActor.ts +1 -1
  477. package/src/api/app/bsky/graph/unmuteActorList.ts +1 -1
  478. package/src/api/app/bsky/graph/unmuteThread.ts +1 -1
  479. package/src/api/app/bsky/labeler/getServices.ts +2 -2
  480. package/src/api/app/bsky/notification/getUnreadCount.ts +2 -2
  481. package/src/api/app/bsky/notification/listNotifications.ts +6 -6
  482. package/src/api/app/bsky/notification/putPreferences.ts +1 -1
  483. package/src/api/app/bsky/notification/registerPush.ts +1 -1
  484. package/src/api/app/bsky/notification/updateSeen.ts +3 -3
  485. package/src/api/app/bsky/unspecced/getConfig.ts +1 -1
  486. package/src/api/app/bsky/unspecced/getPopularFeedGenerators.ts +2 -2
  487. package/src/api/app/bsky/unspecced/getTaggedSuggestions.ts +1 -1
  488. package/src/api/app/bsky/unspecced/getTrendingTopics.ts +7 -7
  489. package/src/api/blob-dispatcher.ts +1 -2
  490. package/src/api/blob-resolver.ts +12 -13
  491. package/src/api/com/atproto/admin/getAccountInfos.ts +2 -2
  492. package/src/api/com/atproto/admin/getSubjectStatus.ts +1 -1
  493. package/src/api/com/atproto/admin/updateSubjectStatus.ts +2 -2
  494. package/src/api/com/atproto/identity/resolveHandle.ts +2 -2
  495. package/src/api/com/atproto/label/queryLabels.ts +2 -2
  496. package/src/api/com/atproto/repo/getRecord.ts +2 -2
  497. package/src/api/com/atproto/temp/fetchLabels.ts +2 -2
  498. package/src/api/health.ts +4 -4
  499. package/src/api/index.ts +21 -21
  500. package/src/api/well-known.ts +4 -4
  501. package/src/auth-verifier.ts +6 -6
  502. package/src/bsync.ts +3 -3
  503. package/src/context.ts +8 -10
  504. package/src/courier.ts +3 -3
  505. package/src/data-plane/bsync/index.ts +6 -6
  506. package/src/data-plane/client.ts +1 -1
  507. package/src/data-plane/server/background.ts +1 -1
  508. package/src/data-plane/server/db/database-schema.ts +26 -28
  509. package/src/data-plane/server/db/db.ts +6 -6
  510. package/src/data-plane/server/db/util.ts +2 -2
  511. package/src/data-plane/server/index.ts +5 -5
  512. package/src/data-plane/server/indexing/index.ts +21 -21
  513. package/src/data-plane/server/indexing/plugins/block.ts +4 -4
  514. package/src/data-plane/server/indexing/plugins/chat-declaration.ts +4 -4
  515. package/src/data-plane/server/indexing/plugins/feed-generator.ts +4 -4
  516. package/src/data-plane/server/indexing/plugins/follow.ts +5 -5
  517. package/src/data-plane/server/indexing/plugins/labeler.ts +4 -4
  518. package/src/data-plane/server/indexing/plugins/like.ts +5 -5
  519. package/src/data-plane/server/indexing/plugins/list-block.ts +4 -4
  520. package/src/data-plane/server/indexing/plugins/list-item.ts +5 -5
  521. package/src/data-plane/server/indexing/plugins/list.ts +5 -5
  522. package/src/data-plane/server/indexing/plugins/post-gate.ts +5 -5
  523. package/src/data-plane/server/indexing/plugins/post.ts +18 -18
  524. package/src/data-plane/server/indexing/plugins/profile.ts +5 -5
  525. package/src/data-plane/server/indexing/plugins/repost.ts +4 -4
  526. package/src/data-plane/server/indexing/plugins/starter-pack.ts +4 -4
  527. package/src/data-plane/server/indexing/plugins/thread-gate.ts +5 -5
  528. package/src/data-plane/server/indexing/processor.ts +3 -3
  529. package/src/data-plane/server/routes/feeds.ts +1 -1
  530. package/src/data-plane/server/routes/follows.ts +2 -2
  531. package/src/data-plane/server/routes/identity.ts +2 -2
  532. package/src/data-plane/server/routes/index.ts +2 -2
  533. package/src/data-plane/server/routes/interactions.ts +14 -12
  534. package/src/data-plane/server/routes/labels.ts +2 -2
  535. package/src/data-plane/server/routes/likes.ts +2 -3
  536. package/src/data-plane/server/routes/lists.ts +3 -3
  537. package/src/data-plane/server/routes/mutes.ts +3 -3
  538. package/src/data-plane/server/routes/notifs.ts +3 -3
  539. package/src/data-plane/server/routes/posts.ts +2 -2
  540. package/src/data-plane/server/routes/profile.ts +6 -6
  541. package/src/data-plane/server/routes/quotes.ts +1 -1
  542. package/src/data-plane/server/routes/records.ts +7 -7
  543. package/src/data-plane/server/routes/relationships.ts +10 -10
  544. package/src/data-plane/server/routes/reposts.ts +2 -3
  545. package/src/data-plane/server/routes/suggestions.ts +1 -1
  546. package/src/data-plane/server/subscription.ts +3 -3
  547. package/src/data-plane/server/util.ts +14 -3
  548. package/src/error.ts +1 -1
  549. package/src/feature-gates.ts +0 -2
  550. package/src/hydration/feed.ts +9 -9
  551. package/src/hydration/graph.ts +4 -4
  552. package/src/hydration/hydrator.ts +27 -27
  553. package/src/hydration/label.ts +4 -4
  554. package/src/hydration/util.ts +2 -2
  555. package/src/image/index.ts +1 -1
  556. package/src/image/server.ts +12 -13
  557. package/src/image/sharp.ts +2 -2
  558. package/src/index.ts +23 -23
  559. package/src/lexicon/lexicons.ts +44 -0
  560. package/src/lexicon/types/app/bsky/actor/defs.ts +37 -0
  561. package/src/lexicon/types/app/bsky/feed/postgate.ts +1 -0
  562. package/src/lexicon/types/app/bsky/feed/threadgate.ts +19 -0
  563. package/src/logger.ts +1 -1
  564. package/src/redis.ts +1 -1
  565. package/src/util/http.ts +1 -1
  566. package/src/util/uris.ts +1 -1
  567. package/src/views/index.ts +27 -22
  568. package/src/views/types.ts +9 -9
  569. package/src/views/util.ts +15 -6
  570. package/tests/_util.ts +4 -5
  571. package/tests/admin/admin-auth.test.ts +2 -2
  572. package/tests/admin/moderation.test.ts +1 -1
  573. package/tests/auth.test.ts +1 -1
  574. package/tests/blob-resolver.test.ts +2 -2
  575. package/tests/data-plane/duplicate-records.test.ts +3 -3
  576. package/tests/data-plane/handle-invalidation.test.ts +2 -2
  577. package/tests/data-plane/indexing.test.ts +8 -8
  578. package/tests/data-plane/subscription.test.ts +1 -1
  579. package/tests/data-plane/thread-mutes.test.ts +1 -1
  580. package/tests/entryway-auth.test.ts +5 -5
  581. package/tests/feed-generation.test.ts +8 -8
  582. package/tests/hydration/util.test.ts +1 -1
  583. package/tests/image/server.test.ts +2 -2
  584. package/tests/image/uri.test.ts +2 -2
  585. package/tests/label-hydration.test.ts +1 -1
  586. package/tests/postgates.test.ts +2 -3
  587. package/tests/query-labels.test.ts +1 -1
  588. package/tests/seed/feed-hidden-replies.ts +1 -1
  589. package/tests/seed/known-followers.ts +1 -1
  590. package/tests/seed/postgates.ts +1 -1
  591. package/tests/server.test.ts +2 -2
  592. package/tests/views/__snapshots__/threadgating.test.ts.snap +21 -0
  593. package/tests/views/account-deactivation.test.ts +1 -1
  594. package/tests/views/actor-likes.test.ts +1 -1
  595. package/tests/views/actor-search.test.ts +2 -2
  596. package/tests/views/author-feed.test.ts +10 -10
  597. package/tests/views/block-lists.test.ts +3 -3
  598. package/tests/views/blocks.test.ts +4 -4
  599. package/tests/views/feed-hidden-replies.test.ts +2 -3
  600. package/tests/views/feed-view-post.test.ts +2 -2
  601. package/tests/views/follows.test.ts +2 -2
  602. package/tests/views/known-followers.test.ts +2 -3
  603. package/tests/views/labeler-service.test.ts +2 -2
  604. package/tests/views/labels-needs-review.test.ts +2 -2
  605. package/tests/views/labels-takedown.test.ts +1 -1
  606. package/tests/views/likes.test.ts +2 -2
  607. package/tests/views/list-feed.test.ts +2 -2
  608. package/tests/views/lists.test.ts +2 -2
  609. package/tests/views/mute-lists.test.ts +3 -3
  610. package/tests/views/mutes.test.ts +2 -2
  611. package/tests/views/notifications.test.ts +3 -3
  612. package/tests/views/posts.test.ts +3 -3
  613. package/tests/views/profile.test.ts +3 -3
  614. package/tests/views/quotes.test.ts +2 -2
  615. package/tests/views/reposts.test.ts +2 -2
  616. package/tests/views/starter-packs.test.ts +3 -3
  617. package/tests/views/suggested-follows.test.ts +2 -2
  618. package/tests/views/suggestions.test.ts +2 -2
  619. package/tests/views/thread.test.ts +2 -2
  620. package/tests/views/threadgating.test.ts +111 -11
  621. package/tests/views/timeline.test.ts +5 -5
@@ -1,12 +1,12 @@
1
- import assert from 'assert'
1
+ import assert from 'node:assert'
2
2
  import { AtpAgent } from '@atproto/api'
3
- import { TestNetwork, SeedClient, basicSeed } from '@atproto/dev-env'
3
+ import { SeedClient, TestNetwork, basicSeed } from '@atproto/dev-env'
4
+ import { ids } from '../../src/lexicon/lexicons'
4
5
  import {
5
6
  isNotFoundPost,
6
7
  isThreadViewPost,
7
8
  } from '../../src/lexicon/types/app/bsky/feed/defs'
8
9
  import { forSnapshot } from '../_util'
9
- import { ids } from '../../src/lexicon/lexicons'
10
10
 
11
11
  describe('views with thread gating', () => {
12
12
  let network: TestNetwork
@@ -22,6 +22,11 @@ describe('views with thread gating', () => {
22
22
  pdsAgent = network.pds.getClient()
23
23
  sc = network.getSeedClient()
24
24
  await basicSeed(sc)
25
+ await sc.createAccount('eve', {
26
+ handle: 'eve.test',
27
+ email: 'eve@eve.com',
28
+ password: 'hunter2',
29
+ })
25
30
  await network.processAll()
26
31
  })
27
32
 
@@ -242,8 +247,72 @@ describe('views with thread gating', () => {
242
247
  expect(reply.post.uri).toEqual(aliceReply.ref.uriStr)
243
248
  })
244
249
 
250
+ it('applies gate for follower rule.', async () => {
251
+ const post = await sc.post(sc.dids.carol, 'follower rule')
252
+ await pdsAgent.api.app.bsky.feed.threadgate.create(
253
+ { repo: sc.dids.carol, rkey: post.ref.uri.rkey },
254
+ {
255
+ post: post.ref.uriStr,
256
+ createdAt: iso(),
257
+ allow: [{ $type: 'app.bsky.feed.threadgate#followerRule' }],
258
+ },
259
+ sc.getHeaders(sc.dids.carol),
260
+ )
261
+ await network.processAll()
262
+
263
+ // dan does not follow carol, can't reply
264
+ await sc.reply(
265
+ sc.dids.dan,
266
+ post.ref,
267
+ post.ref,
268
+ 'follower rule reply disallow',
269
+ )
270
+
271
+ // alice follows carol, can reply
272
+ const aliceReply = await sc.reply(
273
+ sc.dids.alice,
274
+ post.ref,
275
+ post.ref,
276
+ 'follower rule reply allow',
277
+ )
278
+ await network.processAll()
279
+ const {
280
+ data: { thread: danThread },
281
+ } = await agent.api.app.bsky.feed.getPostThread(
282
+ { uri: post.ref.uriStr },
283
+ {
284
+ headers: await network.serviceHeaders(
285
+ sc.dids.dan,
286
+ ids.AppBskyFeedGetPostThread,
287
+ ),
288
+ },
289
+ )
290
+ assert(isThreadViewPost(danThread))
291
+ expect(danThread.post.viewer?.replyDisabled).toBe(true)
292
+ await checkReplyDisabled(post.ref.uriStr, sc.dids.dan, true)
293
+ const {
294
+ data: { thread: aliceThread },
295
+ } = await agent.api.app.bsky.feed.getPostThread(
296
+ { uri: post.ref.uriStr },
297
+ {
298
+ headers: await network.serviceHeaders(
299
+ sc.dids.alice,
300
+ ids.AppBskyFeedGetPostThread,
301
+ ),
302
+ },
303
+ )
304
+ assert(isThreadViewPost(aliceThread))
305
+ expect(forSnapshot(aliceThread.post.threadgate)).toMatchSnapshot()
306
+ expect(aliceThread.post.viewer?.replyDisabled).toBe(false)
307
+ await checkReplyDisabled(post.ref.uriStr, sc.dids.alice, false)
308
+ const [reply, ...otherReplies] = aliceThread.replies ?? []
309
+ assert(isThreadViewPost(reply))
310
+ expect(otherReplies.length).toEqual(0)
311
+ expect(reply.post.uri).toEqual(aliceReply.ref.uriStr)
312
+ })
313
+
245
314
  it('applies gate for list rule.', async () => {
246
- const post = await sc.post(sc.dids.carol, 'following rule')
315
+ const post = await sc.post(sc.dids.carol, 'list rule')
247
316
  // setup lists to allow alice and dan
248
317
  const listA = await pdsAgent.api.app.bsky.graph.list.create(
249
318
  { repo: sc.dids.carol },
@@ -419,14 +488,21 @@ describe('views with thread gating', () => {
419
488
  createdAt: iso(),
420
489
  allow: [
421
490
  { $type: 'app.bsky.feed.threadgate#mentionRule' },
491
+ { $type: 'app.bsky.feed.threadgate#followerRule' },
422
492
  { $type: 'app.bsky.feed.threadgate#followingRule' },
423
493
  ],
424
494
  },
425
495
  sc.getHeaders(sc.dids.carol),
426
496
  )
427
497
  await network.processAll()
428
- // carol only follows alice, and the post mentions dan.
429
- await sc.reply(sc.dids.bob, post.ref, post.ref, 'multi rule reply disallow')
498
+
499
+ await sc.reply(sc.dids.eve, post.ref, post.ref, 'multi rule reply disallow')
500
+ const bobReply = await sc.reply(
501
+ sc.dids.bob,
502
+ post.ref,
503
+ post.ref,
504
+ 'multi rule reply allow (follower)',
505
+ )
430
506
  const aliceReply = await sc.reply(
431
507
  sc.dids.alice,
432
508
  post.ref,
@@ -440,6 +516,23 @@ describe('views with thread gating', () => {
440
516
  'multi rule reply allow (mention)',
441
517
  )
442
518
  await network.processAll()
519
+
520
+ const {
521
+ data: { thread: eveThread },
522
+ } = await agent.api.app.bsky.feed.getPostThread(
523
+ { uri: post.ref.uriStr },
524
+ {
525
+ headers: await network.serviceHeaders(
526
+ sc.dids.eve,
527
+ ids.AppBskyFeedGetPostThread,
528
+ ),
529
+ },
530
+ )
531
+ assert(isThreadViewPost(eveThread))
532
+ // eve cannot interact
533
+ expect(eveThread.post.viewer?.replyDisabled).toBe(true)
534
+ await checkReplyDisabled(post.ref.uriStr, sc.dids.eve, true)
535
+
443
536
  const {
444
537
  data: { thread: bobThread },
445
538
  } = await agent.api.app.bsky.feed.getPostThread(
@@ -452,8 +545,10 @@ describe('views with thread gating', () => {
452
545
  },
453
546
  )
454
547
  assert(isThreadViewPost(bobThread))
455
- expect(bobThread.post.viewer?.replyDisabled).toBe(true)
456
- await checkReplyDisabled(post.ref.uriStr, sc.dids.bob, true)
548
+ // bob follows carol, followers can reply
549
+ expect(bobThread.post.viewer?.replyDisabled).toBe(false)
550
+ await checkReplyDisabled(post.ref.uriStr, sc.dids.bob, false)
551
+
457
552
  const {
458
553
  data: { thread: aliceThread },
459
554
  } = await agent.api.app.bsky.feed.getPostThread(
@@ -466,8 +561,10 @@ describe('views with thread gating', () => {
466
561
  },
467
562
  )
468
563
  assert(isThreadViewPost(aliceThread))
564
+ // carol follows alice, followed users can reply
469
565
  expect(aliceThread.post.viewer?.replyDisabled).toBe(false)
470
566
  await checkReplyDisabled(post.ref.uriStr, sc.dids.alice, false)
567
+
471
568
  const {
472
569
  data: { thread: danThread },
473
570
  } = await agent.api.app.bsky.feed.getPostThread(
@@ -481,14 +578,17 @@ describe('views with thread gating', () => {
481
578
  )
482
579
  assert(isThreadViewPost(danThread))
483
580
  expect(forSnapshot(danThread.post.threadgate)).toMatchSnapshot()
581
+ // dan was mentioned, mentioned users can reply
484
582
  expect(danThread.post.viewer?.replyDisabled).toBe(false)
485
583
  await checkReplyDisabled(post.ref.uriStr, sc.dids.dan, false)
486
- const [reply1, reply2, ...otherReplies] = aliceThread.replies ?? []
584
+
585
+ const [reply1, reply2, reply3, ...otherReplies] = aliceThread.replies ?? []
487
586
  assert(isThreadViewPost(reply1))
488
587
  assert(isThreadViewPost(reply2))
588
+ assert(isThreadViewPost(reply3))
489
589
  expect(otherReplies.length).toEqual(0)
490
- expect([reply1.post.uri, reply2.post.uri].sort()).toEqual(
491
- [aliceReply.ref.uriStr, danReply.ref.uriStr].sort(),
590
+ expect([reply1.post.uri, reply2.post.uri, reply3.post.uri].sort()).toEqual(
591
+ [aliceReply.ref.uriStr, danReply.ref.uriStr, bobReply.ref.uriStr].sort(),
492
592
  )
493
593
  })
494
594
 
@@ -1,15 +1,15 @@
1
- import assert from 'assert'
1
+ import assert from 'node:assert'
2
2
  import { AtpAgent } from '@atproto/api'
3
3
  import {
4
- TestNetwork,
4
+ EXAMPLE_LABELER,
5
5
  SeedClient,
6
+ TestNetwork,
6
7
  basicSeed,
7
- EXAMPLE_LABELER,
8
8
  } from '@atproto/dev-env'
9
- import { forSnapshot, getOriginator, paginateAll } from '../_util'
10
- import { FeedViewPost } from '../../src/lexicon/types/app/bsky/feed/defs'
11
9
  import { Database } from '../../src'
12
10
  import { ids } from '../../src/lexicon/lexicons'
11
+ import { FeedViewPost } from '../../src/lexicon/types/app/bsky/feed/defs'
12
+ import { forSnapshot, getOriginator, paginateAll } from '../_util'
13
13
 
14
14
  const REVERSE_CHRON = 'reverse-chronological'
15
15