@atproto/api 0.17.0 → 0.17.1

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 (368) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/dist/agent.d.ts +3 -4
  3. package/dist/agent.d.ts.map +1 -1
  4. package/dist/agent.js +7 -8
  5. package/dist/agent.js.map +1 -1
  6. package/dist/atp-agent.js.map +1 -1
  7. package/dist/bsky-agent.js.map +1 -1
  8. package/dist/client/index.d.ts +9 -0
  9. package/dist/client/index.d.ts.map +1 -1
  10. package/dist/client/index.js +16 -4
  11. package/dist/client/index.js.map +1 -1
  12. package/dist/client/lexicons.d.ts +835 -43
  13. package/dist/client/lexicons.d.ts.map +1 -1
  14. package/dist/client/lexicons.js +407 -0
  15. package/dist/client/lexicons.js.map +1 -1
  16. package/dist/client/types/app/bsky/actor/defs.js.map +1 -1
  17. package/dist/client/types/app/bsky/actor/getPreferences.js.map +1 -1
  18. package/dist/client/types/app/bsky/actor/getProfile.js.map +1 -1
  19. package/dist/client/types/app/bsky/actor/getProfiles.js.map +1 -1
  20. package/dist/client/types/app/bsky/actor/getSuggestions.js.map +1 -1
  21. package/dist/client/types/app/bsky/actor/profile.js.map +1 -1
  22. package/dist/client/types/app/bsky/actor/putPreferences.js.map +1 -1
  23. package/dist/client/types/app/bsky/actor/searchActors.js.map +1 -1
  24. package/dist/client/types/app/bsky/actor/searchActorsTypeahead.js.map +1 -1
  25. package/dist/client/types/app/bsky/actor/status.js.map +1 -1
  26. package/dist/client/types/app/bsky/bookmark/createBookmark.js.map +1 -1
  27. package/dist/client/types/app/bsky/bookmark/defs.js.map +1 -1
  28. package/dist/client/types/app/bsky/bookmark/deleteBookmark.js.map +1 -1
  29. package/dist/client/types/app/bsky/bookmark/getBookmarks.js.map +1 -1
  30. package/dist/client/types/app/bsky/embed/defs.js.map +1 -1
  31. package/dist/client/types/app/bsky/embed/external.js.map +1 -1
  32. package/dist/client/types/app/bsky/embed/images.js.map +1 -1
  33. package/dist/client/types/app/bsky/embed/record.js.map +1 -1
  34. package/dist/client/types/app/bsky/embed/recordWithMedia.js.map +1 -1
  35. package/dist/client/types/app/bsky/embed/video.js.map +1 -1
  36. package/dist/client/types/app/bsky/feed/defs.js.map +1 -1
  37. package/dist/client/types/app/bsky/feed/describeFeedGenerator.js.map +1 -1
  38. package/dist/client/types/app/bsky/feed/generator.js.map +1 -1
  39. package/dist/client/types/app/bsky/feed/getActorFeeds.js.map +1 -1
  40. package/dist/client/types/app/bsky/feed/getActorLikes.js.map +1 -1
  41. package/dist/client/types/app/bsky/feed/getAuthorFeed.js.map +1 -1
  42. package/dist/client/types/app/bsky/feed/getFeed.js.map +1 -1
  43. package/dist/client/types/app/bsky/feed/getFeedGenerator.js.map +1 -1
  44. package/dist/client/types/app/bsky/feed/getFeedGenerators.js.map +1 -1
  45. package/dist/client/types/app/bsky/feed/getFeedSkeleton.js.map +1 -1
  46. package/dist/client/types/app/bsky/feed/getLikes.js.map +1 -1
  47. package/dist/client/types/app/bsky/feed/getListFeed.js.map +1 -1
  48. package/dist/client/types/app/bsky/feed/getPostThread.js.map +1 -1
  49. package/dist/client/types/app/bsky/feed/getPosts.js.map +1 -1
  50. package/dist/client/types/app/bsky/feed/getQuotes.js.map +1 -1
  51. package/dist/client/types/app/bsky/feed/getRepostedBy.js.map +1 -1
  52. package/dist/client/types/app/bsky/feed/getSuggestedFeeds.js.map +1 -1
  53. package/dist/client/types/app/bsky/feed/getTimeline.js.map +1 -1
  54. package/dist/client/types/app/bsky/feed/like.js.map +1 -1
  55. package/dist/client/types/app/bsky/feed/post.js.map +1 -1
  56. package/dist/client/types/app/bsky/feed/postgate.js.map +1 -1
  57. package/dist/client/types/app/bsky/feed/repost.js.map +1 -1
  58. package/dist/client/types/app/bsky/feed/searchPosts.js.map +1 -1
  59. package/dist/client/types/app/bsky/feed/sendInteractions.js.map +1 -1
  60. package/dist/client/types/app/bsky/feed/threadgate.js.map +1 -1
  61. package/dist/client/types/app/bsky/graph/block.js.map +1 -1
  62. package/dist/client/types/app/bsky/graph/defs.js.map +1 -1
  63. package/dist/client/types/app/bsky/graph/follow.js.map +1 -1
  64. package/dist/client/types/app/bsky/graph/getActorStarterPacks.js.map +1 -1
  65. package/dist/client/types/app/bsky/graph/getBlocks.js.map +1 -1
  66. package/dist/client/types/app/bsky/graph/getFollowers.js.map +1 -1
  67. package/dist/client/types/app/bsky/graph/getFollows.js.map +1 -1
  68. package/dist/client/types/app/bsky/graph/getKnownFollowers.js.map +1 -1
  69. package/dist/client/types/app/bsky/graph/getList.js.map +1 -1
  70. package/dist/client/types/app/bsky/graph/getListBlocks.js.map +1 -1
  71. package/dist/client/types/app/bsky/graph/getListMutes.js.map +1 -1
  72. package/dist/client/types/app/bsky/graph/getLists.js.map +1 -1
  73. package/dist/client/types/app/bsky/graph/getListsWithMembership.js.map +1 -1
  74. package/dist/client/types/app/bsky/graph/getMutes.js.map +1 -1
  75. package/dist/client/types/app/bsky/graph/getRelationships.js.map +1 -1
  76. package/dist/client/types/app/bsky/graph/getStarterPack.js.map +1 -1
  77. package/dist/client/types/app/bsky/graph/getStarterPacks.js.map +1 -1
  78. package/dist/client/types/app/bsky/graph/getStarterPacksWithMembership.js.map +1 -1
  79. package/dist/client/types/app/bsky/graph/getSuggestedFollowsByActor.js.map +1 -1
  80. package/dist/client/types/app/bsky/graph/list.js.map +1 -1
  81. package/dist/client/types/app/bsky/graph/listblock.js.map +1 -1
  82. package/dist/client/types/app/bsky/graph/listitem.js.map +1 -1
  83. package/dist/client/types/app/bsky/graph/muteActor.js.map +1 -1
  84. package/dist/client/types/app/bsky/graph/muteActorList.js.map +1 -1
  85. package/dist/client/types/app/bsky/graph/muteThread.js.map +1 -1
  86. package/dist/client/types/app/bsky/graph/searchStarterPacks.js.map +1 -1
  87. package/dist/client/types/app/bsky/graph/starterpack.js.map +1 -1
  88. package/dist/client/types/app/bsky/graph/unmuteActor.js.map +1 -1
  89. package/dist/client/types/app/bsky/graph/unmuteActorList.js.map +1 -1
  90. package/dist/client/types/app/bsky/graph/unmuteThread.js.map +1 -1
  91. package/dist/client/types/app/bsky/graph/verification.js.map +1 -1
  92. package/dist/client/types/app/bsky/labeler/defs.js.map +1 -1
  93. package/dist/client/types/app/bsky/labeler/getServices.js.map +1 -1
  94. package/dist/client/types/app/bsky/labeler/service.js.map +1 -1
  95. package/dist/client/types/app/bsky/notification/declaration.js.map +1 -1
  96. package/dist/client/types/app/bsky/notification/defs.js.map +1 -1
  97. package/dist/client/types/app/bsky/notification/getPreferences.js.map +1 -1
  98. package/dist/client/types/app/bsky/notification/getUnreadCount.js.map +1 -1
  99. package/dist/client/types/app/bsky/notification/listActivitySubscriptions.js.map +1 -1
  100. package/dist/client/types/app/bsky/notification/listNotifications.js.map +1 -1
  101. package/dist/client/types/app/bsky/notification/putActivitySubscription.js.map +1 -1
  102. package/dist/client/types/app/bsky/notification/putPreferences.js.map +1 -1
  103. package/dist/client/types/app/bsky/notification/putPreferencesV2.js.map +1 -1
  104. package/dist/client/types/app/bsky/notification/registerPush.js.map +1 -1
  105. package/dist/client/types/app/bsky/notification/unregisterPush.js.map +1 -1
  106. package/dist/client/types/app/bsky/notification/updateSeen.js.map +1 -1
  107. package/dist/client/types/app/bsky/richtext/facet.js.map +1 -1
  108. package/dist/client/types/app/bsky/unspecced/defs.js.map +1 -1
  109. package/dist/client/types/app/bsky/unspecced/getAgeAssuranceState.js.map +1 -1
  110. package/dist/client/types/app/bsky/unspecced/getConfig.js.map +1 -1
  111. package/dist/client/types/app/bsky/unspecced/getOnboardingSuggestedStarterPacks.js.map +1 -1
  112. package/dist/client/types/app/bsky/unspecced/getOnboardingSuggestedStarterPacksSkeleton.js.map +1 -1
  113. package/dist/client/types/app/bsky/unspecced/getPopularFeedGenerators.js.map +1 -1
  114. package/dist/client/types/app/bsky/unspecced/getPostThreadOtherV2.js.map +1 -1
  115. package/dist/client/types/app/bsky/unspecced/getPostThreadV2.js.map +1 -1
  116. package/dist/client/types/app/bsky/unspecced/getSuggestedFeeds.js.map +1 -1
  117. package/dist/client/types/app/bsky/unspecced/getSuggestedFeedsSkeleton.js.map +1 -1
  118. package/dist/client/types/app/bsky/unspecced/getSuggestedStarterPacks.js.map +1 -1
  119. package/dist/client/types/app/bsky/unspecced/getSuggestedStarterPacksSkeleton.js.map +1 -1
  120. package/dist/client/types/app/bsky/unspecced/getSuggestedUsers.js.map +1 -1
  121. package/dist/client/types/app/bsky/unspecced/getSuggestedUsersSkeleton.js.map +1 -1
  122. package/dist/client/types/app/bsky/unspecced/getSuggestionsSkeleton.js.map +1 -1
  123. package/dist/client/types/app/bsky/unspecced/getTaggedSuggestions.js.map +1 -1
  124. package/dist/client/types/app/bsky/unspecced/getTrendingTopics.js.map +1 -1
  125. package/dist/client/types/app/bsky/unspecced/getTrends.js.map +1 -1
  126. package/dist/client/types/app/bsky/unspecced/getTrendsSkeleton.js.map +1 -1
  127. package/dist/client/types/app/bsky/unspecced/initAgeAssurance.js.map +1 -1
  128. package/dist/client/types/app/bsky/unspecced/searchActorsSkeleton.js.map +1 -1
  129. package/dist/client/types/app/bsky/unspecced/searchPostsSkeleton.js.map +1 -1
  130. package/dist/client/types/app/bsky/unspecced/searchStarterPacksSkeleton.js.map +1 -1
  131. package/dist/client/types/app/bsky/video/defs.js.map +1 -1
  132. package/dist/client/types/app/bsky/video/getJobStatus.js.map +1 -1
  133. package/dist/client/types/app/bsky/video/getUploadLimits.js.map +1 -1
  134. package/dist/client/types/app/bsky/video/uploadVideo.js.map +1 -1
  135. package/dist/client/types/chat/bsky/actor/declaration.js.map +1 -1
  136. package/dist/client/types/chat/bsky/actor/defs.js.map +1 -1
  137. package/dist/client/types/chat/bsky/actor/deleteAccount.js.map +1 -1
  138. package/dist/client/types/chat/bsky/actor/exportAccountData.js.map +1 -1
  139. package/dist/client/types/chat/bsky/convo/acceptConvo.js.map +1 -1
  140. package/dist/client/types/chat/bsky/convo/addReaction.js.map +1 -1
  141. package/dist/client/types/chat/bsky/convo/defs.js.map +1 -1
  142. package/dist/client/types/chat/bsky/convo/deleteMessageForSelf.js.map +1 -1
  143. package/dist/client/types/chat/bsky/convo/getConvo.js.map +1 -1
  144. package/dist/client/types/chat/bsky/convo/getConvoAvailability.js.map +1 -1
  145. package/dist/client/types/chat/bsky/convo/getConvoForMembers.js.map +1 -1
  146. package/dist/client/types/chat/bsky/convo/getLog.js.map +1 -1
  147. package/dist/client/types/chat/bsky/convo/getMessages.js.map +1 -1
  148. package/dist/client/types/chat/bsky/convo/leaveConvo.js.map +1 -1
  149. package/dist/client/types/chat/bsky/convo/listConvos.js.map +1 -1
  150. package/dist/client/types/chat/bsky/convo/muteConvo.js.map +1 -1
  151. package/dist/client/types/chat/bsky/convo/removeReaction.js.map +1 -1
  152. package/dist/client/types/chat/bsky/convo/sendMessage.js.map +1 -1
  153. package/dist/client/types/chat/bsky/convo/sendMessageBatch.js.map +1 -1
  154. package/dist/client/types/chat/bsky/convo/unmuteConvo.js.map +1 -1
  155. package/dist/client/types/chat/bsky/convo/updateAllRead.js.map +1 -1
  156. package/dist/client/types/chat/bsky/convo/updateRead.js.map +1 -1
  157. package/dist/client/types/chat/bsky/moderation/getActorMetadata.js.map +1 -1
  158. package/dist/client/types/chat/bsky/moderation/getMessageContext.js.map +1 -1
  159. package/dist/client/types/chat/bsky/moderation/updateActorAccess.js.map +1 -1
  160. package/dist/client/types/com/atproto/admin/defs.js.map +1 -1
  161. package/dist/client/types/com/atproto/admin/deleteAccount.js.map +1 -1
  162. package/dist/client/types/com/atproto/admin/disableAccountInvites.js.map +1 -1
  163. package/dist/client/types/com/atproto/admin/disableInviteCodes.js.map +1 -1
  164. package/dist/client/types/com/atproto/admin/enableAccountInvites.js.map +1 -1
  165. package/dist/client/types/com/atproto/admin/getAccountInfo.js.map +1 -1
  166. package/dist/client/types/com/atproto/admin/getAccountInfos.js.map +1 -1
  167. package/dist/client/types/com/atproto/admin/getInviteCodes.js.map +1 -1
  168. package/dist/client/types/com/atproto/admin/getSubjectStatus.js.map +1 -1
  169. package/dist/client/types/com/atproto/admin/searchAccounts.js.map +1 -1
  170. package/dist/client/types/com/atproto/admin/sendEmail.js.map +1 -1
  171. package/dist/client/types/com/atproto/admin/updateAccountEmail.js.map +1 -1
  172. package/dist/client/types/com/atproto/admin/updateAccountHandle.js.map +1 -1
  173. package/dist/client/types/com/atproto/admin/updateAccountPassword.js.map +1 -1
  174. package/dist/client/types/com/atproto/admin/updateAccountSigningKey.js.map +1 -1
  175. package/dist/client/types/com/atproto/admin/updateSubjectStatus.js.map +1 -1
  176. package/dist/client/types/com/atproto/identity/defs.js.map +1 -1
  177. package/dist/client/types/com/atproto/identity/getRecommendedDidCredentials.js.map +1 -1
  178. package/dist/client/types/com/atproto/identity/refreshIdentity.js.map +1 -1
  179. package/dist/client/types/com/atproto/identity/requestPlcOperationSignature.js.map +1 -1
  180. package/dist/client/types/com/atproto/identity/resolveDid.js.map +1 -1
  181. package/dist/client/types/com/atproto/identity/resolveHandle.js.map +1 -1
  182. package/dist/client/types/com/atproto/identity/resolveIdentity.js.map +1 -1
  183. package/dist/client/types/com/atproto/identity/signPlcOperation.js.map +1 -1
  184. package/dist/client/types/com/atproto/identity/submitPlcOperation.js.map +1 -1
  185. package/dist/client/types/com/atproto/identity/updateHandle.js.map +1 -1
  186. package/dist/client/types/com/atproto/label/defs.js.map +1 -1
  187. package/dist/client/types/com/atproto/label/queryLabels.js.map +1 -1
  188. package/dist/client/types/com/atproto/label/subscribeLabels.js.map +1 -1
  189. package/dist/client/types/com/atproto/lexicon/schema.js.map +1 -1
  190. package/dist/client/types/com/atproto/moderation/createReport.js.map +1 -1
  191. package/dist/client/types/com/atproto/moderation/defs.js.map +1 -1
  192. package/dist/client/types/com/atproto/repo/applyWrites.js.map +1 -1
  193. package/dist/client/types/com/atproto/repo/createRecord.js.map +1 -1
  194. package/dist/client/types/com/atproto/repo/defs.js.map +1 -1
  195. package/dist/client/types/com/atproto/repo/deleteRecord.js.map +1 -1
  196. package/dist/client/types/com/atproto/repo/describeRepo.js.map +1 -1
  197. package/dist/client/types/com/atproto/repo/getRecord.js.map +1 -1
  198. package/dist/client/types/com/atproto/repo/importRepo.js.map +1 -1
  199. package/dist/client/types/com/atproto/repo/listMissingBlobs.js.map +1 -1
  200. package/dist/client/types/com/atproto/repo/listRecords.js.map +1 -1
  201. package/dist/client/types/com/atproto/repo/putRecord.js.map +1 -1
  202. package/dist/client/types/com/atproto/repo/strongRef.js.map +1 -1
  203. package/dist/client/types/com/atproto/repo/uploadBlob.js.map +1 -1
  204. package/dist/client/types/com/atproto/server/activateAccount.js.map +1 -1
  205. package/dist/client/types/com/atproto/server/checkAccountStatus.js.map +1 -1
  206. package/dist/client/types/com/atproto/server/confirmEmail.js.map +1 -1
  207. package/dist/client/types/com/atproto/server/createAccount.js.map +1 -1
  208. package/dist/client/types/com/atproto/server/createAppPassword.js.map +1 -1
  209. package/dist/client/types/com/atproto/server/createInviteCode.js.map +1 -1
  210. package/dist/client/types/com/atproto/server/createInviteCodes.js.map +1 -1
  211. package/dist/client/types/com/atproto/server/createSession.js.map +1 -1
  212. package/dist/client/types/com/atproto/server/deactivateAccount.js.map +1 -1
  213. package/dist/client/types/com/atproto/server/defs.js.map +1 -1
  214. package/dist/client/types/com/atproto/server/deleteAccount.js.map +1 -1
  215. package/dist/client/types/com/atproto/server/deleteSession.js.map +1 -1
  216. package/dist/client/types/com/atproto/server/describeServer.js.map +1 -1
  217. package/dist/client/types/com/atproto/server/getAccountInviteCodes.js.map +1 -1
  218. package/dist/client/types/com/atproto/server/getServiceAuth.js.map +1 -1
  219. package/dist/client/types/com/atproto/server/getSession.js.map +1 -1
  220. package/dist/client/types/com/atproto/server/listAppPasswords.js.map +1 -1
  221. package/dist/client/types/com/atproto/server/refreshSession.js.map +1 -1
  222. package/dist/client/types/com/atproto/server/requestAccountDelete.js.map +1 -1
  223. package/dist/client/types/com/atproto/server/requestEmailConfirmation.js.map +1 -1
  224. package/dist/client/types/com/atproto/server/requestEmailUpdate.js.map +1 -1
  225. package/dist/client/types/com/atproto/server/requestPasswordReset.js.map +1 -1
  226. package/dist/client/types/com/atproto/server/reserveSigningKey.js.map +1 -1
  227. package/dist/client/types/com/atproto/server/resetPassword.js.map +1 -1
  228. package/dist/client/types/com/atproto/server/revokeAppPassword.js.map +1 -1
  229. package/dist/client/types/com/atproto/server/updateEmail.js.map +1 -1
  230. package/dist/client/types/com/atproto/sync/defs.js.map +1 -1
  231. package/dist/client/types/com/atproto/sync/getBlob.js.map +1 -1
  232. package/dist/client/types/com/atproto/sync/getBlocks.js.map +1 -1
  233. package/dist/client/types/com/atproto/sync/getCheckout.js.map +1 -1
  234. package/dist/client/types/com/atproto/sync/getHead.js.map +1 -1
  235. package/dist/client/types/com/atproto/sync/getHostStatus.js.map +1 -1
  236. package/dist/client/types/com/atproto/sync/getLatestCommit.js.map +1 -1
  237. package/dist/client/types/com/atproto/sync/getRecord.js.map +1 -1
  238. package/dist/client/types/com/atproto/sync/getRepo.js.map +1 -1
  239. package/dist/client/types/com/atproto/sync/getRepoStatus.js.map +1 -1
  240. package/dist/client/types/com/atproto/sync/listBlobs.js.map +1 -1
  241. package/dist/client/types/com/atproto/sync/listHosts.js.map +1 -1
  242. package/dist/client/types/com/atproto/sync/listRepos.js.map +1 -1
  243. package/dist/client/types/com/atproto/sync/listReposByCollection.js.map +1 -1
  244. package/dist/client/types/com/atproto/sync/notifyOfUpdate.js.map +1 -1
  245. package/dist/client/types/com/atproto/sync/requestCrawl.js.map +1 -1
  246. package/dist/client/types/com/atproto/sync/subscribeRepos.js.map +1 -1
  247. package/dist/client/types/com/atproto/temp/addReservedHandle.js.map +1 -1
  248. package/dist/client/types/com/atproto/temp/checkHandleAvailability.js.map +1 -1
  249. package/dist/client/types/com/atproto/temp/checkSignupQueue.js.map +1 -1
  250. package/dist/client/types/com/atproto/temp/dereferenceScope.js.map +1 -1
  251. package/dist/client/types/com/atproto/temp/fetchLabels.js.map +1 -1
  252. package/dist/client/types/com/atproto/temp/requestPhoneVerification.js.map +1 -1
  253. package/dist/client/types/com/atproto/temp/revokeAccountCredentials.js.map +1 -1
  254. package/dist/client/types/tools/ozone/communication/createTemplate.js.map +1 -1
  255. package/dist/client/types/tools/ozone/communication/defs.js.map +1 -1
  256. package/dist/client/types/tools/ozone/communication/deleteTemplate.js.map +1 -1
  257. package/dist/client/types/tools/ozone/communication/listTemplates.js.map +1 -1
  258. package/dist/client/types/tools/ozone/communication/updateTemplate.js.map +1 -1
  259. package/dist/client/types/tools/ozone/hosting/getAccountHistory.js.map +1 -1
  260. package/dist/client/types/tools/ozone/moderation/cancelScheduledActions.d.ts +43 -0
  261. package/dist/client/types/tools/ozone/moderation/cancelScheduledActions.d.ts.map +1 -0
  262. package/dist/client/types/tools/ozone/moderation/cancelScheduledActions.js +29 -0
  263. package/dist/client/types/tools/ozone/moderation/cancelScheduledActions.js.map +1 -0
  264. package/dist/client/types/tools/ozone/moderation/defs.d.ts +57 -2
  265. package/dist/client/types/tools/ozone/moderation/defs.d.ts.map +1 -1
  266. package/dist/client/types/tools/ozone/moderation/defs.js +27 -0
  267. package/dist/client/types/tools/ozone/moderation/defs.js.map +1 -1
  268. package/dist/client/types/tools/ozone/moderation/emitEvent.d.ts +1 -1
  269. package/dist/client/types/tools/ozone/moderation/emitEvent.d.ts.map +1 -1
  270. package/dist/client/types/tools/ozone/moderation/emitEvent.js.map +1 -1
  271. package/dist/client/types/tools/ozone/moderation/getAccountTimeline.d.ts +1 -1
  272. package/dist/client/types/tools/ozone/moderation/getAccountTimeline.d.ts.map +1 -1
  273. package/dist/client/types/tools/ozone/moderation/getAccountTimeline.js.map +1 -1
  274. package/dist/client/types/tools/ozone/moderation/getEvent.js.map +1 -1
  275. package/dist/client/types/tools/ozone/moderation/getRecord.js.map +1 -1
  276. package/dist/client/types/tools/ozone/moderation/getRecords.js.map +1 -1
  277. package/dist/client/types/tools/ozone/moderation/getRepo.js.map +1 -1
  278. package/dist/client/types/tools/ozone/moderation/getReporterStats.js.map +1 -1
  279. package/dist/client/types/tools/ozone/moderation/getRepos.js.map +1 -1
  280. package/dist/client/types/tools/ozone/moderation/getSubjects.js.map +1 -1
  281. package/dist/client/types/tools/ozone/moderation/listScheduledActions.d.ts +38 -0
  282. package/dist/client/types/tools/ozone/moderation/listScheduledActions.d.ts.map +1 -0
  283. package/dist/client/types/tools/ozone/moderation/listScheduledActions.js +11 -0
  284. package/dist/client/types/tools/ozone/moderation/listScheduledActions.js.map +1 -0
  285. package/dist/client/types/tools/ozone/moderation/queryEvents.js.map +1 -1
  286. package/dist/client/types/tools/ozone/moderation/queryStatuses.js.map +1 -1
  287. package/dist/client/types/tools/ozone/moderation/scheduleAction.d.ts +72 -0
  288. package/dist/client/types/tools/ozone/moderation/scheduleAction.d.ts.map +1 -0
  289. package/dist/client/types/tools/ozone/moderation/scheduleAction.js +47 -0
  290. package/dist/client/types/tools/ozone/moderation/scheduleAction.js.map +1 -0
  291. package/dist/client/types/tools/ozone/moderation/searchRepos.js.map +1 -1
  292. package/dist/client/types/tools/ozone/report/defs.js.map +1 -1
  293. package/dist/client/types/tools/ozone/safelink/addRule.js.map +1 -1
  294. package/dist/client/types/tools/ozone/safelink/defs.js.map +1 -1
  295. package/dist/client/types/tools/ozone/safelink/queryEvents.js.map +1 -1
  296. package/dist/client/types/tools/ozone/safelink/queryRules.js.map +1 -1
  297. package/dist/client/types/tools/ozone/safelink/removeRule.js.map +1 -1
  298. package/dist/client/types/tools/ozone/safelink/updateRule.js.map +1 -1
  299. package/dist/client/types/tools/ozone/server/getConfig.js.map +1 -1
  300. package/dist/client/types/tools/ozone/set/addValues.js.map +1 -1
  301. package/dist/client/types/tools/ozone/set/defs.js.map +1 -1
  302. package/dist/client/types/tools/ozone/set/deleteSet.js.map +1 -1
  303. package/dist/client/types/tools/ozone/set/deleteValues.js.map +1 -1
  304. package/dist/client/types/tools/ozone/set/getValues.js.map +1 -1
  305. package/dist/client/types/tools/ozone/set/querySets.js.map +1 -1
  306. package/dist/client/types/tools/ozone/set/upsertSet.js.map +1 -1
  307. package/dist/client/types/tools/ozone/setting/defs.js.map +1 -1
  308. package/dist/client/types/tools/ozone/setting/listOptions.js.map +1 -1
  309. package/dist/client/types/tools/ozone/setting/removeOptions.js.map +1 -1
  310. package/dist/client/types/tools/ozone/setting/upsertOption.js.map +1 -1
  311. package/dist/client/types/tools/ozone/signature/defs.js.map +1 -1
  312. package/dist/client/types/tools/ozone/signature/findCorrelation.js.map +1 -1
  313. package/dist/client/types/tools/ozone/signature/findRelatedAccounts.js.map +1 -1
  314. package/dist/client/types/tools/ozone/signature/searchAccounts.js.map +1 -1
  315. package/dist/client/types/tools/ozone/team/addMember.js.map +1 -1
  316. package/dist/client/types/tools/ozone/team/defs.js.map +1 -1
  317. package/dist/client/types/tools/ozone/team/deleteMember.js.map +1 -1
  318. package/dist/client/types/tools/ozone/team/listMembers.js.map +1 -1
  319. package/dist/client/types/tools/ozone/team/updateMember.js.map +1 -1
  320. package/dist/client/types/tools/ozone/verification/defs.js.map +1 -1
  321. package/dist/client/types/tools/ozone/verification/grantVerifications.js.map +1 -1
  322. package/dist/client/types/tools/ozone/verification/listVerifications.js.map +1 -1
  323. package/dist/client/types/tools/ozone/verification/revokeVerifications.js.map +1 -1
  324. package/dist/client/util.js.map +1 -1
  325. package/dist/const.js.map +1 -1
  326. package/dist/index.js.map +1 -1
  327. package/dist/mocker.js.map +1 -1
  328. package/dist/moderation/const/labels.js.map +1 -1
  329. package/dist/moderation/decision.js.map +1 -1
  330. package/dist/moderation/index.js.map +1 -1
  331. package/dist/moderation/mutewords.js.map +1 -1
  332. package/dist/moderation/subjects/account.js.map +1 -1
  333. package/dist/moderation/subjects/feed-generator.js.map +1 -1
  334. package/dist/moderation/subjects/notification.js.map +1 -1
  335. package/dist/moderation/subjects/post.js.map +1 -1
  336. package/dist/moderation/subjects/profile.js.map +1 -1
  337. package/dist/moderation/subjects/user-list.js.map +1 -1
  338. package/dist/moderation/types.js.map +1 -1
  339. package/dist/moderation/ui.js.map +1 -1
  340. package/dist/moderation/util.js.map +1 -1
  341. package/dist/predicate.js.map +1 -1
  342. package/dist/rich-text/detection.js.map +1 -1
  343. package/dist/rich-text/rich-text.js.map +1 -1
  344. package/dist/rich-text/sanitization.js.map +1 -1
  345. package/dist/rich-text/unicode.js.map +1 -1
  346. package/dist/rich-text/util.js.map +1 -1
  347. package/dist/session-manager.js.map +1 -1
  348. package/dist/types.d.ts +10 -5
  349. package/dist/types.d.ts.map +1 -1
  350. package/dist/types.js +41 -0
  351. package/dist/types.js.map +1 -1
  352. package/dist/util.d.ts +0 -3
  353. package/dist/util.d.ts.map +1 -1
  354. package/dist/util.js +1 -14
  355. package/dist/util.js.map +1 -1
  356. package/package.json +1 -1
  357. package/src/agent.ts +7 -7
  358. package/src/client/index.ts +42 -0
  359. package/src/client/lexicons.ts +430 -0
  360. package/src/client/types/tools/ozone/moderation/cancelScheduledActions.ts +79 -0
  361. package/src/client/types/tools/ozone/moderation/defs.ts +88 -0
  362. package/src/client/types/tools/ozone/moderation/emitEvent.ts +2 -0
  363. package/src/client/types/tools/ozone/moderation/getAccountTimeline.ts +2 -0
  364. package/src/client/types/tools/ozone/moderation/listScheduledActions.ts +57 -0
  365. package/src/client/types/tools/ozone/moderation/scheduleAction.ts +123 -0
  366. package/src/types.ts +46 -4
  367. package/src/util.ts +0 -15
  368. package/tsconfig.build.tsbuildinfo +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"findRelatedAccounts.js","sourceRoot":"","sources":["../../../../../../src/client/types/tools/ozone/signature/findRelatedAccounts.ts"],"names":[],"mappings":";;AA0CA,gCAEC;AAUD,4CAEC;AAED,wDAEC;AAtDD,mDAA4D;AAC5D,2CAIyB;AAIzB,MAAM,QAAQ,GAAG,eAAS,EACxB,QAAQ,GAAG,mBAAS,CAAA;AACtB,MAAM,EAAE,GAAG,2CAA2C,CAAA;AAyBtD,SAAgB,UAAU,CAAC,CAAM;IAC/B,OAAO,CAAC,CAAA;AACV,CAAC;AAQD,MAAM,kBAAkB,GAAG,gBAAgB,CAAA;AAE3C,SAAgB,gBAAgB,CAAI,CAAI;IACtC,OAAO,QAAQ,CAAC,CAAC,EAAE,EAAE,EAAE,kBAAkB,CAAC,CAAA;AAC5C,CAAC;AAED,SAAgB,sBAAsB,CAAI,CAAI;IAC5C,OAAO,QAAQ,CAAqB,CAAC,EAAE,EAAE,EAAE,kBAAkB,CAAC,CAAA;AAChE,CAAC"}
