@atproto/api 0.11.0-next.0 → 0.11.0

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 (814) hide show
  1. package/CHANGELOG.md +66 -0
  2. package/README.md +41 -58
  3. package/babel.config.js +3 -0
  4. package/build.js +15 -0
  5. package/definitions/labels.json +140 -195
  6. package/dist/agent.d.ts +14 -72
  7. package/dist/bsky-agent.d.ts +9 -4
  8. package/dist/client/index.d.ts +94 -42
  9. package/dist/client/lexicons.d.ts +5049 -4759
  10. package/dist/client/types/app/bsky/actor/defs.d.ts +24 -22
  11. package/dist/client/types/app/bsky/actor/getPreferences.d.ts +0 -4
  12. package/dist/client/types/app/bsky/actor/getProfile.d.ts +0 -5
  13. package/dist/client/types/app/bsky/actor/getProfiles.d.ts +0 -4
  14. package/dist/client/types/app/bsky/actor/getSuggestions.d.ts +0 -4
  15. package/dist/client/types/app/bsky/actor/profile.d.ts +0 -7
  16. package/dist/client/types/app/bsky/actor/putPreferences.d.ts +0 -4
  17. package/dist/client/types/app/bsky/actor/searchActors.d.ts +0 -6
  18. package/dist/client/types/app/bsky/actor/searchActorsTypeahead.d.ts +0 -6
  19. package/dist/client/types/app/bsky/embed/external.d.ts +0 -5
  20. package/dist/client/types/app/bsky/embed/images.d.ts +0 -9
  21. package/dist/client/types/app/bsky/embed/record.d.ts +2 -6
  22. package/dist/client/types/app/bsky/embed/recordWithMedia.d.ts +0 -4
  23. package/dist/client/types/app/bsky/feed/defs.d.ts +1 -5
  24. package/dist/client/types/app/bsky/feed/describeFeedGenerator.d.ts +0 -4
  25. package/dist/client/types/app/bsky/feed/generator.d.ts +0 -4
  26. package/dist/client/types/app/bsky/feed/getActorFeeds.d.ts +0 -4
  27. package/dist/client/types/app/bsky/feed/getActorLikes.d.ts +0 -4
  28. package/dist/client/types/app/bsky/feed/getAuthorFeed.d.ts +0 -5
  29. package/dist/client/types/app/bsky/feed/getFeed.d.ts +0 -4
  30. package/dist/client/types/app/bsky/feed/getFeedGenerator.d.ts +0 -7
  31. package/dist/client/types/app/bsky/feed/getFeedGenerators.d.ts +0 -4
  32. package/dist/client/types/app/bsky/feed/getFeedSkeleton.d.ts +0 -5
  33. package/dist/client/types/app/bsky/feed/getLikes.d.ts +0 -6
  34. package/dist/client/types/app/bsky/feed/getListFeed.d.ts +0 -5
  35. package/dist/client/types/app/bsky/feed/getPostThread.d.ts +0 -7
  36. package/dist/client/types/app/bsky/feed/getPosts.d.ts +0 -5
  37. package/dist/client/types/app/bsky/feed/getRepostedBy.d.ts +0 -6
  38. package/dist/client/types/app/bsky/feed/getSuggestedFeeds.d.ts +0 -4
  39. package/dist/client/types/app/bsky/feed/getTimeline.d.ts +0 -5
  40. package/dist/client/types/app/bsky/feed/like.d.ts +0 -4
  41. package/dist/client/types/app/bsky/feed/post.d.ts +0 -13
  42. package/dist/client/types/app/bsky/feed/repost.d.ts +0 -4
  43. package/dist/client/types/app/bsky/feed/searchPosts.d.ts +0 -7
  44. package/dist/client/types/app/bsky/feed/threadgate.d.ts +0 -8
  45. package/dist/client/types/app/bsky/graph/block.d.ts +0 -5
  46. package/dist/client/types/app/bsky/graph/defs.d.ts +3 -10
  47. package/dist/client/types/app/bsky/graph/follow.d.ts +0 -4
  48. package/dist/client/types/app/bsky/graph/getBlocks.d.ts +0 -4
  49. package/dist/client/types/app/bsky/graph/getFollowers.d.ts +0 -4
  50. package/dist/client/types/app/bsky/graph/getFollows.d.ts +0 -4
  51. package/dist/client/types/app/bsky/graph/getList.d.ts +0 -5
  52. package/dist/client/types/app/bsky/graph/getListBlocks.d.ts +0 -4
  53. package/dist/client/types/app/bsky/graph/getListMutes.d.ts +0 -4
  54. package/dist/client/types/app/bsky/graph/getLists.d.ts +0 -5
  55. package/dist/client/types/app/bsky/graph/getMutes.d.ts +0 -4
  56. package/dist/client/types/app/bsky/graph/getRelationships.d.ts +0 -6
  57. package/dist/client/types/app/bsky/graph/getSuggestedFollowsByActor.d.ts +0 -4
  58. package/dist/client/types/app/bsky/graph/list.d.ts +0 -5
  59. package/dist/client/types/app/bsky/graph/listblock.d.ts +0 -5
  60. package/dist/client/types/app/bsky/graph/listitem.d.ts +0 -6
  61. package/dist/client/types/app/bsky/graph/muteActor.d.ts +0 -4
  62. package/dist/client/types/app/bsky/graph/muteActorList.d.ts +0 -4
  63. package/dist/client/types/app/bsky/graph/unmuteActor.d.ts +0 -4
  64. package/dist/client/types/app/bsky/graph/unmuteActorList.d.ts +0 -4
  65. package/dist/client/types/app/bsky/labeler/defs.d.ts +41 -0
  66. package/dist/client/types/app/bsky/labeler/getServices.d.ts +23 -0
  67. package/dist/client/types/app/bsky/labeler/service.d.ts +14 -0
  68. package/dist/client/types/app/bsky/notification/getUnreadCount.d.ts +0 -4
  69. package/dist/client/types/app/bsky/notification/listNotifications.d.ts +0 -5
  70. package/dist/client/types/app/bsky/notification/registerPush.d.ts +0 -4
  71. package/dist/client/types/app/bsky/notification/updateSeen.d.ts +0 -4
  72. package/dist/client/types/app/bsky/richtext/facet.d.ts +0 -9
  73. package/dist/client/types/app/bsky/unspecced/defs.d.ts +0 -4
  74. package/dist/client/types/app/bsky/unspecced/getPopularFeedGenerators.d.ts +0 -4
  75. package/dist/client/types/app/bsky/unspecced/getTaggedSuggestions.d.ts +0 -4
  76. package/dist/client/types/app/bsky/unspecced/searchActorsSkeleton.d.ts +0 -8
  77. package/dist/client/types/app/bsky/unspecced/searchPostsSkeleton.d.ts +0 -7
  78. package/dist/client/types/com/atproto/admin/defs.d.ts +0 -340
  79. package/dist/client/types/com/atproto/admin/deleteAccount.d.ts +0 -4
  80. package/dist/client/types/com/atproto/admin/disableAccountInvites.d.ts +0 -5
  81. package/dist/client/types/com/atproto/admin/disableInviteCodes.d.ts +0 -4
  82. package/dist/client/types/com/atproto/admin/enableAccountInvites.d.ts +0 -5
  83. package/dist/client/types/com/atproto/admin/getAccountInfo.d.ts +0 -4
  84. package/dist/client/types/com/atproto/admin/getAccountInfos.d.ts +0 -4
  85. package/dist/client/types/com/atproto/admin/getInviteCodes.d.ts +0 -4
  86. package/dist/client/types/com/atproto/admin/getSubjectStatus.d.ts +0 -4
  87. package/dist/client/types/com/atproto/admin/sendEmail.d.ts +0 -5
  88. package/dist/client/types/com/atproto/admin/updateAccountEmail.d.ts +0 -5
  89. package/dist/client/types/com/atproto/admin/updateAccountHandle.d.ts +0 -4
  90. package/dist/client/types/com/atproto/admin/updateAccountPassword.d.ts +0 -4
  91. package/dist/client/types/com/atproto/admin/updateSubjectStatus.d.ts +0 -4
  92. package/dist/client/types/com/atproto/identity/getRecommendedDidCredentials.d.ts +0 -5
  93. package/dist/client/types/com/atproto/identity/requestPlcOperationSignature.d.ts +0 -4
  94. package/dist/client/types/com/atproto/identity/resolveHandle.d.ts +0 -5
  95. package/dist/client/types/com/atproto/identity/signPlcOperation.d.ts +0 -6
  96. package/dist/client/types/com/atproto/identity/submitPlcOperation.d.ts +0 -4
  97. package/dist/client/types/com/atproto/identity/updateHandle.d.ts +0 -5
  98. package/dist/client/types/com/atproto/label/defs.d.ts +23 -14
  99. package/dist/client/types/com/atproto/label/queryLabels.d.ts +0 -6
  100. package/dist/client/types/com/atproto/label/subscribeLabels.d.ts +0 -1
  101. package/dist/client/types/com/atproto/moderation/createReport.d.ts +0 -5
  102. package/dist/client/types/com/atproto/moderation/defs.d.ts +0 -8
  103. package/dist/client/types/com/atproto/repo/applyWrites.d.ts +0 -10
  104. package/dist/client/types/com/atproto/repo/createRecord.d.ts +0 -10
  105. package/dist/client/types/com/atproto/repo/deleteRecord.d.ts +0 -9
  106. package/dist/client/types/com/atproto/repo/describeRepo.d.ts +0 -8
  107. package/dist/client/types/com/atproto/repo/getRecord.d.ts +0 -8
  108. package/dist/client/types/com/atproto/repo/importRepo.d.ts +0 -4
  109. package/dist/client/types/com/atproto/repo/listMissingBlobs.d.ts +0 -4
  110. package/dist/client/types/com/atproto/repo/listRecords.d.ts +0 -10
  111. package/dist/client/types/com/atproto/repo/putRecord.d.ts +0 -11
  112. package/dist/client/types/com/atproto/repo/strongRef.d.ts +0 -4
  113. package/dist/client/types/com/atproto/repo/uploadBlob.d.ts +0 -4
  114. package/dist/client/types/com/atproto/server/activateAccount.d.ts +0 -4
  115. package/dist/client/types/com/atproto/server/checkAccountStatus.d.ts +0 -4
  116. package/dist/client/types/com/atproto/server/confirmEmail.d.ts +0 -4
  117. package/dist/client/types/com/atproto/server/createAccount.d.ts +0 -12
  118. package/dist/client/types/com/atproto/server/createAppPassword.d.ts +0 -5
  119. package/dist/client/types/com/atproto/server/createInviteCode.d.ts +0 -4
  120. package/dist/client/types/com/atproto/server/createInviteCodes.d.ts +0 -4
  121. package/dist/client/types/com/atproto/server/createSession.d.ts +0 -5
  122. package/dist/client/types/com/atproto/server/deactivateAccount.d.ts +0 -5
  123. package/dist/client/types/com/atproto/server/defs.d.ts +0 -4
  124. package/dist/client/types/com/atproto/server/deleteAccount.d.ts +0 -4
  125. package/dist/client/types/com/atproto/server/deleteSession.d.ts +0 -4
  126. package/dist/client/types/com/atproto/server/describeServer.d.ts +0 -7
  127. package/dist/client/types/com/atproto/server/getAccountInviteCodes.d.ts +0 -5
  128. package/dist/client/types/com/atproto/server/getServiceAuth.d.ts +0 -5
  129. package/dist/client/types/com/atproto/server/getSession.d.ts +0 -4
  130. package/dist/client/types/com/atproto/server/listAppPasswords.d.ts +0 -4
  131. package/dist/client/types/com/atproto/server/refreshSession.d.ts +0 -4
  132. package/dist/client/types/com/atproto/server/requestAccountDelete.d.ts +0 -4
  133. package/dist/client/types/com/atproto/server/requestEmailConfirmation.d.ts +0 -4
  134. package/dist/client/types/com/atproto/server/requestEmailUpdate.d.ts +0 -4
  135. package/dist/client/types/com/atproto/server/requestPasswordReset.d.ts +0 -4
  136. package/dist/client/types/com/atproto/server/reserveSigningKey.d.ts +0 -6
  137. package/dist/client/types/com/atproto/server/resetPassword.d.ts +0 -4
  138. package/dist/client/types/com/atproto/server/revokeAppPassword.d.ts +0 -4
  139. package/dist/client/types/com/atproto/server/updateEmail.d.ts +0 -5
  140. package/dist/client/types/com/atproto/sync/getBlob.d.ts +0 -6
  141. package/dist/client/types/com/atproto/sync/getBlocks.d.ts +0 -5
  142. package/dist/client/types/com/atproto/sync/getCheckout.d.ts +0 -5
  143. package/dist/client/types/com/atproto/sync/getHead.d.ts +0 -5
  144. package/dist/client/types/com/atproto/sync/getLatestCommit.d.ts +0 -5
  145. package/dist/client/types/com/atproto/sync/getRecord.d.ts +0 -7
  146. package/dist/client/types/com/atproto/sync/getRepo.d.ts +0 -6
  147. package/dist/client/types/com/atproto/sync/listBlobs.d.ts +0 -6
  148. package/dist/client/types/com/atproto/sync/listRepos.d.ts +0 -5
  149. package/dist/client/types/com/atproto/sync/notifyOfUpdate.d.ts +0 -5
  150. package/dist/client/types/com/atproto/sync/requestCrawl.d.ts +0 -5
  151. package/dist/client/types/com/atproto/sync/subscribeRepos.d.ts +0 -18
  152. package/dist/client/types/com/atproto/temp/checkSignupQueue.d.ts +0 -4
  153. package/dist/client/types/com/atproto/temp/fetchLabels.d.ts +0 -4
  154. package/dist/client/types/com/atproto/temp/requestPhoneVerification.d.ts +0 -4
  155. package/dist/client/types/{com/atproto/admin/createCommunicationTemplate.d.ts → tools/ozone/communication/createTemplate.d.ts} +2 -10
  156. package/dist/client/types/tools/ozone/communication/defs.d.ts +14 -0
  157. package/dist/client/types/{com/atproto/admin/deleteCommunicationTemplate.d.ts → tools/ozone/communication/deleteTemplate.d.ts} +0 -4
  158. package/dist/client/types/{com/atproto/admin/listCommunicationTemplates.d.ts → tools/ozone/communication/listTemplates.d.ts} +2 -6
  159. package/dist/client/types/{com/atproto/admin/updateCommunicationTemplate.d.ts → tools/ozone/communication/updateTemplate.d.ts} +2 -11
  160. package/dist/client/types/tools/ozone/moderation/defs.d.ts +269 -0
  161. package/dist/client/types/tools/ozone/moderation/emitEvent.d.ts +34 -0
  162. package/dist/client/types/{com/atproto/admin/getModerationEvent.d.ts → tools/ozone/moderation/getEvent.d.ts} +2 -6
  163. package/dist/client/types/{com/atproto/admin → tools/ozone/moderation}/getRecord.d.ts +2 -6
  164. package/dist/client/types/{com/atproto/admin → tools/ozone/moderation}/getRepo.d.ts +2 -6
  165. package/dist/client/types/tools/ozone/moderation/queryEvents.d.ts +35 -0
  166. package/dist/client/types/{com/atproto/admin/queryModerationStatuses.d.ts → tools/ozone/moderation/queryStatuses.d.ts} +2 -16
  167. package/dist/client/types/{com/atproto/admin → tools/ozone/moderation}/searchRepos.d.ts +2 -7
  168. package/dist/client/util.d.ts +0 -4
  169. package/dist/const.d.ts +1 -0
  170. package/dist/index.d.ts +5 -3
  171. package/dist/index.js +32694 -43
  172. package/dist/index.js.map +7 -1
  173. package/dist/mocker.d.ts +58 -0
  174. package/dist/moderation/const/labels.d.ts +4 -4
  175. package/dist/moderation/decision.d.ts +28 -0
  176. package/dist/moderation/index.d.ts +11 -45
  177. package/dist/moderation/mutewords.d.ts +8 -0
  178. package/dist/moderation/subjects/account.d.ts +2 -2
  179. package/dist/moderation/subjects/feed-generator.d.ts +3 -3
  180. package/dist/moderation/subjects/notification.d.ts +3 -0
  181. package/dist/moderation/subjects/post.d.ts +2 -2
  182. package/dist/moderation/subjects/profile.d.ts +2 -2
  183. package/dist/moderation/subjects/user-list.d.ts +3 -3
  184. package/dist/moderation/types.d.ts +63 -62
  185. package/dist/moderation/ui.d.ts +12 -0
  186. package/dist/moderation/util.d.ts +4 -9
  187. package/dist/rich-text/detection.d.ts +0 -1
  188. package/dist/rich-text/rich-text.d.ts +0 -13
  189. package/dist/rich-text/sanitization.d.ts +0 -1
  190. package/dist/rich-text/unicode.d.ts +0 -9
  191. package/dist/rich-text/util.d.ts +4 -0
  192. package/dist/types.d.ts +5 -45
  193. package/dist/util.d.ts +1 -0
  194. package/docs/moderation.md +204 -97
  195. package/jest.bench.config.js +8 -0
  196. package/jest.config.js +3 -6
  197. package/package.json +17 -13
  198. package/scripts/code/labels.mjs +17 -35
  199. package/scripts/generate-code.mjs +0 -1
  200. package/src/agent.ts +78 -13
  201. package/src/bsky-agent.ts +394 -92
  202. package/src/client/index.ts +292 -173
  203. package/src/client/lexicons.ts +6266 -5963
  204. package/src/client/types/app/bsky/actor/defs.ts +58 -2
  205. package/src/client/types/app/bsky/embed/record.ts +2 -0
  206. package/src/client/types/app/bsky/feed/defs.ts +1 -0
  207. package/src/client/types/app/bsky/graph/defs.ts +3 -0
  208. package/src/client/types/app/bsky/labeler/defs.ts +93 -0
  209. package/src/client/types/app/bsky/labeler/getServices.ts +41 -0
  210. package/src/client/types/app/bsky/labeler/service.ts +31 -0
  211. package/src/client/types/com/atproto/admin/defs.ts +0 -692
  212. package/src/client/types/com/atproto/label/defs.ts +78 -0
  213. package/src/client/types/{com/atproto/admin/createCommunicationTemplate.ts → tools/ozone/communication/createTemplate.ts} +2 -2
  214. package/src/client/types/tools/ozone/communication/defs.ts +35 -0
  215. package/src/client/types/{com/atproto/admin/listCommunicationTemplates.ts → tools/ozone/communication/listTemplates.ts} +2 -2
  216. package/src/client/types/{com/atproto/admin/updateCommunicationTemplate.ts → tools/ozone/communication/updateTemplate.ts} +2 -2
  217. package/src/client/types/tools/ozone/moderation/defs.ts +641 -0
  218. package/src/client/types/{com/atproto/admin/emitModerationEvent.ts → tools/ozone/moderation/emitEvent.ts} +15 -14
  219. package/src/client/types/{com/atproto/admin/getModerationEvent.ts → tools/ozone/moderation/getEvent.ts} +2 -2
  220. package/src/client/types/{com/atproto/admin → tools/ozone/moderation}/getRecord.ts +2 -2
  221. package/src/client/types/{com/atproto/admin → tools/ozone/moderation}/getRepo.ts +2 -2
  222. package/src/client/types/{com/atproto/admin/queryModerationEvents.ts → tools/ozone/moderation/queryEvents.ts} +3 -3
  223. package/src/client/types/{com/atproto/admin/queryModerationStatuses.ts → tools/ozone/moderation/queryStatuses.ts} +2 -2
  224. package/src/client/types/{com/atproto/admin → tools/ozone/moderation}/searchRepos.ts +2 -2
  225. package/src/const.ts +1 -0
  226. package/src/index.ts +5 -2
  227. package/src/mocker.ts +218 -0
  228. package/src/moderation/const/labels.ts +193 -856
  229. package/src/moderation/decision.ts +383 -0
  230. package/src/moderation/index.ts +26 -311
  231. package/src/moderation/mutewords.ts +125 -0
  232. package/src/moderation/subjects/account.ts +6 -10
  233. package/src/moderation/subjects/feed-generator.ts +20 -9
  234. package/src/moderation/subjects/notification.ts +25 -0
  235. package/src/moderation/subjects/post.ts +263 -8
  236. package/src/moderation/subjects/profile.ts +6 -11
  237. package/src/moderation/subjects/user-list.ts +40 -9
  238. package/src/moderation/types.ts +124 -81
  239. package/src/moderation/ui.ts +21 -0
  240. package/src/moderation/util.ts +99 -72
  241. package/src/rich-text/detection.ts +18 -12
  242. package/src/rich-text/util.ts +11 -0
  243. package/src/types.ts +9 -12
  244. package/src/util.ts +6 -0
  245. package/tests/agent.test.ts +86 -0
  246. package/tests/bsky-agent.test.ts +556 -196
  247. package/tests/moderation-behaviors.test.ts +914 -0
  248. package/tests/moderation-custom-labels.test.ts +333 -0
  249. package/tests/moderation-mutewords.test.ts +691 -0
  250. package/tests/moderation-prefs.test.ts +341 -0
  251. package/tests/moderation-quoteposts.test.ts +277 -0
  252. package/tests/moderation.test.ts +550 -183
  253. package/tests/rich-text-detection.test.ts +54 -7
  254. package/tests/util/echo-server.ts +21 -0
  255. package/tests/util/index.ts +1 -154
  256. package/tests/util/moderation-behavior.ts +178 -24
  257. package/tsconfig.build.json +2 -7
  258. package/tsconfig.json +9 -3
  259. package/definitions/locale/en/label-groups.json +0 -38
  260. package/definitions/locale/en/labels.json +0 -394
  261. package/definitions/locale/en/proposed-label-groups.json +0 -38
  262. package/definitions/locale/en/proposed-labels.json +0 -632
  263. package/definitions/moderation-behaviors.d.ts +0 -50
  264. package/definitions/post-moderation-behaviors.json +0 -1222
  265. package/definitions/profile-moderation-behaviors.json +0 -597
  266. package/definitions/proposed-labels.json +0 -326
  267. package/dist/agent.d.ts.map +0 -1
  268. package/dist/agent.js +0 -363
  269. package/dist/agent.js.map +0 -1
  270. package/dist/bsky-agent.d.ts.map +0 -1
  271. package/dist/bsky-agent.js +0 -648
  272. package/dist/bsky-agent.js.map +0 -1
  273. package/dist/client/index.d.ts.map +0 -1
  274. package/dist/client/index.js +0 -2063
  275. package/dist/client/index.js.map +0 -1
  276. package/dist/client/lexicons.d.ts.map +0 -1
  277. package/dist/client/lexicons.js +0 -8776
  278. package/dist/client/lexicons.js.map +0 -1
  279. package/dist/client/types/app/bsky/actor/defs.d.ts.map +0 -1
  280. package/dist/client/types/app/bsky/actor/defs.js +0 -146
  281. package/dist/client/types/app/bsky/actor/defs.js.map +0 -1
  282. package/dist/client/types/app/bsky/actor/getPreferences.d.ts.map +0 -1
  283. package/dist/client/types/app/bsky/actor/getPreferences.js +0 -14
  284. package/dist/client/types/app/bsky/actor/getPreferences.js.map +0 -1
  285. package/dist/client/types/app/bsky/actor/getProfile.d.ts.map +0 -1
  286. package/dist/client/types/app/bsky/actor/getProfile.js +0 -14
  287. package/dist/client/types/app/bsky/actor/getProfile.js.map +0 -1
  288. package/dist/client/types/app/bsky/actor/getProfiles.d.ts.map +0 -1
  289. package/dist/client/types/app/bsky/actor/getProfiles.js +0 -14
  290. package/dist/client/types/app/bsky/actor/getProfiles.js.map +0 -1
  291. package/dist/client/types/app/bsky/actor/getSuggestions.d.ts.map +0 -1
  292. package/dist/client/types/app/bsky/actor/getSuggestions.js +0 -14
  293. package/dist/client/types/app/bsky/actor/getSuggestions.js.map +0 -1
  294. package/dist/client/types/app/bsky/actor/profile.d.ts.map +0 -1
  295. package/dist/client/types/app/bsky/actor/profile.js +0 -17
  296. package/dist/client/types/app/bsky/actor/profile.js.map +0 -1
  297. package/dist/client/types/app/bsky/actor/putPreferences.d.ts.map +0 -1
  298. package/dist/client/types/app/bsky/actor/putPreferences.js +0 -14
  299. package/dist/client/types/app/bsky/actor/putPreferences.js.map +0 -1
  300. package/dist/client/types/app/bsky/actor/searchActors.d.ts.map +0 -1
  301. package/dist/client/types/app/bsky/actor/searchActors.js +0 -14
  302. package/dist/client/types/app/bsky/actor/searchActors.js.map +0 -1
  303. package/dist/client/types/app/bsky/actor/searchActorsTypeahead.d.ts.map +0 -1
  304. package/dist/client/types/app/bsky/actor/searchActorsTypeahead.js +0 -14
  305. package/dist/client/types/app/bsky/actor/searchActorsTypeahead.js.map +0 -1
  306. package/dist/client/types/app/bsky/embed/external.d.ts.map +0 -1
  307. package/dist/client/types/app/bsky/embed/external.js +0 -47
  308. package/dist/client/types/app/bsky/embed/external.js.map +0 -1
  309. package/dist/client/types/app/bsky/embed/images.d.ts.map +0 -1
  310. package/dist/client/types/app/bsky/embed/images.js +0 -53
  311. package/dist/client/types/app/bsky/embed/images.js.map +0 -1
  312. package/dist/client/types/app/bsky/embed/record.d.ts.map +0 -1
  313. package/dist/client/types/app/bsky/embed/record.js +0 -55
  314. package/dist/client/types/app/bsky/embed/record.js.map +0 -1
  315. package/dist/client/types/app/bsky/embed/recordWithMedia.d.ts.map +0 -1
  316. package/dist/client/types/app/bsky/embed/recordWithMedia.js +0 -27
  317. package/dist/client/types/app/bsky/embed/recordWithMedia.js.map +0 -1
  318. package/dist/client/types/app/bsky/feed/defs.d.ts.map +0 -1
  319. package/dist/client/types/app/bsky/feed/defs.js +0 -142
  320. package/dist/client/types/app/bsky/feed/defs.js.map +0 -1
  321. package/dist/client/types/app/bsky/feed/describeFeedGenerator.d.ts.map +0 -1
  322. package/dist/client/types/app/bsky/feed/describeFeedGenerator.js +0 -36
  323. package/dist/client/types/app/bsky/feed/describeFeedGenerator.js.map +0 -1
  324. package/dist/client/types/app/bsky/feed/generator.d.ts.map +0 -1
  325. package/dist/client/types/app/bsky/feed/generator.js +0 -17
  326. package/dist/client/types/app/bsky/feed/generator.js.map +0 -1
  327. package/dist/client/types/app/bsky/feed/getActorFeeds.d.ts.map +0 -1
  328. package/dist/client/types/app/bsky/feed/getActorFeeds.js +0 -14
  329. package/dist/client/types/app/bsky/feed/getActorFeeds.js.map +0 -1
  330. package/dist/client/types/app/bsky/feed/getActorLikes.d.ts.map +0 -1
  331. package/dist/client/types/app/bsky/feed/getActorLikes.js +0 -30
  332. package/dist/client/types/app/bsky/feed/getActorLikes.js.map +0 -1
  333. package/dist/client/types/app/bsky/feed/getAuthorFeed.d.ts.map +0 -1
  334. package/dist/client/types/app/bsky/feed/getAuthorFeed.js +0 -30
  335. package/dist/client/types/app/bsky/feed/getAuthorFeed.js.map +0 -1
  336. package/dist/client/types/app/bsky/feed/getFeed.d.ts.map +0 -1
  337. package/dist/client/types/app/bsky/feed/getFeed.js +0 -22
  338. package/dist/client/types/app/bsky/feed/getFeed.js.map +0 -1
  339. package/dist/client/types/app/bsky/feed/getFeedGenerator.d.ts.map +0 -1
  340. package/dist/client/types/app/bsky/feed/getFeedGenerator.js +0 -14
  341. package/dist/client/types/app/bsky/feed/getFeedGenerator.js.map +0 -1
  342. package/dist/client/types/app/bsky/feed/getFeedGenerators.d.ts.map +0 -1
  343. package/dist/client/types/app/bsky/feed/getFeedGenerators.js +0 -14
  344. package/dist/client/types/app/bsky/feed/getFeedGenerators.js.map +0 -1
  345. package/dist/client/types/app/bsky/feed/getFeedSkeleton.d.ts.map +0 -1
  346. package/dist/client/types/app/bsky/feed/getFeedSkeleton.js +0 -22
  347. package/dist/client/types/app/bsky/feed/getFeedSkeleton.js.map +0 -1
  348. package/dist/client/types/app/bsky/feed/getLikes.d.ts.map +0 -1
  349. package/dist/client/types/app/bsky/feed/getLikes.js +0 -24
  350. package/dist/client/types/app/bsky/feed/getLikes.js.map +0 -1
  351. package/dist/client/types/app/bsky/feed/getListFeed.d.ts.map +0 -1
  352. package/dist/client/types/app/bsky/feed/getListFeed.js +0 -22
  353. package/dist/client/types/app/bsky/feed/getListFeed.js.map +0 -1
  354. package/dist/client/types/app/bsky/feed/getPostThread.d.ts.map +0 -1
  355. package/dist/client/types/app/bsky/feed/getPostThread.js +0 -22
  356. package/dist/client/types/app/bsky/feed/getPostThread.js.map +0 -1
  357. package/dist/client/types/app/bsky/feed/getPosts.d.ts.map +0 -1
  358. package/dist/client/types/app/bsky/feed/getPosts.js +0 -14
  359. package/dist/client/types/app/bsky/feed/getPosts.js.map +0 -1
  360. package/dist/client/types/app/bsky/feed/getRepostedBy.d.ts.map +0 -1
  361. package/dist/client/types/app/bsky/feed/getRepostedBy.js +0 -14
  362. package/dist/client/types/app/bsky/feed/getRepostedBy.js.map +0 -1
  363. package/dist/client/types/app/bsky/feed/getSuggestedFeeds.d.ts.map +0 -1
  364. package/dist/client/types/app/bsky/feed/getSuggestedFeeds.js +0 -14
  365. package/dist/client/types/app/bsky/feed/getSuggestedFeeds.js.map +0 -1
  366. package/dist/client/types/app/bsky/feed/getTimeline.d.ts.map +0 -1
  367. package/dist/client/types/app/bsky/feed/getTimeline.js +0 -14
  368. package/dist/client/types/app/bsky/feed/getTimeline.js.map +0 -1
  369. package/dist/client/types/app/bsky/feed/like.d.ts.map +0 -1
  370. package/dist/client/types/app/bsky/feed/like.js +0 -16
  371. package/dist/client/types/app/bsky/feed/like.js.map +0 -1
  372. package/dist/client/types/app/bsky/feed/post.d.ts.map +0 -1
  373. package/dist/client/types/app/bsky/feed/post.js +0 -42
  374. package/dist/client/types/app/bsky/feed/post.js.map +0 -1
  375. package/dist/client/types/app/bsky/feed/repost.d.ts.map +0 -1
  376. package/dist/client/types/app/bsky/feed/repost.js +0 -17
  377. package/dist/client/types/app/bsky/feed/repost.js.map +0 -1
  378. package/dist/client/types/app/bsky/feed/searchPosts.d.ts.map +0 -1
  379. package/dist/client/types/app/bsky/feed/searchPosts.js +0 -22
  380. package/dist/client/types/app/bsky/feed/searchPosts.js.map +0 -1
  381. package/dist/client/types/app/bsky/feed/threadgate.d.ts.map +0 -1
  382. package/dist/client/types/app/bsky/feed/threadgate.js +0 -47
  383. package/dist/client/types/app/bsky/feed/threadgate.js.map +0 -1
  384. package/dist/client/types/app/bsky/graph/block.d.ts.map +0 -1
  385. package/dist/client/types/app/bsky/graph/block.js +0 -17
  386. package/dist/client/types/app/bsky/graph/block.js.map +0 -1
  387. package/dist/client/types/app/bsky/graph/defs.d.ts.map +0 -1
  388. package/dist/client/types/app/bsky/graph/defs.js +0 -70
  389. package/dist/client/types/app/bsky/graph/defs.js.map +0 -1
  390. package/dist/client/types/app/bsky/graph/follow.d.ts.map +0 -1
  391. package/dist/client/types/app/bsky/graph/follow.js +0 -17
  392. package/dist/client/types/app/bsky/graph/follow.js.map +0 -1
  393. package/dist/client/types/app/bsky/graph/getBlocks.d.ts.map +0 -1
  394. package/dist/client/types/app/bsky/graph/getBlocks.js +0 -14
  395. package/dist/client/types/app/bsky/graph/getBlocks.js.map +0 -1
  396. package/dist/client/types/app/bsky/graph/getFollowers.d.ts.map +0 -1
  397. package/dist/client/types/app/bsky/graph/getFollowers.js +0 -14
  398. package/dist/client/types/app/bsky/graph/getFollowers.js.map +0 -1
  399. package/dist/client/types/app/bsky/graph/getFollows.d.ts.map +0 -1
  400. package/dist/client/types/app/bsky/graph/getFollows.js +0 -14
  401. package/dist/client/types/app/bsky/graph/getFollows.js.map +0 -1
  402. package/dist/client/types/app/bsky/graph/getList.d.ts.map +0 -1
  403. package/dist/client/types/app/bsky/graph/getList.js +0 -14
  404. package/dist/client/types/app/bsky/graph/getList.js.map +0 -1
  405. package/dist/client/types/app/bsky/graph/getListBlocks.d.ts.map +0 -1
  406. package/dist/client/types/app/bsky/graph/getListBlocks.js +0 -14
  407. package/dist/client/types/app/bsky/graph/getListBlocks.js.map +0 -1
  408. package/dist/client/types/app/bsky/graph/getListMutes.d.ts.map +0 -1
  409. package/dist/client/types/app/bsky/graph/getListMutes.js +0 -14
  410. package/dist/client/types/app/bsky/graph/getListMutes.js.map +0 -1
  411. package/dist/client/types/app/bsky/graph/getLists.d.ts.map +0 -1
  412. package/dist/client/types/app/bsky/graph/getLists.js +0 -14
  413. package/dist/client/types/app/bsky/graph/getLists.js.map +0 -1
  414. package/dist/client/types/app/bsky/graph/getMutes.d.ts.map +0 -1
  415. package/dist/client/types/app/bsky/graph/getMutes.js +0 -14
  416. package/dist/client/types/app/bsky/graph/getMutes.js.map +0 -1
  417. package/dist/client/types/app/bsky/graph/getRelationships.d.ts.map +0 -1
  418. package/dist/client/types/app/bsky/graph/getRelationships.js +0 -22
  419. package/dist/client/types/app/bsky/graph/getRelationships.js.map +0 -1
  420. package/dist/client/types/app/bsky/graph/getSuggestedFollowsByActor.d.ts.map +0 -1
  421. package/dist/client/types/app/bsky/graph/getSuggestedFollowsByActor.js +0 -14
  422. package/dist/client/types/app/bsky/graph/getSuggestedFollowsByActor.js.map +0 -1
  423. package/dist/client/types/app/bsky/graph/list.d.ts.map +0 -1
  424. package/dist/client/types/app/bsky/graph/list.js +0 -17
  425. package/dist/client/types/app/bsky/graph/list.js.map +0 -1
  426. package/dist/client/types/app/bsky/graph/listblock.d.ts.map +0 -1
  427. package/dist/client/types/app/bsky/graph/listblock.js +0 -17
  428. package/dist/client/types/app/bsky/graph/listblock.js.map +0 -1
  429. package/dist/client/types/app/bsky/graph/listitem.d.ts.map +0 -1
  430. package/dist/client/types/app/bsky/graph/listitem.js +0 -17
  431. package/dist/client/types/app/bsky/graph/listitem.js.map +0 -1
  432. package/dist/client/types/app/bsky/graph/muteActor.d.ts.map +0 -1
  433. package/dist/client/types/app/bsky/graph/muteActor.js +0 -14
  434. package/dist/client/types/app/bsky/graph/muteActor.js.map +0 -1
  435. package/dist/client/types/app/bsky/graph/muteActorList.d.ts.map +0 -1
  436. package/dist/client/types/app/bsky/graph/muteActorList.js +0 -14
  437. package/dist/client/types/app/bsky/graph/muteActorList.js.map +0 -1
  438. package/dist/client/types/app/bsky/graph/unmuteActor.d.ts.map +0 -1
  439. package/dist/client/types/app/bsky/graph/unmuteActor.js +0 -14
  440. package/dist/client/types/app/bsky/graph/unmuteActor.js.map +0 -1
  441. package/dist/client/types/app/bsky/graph/unmuteActorList.d.ts.map +0 -1
  442. package/dist/client/types/app/bsky/graph/unmuteActorList.js +0 -14
  443. package/dist/client/types/app/bsky/graph/unmuteActorList.js.map +0 -1
  444. package/dist/client/types/app/bsky/notification/getUnreadCount.d.ts.map +0 -1
  445. package/dist/client/types/app/bsky/notification/getUnreadCount.js +0 -14
  446. package/dist/client/types/app/bsky/notification/getUnreadCount.js.map +0 -1
  447. package/dist/client/types/app/bsky/notification/listNotifications.d.ts.map +0 -1
  448. package/dist/client/types/app/bsky/notification/listNotifications.js +0 -26
  449. package/dist/client/types/app/bsky/notification/listNotifications.js.map +0 -1
  450. package/dist/client/types/app/bsky/notification/registerPush.d.ts.map +0 -1
  451. package/dist/client/types/app/bsky/notification/registerPush.js +0 -14
  452. package/dist/client/types/app/bsky/notification/registerPush.js.map +0 -1
  453. package/dist/client/types/app/bsky/notification/updateSeen.d.ts.map +0 -1
  454. package/dist/client/types/app/bsky/notification/updateSeen.js +0 -14
  455. package/dist/client/types/app/bsky/notification/updateSeen.js.map +0 -1
  456. package/dist/client/types/app/bsky/richtext/facet.d.ts.map +0 -1
  457. package/dist/client/types/app/bsky/richtext/facet.js +0 -55
  458. package/dist/client/types/app/bsky/richtext/facet.js.map +0 -1
  459. package/dist/client/types/app/bsky/unspecced/defs.d.ts.map +0 -1
  460. package/dist/client/types/app/bsky/unspecced/defs.js +0 -26
  461. package/dist/client/types/app/bsky/unspecced/defs.js.map +0 -1
  462. package/dist/client/types/app/bsky/unspecced/getPopularFeedGenerators.d.ts.map +0 -1
  463. package/dist/client/types/app/bsky/unspecced/getPopularFeedGenerators.js +0 -14
  464. package/dist/client/types/app/bsky/unspecced/getPopularFeedGenerators.js.map +0 -1
  465. package/dist/client/types/app/bsky/unspecced/getTaggedSuggestions.d.ts.map +0 -1
  466. package/dist/client/types/app/bsky/unspecced/getTaggedSuggestions.js +0 -26
  467. package/dist/client/types/app/bsky/unspecced/getTaggedSuggestions.js.map +0 -1
  468. package/dist/client/types/app/bsky/unspecced/searchActorsSkeleton.d.ts.map +0 -1
  469. package/dist/client/types/app/bsky/unspecced/searchActorsSkeleton.js +0 -22
  470. package/dist/client/types/app/bsky/unspecced/searchActorsSkeleton.js.map +0 -1
  471. package/dist/client/types/app/bsky/unspecced/searchPostsSkeleton.d.ts.map +0 -1
  472. package/dist/client/types/app/bsky/unspecced/searchPostsSkeleton.js +0 -22
  473. package/dist/client/types/app/bsky/unspecced/searchPostsSkeleton.js.map +0 -1
  474. package/dist/client/types/com/atproto/admin/createCommunicationTemplate.d.ts.map +0 -1
  475. package/dist/client/types/com/atproto/admin/createCommunicationTemplate.js +0 -14
  476. package/dist/client/types/com/atproto/admin/createCommunicationTemplate.js.map +0 -1
  477. package/dist/client/types/com/atproto/admin/defs.d.ts.map +0 -1
  478. package/dist/client/types/com/atproto/admin/defs.js +0 -343
  479. package/dist/client/types/com/atproto/admin/defs.js.map +0 -1
  480. package/dist/client/types/com/atproto/admin/deleteAccount.d.ts.map +0 -1
  481. package/dist/client/types/com/atproto/admin/deleteAccount.js +0 -14
  482. package/dist/client/types/com/atproto/admin/deleteAccount.js.map +0 -1
  483. package/dist/client/types/com/atproto/admin/deleteCommunicationTemplate.d.ts.map +0 -1
  484. package/dist/client/types/com/atproto/admin/deleteCommunicationTemplate.js +0 -14
  485. package/dist/client/types/com/atproto/admin/deleteCommunicationTemplate.js.map +0 -1
  486. package/dist/client/types/com/atproto/admin/disableAccountInvites.d.ts.map +0 -1
  487. package/dist/client/types/com/atproto/admin/disableAccountInvites.js +0 -14
  488. package/dist/client/types/com/atproto/admin/disableAccountInvites.js.map +0 -1
  489. package/dist/client/types/com/atproto/admin/disableInviteCodes.d.ts.map +0 -1
  490. package/dist/client/types/com/atproto/admin/disableInviteCodes.js +0 -14
  491. package/dist/client/types/com/atproto/admin/disableInviteCodes.js.map +0 -1
  492. package/dist/client/types/com/atproto/admin/emitModerationEvent.d.ts +0 -37
  493. package/dist/client/types/com/atproto/admin/emitModerationEvent.d.ts.map +0 -1
  494. package/dist/client/types/com/atproto/admin/emitModerationEvent.js +0 -22
  495. package/dist/client/types/com/atproto/admin/emitModerationEvent.js.map +0 -1
  496. package/dist/client/types/com/atproto/admin/enableAccountInvites.d.ts.map +0 -1
  497. package/dist/client/types/com/atproto/admin/enableAccountInvites.js +0 -14
  498. package/dist/client/types/com/atproto/admin/enableAccountInvites.js.map +0 -1
  499. package/dist/client/types/com/atproto/admin/getAccountInfo.d.ts.map +0 -1
  500. package/dist/client/types/com/atproto/admin/getAccountInfo.js +0 -14
  501. package/dist/client/types/com/atproto/admin/getAccountInfo.js.map +0 -1
  502. package/dist/client/types/com/atproto/admin/getAccountInfos.d.ts.map +0 -1
  503. package/dist/client/types/com/atproto/admin/getAccountInfos.js +0 -14
  504. package/dist/client/types/com/atproto/admin/getAccountInfos.js.map +0 -1
  505. package/dist/client/types/com/atproto/admin/getInviteCodes.d.ts.map +0 -1
  506. package/dist/client/types/com/atproto/admin/getInviteCodes.js +0 -14
  507. package/dist/client/types/com/atproto/admin/getInviteCodes.js.map +0 -1
  508. package/dist/client/types/com/atproto/admin/getModerationEvent.d.ts.map +0 -1
  509. package/dist/client/types/com/atproto/admin/getModerationEvent.js +0 -14
  510. package/dist/client/types/com/atproto/admin/getModerationEvent.js.map +0 -1
  511. package/dist/client/types/com/atproto/admin/getRecord.d.ts.map +0 -1
  512. package/dist/client/types/com/atproto/admin/getRecord.js +0 -22
  513. package/dist/client/types/com/atproto/admin/getRecord.js.map +0 -1
  514. package/dist/client/types/com/atproto/admin/getRepo.d.ts.map +0 -1
  515. package/dist/client/types/com/atproto/admin/getRepo.js +0 -22
  516. package/dist/client/types/com/atproto/admin/getRepo.js.map +0 -1
  517. package/dist/client/types/com/atproto/admin/getSubjectStatus.d.ts.map +0 -1
  518. package/dist/client/types/com/atproto/admin/getSubjectStatus.js +0 -14
  519. package/dist/client/types/com/atproto/admin/getSubjectStatus.js.map +0 -1
  520. package/dist/client/types/com/atproto/admin/listCommunicationTemplates.d.ts.map +0 -1
  521. package/dist/client/types/com/atproto/admin/listCommunicationTemplates.js +0 -14
  522. package/dist/client/types/com/atproto/admin/listCommunicationTemplates.js.map +0 -1
  523. package/dist/client/types/com/atproto/admin/queryModerationEvents.d.ts +0 -50
  524. package/dist/client/types/com/atproto/admin/queryModerationEvents.d.ts.map +0 -1
  525. package/dist/client/types/com/atproto/admin/queryModerationEvents.js +0 -14
  526. package/dist/client/types/com/atproto/admin/queryModerationEvents.js.map +0 -1
  527. package/dist/client/types/com/atproto/admin/queryModerationStatuses.d.ts.map +0 -1
  528. package/dist/client/types/com/atproto/admin/queryModerationStatuses.js +0 -14
  529. package/dist/client/types/com/atproto/admin/queryModerationStatuses.js.map +0 -1
  530. package/dist/client/types/com/atproto/admin/searchRepos.d.ts.map +0 -1
  531. package/dist/client/types/com/atproto/admin/searchRepos.js +0 -14
  532. package/dist/client/types/com/atproto/admin/searchRepos.js.map +0 -1
  533. package/dist/client/types/com/atproto/admin/sendEmail.d.ts.map +0 -1
  534. package/dist/client/types/com/atproto/admin/sendEmail.js +0 -14
  535. package/dist/client/types/com/atproto/admin/sendEmail.js.map +0 -1
  536. package/dist/client/types/com/atproto/admin/updateAccountEmail.d.ts.map +0 -1
  537. package/dist/client/types/com/atproto/admin/updateAccountEmail.js +0 -14
  538. package/dist/client/types/com/atproto/admin/updateAccountEmail.js.map +0 -1
  539. package/dist/client/types/com/atproto/admin/updateAccountHandle.d.ts.map +0 -1
  540. package/dist/client/types/com/atproto/admin/updateAccountHandle.js +0 -14
  541. package/dist/client/types/com/atproto/admin/updateAccountHandle.js.map +0 -1
  542. package/dist/client/types/com/atproto/admin/updateAccountPassword.d.ts.map +0 -1
  543. package/dist/client/types/com/atproto/admin/updateAccountPassword.js +0 -14
  544. package/dist/client/types/com/atproto/admin/updateAccountPassword.js.map +0 -1
  545. package/dist/client/types/com/atproto/admin/updateCommunicationTemplate.d.ts.map +0 -1
  546. package/dist/client/types/com/atproto/admin/updateCommunicationTemplate.js +0 -14
  547. package/dist/client/types/com/atproto/admin/updateCommunicationTemplate.js.map +0 -1
  548. package/dist/client/types/com/atproto/admin/updateSubjectStatus.d.ts.map +0 -1
  549. package/dist/client/types/com/atproto/admin/updateSubjectStatus.js +0 -14
  550. package/dist/client/types/com/atproto/admin/updateSubjectStatus.js.map +0 -1
  551. package/dist/client/types/com/atproto/identity/getRecommendedDidCredentials.d.ts.map +0 -1
  552. package/dist/client/types/com/atproto/identity/getRecommendedDidCredentials.js +0 -14
  553. package/dist/client/types/com/atproto/identity/getRecommendedDidCredentials.js.map +0 -1
  554. package/dist/client/types/com/atproto/identity/requestPlcOperationSignature.d.ts.map +0 -1
  555. package/dist/client/types/com/atproto/identity/requestPlcOperationSignature.js +0 -14
  556. package/dist/client/types/com/atproto/identity/requestPlcOperationSignature.js.map +0 -1
  557. package/dist/client/types/com/atproto/identity/resolveHandle.d.ts.map +0 -1
  558. package/dist/client/types/com/atproto/identity/resolveHandle.js +0 -14
  559. package/dist/client/types/com/atproto/identity/resolveHandle.js.map +0 -1
  560. package/dist/client/types/com/atproto/identity/signPlcOperation.d.ts.map +0 -1
  561. package/dist/client/types/com/atproto/identity/signPlcOperation.js +0 -14
  562. package/dist/client/types/com/atproto/identity/signPlcOperation.js.map +0 -1
  563. package/dist/client/types/com/atproto/identity/submitPlcOperation.d.ts.map +0 -1
  564. package/dist/client/types/com/atproto/identity/submitPlcOperation.js +0 -14
  565. package/dist/client/types/com/atproto/identity/submitPlcOperation.js.map +0 -1
  566. package/dist/client/types/com/atproto/identity/updateHandle.d.ts.map +0 -1
  567. package/dist/client/types/com/atproto/identity/updateHandle.js +0 -14
  568. package/dist/client/types/com/atproto/identity/updateHandle.js.map +0 -1
  569. package/dist/client/types/com/atproto/label/defs.d.ts.map +0 -1
  570. package/dist/client/types/com/atproto/label/defs.js +0 -36
  571. package/dist/client/types/com/atproto/label/defs.js.map +0 -1
  572. package/dist/client/types/com/atproto/label/queryLabels.d.ts.map +0 -1
  573. package/dist/client/types/com/atproto/label/queryLabels.js +0 -14
  574. package/dist/client/types/com/atproto/label/queryLabels.js.map +0 -1
  575. package/dist/client/types/com/atproto/label/subscribeLabels.d.ts.map +0 -1
  576. package/dist/client/types/com/atproto/label/subscribeLabels.js +0 -26
  577. package/dist/client/types/com/atproto/label/subscribeLabels.js.map +0 -1
  578. package/dist/client/types/com/atproto/moderation/createReport.d.ts.map +0 -1
  579. package/dist/client/types/com/atproto/moderation/createReport.js +0 -14
  580. package/dist/client/types/com/atproto/moderation/createReport.js.map +0 -1
  581. package/dist/client/types/com/atproto/moderation/defs.d.ts.map +0 -1
  582. package/dist/client/types/com/atproto/moderation/defs.js +0 -18
  583. package/dist/client/types/com/atproto/moderation/defs.js.map +0 -1
  584. package/dist/client/types/com/atproto/repo/applyWrites.d.ts.map +0 -1
  585. package/dist/client/types/com/atproto/repo/applyWrites.js +0 -54
  586. package/dist/client/types/com/atproto/repo/applyWrites.js.map +0 -1
  587. package/dist/client/types/com/atproto/repo/createRecord.d.ts.map +0 -1
  588. package/dist/client/types/com/atproto/repo/createRecord.js +0 -22
  589. package/dist/client/types/com/atproto/repo/createRecord.js.map +0 -1
  590. package/dist/client/types/com/atproto/repo/deleteRecord.d.ts.map +0 -1
  591. package/dist/client/types/com/atproto/repo/deleteRecord.js +0 -22
  592. package/dist/client/types/com/atproto/repo/deleteRecord.js.map +0 -1
  593. package/dist/client/types/com/atproto/repo/describeRepo.d.ts.map +0 -1
  594. package/dist/client/types/com/atproto/repo/describeRepo.js +0 -14
  595. package/dist/client/types/com/atproto/repo/describeRepo.js.map +0 -1
  596. package/dist/client/types/com/atproto/repo/getRecord.d.ts.map +0 -1
  597. package/dist/client/types/com/atproto/repo/getRecord.js +0 -14
  598. package/dist/client/types/com/atproto/repo/getRecord.js.map +0 -1
  599. package/dist/client/types/com/atproto/repo/importRepo.d.ts.map +0 -1
  600. package/dist/client/types/com/atproto/repo/importRepo.js +0 -14
  601. package/dist/client/types/com/atproto/repo/importRepo.js.map +0 -1
  602. package/dist/client/types/com/atproto/repo/listMissingBlobs.d.ts.map +0 -1
  603. package/dist/client/types/com/atproto/repo/listMissingBlobs.js +0 -26
  604. package/dist/client/types/com/atproto/repo/listMissingBlobs.js.map +0 -1
  605. package/dist/client/types/com/atproto/repo/listRecords.d.ts.map +0 -1
  606. package/dist/client/types/com/atproto/repo/listRecords.js +0 -26
  607. package/dist/client/types/com/atproto/repo/listRecords.js.map +0 -1
  608. package/dist/client/types/com/atproto/repo/putRecord.d.ts.map +0 -1
  609. package/dist/client/types/com/atproto/repo/putRecord.js +0 -22
  610. package/dist/client/types/com/atproto/repo/putRecord.js.map +0 -1
  611. package/dist/client/types/com/atproto/repo/strongRef.d.ts.map +0 -1
  612. package/dist/client/types/com/atproto/repo/strongRef.js +0 -17
  613. package/dist/client/types/com/atproto/repo/strongRef.js.map +0 -1
  614. package/dist/client/types/com/atproto/repo/uploadBlob.d.ts.map +0 -1
  615. package/dist/client/types/com/atproto/repo/uploadBlob.js +0 -14
  616. package/dist/client/types/com/atproto/repo/uploadBlob.js.map +0 -1
  617. package/dist/client/types/com/atproto/server/activateAccount.d.ts.map +0 -1
  618. package/dist/client/types/com/atproto/server/activateAccount.js +0 -14
  619. package/dist/client/types/com/atproto/server/activateAccount.js.map +0 -1
  620. package/dist/client/types/com/atproto/server/checkAccountStatus.d.ts.map +0 -1
  621. package/dist/client/types/com/atproto/server/checkAccountStatus.js +0 -14
  622. package/dist/client/types/com/atproto/server/checkAccountStatus.js.map +0 -1
  623. package/dist/client/types/com/atproto/server/confirmEmail.d.ts.map +0 -1
  624. package/dist/client/types/com/atproto/server/confirmEmail.js +0 -46
  625. package/dist/client/types/com/atproto/server/confirmEmail.js.map +0 -1
  626. package/dist/client/types/com/atproto/server/createAccount.d.ts.map +0 -1
  627. package/dist/client/types/com/atproto/server/createAccount.js +0 -70
  628. package/dist/client/types/com/atproto/server/createAccount.js.map +0 -1
  629. package/dist/client/types/com/atproto/server/createAppPassword.d.ts.map +0 -1
  630. package/dist/client/types/com/atproto/server/createAppPassword.js +0 -34
  631. package/dist/client/types/com/atproto/server/createAppPassword.js.map +0 -1
  632. package/dist/client/types/com/atproto/server/createInviteCode.d.ts.map +0 -1
  633. package/dist/client/types/com/atproto/server/createInviteCode.js +0 -14
  634. package/dist/client/types/com/atproto/server/createInviteCode.js.map +0 -1
  635. package/dist/client/types/com/atproto/server/createInviteCodes.d.ts.map +0 -1
  636. package/dist/client/types/com/atproto/server/createInviteCodes.js +0 -26
  637. package/dist/client/types/com/atproto/server/createInviteCodes.js.map +0 -1
  638. package/dist/client/types/com/atproto/server/createSession.d.ts.map +0 -1
  639. package/dist/client/types/com/atproto/server/createSession.js +0 -22
  640. package/dist/client/types/com/atproto/server/createSession.js.map +0 -1
  641. package/dist/client/types/com/atproto/server/deactivateAccount.d.ts.map +0 -1
  642. package/dist/client/types/com/atproto/server/deactivateAccount.js +0 -14
  643. package/dist/client/types/com/atproto/server/deactivateAccount.js.map +0 -1
  644. package/dist/client/types/com/atproto/server/defs.d.ts.map +0 -1
  645. package/dist/client/types/com/atproto/server/defs.js +0 -26
  646. package/dist/client/types/com/atproto/server/defs.js.map +0 -1
  647. package/dist/client/types/com/atproto/server/deleteAccount.d.ts.map +0 -1
  648. package/dist/client/types/com/atproto/server/deleteAccount.js +0 -30
  649. package/dist/client/types/com/atproto/server/deleteAccount.js.map +0 -1
  650. package/dist/client/types/com/atproto/server/deleteSession.d.ts.map +0 -1
  651. package/dist/client/types/com/atproto/server/deleteSession.js +0 -14
  652. package/dist/client/types/com/atproto/server/deleteSession.js.map +0 -1
  653. package/dist/client/types/com/atproto/server/describeServer.d.ts.map +0 -1
  654. package/dist/client/types/com/atproto/server/describeServer.js +0 -26
  655. package/dist/client/types/com/atproto/server/describeServer.js.map +0 -1
  656. package/dist/client/types/com/atproto/server/getAccountInviteCodes.d.ts.map +0 -1
  657. package/dist/client/types/com/atproto/server/getAccountInviteCodes.js +0 -22
  658. package/dist/client/types/com/atproto/server/getAccountInviteCodes.js.map +0 -1
  659. package/dist/client/types/com/atproto/server/getServiceAuth.d.ts.map +0 -1
  660. package/dist/client/types/com/atproto/server/getServiceAuth.js +0 -14
  661. package/dist/client/types/com/atproto/server/getServiceAuth.js.map +0 -1
  662. package/dist/client/types/com/atproto/server/getSession.d.ts.map +0 -1
  663. package/dist/client/types/com/atproto/server/getSession.js +0 -14
  664. package/dist/client/types/com/atproto/server/getSession.js.map +0 -1
  665. package/dist/client/types/com/atproto/server/listAppPasswords.d.ts.map +0 -1
  666. package/dist/client/types/com/atproto/server/listAppPasswords.js +0 -34
  667. package/dist/client/types/com/atproto/server/listAppPasswords.js.map +0 -1
  668. package/dist/client/types/com/atproto/server/refreshSession.d.ts.map +0 -1
  669. package/dist/client/types/com/atproto/server/refreshSession.js +0 -22
  670. package/dist/client/types/com/atproto/server/refreshSession.js.map +0 -1
  671. package/dist/client/types/com/atproto/server/requestAccountDelete.d.ts.map +0 -1
  672. package/dist/client/types/com/atproto/server/requestAccountDelete.js +0 -14
  673. package/dist/client/types/com/atproto/server/requestAccountDelete.js.map +0 -1
  674. package/dist/client/types/com/atproto/server/requestEmailConfirmation.d.ts.map +0 -1
  675. package/dist/client/types/com/atproto/server/requestEmailConfirmation.js +0 -14
  676. package/dist/client/types/com/atproto/server/requestEmailConfirmation.js.map +0 -1
  677. package/dist/client/types/com/atproto/server/requestEmailUpdate.d.ts.map +0 -1
  678. package/dist/client/types/com/atproto/server/requestEmailUpdate.js +0 -14
  679. package/dist/client/types/com/atproto/server/requestEmailUpdate.js.map +0 -1
  680. package/dist/client/types/com/atproto/server/requestPasswordReset.d.ts.map +0 -1
  681. package/dist/client/types/com/atproto/server/requestPasswordReset.js +0 -14
  682. package/dist/client/types/com/atproto/server/requestPasswordReset.js.map +0 -1
  683. package/dist/client/types/com/atproto/server/reserveSigningKey.d.ts.map +0 -1
  684. package/dist/client/types/com/atproto/server/reserveSigningKey.js +0 -14
  685. package/dist/client/types/com/atproto/server/reserveSigningKey.js.map +0 -1
  686. package/dist/client/types/com/atproto/server/resetPassword.d.ts.map +0 -1
  687. package/dist/client/types/com/atproto/server/resetPassword.js +0 -30
  688. package/dist/client/types/com/atproto/server/resetPassword.js.map +0 -1
  689. package/dist/client/types/com/atproto/server/revokeAppPassword.d.ts.map +0 -1
  690. package/dist/client/types/com/atproto/server/revokeAppPassword.js +0 -14
  691. package/dist/client/types/com/atproto/server/revokeAppPassword.js.map +0 -1
  692. package/dist/client/types/com/atproto/server/updateEmail.d.ts.map +0 -1
  693. package/dist/client/types/com/atproto/server/updateEmail.js +0 -38
  694. package/dist/client/types/com/atproto/server/updateEmail.js.map +0 -1
  695. package/dist/client/types/com/atproto/sync/getBlob.d.ts.map +0 -1
  696. package/dist/client/types/com/atproto/sync/getBlob.js +0 -14
  697. package/dist/client/types/com/atproto/sync/getBlob.js.map +0 -1
  698. package/dist/client/types/com/atproto/sync/getBlocks.d.ts.map +0 -1
  699. package/dist/client/types/com/atproto/sync/getBlocks.js +0 -14
  700. package/dist/client/types/com/atproto/sync/getBlocks.js.map +0 -1
  701. package/dist/client/types/com/atproto/sync/getCheckout.d.ts.map +0 -1
  702. package/dist/client/types/com/atproto/sync/getCheckout.js +0 -14
  703. package/dist/client/types/com/atproto/sync/getCheckout.js.map +0 -1
  704. package/dist/client/types/com/atproto/sync/getHead.d.ts.map +0 -1
  705. package/dist/client/types/com/atproto/sync/getHead.js +0 -22
  706. package/dist/client/types/com/atproto/sync/getHead.js.map +0 -1
  707. package/dist/client/types/com/atproto/sync/getLatestCommit.d.ts.map +0 -1
  708. package/dist/client/types/com/atproto/sync/getLatestCommit.js +0 -22
  709. package/dist/client/types/com/atproto/sync/getLatestCommit.js.map +0 -1
  710. package/dist/client/types/com/atproto/sync/getRecord.d.ts.map +0 -1
  711. package/dist/client/types/com/atproto/sync/getRecord.js +0 -14
  712. package/dist/client/types/com/atproto/sync/getRecord.js.map +0 -1
  713. package/dist/client/types/com/atproto/sync/getRepo.d.ts.map +0 -1
  714. package/dist/client/types/com/atproto/sync/getRepo.js +0 -14
  715. package/dist/client/types/com/atproto/sync/getRepo.js.map +0 -1
  716. package/dist/client/types/com/atproto/sync/listBlobs.d.ts.map +0 -1
  717. package/dist/client/types/com/atproto/sync/listBlobs.js +0 -14
  718. package/dist/client/types/com/atproto/sync/listBlobs.js.map +0 -1
  719. package/dist/client/types/com/atproto/sync/listRepos.d.ts.map +0 -1
  720. package/dist/client/types/com/atproto/sync/listRepos.js +0 -26
  721. package/dist/client/types/com/atproto/sync/listRepos.js.map +0 -1
  722. package/dist/client/types/com/atproto/sync/notifyOfUpdate.d.ts.map +0 -1
  723. package/dist/client/types/com/atproto/sync/notifyOfUpdate.js +0 -14
  724. package/dist/client/types/com/atproto/sync/notifyOfUpdate.js.map +0 -1
  725. package/dist/client/types/com/atproto/sync/requestCrawl.d.ts.map +0 -1
  726. package/dist/client/types/com/atproto/sync/requestCrawl.js +0 -14
  727. package/dist/client/types/com/atproto/sync/requestCrawl.js.map +0 -1
  728. package/dist/client/types/com/atproto/sync/subscribeRepos.d.ts.map +0 -1
  729. package/dist/client/types/com/atproto/sync/subscribeRepos.js +0 -76
  730. package/dist/client/types/com/atproto/sync/subscribeRepos.js.map +0 -1
  731. package/dist/client/types/com/atproto/temp/checkSignupQueue.d.ts.map +0 -1
  732. package/dist/client/types/com/atproto/temp/checkSignupQueue.js +0 -14
  733. package/dist/client/types/com/atproto/temp/checkSignupQueue.js.map +0 -1
  734. package/dist/client/types/com/atproto/temp/fetchLabels.d.ts.map +0 -1
  735. package/dist/client/types/com/atproto/temp/fetchLabels.js +0 -14
  736. package/dist/client/types/com/atproto/temp/fetchLabels.js.map +0 -1
  737. package/dist/client/types/com/atproto/temp/requestPhoneVerification.d.ts.map +0 -1
  738. package/dist/client/types/com/atproto/temp/requestPhoneVerification.js +0 -14
  739. package/dist/client/types/com/atproto/temp/requestPhoneVerification.js.map +0 -1
  740. package/dist/client/util.d.ts.map +0 -1
  741. package/dist/client/util.js +0 -15
  742. package/dist/client/util.js.map +0 -1
  743. package/dist/index.d.ts.map +0 -1
  744. package/dist/moderation/accumulator.d.ts +0 -17
  745. package/dist/moderation/accumulator.d.ts.map +0 -1
  746. package/dist/moderation/accumulator.js +0 -204
  747. package/dist/moderation/accumulator.js.map +0 -1
  748. package/dist/moderation/const/label-groups.d.ts +0 -4
  749. package/dist/moderation/const/label-groups.d.ts.map +0 -1
  750. package/dist/moderation/const/label-groups.js +0 -148
  751. package/dist/moderation/const/label-groups.js.map +0 -1
  752. package/dist/moderation/const/labels.d.ts.map +0 -1
  753. package/dist/moderation/const/labels.js +0 -790
  754. package/dist/moderation/const/labels.js.map +0 -1
  755. package/dist/moderation/index.d.ts.map +0 -1
  756. package/dist/moderation/index.js +0 -226
  757. package/dist/moderation/index.js.map +0 -1
  758. package/dist/moderation/subjects/account.d.ts.map +0 -1
  759. package/dist/moderation/subjects/account.js +0 -39
  760. package/dist/moderation/subjects/account.js.map +0 -1
  761. package/dist/moderation/subjects/feed-generator.d.ts.map +0 -1
  762. package/dist/moderation/subjects/feed-generator.js +0 -10
  763. package/dist/moderation/subjects/feed-generator.js.map +0 -1
  764. package/dist/moderation/subjects/post.d.ts.map +0 -1
  765. package/dist/moderation/subjects/post.js +0 -16
  766. package/dist/moderation/subjects/post.js.map +0 -1
  767. package/dist/moderation/subjects/profile.d.ts.map +0 -1
  768. package/dist/moderation/subjects/profile.js +0 -21
  769. package/dist/moderation/subjects/profile.js.map +0 -1
  770. package/dist/moderation/subjects/quoted-post.d.ts +0 -7
  771. package/dist/moderation/subjects/quoted-post.d.ts.map +0 -1
  772. package/dist/moderation/subjects/quoted-post.js +0 -72
  773. package/dist/moderation/subjects/quoted-post.js.map +0 -1
  774. package/dist/moderation/subjects/user-list.d.ts.map +0 -1
  775. package/dist/moderation/subjects/user-list.js +0 -10
  776. package/dist/moderation/subjects/user-list.js.map +0 -1
  777. package/dist/moderation/types.d.ts.map +0 -1
  778. package/dist/moderation/types.js +0 -60
  779. package/dist/moderation/types.js.map +0 -1
  780. package/dist/moderation/util.d.ts.map +0 -1
  781. package/dist/moderation/util.js +0 -79
  782. package/dist/moderation/util.js.map +0 -1
  783. package/dist/rich-text/detection.d.ts.map +0 -1
  784. package/dist/rich-text/detection.js +0 -107
  785. package/dist/rich-text/detection.js.map +0 -1
  786. package/dist/rich-text/rich-text.d.ts.map +0 -1
  787. package/dist/rich-text/rich-text.js +0 -374
  788. package/dist/rich-text/rich-text.js.map +0 -1
  789. package/dist/rich-text/sanitization.d.ts.map +0 -1
  790. package/dist/rich-text/sanitization.js +0 -32
  791. package/dist/rich-text/sanitization.js.map +0 -1
  792. package/dist/rich-text/unicode.d.ts.map +0 -1
  793. package/dist/rich-text/unicode.js +0 -58
  794. package/dist/rich-text/unicode.js.map +0 -1
  795. package/dist/types.d.ts.map +0 -1
  796. package/dist/types.js +0 -3
  797. package/dist/types.js.map +0 -1
  798. package/docs/labels.md +0 -554
  799. package/docs/moderation-behaviors/posts.md +0 -1813
  800. package/docs/moderation-behaviors/profiles.md +0 -833
  801. package/jest.d.ts +0 -20
  802. package/jest.setup.ts +0 -79
  803. package/scripts/code/label-groups.mjs +0 -68
  804. package/scripts/docs/labels.mjs +0 -164
  805. package/scripts/docs/post-moderation-behaviors.mjs +0 -117
  806. package/scripts/docs/profile-moderation-behaviors.mjs +0 -122
  807. package/scripts/generate-docs.mjs +0 -5
  808. package/src/moderation/accumulator.ts +0 -217
  809. package/src/moderation/const/label-groups.ts +0 -149
  810. package/src/moderation/subjects/quoted-post.ts +0 -80
  811. package/tests/post-moderation.test.ts +0 -46
  812. package/tests/profile-moderation.test.ts +0 -48
  813. package/tsconfig.tests.json +0 -10
  814. /package/src/client/types/{com/atproto/admin/deleteCommunicationTemplate.ts → tools/ozone/communication/deleteTemplate.ts} +0 -0
@@ -1,5 +1,10 @@
1
1
  import { TestNetworkNoAppView } from '@atproto/dev-env'
2
- import { BskyAgent, ComAtprotoRepoPutRecord, AppBskyActorProfile } from '..'
2
+ import {
3
+ BskyAgent,
4
+ ComAtprotoRepoPutRecord,
5
+ AppBskyActorProfile,
6
+ DEFAULT_LABEL_SETTINGS,
7
+ } from '..'
3
8
 
4
9
  describe('agent', () => {
5
10
  let network: TestNetworkNoAppView
@@ -28,6 +33,13 @@ describe('agent', () => {
28
33
  }
29
34
  }
30
35
 
36
+ it('clones correctly', () => {
37
+ const agent = new BskyAgent({ service: network.pds.url })
38
+ const agent2 = agent.clone()
39
+ expect(agent2 instanceof BskyAgent).toBeTruthy()
40
+ expect(agent.service).toEqual(agent2.service)
41
+ })
42
+
31
43
  it('upsertProfile correctly creates and updates profiles.', async () => {
32
44
  const agent = new BskyAgent({ service: network.pds.url })
33
45
 
@@ -218,15 +230,25 @@ describe('agent', () => {
218
230
  password: 'password',
219
231
  })
220
232
 
233
+ const DEFAULT_LABELERS = BskyAgent.appLabelers.map((did) => ({
234
+ did,
235
+ labels: {},
236
+ }))
237
+
221
238
  await expect(agent.getPreferences()).resolves.toStrictEqual({
222
239
  feeds: { pinned: undefined, saved: undefined },
223
- adultContentEnabled: false,
224
- contentLabels: {},
240
+ moderationPrefs: {
241
+ adultContentEnabled: false,
242
+ labels: DEFAULT_LABEL_SETTINGS,
243
+ labelers: DEFAULT_LABELERS,
244
+ mutedWords: [],
245
+ hiddenPosts: [],
246
+ },
225
247
  birthDate: undefined,
226
248
  feedViewPrefs: {
227
249
  home: {
228
250
  hideReplies: false,
229
- hideRepliesByUnfollowed: false,
251
+ hideRepliesByUnfollowed: true,
230
252
  hideRepliesByLikeCount: 0,
231
253
  hideReposts: false,
232
254
  hideQuotePosts: false,
@@ -239,20 +261,23 @@ describe('agent', () => {
239
261
  interests: {
240
262
  tags: [],
241
263
  },
242
- mutedWords: [],
243
- hiddenPosts: [],
244
264
  })
245
265
 
246
266
  await agent.setAdultContentEnabled(true)
247
267
  await expect(agent.getPreferences()).resolves.toStrictEqual({
248
268
  feeds: { pinned: undefined, saved: undefined },
249
- adultContentEnabled: true,
250
- contentLabels: {},
269
+ moderationPrefs: {
270
+ adultContentEnabled: true,
271
+ labels: DEFAULT_LABEL_SETTINGS,
272
+ labelers: DEFAULT_LABELERS,
273
+ mutedWords: [],
274
+ hiddenPosts: [],
275
+ },
251
276
  birthDate: undefined,
252
277
  feedViewPrefs: {
253
278
  home: {
254
279
  hideReplies: false,
255
- hideRepliesByUnfollowed: false,
280
+ hideRepliesByUnfollowed: true,
256
281
  hideRepliesByLikeCount: 0,
257
282
  hideReposts: false,
258
283
  hideQuotePosts: false,
@@ -265,20 +290,23 @@ describe('agent', () => {
265
290
  interests: {
266
291
  tags: [],
267
292
  },
268
- mutedWords: [],
269
- hiddenPosts: [],
270
293
  })
271
294
 
272
295
  await agent.setAdultContentEnabled(false)
273
296
  await expect(agent.getPreferences()).resolves.toStrictEqual({
274
297
  feeds: { pinned: undefined, saved: undefined },
275
- adultContentEnabled: false,
276
- contentLabels: {},
298
+ moderationPrefs: {
299
+ adultContentEnabled: false,
300
+ labels: DEFAULT_LABEL_SETTINGS,
301
+ labelers: DEFAULT_LABELERS,
302
+ mutedWords: [],
303
+ hiddenPosts: [],
304
+ },
277
305
  birthDate: undefined,
278
306
  feedViewPrefs: {
279
307
  home: {
280
308
  hideReplies: false,
281
- hideRepliesByUnfollowed: false,
309
+ hideRepliesByUnfollowed: true,
282
310
  hideRepliesByLikeCount: 0,
283
311
  hideReposts: false,
284
312
  hideQuotePosts: false,
@@ -291,22 +319,23 @@ describe('agent', () => {
291
319
  interests: {
292
320
  tags: [],
293
321
  },
294
- mutedWords: [],
295
- hiddenPosts: [],
296
322
  })
297
323
 
298
- await agent.setContentLabelPref('impersonation', 'warn')
324
+ await agent.setContentLabelPref('misinfo', 'hide')
299
325
  await expect(agent.getPreferences()).resolves.toStrictEqual({
300
326
  feeds: { pinned: undefined, saved: undefined },
301
- adultContentEnabled: false,
302
- contentLabels: {
303
- impersonation: 'warn',
327
+ moderationPrefs: {
328
+ adultContentEnabled: false,
329
+ labels: { ...DEFAULT_LABEL_SETTINGS, misinfo: 'hide' },
330
+ labelers: DEFAULT_LABELERS,
331
+ mutedWords: [],
332
+ hiddenPosts: [],
304
333
  },
305
334
  birthDate: undefined,
306
335
  feedViewPrefs: {
307
336
  home: {
308
337
  hideReplies: false,
309
- hideRepliesByUnfollowed: false,
338
+ hideRepliesByUnfollowed: true,
310
339
  hideRepliesByLikeCount: 0,
311
340
  hideReposts: false,
312
341
  hideQuotePosts: false,
@@ -319,24 +348,27 @@ describe('agent', () => {
319
348
  interests: {
320
349
  tags: [],
321
350
  },
322
- mutedWords: [],
323
- hiddenPosts: [],
324
351
  })
325
352
 
326
- await agent.setContentLabelPref('spam', 'show') // will convert to 'ignore'
327
- await agent.setContentLabelPref('impersonation', 'hide')
353
+ await agent.setContentLabelPref('spam', 'ignore')
328
354
  await expect(agent.getPreferences()).resolves.toStrictEqual({
329
355
  feeds: { pinned: undefined, saved: undefined },
330
- adultContentEnabled: false,
331
- contentLabels: {
332
- impersonation: 'hide',
333
- spam: 'ignore',
356
+ moderationPrefs: {
357
+ adultContentEnabled: false,
358
+ labels: {
359
+ ...DEFAULT_LABEL_SETTINGS,
360
+ misinfo: 'hide',
361
+ spam: 'ignore',
362
+ },
363
+ labelers: DEFAULT_LABELERS,
364
+ mutedWords: [],
365
+ hiddenPosts: [],
334
366
  },
335
367
  birthDate: undefined,
336
368
  feedViewPrefs: {
337
369
  home: {
338
370
  hideReplies: false,
339
- hideRepliesByUnfollowed: false,
371
+ hideRepliesByUnfollowed: true,
340
372
  hideRepliesByLikeCount: 0,
341
373
  hideReposts: false,
342
374
  hideQuotePosts: false,
@@ -349,8 +381,6 @@ describe('agent', () => {
349
381
  interests: {
350
382
  tags: [],
351
383
  },
352
- mutedWords: [],
353
- hiddenPosts: [],
354
384
  })
355
385
 
356
386
  await agent.addSavedFeed('at://bob.com/app.bsky.feed.generator/fake')
@@ -359,16 +389,22 @@ describe('agent', () => {
359
389
  pinned: [],
360
390
  saved: ['at://bob.com/app.bsky.feed.generator/fake'],
361
391
  },
362
- adultContentEnabled: false,
363
- contentLabels: {
364
- impersonation: 'hide',
365
- spam: 'ignore',
392
+ moderationPrefs: {
393
+ adultContentEnabled: false,
394
+ labels: {
395
+ ...DEFAULT_LABEL_SETTINGS,
396
+ misinfo: 'hide',
397
+ spam: 'ignore',
398
+ },
399
+ labelers: DEFAULT_LABELERS,
400
+ mutedWords: [],
401
+ hiddenPosts: [],
366
402
  },
367
403
  birthDate: undefined,
368
404
  feedViewPrefs: {
369
405
  home: {
370
406
  hideReplies: false,
371
- hideRepliesByUnfollowed: false,
407
+ hideRepliesByUnfollowed: true,
372
408
  hideRepliesByLikeCount: 0,
373
409
  hideReposts: false,
374
410
  hideQuotePosts: false,
@@ -381,8 +417,6 @@ describe('agent', () => {
381
417
  interests: {
382
418
  tags: [],
383
419
  },
384
- mutedWords: [],
385
- hiddenPosts: [],
386
420
  })
387
421
 
388
422
  await agent.addPinnedFeed('at://bob.com/app.bsky.feed.generator/fake')
@@ -391,16 +425,22 @@ describe('agent', () => {
391
425
  pinned: ['at://bob.com/app.bsky.feed.generator/fake'],
392
426
  saved: ['at://bob.com/app.bsky.feed.generator/fake'],
393
427
  },
394
- adultContentEnabled: false,
395
- contentLabels: {
396
- impersonation: 'hide',
397
- spam: 'ignore',
428
+ moderationPrefs: {
429
+ adultContentEnabled: false,
430
+ labels: {
431
+ ...DEFAULT_LABEL_SETTINGS,
432
+ misinfo: 'hide',
433
+ spam: 'ignore',
434
+ },
435
+ labelers: DEFAULT_LABELERS,
436
+ mutedWords: [],
437
+ hiddenPosts: [],
398
438
  },
399
439
  birthDate: undefined,
400
440
  feedViewPrefs: {
401
441
  home: {
402
442
  hideReplies: false,
403
- hideRepliesByUnfollowed: false,
443
+ hideRepliesByUnfollowed: true,
404
444
  hideRepliesByLikeCount: 0,
405
445
  hideReposts: false,
406
446
  hideQuotePosts: false,
@@ -413,8 +453,6 @@ describe('agent', () => {
413
453
  interests: {
414
454
  tags: [],
415
455
  },
416
- mutedWords: [],
417
- hiddenPosts: [],
418
456
  })
419
457
 
420
458
  await agent.removePinnedFeed('at://bob.com/app.bsky.feed.generator/fake')
@@ -423,16 +461,22 @@ describe('agent', () => {
423
461
  pinned: [],
424
462
  saved: ['at://bob.com/app.bsky.feed.generator/fake'],
425
463
  },
426
- adultContentEnabled: false,
427
- contentLabels: {
428
- impersonation: 'hide',
429
- spam: 'ignore',
464
+ moderationPrefs: {
465
+ adultContentEnabled: false,
466
+ labels: {
467
+ ...DEFAULT_LABEL_SETTINGS,
468
+ misinfo: 'hide',
469
+ spam: 'ignore',
470
+ },
471
+ labelers: DEFAULT_LABELERS,
472
+ mutedWords: [],
473
+ hiddenPosts: [],
430
474
  },
431
475
  birthDate: undefined,
432
476
  feedViewPrefs: {
433
477
  home: {
434
478
  hideReplies: false,
435
- hideRepliesByUnfollowed: false,
479
+ hideRepliesByUnfollowed: true,
436
480
  hideRepliesByLikeCount: 0,
437
481
  hideReposts: false,
438
482
  hideQuotePosts: false,
@@ -445,8 +489,6 @@ describe('agent', () => {
445
489
  interests: {
446
490
  tags: [],
447
491
  },
448
- mutedWords: [],
449
- hiddenPosts: [],
450
492
  })
451
493
 
452
494
  await agent.removeSavedFeed('at://bob.com/app.bsky.feed.generator/fake')
@@ -455,16 +497,22 @@ describe('agent', () => {
455
497
  pinned: [],
456
498
  saved: [],
457
499
  },
458
- adultContentEnabled: false,
459
- contentLabels: {
460
- impersonation: 'hide',
461
- spam: 'ignore',
500
+ moderationPrefs: {
501
+ adultContentEnabled: false,
502
+ labels: {
503
+ ...DEFAULT_LABEL_SETTINGS,
504
+ misinfo: 'hide',
505
+ spam: 'ignore',
506
+ },
507
+ labelers: DEFAULT_LABELERS,
508
+ mutedWords: [],
509
+ hiddenPosts: [],
462
510
  },
463
511
  birthDate: undefined,
464
512
  feedViewPrefs: {
465
513
  home: {
466
514
  hideReplies: false,
467
- hideRepliesByUnfollowed: false,
515
+ hideRepliesByUnfollowed: true,
468
516
  hideRepliesByLikeCount: 0,
469
517
  hideReposts: false,
470
518
  hideQuotePosts: false,
@@ -477,8 +525,6 @@ describe('agent', () => {
477
525
  interests: {
478
526
  tags: [],
479
527
  },
480
- mutedWords: [],
481
- hiddenPosts: [],
482
528
  })
483
529
 
484
530
  await agent.addPinnedFeed('at://bob.com/app.bsky.feed.generator/fake')
@@ -487,16 +533,22 @@ describe('agent', () => {
487
533
  pinned: ['at://bob.com/app.bsky.feed.generator/fake'],
488
534
  saved: ['at://bob.com/app.bsky.feed.generator/fake'],
489
535
  },
490
- adultContentEnabled: false,
491
- contentLabels: {
492
- impersonation: 'hide',
493
- spam: 'ignore',
536
+ moderationPrefs: {
537
+ adultContentEnabled: false,
538
+ labels: {
539
+ ...DEFAULT_LABEL_SETTINGS,
540
+ misinfo: 'hide',
541
+ spam: 'ignore',
542
+ },
543
+ labelers: DEFAULT_LABELERS,
544
+ mutedWords: [],
545
+ hiddenPosts: [],
494
546
  },
495
547
  birthDate: undefined,
496
548
  feedViewPrefs: {
497
549
  home: {
498
550
  hideReplies: false,
499
- hideRepliesByUnfollowed: false,
551
+ hideRepliesByUnfollowed: true,
500
552
  hideRepliesByLikeCount: 0,
501
553
  hideReposts: false,
502
554
  hideQuotePosts: false,
@@ -509,8 +561,6 @@ describe('agent', () => {
509
561
  interests: {
510
562
  tags: [],
511
563
  },
512
- mutedWords: [],
513
- hiddenPosts: [],
514
564
  })
515
565
 
516
566
  await agent.addPinnedFeed('at://bob.com/app.bsky.feed.generator/fake2')
@@ -525,16 +575,22 @@ describe('agent', () => {
525
575
  'at://bob.com/app.bsky.feed.generator/fake2',
526
576
  ],
527
577
  },
528
- adultContentEnabled: false,
529
- contentLabels: {
530
- impersonation: 'hide',
531
- spam: 'ignore',
578
+ moderationPrefs: {
579
+ adultContentEnabled: false,
580
+ labels: {
581
+ ...DEFAULT_LABEL_SETTINGS,
582
+ misinfo: 'hide',
583
+ spam: 'ignore',
584
+ },
585
+ labelers: DEFAULT_LABELERS,
586
+ mutedWords: [],
587
+ hiddenPosts: [],
532
588
  },
533
589
  birthDate: undefined,
534
590
  feedViewPrefs: {
535
591
  home: {
536
592
  hideReplies: false,
537
- hideRepliesByUnfollowed: false,
593
+ hideRepliesByUnfollowed: true,
538
594
  hideRepliesByLikeCount: 0,
539
595
  hideReposts: false,
540
596
  hideQuotePosts: false,
@@ -547,8 +603,6 @@ describe('agent', () => {
547
603
  interests: {
548
604
  tags: [],
549
605
  },
550
- mutedWords: [],
551
- hiddenPosts: [],
552
606
  })
553
607
 
554
608
  await agent.removeSavedFeed('at://bob.com/app.bsky.feed.generator/fake')
@@ -557,16 +611,22 @@ describe('agent', () => {
557
611
  pinned: ['at://bob.com/app.bsky.feed.generator/fake2'],
558
612
  saved: ['at://bob.com/app.bsky.feed.generator/fake2'],
559
613
  },
560
- adultContentEnabled: false,
561
- contentLabels: {
562
- impersonation: 'hide',
563
- spam: 'ignore',
614
+ moderationPrefs: {
615
+ adultContentEnabled: false,
616
+ labels: {
617
+ ...DEFAULT_LABEL_SETTINGS,
618
+ misinfo: 'hide',
619
+ spam: 'ignore',
620
+ },
621
+ labelers: DEFAULT_LABELERS,
622
+ mutedWords: [],
623
+ hiddenPosts: [],
564
624
  },
565
625
  birthDate: undefined,
566
626
  feedViewPrefs: {
567
627
  home: {
568
628
  hideReplies: false,
569
- hideRepliesByUnfollowed: false,
629
+ hideRepliesByUnfollowed: true,
570
630
  hideRepliesByLikeCount: 0,
571
631
  hideReposts: false,
572
632
  hideQuotePosts: false,
@@ -579,8 +639,6 @@ describe('agent', () => {
579
639
  interests: {
580
640
  tags: [],
581
641
  },
582
- mutedWords: [],
583
- hiddenPosts: [],
584
642
  })
585
643
 
586
644
  await agent.setPersonalDetails({ birthDate: '2023-09-11T18:05:42.556Z' })
@@ -589,16 +647,22 @@ describe('agent', () => {
589
647
  pinned: ['at://bob.com/app.bsky.feed.generator/fake2'],
590
648
  saved: ['at://bob.com/app.bsky.feed.generator/fake2'],
591
649
  },
592
- adultContentEnabled: false,
593
- contentLabels: {
594
- impersonation: 'hide',
595
- spam: 'ignore',
650
+ moderationPrefs: {
651
+ adultContentEnabled: false,
652
+ labels: {
653
+ ...DEFAULT_LABEL_SETTINGS,
654
+ misinfo: 'hide',
655
+ spam: 'ignore',
656
+ },
657
+ labelers: DEFAULT_LABELERS,
658
+ mutedWords: [],
659
+ hiddenPosts: [],
596
660
  },
597
661
  birthDate: new Date('2023-09-11T18:05:42.556Z'),
598
662
  feedViewPrefs: {
599
663
  home: {
600
664
  hideReplies: false,
601
- hideRepliesByUnfollowed: false,
665
+ hideRepliesByUnfollowed: true,
602
666
  hideRepliesByLikeCount: 0,
603
667
  hideReposts: false,
604
668
  hideQuotePosts: false,
@@ -611,8 +675,6 @@ describe('agent', () => {
611
675
  interests: {
612
676
  tags: [],
613
677
  },
614
- mutedWords: [],
615
- hiddenPosts: [],
616
678
  })
617
679
 
618
680
  await agent.setFeedViewPrefs('home', { hideReplies: true })
@@ -621,16 +683,22 @@ describe('agent', () => {
621
683
  pinned: ['at://bob.com/app.bsky.feed.generator/fake2'],
622
684
  saved: ['at://bob.com/app.bsky.feed.generator/fake2'],
623
685
  },
624
- adultContentEnabled: false,
625
- contentLabels: {
626
- impersonation: 'hide',
627
- spam: 'ignore',
686
+ moderationPrefs: {
687
+ adultContentEnabled: false,
688
+ labels: {
689
+ ...DEFAULT_LABEL_SETTINGS,
690
+ misinfo: 'hide',
691
+ spam: 'ignore',
692
+ },
693
+ labelers: DEFAULT_LABELERS,
694
+ mutedWords: [],
695
+ hiddenPosts: [],
628
696
  },
629
697
  birthDate: new Date('2023-09-11T18:05:42.556Z'),
630
698
  feedViewPrefs: {
631
699
  home: {
632
700
  hideReplies: true,
633
- hideRepliesByUnfollowed: false,
701
+ hideRepliesByUnfollowed: true,
634
702
  hideRepliesByLikeCount: 0,
635
703
  hideReposts: false,
636
704
  hideQuotePosts: false,
@@ -643,8 +711,6 @@ describe('agent', () => {
643
711
  interests: {
644
712
  tags: [],
645
713
  },
646
- mutedWords: [],
647
- hiddenPosts: [],
648
714
  })
649
715
 
650
716
  await agent.setFeedViewPrefs('home', { hideReplies: false })
@@ -653,16 +719,22 @@ describe('agent', () => {
653
719
  pinned: ['at://bob.com/app.bsky.feed.generator/fake2'],
654
720
  saved: ['at://bob.com/app.bsky.feed.generator/fake2'],
655
721
  },
656
- adultContentEnabled: false,
657
- contentLabels: {
658
- impersonation: 'hide',
659
- spam: 'ignore',
722
+ moderationPrefs: {
723
+ adultContentEnabled: false,
724
+ labels: {
725
+ ...DEFAULT_LABEL_SETTINGS,
726
+ misinfo: 'hide',
727
+ spam: 'ignore',
728
+ },
729
+ labelers: DEFAULT_LABELERS,
730
+ mutedWords: [],
731
+ hiddenPosts: [],
660
732
  },
661
733
  birthDate: new Date('2023-09-11T18:05:42.556Z'),
662
734
  feedViewPrefs: {
663
735
  home: {
664
736
  hideReplies: false,
665
- hideRepliesByUnfollowed: false,
737
+ hideRepliesByUnfollowed: true,
666
738
  hideRepliesByLikeCount: 0,
667
739
  hideReposts: false,
668
740
  hideQuotePosts: false,
@@ -675,8 +747,6 @@ describe('agent', () => {
675
747
  interests: {
676
748
  tags: [],
677
749
  },
678
- mutedWords: [],
679
- hiddenPosts: [],
680
750
  })
681
751
 
682
752
  await agent.setFeedViewPrefs('other', { hideReplies: true })
@@ -685,23 +755,29 @@ describe('agent', () => {
685
755
  pinned: ['at://bob.com/app.bsky.feed.generator/fake2'],
686
756
  saved: ['at://bob.com/app.bsky.feed.generator/fake2'],
687
757
  },
688
- adultContentEnabled: false,
689
- contentLabels: {
690
- impersonation: 'hide',
691
- spam: 'ignore',
758
+ moderationPrefs: {
759
+ adultContentEnabled: false,
760
+ labels: {
761
+ ...DEFAULT_LABEL_SETTINGS,
762
+ misinfo: 'hide',
763
+ spam: 'ignore',
764
+ },
765
+ labelers: DEFAULT_LABELERS,
766
+ mutedWords: [],
767
+ hiddenPosts: [],
692
768
  },
693
769
  birthDate: new Date('2023-09-11T18:05:42.556Z'),
694
770
  feedViewPrefs: {
695
771
  home: {
696
772
  hideReplies: false,
697
- hideRepliesByUnfollowed: false,
773
+ hideRepliesByUnfollowed: true,
698
774
  hideRepliesByLikeCount: 0,
699
775
  hideReposts: false,
700
776
  hideQuotePosts: false,
701
777
  },
702
778
  other: {
703
779
  hideReplies: true,
704
- hideRepliesByUnfollowed: false,
780
+ hideRepliesByUnfollowed: true,
705
781
  hideRepliesByLikeCount: 0,
706
782
  hideReposts: false,
707
783
  hideQuotePosts: false,
@@ -714,8 +790,6 @@ describe('agent', () => {
714
790
  interests: {
715
791
  tags: [],
716
792
  },
717
- mutedWords: [],
718
- hiddenPosts: [],
719
793
  })
720
794
 
721
795
  await agent.setThreadViewPrefs({ sort: 'random' })
@@ -724,23 +798,29 @@ describe('agent', () => {
724
798
  pinned: ['at://bob.com/app.bsky.feed.generator/fake2'],
725
799
  saved: ['at://bob.com/app.bsky.feed.generator/fake2'],
726
800
  },
727
- adultContentEnabled: false,
728
- contentLabels: {
729
- impersonation: 'hide',
730
- spam: 'ignore',
801
+ moderationPrefs: {
802
+ adultContentEnabled: false,
803
+ labels: {
804
+ ...DEFAULT_LABEL_SETTINGS,
805
+ misinfo: 'hide',
806
+ spam: 'ignore',
807
+ },
808
+ labelers: DEFAULT_LABELERS,
809
+ mutedWords: [],
810
+ hiddenPosts: [],
731
811
  },
732
812
  birthDate: new Date('2023-09-11T18:05:42.556Z'),
733
813
  feedViewPrefs: {
734
814
  home: {
735
815
  hideReplies: false,
736
- hideRepliesByUnfollowed: false,
816
+ hideRepliesByUnfollowed: true,
737
817
  hideRepliesByLikeCount: 0,
738
818
  hideReposts: false,
739
819
  hideQuotePosts: false,
740
820
  },
741
821
  other: {
742
822
  hideReplies: true,
743
- hideRepliesByUnfollowed: false,
823
+ hideRepliesByUnfollowed: true,
744
824
  hideRepliesByLikeCount: 0,
745
825
  hideReposts: false,
746
826
  hideQuotePosts: false,
@@ -753,8 +833,6 @@ describe('agent', () => {
753
833
  interests: {
754
834
  tags: [],
755
835
  },
756
- mutedWords: [],
757
- hiddenPosts: [],
758
836
  })
759
837
 
760
838
  await agent.setThreadViewPrefs({ sort: 'oldest' })
@@ -763,23 +841,29 @@ describe('agent', () => {
763
841
  pinned: ['at://bob.com/app.bsky.feed.generator/fake2'],
764
842
  saved: ['at://bob.com/app.bsky.feed.generator/fake2'],
765
843
  },
766
- adultContentEnabled: false,
767
- contentLabels: {
768
- impersonation: 'hide',
769
- spam: 'ignore',
844
+ moderationPrefs: {
845
+ adultContentEnabled: false,
846
+ labels: {
847
+ ...DEFAULT_LABEL_SETTINGS,
848
+ misinfo: 'hide',
849
+ spam: 'ignore',
850
+ },
851
+ labelers: DEFAULT_LABELERS,
852
+ mutedWords: [],
853
+ hiddenPosts: [],
770
854
  },
771
855
  birthDate: new Date('2023-09-11T18:05:42.556Z'),
772
856
  feedViewPrefs: {
773
857
  home: {
774
858
  hideReplies: false,
775
- hideRepliesByUnfollowed: false,
859
+ hideRepliesByUnfollowed: true,
776
860
  hideRepliesByLikeCount: 0,
777
861
  hideReposts: false,
778
862
  hideQuotePosts: false,
779
863
  },
780
864
  other: {
781
865
  hideReplies: true,
782
- hideRepliesByUnfollowed: false,
866
+ hideRepliesByUnfollowed: true,
783
867
  hideRepliesByLikeCount: 0,
784
868
  hideReposts: false,
785
869
  hideQuotePosts: false,
@@ -792,8 +876,6 @@ describe('agent', () => {
792
876
  interests: {
793
877
  tags: [],
794
878
  },
795
- mutedWords: [],
796
- hiddenPosts: [],
797
879
  })
798
880
 
799
881
  await agent.setInterestsPref({ tags: ['foo', 'bar'] })
@@ -802,23 +884,29 @@ describe('agent', () => {
802
884
  pinned: ['at://bob.com/app.bsky.feed.generator/fake2'],
803
885
  saved: ['at://bob.com/app.bsky.feed.generator/fake2'],
804
886
  },
805
- adultContentEnabled: false,
806
- contentLabels: {
807
- impersonation: 'hide',
808
- spam: 'ignore',
887
+ moderationPrefs: {
888
+ adultContentEnabled: false,
889
+ labels: {
890
+ ...DEFAULT_LABEL_SETTINGS,
891
+ misinfo: 'hide',
892
+ spam: 'ignore',
893
+ },
894
+ labelers: DEFAULT_LABELERS,
895
+ mutedWords: [],
896
+ hiddenPosts: [],
809
897
  },
810
898
  birthDate: new Date('2023-09-11T18:05:42.556Z'),
811
899
  feedViewPrefs: {
812
900
  home: {
813
901
  hideReplies: false,
814
- hideRepliesByUnfollowed: false,
902
+ hideRepliesByUnfollowed: true,
815
903
  hideRepliesByLikeCount: 0,
816
904
  hideReposts: false,
817
905
  hideQuotePosts: false,
818
906
  },
819
907
  other: {
820
908
  hideReplies: true,
821
- hideRepliesByUnfollowed: false,
909
+ hideRepliesByUnfollowed: true,
822
910
  hideRepliesByLikeCount: 0,
823
911
  hideReposts: false,
824
912
  hideQuotePosts: false,
@@ -831,8 +919,6 @@ describe('agent', () => {
831
919
  interests: {
832
920
  tags: ['foo', 'bar'],
833
921
  },
834
- mutedWords: [],
835
- hiddenPosts: [],
836
922
  })
837
923
  })
838
924
 
@@ -849,24 +935,43 @@ describe('agent', () => {
849
935
  preferences: [
850
936
  {
851
937
  $type: 'app.bsky.actor.defs#contentLabelPref',
852
- label: 'nsfw',
938
+ label: 'porn',
853
939
  visibility: 'show',
854
940
  },
855
941
  {
856
942
  $type: 'app.bsky.actor.defs#contentLabelPref',
857
- label: 'nsfw',
943
+ label: 'porn',
858
944
  visibility: 'hide',
859
945
  },
860
946
  {
861
947
  $type: 'app.bsky.actor.defs#contentLabelPref',
862
- label: 'nsfw',
948
+ label: 'porn',
863
949
  visibility: 'show',
864
950
  },
865
951
  {
866
952
  $type: 'app.bsky.actor.defs#contentLabelPref',
867
- label: 'nsfw',
953
+ label: 'porn',
868
954
  visibility: 'warn',
869
955
  },
956
+ {
957
+ $type: 'app.bsky.actor.defs#labelersPref',
958
+ labelers: [
959
+ {
960
+ did: 'did:plc:first-labeler',
961
+ },
962
+ ],
963
+ },
964
+ {
965
+ $type: 'app.bsky.actor.defs#labelersPref',
966
+ labelers: [
967
+ {
968
+ did: 'did:plc:first-labeler',
969
+ },
970
+ {
971
+ did: 'did:plc:other',
972
+ },
973
+ ],
974
+ },
870
975
  {
871
976
  $type: 'app.bsky.actor.defs#adultContentPref',
872
977
  enabled: true,
@@ -907,7 +1012,7 @@ describe('agent', () => {
907
1012
  $type: 'app.bsky.actor.defs#feedViewPref',
908
1013
  feed: 'home',
909
1014
  hideReplies: false,
910
- hideRepliesByUnfollowed: false,
1015
+ hideRepliesByUnfollowed: true,
911
1016
  hideRepliesByLikeCount: 0,
912
1017
  hideReposts: false,
913
1018
  hideQuotePosts: false,
@@ -916,7 +1021,7 @@ describe('agent', () => {
916
1021
  $type: 'app.bsky.actor.defs#feedViewPref',
917
1022
  feed: 'home',
918
1023
  hideReplies: true,
919
- hideRepliesByUnfollowed: true,
1024
+ hideRepliesByUnfollowed: false,
920
1025
  hideRepliesByLikeCount: 10,
921
1026
  hideReposts: true,
922
1027
  hideQuotePosts: true,
@@ -938,15 +1043,31 @@ describe('agent', () => {
938
1043
  pinned: [],
939
1044
  saved: [],
940
1045
  },
941
- adultContentEnabled: true,
942
- contentLabels: {
943
- nsfw: 'warn',
1046
+ moderationPrefs: {
1047
+ adultContentEnabled: true,
1048
+ labels: {
1049
+ ...DEFAULT_LABEL_SETTINGS,
1050
+ porn: 'warn',
1051
+ },
1052
+ labelers: [
1053
+ ...BskyAgent.appLabelers.map((did) => ({ did, labels: {} })),
1054
+ {
1055
+ did: 'did:plc:first-labeler',
1056
+ labels: {},
1057
+ },
1058
+ {
1059
+ did: 'did:plc:other',
1060
+ labels: {},
1061
+ },
1062
+ ],
1063
+ mutedWords: [],
1064
+ hiddenPosts: [],
944
1065
  },
945
1066
  birthDate: new Date('2021-09-11T18:05:42.556Z'),
946
1067
  feedViewPrefs: {
947
1068
  home: {
948
1069
  hideReplies: true,
949
- hideRepliesByUnfollowed: true,
1070
+ hideRepliesByUnfollowed: false,
950
1071
  hideRepliesByLikeCount: 10,
951
1072
  hideReposts: true,
952
1073
  hideQuotePosts: true,
@@ -959,8 +1080,6 @@ describe('agent', () => {
959
1080
  interests: {
960
1081
  tags: [],
961
1082
  },
962
- mutedWords: [],
963
- hiddenPosts: [],
964
1083
  })
965
1084
 
966
1085
  await agent.setAdultContentEnabled(false)
@@ -969,15 +1088,31 @@ describe('agent', () => {
969
1088
  pinned: [],
970
1089
  saved: [],
971
1090
  },
972
- adultContentEnabled: false,
973
- contentLabels: {
974
- nsfw: 'warn',
1091
+ moderationPrefs: {
1092
+ adultContentEnabled: false,
1093
+ labels: {
1094
+ ...DEFAULT_LABEL_SETTINGS,
1095
+ porn: 'warn',
1096
+ },
1097
+ labelers: [
1098
+ ...BskyAgent.appLabelers.map((did) => ({ did, labels: {} })),
1099
+ {
1100
+ did: 'did:plc:first-labeler',
1101
+ labels: {},
1102
+ },
1103
+ {
1104
+ did: 'did:plc:other',
1105
+ labels: {},
1106
+ },
1107
+ ],
1108
+ mutedWords: [],
1109
+ hiddenPosts: [],
975
1110
  },
976
1111
  birthDate: new Date('2021-09-11T18:05:42.556Z'),
977
1112
  feedViewPrefs: {
978
1113
  home: {
979
1114
  hideReplies: true,
980
- hideRepliesByUnfollowed: true,
1115
+ hideRepliesByUnfollowed: false,
981
1116
  hideRepliesByLikeCount: 10,
982
1117
  hideReposts: true,
983
1118
  hideQuotePosts: true,
@@ -990,25 +1125,82 @@ describe('agent', () => {
990
1125
  interests: {
991
1126
  tags: [],
992
1127
  },
993
- mutedWords: [],
994
- hiddenPosts: [],
995
1128
  })
996
1129
 
997
- await agent.setContentLabelPref('nsfw', 'hide')
1130
+ await agent.setContentLabelPref('porn', 'ignore')
998
1131
  await expect(agent.getPreferences()).resolves.toStrictEqual({
999
1132
  feeds: {
1000
1133
  pinned: [],
1001
1134
  saved: [],
1002
1135
  },
1003
- adultContentEnabled: false,
1004
- contentLabels: {
1005
- nsfw: 'hide',
1136
+ moderationPrefs: {
1137
+ adultContentEnabled: false,
1138
+ labels: {
1139
+ ...DEFAULT_LABEL_SETTINGS,
1140
+ nsfw: 'ignore',
1141
+ porn: 'ignore',
1142
+ },
1143
+ labelers: [
1144
+ ...BskyAgent.appLabelers.map((did) => ({ did, labels: {} })),
1145
+ {
1146
+ did: 'did:plc:first-labeler',
1147
+ labels: {},
1148
+ },
1149
+ {
1150
+ did: 'did:plc:other',
1151
+ labels: {},
1152
+ },
1153
+ ],
1154
+ mutedWords: [],
1155
+ hiddenPosts: [],
1006
1156
  },
1007
1157
  birthDate: new Date('2021-09-11T18:05:42.556Z'),
1008
1158
  feedViewPrefs: {
1009
1159
  home: {
1010
1160
  hideReplies: true,
1011
- hideRepliesByUnfollowed: true,
1161
+ hideRepliesByUnfollowed: false,
1162
+ hideRepliesByLikeCount: 10,
1163
+ hideReposts: true,
1164
+ hideQuotePosts: true,
1165
+ },
1166
+ },
1167
+ threadViewPrefs: {
1168
+ sort: 'newest',
1169
+ prioritizeFollowedUsers: false,
1170
+ },
1171
+ interests: {
1172
+ tags: [],
1173
+ },
1174
+ })
1175
+
1176
+ await agent.removeLabeler('did:plc:other')
1177
+ await expect(agent.getPreferences()).resolves.toStrictEqual({
1178
+ feeds: {
1179
+ pinned: [],
1180
+ saved: [],
1181
+ },
1182
+ moderationPrefs: {
1183
+ adultContentEnabled: false,
1184
+ labels: {
1185
+ ...DEFAULT_LABEL_SETTINGS,
1186
+ nsfw: 'ignore',
1187
+ porn: 'ignore',
1188
+ },
1189
+ labelers: [
1190
+ ...BskyAgent.appLabelers.map((did) => ({ did, labels: {} })),
1191
+ {
1192
+ did: 'did:plc:first-labeler',
1193
+ labels: {},
1194
+ },
1195
+ ],
1196
+ mutedWords: [],
1197
+ hiddenPosts: [],
1198
+ },
1199
+ birthDate: new Date('2021-09-11T18:05:42.556Z'),
1200
+ feedViewPrefs: {
1201
+ home: {
1202
+ hideReplies: true,
1203
+ hideRepliesByUnfollowed: false,
1012
1204
  hideRepliesByLikeCount: 10,
1013
1205
  hideReposts: true,
1014
1206
  hideQuotePosts: true,
@@ -1021,8 +1213,6 @@ describe('agent', () => {
1021
1213
  interests: {
1022
1214
  tags: [],
1023
1215
  },
1024
- mutedWords: [],
1025
- hiddenPosts: [],
1026
1216
  })
1027
1217
 
1028
1218
  await agent.addPinnedFeed('at://bob.com/app.bsky.feed.generator/fake')
@@ -1031,15 +1221,28 @@ describe('agent', () => {
1031
1221
  pinned: ['at://bob.com/app.bsky.feed.generator/fake'],
1032
1222
  saved: ['at://bob.com/app.bsky.feed.generator/fake'],
1033
1223
  },
1034
- adultContentEnabled: false,
1035
- contentLabels: {
1036
- nsfw: 'hide',
1224
+ moderationPrefs: {
1225
+ adultContentEnabled: false,
1226
+ labels: {
1227
+ ...DEFAULT_LABEL_SETTINGS,
1228
+ nsfw: 'ignore',
1229
+ porn: 'ignore',
1230
+ },
1231
+ labelers: [
1232
+ ...BskyAgent.appLabelers.map((did) => ({ did, labels: {} })),
1233
+ {
1234
+ did: 'did:plc:first-labeler',
1235
+ labels: {},
1236
+ },
1237
+ ],
1238
+ mutedWords: [],
1239
+ hiddenPosts: [],
1037
1240
  },
1038
1241
  birthDate: new Date('2021-09-11T18:05:42.556Z'),
1039
1242
  feedViewPrefs: {
1040
1243
  home: {
1041
1244
  hideReplies: true,
1042
- hideRepliesByUnfollowed: true,
1245
+ hideRepliesByUnfollowed: false,
1043
1246
  hideRepliesByLikeCount: 10,
1044
1247
  hideReposts: true,
1045
1248
  hideQuotePosts: true,
@@ -1052,8 +1255,6 @@ describe('agent', () => {
1052
1255
  interests: {
1053
1256
  tags: [],
1054
1257
  },
1055
- mutedWords: [],
1056
- hiddenPosts: [],
1057
1258
  })
1058
1259
 
1059
1260
  await agent.setPersonalDetails({ birthDate: '2023-09-11T18:05:42.556Z' })
@@ -1062,15 +1263,28 @@ describe('agent', () => {
1062
1263
  pinned: ['at://bob.com/app.bsky.feed.generator/fake'],
1063
1264
  saved: ['at://bob.com/app.bsky.feed.generator/fake'],
1064
1265
  },
1065
- adultContentEnabled: false,
1066
- contentLabels: {
1067
- nsfw: 'hide',
1266
+ moderationPrefs: {
1267
+ adultContentEnabled: false,
1268
+ labels: {
1269
+ ...DEFAULT_LABEL_SETTINGS,
1270
+ nsfw: 'ignore',
1271
+ porn: 'ignore',
1272
+ },
1273
+ labelers: [
1274
+ ...BskyAgent.appLabelers.map((did) => ({ did, labels: {} })),
1275
+ {
1276
+ did: 'did:plc:first-labeler',
1277
+ labels: {},
1278
+ },
1279
+ ],
1280
+ mutedWords: [],
1281
+ hiddenPosts: [],
1068
1282
  },
1069
1283
  birthDate: new Date('2023-09-11T18:05:42.556Z'),
1070
1284
  feedViewPrefs: {
1071
1285
  home: {
1072
1286
  hideReplies: true,
1073
- hideRepliesByUnfollowed: true,
1287
+ hideRepliesByUnfollowed: false,
1074
1288
  hideRepliesByLikeCount: 10,
1075
1289
  hideReposts: true,
1076
1290
  hideQuotePosts: true,
@@ -1083,13 +1297,11 @@ describe('agent', () => {
1083
1297
  interests: {
1084
1298
  tags: [],
1085
1299
  },
1086
- mutedWords: [],
1087
- hiddenPosts: [],
1088
1300
  })
1089
1301
 
1090
1302
  await agent.setFeedViewPrefs('home', {
1091
1303
  hideReplies: false,
1092
- hideRepliesByUnfollowed: false,
1304
+ hideRepliesByUnfollowed: true,
1093
1305
  hideRepliesByLikeCount: 0,
1094
1306
  hideReposts: false,
1095
1307
  hideQuotePosts: false,
@@ -1104,15 +1316,28 @@ describe('agent', () => {
1104
1316
  pinned: ['at://bob.com/app.bsky.feed.generator/fake'],
1105
1317
  saved: ['at://bob.com/app.bsky.feed.generator/fake'],
1106
1318
  },
1107
- adultContentEnabled: false,
1108
- contentLabels: {
1109
- nsfw: 'hide',
1319
+ moderationPrefs: {
1320
+ adultContentEnabled: false,
1321
+ labels: {
1322
+ ...DEFAULT_LABEL_SETTINGS,
1323
+ nsfw: 'ignore',
1324
+ porn: 'ignore',
1325
+ },
1326
+ labelers: [
1327
+ ...BskyAgent.appLabelers.map((did) => ({ did, labels: {} })),
1328
+ {
1329
+ did: 'did:plc:first-labeler',
1330
+ labels: {},
1331
+ },
1332
+ ],
1333
+ mutedWords: [],
1334
+ hiddenPosts: [],
1110
1335
  },
1111
1336
  birthDate: new Date('2023-09-11T18:05:42.556Z'),
1112
1337
  feedViewPrefs: {
1113
1338
  home: {
1114
1339
  hideReplies: false,
1115
- hideRepliesByUnfollowed: false,
1340
+ hideRepliesByUnfollowed: true,
1116
1341
  hideRepliesByLikeCount: 0,
1117
1342
  hideReposts: false,
1118
1343
  hideQuotePosts: false,
@@ -1125,8 +1350,6 @@ describe('agent', () => {
1125
1350
  interests: {
1126
1351
  tags: [],
1127
1352
  },
1128
- mutedWords: [],
1129
- hiddenPosts: [],
1130
1353
  })
1131
1354
 
1132
1355
  const res = await agent.app.bsky.actor.getPreferences()
@@ -1136,10 +1359,23 @@ describe('agent', () => {
1136
1359
  $type: 'app.bsky.actor.defs#adultContentPref',
1137
1360
  enabled: false,
1138
1361
  },
1362
+ {
1363
+ $type: 'app.bsky.actor.defs#contentLabelPref',
1364
+ label: 'porn',
1365
+ visibility: 'ignore',
1366
+ },
1139
1367
  {
1140
1368
  $type: 'app.bsky.actor.defs#contentLabelPref',
1141
1369
  label: 'nsfw',
1142
- visibility: 'hide',
1370
+ visibility: 'ignore',
1371
+ },
1372
+ {
1373
+ $type: 'app.bsky.actor.defs#labelersPref',
1374
+ labelers: [
1375
+ {
1376
+ did: 'did:plc:first-labeler',
1377
+ },
1378
+ ],
1143
1379
  },
1144
1380
  {
1145
1381
  $type: 'app.bsky.actor.defs#savedFeedsPref',
@@ -1155,7 +1391,7 @@ describe('agent', () => {
1155
1391
  $type: 'app.bsky.actor.defs#feedViewPref',
1156
1392
  feed: 'home',
1157
1393
  hideReplies: false,
1158
- hideRepliesByUnfollowed: false,
1394
+ hideRepliesByUnfollowed: true,
1159
1395
  hideRepliesByLikeCount: 0,
1160
1396
  hideReposts: false,
1161
1397
  hideQuotePosts: false,
@@ -1193,7 +1429,7 @@ describe('agent', () => {
1193
1429
  await agent.upsertMutedWords(mutedWords)
1194
1430
  await agent.upsertMutedWords(mutedWords) // double
1195
1431
  await expect(agent.getPreferences()).resolves.toHaveProperty(
1196
- 'mutedWords',
1432
+ 'moderationPrefs.mutedWords',
1197
1433
  mutedWords,
1198
1434
  )
1199
1435
  })
@@ -1202,13 +1438,18 @@ describe('agent', () => {
1202
1438
  await agent.upsertMutedWords([
1203
1439
  { value: 'hashtag', targets: ['content'] },
1204
1440
  ])
1441
+ // is sanitized to `hashtag`
1205
1442
  await agent.upsertMutedWords([{ value: '#hashtag', targets: ['tag'] }])
1206
- const { mutedWords } = await agent.getPreferences()
1443
+
1444
+ const { mutedWords } = (await agent.getPreferences()).moderationPrefs
1445
+
1207
1446
  expect(mutedWords.find((m) => m.value === '#hashtag')).toBeFalsy()
1447
+ // merged with existing
1208
1448
  expect(mutedWords.find((m) => m.value === 'hashtag')).toStrictEqual({
1209
1449
  value: 'hashtag',
1210
1450
  targets: ['content', 'tag'],
1211
1451
  })
1452
+ // only one added
1212
1453
  expect(mutedWords.filter((m) => m.value === 'hashtag').length).toBe(1)
1213
1454
  })
1214
1455
 
@@ -1223,7 +1464,7 @@ describe('agent', () => {
1223
1464
  })
1224
1465
  await agent.updateMutedWord({ value: 'tag_then_none', targets: [] })
1225
1466
  await agent.updateMutedWord({ value: 'no_exist', targets: ['tag'] })
1226
- const { mutedWords } = await agent.getPreferences()
1467
+ const { mutedWords } = (await agent.getPreferences()).moderationPrefs
1227
1468
 
1228
1469
  expect(
1229
1470
  mutedWords.find((m) => m.value === 'tag_then_content'),
@@ -1237,15 +1478,21 @@ describe('agent', () => {
1237
1478
  expect(mutedWords.find((m) => m.value === 'no_exist')).toBeFalsy()
1238
1479
  })
1239
1480
 
1240
- it('updateMutedWord with #', async () => {
1481
+ it('updateMutedWord with #, does not update', async () => {
1482
+ await agent.upsertMutedWords([
1483
+ {
1484
+ value: '#just_a_tag',
1485
+ targets: ['tag'],
1486
+ },
1487
+ ])
1241
1488
  await agent.updateMutedWord({
1242
- value: 'hashtag',
1489
+ value: '#just_a_tag',
1243
1490
  targets: ['tag', 'content'],
1244
1491
  })
1245
- const { mutedWords } = await agent.getPreferences()
1246
- expect(mutedWords.find((m) => m.value === 'hashtag')).toStrictEqual({
1247
- value: 'hashtag',
1248
- targets: ['tag', 'content'],
1492
+ const { mutedWords } = (await agent.getPreferences()).moderationPrefs
1493
+ expect(mutedWords.find((m) => m.value === 'just_a_tag')).toStrictEqual({
1494
+ value: 'just_a_tag',
1495
+ targets: ['tag'],
1249
1496
  })
1250
1497
  })
1251
1498
 
@@ -1253,7 +1500,7 @@ describe('agent', () => {
1253
1500
  await agent.removeMutedWord({ value: 'tag_then_content', targets: [] })
1254
1501
  await agent.removeMutedWord({ value: 'tag_then_both', targets: [] })
1255
1502
  await agent.removeMutedWord({ value: 'tag_then_none', targets: [] })
1256
- const { mutedWords } = await agent.getPreferences()
1503
+ const { mutedWords } = (await agent.getPreferences()).moderationPrefs
1257
1504
 
1258
1505
  expect(
1259
1506
  mutedWords.find((m) => m.value === 'tag_then_content'),
@@ -1262,11 +1509,124 @@ describe('agent', () => {
1262
1509
  expect(mutedWords.find((m) => m.value === 'tag_then_none')).toBeFalsy()
1263
1510
  })
1264
1511
 
1265
- it('removeMutedWord with #', async () => {
1512
+ it('removeMutedWord with #, no match, no removal', async () => {
1513
+ await agent.removeMutedWord({ value: '#hashtag', targets: [] })
1514
+ const { mutedWords } = (await agent.getPreferences()).moderationPrefs
1515
+
1516
+ // was inserted with #hashtag, but we don't sanitize on remove
1517
+ expect(mutedWords.find((m) => m.value === 'hashtag')).toBeTruthy()
1518
+ })
1519
+
1520
+ it('single-hash #', async () => {
1521
+ const prev = (await agent.getPreferences()).moderationPrefs
1522
+ const length = prev.mutedWords.length
1523
+ await agent.upsertMutedWords([{ value: '#', targets: [] }])
1524
+ const end = (await agent.getPreferences()).moderationPrefs
1525
+
1526
+ // sanitized to empty string, not inserted
1527
+ expect(end.mutedWords.length).toEqual(length)
1528
+ })
1529
+
1530
+ it('multi-hash ##', async () => {
1531
+ await agent.upsertMutedWords([{ value: '##', targets: [] }])
1532
+ const { mutedWords } = (await agent.getPreferences()).moderationPrefs
1533
+
1534
+ expect(mutedWords.find((m) => m.value === '#')).toBeTruthy()
1535
+ })
1536
+
1537
+ it('multi-hash ##hashtag', async () => {
1538
+ await agent.upsertMutedWords([{ value: '##hashtag', targets: [] }])
1539
+ const a = (await agent.getPreferences()).moderationPrefs
1540
+
1541
+ expect(a.mutedWords.find((w) => w.value === '#hashtag')).toBeTruthy()
1542
+
1266
1543
  await agent.removeMutedWord({ value: '#hashtag', targets: [] })
1267
- const { mutedWords } = await agent.getPreferences()
1544
+ const b = (await agent.getPreferences()).moderationPrefs
1545
+
1546
+ expect(b.mutedWords.find((w) => w.value === '#hashtag')).toBeFalsy()
1547
+ })
1548
+
1549
+ it('hash emoji #️⃣', async () => {
1550
+ await agent.upsertMutedWords([{ value: '#️⃣', targets: [] }])
1551
+ const { mutedWords } = (await agent.getPreferences()).moderationPrefs
1552
+
1553
+ expect(mutedWords.find((m) => m.value === '#️⃣')).toBeTruthy()
1554
+
1555
+ await agent.removeMutedWord({ value: '#️⃣', targets: [] })
1556
+ const end = (await agent.getPreferences()).moderationPrefs
1557
+
1558
+ expect(end.mutedWords.find((m) => m.value === '#️⃣')).toBeFalsy()
1559
+ })
1268
1560
 
1269
- expect(mutedWords.find((m) => m.value === 'hashtag')).toBeFalsy()
1561
+ it('hash emoji ##️⃣', async () => {
1562
+ await agent.upsertMutedWords([{ value: '##️⃣', targets: [] }])
1563
+ const { mutedWords } = (await agent.getPreferences()).moderationPrefs
1564
+
1565
+ expect(mutedWords.find((m) => m.value === '#️⃣')).toBeTruthy()
1566
+
1567
+ await agent.removeMutedWord({ value: '#️⃣', targets: [] })
1568
+ const end = (await agent.getPreferences()).moderationPrefs
1569
+
1570
+ expect(end.mutedWords.find((m) => m.value === '#️⃣')).toBeFalsy()
1571
+ })
1572
+
1573
+ it('hash emoji ###️⃣', async () => {
1574
+ await agent.upsertMutedWords([{ value: '###️⃣', targets: [] }])
1575
+ const { mutedWords } = (await agent.getPreferences()).moderationPrefs
1576
+
1577
+ expect(mutedWords.find((m) => m.value === '##️⃣')).toBeTruthy()
1578
+
1579
+ await agent.removeMutedWord({ value: '##️⃣', targets: [] })
1580
+ const end = (await agent.getPreferences()).moderationPrefs
1581
+
1582
+ expect(end.mutedWords.find((m) => m.value === '##️⃣')).toBeFalsy()
1583
+ })
1584
+
1585
+ describe(`invalid characters`, () => {
1586
+ it('zero width space', async () => {
1587
+ const prev = (await agent.getPreferences()).moderationPrefs
1588
+ const length = prev.mutedWords.length
1589
+ await agent.upsertMutedWords([{ value: '#​', targets: [] }])
1590
+ const { mutedWords } = (await agent.getPreferences()).moderationPrefs
1591
+
1592
+ expect(mutedWords.length).toEqual(length)
1593
+ })
1594
+
1595
+ it('newline', async () => {
1596
+ await agent.upsertMutedWords([
1597
+ { value: 'test value\n with newline', targets: [] },
1598
+ ])
1599
+ const { mutedWords } = (await agent.getPreferences()).moderationPrefs
1600
+
1601
+ expect(
1602
+ mutedWords.find((m) => m.value === 'test value with newline'),
1603
+ ).toBeTruthy()
1604
+ })
1605
+
1606
+ it('newline(s)', async () => {
1607
+ await agent.upsertMutedWords([
1608
+ { value: 'test value\n\r with newline', targets: [] },
1609
+ ])
1610
+ const { mutedWords } = (await agent.getPreferences()).moderationPrefs
1611
+
1612
+ expect(
1613
+ mutedWords.find((m) => m.value === 'test value with newline'),
1614
+ ).toBeTruthy()
1615
+ })
1616
+
1617
+ it('empty space', async () => {
1618
+ await agent.upsertMutedWords([{ value: ' ', targets: [] }])
1619
+ const { mutedWords } = (await agent.getPreferences()).moderationPrefs
1620
+
1621
+ expect(mutedWords.find((m) => m.value === ' ')).toBeFalsy()
1622
+ })
1623
+
1624
+ it('leading/trailing space', async () => {
1625
+ await agent.upsertMutedWords([{ value: ' trim ', targets: [] }])
1626
+ const { mutedWords } = (await agent.getPreferences()).moderationPrefs
1627
+
1628
+ expect(mutedWords.find((m) => m.value === 'trim')).toBeTruthy()
1629
+ })
1270
1630
  })
1271
1631
  })
1272
1632
 
@@ -1287,7 +1647,7 @@ describe('agent', () => {
1287
1647
  await agent.hidePost(postUri)
1288
1648
  await agent.hidePost(postUri) // double, should dedupe
1289
1649
  await expect(agent.getPreferences()).resolves.toHaveProperty(
1290
- 'hiddenPosts',
1650
+ 'moderationPrefs.hiddenPosts',
1291
1651
  [postUri],
1292
1652
  )
1293
1653
  })
@@ -1295,13 +1655,13 @@ describe('agent', () => {
1295
1655
  it('unhidePost', async () => {
1296
1656
  await agent.unhidePost(postUri)
1297
1657
  await expect(agent.getPreferences()).resolves.toHaveProperty(
1298
- 'hiddenPosts',
1658
+ 'moderationPrefs.hiddenPosts',
1299
1659
  [],
1300
1660
  )
1301
1661
  // no issues calling a second time
1302
1662
  await agent.unhidePost(postUri)
1303
1663
  await expect(agent.getPreferences()).resolves.toHaveProperty(
1304
- 'hiddenPosts',
1664
+ 'moderationPrefs.hiddenPosts',
1305
1665
  [],
1306
1666
  )
1307
1667
  })