1
+ {"version":3,"file":"findRelatedAccounts.js","sourceRoot":"","sources":["../../../../../../src/client/types/tools/ozone/signature/findRelatedAccounts.ts"],"names":[],"mappings":";;AA0CA,gCAEC;AAUD,4CAEC;AAED,wDAEC;AAtDD,mDAA4D;AAC5D,2CAIyB;AAIzB,MAAM,QAAQ,GAAG,eAAS,EACxB,QAAQ,GAAG,mBAAS,CAAA;AACtB,MAAM,EAAE,GAAG,2CAA2C,CAAA;AAyBtD,SAAgB,UAAU,CAAC,CAAM;IAC/B,OAAO,CAAC,CAAA;AACV,CAAC;AAQD,MAAM,kBAAkB,GAAG,gBAAgB,CAAA;AAE3C,SAAgB,gBAAgB,CAAI,CAAI;IACtC,OAAO,QAAQ,CAAC,CAAC,EAAE,EAAE,EAAE,kBAAkB,CAAC,CAAA;AAC5C,CAAC;AAED,SAAgB,sBAAsB,CAAI,CAAI;IAC5C,OAAO,QAAQ,CAAqB,CAAC,EAAE,EAAE,EAAE,kBAAkB,CAAC,CAAA;AAChE,CAAC","sourcesContent":["/**\n * GENERATED CODE - DO NOT MODIFY\n */\nimport { HeadersMap, XRPCError } from '@atproto/xrpc'\nimport { type ValidationResult, BlobRef } from '@atproto/lexicon'\nimport { CID } from 'multiformats/cid'\nimport { validate as _validate } from '../../../../lexicons'\nimport {\n type $Typed,\n is$typed as _is$typed,\n type OmitKey,\n} from '../../../../util'\nimport type * as ComAtprotoAdminDefs from '../../../com/atproto/admin/defs.js'\nimport type * as ToolsOzoneSignatureDefs from './defs.js'\n\nconst is$typed = _is$typed,\n validate = _validate\nconst id = 'tools.ozone.signature.findRelatedAccounts'\n\nexport type QueryParams = {\n did: string\n cursor?: string\n limit?: number\n}\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n cursor?: string\n accounts: RelatedAccount[]\n}\n\nexport interface CallOptions {\n signal?: AbortSignal\n headers?: HeadersMap\n}\n\nexport interface Response {\n success: boolean\n headers: HeadersMap\n data: OutputSchema\n}\n\nexport function toKnownErr(e: any) {\n return e\n}\n\nexport interface RelatedAccount {\n $type?: 'tools.ozone.signature.findRelatedAccounts#relatedAccount'\n account: ComAtprotoAdminDefs.AccountView\n similarities?: ToolsOzoneSignatureDefs.SigDetail[]\n}\n\nconst hashRelatedAccount = 'relatedAccount'\n\nexport function isRelatedAccount<V>(v: V) {\n return is$typed(v, id, hashRelatedAccount)\n}\n\nexport function validateRelatedAccount<V>(v: V) {\n return validate<RelatedAccount & V>(v, id, hashRelatedAccount)\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"searchAccounts.js","sourceRoot":"","sources":["../../../../../../src/client/types/tools/ozone/signature/searchAccounts.ts"],"names":[],"mappings":";;AAyCA,gCAEC;AArCD,mDAA4D;AAC5D,2CAIyB;AAGzB,MAAM,QAAQ,GAAG,eAAS,EACxB,QAAQ,GAAG,mBAAS,CAAA;AACtB,MAAM,EAAE,GAAG,sCAAsC,CAAA;AAyBjD,SAAgB,UAAU,CAAC,CAAM;IAC/B,OAAO,CAAC,CAAA;AACV,CAAC"}
1
+ {"version":3,"file":"searchAccounts.js","sourceRoot":"","sources":["../../../../../../src/client/types/tools/ozone/signature/searchAccounts.ts"],"names":[],"mappings":";;AAyCA,gCAEC;AArCD,mDAA4D;AAC5D,2CAIyB;AAGzB,MAAM,QAAQ,GAAG,eAAS,EACxB,QAAQ,GAAG,mBAAS,CAAA;AACtB,MAAM,EAAE,GAAG,sCAAsC,CAAA;AAyBjD,SAAgB,UAAU,CAAC,CAAM;IAC/B,OAAO,CAAC,CAAA;AACV,CAAC","sourcesContent":["/**\n * GENERATED CODE - DO NOT MODIFY\n */\nimport { HeadersMap, XRPCError } from '@atproto/xrpc'\nimport { type ValidationResult, BlobRef } from '@atproto/lexicon'\nimport { CID } from 'multiformats/cid'\nimport { validate as _validate } from '../../../../lexicons'\nimport {\n type $Typed,\n is$typed as _is$typed,\n type OmitKey,\n} from '../../../../util'\nimport type * as ComAtprotoAdminDefs from '../../../com/atproto/admin/defs.js'\n\nconst is$typed = _is$typed,\n validate = _validate\nconst id = 'tools.ozone.signature.searchAccounts'\n\nexport type QueryParams = {\n values: string[]\n cursor?: string\n limit?: number\n}\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n cursor?: string\n accounts: ComAtprotoAdminDefs.AccountView[]\n}\n\nexport interface CallOptions {\n signal?: AbortSignal\n headers?: HeadersMap\n}\n\nexport interface Response {\n success: boolean\n headers: HeadersMap\n data: OutputSchema\n}\n\nexport function toKnownErr(e: any) {\n return e\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"addMember.js","sourceRoot":"","sources":["../../../../../../src/client/types/tools/ozone/team/addMember.ts"],"names":[],"mappings":";;;AAmDA,gCAOC;AA1DD;;GAEG;AACH,wCAAqD;AAGrD,mDAA4D;AAC5D,2CAIyB;AAGzB,MAAM,QAAQ,GAAG,eAAS,EACxB,QAAQ,GAAG,mBAAS,CAAA;AACtB,MAAM,EAAE,GAAG,4BAA4B,CAAA;AA6BvC,MAAa,wBAAyB,SAAQ,gBAAS;IACrD,YAAY,GAAc;QACxB,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAA;IACxE,CAAC;CACF;AAJD,4DAIC;AAED,SAAgB,UAAU,CAAC,CAAM;IAC/B,IAAI,CAAC,YAAY,gBAAS,EAAE,CAAC;QAC3B,IAAI,CAAC,CAAC,KAAK,KAAK,qBAAqB;YACnC,OAAO,IAAI,wBAAwB,CAAC,CAAC,CAAC,CAAA;IAC1C,CAAC;IAED,OAAO,CAAC,CAAA;AACV,CAAC"}
1
+ {"version":3,"file":"addMember.js","sourceRoot":"","sources":["../../../../../../src/client/types/tools/ozone/team/addMember.ts"],"names":[],"mappings":";;;AAmDA,gCAOC;AA1DD;;GAEG;AACH,wCAAqD;AAGrD,mDAA4D;AAC5D,2CAIyB;AAGzB,MAAM,QAAQ,GAAG,eAAS,EACxB,QAAQ,GAAG,mBAAS,CAAA;AACtB,MAAM,EAAE,GAAG,4BAA4B,CAAA;AA6BvC,MAAa,wBAAyB,SAAQ,gBAAS;IACrD,YAAY,GAAc;QACxB,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAA;IACxE,CAAC;CACF;AAJD,4DAIC;AAED,SAAgB,UAAU,CAAC,CAAM;IAC/B,IAAI,CAAC,YAAY,gBAAS,EAAE,CAAC;QAC3B,IAAI,CAAC,CAAC,KAAK,KAAK,qBAAqB;YACnC,OAAO,IAAI,wBAAwB,CAAC,CAAC,CAAC,CAAA;IAC1C,CAAC;IAED,OAAO,CAAC,CAAA;AACV,CAAC","sourcesContent":["/**\n * GENERATED CODE - DO NOT MODIFY\n */\nimport { HeadersMap, XRPCError } from '@atproto/xrpc'\nimport { type ValidationResult, BlobRef } from '@atproto/lexicon'\nimport { CID } from 'multiformats/cid'\nimport { validate as _validate } from '../../../../lexicons'\nimport {\n type $Typed,\n is$typed as _is$typed,\n type OmitKey,\n} from '../../../../util'\nimport type * as ToolsOzoneTeamDefs from './defs.js'\n\nconst is$typed = _is$typed,\n validate = _validate\nconst id = 'tools.ozone.team.addMember'\n\nexport type QueryParams = {}\n\nexport interface InputSchema {\n did: string\n role:\n | 'tools.ozone.team.defs#roleAdmin'\n | 'tools.ozone.team.defs#roleModerator'\n | 'tools.ozone.team.defs#roleVerifier'\n | 'tools.ozone.team.defs#roleTriage'\n | (string & {})\n}\n\nexport type OutputSchema = ToolsOzoneTeamDefs.Member\n\nexport interface CallOptions {\n signal?: AbortSignal\n headers?: HeadersMap\n qp?: QueryParams\n encoding?: 'application/json'\n}\n\nexport interface Response {\n success: boolean\n headers: HeadersMap\n data: OutputSchema\n}\n\nexport class MemberAlreadyExistsError extends XRPCError {\n constructor(src: XRPCError) {\n super(src.status, src.error, src.message, src.headers, { cause: src })\n }\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n if (e.error === 'MemberAlreadyExists')\n return new MemberAlreadyExistsError(e)\n }\n\n return e\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"defs.js","sourceRoot":"","sources":["../../../../../../src/client/types/tools/ozone/team/defs.ts"],"names":[],"mappings":";;;AAmCA,4BAEC;AAED,wCAEC;AApCD,mDAA4D;AAC5D,2CAIyB;AAGzB,MAAM,QAAQ,GAAG,eAAS,EACxB,QAAQ,GAAG,mBAAS,CAAA;AACtB,MAAM,EAAE,GAAG,uBAAuB,CAAA;AAkBlC,MAAM,UAAU,GAAG,QAAQ,CAAA;AAE3B,SAAgB,QAAQ,CAAI,CAAI;IAC9B,OAAO,QAAQ,CAAC,CAAC,EAAE,EAAE,EAAE,UAAU,CAAC,CAAA;AACpC,CAAC;AAED,SAAgB,cAAc,CAAI,CAAI;IACpC,OAAO,QAAQ,CAAa,CAAC,EAAE,EAAE,EAAE,UAAU,CAAC,CAAA;AAChD,CAAC;AAED,oEAAoE;AACvD,QAAA,SAAS,GAAG,GAAG,EAAE,YAAY,CAAA;AAC1C,gDAAgD;AACnC,QAAA,aAAa,GAAG,GAAG,EAAE,gBAAgB,CAAA;AAClD,yEAAyE;AAC5D,QAAA,UAAU,GAAG,GAAG,EAAE,aAAa,CAAA;AAC5C,0DAA0D;AAC7C,QAAA,YAAY,GAAG,GAAG,EAAE,eAAe,CAAA"}
1
+ {"version":3,"file":"defs.js","sourceRoot":"","sources":["../../../../../../src/client/types/tools/ozone/team/defs.ts"],"names":[],"mappings":";;;AAmCA,4BAEC;AAED,wCAEC;AApCD,mDAA4D;AAC5D,2CAIyB;AAGzB,MAAM,QAAQ,GAAG,eAAS,EACxB,QAAQ,GAAG,mBAAS,CAAA;AACtB,MAAM,EAAE,GAAG,uBAAuB,CAAA;AAkBlC,MAAM,UAAU,GAAG,QAAQ,CAAA;AAE3B,SAAgB,QAAQ,CAAI,CAAI;IAC9B,OAAO,QAAQ,CAAC,CAAC,EAAE,EAAE,EAAE,UAAU,CAAC,CAAA;AACpC,CAAC;AAED,SAAgB,cAAc,CAAI,CAAI;IACpC,OAAO,QAAQ,CAAa,CAAC,EAAE,EAAE,EAAE,UAAU,CAAC,CAAA;AAChD,CAAC;AAED,oEAAoE;AACvD,QAAA,SAAS,GAAG,GAAG,EAAE,YAAY,CAAA;AAC1C,gDAAgD;AACnC,QAAA,aAAa,GAAG,GAAG,EAAE,gBAAgB,CAAA;AAClD,yEAAyE;AAC5D,QAAA,UAAU,GAAG,GAAG,EAAE,aAAa,CAAA;AAC5C,0DAA0D;AAC7C,QAAA,YAAY,GAAG,GAAG,EAAE,eAAe,CAAA","sourcesContent":["/**\n * GENERATED CODE - DO NOT MODIFY\n */\nimport { type ValidationResult, BlobRef } from '@atproto/lexicon'\nimport { CID } from 'multiformats/cid'\nimport { validate as _validate } from '../../../../lexicons'\nimport {\n type $Typed,\n is$typed as _is$typed,\n type OmitKey,\n} from '../../../../util'\nimport type * as AppBskyActorDefs from '../../../app/bsky/actor/defs.js'\n\nconst is$typed = _is$typed,\n validate = _validate\nconst id = 'tools.ozone.team.defs'\n\nexport interface Member {\n $type?: 'tools.ozone.team.defs#member'\n did: string\n disabled?: boolean\n profile?: AppBskyActorDefs.ProfileViewDetailed\n createdAt?: string\n updatedAt?: string\n lastUpdatedBy?: string\n role:\n | 'lex:tools.ozone.team.defs#roleAdmin'\n | 'lex:tools.ozone.team.defs#roleModerator'\n | 'lex:tools.ozone.team.defs#roleTriage'\n | 'lex:tools.ozone.team.defs#roleVerifier'\n | (string & {})\n}\n\nconst hashMember = 'member'\n\nexport function isMember<V>(v: V) {\n return is$typed(v, id, hashMember)\n}\n\nexport function validateMember<V>(v: V) {\n return validate<Member & V>(v, id, hashMember)\n}\n\n/** Admin role. Highest level of access, can perform all actions. */\nexport const ROLEADMIN = `${id}#roleAdmin`\n/** Moderator role. Can perform most actions. */\nexport const ROLEMODERATOR = `${id}#roleModerator`\n/** Triage role. Mostly intended for monitoring and escalating issues. */\nexport const ROLETRIAGE = `${id}#roleTriage`\n/** Verifier role. Only allowed to issue verifications. */\nexport const ROLEVERIFIER = `${id}#roleVerifier`\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"deleteMember.js","sourceRoot":"","sources":["../../../../../../src/client/types/tools/ozone/team/deleteMember.ts"],"names":[],"mappings":";;;AA+CA,gCAOC;AAtDD;;GAEG;AACH,wCAAqD;AAGrD,mDAA4D;AAC5D,2CAIyB;AAEzB,MAAM,QAAQ,GAAG,eAAS,EACxB,QAAQ,GAAG,mBAAS,CAAA;AACtB,MAAM,EAAE,GAAG,+BAA+B,CAAA;AAoB1C,MAAa,mBAAoB,SAAQ,gBAAS;IAChD,YAAY,GAAc;QACxB,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAA;IACxE,CAAC;CACF;AAJD,kDAIC;AAED,MAAa,qBAAsB,SAAQ,gBAAS;IAClD,YAAY,GAAc;QACxB,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAA;IACxE,CAAC;CACF;AAJD,sDAIC;AAED,SAAgB,UAAU,CAAC,CAAM;IAC/B,IAAI,CAAC,YAAY,gBAAS,EAAE,CAAC;QAC3B,IAAI,CAAC,CAAC,KAAK,KAAK,gBAAgB;YAAE,OAAO,IAAI,mBAAmB,CAAC,CAAC,CAAC,CAAA;QACnE,IAAI,CAAC,CAAC,KAAK,KAAK,kBAAkB;YAAE,OAAO,IAAI,qBAAqB,CAAC,CAAC,CAAC,CAAA;IACzE,CAAC;IAED,OAAO,CAAC,CAAA;AACV,CAAC"}
1
+ {"version":3,"file":"deleteMember.js","sourceRoot":"","sources":["../../../../../../src/client/types/tools/ozone/team/deleteMember.ts"],"names":[],"mappings":";;;AA+CA,gCAOC;AAtDD;;GAEG;AACH,wCAAqD;AAGrD,mDAA4D;AAC5D,2CAIyB;AAEzB,MAAM,QAAQ,GAAG,eAAS,EACxB,QAAQ,GAAG,mBAAS,CAAA;AACtB,MAAM,EAAE,GAAG,+BAA+B,CAAA;AAoB1C,MAAa,mBAAoB,SAAQ,gBAAS;IAChD,YAAY,GAAc;QACxB,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAA;IACxE,CAAC;CACF;AAJD,kDAIC;AAED,MAAa,qBAAsB,SAAQ,gBAAS;IAClD,YAAY,GAAc;QACxB,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAA;IACxE,CAAC;CACF;AAJD,sDAIC;AAED,SAAgB,UAAU,CAAC,CAAM;IAC/B,IAAI,CAAC,YAAY,gBAAS,EAAE,CAAC;QAC3B,IAAI,CAAC,CAAC,KAAK,KAAK,gBAAgB;YAAE,OAAO,IAAI,mBAAmB,CAAC,CAAC,CAAC,CAAA;QACnE,IAAI,CAAC,CAAC,KAAK,KAAK,kBAAkB;YAAE,OAAO,IAAI,qBAAqB,CAAC,CAAC,CAAC,CAAA;IACzE,CAAC;IAED,OAAO,CAAC,CAAA;AACV,CAAC","sourcesContent":["/**\n * GENERATED CODE - DO NOT MODIFY\n */\nimport { HeadersMap, XRPCError } from '@atproto/xrpc'\nimport { type ValidationResult, BlobRef } from '@atproto/lexicon'\nimport { CID } from 'multiformats/cid'\nimport { validate as _validate } from '../../../../lexicons'\nimport {\n type $Typed,\n is$typed as _is$typed,\n type OmitKey,\n} from '../../../../util'\n\nconst is$typed = _is$typed,\n validate = _validate\nconst id = 'tools.ozone.team.deleteMember'\n\nexport type QueryParams = {}\n\nexport interface InputSchema {\n did: string\n}\n\nexport interface CallOptions {\n signal?: AbortSignal\n headers?: HeadersMap\n qp?: QueryParams\n encoding?: 'application/json'\n}\n\nexport interface Response {\n success: boolean\n headers: HeadersMap\n}\n\nexport class MemberNotFoundError extends XRPCError {\n constructor(src: XRPCError) {\n super(src.status, src.error, src.message, src.headers, { cause: src })\n }\n}\n\nexport class CannotDeleteSelfError extends XRPCError {\n constructor(src: XRPCError) {\n super(src.status, src.error, src.message, src.headers, { cause: src })\n }\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n if (e.error === 'MemberNotFound') return new MemberNotFoundError(e)\n if (e.error === 'CannotDeleteSelf') return new CannotDeleteSelfError(e)\n }\n\n return e\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"listMembers.js","sourceRoot":"","sources":["../../../../../../src/client/types/tools/ozone/team/listMembers.ts"],"names":[],"mappings":";;AA2CA,gCAEC;AAvCD,mDAA4D;AAC5D,2CAIyB;AAGzB,MAAM,QAAQ,GAAG,eAAS,EACxB,QAAQ,GAAG,mBAAS,CAAA;AACtB,MAAM,EAAE,GAAG,8BAA8B,CAAA;AA2BzC,SAAgB,UAAU,CAAC,CAAM;IAC/B,OAAO,CAAC,CAAA;AACV,CAAC"}
1
+ {"version":3,"file":"listMembers.js","sourceRoot":"","sources":["../../../../../../src/client/types/tools/ozone/team/listMembers.ts"],"names":[],"mappings":";;AA2CA,gCAEC;AAvCD,mDAA4D;AAC5D,2CAIyB;AAGzB,MAAM,QAAQ,GAAG,eAAS,EACxB,QAAQ,GAAG,mBAAS,CAAA;AACtB,MAAM,EAAE,GAAG,8BAA8B,CAAA;AA2BzC,SAAgB,UAAU,CAAC,CAAM;IAC/B,OAAO,CAAC,CAAA;AACV,CAAC","sourcesContent":["/**\n * GENERATED CODE - DO NOT MODIFY\n */\nimport { HeadersMap, XRPCError } from '@atproto/xrpc'\nimport { type ValidationResult, BlobRef } from '@atproto/lexicon'\nimport { CID } from 'multiformats/cid'\nimport { validate as _validate } from '../../../../lexicons'\nimport {\n type $Typed,\n is$typed as _is$typed,\n type OmitKey,\n} from '../../../../util'\nimport type * as ToolsOzoneTeamDefs from './defs.js'\n\nconst is$typed = _is$typed,\n validate = _validate\nconst id = 'tools.ozone.team.listMembers'\n\nexport type QueryParams = {\n q?: string\n disabled?: boolean\n roles?: string[]\n limit?: number\n cursor?: string\n}\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n cursor?: string\n members: ToolsOzoneTeamDefs.Member[]\n}\n\nexport interface CallOptions {\n signal?: AbortSignal\n headers?: HeadersMap\n}\n\nexport interface Response {\n success: boolean\n headers: HeadersMap\n data: OutputSchema\n}\n\nexport function toKnownErr(e: any) {\n return e\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"updateMember.js","sourceRoot":"","sources":["../../../../../../src/client/types/tools/ozone/team/updateMember.ts"],"names":[],"mappings":";;;AAoDA,gCAMC;AA1DD;;GAEG;AACH,wCAAqD;AAGrD,mDAA4D;AAC5D,2CAIyB;AAGzB,MAAM,QAAQ,GAAG,eAAS,EACxB,QAAQ,GAAG,mBAAS,CAAA;AACtB,MAAM,EAAE,GAAG,+BAA+B,CAAA;AA8B1C,MAAa,mBAAoB,SAAQ,gBAAS;IAChD,YAAY,GAAc;QACxB,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAA;IACxE,CAAC;CACF;AAJD,kDAIC;AAED,SAAgB,UAAU,CAAC,CAAM;IAC/B,IAAI,CAAC,YAAY,gBAAS,EAAE,CAAC;QAC3B,IAAI,CAAC,CAAC,KAAK,KAAK,gBAAgB;YAAE,OAAO,IAAI,mBAAmB,CAAC,CAAC,CAAC,CAAA;IACrE,CAAC;IAED,OAAO,CAAC,CAAA;AACV,CAAC"}
1
+ {"version":3,"file":"updateMember.js","sourceRoot":"","sources":["../../../../../../src/client/types/tools/ozone/team/updateMember.ts"],"names":[],"mappings":";;;AAoDA,gCAMC;AA1DD;;GAEG;AACH,wCAAqD;AAGrD,mDAA4D;AAC5D,2CAIyB;AAGzB,MAAM,QAAQ,GAAG,eAAS,EACxB,QAAQ,GAAG,mBAAS,CAAA;AACtB,MAAM,EAAE,GAAG,+BAA+B,CAAA;AA8B1C,MAAa,mBAAoB,SAAQ,gBAAS;IAChD,YAAY,GAAc;QACxB,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAA;IACxE,CAAC;CACF;AAJD,kDAIC;AAED,SAAgB,UAAU,CAAC,CAAM;IAC/B,IAAI,CAAC,YAAY,gBAAS,EAAE,CAAC;QAC3B,IAAI,CAAC,CAAC,KAAK,KAAK,gBAAgB;YAAE,OAAO,IAAI,mBAAmB,CAAC,CAAC,CAAC,CAAA;IACrE,CAAC;IAED,OAAO,CAAC,CAAA;AACV,CAAC","sourcesContent":["/**\n * GENERATED CODE - DO NOT MODIFY\n */\nimport { HeadersMap, XRPCError } from '@atproto/xrpc'\nimport { type ValidationResult, BlobRef } from '@atproto/lexicon'\nimport { CID } from 'multiformats/cid'\nimport { validate as _validate } from '../../../../lexicons'\nimport {\n type $Typed,\n is$typed as _is$typed,\n type OmitKey,\n} from '../../../../util'\nimport type * as ToolsOzoneTeamDefs from './defs.js'\n\nconst is$typed = _is$typed,\n validate = _validate\nconst id = 'tools.ozone.team.updateMember'\n\nexport type QueryParams = {}\n\nexport interface InputSchema {\n did: string\n disabled?: boolean\n role?:\n | 'tools.ozone.team.defs#roleAdmin'\n | 'tools.ozone.team.defs#roleModerator'\n | 'tools.ozone.team.defs#roleVerifier'\n | 'tools.ozone.team.defs#roleTriage'\n | (string & {})\n}\n\nexport type OutputSchema = ToolsOzoneTeamDefs.Member\n\nexport interface CallOptions {\n signal?: AbortSignal\n headers?: HeadersMap\n qp?: QueryParams\n encoding?: 'application/json'\n}\n\nexport interface Response {\n success: boolean\n headers: HeadersMap\n data: OutputSchema\n}\n\nexport class MemberNotFoundError extends XRPCError {\n constructor(src: XRPCError) {\n super(src.status, src.error, src.message, src.headers, { cause: src })\n }\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n if (e.error === 'MemberNotFound') return new MemberNotFoundError(e)\n }\n\n return e\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"defs.js","sourceRoot":"","sources":["../../../../../../src/client/types/tools/ozone/verification/defs.ts"],"names":[],"mappings":";;AAoDA,gDAEC;AAED,4DAEC;AArDD,mDAA4D;AAC5D,2CAIyB;AAGzB,MAAM,QAAQ,GAAG,eAAS,EACxB,QAAQ,GAAG,mBAAS,CAAA;AACtB,MAAM,EAAE,GAAG,+BAA+B,CAAA;AAmC1C,MAAM,oBAAoB,GAAG,kBAAkB,CAAA;AAE/C,SAAgB,kBAAkB,CAAI,CAAI;IACxC,OAAO,QAAQ,CAAC,CAAC,EAAE,EAAE,EAAE,oBAAoB,CAAC,CAAA;AAC9C,CAAC;AAED,SAAgB,wBAAwB,CAAI,CAAI;IAC9C,OAAO,QAAQ,CAAuB,CAAC,EAAE,EAAE,EAAE,oBAAoB,CAAC,CAAA;AACpE,CAAC"}
1
+ {"version":3,"file":"defs.js","sourceRoot":"","sources":["../../../../../../src/client/types/tools/ozone/verification/defs.ts"],"names":[],"mappings":";;AAoDA,gDAEC;AAED,4DAEC;AArDD,mDAA4D;AAC5D,2CAIyB;AAGzB,MAAM,QAAQ,GAAG,eAAS,EACxB,QAAQ,GAAG,mBAAS,CAAA;AACtB,MAAM,EAAE,GAAG,+BAA+B,CAAA;AAmC1C,MAAM,oBAAoB,GAAG,kBAAkB,CAAA;AAE/C,SAAgB,kBAAkB,CAAI,CAAI;IACxC,OAAO,QAAQ,CAAC,CAAC,EAAE,EAAE,EAAE,oBAAoB,CAAC,CAAA;AAC9C,CAAC;AAED,SAAgB,wBAAwB,CAAI,CAAI;IAC9C,OAAO,QAAQ,CAAuB,CAAC,EAAE,EAAE,EAAE,oBAAoB,CAAC,CAAA;AACpE,CAAC","sourcesContent":["/**\n * GENERATED CODE - DO NOT MODIFY\n */\nimport { type ValidationResult, BlobRef } from '@atproto/lexicon'\nimport { CID } from 'multiformats/cid'\nimport { validate as _validate } from '../../../../lexicons'\nimport {\n type $Typed,\n is$typed as _is$typed,\n type OmitKey,\n} from '../../../../util'\nimport type * as ToolsOzoneModerationDefs from '../moderation/defs.js'\n\nconst is$typed = _is$typed,\n validate = _validate\nconst id = 'tools.ozone.verification.defs'\n\n/** Verification data for the associated subject. */\nexport interface VerificationView {\n $type?: 'tools.ozone.verification.defs#verificationView'\n /** The user who issued this verification. */\n issuer: string\n /** The AT-URI of the verification record. */\n uri: string\n /** The subject of the verification. */\n subject: string\n /** Handle of the subject the verification applies to at the moment of verifying, which might not be the same at the time of viewing. The verification is only valid if the current handle matches the one at the time of verifying. */\n handle: string\n /** Display name of the subject the verification applies to at the moment of verifying, which might not be the same at the time of viewing. The verification is only valid if the current displayName matches the one at the time of verifying. */\n displayName: string\n /** Timestamp when the verification was created. */\n createdAt: string\n /** Describes the reason for revocation, also indicating that the verification is no longer valid. */\n revokeReason?: string\n /** Timestamp when the verification was revoked. */\n revokedAt?: string\n /** The user who revoked this verification. */\n revokedBy?: string\n subjectProfile?: { $type: string }\n issuerProfile?: { $type: string }\n subjectRepo?:\n | $Typed<ToolsOzoneModerationDefs.RepoViewDetail>\n | $Typed<ToolsOzoneModerationDefs.RepoViewNotFound>\n | { $type: string }\n issuerRepo?:\n | $Typed<ToolsOzoneModerationDefs.RepoViewDetail>\n | $Typed<ToolsOzoneModerationDefs.RepoViewNotFound>\n | { $type: string }\n}\n\nconst hashVerificationView = 'verificationView'\n\nexport function isVerificationView<V>(v: V) {\n return is$typed(v, id, hashVerificationView)\n}\n\nexport function validateVerificationView<V>(v: V) {\n return validate<VerificationView & V>(v, id, hashVerificationView)\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"grantVerifications.js","sourceRoot":"","sources":["../../../../../../src/client/types/tools/ozone/verification/grantVerifications.ts"],"names":[],"mappings":";;AA2CA,gCAEC;AAgBD,kDAEC;AAED,8DAEC;AAaD,oCAEC;AAED,gDAEC;AAhFD,mDAA4D;AAC5D,2CAIyB;AAGzB,MAAM,QAAQ,GAAG,eAAS,EACxB,QAAQ,GAAG,mBAAS,CAAA;AACtB,MAAM,EAAE,GAAG,6CAA6C,CAAA;AA2BxD,SAAgB,UAAU,CAAC,CAAM;IAC/B,OAAO,CAAC,CAAA;AACV,CAAC;AAcD,MAAM,qBAAqB,GAAG,mBAAmB,CAAA;AAEjD,SAAgB,mBAAmB,CAAI,CAAI;IACzC,OAAO,QAAQ,CAAC,CAAC,EAAE,EAAE,EAAE,qBAAqB,CAAC,CAAA;AAC/C,CAAC;AAED,SAAgB,yBAAyB,CAAI,CAAI;IAC/C,OAAO,QAAQ,CAAwB,CAAC,EAAE,EAAE,EAAE,qBAAqB,CAAC,CAAA;AACtE,CAAC;AAWD,MAAM,cAAc,GAAG,YAAY,CAAA;AAEnC,SAAgB,YAAY,CAAI,CAAI;IAClC,OAAO,QAAQ,CAAC,CAAC,EAAE,EAAE,EAAE,cAAc,CAAC,CAAA;AACxC,CAAC;AAED,SAAgB,kBAAkB,CAAI,CAAI;IACxC,OAAO,QAAQ,CAAiB,CAAC,EAAE,EAAE,EAAE,cAAc,CAAC,CAAA;AACxD,CAAC"}
1
+ {"version":3,"file":"grantVerifications.js","sourceRoot":"","sources":["../../../../../../src/client/types/tools/ozone/verification/grantVerifications.ts"],"names":[],"mappings":";;AA2CA,gCAEC;AAgBD,kDAEC;AAED,8DAEC;AAaD,oCAEC;AAED,gDAEC;AAhFD,mDAA4D;AAC5D,2CAIyB;AAGzB,MAAM,QAAQ,GAAG,eAAS,EACxB,QAAQ,GAAG,mBAAS,CAAA;AACtB,MAAM,EAAE,GAAG,6CAA6C,CAAA;AA2BxD,SAAgB,UAAU,CAAC,CAAM;IAC/B,OAAO,CAAC,CAAA;AACV,CAAC;AAcD,MAAM,qBAAqB,GAAG,mBAAmB,CAAA;AAEjD,SAAgB,mBAAmB,CAAI,CAAI;IACzC,OAAO,QAAQ,CAAC,CAAC,EAAE,EAAE,EAAE,qBAAqB,CAAC,CAAA;AAC/C,CAAC;AAED,SAAgB,yBAAyB,CAAI,CAAI;IAC/C,OAAO,QAAQ,CAAwB,CAAC,EAAE,EAAE,EAAE,qBAAqB,CAAC,CAAA;AACtE,CAAC;AAWD,MAAM,cAAc,GAAG,YAAY,CAAA;AAEnC,SAAgB,YAAY,CAAI,CAAI;IAClC,OAAO,QAAQ,CAAC,CAAC,EAAE,EAAE,EAAE,cAAc,CAAC,CAAA;AACxC,CAAC;AAED,SAAgB,kBAAkB,CAAI,CAAI;IACxC,OAAO,QAAQ,CAAiB,CAAC,EAAE,EAAE,EAAE,cAAc,CAAC,CAAA;AACxD,CAAC","sourcesContent":["/**\n * GENERATED CODE - DO NOT MODIFY\n */\nimport { HeadersMap, XRPCError } from '@atproto/xrpc'\nimport { type ValidationResult, BlobRef } from '@atproto/lexicon'\nimport { CID } from 'multiformats/cid'\nimport { validate as _validate } from '../../../../lexicons'\nimport {\n type $Typed,\n is$typed as _is$typed,\n type OmitKey,\n} from '../../../../util'\nimport type * as ToolsOzoneVerificationDefs from './defs.js'\n\nconst is$typed = _is$typed,\n validate = _validate\nconst id = 'tools.ozone.verification.grantVerifications'\n\nexport type QueryParams = {}\n\nexport interface InputSchema {\n /** Array of verification requests to process */\n verifications: VerificationInput[]\n}\n\nexport interface OutputSchema {\n verifications: ToolsOzoneVerificationDefs.VerificationView[]\n failedVerifications: GrantError[]\n}\n\nexport interface CallOptions {\n signal?: AbortSignal\n headers?: HeadersMap\n qp?: QueryParams\n encoding?: 'application/json'\n}\n\nexport interface Response {\n success: boolean\n headers: HeadersMap\n data: OutputSchema\n}\n\nexport function toKnownErr(e: any) {\n return e\n}\n\nexport interface VerificationInput {\n $type?: 'tools.ozone.verification.grantVerifications#verificationInput'\n /** The did of the subject being verified */\n subject: string\n /** Handle of the subject the verification applies to at the moment of verifying. */\n handle: string\n /** Display name of the subject the verification applies to at the moment of verifying. */\n displayName: string\n /** Timestamp for verification record. Defaults to current time when not specified. */\n createdAt?: string\n}\n\nconst hashVerificationInput = 'verificationInput'\n\nexport function isVerificationInput<V>(v: V) {\n return is$typed(v, id, hashVerificationInput)\n}\n\nexport function validateVerificationInput<V>(v: V) {\n return validate<VerificationInput & V>(v, id, hashVerificationInput)\n}\n\n/** Error object for failed verifications. */\nexport interface GrantError {\n $type?: 'tools.ozone.verification.grantVerifications#grantError'\n /** Error message describing the reason for failure. */\n error: string\n /** The did of the subject being verified */\n subject: string\n}\n\nconst hashGrantError = 'grantError'\n\nexport function isGrantError<V>(v: V) {\n return is$typed(v, id, hashGrantError)\n}\n\nexport function validateGrantError<V>(v: V) {\n return validate<GrantError & V>(v, id, hashGrantError)\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"listVerifications.js","sourceRoot":"","sources":["../../../../../../src/client/types/tools/ozone/verification/listVerifications.ts"],"names":[],"mappings":";;AAsDA,gCAEC;AAlDD,mDAA4D;AAC5D,2CAIyB;AAGzB,MAAM,QAAQ,GAAG,eAAS,EACxB,QAAQ,GAAG,mBAAS,CAAA;AACtB,MAAM,EAAE,GAAG,4CAA4C,CAAA;AAsCvD,SAAgB,UAAU,CAAC,CAAM;IAC/B,OAAO,CAAC,CAAA;AACV,CAAC"}
1
+ {"version":3,"file":"listVerifications.js","sourceRoot":"","sources":["../../../../../../src/client/types/tools/ozone/verification/listVerifications.ts"],"names":[],"mappings":";;AAsDA,gCAEC;AAlDD,mDAA4D;AAC5D,2CAIyB;AAGzB,MAAM,QAAQ,GAAG,eAAS,EACxB,QAAQ,GAAG,mBAAS,CAAA;AACtB,MAAM,EAAE,GAAG,4CAA4C,CAAA;AAsCvD,SAAgB,UAAU,CAAC,CAAM;IAC/B,OAAO,CAAC,CAAA;AACV,CAAC","sourcesContent":["/**\n * GENERATED CODE - DO NOT MODIFY\n */\nimport { HeadersMap, XRPCError } from '@atproto/xrpc'\nimport { type ValidationResult, BlobRef } from '@atproto/lexicon'\nimport { CID } from 'multiformats/cid'\nimport { validate as _validate } from '../../../../lexicons'\nimport {\n type $Typed,\n is$typed as _is$typed,\n type OmitKey,\n} from '../../../../util'\nimport type * as ToolsOzoneVerificationDefs from './defs.js'\n\nconst is$typed = _is$typed,\n validate = _validate\nconst id = 'tools.ozone.verification.listVerifications'\n\nexport type QueryParams = {\n /** Pagination cursor */\n cursor?: string\n /** Maximum number of results to return */\n limit?: number\n /** Filter to verifications created after this timestamp */\n createdAfter?: string\n /** Filter to verifications created before this timestamp */\n createdBefore?: string\n /** Filter to verifications from specific issuers */\n issuers?: string[]\n /** Filter to specific verified DIDs */\n subjects?: string[]\n /** Sort direction for creation date */\n sortDirection?: 'asc' | 'desc'\n /** Filter to verifications that are revoked or not. By default, includes both. */\n isRevoked?: boolean\n}\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n cursor?: string\n verifications: ToolsOzoneVerificationDefs.VerificationView[]\n}\n\nexport interface CallOptions {\n signal?: AbortSignal\n headers?: HeadersMap\n}\n\nexport interface Response {\n success: boolean\n headers: HeadersMap\n data: OutputSchema\n}\n\nexport function toKnownErr(e: any) {\n return e\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"revokeVerifications.js","sourceRoot":"","sources":["../../../../../../src/client/types/tools/ozone/verification/revokeVerifications.ts"],"names":[],"mappings":";;AA8CA,gCAEC;AAaD,sCAEC;AAED,kDAEC;AA7DD,mDAA4D;AAC5D,2CAIyB;AAEzB,MAAM,QAAQ,GAAG,eAAS,EACxB,QAAQ,GAAG,mBAAS,CAAA;AACtB,MAAM,EAAE,GAAG,8CAA8C,CAAA;AA+BzD,SAAgB,UAAU,CAAC,CAAM;IAC/B,OAAO,CAAC,CAAA;AACV,CAAC;AAWD,MAAM,eAAe,GAAG,aAAa,CAAA;AAErC,SAAgB,aAAa,CAAI,CAAI;IACnC,OAAO,QAAQ,CAAC,CAAC,EAAE,EAAE,EAAE,eAAe,CAAC,CAAA;AACzC,CAAC;AAED,SAAgB,mBAAmB,CAAI,CAAI;IACzC,OAAO,QAAQ,CAAkB,CAAC,EAAE,EAAE,EAAE,eAAe,CAAC,CAAA;AAC1D,CAAC"}
1
+ {"version":3,"file":"revokeVerifications.js","sourceRoot":"","sources":["../../../../../../src/client/types/tools/ozone/verification/revokeVerifications.ts"],"names":[],"mappings":";;AA8CA,gCAEC;AAaD,sCAEC;AAED,kDAEC;AA7DD,mDAA4D;AAC5D,2CAIyB;AAEzB,MAAM,QAAQ,GAAG,eAAS,EACxB,QAAQ,GAAG,mBAAS,CAAA;AACtB,MAAM,EAAE,GAAG,8CAA8C,CAAA;AA+BzD,SAAgB,UAAU,CAAC,CAAM;IAC/B,OAAO,CAAC,CAAA;AACV,CAAC;AAWD,MAAM,eAAe,GAAG,aAAa,CAAA;AAErC,SAAgB,aAAa,CAAI,CAAI;IACnC,OAAO,QAAQ,CAAC,CAAC,EAAE,EAAE,EAAE,eAAe,CAAC,CAAA;AACzC,CAAC;AAED,SAAgB,mBAAmB,CAAI,CAAI;IACzC,OAAO,QAAQ,CAAkB,CAAC,EAAE,EAAE,EAAE,eAAe,CAAC,CAAA;AAC1D,CAAC","sourcesContent":["/**\n * GENERATED CODE - DO NOT MODIFY\n */\nimport { HeadersMap, XRPCError } from '@atproto/xrpc'\nimport { type ValidationResult, BlobRef } from '@atproto/lexicon'\nimport { CID } from 'multiformats/cid'\nimport { validate as _validate } from '../../../../lexicons'\nimport {\n type $Typed,\n is$typed as _is$typed,\n type OmitKey,\n} from '../../../../util'\n\nconst is$typed = _is$typed,\n validate = _validate\nconst id = 'tools.ozone.verification.revokeVerifications'\n\nexport type QueryParams = {}\n\nexport interface InputSchema {\n /** Array of verification record uris to revoke */\n uris: string[]\n /** Reason for revoking the verification. This is optional and can be omitted if not needed. */\n revokeReason?: string\n}\n\nexport interface OutputSchema {\n /** List of verification uris successfully revoked */\n revokedVerifications: string[]\n /** List of verification uris that couldn't be revoked, including failure reasons */\n failedRevocations: RevokeError[]\n}\n\nexport interface CallOptions {\n signal?: AbortSignal\n headers?: HeadersMap\n qp?: QueryParams\n encoding?: 'application/json'\n}\n\nexport interface Response {\n success: boolean\n headers: HeadersMap\n data: OutputSchema\n}\n\nexport function toKnownErr(e: any) {\n return e\n}\n\n/** Error object for failed revocations */\nexport interface RevokeError {\n $type?: 'tools.ozone.verification.revokeVerifications#revokeError'\n /** The AT-URI of the verification record that failed to revoke. */\n uri: string\n /** Description of the error that occurred during revocation. */\n error: string\n}\n\nconst hashRevokeError = 'revokeError'\n\nexport function isRevokeError<V>(v: V) {\n return is$typed(v, id, hashRevokeError)\n}\n\nexport function validateRevokeError<V>(v: V) {\n return validate<RevokeError & V>(v, id, hashRevokeError)\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/client/util.ts"],"names":[],"mappings":";AAAA;;GAEG;;AAgDH,4BAMC;AAED,kCASC;AAUD,kCAIC;AAhED,SAAS,QAAQ,CAAI,CAAI;IACvB,OAAO,CAAC,IAAI,IAAI,IAAI,OAAO,CAAC,KAAK,QAAQ,CAAA;AAC3C,CAAC;AAED,SAAS,OAAO,CACd,KAAc,EACd,EAAM,EACN,IAAU;IAEV,OAAO,IAAI,KAAK,MAAM;QACpB,CAAC,CAAC,KAAK,KAAK,EAAE;QACd,CAAC,CAAC,4BAA4B;YAC5B,OAAO,KAAK,KAAK,QAAQ;gBACvB,KAAK,CAAC,MAAM,KAAK,EAAE,CAAC,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM;gBAC5C,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,SAAS;gBAC5C,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;gBACpB,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;AAC5B,CAAC;AAgBD,SAAgB,QAAQ,CACtB,CAAI,EACJ,EAAM,EACN,IAAU;IAEV,OAAO,QAAQ,CAAC,CAAC,CAAC,IAAI,OAAO,IAAI,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,EAAE,IAAI,CAAC,CAAA;AAClE,CAAC;AAED,SAAgB,WAAW,CACzB,CAAI,EACJ,EAAM,EACN,IAAU;IAEV,OAAO,CACL,QAAQ,CAAC,CAAC,CAAC;QACX,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAC5E,CAAA;AACH,CAAC;AAMD;;;GAGG;AACH,SAAgB,WAAW,CAAsB,QAAW;IAC1D,OAAO,UAAa,CAAI;QACtB,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAA;IAC5B,CAAC,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/client/util.ts"],"names":[],"mappings":";AAAA;;GAEG;;AAgDH,4BAMC;AAED,kCASC;AAUD,kCAIC;AAhED,SAAS,QAAQ,CAAI,CAAI;IACvB,OAAO,CAAC,IAAI,IAAI,IAAI,OAAO,CAAC,KAAK,QAAQ,CAAA;AAC3C,CAAC;AAED,SAAS,OAAO,CACd,KAAc,EACd,EAAM,EACN,IAAU;IAEV,OAAO,IAAI,KAAK,MAAM;QACpB,CAAC,CAAC,KAAK,KAAK,EAAE;QACd,CAAC,CAAC,4BAA4B;YAC5B,OAAO,KAAK,KAAK,QAAQ;gBACvB,KAAK,CAAC,MAAM,KAAK,EAAE,CAAC,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM;gBAC5C,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,SAAS;gBAC5C,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;gBACpB,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;AAC5B,CAAC;AAgBD,SAAgB,QAAQ,CACtB,CAAI,EACJ,EAAM,EACN,IAAU;IAEV,OAAO,QAAQ,CAAC,CAAC,CAAC,IAAI,OAAO,IAAI,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,EAAE,IAAI,CAAC,CAAA;AAClE,CAAC;AAED,SAAgB,WAAW,CACzB,CAAI,EACJ,EAAM,EACN,IAAU;IAEV,OAAO,CACL,QAAQ,CAAC,CAAC,CAAC;QACX,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAC5E,CAAA;AACH,CAAC;AAMD;;;GAGG;AACH,SAAgB,WAAW,CAAsB,QAAW;IAC1D,OAAO,UAAa,CAAI;QACtB,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAA;IAC5B,CAAC,CAAA;AACH,CAAC","sourcesContent":["/**\n * GENERATED CODE - DO NOT MODIFY\n */\n\nimport { type ValidationResult } from '@atproto/lexicon'\n\nexport type OmitKey<T, K extends keyof T> = {\n [K2 in keyof T as K2 extends K ? never : K2]: T[K2]\n}\n\nexport type $Typed<V, T extends string = string> = V & { $type: T }\nexport type Un$Typed<V extends { $type?: string }> = OmitKey<V, '$type'>\n\nexport type $Type<Id extends string, Hash extends string> = Hash extends 'main'\n ? Id\n : `${Id}#${Hash}`\n\nfunction isObject<V>(v: V): v is V & object {\n return v != null && typeof v === 'object'\n}\n\nfunction is$type<Id extends string, Hash extends string>(\n $type: unknown,\n id: Id,\n hash: Hash,\n): $type is $Type<Id, Hash> {\n return hash === 'main'\n ? $type === id\n : // $type === `${id}#${hash}`\n typeof $type === 'string' &&\n $type.length === id.length + 1 + hash.length &&\n $type.charCodeAt(id.length) === 35 /* '#' */ &&\n $type.startsWith(id) &&\n $type.endsWith(hash)\n}\n\nexport type $TypedObject<\n V,\n Id extends string,\n Hash extends string,\n> = V extends {\n $type: $Type<Id, Hash>\n}\n ? V\n : V extends { $type?: string }\n ? V extends { $type?: infer T extends $Type<Id, Hash> }\n ? V & { $type: T }\n : never\n : V & { $type: $Type<Id, Hash> }\n\nexport function is$typed<V, Id extends string, Hash extends string>(\n v: V,\n id: Id,\n hash: Hash,\n): v is $TypedObject<V, Id, Hash> {\n return isObject(v) && '$type' in v && is$type(v.$type, id, hash)\n}\n\nexport function maybe$typed<V, Id extends string, Hash extends string>(\n v: V,\n id: Id,\n hash: Hash,\n): v is V & object & { $type?: $Type<Id, Hash> } {\n return (\n isObject(v) &&\n ('$type' in v ? v.$type === undefined || is$type(v.$type, id, hash) : true)\n )\n}\n\nexport type Validator<R = unknown> = (v: unknown) => ValidationResult<R>\nexport type ValidatorParam<V extends Validator> =\n V extends Validator<infer R> ? R : never\n\n/**\n * Utility function that allows to convert a \"validate*\" utility function into a\n * type predicate.\n */\nexport function asPredicate<V extends Validator>(validate: V) {\n return function <T>(v: T): v is T & ValidatorParam<V> {\n return validate(v).success\n }\n}\n"]}
package/dist/const.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"const.js","sourceRoot":"","sources":["../src/const.ts"],"names":[],"mappings":";;;AAAa,QAAA,gBAAgB,GAAG,kCAAkC,CAAA"}
1
+ {"version":3,"file":"const.js","sourceRoot":"","sources":["../src/const.ts"],"names":[],"mappings":";;;AAAa,QAAA,gBAAgB,GAAG,kCAAkC,CAAA","sourcesContent":["export const BSKY_LABELER_DID = 'did:plc:ar7c4by46qjdydhdevvrndac'\n"]}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,8CAA2C;AAC3C,gDAAgE;AAEhE,0CAAuC;AAA9B,+FAAA,KAAK,OAAA;AACd,4CAMyB;AALvB,kGAAA,OAAO,OAAA;AACP,0GAAA,eAAe,OAAA;AACf,oGAAA,SAAS,OAAA;AACT,oGAAA,SAAS,OAAA;AACT,uGAAA,YAAY,OAAA;AAEd,kDAAmD;AAA1C,2GAAA,aAAa,OAAA;AACtB,0CAAuB;AACvB,0CAAuB;AACvB,yCAAsB;AACtB,2CAAwB;AACxB,8CAA2C;AAAlC,mGAAA,OAAO,OAAA;AAEhB,sCAA2C;AAAlC,mGAAA,WAAW,OAAA;AACpB,wDAAqC;AACrC,2DAAwC;AACxC,sDAAmC;AACnC,mDAAgC;AAChC,+CAA4B;AAC5B,qDAAkC;AAClC,2CAAwB;AACxB,oDAA0E;AAAjE,gHAAA,sBAAsB,OAAA;AAAE,gGAAA,MAAM,OAAA;AACvC,iCAA+B;AAAtB,8FAAA,KAAK,OAAA;AAEd,yCAA4D;AAAnD,qGAAA,QAAQ,OAAA;AACjB,yCAA+C;AAAtC,8GAAA,iBAAiB,OAAA;AAC1B,2CAAwC;AAA/B,uGAAA,SAAS,OAAA;AAElB,yCAGoB;AAFlB,kBAAkB;AAClB,oGAAA,QAAQ,OAAW;AAGrB,+EAA+E;AAC/E,2BAA2B;AACd,QAAA,QAAQ,GAAG,IAAI,kBAAQ,CAAC,mBAAgB,CAAC,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,8CAA2C;AAC3C,gDAAgE;AAEhE,0CAAuC;AAA9B,+FAAA,KAAK,OAAA;AACd,4CAMyB;AALvB,kGAAA,OAAO,OAAA;AACP,0GAAA,eAAe,OAAA;AACf,oGAAA,SAAS,OAAA;AACT,oGAAA,SAAS,OAAA;AACT,uGAAA,YAAY,OAAA;AAEd,kDAAmD;AAA1C,2GAAA,aAAa,OAAA;AACtB,0CAAuB;AACvB,0CAAuB;AACvB,yCAAsB;AACtB,2CAAwB;AACxB,8CAA2C;AAAlC,mGAAA,OAAO,OAAA;AAEhB,sCAA2C;AAAlC,mGAAA,WAAW,OAAA;AACpB,wDAAqC;AACrC,2DAAwC;AACxC,sDAAmC;AACnC,mDAAgC;AAChC,+CAA4B;AAC5B,qDAAkC;AAClC,2CAAwB;AACxB,oDAA0E;AAAjE,gHAAA,sBAAsB,OAAA;AAAE,gGAAA,MAAM,OAAA;AACvC,iCAA+B;AAAtB,8FAAA,KAAK,OAAA;AAEd,yCAA4D;AAAnD,qGAAA,QAAQ,OAAA;AACjB,yCAA+C;AAAtC,8GAAA,iBAAiB,OAAA;AAC1B,2CAAwC;AAA/B,uGAAA,SAAS,OAAA;AAElB,yCAGoB;AAFlB,kBAAkB;AAClB,oGAAA,QAAQ,OAAW;AAGrB,+EAA+E;AAC/E,2BAA2B;AACd,QAAA,QAAQ,GAAG,IAAI,kBAAQ,CAAC,mBAAgB,CAAC,CAAA","sourcesContent":["import { Lexicons } from '@atproto/lexicon'\nimport { lexicons as internalLexicons } from './client/lexicons'\n\nexport { AtUri } from '@atproto/syntax'\nexport {\n BlobRef,\n jsonStringToLex,\n jsonToLex,\n lexToJson,\n stringifyLex,\n} from '@atproto/lexicon'\nexport { parseLanguage } from '@atproto/common-web'\nexport * from './types'\nexport * from './const'\nexport * from './util'\nexport * from './client'\nexport { schemas } from './client/lexicons'\nexport type { $Typed, Un$Typed } from './client/util'\nexport { asPredicate } from './client/util'\nexport * from './rich-text/rich-text'\nexport * from './rich-text/sanitization'\nexport * from './rich-text/unicode'\nexport * from './rich-text/util'\nexport * from './moderation'\nexport * from './moderation/types'\nexport * from './mocker'\nexport { DEFAULT_LABEL_SETTINGS, LABELS } from './moderation/const/labels'\nexport { Agent } from './agent'\n\nexport { AtpAgent, type AtpAgentOptions } from './atp-agent'\nexport { CredentialSession } from './atp-agent'\nexport { BskyAgent } from './bsky-agent'\n\nexport {\n /** @deprecated */\n AtpAgent as default,\n} from './atp-agent'\n\n// Expose a copy to prevent alteration of the internal Lexicon instance used by\n// the AtpBaseClient class.\nexport const lexicons = new Lexicons(internalLexicons)\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"mocker.js","sourceRoot":"","sources":["../src/mocker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mocker.js","sourceRoot":"","sources":["../src/mocker.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n AppBskyActorDefs,\n AppBskyEmbedRecord,\n AppBskyFeedDefs,\n AppBskyFeedPost,\n AppBskyGraphDefs,\n AppBskyNotificationListNotifications,\n ComAtprotoLabelDefs,\n} from './client'\nimport { $Typed, Un$Typed } from './client/util'\n\nconst FAKE_CID = 'bafyreiclp443lavogvhj3d2ob2cxbfuscni2k5jk7bebjzg7khl3esabwq'\n\nexport const mock = {\n post({\n text,\n facets,\n reply,\n embed,\n }: {\n text: string\n facets?: AppBskyFeedPost.Record['facets']\n reply?: AppBskyFeedPost.ReplyRef\n embed?: AppBskyFeedPost.Record['embed']\n }): $Typed<AppBskyFeedPost.Record> {\n return {\n $type: 'app.bsky.feed.post',\n text,\n facets,\n reply,\n embed,\n langs: ['en'],\n createdAt: new Date().toISOString(),\n }\n },\n\n postView({\n record,\n author,\n embed,\n replyCount,\n repostCount,\n likeCount,\n viewer,\n labels,\n }: {\n record: AppBskyFeedPost.Record\n author: AppBskyActorDefs.ProfileViewBasic\n embed?: AppBskyFeedDefs.PostView['embed']\n replyCount?: number\n repostCount?: number\n likeCount?: number\n viewer?: AppBskyFeedDefs.ViewerState\n labels?: ComAtprotoLabelDefs.Label[]\n }): $Typed<AppBskyFeedDefs.PostView> {\n return {\n $type: 'app.bsky.feed.defs#postView',\n uri: `at://${author.did}/app.bsky.feed.post/fake`,\n cid: FAKE_CID,\n author,\n record,\n embed,\n replyCount,\n repostCount,\n likeCount,\n indexedAt: new Date().toISOString(),\n viewer,\n labels,\n }\n },\n\n embedRecordView({\n record,\n author,\n labels,\n }: {\n record: AppBskyFeedPost.Record\n author: AppBskyActorDefs.ProfileViewBasic\n labels?: ComAtprotoLabelDefs.Label[]\n }): $Typed<AppBskyEmbedRecord.View> {\n return {\n $type: 'app.bsky.embed.record#view',\n record: {\n $type: 'app.bsky.embed.record#viewRecord',\n uri: `at://${author.did}/app.bsky.feed.post/fake`,\n cid: FAKE_CID,\n author,\n value: record,\n labels,\n indexedAt: new Date().toISOString(),\n },\n }\n },\n\n profileViewBasic({\n handle,\n displayName,\n description,\n viewer,\n labels,\n }: {\n handle: string\n displayName?: string\n description?: string\n viewer?: AppBskyActorDefs.ViewerState\n labels?: ComAtprotoLabelDefs.Label[]\n }): AppBskyActorDefs.ProfileViewBasic {\n return {\n did: `did:web:${handle}`,\n handle,\n displayName,\n // @ts-expect-error technically not in ProfileViewBasic but useful in some cases\n description,\n viewer,\n labels,\n }\n },\n\n actorViewerState({\n muted,\n mutedByList,\n blockedBy,\n blocking,\n blockingByList,\n following,\n followedBy,\n }: {\n muted?: boolean\n mutedByList?: AppBskyGraphDefs.ListViewBasic\n blockedBy?: boolean\n blocking?: string\n blockingByList?: AppBskyGraphDefs.ListViewBasic\n following?: string\n followedBy?: string\n }): AppBskyActorDefs.ViewerState {\n return {\n muted,\n mutedByList,\n blockedBy,\n blocking,\n blockingByList,\n following,\n followedBy,\n }\n },\n\n listViewBasic({ name }: { name: string }): AppBskyGraphDefs.ListViewBasic {\n return {\n uri: 'at://did:plc:fake/app.bsky.graph.list/fake',\n cid: FAKE_CID,\n name,\n purpose: 'app.bsky.graph.defs#modlist',\n indexedAt: new Date().toISOString(),\n }\n },\n\n replyNotification({\n author,\n record,\n labels,\n }: {\n record: AppBskyFeedPost.Record\n author: Un$Typed<AppBskyActorDefs.ProfileViewBasic>\n labels?: ComAtprotoLabelDefs.Label[]\n }): AppBskyNotificationListNotifications.Notification {\n return {\n uri: `at://${author.did}/app.bsky.feed.post/fake`,\n cid: FAKE_CID,\n author,\n reason: 'reply',\n reasonSubject: `at://${author.did}/app.bsky.feed.post/fake-parent`,\n record,\n isRead: false,\n indexedAt: new Date().toISOString(),\n labels,\n }\n },\n\n followNotification({\n author,\n subjectDid,\n labels,\n }: {\n author: Un$Typed<AppBskyActorDefs.ProfileViewBasic>\n subjectDid: string\n labels?: ComAtprotoLabelDefs.Label[]\n }): AppBskyNotificationListNotifications.Notification {\n return {\n uri: `at://${author.did}/app.bsky.graph.follow/fake`,\n cid: FAKE_CID,\n author,\n reason: 'follow',\n record: {\n $type: 'app.bsky.graph.follow',\n createdAt: new Date().toISOString(),\n subject: subjectDid,\n },\n isRead: false,\n indexedAt: new Date().toISOString(),\n labels,\n }\n },\n\n label({\n val,\n uri,\n src,\n }: {\n val: string\n uri: string\n src?: string\n }): ComAtprotoLabelDefs.Label {\n return {\n src: src || 'did:plc:fake-labeler',\n uri,\n val,\n cts: new Date().toISOString(),\n }\n },\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"labels.js","sourceRoot":"","sources":["../../../src/moderation/const/labels.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"labels.js","sourceRoot":"","sources":["../../../src/moderation/const/labels.ts"],"names":[],"mappings":"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","sourcesContent":["/** this doc is generated by ./scripts/code/labels.mjs **/\nimport { InterpretedLabelValueDefinition, LabelPreference } from '../types'\n\nexport type KnownLabelValue =\n | '!hide'\n | '!warn'\n | '!no-unauthenticated'\n | 'porn'\n | 'sexual'\n | 'nudity'\n | 'graphic-media'\n | 'gore'\n\nexport const DEFAULT_LABEL_SETTINGS: Record<string, LabelPreference> = {\n porn: 'hide',\n sexual: 'warn',\n nudity: 'ignore',\n 'graphic-media': 'warn',\n}\n\nexport const LABELS: Record<KnownLabelValue, InterpretedLabelValueDefinition> =\n {\n '!hide': {\n identifier: '!hide',\n configurable: false,\n defaultSetting: 'hide',\n flags: ['no-override', 'no-self'],\n severity: 'alert',\n blurs: 'content',\n behaviors: {\n account: {\n profileList: 'blur',\n profileView: 'blur',\n avatar: 'blur',\n banner: 'blur',\n displayName: 'blur',\n contentList: 'blur',\n contentView: 'blur',\n },\n profile: {\n avatar: 'blur',\n banner: 'blur',\n displayName: 'blur',\n },\n content: {\n contentList: 'blur',\n contentView: 'blur',\n },\n },\n locales: [],\n },\n '!warn': {\n identifier: '!warn',\n configurable: false,\n defaultSetting: 'warn',\n flags: ['no-self'],\n severity: 'none',\n blurs: 'content',\n behaviors: {\n account: {\n profileList: 'blur',\n profileView: 'blur',\n avatar: 'blur',\n banner: 'blur',\n contentList: 'blur',\n contentView: 'blur',\n },\n profile: {\n avatar: 'blur',\n banner: 'blur',\n displayName: 'blur',\n },\n content: {\n contentList: 'blur',\n contentView: 'blur',\n },\n },\n locales: [],\n },\n '!no-unauthenticated': {\n identifier: '!no-unauthenticated',\n configurable: false,\n defaultSetting: 'hide',\n flags: ['no-override', 'unauthed'],\n severity: 'none',\n blurs: 'content',\n behaviors: {\n account: {\n profileList: 'blur',\n profileView: 'blur',\n avatar: 'blur',\n banner: 'blur',\n displayName: 'blur',\n contentList: 'blur',\n contentView: 'blur',\n },\n profile: {\n avatar: 'blur',\n banner: 'blur',\n displayName: 'blur',\n },\n content: {\n contentList: 'blur',\n contentView: 'blur',\n },\n },\n locales: [],\n },\n porn: {\n identifier: 'porn',\n configurable: true,\n defaultSetting: 'hide',\n flags: ['adult'],\n severity: 'none',\n blurs: 'media',\n behaviors: {\n account: {\n avatar: 'blur',\n banner: 'blur',\n },\n profile: {\n avatar: 'blur',\n banner: 'blur',\n },\n content: {\n contentMedia: 'blur',\n },\n },\n locales: [],\n },\n sexual: {\n identifier: 'sexual',\n configurable: true,\n defaultSetting: 'warn',\n flags: ['adult'],\n severity: 'none',\n blurs: 'media',\n behaviors: {\n account: {\n avatar: 'blur',\n banner: 'blur',\n },\n profile: {\n avatar: 'blur',\n banner: 'blur',\n },\n content: {\n contentMedia: 'blur',\n },\n },\n locales: [],\n },\n nudity: {\n identifier: 'nudity',\n configurable: true,\n defaultSetting: 'ignore',\n flags: [],\n severity: 'none',\n blurs: 'media',\n behaviors: {\n account: {\n avatar: 'blur',\n banner: 'blur',\n },\n profile: {\n avatar: 'blur',\n banner: 'blur',\n },\n content: {\n contentMedia: 'blur',\n },\n },\n locales: [],\n },\n 'graphic-media': {\n identifier: 'graphic-media',\n flags: ['adult'],\n configurable: true,\n defaultSetting: 'warn',\n severity: 'none',\n blurs: 'media',\n behaviors: {\n account: {\n avatar: 'blur',\n banner: 'blur',\n },\n profile: {\n avatar: 'blur',\n banner: 'blur',\n },\n content: {\n contentMedia: 'blur',\n },\n },\n locales: [],\n },\n /** @deprecated alias for `graphic-media` */\n gore: {\n identifier: 'gore',\n flags: ['adult'],\n configurable: true,\n defaultSetting: 'warn',\n severity: 'none',\n blurs: 'media',\n behaviors: {\n account: {\n avatar: 'blur',\n banner: 'blur',\n },\n profile: {\n avatar: 'blur',\n banner: 'blur',\n },\n content: {\n contentMedia: 'blur',\n },\n },\n locales: [],\n },\n }\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"decision.js","sourceRoot":"","sources":["../../src/moderation/decision.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"decision.js","sourceRoot":"","sources":["../../src/moderation/decision.ts"],"names":[],"mappings":"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","sourcesContent":["import { AppBskyGraphDefs } from '../client/index'\nimport { LABELS } from './const/labels'\nimport { MuteWordMatch } from './mutewords'\nimport {\n BLOCK_BEHAVIOR,\n CUSTOM_LABEL_VALUE_RE,\n HIDE_BEHAVIOR,\n Label,\n LabelPreference,\n LabelTarget,\n MUTEWORD_BEHAVIOR,\n MUTE_BEHAVIOR,\n ModerationBehavior,\n ModerationCause,\n ModerationOpts,\n NOOP_BEHAVIOR,\n} from './types'\nimport { ModerationUI } from './ui'\n\nenum ModerationBehaviorSeverity {\n High,\n Medium,\n Low,\n}\n\nexport class ModerationDecision {\n did = ''\n isMe = false\n causes: ModerationCause[] = []\n\n constructor() {}\n\n static merge(\n ...decisions: (ModerationDecision | undefined)[]\n ): ModerationDecision {\n const decisionsFiltered = decisions.filter((v) => v != null)\n const decision = new ModerationDecision()\n if (decisionsFiltered[0]) {\n decision.did = decisionsFiltered[0].did\n decision.isMe = decisionsFiltered[0].isMe\n }\n decision.causes = decisionsFiltered.flatMap((d) => d.causes)\n return decision\n }\n\n downgrade() {\n for (const cause of this.causes) {\n cause.downgraded = true\n }\n return this\n }\n\n get blocked() {\n return !!this.blockCause\n }\n\n get muted() {\n return !!this.muteCause\n }\n\n get blockCause() {\n return this.causes.find(\n (cause) =>\n cause.type === 'blocking' ||\n cause.type === 'blocked-by' ||\n cause.type === 'block-other',\n )\n }\n\n get muteCause() {\n return this.causes.find((cause) => cause.type === 'muted')\n }\n\n get labelCauses() {\n return this.causes.filter((cause) => cause.type === 'label')\n }\n\n ui(context: keyof ModerationBehavior): ModerationUI {\n const ui = new ModerationUI()\n for (const cause of this.causes) {\n if (\n cause.type === 'blocking' ||\n cause.type === 'blocked-by' ||\n cause.type === 'block-other'\n ) {\n if (this.isMe) {\n continue\n }\n if (context === 'profileList' || context === 'contentList') {\n ui.filters.push(cause)\n }\n if (!cause.downgraded) {\n if (BLOCK_BEHAVIOR[context] === 'blur') {\n ui.noOverride = true\n ui.blurs.push(cause)\n } else if (BLOCK_BEHAVIOR[context] === 'alert') {\n ui.alerts.push(cause)\n } else if (BLOCK_BEHAVIOR[context] === 'inform') {\n ui.informs.push(cause)\n }\n }\n } else if (cause.type === 'muted') {\n if (this.isMe) {\n continue\n }\n if (context === 'profileList' || context === 'contentList') {\n ui.filters.push(cause)\n }\n if (!cause.downgraded) {\n if (MUTE_BEHAVIOR[context] === 'blur') {\n ui.blurs.push(cause)\n } else if (MUTE_BEHAVIOR[context] === 'alert') {\n ui.alerts.push(cause)\n } else if (MUTE_BEHAVIOR[context] === 'inform') {\n ui.informs.push(cause)\n }\n }\n } else if (cause.type === 'mute-word') {\n if (this.isMe) {\n continue\n }\n if (context === 'contentList') {\n ui.filters.push(cause)\n }\n if (!cause.downgraded) {\n if (MUTEWORD_BEHAVIOR[context] === 'blur') {\n ui.blurs.push(cause)\n } else if (MUTEWORD_BEHAVIOR[context] === 'alert') {\n ui.alerts.push(cause)\n } else if (MUTEWORD_BEHAVIOR[context] === 'inform') {\n ui.informs.push(cause)\n }\n }\n } else if (cause.type === 'hidden') {\n if (context === 'profileList' || context === 'contentList') {\n ui.filters.push(cause)\n }\n if (!cause.downgraded) {\n if (HIDE_BEHAVIOR[context] === 'blur') {\n ui.blurs.push(cause)\n } else if (HIDE_BEHAVIOR[context] === 'alert') {\n ui.alerts.push(cause)\n } else if (HIDE_BEHAVIOR[context] === 'inform') {\n ui.informs.push(cause)\n }\n }\n } else if (cause.type === 'label') {\n if (context === 'profileList' && cause.target === 'account') {\n if (cause.setting === 'hide' && !this.isMe) {\n ui.filters.push(cause)\n }\n } else if (\n context === 'contentList' &&\n (cause.target === 'account' || cause.target === 'content')\n ) {\n if (cause.setting === 'hide' && !this.isMe) {\n ui.filters.push(cause)\n }\n }\n if (!cause.downgraded) {\n if (cause.behavior[context] === 'blur') {\n ui.blurs.push(cause)\n if (cause.noOverride && !this.isMe) {\n ui.noOverride = true\n }\n } else if (cause.behavior[context] === 'alert') {\n ui.alerts.push(cause)\n } else if (cause.behavior[context] === 'inform') {\n ui.informs.push(cause)\n }\n }\n }\n }\n\n ui.filters.sort(sortByPriority)\n ui.blurs.sort(sortByPriority)\n\n return ui\n }\n\n setDid(did: string) {\n this.did = did\n }\n\n setIsMe(isMe: boolean) {\n this.isMe = isMe\n }\n\n addHidden(hidden: boolean) {\n if (hidden) {\n this.causes.push({\n type: 'hidden',\n source: { type: 'user' },\n priority: 6,\n })\n }\n }\n\n addMutedWord(matches: MuteWordMatch[] | undefined) {\n if (matches?.length) {\n this.causes.push({\n type: 'mute-word',\n source: { type: 'user' },\n priority: 6,\n matches,\n })\n }\n }\n\n addBlocking(blocking: string | undefined) {\n if (blocking) {\n this.causes.push({\n type: 'blocking',\n source: { type: 'user' },\n priority: 3,\n })\n }\n }\n\n addBlockingByList(\n blockingByList: AppBskyGraphDefs.ListViewBasic | undefined,\n ) {\n if (blockingByList) {\n this.causes.push({\n type: 'blocking',\n source: { type: 'list', list: blockingByList },\n priority: 3,\n })\n }\n }\n\n addBlockedBy(blockedBy: boolean | undefined) {\n if (blockedBy) {\n this.causes.push({\n type: 'blocked-by',\n source: { type: 'user' },\n priority: 4,\n })\n }\n }\n\n addBlockOther(blockOther: boolean | undefined) {\n if (blockOther) {\n this.causes.push({\n type: 'block-other',\n source: { type: 'user' },\n priority: 4,\n })\n }\n }\n\n addLabel(target: LabelTarget, label: Label, opts: ModerationOpts) {\n // look up the label definition\n const labelDef = CUSTOM_LABEL_VALUE_RE.test(label.val)\n ? opts.labelDefs?.[label.src]?.find(\n (def) => def.identifier === label.val,\n ) || LABELS[label.val]\n : LABELS[label.val]\n if (!labelDef) {\n // ignore labels we don't understand\n return\n }\n\n // look up the label preference\n const isSelf = label.src === this.did\n const labeler = isSelf\n ? undefined\n : opts.prefs.labelers.find((s) => s.did === label.src)\n\n if (!isSelf && !labeler) {\n return // skip labelers not configured by the user\n }\n if (isSelf && labelDef.flags.includes('no-self')) {\n return // skip self-labels that aren't supported\n }\n\n // establish the label preference for interpretation\n let labelPref: LabelPreference = labelDef.defaultSetting || 'ignore'\n if (!labelDef.configurable) {\n labelPref = labelDef.defaultSetting || 'hide'\n } else if (\n labelDef.flags.includes('adult') &&\n !opts.prefs.adultContentEnabled\n ) {\n labelPref = 'hide'\n } else if (labeler?.labels[labelDef.identifier]) {\n labelPref = labeler?.labels[labelDef.identifier]\n } else if (opts.prefs.labels[labelDef.identifier]) {\n labelPref = opts.prefs.labels[labelDef.identifier]\n }\n\n // ignore labels the user has asked to ignore\n if (labelPref === 'ignore') {\n return\n }\n\n // ignore 'unauthed' labels when the user is authed\n if (labelDef.flags.includes('unauthed') && !!opts.userDid) {\n return\n }\n\n // establish the priority of the label\n let priority: 1 | 2 | 5 | 7 | 8\n const severity = measureModerationBehaviorSeverity(\n labelDef.behaviors[target],\n )\n if (\n labelDef.flags.includes('no-override') ||\n (labelDef.flags.includes('adult') && !opts.prefs.adultContentEnabled)\n ) {\n priority = 1\n } else if (labelPref === 'hide') {\n priority = 2\n } else if (severity === ModerationBehaviorSeverity.High) {\n // blurring profile view or content view\n priority = 5\n } else if (severity === ModerationBehaviorSeverity.Medium) {\n // blurring content list or content media\n priority = 7\n } else {\n // blurring avatar, adding alerts\n priority = 8\n }\n\n let noOverride = false\n if (labelDef.flags.includes('no-override')) {\n noOverride = true\n } else if (\n labelDef.flags.includes('adult') &&\n !opts.prefs.adultContentEnabled\n ) {\n noOverride = true\n }\n\n this.causes.push({\n type: 'label',\n source:\n isSelf || !labeler\n ? { type: 'user' }\n : { type: 'labeler', did: labeler.did },\n label,\n labelDef,\n target,\n setting: labelPref,\n behavior: labelDef.behaviors[target] || NOOP_BEHAVIOR,\n noOverride,\n priority,\n })\n }\n\n addMuted(muted: boolean | undefined) {\n if (muted) {\n this.causes.push({\n type: 'muted',\n source: { type: 'user' },\n priority: 6,\n })\n }\n }\n\n addMutedByList(mutedByList: AppBskyGraphDefs.ListViewBasic | undefined) {\n if (mutedByList) {\n this.causes.push({\n type: 'muted',\n source: { type: 'list', list: mutedByList },\n priority: 6,\n })\n }\n }\n}\n\nfunction measureModerationBehaviorSeverity(\n beh: ModerationBehavior | undefined,\n): ModerationBehaviorSeverity {\n if (!beh) {\n return ModerationBehaviorSeverity.Low\n }\n if (beh.profileView === 'blur' || beh.contentView === 'blur') {\n return ModerationBehaviorSeverity.High\n }\n if (beh.contentList === 'blur' || beh.contentMedia === 'blur') {\n return ModerationBehaviorSeverity.Medium\n }\n return ModerationBehaviorSeverity.Low\n}\n\nfunction sortByPriority(a: ModerationCause, b: ModerationCause) {\n return a.priority - b.priority\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/moderation/index.ts"],"names":[],"mappings":";;;AAwBA,0CAQC;AAED,oCAKC;AAED,oDAKC;AAED,sDAKC;AAED,4CAKC;AA5DD,yCAA+C;AAC/C,gDAAkD;AAClD,8DAA+D;AAC/D,0DAA4D;AAC5D,0CAA4C;AAC5C,gDAAkD;AAClD,oDAAqD;AAUrD,2BAAmC;AAA1B,kGAAA,YAAY,OAAA;AACrB,uCAA+C;AAAtC,8GAAA,kBAAkB,OAAA;AAC3B,yCAA0D;AAAjD,yGAAA,YAAY,OAAA;AAAE,2GAAA,cAAc,OAAA;AACrC,+BAGe;AAFb,qHAAA,6BAA6B,OAAA;AAC7B,sHAAA,8BAA8B,OAAA;AAGhC,SAAgB,eAAe,CAC7B,OAAiC,EACjC,IAAoB;IAEpB,OAAO,6BAAkB,CAAC,KAAK,CAC7B,IAAA,uBAAa,EAAC,OAAO,EAAE,IAAI,CAAC,EAC5B,IAAA,uBAAa,EAAC,OAAO,EAAE,IAAI,CAAC,CAC7B,CAAA;AACH,CAAC;AAED,SAAgB,YAAY,CAC1B,OAA8B,EAC9B,IAAoB;IAEpB,OAAO,IAAA,iBAAU,EAAC,OAAO,EAAE,IAAI,CAAC,CAAA;AAClC,CAAC;AAED,SAAgB,oBAAoB,CAClC,OAAsC,EACtC,IAAoB;IAEpB,OAAO,IAAA,iCAAkB,EAAC,OAAO,EAAE,IAAI,CAAC,CAAA;AAC1C,CAAC;AAED,SAAgB,qBAAqB,CACnC,OAAuC,EACvC,IAAoB;IAEpB,OAAO,IAAA,oCAAmB,EAAC,OAAO,EAAE,IAAI,CAAC,CAAA;AAC3C,CAAC;AAED,SAAgB,gBAAgB,CAC9B,OAAkC,EAClC,IAAoB;IAEpB,OAAO,IAAA,0BAAc,EAAC,OAAO,EAAE,IAAI,CAAC,CAAA;AACtC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/moderation/index.ts"],"names":[],"mappings":";;;AAwBA,0CAQC;AAED,oCAKC;AAED,oDAKC;AAED,sDAKC;AAED,4CAKC;AA5DD,yCAA+C;AAC/C,gDAAkD;AAClD,8DAA+D;AAC/D,0DAA4D;AAC5D,0CAA4C;AAC5C,gDAAkD;AAClD,oDAAqD;AAUrD,2BAAmC;AAA1B,kGAAA,YAAY,OAAA;AACrB,uCAA+C;AAAtC,8GAAA,kBAAkB,OAAA;AAC3B,yCAA0D;AAAjD,yGAAA,YAAY,OAAA;AAAE,2GAAA,cAAc,OAAA;AACrC,+BAGe;AAFb,qHAAA,6BAA6B,OAAA;AAC7B,sHAAA,8BAA8B,OAAA;AAGhC,SAAgB,eAAe,CAC7B,OAAiC,EACjC,IAAoB;IAEpB,OAAO,6BAAkB,CAAC,KAAK,CAC7B,IAAA,uBAAa,EAAC,OAAO,EAAE,IAAI,CAAC,EAC5B,IAAA,uBAAa,EAAC,OAAO,EAAE,IAAI,CAAC,CAC7B,CAAA;AACH,CAAC;AAED,SAAgB,YAAY,CAC1B,OAA8B,EAC9B,IAAoB;IAEpB,OAAO,IAAA,iBAAU,EAAC,OAAO,EAAE,IAAI,CAAC,CAAA;AAClC,CAAC;AAED,SAAgB,oBAAoB,CAClC,OAAsC,EACtC,IAAoB;IAEpB,OAAO,IAAA,iCAAkB,EAAC,OAAO,EAAE,IAAI,CAAC,CAAA;AAC1C,CAAC;AAED,SAAgB,qBAAqB,CACnC,OAAuC,EACvC,IAAoB;IAEpB,OAAO,IAAA,oCAAmB,EAAC,OAAO,EAAE,IAAI,CAAC,CAAA;AAC3C,CAAC;AAED,SAAgB,gBAAgB,CAC9B,OAAkC,EAClC,IAAoB;IAEpB,OAAO,IAAA,0BAAc,EAAC,OAAO,EAAE,IAAI,CAAC,CAAA;AACtC,CAAC","sourcesContent":["import { ModerationDecision } from './decision'\nimport { decideAccount } from './subjects/account'\nimport { decideFeedGenerator } from './subjects/feed-generator'\nimport { decideNotification } from './subjects/notification'\nimport { decidePost } from './subjects/post'\nimport { decideProfile } from './subjects/profile'\nimport { decideUserList } from './subjects/user-list'\nimport {\n ModerationOpts,\n ModerationSubjectFeedGenerator,\n ModerationSubjectNotification,\n ModerationSubjectPost,\n ModerationSubjectProfile,\n ModerationSubjectUserList,\n} from './types'\n\nexport { ModerationUI } from './ui'\nexport { ModerationDecision } from './decision'\nexport { hasMutedWord, matchMuteWords } from './mutewords'\nexport {\n interpretLabelValueDefinition,\n interpretLabelValueDefinitions,\n} from './util'\n\nexport function moderateProfile(\n subject: ModerationSubjectProfile,\n opts: ModerationOpts,\n): ModerationDecision {\n return ModerationDecision.merge(\n decideAccount(subject, opts),\n decideProfile(subject, opts),\n )\n}\n\nexport function moderatePost(\n subject: ModerationSubjectPost,\n opts: ModerationOpts,\n): ModerationDecision {\n return decidePost(subject, opts)\n}\n\nexport function moderateNotification(\n subject: ModerationSubjectNotification,\n opts: ModerationOpts,\n): ModerationDecision {\n return decideNotification(subject, opts)\n}\n\nexport function moderateFeedGenerator(\n subject: ModerationSubjectFeedGenerator,\n opts: ModerationOpts,\n): ModerationDecision {\n return decideFeedGenerator(subject, opts)\n}\n\nexport function moderateUserList(\n subject: ModerationSubjectUserList,\n opts: ModerationOpts,\n): ModerationDecision {\n return decideUserList(subject, opts)\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"mutewords.js","sourceRoot":"","sources":["../../src/moderation/mutewords.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mutewords.js","sourceRoot":"","sources":["../../src/moderation/mutewords.ts"],"names":[],"mappings":";;AA+CA,wCAkHC;AAMD,oCAEC;AAzKD,sCAAkE;AAElE,MAAM,KAAK,GAAG;IACZ,4BAA4B,EAAE,uBAAuB;IACrD,MAAM,EAAE,uBAAuB;IAC/B,UAAU,EAAE,iBAAiB;IAC7B,aAAa,EAAE,mBAAmB;CACnC,CAAA;AAED;;;;;GAKG;AACH,MAAM,mBAAmB,GAAG;IAC1B,IAAI,EAAE,WAAW;IACjB,IAAI,EAAE,UAAU;IAChB,IAAI,EAAE,SAAS;IACf,IAAI,EAAE,OAAO;IACb,IAAI,EAAE,aAAa;CACpB,CAAA;AAsBD;;;GAGG;AACH,SAAgB,cAAc,CAAC,EAC7B,UAAU,EACV,IAAI,EACJ,MAAM,EACN,WAAW,EACX,SAAS,EACT,KAAK,GACE;IACP,MAAM,SAAS,GAAG,mBAAmB,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;IACpE,MAAM,IAAI,GAAI,EAAe;SAC1B,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC;SACzB,MAAM,CACL,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAC/B,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,6BAAoB,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CACxE,CACF;SACA,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAA;IAE9B,MAAM,OAAO,GAAoB,EAAE,CAAA;IAEnC,KAAK,EAAE,KAAK,MAAM,QAAQ,IAAI,UAAU,EAAE,CAAC;QACzC,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE,CAAA;QAC9C,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;QAEnC,kBAAkB;QAClB,IAAI,QAAQ,CAAC,SAAS,IAAI,QAAQ,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACrE,SAAQ;QAEV,IACE,QAAQ,CAAC,WAAW,KAAK,mBAAmB;YAC5C,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC;YAEjC,SAAQ;QAEV,oCAAoC;QACpC,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YAC7B,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAA;YAC3D,SAAQ;QACV,CAAC;QACD,4CAA4C;QAC5C,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC;YAAE,SAAQ;QACnD,2DAA2D;QAC3D,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,IAAI,SAAS,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YAC1E,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAA;YAC3D,SAAQ;QACV,CAAC;QACD,WAAW;QACX,IAAI,SAAS,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM;YAAE,SAAQ;QAChD,cAAc;QACd,IAAI,SAAS,KAAK,QAAQ,EAAE,CAAC;YAC3B,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAA;YAC3D,SAAQ;QACV,CAAC;QACD,6CAA6C;QAC7C,IAAI,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YACtE,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAA;YAC3D,SAAQ;QACV,CAAC;QAED,oCAAoC;QACpC,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,CAAA;QACjD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBACvB,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;gBACjD,SAAS,KAAK,CAAA;YAChB,CAAC;YAED,wEAAwE;YACxE,gCAAgC;YAChC,MAAM,sBAAsB,GAAG,IAAI,CAAC,OAAO,CACzC,KAAK,CAAC,4BAA4B,EAClC,EAAE,CACH,CAAA;YAED,IAAI,SAAS,KAAK,sBAAsB,EAAE,CAAC;gBACzC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;gBACjD,SAAS,KAAK,CAAA;YAChB,CAAC;YAED,IAAI,SAAS,CAAC,MAAM,GAAG,sBAAsB,CAAC,MAAM;gBAAE,SAAQ;YAE9D,IAAI,SAAS,CAAC,IAAI,CAAC,sBAAsB,CAAC,EAAE,CAAC;gBAC3C;;;mBAGG;gBACH,IAAI,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,EAAE,CAAC;oBACxC,SAAS,KAAK,CAAA;gBAChB,CAAC;gBAED,MAAM,UAAU,GAAG,sBAAsB,CAAC,OAAO,CAAC,UAAU,EAAE,GAAG,CAAC,CAAA;gBAClE,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;oBAC7B,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;oBACjD,SAAS,KAAK,CAAA;gBAChB,CAAC;gBAED,MAAM,cAAc,GAAG,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;gBACrD,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;oBACjC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;oBACjD,SAAS,KAAK,CAAA;gBAChB,CAAC;gBAED,MAAM,SAAS,GAAG,sBAAsB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;gBACzD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;oBACjC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;wBAC3B,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;wBACjD,SAAS,KAAK,CAAA;oBAChB,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAA;AAC7C,CAAC;AAED;;;GAGG;AACH,SAAgB,YAAY,CAAC,MAAc;IACzC,OAAO,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAA;AACjC,CAAC","sourcesContent":["import { AppBskyActorDefs, AppBskyRichtextFacet } from '../client'\n\nconst REGEX = {\n LEADING_TRAILING_PUNCTUATION: /(?:^\\p{P}+|\\p{P}+$)/gu,\n ESCAPE: /[[\\]{}()*+?.\\\\^$|\\s]/g,\n SEPARATORS: /[/\\-–—()[\\]_]+/g,\n WORD_BOUNDARY: /[\\s\\n\\t\\r\\f\\v]+?/g,\n}\n\n/**\n * List of 2-letter lang codes for languages that either don't use spaces, or\n * don't use spaces in a way conducive to word-based filtering.\n *\n * For these, we use a simple `String.includes` to check for a match.\n */\nconst LANGUAGE_EXCEPTIONS = [\n 'ja', // Japanese\n 'zh', // Chinese\n 'ko', // Korean\n 'th', // Thai\n 'vi', // Vietnamese\n]\n\nexport type MuteWordMatch = {\n /**\n * The `AppBskyActorDefs.MutedWord` that matched.\n */\n word: AppBskyActorDefs.MutedWord\n /**\n * The string that matched the muted word.\n */\n predicate: string\n}\n\nexport type Params = {\n mutedWords: AppBskyActorDefs.MutedWord[]\n text: string\n facets?: AppBskyRichtextFacet.Main[]\n outlineTags?: string[]\n languages?: string[]\n actor?: AppBskyActorDefs.ProfileView | AppBskyActorDefs.ProfileViewBasic\n}\n\n/**\n * Checks if the given text matches any of the muted words, returning an array\n * of matches. If no matches are found, returns `undefined`.\n */\nexport function matchMuteWords({\n mutedWords,\n text,\n facets,\n outlineTags,\n languages,\n actor,\n}: Params): MuteWordMatch[] | undefined {\n const exception = LANGUAGE_EXCEPTIONS.includes(languages?.[0] || '')\n const tags = ([] as string[])\n .concat(outlineTags || [])\n .concat(\n (facets || []).flatMap((facet) =>\n facet.features.filter(AppBskyRichtextFacet.isTag).map((tag) => tag.tag),\n ),\n )\n .map((t) => t.toLowerCase())\n\n const matches: MuteWordMatch[] = []\n\n outer: for (const muteWord of mutedWords) {\n const mutedWord = muteWord.value.toLowerCase()\n const postText = text.toLowerCase()\n\n // expired, ignore\n if (muteWord.expiresAt && muteWord.expiresAt < new Date().toISOString())\n continue\n\n if (\n muteWord.actorTarget === 'exclude-following' &&\n Boolean(actor?.viewer?.following)\n )\n continue\n\n // `content` applies to tags as well\n if (tags.includes(mutedWord)) {\n matches.push({ word: muteWord, predicate: muteWord.value })\n continue\n }\n // rest of the checks are for `content` only\n if (!muteWord.targets.includes('content')) continue\n // single character or other exception, has to use includes\n if ((mutedWord.length === 1 || exception) && postText.includes(mutedWord)) {\n matches.push({ word: muteWord, predicate: muteWord.value })\n continue\n }\n // too long\n if (mutedWord.length > postText.length) continue\n // exact match\n if (mutedWord === postText) {\n matches.push({ word: muteWord, predicate: muteWord.value })\n continue\n }\n // any muted phrase with space or punctuation\n if (/(?:\\s|\\p{P})+?/u.test(mutedWord) && postText.includes(mutedWord)) {\n matches.push({ word: muteWord, predicate: muteWord.value })\n continue\n }\n\n // check individual character groups\n const words = postText.split(REGEX.WORD_BOUNDARY)\n for (const word of words) {\n if (word === mutedWord) {\n matches.push({ word: muteWord, predicate: word })\n continue outer\n }\n\n // compare word without leading/trailing punctuation, but allow internal\n // punctuation (such as `s@ssy`)\n const wordTrimmedPunctuation = word.replace(\n REGEX.LEADING_TRAILING_PUNCTUATION,\n '',\n )\n\n if (mutedWord === wordTrimmedPunctuation) {\n matches.push({ word: muteWord, predicate: word })\n continue outer\n }\n\n if (mutedWord.length > wordTrimmedPunctuation.length) continue\n\n if (/\\p{P}+/u.test(wordTrimmedPunctuation)) {\n /**\n * Exit case for any punctuation within the predicate that we _do_\n * allow e.g. `and/or` should not match `Andor`.\n */\n if (/[/]+/.test(wordTrimmedPunctuation)) {\n continue outer\n }\n\n const spacedWord = wordTrimmedPunctuation.replace(/\\p{P}+/gu, ' ')\n if (spacedWord === mutedWord) {\n matches.push({ word: muteWord, predicate: word })\n continue outer\n }\n\n const contiguousWord = spacedWord.replace(/\\s/gu, '')\n if (contiguousWord === mutedWord) {\n matches.push({ word: muteWord, predicate: word })\n continue outer\n }\n\n const wordParts = wordTrimmedPunctuation.split(/\\p{P}+/u)\n for (const wordPart of wordParts) {\n if (wordPart === mutedWord) {\n matches.push({ word: muteWord, predicate: word })\n continue outer\n }\n }\n }\n }\n }\n\n return matches.length ? matches : undefined\n}\n\n/**\n * Checks if the given text matches any of the muted words, returning a boolean\n * if any matches are found.\n */\nexport function hasMutedWord(params: Params) {\n return !!matchMuteWords(params)\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"account.js","sourceRoot":"","sources":["../../../src/moderation/subjects/account.ts"],"names":[],"mappings":";;AAGA,sCA6BC;AAED,kDASC;AA3CD,0CAAgD;AAGhD,SAAgB,aAAa,CAC3B,OAAiC,EACjC,IAAoB;IAEpB,MAAM,GAAG,GAAG,IAAI,6BAAkB,EAAE,CAAA;IAEpC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;IACvB,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,KAAK,IAAI,CAAC,OAAO,CAAC,CAAA;IACzC,IAAI,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC;QAC1B,IAAI,OAAO,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC;YAChC,GAAG,CAAC,cAAc,CAAC,OAAO,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;QACjD,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;QACrC,CAAC;IACH,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC;QAC7B,IAAI,OAAO,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC;YACnC,GAAG,CAAC,iBAAiB,CAAC,OAAO,CAAC,MAAM,EAAE,cAAc,CAAC,CAAA;QACvD,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;QAC3C,CAAC;IACH,CAAC;IACD,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;IAE3C,KAAK,MAAM,KAAK,IAAI,mBAAmB,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QACxD,GAAG,CAAC,QAAQ,CAAC,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;IACtC,CAAC;IAED,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,SAAgB,mBAAmB,CAAC,MAAgB;IAClD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,EAAE,CAAA;IACX,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAClB,CAAC,KAAK,EAAE,EAAE,CACR,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,8BAA8B,CAAC;QACnD,KAAK,CAAC,GAAG,KAAK,qBAAqB,CACtC,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"account.js","sourceRoot":"","sources":["../../../src/moderation/subjects/account.ts"],"names":[],"mappings":";;AAGA,sCA6BC;AAED,kDASC;AA3CD,0CAAgD;AAGhD,SAAgB,aAAa,CAC3B,OAAiC,EACjC,IAAoB;IAEpB,MAAM,GAAG,GAAG,IAAI,6BAAkB,EAAE,CAAA;IAEpC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;IACvB,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,KAAK,IAAI,CAAC,OAAO,CAAC,CAAA;IACzC,IAAI,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC;QAC1B,IAAI,OAAO,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC;YAChC,GAAG,CAAC,cAAc,CAAC,OAAO,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;QACjD,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;QACrC,CAAC;IACH,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC;QAC7B,IAAI,OAAO,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC;YACnC,GAAG,CAAC,iBAAiB,CAAC,OAAO,CAAC,MAAM,EAAE,cAAc,CAAC,CAAA;QACvD,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;QAC3C,CAAC;IACH,CAAC;IACD,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;IAE3C,KAAK,MAAM,KAAK,IAAI,mBAAmB,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QACxD,GAAG,CAAC,QAAQ,CAAC,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;IACtC,CAAC;IAED,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,SAAgB,mBAAmB,CAAC,MAAgB;IAClD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,EAAE,CAAA;IACX,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAClB,CAAC,KAAK,EAAE,EAAE,CACR,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,8BAA8B,CAAC;QACnD,KAAK,CAAC,GAAG,KAAK,qBAAqB,CACtC,CAAA;AACH,CAAC","sourcesContent":["import { ModerationDecision } from '../decision'\nimport { Label, ModerationOpts, ModerationSubjectProfile } from '../types'\n\nexport function decideAccount(\n subject: ModerationSubjectProfile,\n opts: ModerationOpts,\n): ModerationDecision {\n const acc = new ModerationDecision()\n\n acc.setDid(subject.did)\n acc.setIsMe(subject.did === opts.userDid)\n if (subject.viewer?.muted) {\n if (subject.viewer?.mutedByList) {\n acc.addMutedByList(subject.viewer?.mutedByList)\n } else {\n acc.addMuted(subject.viewer?.muted)\n }\n }\n if (subject.viewer?.blocking) {\n if (subject.viewer?.blockingByList) {\n acc.addBlockingByList(subject.viewer?.blockingByList)\n } else {\n acc.addBlocking(subject.viewer?.blocking)\n }\n }\n acc.addBlockedBy(subject.viewer?.blockedBy)\n\n for (const label of filterAccountLabels(subject.labels)) {\n acc.addLabel('account', label, opts)\n }\n\n return acc\n}\n\nexport function filterAccountLabels(labels?: Label[]): Label[] {\n if (!labels) {\n return []\n }\n return labels.filter(\n (label) =>\n !label.uri.endsWith('/app.bsky.actor.profile/self') ||\n label.val === '!no-unauthenticated',\n )\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"feed-generator.js","sourceRoot":"","sources":["../../../src/moderation/subjects/feed-generator.ts"],"names":[],"mappings":";;AAKA,kDAkBC;AAvBD,0CAAgD;AAEhD,uCAAyC;AACzC,uCAAyC;AAEzC,SAAgB,mBAAmB,CACjC,OAAuC,EACvC,IAAoB;IAEpB,MAAM,GAAG,GAAG,IAAI,6BAAkB,EAAE,CAAA;IAEpC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;IAC/B,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,KAAK,IAAI,CAAC,OAAO,CAAC,CAAA;IACjD,IAAI,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;QAC3B,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnC,GAAG,CAAC,QAAQ,CAAC,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;QACtC,CAAC;IACH,CAAC;IACD,OAAO,6BAAkB,CAAC,KAAK,CAC7B,GAAG,EACH,IAAA,uBAAa,EAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,EACpC,IAAA,uBAAa,EAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CACrC,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"feed-generator.js","sourceRoot":"","sources":["../../../src/moderation/subjects/feed-generator.ts"],"names":[],"mappings":";;AAKA,kDAkBC;AAvBD,0CAAgD;AAEhD,uCAAyC;AACzC,uCAAyC;AAEzC,SAAgB,mBAAmB,CACjC,OAAuC,EACvC,IAAoB;IAEpB,MAAM,GAAG,GAAG,IAAI,6BAAkB,EAAE,CAAA;IAEpC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;IAC/B,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,KAAK,IAAI,CAAC,OAAO,CAAC,CAAA;IACjD,IAAI,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;QAC3B,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnC,GAAG,CAAC,QAAQ,CAAC,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;QACtC,CAAC;IACH,CAAC;IACD,OAAO,6BAAkB,CAAC,KAAK,CAC7B,GAAG,EACH,IAAA,uBAAa,EAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,EACpC,IAAA,uBAAa,EAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CACrC,CAAA;AACH,CAAC","sourcesContent":["import { ModerationDecision } from '../decision'\nimport { ModerationOpts, ModerationSubjectFeedGenerator } from '../types'\nimport { decideAccount } from './account'\nimport { decideProfile } from './profile'\n\nexport function decideFeedGenerator(\n subject: ModerationSubjectFeedGenerator,\n opts: ModerationOpts,\n): ModerationDecision {\n const acc = new ModerationDecision()\n\n acc.setDid(subject.creator.did)\n acc.setIsMe(subject.creator.did === opts.userDid)\n if (subject.labels?.length) {\n for (const label of subject.labels) {\n acc.addLabel('content', label, opts)\n }\n }\n return ModerationDecision.merge(\n acc,\n decideAccount(subject.creator, opts),\n decideProfile(subject.creator, opts),\n )\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"notification.js","sourceRoot":"","sources":["../../../src/moderation/subjects/notification.ts"],"names":[],"mappings":";;AAKA,gDAmBC;AAxBD,0CAAgD;AAEhD,uCAAyC;AACzC,uCAAyC;AAEzC,SAAgB,kBAAkB,CAChC,OAAsC,EACtC,IAAoB;IAEpB,MAAM,GAAG,GAAG,IAAI,6BAAkB,EAAE,CAAA;IAEpC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;IAC9B,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,KAAK,IAAI,CAAC,OAAO,CAAC,CAAA;IAChD,IAAI,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;QAC3B,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnC,GAAG,CAAC,QAAQ,CAAC,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;QACtC,CAAC;IACH,CAAC;IAED,OAAO,6BAAkB,CAAC,KAAK,CAC7B,GAAG,EACH,IAAA,uBAAa,EAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,EACnC,IAAA,uBAAa,EAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CACpC,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"notification.js","sourceRoot":"","sources":["../../../src/moderation/subjects/notification.ts"],"names":[],"mappings":";;AAKA,gDAmBC;AAxBD,0CAAgD;AAEhD,uCAAyC;AACzC,uCAAyC;AAEzC,SAAgB,kBAAkB,CAChC,OAAsC,EACtC,IAAoB;IAEpB,MAAM,GAAG,GAAG,IAAI,6BAAkB,EAAE,CAAA;IAEpC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;IAC9B,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,KAAK,IAAI,CAAC,OAAO,CAAC,CAAA;IAChD,IAAI,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;QAC3B,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnC,GAAG,CAAC,QAAQ,CAAC,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;QACtC,CAAC;IACH,CAAC;IAED,OAAO,6BAAkB,CAAC,KAAK,CAC7B,GAAG,EACH,IAAA,uBAAa,EAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,EACnC,IAAA,uBAAa,EAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CACpC,CAAA;AACH,CAAC","sourcesContent":["import { ModerationDecision } from '../decision'\nimport { ModerationOpts, ModerationSubjectNotification } from '../types'\nimport { decideAccount } from './account'\nimport { decideProfile } from './profile'\n\nexport function decideNotification(\n subject: ModerationSubjectNotification,\n opts: ModerationOpts,\n): ModerationDecision {\n const acc = new ModerationDecision()\n\n acc.setDid(subject.author.did)\n acc.setIsMe(subject.author.did === opts.userDid)\n if (subject.labels?.length) {\n for (const label of subject.labels) {\n acc.addLabel('content', label, opts)\n }\n }\n\n return ModerationDecision.merge(\n acc,\n decideAccount(subject.author, opts),\n decideProfile(subject.author, opts),\n )\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"post.js","sourceRoot":"","sources":["../../../src/moderation/subjects/post.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"post.js","sourceRoot":"","sources":["../../../src/moderation/subjects/post.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n AppBskyActorDefs,\n AppBskyEmbedExternal,\n AppBskyEmbedImages,\n AppBskyEmbedRecord,\n AppBskyEmbedRecordWithMedia,\n AppBskyFeedPost,\n} from '../../client'\nimport { $Typed } from '../../client/util'\nimport { ModerationDecision } from '../decision'\nimport { MuteWordMatch, matchMuteWords } from '../mutewords'\nimport { ModerationOpts, ModerationSubjectPost } from '../types'\nimport { decideAccount } from './account'\nimport { decideProfile } from './profile'\n\nexport function decidePost(\n subject: ModerationSubjectPost,\n opts: ModerationOpts,\n): ModerationDecision {\n return ModerationDecision.merge(\n decideSubject(subject, opts),\n decideEmbed(subject.embed, opts)?.downgrade(),\n decideAccount(subject.author, opts),\n decideProfile(subject.author, opts),\n )\n}\n\nfunction decideSubject(\n subject: ModerationSubjectPost,\n opts: ModerationOpts,\n): ModerationDecision {\n const acc = new ModerationDecision()\n\n acc.setDid(subject.author.did)\n acc.setIsMe(subject.author.did === opts.userDid)\n if (subject.labels?.length) {\n for (const label of subject.labels) {\n acc.addLabel('content', label, opts)\n }\n }\n acc.addHidden(checkHiddenPost(subject, opts.prefs.hiddenPosts))\n if (!acc.isMe) {\n acc.addMutedWord(matchAllMuteWords(subject, opts.prefs.mutedWords))\n }\n\n return acc\n}\n\nfunction decideEmbed(\n embed:\n | undefined\n | $Typed<AppBskyEmbedRecord.View>\n | $Typed<AppBskyEmbedRecordWithMedia.View>\n | { $type: string },\n opts: ModerationOpts,\n) {\n if (embed) {\n if (\n (AppBskyEmbedRecord.isView(embed) ||\n AppBskyEmbedRecordWithMedia.isView(embed)) &&\n AppBskyEmbedRecord.isViewRecord(embed.record)\n ) {\n // quote post\n return decideQuotedPost(embed.record, opts)\n } else if (\n AppBskyEmbedRecordWithMedia.isView(embed) &&\n AppBskyEmbedRecord.isViewRecord(embed.record.record)\n ) {\n // quoted post with media\n return decideQuotedPost(embed.record.record, opts)\n } else if (\n (AppBskyEmbedRecord.isView(embed) ||\n AppBskyEmbedRecordWithMedia.isView(embed)) &&\n AppBskyEmbedRecord.isViewBlocked(embed.record)\n ) {\n // blocked quote post\n return decideBlockedQuotedPost(embed.record, opts)\n } else if (\n AppBskyEmbedRecordWithMedia.isView(embed) &&\n AppBskyEmbedRecord.isViewBlocked(embed.record.record)\n ) {\n // blocked quoted post with media\n return decideBlockedQuotedPost(embed.record.record, opts)\n }\n }\n\n return undefined\n}\n\nfunction decideQuotedPost(\n subject: AppBskyEmbedRecord.ViewRecord,\n opts: ModerationOpts,\n) {\n const acc = new ModerationDecision()\n acc.setDid(subject.author.did)\n acc.setIsMe(subject.author.did === opts.userDid)\n if (subject.labels?.length) {\n for (const label of subject.labels) {\n acc.addLabel('content', label, opts)\n }\n }\n return ModerationDecision.merge(\n acc,\n decideAccount(subject.author, opts),\n decideProfile(subject.author, opts),\n )\n}\n\nfunction decideBlockedQuotedPost(\n subject: AppBskyEmbedRecord.ViewBlocked,\n opts: ModerationOpts,\n) {\n const acc = new ModerationDecision()\n acc.setDid(subject.author.did)\n acc.setIsMe(subject.author.did === opts.userDid)\n if (subject.author.viewer?.muted) {\n if (subject.author.viewer?.mutedByList) {\n acc.addMutedByList(subject.author.viewer?.mutedByList)\n } else {\n acc.addMuted(subject.author.viewer?.muted)\n }\n }\n if (subject.author.viewer?.blocking) {\n if (subject.author.viewer?.blockingByList) {\n acc.addBlockingByList(subject.author.viewer?.blockingByList)\n } else {\n acc.addBlocking(subject.author.viewer?.blocking)\n }\n }\n acc.addBlockedBy(subject.author.viewer?.blockedBy)\n return acc\n}\n\nfunction checkHiddenPost(\n subject: ModerationSubjectPost,\n hiddenPosts: string[] | undefined,\n) {\n if (!hiddenPosts?.length) {\n return false\n }\n if (hiddenPosts.includes(subject.uri)) {\n return true\n }\n if (subject.embed) {\n if (\n AppBskyEmbedRecord.isView(subject.embed) &&\n AppBskyEmbedRecord.isViewRecord(subject.embed.record) &&\n hiddenPosts.includes(subject.embed.record.uri)\n ) {\n return true\n }\n if (\n AppBskyEmbedRecordWithMedia.isView(subject.embed) &&\n AppBskyEmbedRecord.isViewRecord(subject.embed.record.record) &&\n hiddenPosts.includes(subject.embed.record.record.uri)\n ) {\n return true\n }\n }\n return false\n}\n\nfunction matchAllMuteWords(\n subject: ModerationSubjectPost,\n mutedWords: AppBskyActorDefs.MutedWord[] | undefined,\n): MuteWordMatch[] | undefined {\n if (!mutedWords?.length) {\n return\n }\n\n const postAuthor = subject.author\n\n if (AppBskyFeedPost.isRecord(subject.record)) {\n const post = subject.record as AppBskyFeedPost.Record\n\n const matches = matchMuteWords({\n mutedWords,\n text: post.text,\n facets: post.facets,\n outlineTags: post.tags,\n languages: post.langs,\n actor: postAuthor,\n })\n // post text\n if (matches) {\n return matches\n }\n\n if (post.embed && AppBskyEmbedImages.isMain(post.embed)) {\n // post images\n for (const image of post.embed.images) {\n const matches = matchMuteWords({\n mutedWords,\n text: image.alt,\n languages: post.langs,\n actor: postAuthor,\n })\n if (matches) {\n return matches\n }\n }\n }\n }\n\n const { embed } = subject\n if (embed) {\n // quote post\n if (\n (AppBskyEmbedRecord.isView(embed) ||\n AppBskyEmbedRecordWithMedia.isView(embed)) &&\n AppBskyEmbedRecord.isViewRecord(embed.record)\n ) {\n if (AppBskyFeedPost.isRecord(embed.record.value)) {\n const embeddedPost = embed.record.value as AppBskyFeedPost.Record\n const embedAuthor = embed.record.author\n const matches = matchMuteWords({\n mutedWords,\n text: embeddedPost.text,\n facets: embeddedPost.facets,\n outlineTags: embeddedPost.tags,\n languages: embeddedPost.langs,\n actor: embedAuthor,\n })\n\n // quoted post text\n if (matches) {\n return matches\n }\n\n // quoted post's images\n if (AppBskyEmbedImages.isMain(embeddedPost.embed)) {\n for (const image of embeddedPost.embed.images) {\n const matches = matchMuteWords({\n mutedWords,\n text: image.alt,\n languages: embeddedPost.langs,\n actor: embedAuthor,\n })\n if (matches) {\n return matches\n }\n }\n }\n\n // quoted post's link card\n if (AppBskyEmbedExternal.isMain(embeddedPost.embed)) {\n const { external } = embeddedPost.embed\n const matches = matchMuteWords({\n mutedWords,\n text: external.title + ' ' + external.description,\n languages: [],\n actor: embedAuthor,\n })\n if (matches) {\n return matches\n }\n }\n\n if (AppBskyEmbedRecordWithMedia.isMain(embeddedPost.embed)) {\n // quoted post's link card when it did a quote + media\n if (AppBskyEmbedExternal.isMain(embeddedPost.embed.media)) {\n const { external } = embeddedPost.embed.media\n const matches = matchMuteWords({\n mutedWords,\n text: external.title + ' ' + external.description,\n languages: [],\n actor: embedAuthor,\n })\n if (matches) {\n return matches\n }\n }\n\n // quoted post's images when it did a quote + media\n if (AppBskyEmbedImages.isMain(embeddedPost.embed.media)) {\n for (const image of embeddedPost.embed.media.images) {\n const matches = matchMuteWords({\n mutedWords,\n text: image.alt,\n languages: AppBskyFeedPost.isRecord(embeddedPost.record)\n ? embeddedPost.langs\n : [],\n actor: embedAuthor,\n })\n if (matches) {\n return matches\n }\n }\n }\n }\n }\n }\n // link card\n else if (AppBskyEmbedExternal.isView(embed)) {\n const { external } = embed\n const matches = matchMuteWords({\n mutedWords,\n text: external.title + ' ' + external.description,\n languages: [],\n actor: postAuthor,\n })\n if (matches) {\n return matches\n }\n }\n // quote post with media\n else if (\n AppBskyEmbedRecordWithMedia.isView(embed) &&\n AppBskyEmbedRecord.isViewRecord(embed.record.record)\n ) {\n const embedAuthor = embed.record.record.author\n\n // quoted post text\n if (AppBskyFeedPost.isRecord(embed.record.record.value)) {\n const post = embed.record.record.value as AppBskyFeedPost.Record\n const matches = matchMuteWords({\n mutedWords,\n text: post.text,\n facets: post.facets,\n outlineTags: post.tags,\n languages: post.langs,\n actor: embedAuthor,\n })\n if (matches) {\n return matches\n }\n }\n\n // quoted post images\n if (AppBskyEmbedImages.isView(embed.media)) {\n for (const image of embed.media.images) {\n const matches = matchMuteWords({\n mutedWords,\n text: image.alt,\n languages: AppBskyFeedPost.isRecord(subject.record)\n ? (subject.record as AppBskyFeedPost.Record).langs\n : [],\n actor: embedAuthor,\n })\n if (matches) {\n return matches\n }\n }\n }\n\n if (AppBskyEmbedExternal.isView(embed.media)) {\n const { external } = embed.media\n const matches = matchMuteWords({\n mutedWords,\n text: external.title + ' ' + external.description,\n languages: [],\n actor: embedAuthor,\n })\n if (matches) {\n return matches\n }\n }\n }\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"profile.js","sourceRoot":"","sources":["../../../src/moderation/subjects/profile.ts"],"names":[],"mappings":";;AAGA,sCAaC;AAED,kDAOC;AAzBD,0CAAgD;AAGhD,SAAgB,aAAa,CAC3B,OAAiC,EACjC,IAAoB;IAEpB,MAAM,GAAG,GAAG,IAAI,6BAAkB,EAAE,CAAA;IAEpC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;IACvB,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,KAAK,IAAI,CAAC,OAAO,CAAC,CAAA;IACzC,KAAK,MAAM,KAAK,IAAI,mBAAmB,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QACxD,GAAG,CAAC,QAAQ,CAAC,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;IACtC,CAAC;IAED,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,SAAgB,mBAAmB,CAAC,MAAgB;IAClD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,EAAE,CAAA;IACX,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAC7B,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,8BAA8B,CAAC,CACnD,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"profile.js","sourceRoot":"","sources":["../../../src/moderation/subjects/profile.ts"],"names":[],"mappings":";;AAGA,sCAaC;AAED,kDAOC;AAzBD,0CAAgD;AAGhD,SAAgB,aAAa,CAC3B,OAAiC,EACjC,IAAoB;IAEpB,MAAM,GAAG,GAAG,IAAI,6BAAkB,EAAE,CAAA;IAEpC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;IACvB,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,KAAK,IAAI,CAAC,OAAO,CAAC,CAAA;IACzC,KAAK,MAAM,KAAK,IAAI,mBAAmB,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QACxD,GAAG,CAAC,QAAQ,CAAC,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;IACtC,CAAC;IAED,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,SAAgB,mBAAmB,CAAC,MAAgB;IAClD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,EAAE,CAAA;IACX,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAC7B,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,8BAA8B,CAAC,CACnD,CAAA;AACH,CAAC","sourcesContent":["import { ModerationDecision } from '../decision'\nimport { Label, ModerationOpts, ModerationSubjectProfile } from '../types'\n\nexport function decideProfile(\n subject: ModerationSubjectProfile,\n opts: ModerationOpts,\n): ModerationDecision {\n const acc = new ModerationDecision()\n\n acc.setDid(subject.did)\n acc.setIsMe(subject.did === opts.userDid)\n for (const label of filterProfileLabels(subject.labels)) {\n acc.addLabel('profile', label, opts)\n }\n\n return acc\n}\n\nexport function filterProfileLabels(labels?: Label[]): Label[] {\n if (!labels) {\n return []\n }\n return labels.filter((label) =>\n label.uri.endsWith('/app.bsky.actor.profile/self'),\n )\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"user-list.js","sourceRoot":"","sources":["../../../src/moderation/subjects/user-list.ts"],"names":[],"mappings":";;AAOA,wCAoCC;AA3CD,4CAAuC;AAEvC,0CAAgD;AAEhD,uCAAyC;AACzC,uCAAyC;AAEzC,SAAgB,cAAc,CAC5B,OAAkC,EAClC,IAAoB;IAEpB,MAAM,GAAG,GAAG,IAAI,6BAAkB,EAAE,CAAA;IAEpC,MAAM,OAAO;IACX,sFAAsF;IACtF,SAAS,IAAI,OAAO,IAAI,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC;QAChD,CAAC,CAAC,OAAO,CAAC,OAAO;QACjB,CAAC,CAAC,SAAS,CAAA;IAEf,IAAI,OAAO,EAAE,CAAC;QACZ,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QACvB,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,KAAK,IAAI,CAAC,OAAO,CAAC,CAAA;QACzC,IAAI,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;YAC3B,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBACnC,GAAG,CAAC,QAAQ,CAAC,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;YACtC,CAAC;QACH,CAAC;QACD,OAAO,6BAAkB,CAAC,KAAK,CAC7B,GAAG,EACH,IAAA,uBAAa,EAAC,OAAO,EAAE,IAAI,CAAC,EAC5B,IAAA,uBAAa,EAAC,OAAO,EAAE,IAAI,CAAC,CAC7B,CAAA;IACH,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,cAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAA;IAClD,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;IACtB,GAAG,CAAC,OAAO,CAAC,UAAU,KAAK,IAAI,CAAC,OAAO,CAAC,CAAA;IACxC,IAAI,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;QAC3B,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnC,GAAG,CAAC,QAAQ,CAAC,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;QACtC,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,SAAS,SAAS,CAAC,CAAM;IACvB,OAAO,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,KAAK,IAAI,CAAC,CAAA;AACjD,CAAC"}
1
+ {"version":3,"file":"user-list.js","sourceRoot":"","sources":["../../../src/moderation/subjects/user-list.ts"],"names":[],"mappings":";;AAOA,wCAoCC;AA3CD,4CAAuC;AAEvC,0CAAgD;AAEhD,uCAAyC;AACzC,uCAAyC;AAEzC,SAAgB,cAAc,CAC5B,OAAkC,EAClC,IAAoB;IAEpB,MAAM,GAAG,GAAG,IAAI,6BAAkB,EAAE,CAAA;IAEpC,MAAM,OAAO;IACX,sFAAsF;IACtF,SAAS,IAAI,OAAO,IAAI,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC;QAChD,CAAC,CAAC,OAAO,CAAC,OAAO;QACjB,CAAC,CAAC,SAAS,CAAA;IAEf,IAAI,OAAO,EAAE,CAAC;QACZ,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QACvB,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,KAAK,IAAI,CAAC,OAAO,CAAC,CAAA;QACzC,IAAI,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;YAC3B,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBACnC,GAAG,CAAC,QAAQ,CAAC,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;YACtC,CAAC;QACH,CAAC;QACD,OAAO,6BAAkB,CAAC,KAAK,CAC7B,GAAG,EACH,IAAA,uBAAa,EAAC,OAAO,EAAE,IAAI,CAAC,EAC5B,IAAA,uBAAa,EAAC,OAAO,EAAE,IAAI,CAAC,CAC7B,CAAA;IACH,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,cAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAA;IAClD,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;IACtB,GAAG,CAAC,OAAO,CAAC,UAAU,KAAK,IAAI,CAAC,OAAO,CAAC,CAAA;IACxC,IAAI,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;QAC3B,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnC,GAAG,CAAC,QAAQ,CAAC,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;QACtC,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,SAAS,SAAS,CAAC,CAAM;IACvB,OAAO,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,KAAK,IAAI,CAAC,CAAA;AACjD,CAAC","sourcesContent":["import { AtUri } from '@atproto/syntax'\nimport { AppBskyActorDefs } from '../../client/index'\nimport { ModerationDecision } from '../decision'\nimport { ModerationOpts, ModerationSubjectUserList } from '../types'\nimport { decideAccount } from './account'\nimport { decideProfile } from './profile'\n\nexport function decideUserList(\n subject: ModerationSubjectUserList,\n opts: ModerationOpts,\n): ModerationDecision {\n const acc = new ModerationDecision()\n\n const creator =\n // Note: ListViewBasic should not contain a creator field, but let's support it anyway\n 'creator' in subject && isProfile(subject.creator)\n ? subject.creator\n : undefined\n\n if (creator) {\n acc.setDid(creator.did)\n acc.setIsMe(creator.did === opts.userDid)\n if (subject.labels?.length) {\n for (const label of subject.labels) {\n acc.addLabel('content', label, opts)\n }\n }\n return ModerationDecision.merge(\n acc,\n decideAccount(creator, opts),\n decideProfile(creator, opts),\n )\n }\n\n const creatorDid = new AtUri(subject.uri).hostname\n acc.setDid(creatorDid)\n acc.setIsMe(creatorDid === opts.userDid)\n if (subject.labels?.length) {\n for (const label of subject.labels) {\n acc.addLabel('content', label, opts)\n }\n }\n return acc\n}\n\nfunction isProfile(v: any): v is AppBskyActorDefs.ProfileViewBasic {\n return v && typeof v === 'object' && 'did' in v\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/moderation/types.ts"],"names":[],"mappings":";;;AAWA,SAAS;AACT,IAAI;AAES,QAAA,qBAAqB,GAAG,WAAW,CAAA;AAenC,QAAA,cAAc,GAAuB;IAChD,WAAW,EAAE,MAAM;IACnB,WAAW,EAAE,OAAO;IACpB,MAAM,EAAE,MAAM;IACd,MAAM,EAAE,MAAM;IACd,WAAW,EAAE,MAAM;IACnB,WAAW,EAAE,MAAM;CACpB,CAAA;AACY,QAAA,aAAa,GAAuB;IAC/C,WAAW,EAAE,QAAQ;IACrB,WAAW,EAAE,OAAO;IACpB,WAAW,EAAE,MAAM;IACnB,WAAW,EAAE,QAAQ;CACtB,CAAA;AACY,QAAA,iBAAiB,GAAuB;IACnD,WAAW,EAAE,MAAM;IACnB,WAAW,EAAE,MAAM;CACpB,CAAA;AACY,QAAA,aAAa,GAAuB;IAC/C,WAAW,EAAE,MAAM;IACnB,WAAW,EAAE,MAAM;CACpB,CAAA;AACY,QAAA,aAAa,GAAuB,EAAE,CAAA"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/moderation/types.ts"],"names":[],"mappings":";;;AAWA,SAAS;AACT,IAAI;AAES,QAAA,qBAAqB,GAAG,WAAW,CAAA;AAenC,QAAA,cAAc,GAAuB;IAChD,WAAW,EAAE,MAAM;IACnB,WAAW,EAAE,OAAO;IACpB,MAAM,EAAE,MAAM;IACd,MAAM,EAAE,MAAM;IACd,WAAW,EAAE,MAAM;IACnB,WAAW,EAAE,MAAM;CACpB,CAAA;AACY,QAAA,aAAa,GAAuB;IAC/C,WAAW,EAAE,QAAQ;IACrB,WAAW,EAAE,OAAO;IACpB,WAAW,EAAE,MAAM;IACnB,WAAW,EAAE,QAAQ;CACtB,CAAA;AACY,QAAA,iBAAiB,GAAuB;IACnD,WAAW,EAAE,MAAM;IACnB,WAAW,EAAE,MAAM;CACpB,CAAA;AACY,QAAA,aAAa,GAAuB;IAC/C,WAAW,EAAE,MAAM;IACnB,WAAW,EAAE,MAAM;CACpB,CAAA;AACY,QAAA,aAAa,GAAuB,EAAE,CAAA","sourcesContent":["import {\n AppBskyActorDefs,\n AppBskyFeedDefs,\n AppBskyGraphDefs,\n AppBskyNotificationListNotifications,\n ChatBskyActorDefs,\n ComAtprotoLabelDefs,\n} from '../client/index'\nimport { KnownLabelValue } from './const/labels'\nimport { MuteWordMatch } from './mutewords'\n\n// syntax\n// =\n\nexport const CUSTOM_LABEL_VALUE_RE = /^[a-z-]+$/\n\n// behaviors\n// =\n\nexport interface ModerationBehavior {\n profileList?: 'blur' | 'alert' | 'inform'\n profileView?: 'blur' | 'alert' | 'inform'\n avatar?: 'blur' | 'alert'\n banner?: 'blur'\n displayName?: 'blur'\n contentList?: 'blur' | 'alert' | 'inform'\n contentView?: 'blur' | 'alert' | 'inform'\n contentMedia?: 'blur'\n}\nexport const BLOCK_BEHAVIOR: ModerationBehavior = {\n profileList: 'blur',\n profileView: 'alert',\n avatar: 'blur',\n banner: 'blur',\n contentList: 'blur',\n contentView: 'blur',\n}\nexport const MUTE_BEHAVIOR: ModerationBehavior = {\n profileList: 'inform',\n profileView: 'alert',\n contentList: 'blur',\n contentView: 'inform',\n}\nexport const MUTEWORD_BEHAVIOR: ModerationBehavior = {\n contentList: 'blur',\n contentView: 'blur',\n}\nexport const HIDE_BEHAVIOR: ModerationBehavior = {\n contentList: 'blur',\n contentView: 'blur',\n}\nexport const NOOP_BEHAVIOR: ModerationBehavior = {}\n\n// labels\n// =\n\nexport type Label = ComAtprotoLabelDefs.Label\nexport type LabelTarget = 'account' | 'profile' | 'content'\nexport type LabelPreference = 'ignore' | 'warn' | 'hide'\n\nexport type LabelValueDefinitionFlag =\n | 'no-override'\n | 'adult'\n | 'unauthed'\n | 'no-self'\n\nexport interface InterpretedLabelValueDefinition\n extends ComAtprotoLabelDefs.LabelValueDefinition {\n definedBy?: string | undefined // did of labeler or undefined for global\n configurable: boolean\n defaultSetting: LabelPreference // type narrowing\n flags: LabelValueDefinitionFlag[]\n behaviors: {\n account?: ModerationBehavior\n profile?: ModerationBehavior\n content?: ModerationBehavior\n }\n}\n\nexport type LabelDefinitionMap = Record<\n KnownLabelValue,\n InterpretedLabelValueDefinition\n>\n\n// subjects\n// =\n\nexport type ModerationSubjectProfile =\n | AppBskyActorDefs.ProfileViewBasic\n | AppBskyActorDefs.ProfileView\n | AppBskyActorDefs.ProfileViewDetailed\n | ChatBskyActorDefs.ProfileViewBasic\n\nexport type ModerationSubjectPost = AppBskyFeedDefs.PostView\n\nexport type ModerationSubjectNotification =\n AppBskyNotificationListNotifications.Notification\n\nexport type ModerationSubjectFeedGenerator = AppBskyFeedDefs.GeneratorView\n\nexport type ModerationSubjectUserList =\n | AppBskyGraphDefs.ListViewBasic\n | AppBskyGraphDefs.ListView\n\nexport type ModerationSubject =\n | ModerationSubjectProfile\n | ModerationSubjectPost\n | ModerationSubjectNotification\n | ModerationSubjectFeedGenerator\n | ModerationSubjectUserList\n\n// behaviors\n// =\n\nexport type ModerationCauseSource =\n | { type: 'user' }\n | { type: 'list'; list: AppBskyGraphDefs.ListViewBasic }\n | { type: 'labeler'; did: string }\n\nexport type ModerationCause =\n | {\n type: 'blocking'\n source: ModerationCauseSource\n priority: 3\n downgraded?: boolean\n }\n | {\n type: 'blocked-by'\n source: ModerationCauseSource\n priority: 4\n downgraded?: boolean\n }\n | {\n type: 'block-other'\n source: ModerationCauseSource\n priority: 4\n downgraded?: boolean\n }\n | {\n type: 'label'\n source: ModerationCauseSource\n label: Label\n labelDef: InterpretedLabelValueDefinition\n target: LabelTarget\n setting: LabelPreference\n behavior: ModerationBehavior\n noOverride: boolean\n priority: 1 | 2 | 5 | 7 | 8\n downgraded?: boolean\n }\n | {\n type: 'muted'\n source: ModerationCauseSource\n priority: 6\n downgraded?: boolean\n }\n | {\n type: 'mute-word'\n source: ModerationCauseSource\n priority: 6\n downgraded?: boolean\n matches: MuteWordMatch[]\n }\n | {\n type: 'hidden'\n source: ModerationCauseSource\n priority: 6\n downgraded?: boolean\n }\n\nexport interface ModerationPrefsLabeler {\n did: string\n labels: Record<string, LabelPreference>\n}\n\nexport interface ModerationPrefs {\n adultContentEnabled: boolean\n labels: Record<string, LabelPreference>\n labelers: ModerationPrefsLabeler[]\n mutedWords: AppBskyActorDefs.MutedWord[]\n hiddenPosts: string[]\n}\n\nexport interface ModerationOpts {\n userDid: string | undefined\n prefs: ModerationPrefs\n /**\n * Map of labeler did -> custom definitions\n */\n labelDefs?: Record<string, InterpretedLabelValueDefinition[]>\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"ui.js","sourceRoot":"","sources":["../../src/moderation/ui.ts"],"names":[],"mappings":";;;AAEA,MAAa,YAAY;IAAzB;QACE;;;;mBAAa,KAAK;WAAA;QAClB;;;;mBAA6B,EAAE;WAAA;QAC/B;;;;mBAA2B,EAAE;WAAA;QAC7B;;;;mBAA4B,EAAE;WAAA;QAC9B;;;;mBAA6B,EAAE;WAAA;IAajC,CAAC;IAZC,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,CAAA;IAClC,CAAC;IACD,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAA;IAChC,CAAC;IACD,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,CAAA;IACjC,CAAC;IACD,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,CAAA;IAClC,CAAC;CACF;AAlBD,oCAkBC"}
1
+ {"version":3,"file":"ui.js","sourceRoot":"","sources":["../../src/moderation/ui.ts"],"names":[],"mappings":";;;AAEA,MAAa,YAAY;IAAzB;QACE;;;;mBAAa,KAAK;WAAA;QAClB;;;;mBAA6B,EAAE;WAAA;QAC/B;;;;mBAA2B,EAAE;WAAA;QAC7B;;;;mBAA4B,EAAE;WAAA;QAC9B;;;;mBAA6B,EAAE;WAAA;IAajC,CAAC;IAZC,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,CAAA;IAClC,CAAC;IACD,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAA;IAChC,CAAC;IACD,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,CAAA;IACjC,CAAC;IACD,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,CAAA;IAClC,CAAC;CACF;AAlBD,oCAkBC","sourcesContent":["import { ModerationCause } from './types'\n\nexport class ModerationUI {\n noOverride = false\n filters: ModerationCause[] = []\n blurs: ModerationCause[] = []\n alerts: ModerationCause[] = []\n informs: ModerationCause[] = []\n get filter(): boolean {\n return this.filters.length !== 0\n }\n get blur(): boolean {\n return this.blurs.length !== 0\n }\n get alert(): boolean {\n return this.alerts.length !== 0\n }\n get inform(): boolean {\n return this.informs.length !== 0\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/moderation/util.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/moderation/util.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n AppBskyEmbedRecord,\n AppBskyEmbedRecordWithMedia,\n AppBskyLabelerDefs,\n ComAtprotoLabelDefs,\n} from '../client'\nimport { asPredicate } from '../client/util'\nimport {\n InterpretedLabelValueDefinition,\n LabelPreference,\n LabelValueDefinitionFlag,\n ModerationBehavior,\n} from './types'\n\nexport function isQuotedPost(embed: unknown): embed is AppBskyEmbedRecord.View {\n return Boolean(embed && AppBskyEmbedRecord.isView(embed))\n}\n\nexport function isQuotedPostWithMedia(\n embed: unknown,\n): embed is AppBskyEmbedRecordWithMedia.View {\n return Boolean(embed && AppBskyEmbedRecordWithMedia.isView(embed))\n}\n\nexport function interpretLabelValueDefinition(\n def: ComAtprotoLabelDefs.LabelValueDefinition,\n definedBy: string | undefined,\n): InterpretedLabelValueDefinition {\n const behaviors: {\n account: ModerationBehavior\n profile: ModerationBehavior\n content: ModerationBehavior\n } = {\n account: {},\n profile: {},\n content: {},\n }\n const alertOrInform: 'alert' | 'inform' | undefined =\n def.severity === 'alert'\n ? 'alert'\n : def.severity === 'inform'\n ? 'inform'\n : undefined\n if (def.blurs === 'content') {\n // target=account, blurs=content\n behaviors.account.profileList = alertOrInform\n behaviors.account.profileView = alertOrInform\n behaviors.account.contentList = 'blur'\n behaviors.account.contentView = def.adultOnly ? 'blur' : alertOrInform\n // target=profile, blurs=content\n behaviors.profile.profileList = alertOrInform\n behaviors.profile.profileView = alertOrInform\n // target=content, blurs=content\n behaviors.content.contentList = 'blur'\n behaviors.content.contentView = def.adultOnly ? 'blur' : alertOrInform\n } else if (def.blurs === 'media') {\n // target=account, blurs=media\n behaviors.account.profileList = alertOrInform\n behaviors.account.profileView = alertOrInform\n behaviors.account.avatar = 'blur'\n behaviors.account.banner = 'blur'\n // target=profile, blurs=media\n behaviors.profile.profileList = alertOrInform\n behaviors.profile.profileView = alertOrInform\n behaviors.profile.avatar = 'blur'\n behaviors.profile.banner = 'blur'\n // target=content, blurs=media\n behaviors.content.contentMedia = 'blur'\n } else if (def.blurs === 'none') {\n // target=account, blurs=none\n behaviors.account.profileList = alertOrInform\n behaviors.account.profileView = alertOrInform\n behaviors.account.contentList = alertOrInform\n behaviors.account.contentView = alertOrInform\n // target=profile, blurs=none\n behaviors.profile.profileList = alertOrInform\n behaviors.profile.profileView = alertOrInform\n // target=content, blurs=none\n behaviors.content.contentList = alertOrInform\n behaviors.content.contentView = alertOrInform\n }\n\n let defaultSetting: LabelPreference = 'warn'\n if (def.defaultSetting === 'hide' || def.defaultSetting === 'ignore') {\n defaultSetting = def.defaultSetting as LabelPreference\n }\n\n const flags: LabelValueDefinitionFlag[] = ['no-self']\n if (def.adultOnly) {\n flags.push('adult')\n }\n\n return {\n ...def,\n definedBy,\n configurable: true,\n defaultSetting,\n flags,\n behaviors,\n }\n}\n\nexport function interpretLabelValueDefinitions(\n labelerView: AppBskyLabelerDefs.LabelerViewDetailed,\n): InterpretedLabelValueDefinition[] {\n return (labelerView.policies?.labelValueDefinitions || [])\n .filter(asPredicate(ComAtprotoLabelDefs.validateLabelValueDefinition))\n .map((labelValDef) =>\n interpretLabelValueDefinition(labelValDef, labelerView.creator.did),\n )\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"predicate.js","sourceRoot":"","sources":["../src/predicate.ts"],"names":[],"mappings":";;;AAAA,0CAAsE;AACtE,wCAA2C;AAE9B,QAAA,cAAc,GAAG,IAAA,kBAAW,EAAC,2BAAmB,CAAC,cAAc,CAAC,CAAA;AAChE,QAAA,uBAAuB,GAAG,IAAA,kBAAW,EAChD,wBAAgB,CAAC,wBAAwB,CAC1C,CAAA;AACY,QAAA,uBAAuB,GAAG,IAAA,kBAAW,EAChD,wBAAgB,CAAC,wBAAwB,CAC1C,CAAA;AACY,QAAA,uBAAuB,GAAG,IAAA,kBAAW,EAChD,wBAAgB,CAAC,wBAAwB,CAC1C,CAAA;AACY,QAAA,mBAAmB,GAAG,IAAA,kBAAW,EAC5C,wBAAgB,CAAC,oBAAoB,CACtC,CAAA;AACY,QAAA,sBAAsB,GAAG,IAAA,kBAAW,EAC/C,wBAAgB,CAAC,uBAAuB,CACzC,CAAA;AACY,QAAA,oBAAoB,GAAG,IAAA,kBAAW,EAC7C,wBAAgB,CAAC,qBAAqB,CACvC,CAAA;AACY,QAAA,mBAAmB,GAAG,IAAA,kBAAW,EAC5C,wBAAgB,CAAC,oBAAoB,CACtC,CAAA;AACY,QAAA,qBAAqB,GAAG,IAAA,kBAAW,EAC9C,wBAAgB,CAAC,sBAAsB,CACxC,CAAA;AACY,QAAA,0BAA0B,GAAG,IAAA,kBAAW,EACnD,wBAAgB,CAAC,2BAA2B,CAC7C,CAAA;AACY,QAAA,kCAAkC,GAAG,IAAA,kBAAW,EAC3D,wBAAgB,CAAC,mCAAmC,CACrD,CAAA;AACY,QAAA,qBAAqB,GAAG,IAAA,kBAAW,EAC9C,wBAAgB,CAAC,sBAAsB,CACxC,CAAA;AACY,QAAA,uBAAuB,GAAG,IAAA,kBAAW,EAChD,wBAAgB,CAAC,wBAAwB,CAC1C,CAAA;AACY,QAAA,qBAAqB,GAAG,IAAA,kBAAW,EAC9C,wBAAgB,CAAC,sBAAsB,CACxC,CAAA;AACY,QAAA,wBAAwB,GAAG,IAAA,kBAAW,EACjD,wBAAgB,CAAC,yBAAyB,CAC3C,CAAA"}
1
+ {"version":3,"file":"predicate.js","sourceRoot":"","sources":["../src/predicate.ts"],"names":[],"mappings":";;;AAAA,0CAAsE;AACtE,wCAA2C;AAE9B,QAAA,cAAc,GAAG,IAAA,kBAAW,EAAC,2BAAmB,CAAC,cAAc,CAAC,CAAA;AAChE,QAAA,uBAAuB,GAAG,IAAA,kBAAW,EAChD,wBAAgB,CAAC,wBAAwB,CAC1C,CAAA;AACY,QAAA,uBAAuB,GAAG,IAAA,kBAAW,EAChD,wBAAgB,CAAC,wBAAwB,CAC1C,CAAA;AACY,QAAA,uBAAuB,GAAG,IAAA,kBAAW,EAChD,wBAAgB,CAAC,wBAAwB,CAC1C,CAAA;AACY,QAAA,mBAAmB,GAAG,IAAA,kBAAW,EAC5C,wBAAgB,CAAC,oBAAoB,CACtC,CAAA;AACY,QAAA,sBAAsB,GAAG,IAAA,kBAAW,EAC/C,wBAAgB,CAAC,uBAAuB,CACzC,CAAA;AACY,QAAA,oBAAoB,GAAG,IAAA,kBAAW,EAC7C,wBAAgB,CAAC,qBAAqB,CACvC,CAAA;AACY,QAAA,mBAAmB,GAAG,IAAA,kBAAW,EAC5C,wBAAgB,CAAC,oBAAoB,CACtC,CAAA;AACY,QAAA,qBAAqB,GAAG,IAAA,kBAAW,EAC9C,wBAAgB,CAAC,sBAAsB,CACxC,CAAA;AACY,QAAA,0BAA0B,GAAG,IAAA,kBAAW,EACnD,wBAAgB,CAAC,2BAA2B,CAC7C,CAAA;AACY,QAAA,kCAAkC,GAAG,IAAA,kBAAW,EAC3D,wBAAgB,CAAC,mCAAmC,CACrD,CAAA;AACY,QAAA,qBAAqB,GAAG,IAAA,kBAAW,EAC9C,wBAAgB,CAAC,sBAAsB,CACxC,CAAA;AACY,QAAA,uBAAuB,GAAG,IAAA,kBAAW,EAChD,wBAAgB,CAAC,wBAAwB,CAC1C,CAAA;AACY,QAAA,qBAAqB,GAAG,IAAA,kBAAW,EAC9C,wBAAgB,CAAC,sBAAsB,CACxC,CAAA;AACY,QAAA,wBAAwB,GAAG,IAAA,kBAAW,EACjD,wBAAgB,CAAC,yBAAyB,CAC3C,CAAA","sourcesContent":["import { AppBskyActorDefs, AppBskyActorProfile } from './client/index'\nimport { asPredicate } from './client/util'\n\nexport const isValidProfile = asPredicate(AppBskyActorProfile.validateRecord)\nexport const isValidAdultContentPref = asPredicate(\n AppBskyActorDefs.validateAdultContentPref,\n)\nexport const isValidBskyAppStatePref = asPredicate(\n AppBskyActorDefs.validateBskyAppStatePref,\n)\nexport const isValidContentLabelPref = asPredicate(\n AppBskyActorDefs.validateContentLabelPref,\n)\nexport const isValidFeedViewPref = asPredicate(\n AppBskyActorDefs.validateFeedViewPref,\n)\nexport const isValidHiddenPostsPref = asPredicate(\n AppBskyActorDefs.validateHiddenPostsPref,\n)\nexport const isValidInterestsPref = asPredicate(\n AppBskyActorDefs.validateInterestsPref,\n)\nexport const isValidLabelersPref = asPredicate(\n AppBskyActorDefs.validateLabelersPref,\n)\nexport const isValidMutedWordsPref = asPredicate(\n AppBskyActorDefs.validateMutedWordsPref,\n)\nexport const isValidPersonalDetailsPref = asPredicate(\n AppBskyActorDefs.validatePersonalDetailsPref,\n)\nexport const isValidPostInteractionSettingsPref = asPredicate(\n AppBskyActorDefs.validatePostInteractionSettingsPref,\n)\nexport const isValidSavedFeedsPref = asPredicate(\n AppBskyActorDefs.validateSavedFeedsPref,\n)\nexport const isValidSavedFeedsPrefV2 = asPredicate(\n AppBskyActorDefs.validateSavedFeedsPrefV2,\n)\nexport const isValidThreadViewPref = asPredicate(\n AppBskyActorDefs.validateThreadViewPref,\n)\nexport const isValidVerificationPrefs = asPredicate(\n AppBskyActorDefs.validateVerificationPrefs,\n)\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"detection.js","sourceRoot":"","sources":["../../src/rich-text/detection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"detection.js","sourceRoot":"","sources":["../../src/rich-text/detection.ts"],"names":[],"mappings":";;;;;AAYA,oCA8FC;AA1GD,gDAAuB;AAGvB,iCAKe;AAIf,SAAgB,YAAY,CAAC,IAAmB;IAC9C,IAAI,KAAK,CAAA;IACT,MAAM,MAAM,GAAY,EAAE,CAAA;IAC1B,CAAC;QACC,WAAW;QACX,MAAM,EAAE,GAAG,oBAAa,CAAA;QACxB,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;YACrC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC5D,SAAQ,CAAC,wBAAwB;YACnC,CAAC;YAED,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAC3D,MAAM,CAAC,IAAI,CAAC;gBACV,KAAK,EAAE,yBAAyB;gBAChC,KAAK,EAAE;oBACL,SAAS,EAAE,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC;oBAC5C,OAAO,EAAE,IAAI,CAAC,qBAAqB,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;iBACjE;gBACD,QAAQ,EAAE;oBACR;wBACE,KAAK,EAAE,iCAAiC;wBACxC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,8BAA8B;qBAC9C;iBACF;aACF,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IACD,CAAC;QACC,QAAQ;QACR,MAAM,EAAE,GAAG,gBAAS,CAAA;QACpB,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;YACrC,IAAI,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;YAClB,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC5B,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,EAAE,MAAM,CAAA;gBACnC,IAAI,CAAC,MAAM,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC;oBACtC,SAAQ;gBACV,CAAC;gBACD,GAAG,GAAG,WAAW,GAAG,EAAE,CAAA;YACxB,CAAC;YACD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,CAAA;YACvD,MAAM,KAAK,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAA;YACrD,0BAA0B;YAC1B,IAAI,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC1B,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;gBACtB,KAAK,CAAC,GAAG,EAAE,CAAA;YACb,CAAC;YACD,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC3C,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;gBACtB,KAAK,CAAC,GAAG,EAAE,CAAA;YACb,CAAC;YACD,MAAM,CAAC,IAAI,CAAC;gBACV,KAAK,EAAE;oBACL,SAAS,EAAE,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,KAAK,CAAC;oBAClD,OAAO,EAAE,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,GAAG,CAAC;iBAC/C;gBACD,QAAQ,EAAE;oBACR;wBACE,KAAK,EAAE,8BAA8B;wBACrC,GAAG;qBACJ;iBACF;aACF,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IACD,CAAC;QACC,MAAM,EAAE,GAAG,gBAAS,CAAA;QACpB,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;YACrC,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;YACxB,IAAI,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;YAElB,IAAI,CAAC,GAAG;gBAAE,SAAQ;YAElB,0CAA0C;YAC1C,GAAG,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,iCAA0B,EAAE,EAAE,CAAC,CAAA;YAExD,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,IAAI,GAAG,CAAC,MAAM,GAAG,EAAE;gBAAE,SAAQ;YAEjD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,GAAG,OAAO,CAAC,MAAM,CAAA;YAE1C,MAAM,CAAC,IAAI,CAAC;gBACV,KAAK,EAAE;oBACL,SAAS,EAAE,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC;oBAC5C,OAAO,EAAE,IAAI,CAAC,qBAAqB,CAAC,KAAK,GAAG,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC;iBAC5D;gBACD,QAAQ,EAAE;oBACR;wBACE,KAAK,EAAE,6BAA6B;wBACpC,GAAG,EAAE,GAAG;qBACT;iBACF;aACF,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAA;AAC/C,CAAC;AAED,SAAS,aAAa,CAAC,GAAW;IAChC,OAAO,CAAC,CAAC,cAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;QACzB,MAAM,CAAC,GAAG,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;QAC9B,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;YACb,OAAO,KAAK,CAAA;QACd,CAAC;QACD,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAA;IACnE,CAAC,CAAC,CAAA;AACJ,CAAC","sourcesContent":["import TLDs from 'tlds'\nimport { AppBskyRichtextFacet } from '../client'\nimport { UnicodeString } from './unicode'\nimport {\n MENTION_REGEX,\n TAG_REGEX,\n TRAILING_PUNCTUATION_REGEX,\n URL_REGEX,\n} from './util'\n\nexport type Facet = AppBskyRichtextFacet.Main\n\nexport function detectFacets(text: UnicodeString): Facet[] | undefined {\n let match\n const facets: Facet[] = []\n {\n // mentions\n const re = MENTION_REGEX\n while ((match = re.exec(text.utf16))) {\n if (!isValidDomain(match[3]) && !match[3].endsWith('.test')) {\n continue // probably not a handle\n }\n\n const start = text.utf16.indexOf(match[3], match.index) - 1\n facets.push({\n $type: 'app.bsky.richtext.facet',\n index: {\n byteStart: text.utf16IndexToUtf8Index(start),\n byteEnd: text.utf16IndexToUtf8Index(start + match[3].length + 1),\n },\n features: [\n {\n $type: 'app.bsky.richtext.facet#mention',\n did: match[3], // must be resolved afterwards\n },\n ],\n })\n }\n }\n {\n // links\n const re = URL_REGEX\n while ((match = re.exec(text.utf16))) {\n let uri = match[2]\n if (!uri.startsWith('http')) {\n const domain = match.groups?.domain\n if (!domain || !isValidDomain(domain)) {\n continue\n }\n uri = `https://${uri}`\n }\n const start = text.utf16.indexOf(match[2], match.index)\n const index = { start, end: start + match[2].length }\n // strip ending puncuation\n if (/[.,;:!?]$/.test(uri)) {\n uri = uri.slice(0, -1)\n index.end--\n }\n if (/[)]$/.test(uri) && !uri.includes('(')) {\n uri = uri.slice(0, -1)\n index.end--\n }\n facets.push({\n index: {\n byteStart: text.utf16IndexToUtf8Index(index.start),\n byteEnd: text.utf16IndexToUtf8Index(index.end),\n },\n features: [\n {\n $type: 'app.bsky.richtext.facet#link',\n uri,\n },\n ],\n })\n }\n }\n {\n const re = TAG_REGEX\n while ((match = re.exec(text.utf16))) {\n const leading = match[1]\n let tag = match[2]\n\n if (!tag) continue\n\n // strip ending punctuation and any spaces\n tag = tag.trim().replace(TRAILING_PUNCTUATION_REGEX, '')\n\n if (tag.length === 0 || tag.length > 64) continue\n\n const index = match.index + leading.length\n\n facets.push({\n index: {\n byteStart: text.utf16IndexToUtf8Index(index),\n byteEnd: text.utf16IndexToUtf8Index(index + 1 + tag.length),\n },\n features: [\n {\n $type: 'app.bsky.richtext.facet#tag',\n tag: tag,\n },\n ],\n })\n }\n }\n return facets.length > 0 ? facets : undefined\n}\n\nfunction isValidDomain(str: string): boolean {\n return !!TLDs.find((tld) => {\n const i = str.lastIndexOf(tld)\n if (i === -1) {\n return false\n }\n return str.charAt(i - 1) === '.' && i === str.length - tld.length\n })\n}\n"]}