@atproto/pds 0.4.182 → 0.4.184

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 (567) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/dist/account-manager/account-manager.js.map +1 -1
  3. package/dist/account-manager/db/index.js.map +1 -1
  4. package/dist/account-manager/db/migrations/001-init.js.map +1 -1
  5. package/dist/account-manager/db/migrations/002-account-deactivation.js.map +1 -1
  6. package/dist/account-manager/db/migrations/003-privileged-app-passwords.js.map +1 -1
  7. package/dist/account-manager/db/migrations/004-oauth.js.map +1 -1
  8. package/dist/account-manager/db/migrations/005-oauth-account-management.js.map +1 -1
  9. package/dist/account-manager/db/migrations/006-oauth-permission-sets.js.map +1 -1
  10. package/dist/account-manager/db/migrations/007-lexicon-failures-index.js.map +1 -1
  11. package/dist/account-manager/db/migrations/index.js.map +1 -1
  12. package/dist/account-manager/db/schema/account-device.js.map +1 -1
  13. package/dist/account-manager/db/schema/account.js.map +1 -1
  14. package/dist/account-manager/db/schema/actor.js.map +1 -1
  15. package/dist/account-manager/db/schema/app-password.js.map +1 -1
  16. package/dist/account-manager/db/schema/authorization-request.js.map +1 -1
  17. package/dist/account-manager/db/schema/authorized-client.js.map +1 -1
  18. package/dist/account-manager/db/schema/device.js.map +1 -1
  19. package/dist/account-manager/db/schema/email-token.js.map +1 -1
  20. package/dist/account-manager/db/schema/index.js.map +1 -1
  21. package/dist/account-manager/db/schema/invite-code.js.map +1 -1
  22. package/dist/account-manager/db/schema/lexicon.js.map +1 -1
  23. package/dist/account-manager/db/schema/refresh-token.js.map +1 -1
  24. package/dist/account-manager/db/schema/repo-root.js.map +1 -1
  25. package/dist/account-manager/db/schema/token.js.map +1 -1
  26. package/dist/account-manager/db/schema/used-refresh-token.js.map +1 -1
  27. package/dist/account-manager/helpers/account-device.js.map +1 -1
  28. package/dist/account-manager/helpers/account.js.map +1 -1
  29. package/dist/account-manager/helpers/auth.js.map +1 -1
  30. package/dist/account-manager/helpers/authorization-request.js.map +1 -1
  31. package/dist/account-manager/helpers/authorized-client.js.map +1 -1
  32. package/dist/account-manager/helpers/device.js.map +1 -1
  33. package/dist/account-manager/helpers/email-token.js.map +1 -1
  34. package/dist/account-manager/helpers/invite.js.map +1 -1
  35. package/dist/account-manager/helpers/lexicon.js.map +1 -1
  36. package/dist/account-manager/helpers/password.js.map +1 -1
  37. package/dist/account-manager/helpers/repo.js.map +1 -1
  38. package/dist/account-manager/helpers/scrypt.js.map +1 -1
  39. package/dist/account-manager/helpers/token.js.map +1 -1
  40. package/dist/account-manager/helpers/used-refresh-token.js.map +1 -1
  41. package/dist/account-manager/oauth-store.js.map +1 -1
  42. package/dist/account-manager/scope-reference-getter.js.map +1 -1
  43. package/dist/actor-store/actor-store-reader.js.map +1 -1
  44. package/dist/actor-store/actor-store-resources.js.map +1 -1
  45. package/dist/actor-store/actor-store-transactor.js.map +1 -1
  46. package/dist/actor-store/actor-store-writer.js.map +1 -1
  47. package/dist/actor-store/actor-store.js.map +1 -1
  48. package/dist/actor-store/blob/reader.js.map +1 -1
  49. package/dist/actor-store/blob/transactor.js.map +1 -1
  50. package/dist/actor-store/db/index.js.map +1 -1
  51. package/dist/actor-store/db/migrations/001-init.js.map +1 -1
  52. package/dist/actor-store/db/migrations/index.js.map +1 -1
  53. package/dist/actor-store/db/schema/account-pref.js.map +1 -1
  54. package/dist/actor-store/db/schema/backlink.js.map +1 -1
  55. package/dist/actor-store/db/schema/blob.js.map +1 -1
  56. package/dist/actor-store/db/schema/index.js.map +1 -1
  57. package/dist/actor-store/db/schema/record-blob.js.map +1 -1
  58. package/dist/actor-store/db/schema/record.js.map +1 -1
  59. package/dist/actor-store/db/schema/repo-block.js.map +1 -1
  60. package/dist/actor-store/db/schema/repo-root.js.map +1 -1
  61. package/dist/actor-store/migrate.js.map +1 -1
  62. package/dist/actor-store/preference/reader.js.map +1 -1
  63. package/dist/actor-store/preference/transactor.js.map +1 -1
  64. package/dist/actor-store/preference/util.js.map +1 -1
  65. package/dist/actor-store/record/reader.js.map +1 -1
  66. package/dist/actor-store/record/transactor.js.map +1 -1
  67. package/dist/actor-store/repo/reader.js.map +1 -1
  68. package/dist/actor-store/repo/sql-repo-reader.js.map +1 -1
  69. package/dist/actor-store/repo/sql-repo-transactor.js.map +1 -1
  70. package/dist/actor-store/repo/transactor.js.map +1 -1
  71. package/dist/api/app/bsky/actor/getPreferences.js.map +1 -1
  72. package/dist/api/app/bsky/actor/getProfile.js.map +1 -1
  73. package/dist/api/app/bsky/actor/getProfiles.js.map +1 -1
  74. package/dist/api/app/bsky/actor/index.js.map +1 -1
  75. package/dist/api/app/bsky/actor/putPreferences.js.map +1 -1
  76. package/dist/api/app/bsky/feed/getActorLikes.js.map +1 -1
  77. package/dist/api/app/bsky/feed/getAuthorFeed.js.map +1 -1
  78. package/dist/api/app/bsky/feed/getFeed.js.map +1 -1
  79. package/dist/api/app/bsky/feed/getPostThread.js.map +1 -1
  80. package/dist/api/app/bsky/feed/getTimeline.js.map +1 -1
  81. package/dist/api/app/bsky/feed/index.js.map +1 -1
  82. package/dist/api/app/bsky/index.js.map +1 -1
  83. package/dist/api/app/bsky/notification/index.js.map +1 -1
  84. package/dist/api/app/bsky/notification/registerPush.js.map +1 -1
  85. package/dist/api/app/bsky/util/resolver.js.map +1 -1
  86. package/dist/api/com/atproto/admin/deleteAccount.js.map +1 -1
  87. package/dist/api/com/atproto/admin/disableAccountInvites.js.map +1 -1
  88. package/dist/api/com/atproto/admin/disableInviteCodes.js.map +1 -1
  89. package/dist/api/com/atproto/admin/enableAccountInvites.js.map +1 -1
  90. package/dist/api/com/atproto/admin/getAccountInfo.js.map +1 -1
  91. package/dist/api/com/atproto/admin/getAccountInfos.js.map +1 -1
  92. package/dist/api/com/atproto/admin/getInviteCodes.js.map +1 -1
  93. package/dist/api/com/atproto/admin/getSubjectStatus.js.map +1 -1
  94. package/dist/api/com/atproto/admin/index.js.map +1 -1
  95. package/dist/api/com/atproto/admin/sendEmail.js.map +1 -1
  96. package/dist/api/com/atproto/admin/updateAccountEmail.js.map +1 -1
  97. package/dist/api/com/atproto/admin/updateAccountHandle.js.map +1 -1
  98. package/dist/api/com/atproto/admin/updateAccountPassword.js.map +1 -1
  99. package/dist/api/com/atproto/admin/updateSubjectStatus.js.map +1 -1
  100. package/dist/api/com/atproto/admin/util.js.map +1 -1
  101. package/dist/api/com/atproto/identity/getRecommendedDidCredentials.js.map +1 -1
  102. package/dist/api/com/atproto/identity/index.js.map +1 -1
  103. package/dist/api/com/atproto/identity/requestPlcOperationSignature.js.map +1 -1
  104. package/dist/api/com/atproto/identity/resolveHandle.js.map +1 -1
  105. package/dist/api/com/atproto/identity/signPlcOperation.js.map +1 -1
  106. package/dist/api/com/atproto/identity/submitPlcOperation.js.map +1 -1
  107. package/dist/api/com/atproto/identity/updateHandle.js.map +1 -1
  108. package/dist/api/com/atproto/index.js.map +1 -1
  109. package/dist/api/com/atproto/moderation/createReport.js.map +1 -1
  110. package/dist/api/com/atproto/moderation/index.js.map +1 -1
  111. package/dist/api/com/atproto/repo/applyWrites.js.map +1 -1
  112. package/dist/api/com/atproto/repo/createRecord.js.map +1 -1
  113. package/dist/api/com/atproto/repo/deleteRecord.js.map +1 -1
  114. package/dist/api/com/atproto/repo/describeRepo.js.map +1 -1
  115. package/dist/api/com/atproto/repo/getRecord.js.map +1 -1
  116. package/dist/api/com/atproto/repo/importRepo.js.map +1 -1
  117. package/dist/api/com/atproto/repo/index.js.map +1 -1
  118. package/dist/api/com/atproto/repo/listMissingBlobs.js.map +1 -1
  119. package/dist/api/com/atproto/repo/listRecords.js.map +1 -1
  120. package/dist/api/com/atproto/repo/putRecord.js.map +1 -1
  121. package/dist/api/com/atproto/repo/uploadBlob.js.map +1 -1
  122. package/dist/api/com/atproto/server/activateAccount.js.map +1 -1
  123. package/dist/api/com/atproto/server/checkAccountStatus.js.map +1 -1
  124. package/dist/api/com/atproto/server/confirmEmail.js.map +1 -1
  125. package/dist/api/com/atproto/server/createAccount.js.map +1 -1
  126. package/dist/api/com/atproto/server/createAppPassword.js.map +1 -1
  127. package/dist/api/com/atproto/server/createInviteCode.js.map +1 -1
  128. package/dist/api/com/atproto/server/createInviteCodes.js.map +1 -1
  129. package/dist/api/com/atproto/server/createSession.js.map +1 -1
  130. package/dist/api/com/atproto/server/deactivateAccount.js.map +1 -1
  131. package/dist/api/com/atproto/server/deleteAccount.js.map +1 -1
  132. package/dist/api/com/atproto/server/deleteSession.js.map +1 -1
  133. package/dist/api/com/atproto/server/describeServer.js.map +1 -1
  134. package/dist/api/com/atproto/server/getAccountInviteCodes.js.map +1 -1
  135. package/dist/api/com/atproto/server/getServiceAuth.js.map +1 -1
  136. package/dist/api/com/atproto/server/getSession.js.map +1 -1
  137. package/dist/api/com/atproto/server/index.js.map +1 -1
  138. package/dist/api/com/atproto/server/listAppPasswords.js.map +1 -1
  139. package/dist/api/com/atproto/server/refreshSession.js.map +1 -1
  140. package/dist/api/com/atproto/server/requestAccountDelete.js.map +1 -1
  141. package/dist/api/com/atproto/server/requestEmailConfirmation.js.map +1 -1
  142. package/dist/api/com/atproto/server/requestEmailUpdate.js.map +1 -1
  143. package/dist/api/com/atproto/server/requestPasswordReset.js.map +1 -1
  144. package/dist/api/com/atproto/server/reserveSigningKey.js.map +1 -1
  145. package/dist/api/com/atproto/server/resetPassword.js.map +1 -1
  146. package/dist/api/com/atproto/server/revokeAppPassword.js.map +1 -1
  147. package/dist/api/com/atproto/server/updateEmail.js.map +1 -1
  148. package/dist/api/com/atproto/server/util.js.map +1 -1
  149. package/dist/api/com/atproto/sync/deprecated/getCheckout.js.map +1 -1
  150. package/dist/api/com/atproto/sync/deprecated/getHead.js.map +1 -1
  151. package/dist/api/com/atproto/sync/getBlob.js.map +1 -1
  152. package/dist/api/com/atproto/sync/getBlocks.js.map +1 -1
  153. package/dist/api/com/atproto/sync/getLatestCommit.js.map +1 -1
  154. package/dist/api/com/atproto/sync/getRecord.js.map +1 -1
  155. package/dist/api/com/atproto/sync/getRepo.js.map +1 -1
  156. package/dist/api/com/atproto/sync/getRepoStatus.js.map +1 -1
  157. package/dist/api/com/atproto/sync/index.js.map +1 -1
  158. package/dist/api/com/atproto/sync/listBlobs.js.map +1 -1
  159. package/dist/api/com/atproto/sync/listRepos.js.map +1 -1
  160. package/dist/api/com/atproto/sync/subscribeRepos.js.map +1 -1
  161. package/dist/api/com/atproto/sync/util.js.map +1 -1
  162. package/dist/api/com/atproto/temp/checkSignupQueue.js.map +1 -1
  163. package/dist/api/com/atproto/temp/index.js.map +1 -1
  164. package/dist/api/index.js.map +1 -1
  165. package/dist/api/proxy.js.map +1 -1
  166. package/dist/app-view.js.map +1 -1
  167. package/dist/auth-output.js.map +1 -1
  168. package/dist/auth-routes.js.map +1 -1
  169. package/dist/auth-scope.js.map +1 -1
  170. package/dist/auth-verifier.js.map +1 -1
  171. package/dist/background.js.map +1 -1
  172. package/dist/basic-routes.js.map +1 -1
  173. package/dist/bsky-app-view.js.map +1 -1
  174. package/dist/config/config.js.map +1 -1
  175. package/dist/config/env.js.map +1 -1
  176. package/dist/config/index.js.map +1 -1
  177. package/dist/config/secrets.js.map +1 -1
  178. package/dist/context.js.map +1 -1
  179. package/dist/crawlers.js.map +1 -1
  180. package/dist/db/cast.js.map +1 -1
  181. package/dist/db/db.js.map +1 -1
  182. package/dist/db/index.js.map +1 -1
  183. package/dist/db/migrator.js.map +1 -1
  184. package/dist/db/pagination.js.map +1 -1
  185. package/dist/db/tables/moderation.js.map +1 -1
  186. package/dist/db/util.js.map +1 -1
  187. package/dist/did-cache/db/index.js.map +1 -1
  188. package/dist/did-cache/db/migrations.js.map +1 -1
  189. package/dist/did-cache/db/schema.js.map +1 -1
  190. package/dist/did-cache/index.js.map +1 -1
  191. package/dist/disk-blobstore.js.map +1 -1
  192. package/dist/error.js.map +1 -1
  193. package/dist/handle/explicit-slurs.js.map +1 -1
  194. package/dist/handle/index.js.map +1 -1
  195. package/dist/handle/reserved.js.map +1 -1
  196. package/dist/image/image-url-builder.js.map +1 -1
  197. package/dist/image/index.js.map +1 -1
  198. package/dist/index.js.map +1 -1
  199. package/dist/lexicon/index.d.ts +6 -0
  200. package/dist/lexicon/index.d.ts.map +1 -1
  201. package/dist/lexicon/index.js +12 -0
  202. package/dist/lexicon/index.js.map +1 -1
  203. package/dist/lexicon/lexicons.d.ts +812 -8
  204. package/dist/lexicon/lexicons.d.ts.map +1 -1
  205. package/dist/lexicon/lexicons.js +413 -0
  206. package/dist/lexicon/lexicons.js.map +1 -1
  207. package/dist/lexicon/types/app/bsky/actor/defs.d.ts +2 -0
  208. package/dist/lexicon/types/app/bsky/actor/defs.d.ts.map +1 -1
  209. package/dist/lexicon/types/app/bsky/actor/defs.js.map +1 -1
  210. package/dist/lexicon/types/app/bsky/actor/getPreferences.js.map +1 -1
  211. package/dist/lexicon/types/app/bsky/actor/getProfile.js.map +1 -1
  212. package/dist/lexicon/types/app/bsky/actor/getProfiles.js.map +1 -1
  213. package/dist/lexicon/types/app/bsky/actor/getSuggestions.js.map +1 -1
  214. package/dist/lexicon/types/app/bsky/actor/profile.js.map +1 -1
  215. package/dist/lexicon/types/app/bsky/actor/putPreferences.js.map +1 -1
  216. package/dist/lexicon/types/app/bsky/actor/searchActors.js.map +1 -1
  217. package/dist/lexicon/types/app/bsky/actor/searchActorsTypeahead.js.map +1 -1
  218. package/dist/lexicon/types/app/bsky/actor/status.js.map +1 -1
  219. package/dist/lexicon/types/app/bsky/bookmark/createBookmark.js.map +1 -1
  220. package/dist/lexicon/types/app/bsky/bookmark/defs.js.map +1 -1
  221. package/dist/lexicon/types/app/bsky/bookmark/deleteBookmark.js.map +1 -1
  222. package/dist/lexicon/types/app/bsky/bookmark/getBookmarks.js.map +1 -1
  223. package/dist/lexicon/types/app/bsky/embed/defs.js.map +1 -1
  224. package/dist/lexicon/types/app/bsky/embed/external.js.map +1 -1
  225. package/dist/lexicon/types/app/bsky/embed/images.js.map +1 -1
  226. package/dist/lexicon/types/app/bsky/embed/record.js.map +1 -1
  227. package/dist/lexicon/types/app/bsky/embed/recordWithMedia.js.map +1 -1
  228. package/dist/lexicon/types/app/bsky/embed/video.js.map +1 -1
  229. package/dist/lexicon/types/app/bsky/feed/defs.js.map +1 -1
  230. package/dist/lexicon/types/app/bsky/feed/describeFeedGenerator.js.map +1 -1
  231. package/dist/lexicon/types/app/bsky/feed/generator.js.map +1 -1
  232. package/dist/lexicon/types/app/bsky/feed/getActorFeeds.js.map +1 -1
  233. package/dist/lexicon/types/app/bsky/feed/getActorLikes.js.map +1 -1
  234. package/dist/lexicon/types/app/bsky/feed/getAuthorFeed.js.map +1 -1
  235. package/dist/lexicon/types/app/bsky/feed/getFeed.js.map +1 -1
  236. package/dist/lexicon/types/app/bsky/feed/getFeedGenerator.js.map +1 -1
  237. package/dist/lexicon/types/app/bsky/feed/getFeedGenerators.js.map +1 -1
  238. package/dist/lexicon/types/app/bsky/feed/getFeedSkeleton.js.map +1 -1
  239. package/dist/lexicon/types/app/bsky/feed/getLikes.js.map +1 -1
  240. package/dist/lexicon/types/app/bsky/feed/getListFeed.js.map +1 -1
  241. package/dist/lexicon/types/app/bsky/feed/getPostThread.js.map +1 -1
  242. package/dist/lexicon/types/app/bsky/feed/getPosts.js.map +1 -1
  243. package/dist/lexicon/types/app/bsky/feed/getQuotes.js.map +1 -1
  244. package/dist/lexicon/types/app/bsky/feed/getRepostedBy.js.map +1 -1
  245. package/dist/lexicon/types/app/bsky/feed/getSuggestedFeeds.js.map +1 -1
  246. package/dist/lexicon/types/app/bsky/feed/getTimeline.js.map +1 -1
  247. package/dist/lexicon/types/app/bsky/feed/like.js.map +1 -1
  248. package/dist/lexicon/types/app/bsky/feed/post.js.map +1 -1
  249. package/dist/lexicon/types/app/bsky/feed/postgate.js.map +1 -1
  250. package/dist/lexicon/types/app/bsky/feed/repost.js.map +1 -1
  251. package/dist/lexicon/types/app/bsky/feed/searchPosts.js.map +1 -1
  252. package/dist/lexicon/types/app/bsky/feed/sendInteractions.js.map +1 -1
  253. package/dist/lexicon/types/app/bsky/feed/threadgate.js.map +1 -1
  254. package/dist/lexicon/types/app/bsky/graph/block.js.map +1 -1
  255. package/dist/lexicon/types/app/bsky/graph/defs.js.map +1 -1
  256. package/dist/lexicon/types/app/bsky/graph/follow.js.map +1 -1
  257. package/dist/lexicon/types/app/bsky/graph/getActorStarterPacks.js.map +1 -1
  258. package/dist/lexicon/types/app/bsky/graph/getBlocks.js.map +1 -1
  259. package/dist/lexicon/types/app/bsky/graph/getFollowers.js.map +1 -1
  260. package/dist/lexicon/types/app/bsky/graph/getFollows.js.map +1 -1
  261. package/dist/lexicon/types/app/bsky/graph/getKnownFollowers.js.map +1 -1
  262. package/dist/lexicon/types/app/bsky/graph/getList.js.map +1 -1
  263. package/dist/lexicon/types/app/bsky/graph/getListBlocks.js.map +1 -1
  264. package/dist/lexicon/types/app/bsky/graph/getListMutes.js.map +1 -1
  265. package/dist/lexicon/types/app/bsky/graph/getLists.js.map +1 -1
  266. package/dist/lexicon/types/app/bsky/graph/getListsWithMembership.js.map +1 -1
  267. package/dist/lexicon/types/app/bsky/graph/getMutes.js.map +1 -1
  268. package/dist/lexicon/types/app/bsky/graph/getRelationships.js.map +1 -1
  269. package/dist/lexicon/types/app/bsky/graph/getStarterPack.js.map +1 -1
  270. package/dist/lexicon/types/app/bsky/graph/getStarterPacks.js.map +1 -1
  271. package/dist/lexicon/types/app/bsky/graph/getStarterPacksWithMembership.js.map +1 -1
  272. package/dist/lexicon/types/app/bsky/graph/getSuggestedFollowsByActor.js.map +1 -1
  273. package/dist/lexicon/types/app/bsky/graph/list.js.map +1 -1
  274. package/dist/lexicon/types/app/bsky/graph/listblock.js.map +1 -1
  275. package/dist/lexicon/types/app/bsky/graph/listitem.js.map +1 -1
  276. package/dist/lexicon/types/app/bsky/graph/muteActor.js.map +1 -1
  277. package/dist/lexicon/types/app/bsky/graph/muteActorList.js.map +1 -1
  278. package/dist/lexicon/types/app/bsky/graph/muteThread.js.map +1 -1
  279. package/dist/lexicon/types/app/bsky/graph/searchStarterPacks.js.map +1 -1
  280. package/dist/lexicon/types/app/bsky/graph/starterpack.js.map +1 -1
  281. package/dist/lexicon/types/app/bsky/graph/unmuteActor.js.map +1 -1
  282. package/dist/lexicon/types/app/bsky/graph/unmuteActorList.js.map +1 -1
  283. package/dist/lexicon/types/app/bsky/graph/unmuteThread.js.map +1 -1
  284. package/dist/lexicon/types/app/bsky/graph/verification.js.map +1 -1
  285. package/dist/lexicon/types/app/bsky/labeler/defs.js.map +1 -1
  286. package/dist/lexicon/types/app/bsky/labeler/getServices.js.map +1 -1
  287. package/dist/lexicon/types/app/bsky/labeler/service.js.map +1 -1
  288. package/dist/lexicon/types/app/bsky/notification/declaration.js.map +1 -1
  289. package/dist/lexicon/types/app/bsky/notification/defs.js.map +1 -1
  290. package/dist/lexicon/types/app/bsky/notification/getPreferences.js.map +1 -1
  291. package/dist/lexicon/types/app/bsky/notification/getUnreadCount.js.map +1 -1
  292. package/dist/lexicon/types/app/bsky/notification/listActivitySubscriptions.js.map +1 -1
  293. package/dist/lexicon/types/app/bsky/notification/listNotifications.js.map +1 -1
  294. package/dist/lexicon/types/app/bsky/notification/putActivitySubscription.js.map +1 -1
  295. package/dist/lexicon/types/app/bsky/notification/putPreferences.js.map +1 -1
  296. package/dist/lexicon/types/app/bsky/notification/putPreferencesV2.js.map +1 -1
  297. package/dist/lexicon/types/app/bsky/notification/registerPush.js.map +1 -1
  298. package/dist/lexicon/types/app/bsky/notification/unregisterPush.js.map +1 -1
  299. package/dist/lexicon/types/app/bsky/notification/updateSeen.js.map +1 -1
  300. package/dist/lexicon/types/app/bsky/richtext/facet.js.map +1 -1
  301. package/dist/lexicon/types/app/bsky/unspecced/defs.js.map +1 -1
  302. package/dist/lexicon/types/app/bsky/unspecced/getAgeAssuranceState.js.map +1 -1
  303. package/dist/lexicon/types/app/bsky/unspecced/getConfig.js.map +1 -1
  304. package/dist/lexicon/types/app/bsky/unspecced/getOnboardingSuggestedStarterPacks.js.map +1 -1
  305. package/dist/lexicon/types/app/bsky/unspecced/getOnboardingSuggestedStarterPacksSkeleton.js.map +1 -1
  306. package/dist/lexicon/types/app/bsky/unspecced/getPopularFeedGenerators.js.map +1 -1
  307. package/dist/lexicon/types/app/bsky/unspecced/getPostThreadOtherV2.js.map +1 -1
  308. package/dist/lexicon/types/app/bsky/unspecced/getPostThreadV2.js.map +1 -1
  309. package/dist/lexicon/types/app/bsky/unspecced/getSuggestedFeeds.js.map +1 -1
  310. package/dist/lexicon/types/app/bsky/unspecced/getSuggestedFeedsSkeleton.js.map +1 -1
  311. package/dist/lexicon/types/app/bsky/unspecced/getSuggestedStarterPacks.js.map +1 -1
  312. package/dist/lexicon/types/app/bsky/unspecced/getSuggestedStarterPacksSkeleton.js.map +1 -1
  313. package/dist/lexicon/types/app/bsky/unspecced/getSuggestedUsers.js.map +1 -1
  314. package/dist/lexicon/types/app/bsky/unspecced/getSuggestedUsersSkeleton.js.map +1 -1
  315. package/dist/lexicon/types/app/bsky/unspecced/getSuggestionsSkeleton.js.map +1 -1
  316. package/dist/lexicon/types/app/bsky/unspecced/getTaggedSuggestions.js.map +1 -1
  317. package/dist/lexicon/types/app/bsky/unspecced/getTrendingTopics.js.map +1 -1
  318. package/dist/lexicon/types/app/bsky/unspecced/getTrends.js.map +1 -1
  319. package/dist/lexicon/types/app/bsky/unspecced/getTrendsSkeleton.js.map +1 -1
  320. package/dist/lexicon/types/app/bsky/unspecced/initAgeAssurance.js.map +1 -1
  321. package/dist/lexicon/types/app/bsky/unspecced/searchActorsSkeleton.js.map +1 -1
  322. package/dist/lexicon/types/app/bsky/unspecced/searchPostsSkeleton.js.map +1 -1
  323. package/dist/lexicon/types/app/bsky/unspecced/searchStarterPacksSkeleton.js.map +1 -1
  324. package/dist/lexicon/types/app/bsky/video/defs.js.map +1 -1
  325. package/dist/lexicon/types/app/bsky/video/getJobStatus.js.map +1 -1
  326. package/dist/lexicon/types/app/bsky/video/getUploadLimits.js.map +1 -1
  327. package/dist/lexicon/types/app/bsky/video/uploadVideo.js.map +1 -1
  328. package/dist/lexicon/types/chat/bsky/actor/declaration.js.map +1 -1
  329. package/dist/lexicon/types/chat/bsky/actor/defs.js.map +1 -1
  330. package/dist/lexicon/types/chat/bsky/actor/deleteAccount.js.map +1 -1
  331. package/dist/lexicon/types/chat/bsky/actor/exportAccountData.js.map +1 -1
  332. package/dist/lexicon/types/chat/bsky/convo/acceptConvo.js.map +1 -1
  333. package/dist/lexicon/types/chat/bsky/convo/addReaction.js.map +1 -1
  334. package/dist/lexicon/types/chat/bsky/convo/defs.js.map +1 -1
  335. package/dist/lexicon/types/chat/bsky/convo/deleteMessageForSelf.js.map +1 -1
  336. package/dist/lexicon/types/chat/bsky/convo/getConvo.js.map +1 -1
  337. package/dist/lexicon/types/chat/bsky/convo/getConvoAvailability.js.map +1 -1
  338. package/dist/lexicon/types/chat/bsky/convo/getConvoForMembers.js.map +1 -1
  339. package/dist/lexicon/types/chat/bsky/convo/getLog.js.map +1 -1
  340. package/dist/lexicon/types/chat/bsky/convo/getMessages.js.map +1 -1
  341. package/dist/lexicon/types/chat/bsky/convo/leaveConvo.js.map +1 -1
  342. package/dist/lexicon/types/chat/bsky/convo/listConvos.js.map +1 -1
  343. package/dist/lexicon/types/chat/bsky/convo/muteConvo.js.map +1 -1
  344. package/dist/lexicon/types/chat/bsky/convo/removeReaction.js.map +1 -1
  345. package/dist/lexicon/types/chat/bsky/convo/sendMessage.js.map +1 -1
  346. package/dist/lexicon/types/chat/bsky/convo/sendMessageBatch.js.map +1 -1
  347. package/dist/lexicon/types/chat/bsky/convo/unmuteConvo.js.map +1 -1
  348. package/dist/lexicon/types/chat/bsky/convo/updateAllRead.js.map +1 -1
  349. package/dist/lexicon/types/chat/bsky/convo/updateRead.js.map +1 -1
  350. package/dist/lexicon/types/chat/bsky/moderation/getActorMetadata.js.map +1 -1
  351. package/dist/lexicon/types/chat/bsky/moderation/getMessageContext.js.map +1 -1
  352. package/dist/lexicon/types/chat/bsky/moderation/updateActorAccess.js.map +1 -1
  353. package/dist/lexicon/types/com/atproto/admin/defs.js.map +1 -1
  354. package/dist/lexicon/types/com/atproto/admin/deleteAccount.js.map +1 -1
  355. package/dist/lexicon/types/com/atproto/admin/disableAccountInvites.js.map +1 -1
  356. package/dist/lexicon/types/com/atproto/admin/disableInviteCodes.js.map +1 -1
  357. package/dist/lexicon/types/com/atproto/admin/enableAccountInvites.js.map +1 -1
  358. package/dist/lexicon/types/com/atproto/admin/getAccountInfo.js.map +1 -1
  359. package/dist/lexicon/types/com/atproto/admin/getAccountInfos.js.map +1 -1
  360. package/dist/lexicon/types/com/atproto/admin/getInviteCodes.js.map +1 -1
  361. package/dist/lexicon/types/com/atproto/admin/getSubjectStatus.js.map +1 -1
  362. package/dist/lexicon/types/com/atproto/admin/searchAccounts.js.map +1 -1
  363. package/dist/lexicon/types/com/atproto/admin/sendEmail.js.map +1 -1
  364. package/dist/lexicon/types/com/atproto/admin/updateAccountEmail.js.map +1 -1
  365. package/dist/lexicon/types/com/atproto/admin/updateAccountHandle.js.map +1 -1
  366. package/dist/lexicon/types/com/atproto/admin/updateAccountPassword.js.map +1 -1
  367. package/dist/lexicon/types/com/atproto/admin/updateAccountSigningKey.js.map +1 -1
  368. package/dist/lexicon/types/com/atproto/admin/updateSubjectStatus.js.map +1 -1
  369. package/dist/lexicon/types/com/atproto/identity/defs.js.map +1 -1
  370. package/dist/lexicon/types/com/atproto/identity/getRecommendedDidCredentials.js.map +1 -1
  371. package/dist/lexicon/types/com/atproto/identity/refreshIdentity.js.map +1 -1
  372. package/dist/lexicon/types/com/atproto/identity/requestPlcOperationSignature.js.map +1 -1
  373. package/dist/lexicon/types/com/atproto/identity/resolveDid.js.map +1 -1
  374. package/dist/lexicon/types/com/atproto/identity/resolveHandle.js.map +1 -1
  375. package/dist/lexicon/types/com/atproto/identity/resolveIdentity.js.map +1 -1
  376. package/dist/lexicon/types/com/atproto/identity/signPlcOperation.js.map +1 -1
  377. package/dist/lexicon/types/com/atproto/identity/submitPlcOperation.js.map +1 -1
  378. package/dist/lexicon/types/com/atproto/identity/updateHandle.js.map +1 -1
  379. package/dist/lexicon/types/com/atproto/label/defs.js.map +1 -1
  380. package/dist/lexicon/types/com/atproto/label/queryLabels.js.map +1 -1
  381. package/dist/lexicon/types/com/atproto/label/subscribeLabels.js.map +1 -1
  382. package/dist/lexicon/types/com/atproto/lexicon/schema.js.map +1 -1
  383. package/dist/lexicon/types/com/atproto/moderation/createReport.js.map +1 -1
  384. package/dist/lexicon/types/com/atproto/moderation/defs.js.map +1 -1
  385. package/dist/lexicon/types/com/atproto/repo/applyWrites.js.map +1 -1
  386. package/dist/lexicon/types/com/atproto/repo/createRecord.js.map +1 -1
  387. package/dist/lexicon/types/com/atproto/repo/defs.js.map +1 -1
  388. package/dist/lexicon/types/com/atproto/repo/deleteRecord.js.map +1 -1
  389. package/dist/lexicon/types/com/atproto/repo/describeRepo.js.map +1 -1
  390. package/dist/lexicon/types/com/atproto/repo/getRecord.js.map +1 -1
  391. package/dist/lexicon/types/com/atproto/repo/importRepo.js.map +1 -1
  392. package/dist/lexicon/types/com/atproto/repo/listMissingBlobs.js.map +1 -1
  393. package/dist/lexicon/types/com/atproto/repo/listRecords.js.map +1 -1
  394. package/dist/lexicon/types/com/atproto/repo/putRecord.js.map +1 -1
  395. package/dist/lexicon/types/com/atproto/repo/strongRef.js.map +1 -1
  396. package/dist/lexicon/types/com/atproto/repo/uploadBlob.js.map +1 -1
  397. package/dist/lexicon/types/com/atproto/server/activateAccount.js.map +1 -1
  398. package/dist/lexicon/types/com/atproto/server/checkAccountStatus.js.map +1 -1
  399. package/dist/lexicon/types/com/atproto/server/confirmEmail.js.map +1 -1
  400. package/dist/lexicon/types/com/atproto/server/createAccount.js.map +1 -1
  401. package/dist/lexicon/types/com/atproto/server/createAppPassword.js.map +1 -1
  402. package/dist/lexicon/types/com/atproto/server/createInviteCode.js.map +1 -1
  403. package/dist/lexicon/types/com/atproto/server/createInviteCodes.js.map +1 -1
  404. package/dist/lexicon/types/com/atproto/server/createSession.js.map +1 -1
  405. package/dist/lexicon/types/com/atproto/server/deactivateAccount.js.map +1 -1
  406. package/dist/lexicon/types/com/atproto/server/defs.js.map +1 -1
  407. package/dist/lexicon/types/com/atproto/server/deleteAccount.js.map +1 -1
  408. package/dist/lexicon/types/com/atproto/server/deleteSession.js.map +1 -1
  409. package/dist/lexicon/types/com/atproto/server/describeServer.js.map +1 -1
  410. package/dist/lexicon/types/com/atproto/server/getAccountInviteCodes.js.map +1 -1
  411. package/dist/lexicon/types/com/atproto/server/getServiceAuth.js.map +1 -1
  412. package/dist/lexicon/types/com/atproto/server/getSession.js.map +1 -1
  413. package/dist/lexicon/types/com/atproto/server/listAppPasswords.js.map +1 -1
  414. package/dist/lexicon/types/com/atproto/server/refreshSession.js.map +1 -1
  415. package/dist/lexicon/types/com/atproto/server/requestAccountDelete.js.map +1 -1
  416. package/dist/lexicon/types/com/atproto/server/requestEmailConfirmation.js.map +1 -1
  417. package/dist/lexicon/types/com/atproto/server/requestEmailUpdate.js.map +1 -1
  418. package/dist/lexicon/types/com/atproto/server/requestPasswordReset.js.map +1 -1
  419. package/dist/lexicon/types/com/atproto/server/reserveSigningKey.js.map +1 -1
  420. package/dist/lexicon/types/com/atproto/server/resetPassword.js.map +1 -1
  421. package/dist/lexicon/types/com/atproto/server/revokeAppPassword.js.map +1 -1
  422. package/dist/lexicon/types/com/atproto/server/updateEmail.js.map +1 -1
  423. package/dist/lexicon/types/com/atproto/sync/defs.js.map +1 -1
  424. package/dist/lexicon/types/com/atproto/sync/getBlob.js.map +1 -1
  425. package/dist/lexicon/types/com/atproto/sync/getBlocks.js.map +1 -1
  426. package/dist/lexicon/types/com/atproto/sync/getCheckout.js.map +1 -1
  427. package/dist/lexicon/types/com/atproto/sync/getHead.js.map +1 -1
  428. package/dist/lexicon/types/com/atproto/sync/getHostStatus.js.map +1 -1
  429. package/dist/lexicon/types/com/atproto/sync/getLatestCommit.js.map +1 -1
  430. package/dist/lexicon/types/com/atproto/sync/getRecord.js.map +1 -1
  431. package/dist/lexicon/types/com/atproto/sync/getRepo.js.map +1 -1
  432. package/dist/lexicon/types/com/atproto/sync/getRepoStatus.js.map +1 -1
  433. package/dist/lexicon/types/com/atproto/sync/listBlobs.js.map +1 -1
  434. package/dist/lexicon/types/com/atproto/sync/listHosts.js.map +1 -1
  435. package/dist/lexicon/types/com/atproto/sync/listRepos.js.map +1 -1
  436. package/dist/lexicon/types/com/atproto/sync/listReposByCollection.js.map +1 -1
  437. package/dist/lexicon/types/com/atproto/sync/notifyOfUpdate.js.map +1 -1
  438. package/dist/lexicon/types/com/atproto/sync/requestCrawl.js.map +1 -1
  439. package/dist/lexicon/types/com/atproto/sync/subscribeRepos.js.map +1 -1
  440. package/dist/lexicon/types/com/atproto/temp/addReservedHandle.js.map +1 -1
  441. package/dist/lexicon/types/com/atproto/temp/checkHandleAvailability.js.map +1 -1
  442. package/dist/lexicon/types/com/atproto/temp/checkSignupQueue.js.map +1 -1
  443. package/dist/lexicon/types/com/atproto/temp/dereferenceScope.js.map +1 -1
  444. package/dist/lexicon/types/com/atproto/temp/fetchLabels.js.map +1 -1
  445. package/dist/lexicon/types/com/atproto/temp/requestPhoneVerification.js.map +1 -1
  446. package/dist/lexicon/types/com/atproto/temp/revokeAccountCredentials.js.map +1 -1
  447. package/dist/lexicon/types/tools/ozone/communication/createTemplate.js.map +1 -1
  448. package/dist/lexicon/types/tools/ozone/communication/defs.js.map +1 -1
  449. package/dist/lexicon/types/tools/ozone/communication/deleteTemplate.js.map +1 -1
  450. package/dist/lexicon/types/tools/ozone/communication/listTemplates.js.map +1 -1
  451. package/dist/lexicon/types/tools/ozone/communication/updateTemplate.js.map +1 -1
  452. package/dist/lexicon/types/tools/ozone/hosting/getAccountHistory.js.map +1 -1
  453. package/dist/lexicon/types/tools/ozone/moderation/cancelScheduledActions.d.ts +46 -0
  454. package/dist/lexicon/types/tools/ozone/moderation/cancelScheduledActions.d.ts.map +1 -0
  455. package/dist/lexicon/types/tools/ozone/moderation/cancelScheduledActions.js +25 -0
  456. package/dist/lexicon/types/tools/ozone/moderation/cancelScheduledActions.js.map +1 -0
  457. package/dist/lexicon/types/tools/ozone/moderation/defs.d.ts +57 -2
  458. package/dist/lexicon/types/tools/ozone/moderation/defs.d.ts.map +1 -1
  459. package/dist/lexicon/types/tools/ozone/moderation/defs.js +27 -0
  460. package/dist/lexicon/types/tools/ozone/moderation/defs.js.map +1 -1
  461. package/dist/lexicon/types/tools/ozone/moderation/emitEvent.d.ts +1 -1
  462. package/dist/lexicon/types/tools/ozone/moderation/emitEvent.d.ts.map +1 -1
  463. package/dist/lexicon/types/tools/ozone/moderation/emitEvent.js.map +1 -1
  464. package/dist/lexicon/types/tools/ozone/moderation/getAccountTimeline.d.ts +1 -1
  465. package/dist/lexicon/types/tools/ozone/moderation/getAccountTimeline.d.ts.map +1 -1
  466. package/dist/lexicon/types/tools/ozone/moderation/getAccountTimeline.js.map +1 -1
  467. package/dist/lexicon/types/tools/ozone/moderation/getEvent.js.map +1 -1
  468. package/dist/lexicon/types/tools/ozone/moderation/getRecord.js.map +1 -1
  469. package/dist/lexicon/types/tools/ozone/moderation/getRecords.js.map +1 -1
  470. package/dist/lexicon/types/tools/ozone/moderation/getRepo.js.map +1 -1
  471. package/dist/lexicon/types/tools/ozone/moderation/getReporterStats.js.map +1 -1
  472. package/dist/lexicon/types/tools/ozone/moderation/getRepos.js.map +1 -1
  473. package/dist/lexicon/types/tools/ozone/moderation/getSubjects.js.map +1 -1
  474. package/dist/lexicon/types/tools/ozone/moderation/listScheduledActions.d.ts +38 -0
  475. package/dist/lexicon/types/tools/ozone/moderation/listScheduledActions.d.ts.map +1 -0
  476. package/dist/lexicon/types/tools/ozone/moderation/listScheduledActions.js +7 -0
  477. package/dist/lexicon/types/tools/ozone/moderation/listScheduledActions.js.map +1 -0
  478. package/dist/lexicon/types/tools/ozone/moderation/queryEvents.js.map +1 -1
  479. package/dist/lexicon/types/tools/ozone/moderation/queryStatuses.js.map +1 -1
  480. package/dist/lexicon/types/tools/ozone/moderation/scheduleAction.d.ts +75 -0
  481. package/dist/lexicon/types/tools/ozone/moderation/scheduleAction.d.ts.map +1 -0
  482. package/dist/lexicon/types/tools/ozone/moderation/scheduleAction.js +43 -0
  483. package/dist/lexicon/types/tools/ozone/moderation/scheduleAction.js.map +1 -0
  484. package/dist/lexicon/types/tools/ozone/moderation/searchRepos.js.map +1 -1
  485. package/dist/lexicon/types/tools/ozone/report/defs.js.map +1 -1
  486. package/dist/lexicon/types/tools/ozone/safelink/addRule.js.map +1 -1
  487. package/dist/lexicon/types/tools/ozone/safelink/defs.js.map +1 -1
  488. package/dist/lexicon/types/tools/ozone/safelink/queryEvents.js.map +1 -1
  489. package/dist/lexicon/types/tools/ozone/safelink/queryRules.js.map +1 -1
  490. package/dist/lexicon/types/tools/ozone/safelink/removeRule.js.map +1 -1
  491. package/dist/lexicon/types/tools/ozone/safelink/updateRule.js.map +1 -1
  492. package/dist/lexicon/types/tools/ozone/server/getConfig.js.map +1 -1
  493. package/dist/lexicon/types/tools/ozone/set/addValues.js.map +1 -1
  494. package/dist/lexicon/types/tools/ozone/set/defs.js.map +1 -1
  495. package/dist/lexicon/types/tools/ozone/set/deleteSet.js.map +1 -1
  496. package/dist/lexicon/types/tools/ozone/set/deleteValues.js.map +1 -1
  497. package/dist/lexicon/types/tools/ozone/set/getValues.js.map +1 -1
  498. package/dist/lexicon/types/tools/ozone/set/querySets.js.map +1 -1
  499. package/dist/lexicon/types/tools/ozone/set/upsertSet.js.map +1 -1
  500. package/dist/lexicon/types/tools/ozone/setting/defs.js.map +1 -1
  501. package/dist/lexicon/types/tools/ozone/setting/listOptions.js.map +1 -1
  502. package/dist/lexicon/types/tools/ozone/setting/removeOptions.js.map +1 -1
  503. package/dist/lexicon/types/tools/ozone/setting/upsertOption.js.map +1 -1
  504. package/dist/lexicon/types/tools/ozone/signature/defs.js.map +1 -1
  505. package/dist/lexicon/types/tools/ozone/signature/findCorrelation.js.map +1 -1
  506. package/dist/lexicon/types/tools/ozone/signature/findRelatedAccounts.js.map +1 -1
  507. package/dist/lexicon/types/tools/ozone/signature/searchAccounts.js.map +1 -1
  508. package/dist/lexicon/types/tools/ozone/team/addMember.js.map +1 -1
  509. package/dist/lexicon/types/tools/ozone/team/defs.js.map +1 -1
  510. package/dist/lexicon/types/tools/ozone/team/deleteMember.js.map +1 -1
  511. package/dist/lexicon/types/tools/ozone/team/listMembers.js.map +1 -1
  512. package/dist/lexicon/types/tools/ozone/team/updateMember.js.map +1 -1
  513. package/dist/lexicon/types/tools/ozone/verification/defs.js.map +1 -1
  514. package/dist/lexicon/types/tools/ozone/verification/grantVerifications.js.map +1 -1
  515. package/dist/lexicon/types/tools/ozone/verification/listVerifications.js.map +1 -1
  516. package/dist/lexicon/types/tools/ozone/verification/revokeVerifications.js.map +1 -1
  517. package/dist/lexicon/util.js.map +1 -1
  518. package/dist/logger.js.map +1 -1
  519. package/dist/mailer/index.js.map +1 -1
  520. package/dist/mailer/moderation.js.map +1 -1
  521. package/dist/mailer/templates.js.map +1 -1
  522. package/dist/pipethrough.js +3 -0
  523. package/dist/pipethrough.js.map +1 -1
  524. package/dist/read-after-write/index.js.map +1 -1
  525. package/dist/read-after-write/types.js.map +1 -1
  526. package/dist/read-after-write/util.js.map +1 -1
  527. package/dist/read-after-write/viewer.js.map +1 -1
  528. package/dist/redis.js.map +1 -1
  529. package/dist/repo/index.js.map +1 -1
  530. package/dist/repo/prepare.js.map +1 -1
  531. package/dist/repo/types.js.map +1 -1
  532. package/dist/scripts/index.js.map +1 -1
  533. package/dist/scripts/publish-identity.js.map +1 -1
  534. package/dist/scripts/rebuild-repo.js.map +1 -1
  535. package/dist/scripts/rotate-keys.js.map +1 -1
  536. package/dist/scripts/sequencer-recovery/index.js.map +1 -1
  537. package/dist/scripts/sequencer-recovery/recoverer.js.map +1 -1
  538. package/dist/scripts/sequencer-recovery/recovery-db.js.map +1 -1
  539. package/dist/scripts/sequencer-recovery/repair-repos.js.map +1 -1
  540. package/dist/scripts/sequencer-recovery/user-queues.js.map +1 -1
  541. package/dist/scripts/util.js.map +1 -1
  542. package/dist/sequencer/db/index.js.map +1 -1
  543. package/dist/sequencer/db/migrations/001-init.js.map +1 -1
  544. package/dist/sequencer/db/migrations/index.js.map +1 -1
  545. package/dist/sequencer/db/schema.js.map +1 -1
  546. package/dist/sequencer/events.js.map +1 -1
  547. package/dist/sequencer/index.js.map +1 -1
  548. package/dist/sequencer/outbox.js.map +1 -1
  549. package/dist/sequencer/sequencer.js.map +1 -1
  550. package/dist/util/compression.js.map +1 -1
  551. package/dist/util/debug.js.map +1 -1
  552. package/dist/util/http.js.map +1 -1
  553. package/dist/util/params.js.map +1 -1
  554. package/dist/util/types.js.map +1 -1
  555. package/dist/well-known.js.map +1 -1
  556. package/package.json +6 -6
  557. package/src/lexicon/index.ts +39 -0
  558. package/src/lexicon/lexicons.ts +436 -0
  559. package/src/lexicon/types/app/bsky/actor/defs.ts +2 -0
  560. package/src/lexicon/types/tools/ozone/moderation/cancelScheduledActions.ts +79 -0
  561. package/src/lexicon/types/tools/ozone/moderation/defs.ts +88 -0
  562. package/src/lexicon/types/tools/ozone/moderation/emitEvent.ts +2 -0
  563. package/src/lexicon/types/tools/ozone/moderation/getAccountTimeline.ts +2 -0
  564. package/src/lexicon/types/tools/ozone/moderation/listScheduledActions.ts +57 -0
  565. package/src/lexicon/types/tools/ozone/moderation/scheduleAction.ts +123 -0
  566. package/src/pipethrough.ts +3 -0
  567. package/tsconfig.build.tsbuildinfo +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"listRecords.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/repo/listRecords.ts"],"names":[],"mappings":";;AAKA,4BA8BC;AAnCD,4CAAuC;AACvC,sDAA0D;AAI1D,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;QACvD,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,GAAG,EAAE,EAAE,MAAM,EAAE,OAAO,GAAG,KAAK,EAAE,GAAG,MAAM,CAAA;QAExE,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,cAAc,CAAC,IAAI,CAAC,CAAA;QACzD,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,IAAI,iCAAmB,CAAC,wBAAwB,IAAI,EAAE,CAAC,CAAA;QAC/D,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,EAAE,CACvD,KAAK,CAAC,MAAM,CAAC,wBAAwB,CAAC;YACpC,UAAU;YACV,KAAK;YACL,OAAO;YACP,MAAM;SACP,CAAC,CACH,CAAA;QAED,MAAM,UAAU,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;QACjC,MAAM,OAAO,GAAG,UAAU,IAAI,IAAI,cAAK,CAAC,UAAU,EAAE,GAAG,CAAC,CAAA;QAExD,OAAO;YACL,QAAQ,EAAE,kBAAkB;YAC5B,IAAI,EAAE;gBACJ,OAAO;gBACP,iFAAiF;gBACjF,MAAM,EAAE,OAAO,EAAE,IAAI;aACtB;SACF,CAAA;IACH,CAAC,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"listRecords.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/repo/listRecords.ts"],"names":[],"mappings":";;AAKA,4BA8BC;AAnCD,4CAAuC;AACvC,sDAA0D;AAI1D,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;QACvD,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,GAAG,EAAE,EAAE,MAAM,EAAE,OAAO,GAAG,KAAK,EAAE,GAAG,MAAM,CAAA;QAExE,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,cAAc,CAAC,IAAI,CAAC,CAAA;QACzD,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,IAAI,iCAAmB,CAAC,wBAAwB,IAAI,EAAE,CAAC,CAAA;QAC/D,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,EAAE,CACvD,KAAK,CAAC,MAAM,CAAC,wBAAwB,CAAC;YACpC,UAAU;YACV,KAAK;YACL,OAAO;YACP,MAAM;SACP,CAAC,CACH,CAAA;QAED,MAAM,UAAU,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;QACjC,MAAM,OAAO,GAAG,UAAU,IAAI,IAAI,cAAK,CAAC,UAAU,EAAE,GAAG,CAAC,CAAA;QAExD,OAAO;YACL,QAAQ,EAAE,kBAAkB;YAC5B,IAAI,EAAE;gBACJ,OAAO;gBACP,iFAAiF;gBACjF,MAAM,EAAE,OAAO,EAAE,IAAI;aACtB;SACF,CAAA;IACH,CAAC,CAAC,CAAA;AACJ,CAAC","sourcesContent":["import { AtUri } from '@atproto/syntax'\nimport { InvalidRequestError } from '@atproto/xrpc-server'\nimport { AppContext } from '../../../../context'\nimport { Server } from '../../../../lexicon'\n\nexport default function (server: Server, ctx: AppContext) {\n server.com.atproto.repo.listRecords(async ({ params }) => {\n const { repo, collection, limit = 50, cursor, reverse = false } = params\n\n const did = await ctx.accountManager.getDidForActor(repo)\n if (!did) {\n throw new InvalidRequestError(`Could not find repo: ${repo}`)\n }\n\n const records = await ctx.actorStore.read(did, (store) =>\n store.record.listRecordsForCollection({\n collection,\n limit,\n reverse,\n cursor,\n }),\n )\n\n const lastRecord = records.at(-1)\n const lastUri = lastRecord && new AtUri(lastRecord?.uri)\n\n return {\n encoding: 'application/json',\n body: {\n records,\n // Paginate with `before` by default, paginate with `after` when using `reverse`.\n cursor: lastUri?.rkey,\n },\n }\n })\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"putRecord.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/repo/putRecord.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"putRecord.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/repo/putRecord.ts"],"names":[],"mappings":"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","sourcesContent":["import { CID } from 'multiformats/cid'\nimport { BlobRef } from '@atproto/lexicon'\nimport { AtUri } from '@atproto/syntax'\nimport { AuthRequiredError, InvalidRequestError } from '@atproto/xrpc-server'\nimport { ActorStoreTransactor } from '../../../../actor-store/actor-store-transactor'\nimport { AppContext } from '../../../../context'\nimport { Server } from '../../../../lexicon'\nimport { ids } from '../../../../lexicon/lexicons'\nimport { Record as ProfileRecord } from '../../../../lexicon/types/app/bsky/actor/profile'\nimport { dbLogger } from '../../../../logger'\nimport {\n BadCommitSwapError,\n BadRecordSwapError,\n InvalidRecordError,\n PreparedCreate,\n PreparedUpdate,\n prepareCreate,\n prepareUpdate,\n} from '../../../../repo'\n\nexport default function (server: Server, ctx: AppContext) {\n server.com.atproto.repo.putRecord({\n auth: ctx.authVerifier.authorization({\n // @NOTE the \"checkTakedown\" and \"checkDeactivated\" checks are typically\n // performed during auth. However, since this method's \"repo\" parameter\n // can be a handle, we will need to fetch the account again to ensure that\n // the handle matches the DID from the request's credentials. In order to\n // avoid fetching the account twice (during auth, and then again in the\n // controller), the checks are disabled here:\n\n // checkTakedown: true,\n // checkDeactivated: true,\n authorize: () => {\n // Performed in the handler as it requires the request body\n },\n }),\n rateLimit: [\n {\n name: 'repo-write-hour',\n calcKey: ({ auth }) => auth.credentials.did,\n calcPoints: () => 2,\n },\n {\n name: 'repo-write-day',\n calcKey: ({ auth }) => auth.credentials.did,\n calcPoints: () => 2,\n },\n ],\n handler: async ({ auth, input }) => {\n const {\n repo,\n collection,\n rkey,\n record,\n validate,\n swapCommit,\n swapRecord,\n } = input.body\n\n const account = await ctx.authVerifier.findAccount(repo, {\n checkDeactivated: true,\n checkTakedown: true,\n })\n\n const did = account.did\n if (did !== auth.credentials.did) {\n throw new AuthRequiredError()\n }\n\n // We can't compute permissions based on the request payload (\"input\") in\n // the 'auth' phase, so we do it here.\n if (auth.credentials.type === 'oauth') {\n auth.credentials.permissions.assertRepo({\n action: 'create',\n collection,\n })\n auth.credentials.permissions.assertRepo({\n action: 'update',\n collection,\n })\n }\n\n const uri = AtUri.make(did, collection, rkey)\n const swapCommitCid = swapCommit ? CID.parse(swapCommit) : undefined\n const swapRecordCid =\n typeof swapRecord === 'string' ? CID.parse(swapRecord) : swapRecord\n\n const { commit, write } = await ctx.actorStore.transact(\n did,\n async (actorTxn) => {\n const current = await actorTxn.record.getRecord(uri, null, true)\n const isUpdate = current !== null\n\n // @TODO temporaray hack for legacy blob refs in profiles - remove after migrating legacy blobs\n if (isUpdate && collection === ids.AppBskyActorProfile) {\n await updateProfileLegacyBlobRef(actorTxn, record)\n }\n const writeInfo = {\n did,\n collection,\n rkey,\n record,\n swapCid: swapRecordCid,\n validate,\n }\n\n let write: PreparedCreate | PreparedUpdate\n try {\n write = isUpdate\n ? await prepareUpdate(writeInfo)\n : await prepareCreate(writeInfo)\n } catch (err) {\n if (err instanceof InvalidRecordError) {\n throw new InvalidRequestError(err.message)\n }\n throw err\n }\n\n // no-op\n if (current && current.cid === write.cid.toString()) {\n return {\n commit: null,\n write,\n }\n }\n\n const commit = await actorTxn.repo\n .processWrites([write], swapCommitCid)\n .catch((err) => {\n if (\n err instanceof BadCommitSwapError ||\n err instanceof BadRecordSwapError\n ) {\n throw new InvalidRequestError(err.message, 'InvalidSwap')\n } else {\n throw err\n }\n })\n\n await ctx.sequencer.sequenceCommit(did, commit)\n\n return { commit, write }\n },\n )\n\n if (commit !== null) {\n await ctx.accountManager\n .updateRepoRoot(did, commit.cid, commit.rev)\n .catch((err) => {\n dbLogger.error(\n { err, did, cid: commit.cid, rev: commit.rev },\n 'failed to update account root',\n )\n })\n }\n\n return {\n encoding: 'application/json',\n body: {\n uri: write.uri.toString(),\n cid: write.cid.toString(),\n commit: commit\n ? {\n cid: commit.cid.toString(),\n rev: commit.rev,\n }\n : undefined,\n validationStatus: write.validationStatus,\n },\n }\n },\n })\n}\n\n// WARNING: mutates object\nconst updateProfileLegacyBlobRef = async (\n actorStore: ActorStoreTransactor,\n record: Partial<ProfileRecord>,\n) => {\n if (record.avatar && !record.avatar.original['$type']) {\n const blob = await actorStore.repo.blob.getBlobMetadata(record.avatar.ref)\n record.avatar = new BlobRef(\n record.avatar.ref,\n record.avatar.mimeType,\n blob.size,\n )\n }\n if (record.banner && !record.banner.original['$type']) {\n const blob = await actorStore.repo.blob.getBlobMetadata(record.banner.ref)\n record.banner = new BlobRef(\n record.banner.ref,\n record.banner.mimeType,\n blob.size,\n )\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"uploadBlob.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/repo/uploadBlob.ts"],"names":[],"mappings":";;AAMA,4BAgEC;AAtED,4CAAqC;AACrC,sDAA6E;AAK7E,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC;QACjC,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,8BAA8B,CAAC;YACpD,aAAa,EAAE,IAAI;YACnB,SAAS,EAAE,CAAC,WAAW,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE;gBAClC,MAAM,QAAQ,GAAG,IAAA,8BAAgB,EAAC,GAAG,CAAC,CAAA;gBACtC,WAAW,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAA;YAC5C,CAAC;SACF,CAAC;QACF,SAAS,EAAE;YACT,UAAU,EAAE,YAAG;YACf,MAAM,EAAE,IAAI;SACb;QACD,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE;YACjC,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAA;YAEtC,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,kBAAkB,CAClD,SAAS,EACT,KAAK,EAAE,KAAK,EAAE,EAAE;gBACd,IAAI,QAAsB,CAAA;gBAC1B,IAAI,CAAC;oBACH,QAAQ,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,wBAAwB,CACvD,KAAK,CAAC,QAAQ,EACd,KAAK,CAAC,IAAI,CACX,CAAA;gBACH,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,IAAI,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,YAAY,EAAE,CAAC;wBACnC,MAAM,IAAI,kCAAoB,CAC5B,qCAAqC,CACtC,CAAA;oBACH,CAAC;oBACD,MAAM,GAAG,CAAA;gBACX,CAAC;gBAED,OAAO,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;oBACvC,MAAM,OAAO,GACX,MAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAA;oBAExD,qEAAqE;oBACrE,MAAM,cAAc,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAC/D,OAAO,CAAC,GAAG,CACZ,CAAA;oBACD,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC9B,MAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,0BAA0B,CAAC;4BAClD,GAAG,EAAE,OAAO,CAAC,GAAG;4BAChB,QAAQ,EAAE,OAAO,CAAC,QAAQ;4BAC1B,IAAI,EAAE,OAAO,CAAC,IAAI;4BAClB,WAAW,EAAE,EAAE;yBAChB,CAAC,CAAA;oBACJ,CAAC;oBAED,OAAO,OAAO,CAAA;gBAChB,CAAC,CAAC,CAAA;YACJ,CAAC,CACF,CAAA;YAED,OAAO;gBACL,QAAQ,EAAE,kBAAkB;gBAC5B,IAAI,EAAE;oBACJ,IAAI;iBACL;aACF,CAAA;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"uploadBlob.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/repo/uploadBlob.ts"],"names":[],"mappings":";;AAMA,4BAgEC;AAtED,4CAAqC;AACrC,sDAA6E;AAK7E,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC;QACjC,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,8BAA8B,CAAC;YACpD,aAAa,EAAE,IAAI;YACnB,SAAS,EAAE,CAAC,WAAW,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE;gBAClC,MAAM,QAAQ,GAAG,IAAA,8BAAgB,EAAC,GAAG,CAAC,CAAA;gBACtC,WAAW,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAA;YAC5C,CAAC;SACF,CAAC;QACF,SAAS,EAAE;YACT,UAAU,EAAE,YAAG;YACf,MAAM,EAAE,IAAI;SACb;QACD,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE;YACjC,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAA;YAEtC,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,kBAAkB,CAClD,SAAS,EACT,KAAK,EAAE,KAAK,EAAE,EAAE;gBACd,IAAI,QAAsB,CAAA;gBAC1B,IAAI,CAAC;oBACH,QAAQ,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,wBAAwB,CACvD,KAAK,CAAC,QAAQ,EACd,KAAK,CAAC,IAAI,CACX,CAAA;gBACH,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,IAAI,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,YAAY,EAAE,CAAC;wBACnC,MAAM,IAAI,kCAAoB,CAC5B,qCAAqC,CACtC,CAAA;oBACH,CAAC;oBACD,MAAM,GAAG,CAAA;gBACX,CAAC;gBAED,OAAO,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;oBACvC,MAAM,OAAO,GACX,MAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAA;oBAExD,qEAAqE;oBACrE,MAAM,cAAc,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAC/D,OAAO,CAAC,GAAG,CACZ,CAAA;oBACD,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC9B,MAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,0BAA0B,CAAC;4BAClD,GAAG,EAAE,OAAO,CAAC,GAAG;4BAChB,QAAQ,EAAE,OAAO,CAAC,QAAQ;4BAC1B,IAAI,EAAE,OAAO,CAAC,IAAI;4BAClB,WAAW,EAAE,EAAE;yBAChB,CAAC,CAAA;oBACJ,CAAC;oBAED,OAAO,OAAO,CAAA;gBAChB,CAAC,CAAC,CAAA;YACJ,CAAC,CACF,CAAA;YAED,OAAO;gBACL,QAAQ,EAAE,kBAAkB;gBAC5B,IAAI,EAAE;oBACJ,IAAI;iBACL;aACF,CAAA;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC","sourcesContent":["import { DAY } from '@atproto/common'\nimport { UpstreamTimeoutError, parseReqEncoding } from '@atproto/xrpc-server'\nimport { BlobMetadata } from '../../../../actor-store/blob/transactor'\nimport { AppContext } from '../../../../context'\nimport { Server } from '../../../../lexicon'\n\nexport default function (server: Server, ctx: AppContext) {\n server.com.atproto.repo.uploadBlob({\n auth: ctx.authVerifier.authorizationOrUserServiceAuth({\n checkTakedown: true,\n authorize: (permissions, { req }) => {\n const encoding = parseReqEncoding(req)\n permissions.assertBlob({ mime: encoding })\n },\n }),\n rateLimit: {\n durationMs: DAY,\n points: 1000,\n },\n handler: async ({ auth, input }) => {\n const requester = auth.credentials.did\n\n const blob = await ctx.actorStore.writeNoTransaction(\n requester,\n async (store) => {\n let metadata: BlobMetadata\n try {\n metadata = await store.repo.blob.uploadBlobAndGetMetadata(\n input.encoding,\n input.body,\n )\n } catch (err) {\n if (err?.['name'] === 'AbortError') {\n throw new UpstreamTimeoutError(\n 'Upload timed out, please try again.',\n )\n }\n throw err\n }\n\n return store.transact(async (actorTxn) => {\n const blobRef =\n await actorTxn.repo.blob.trackUntetheredBlob(metadata)\n\n // make the blob permanent if an associated record is already indexed\n const recordsForBlob = await actorTxn.repo.blob.getRecordsForBlob(\n blobRef.ref,\n )\n if (recordsForBlob.length > 0) {\n await actorTxn.repo.blob.verifyBlobAndMakePermanent({\n cid: blobRef.ref,\n mimeType: blobRef.mimeType,\n size: blobRef.size,\n constraints: {},\n })\n }\n\n return blobRef\n })\n },\n )\n\n return {\n encoding: 'application/json',\n body: {\n blob,\n },\n }\n },\n })\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"activateAccount.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/activateAccount.ts"],"names":[],"mappings":";;AAOA,4BA+CC;AAtDD,4CAAgD;AAChD,sDAA0E;AAC1E,uDAAoD;AAGpD,iCAAyD;AAEzD,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC;QACxC,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,aAAa,CAAC;YACnC,MAAM,EAAE,wBAAW;YACnB,SAAS,EAAE,GAAG,EAAE;gBACd,MAAM,IAAI,4BAAc,CACtB,uDAAuD,CACxD,CAAA;YACH,CAAC;SACF,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE;YAC/B,4HAA4H;YAC5H,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;gBACtB,MAAM,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,eAAe,CACxD,SAAS,EACT,GAAG,CAAC,uBAAuB,CAAC,GAAG,CAAC,CACjC,CAAA;gBACD,OAAM;YACR,CAAC;YAED,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAA;YAEtC,MAAM,IAAA,uCAAgC,EAAC,GAAG,EAAE,SAAS,CAAC,CAAA;YAEtD,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,UAAU,CAAC,SAAS,EAAE;gBAC7D,kBAAkB,EAAE,IAAI;aACzB,CAAC,CAAA;YACF,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,IAAI,iCAAmB,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,CAAA;YACpE,CAAC;YAED,MAAM,GAAG,CAAC,cAAc,CAAC,eAAe,CAAC,SAAS,CAAC,CAAA;YAEnD,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE,CAC9D,KAAK,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAC9B,CAAA;YAED,gGAAgG;YAChG,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAA;YACnE,MAAM,GAAG,CAAC,SAAS,CAAC,kBAAkB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;YACzD,MAAM,GAAG,CAAC,SAAS,CAAC,mBAAmB,CACrC,SAAS,EACT,OAAO,CAAC,MAAM,IAAI,uBAAc,CACjC,CAAA;YACD,MAAM,GAAG,CAAC,SAAS,CAAC,eAAe,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;QAC1D,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"activateAccount.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/activateAccount.ts"],"names":[],"mappings":";;AAOA,4BA+CC;AAtDD,4CAAgD;AAChD,sDAA0E;AAC1E,uDAAoD;AAGpD,iCAAyD;AAEzD,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC;QACxC,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,aAAa,CAAC;YACnC,MAAM,EAAE,wBAAW;YACnB,SAAS,EAAE,GAAG,EAAE;gBACd,MAAM,IAAI,4BAAc,CACtB,uDAAuD,CACxD,CAAA;YACH,CAAC;SACF,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE;YAC/B,4HAA4H;YAC5H,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;gBACtB,MAAM,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,eAAe,CACxD,SAAS,EACT,GAAG,CAAC,uBAAuB,CAAC,GAAG,CAAC,CACjC,CAAA;gBACD,OAAM;YACR,CAAC;YAED,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAA;YAEtC,MAAM,IAAA,uCAAgC,EAAC,GAAG,EAAE,SAAS,CAAC,CAAA;YAEtD,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,UAAU,CAAC,SAAS,EAAE;gBAC7D,kBAAkB,EAAE,IAAI;aACzB,CAAC,CAAA;YACF,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,IAAI,iCAAmB,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,CAAA;YACpE,CAAC;YAED,MAAM,GAAG,CAAC,cAAc,CAAC,eAAe,CAAC,SAAS,CAAC,CAAA;YAEnD,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE,CAC9D,KAAK,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAC9B,CAAA;YAED,gGAAgG;YAChG,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAA;YACnE,MAAM,GAAG,CAAC,SAAS,CAAC,kBAAkB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;YACzD,MAAM,GAAG,CAAC,SAAS,CAAC,mBAAmB,CACrC,SAAS,EACT,OAAO,CAAC,MAAM,IAAI,uBAAc,CACjC,CAAA;YACD,MAAM,GAAG,CAAC,SAAS,CAAC,eAAe,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;QAC1D,CAAC;KACF,CAAC,CAAA;AACJ,CAAC","sourcesContent":["import { INVALID_HANDLE } from '@atproto/syntax'\nimport { ForbiddenError, InvalidRequestError } from '@atproto/xrpc-server'\nimport { ACCESS_FULL } from '../../../../auth-scope'\nimport { AppContext } from '../../../../context'\nimport { Server } from '../../../../lexicon'\nimport { assertValidDidDocumentForService } from './util'\n\nexport default function (server: Server, ctx: AppContext) {\n server.com.atproto.server.activateAccount({\n auth: ctx.authVerifier.authorization({\n scopes: ACCESS_FULL,\n authorize: () => {\n throw new ForbiddenError(\n 'OAuth credentials are not supported for this endpoint',\n )\n },\n }),\n handler: async ({ req, auth }) => {\n // in the case of entryway, the full flow is activateAccount (PDS) -> activateAccount (Entryway) -> updateSubjectStatus(PDS)\n if (ctx.entrywayAgent) {\n await ctx.entrywayAgent.com.atproto.server.activateAccount(\n undefined,\n ctx.entrywayPassthruHeaders(req),\n )\n return\n }\n\n const requester = auth.credentials.did\n\n await assertValidDidDocumentForService(ctx, requester)\n\n const account = await ctx.accountManager.getAccount(requester, {\n includeDeactivated: true,\n })\n if (!account) {\n throw new InvalidRequestError('user not found', 'AccountNotFound')\n }\n\n await ctx.accountManager.activateAccount(requester)\n\n const syncData = await ctx.actorStore.read(requester, (store) =>\n store.repo.getSyncEventData(),\n )\n\n // @NOTE: we're over-emitting for now for backwards compatibility, can reduce this in the future\n const status = await ctx.accountManager.getAccountStatus(requester)\n await ctx.sequencer.sequenceAccountEvt(requester, status)\n await ctx.sequencer.sequenceIdentityEvt(\n requester,\n account.handle ?? INVALID_HANDLE,\n )\n await ctx.sequencer.sequenceSyncEvt(requester, syncData)\n },\n })\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"checkAccountStatus.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/checkAccountStatus.ts"],"names":[],"mappings":";;AAIA,4BA6CC;AA/CD,iCAAgD;AAEhD,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAAC;QAC3C,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,aAAa,CAAC;YACnC,SAAS,EAAE,GAAG,EAAE;gBACd,eAAe;YACjB,CAAC;SACF,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;YAC1B,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAA;YACtC,MAAM,CACJ,QAAQ,EACR,UAAU,EACV,cAAc,EACd,aAAa,EACb,aAAa,EACd,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;gBACvD,OAAO,MAAM,OAAO,CAAC,GAAG,CAAC;oBACvB,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE;oBACpC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE;oBAChC,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE;oBAC1B,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;oBAC3B,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;iBAClC,CAAC,CAAA;YACJ,CAAC,CAAC,CAAA;YACF,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAC9C,GAAG,CAAC,cAAc,CAAC,kBAAkB,CAAC,SAAS,CAAC;gBAChD,IAAA,8BAAuB,EAAC,GAAG,EAAE,SAAS,CAAC;aACxC,CAAC,CAAA;YAEF,OAAO;gBACL,QAAQ,EAAE,kBAAkB;gBAC5B,IAAI,EAAE;oBACJ,SAAS;oBACT,QAAQ;oBACR,UAAU,EAAE,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE;oBACnC,OAAO,EAAE,QAAQ,CAAC,GAAG;oBACrB,UAAU;oBACV,cAAc;oBACd,kBAAkB,EAAE,CAAC;oBACrB,aAAa;oBACb,aAAa;iBACd;aACF,CAAA;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"checkAccountStatus.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/checkAccountStatus.ts"],"names":[],"mappings":";;AAIA,4BA6CC;AA/CD,iCAAgD;AAEhD,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAAC;QAC3C,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,aAAa,CAAC;YACnC,SAAS,EAAE,GAAG,EAAE;gBACd,eAAe;YACjB,CAAC;SACF,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;YAC1B,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAA;YACtC,MAAM,CACJ,QAAQ,EACR,UAAU,EACV,cAAc,EACd,aAAa,EACb,aAAa,EACd,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;gBACvD,OAAO,MAAM,OAAO,CAAC,GAAG,CAAC;oBACvB,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE;oBACpC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE;oBAChC,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE;oBAC1B,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;oBAC3B,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;iBAClC,CAAC,CAAA;YACJ,CAAC,CAAC,CAAA;YACF,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAC9C,GAAG,CAAC,cAAc,CAAC,kBAAkB,CAAC,SAAS,CAAC;gBAChD,IAAA,8BAAuB,EAAC,GAAG,EAAE,SAAS,CAAC;aACxC,CAAC,CAAA;YAEF,OAAO;gBACL,QAAQ,EAAE,kBAAkB;gBAC5B,IAAI,EAAE;oBACJ,SAAS;oBACT,QAAQ;oBACR,UAAU,EAAE,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE;oBACnC,OAAO,EAAE,QAAQ,CAAC,GAAG;oBACrB,UAAU;oBACV,cAAc;oBACd,kBAAkB,EAAE,CAAC;oBACrB,aAAa;oBACb,aAAa;iBACd;aACF,CAAA;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC","sourcesContent":["import { AppContext } from '../../../../context'\nimport { Server } from '../../../../lexicon'\nimport { isValidDidDocForService } from './util'\n\nexport default function (server: Server, ctx: AppContext) {\n server.com.atproto.server.checkAccountStatus({\n auth: ctx.authVerifier.authorization({\n authorize: () => {\n // always allow\n },\n }),\n handler: async ({ auth }) => {\n const requester = auth.credentials.did\n const [\n repoRoot,\n repoBlocks,\n indexedRecords,\n importedBlobs,\n expectedBlobs,\n ] = await ctx.actorStore.read(requester, async (store) => {\n return await Promise.all([\n store.repo.storage.getRootDetailed(),\n store.repo.storage.countBlocks(),\n store.record.recordCount(),\n store.repo.blob.blobCount(),\n store.repo.blob.recordBlobCount(),\n ])\n })\n const [activated, validDid] = await Promise.all([\n ctx.accountManager.isAccountActivated(requester),\n isValidDidDocForService(ctx, requester),\n ])\n\n return {\n encoding: 'application/json',\n body: {\n activated,\n validDid,\n repoCommit: repoRoot.cid.toString(),\n repoRev: repoRoot.rev,\n repoBlocks,\n indexedRecords,\n privateStateValues: 0,\n expectedBlobs,\n importedBlobs,\n },\n }\n },\n })\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"confirmEmail.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/confirmEmail.ts"],"names":[],"mappings":";;AAKA,4BAsCC;AA3CD,sDAA0D;AAG1D,2DAAkD;AAElD,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC;QACrC,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,aAAa,CAAC;YACnC,aAAa,EAAE,IAAI;YACnB,SAAS,EAAE,CAAC,WAAW,EAAE,EAAE;gBACzB,WAAW,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAA;YAChE,CAAC;SACF,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE;YACtC,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAA;YAEhC,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,UAAU,CAAC,GAAG,EAAE;gBACpD,kBAAkB,EAAE,IAAI;aACzB,CAAC,CAAA;YACF,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,MAAM,IAAI,iCAAmB,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,CAAA;YACpE,CAAC;YAED,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;gBACtB,MAAM,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CACrD,KAAK,CAAC,IAAI,EACV,MAAM,GAAG,CAAC,mBAAmB,CAC3B,GAAG,EACH,IAAI,CAAC,WAAW,CAAC,GAAG,EACpB,cAAG,CAAC,4BAA4B,CACjC,CACF,CAAA;gBACD,OAAM;YACR,CAAC;YAED,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,IAAI,CAAA;YAEnC,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;gBACvC,MAAM,IAAI,iCAAmB,CAAC,eAAe,EAAE,cAAc,CAAC,CAAA;YAChE,CAAC;YACD,MAAM,GAAG,CAAC,cAAc,CAAC,YAAY,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAA;QACvD,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"confirmEmail.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/confirmEmail.ts"],"names":[],"mappings":";;AAKA,4BAsCC;AA3CD,sDAA0D;AAG1D,2DAAkD;AAElD,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC;QACrC,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,aAAa,CAAC;YACnC,aAAa,EAAE,IAAI;YACnB,SAAS,EAAE,CAAC,WAAW,EAAE,EAAE;gBACzB,WAAW,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAA;YAChE,CAAC;SACF,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE;YACtC,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAA;YAEhC,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,UAAU,CAAC,GAAG,EAAE;gBACpD,kBAAkB,EAAE,IAAI;aACzB,CAAC,CAAA;YACF,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,MAAM,IAAI,iCAAmB,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,CAAA;YACpE,CAAC;YAED,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;gBACtB,MAAM,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CACrD,KAAK,CAAC,IAAI,EACV,MAAM,GAAG,CAAC,mBAAmB,CAC3B,GAAG,EACH,IAAI,CAAC,WAAW,CAAC,GAAG,EACpB,cAAG,CAAC,4BAA4B,CACjC,CACF,CAAA;gBACD,OAAM;YACR,CAAC;YAED,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,IAAI,CAAA;YAEnC,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;gBACvC,MAAM,IAAI,iCAAmB,CAAC,eAAe,EAAE,cAAc,CAAC,CAAA;YAChE,CAAC;YACD,MAAM,GAAG,CAAC,cAAc,CAAC,YAAY,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAA;QACvD,CAAC;KACF,CAAC,CAAA;AACJ,CAAC","sourcesContent":["import { InvalidRequestError } from '@atproto/xrpc-server'\nimport { AppContext } from '../../../../context'\nimport { Server } from '../../../../lexicon'\nimport { ids } from '../../../../lexicon/lexicons'\n\nexport default function (server: Server, ctx: AppContext) {\n server.com.atproto.server.confirmEmail({\n auth: ctx.authVerifier.authorization({\n checkTakedown: true,\n authorize: (permissions) => {\n permissions.assertAccount({ attr: 'email', action: 'manage' })\n },\n }),\n handler: async ({ auth, input, req }) => {\n const did = auth.credentials.did\n\n const user = await ctx.accountManager.getAccount(did, {\n includeDeactivated: true,\n })\n if (!user) {\n throw new InvalidRequestError('user not found', 'AccountNotFound')\n }\n\n if (ctx.entrywayAgent) {\n await ctx.entrywayAgent.com.atproto.server.confirmEmail(\n input.body,\n await ctx.entrywayAuthHeaders(\n req,\n auth.credentials.did,\n ids.ComAtprotoServerConfirmEmail,\n ),\n )\n return\n }\n\n const { token, email } = input.body\n\n if (user.email !== email.toLowerCase()) {\n throw new InvalidRequestError('invalid email', 'InvalidEmail')\n }\n await ctx.accountManager.confirmEmail({ did, token })\n },\n })\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"createAccount.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/createAccount.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createAccount.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/createAccount.ts"],"names":[],"mappings":"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","sourcesContent":["import * as plc from '@did-plc/lib'\nimport { isEmailValid } from '@hapi/address'\nimport { isDisposableEmail } from 'disposable-email-domains-js'\nimport { DidDocument, MINUTE, check } from '@atproto/common'\nimport { ExportableKeypair, Keypair, Secp256k1Keypair } from '@atproto/crypto'\nimport { AtprotoData, ensureAtpDocument } from '@atproto/identity'\nimport { AuthRequiredError, InvalidRequestError } from '@atproto/xrpc-server'\nimport { AccountStatus } from '../../../../account-manager/account-manager'\nimport { NEW_PASSWORD_MAX_LENGTH } from '../../../../account-manager/helpers/scrypt'\nimport { AppContext } from '../../../../context'\nimport { baseNormalizeAndValidate } from '../../../../handle'\nimport { Server } from '../../../../lexicon'\nimport { InputSchema as CreateAccountInput } from '../../../../lexicon/types/com/atproto/server/createAccount'\nimport { syncEvtDataFromCommit } from '../../../../sequencer'\nimport { safeResolveDidDoc } from './util'\n\nexport default function (server: Server, ctx: AppContext) {\n server.com.atproto.server.createAccount({\n rateLimit: {\n durationMs: 5 * MINUTE,\n points: 100,\n },\n auth: ctx.authVerifier.userServiceAuthOptional,\n handler: async ({ input, auth, req }) => {\n // @NOTE Until this code and the OAuthStore's `createAccount` are\n // refactored together, any change made here must be reflected over there.\n\n const requester = auth.credentials?.did ?? null\n const {\n did,\n handle,\n email,\n password,\n inviteCode,\n signingKey,\n plcOp,\n deactivated,\n } = ctx.entrywayAgent\n ? await validateInputsForEntrywayPds(ctx, input.body)\n : await validateInputsForLocalPds(ctx, input.body, requester)\n\n let didDoc: DidDocument | undefined\n let creds: { accessJwt: string; refreshJwt: string }\n await ctx.actorStore.create(did, signingKey)\n try {\n const commit = await ctx.actorStore.transact(did, (actorTxn) =>\n actorTxn.repo.createRepo([]),\n )\n\n // Generate a real did with PLC\n if (plcOp) {\n try {\n await ctx.plcClient.sendOperation(did, plcOp)\n } catch (err) {\n req.log.error(\n { didKey: ctx.plcRotationKey.did(), handle },\n 'failed to create did:plc',\n )\n throw err\n }\n }\n\n didDoc = await safeResolveDidDoc(ctx, did, true)\n\n creds = await ctx.accountManager.createAccountAndSession({\n did,\n handle,\n email,\n password,\n repoCid: commit.cid,\n repoRev: commit.rev,\n inviteCode,\n deactivated,\n })\n\n if (!deactivated) {\n await ctx.sequencer.sequenceIdentityEvt(did, handle)\n await ctx.sequencer.sequenceAccountEvt(did, AccountStatus.Active)\n await ctx.sequencer.sequenceCommit(did, commit)\n await ctx.sequencer.sequenceSyncEvt(\n did,\n syncEvtDataFromCommit(commit),\n )\n }\n await ctx.accountManager.updateRepoRoot(did, commit.cid, commit.rev)\n await ctx.actorStore.clearReservedKeypair(signingKey.did(), did)\n } catch (err) {\n // this will only be reached if the actor store _did not_ exist before\n await ctx.actorStore.destroy(did)\n throw err\n }\n\n return {\n encoding: 'application/json',\n body: {\n handle,\n did: did,\n didDoc,\n accessJwt: creds.accessJwt,\n refreshJwt: creds.refreshJwt,\n },\n }\n },\n })\n}\n\nconst validateInputsForEntrywayPds = async (\n ctx: AppContext,\n input: CreateAccountInput,\n) => {\n const { did, plcOp } = input\n const handle = baseNormalizeAndValidate(input.handle)\n if (!did || !input.plcOp) {\n throw new InvalidRequestError(\n 'non-entryway pds requires bringing a DID and plcOp',\n )\n }\n if (!check.is(plcOp, plc.def.operation)) {\n throw new InvalidRequestError('invalid plc operation', 'IncompatibleDidDoc')\n }\n const plcRotationKey = ctx.cfg.entryway?.plcRotationKey\n if (!plcRotationKey || !plcOp.rotationKeys.includes(plcRotationKey)) {\n throw new InvalidRequestError(\n 'PLC DID does not include service rotation key',\n 'IncompatibleDidDoc',\n )\n }\n try {\n await plc.assureValidOp(plcOp)\n await plc.assureValidSig([plcRotationKey], plcOp)\n } catch (err) {\n throw new InvalidRequestError('invalid plc operation', 'IncompatibleDidDoc')\n }\n const doc = plc.formatDidDoc({ did, ...plcOp })\n const data = ensureAtpDocument(doc)\n\n let signingKey: ExportableKeypair | undefined\n if (input.did) {\n signingKey = await ctx.actorStore.getReservedKeypair(input.did)\n }\n if (!signingKey) {\n signingKey = await ctx.actorStore.getReservedKeypair(data.signingKey)\n }\n if (!signingKey) {\n throw new InvalidRequestError('reserved signing key does not exist')\n }\n\n validateAtprotoData(data, {\n handle,\n pds: ctx.cfg.service.publicUrl,\n signingKey: signingKey.did(),\n })\n\n return {\n did,\n handle,\n email: undefined,\n password: undefined,\n inviteCode: undefined,\n signingKey,\n plcOp,\n deactivated: false,\n }\n}\n\nconst validateInputsForLocalPds = async (\n ctx: AppContext,\n input: CreateAccountInput,\n requester: string | null,\n) => {\n const { email, password, inviteCode } = input\n if (input.plcOp) {\n throw new InvalidRequestError('Unsupported input: \"plcOp\"')\n }\n\n if (password && password.length > NEW_PASSWORD_MAX_LENGTH) {\n throw new InvalidRequestError(\n `Password too long. Maximum length is ${NEW_PASSWORD_MAX_LENGTH} characters.`,\n )\n }\n\n if (ctx.cfg.invites.required && !inviteCode) {\n throw new InvalidRequestError(\n 'No invite code provided',\n 'InvalidInviteCode',\n )\n }\n\n if (!email) {\n throw new InvalidRequestError('Email is required')\n } else if (!isEmailValid(email) || isDisposableEmail(email)) {\n throw new InvalidRequestError(\n 'This email address is not supported, please use a different email.',\n )\n }\n\n // normalize & ensure valid handle\n const handle = await ctx.accountManager.normalizeAndValidateHandle(\n input.handle,\n { did: input.did },\n )\n\n // check that the invite code still has uses\n if (ctx.cfg.invites.required && inviteCode) {\n await ctx.accountManager.ensureInviteIsAvailable(inviteCode)\n }\n\n // check that the handle and email are available\n const [handleAccnt, emailAcct] = await Promise.all([\n ctx.accountManager.getAccount(handle),\n ctx.accountManager.getAccountByEmail(email),\n ])\n if (handleAccnt) {\n throw new InvalidRequestError(`Handle already taken: ${handle}`)\n } else if (emailAcct) {\n throw new InvalidRequestError(`Email already taken: ${email}`)\n }\n\n // determine the did & any plc ops we need to send\n // if the provided did document is poorly setup, we throw\n const signingKey = await Secp256k1Keypair.create({ exportable: true })\n\n let did: string\n let plcOp: plc.Operation | null\n let deactivated = false\n if (input.did) {\n if (input.did !== requester) {\n throw new AuthRequiredError(\n `Missing auth to create account with did: ${input.did}`,\n )\n }\n did = input.did\n plcOp = null\n deactivated = true\n } else {\n const formatted = await formatDidAndPlcOp(ctx, handle, input, signingKey)\n did = formatted.did\n plcOp = formatted.plcOp\n }\n\n return {\n did,\n handle,\n email,\n password,\n inviteCode,\n signingKey,\n plcOp,\n deactivated,\n }\n}\n\nconst formatDidAndPlcOp = async (\n ctx: AppContext,\n handle: string,\n input: CreateAccountInput,\n signingKey: Keypair,\n): Promise<{\n did: string\n plcOp: plc.Operation | null\n}> => {\n // if the user is not bringing a DID, then we format a create op for PLC\n const rotationKeys = [ctx.plcRotationKey.did()]\n if (ctx.cfg.identity.recoveryDidKey) {\n rotationKeys.unshift(ctx.cfg.identity.recoveryDidKey)\n }\n if (input.recoveryKey) {\n rotationKeys.unshift(input.recoveryKey)\n }\n const plcCreate = await plc.createOp({\n signingKey: signingKey.did(),\n rotationKeys,\n handle,\n pds: ctx.cfg.service.publicUrl,\n signer: ctx.plcRotationKey,\n })\n return {\n did: plcCreate.did,\n plcOp: plcCreate.op,\n }\n}\nconst validateAtprotoData = (\n data: AtprotoData,\n expected: {\n handle: string\n pds: string\n signingKey: string\n },\n) => {\n // if the user is bringing their own did:\n // resolve the user's did doc data, including rotationKeys if did:plc\n // determine if we have the capability to make changes to their DID\n if (data.handle !== expected.handle) {\n throw new InvalidRequestError(\n 'provided handle does not match DID document handle',\n 'IncompatibleDidDoc',\n )\n } else if (data.pds !== expected.pds) {\n throw new InvalidRequestError(\n 'DID document pds endpoint does not match service endpoint',\n 'IncompatibleDidDoc',\n )\n } else if (data.signingKey !== expected.signingKey) {\n throw new InvalidRequestError(\n 'DID document signing key does not match service signing key',\n 'IncompatibleDidDoc',\n )\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"createAppPassword.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/createAppPassword.ts"],"names":[],"mappings":";;AAOA,4BAsCC;AA7CD,sDAAqD;AACrD,uDAAoD;AAGpD,2DAAkD;AAClD,0CAA+C;AAE/C,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC;QAC1C,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,aAAa,CAAC;YACnC,aAAa,EAAE,IAAI;YACnB,MAAM,EAAE,wBAAW;YACnB,SAAS,EAAE,GAAG,EAAE;gBACd,MAAM,IAAI,4BAAc,CACtB,uDAAuD,CACxD,CAAA;YACH,CAAC;SACF,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE;YACtC,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;gBACtB,OAAO,IAAA,sBAAc,EACnB,MAAM,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAC1D,KAAK,CAAC,IAAI,EACV,MAAM,GAAG,CAAC,mBAAmB,CAC3B,GAAG,EACH,IAAI,CAAC,WAAW,CAAC,GAAG,EACpB,cAAG,CAAC,iCAAiC,CACtC,CACF,CACF,CAAA;YACH,CAAC;YAED,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,CAAA;YAC3B,MAAM,WAAW,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,iBAAiB,CAC5D,IAAI,CAAC,WAAW,CAAC,GAAG,EACpB,IAAI,EACJ,KAAK,CAAC,IAAI,CAAC,UAAU,IAAI,KAAK,CAC/B,CAAA;YAED,OAAO;gBACL,QAAQ,EAAE,kBAAkB;gBAC5B,IAAI,EAAE,WAAW;aAClB,CAAA;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"createAppPassword.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/createAppPassword.ts"],"names":[],"mappings":";;AAOA,4BAsCC;AA7CD,sDAAqD;AACrD,uDAAoD;AAGpD,2DAAkD;AAClD,0CAA+C;AAE/C,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC;QAC1C,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,aAAa,CAAC;YACnC,aAAa,EAAE,IAAI;YACnB,MAAM,EAAE,wBAAW;YACnB,SAAS,EAAE,GAAG,EAAE;gBACd,MAAM,IAAI,4BAAc,CACtB,uDAAuD,CACxD,CAAA;YACH,CAAC;SACF,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE;YACtC,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;gBACtB,OAAO,IAAA,sBAAc,EACnB,MAAM,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAC1D,KAAK,CAAC,IAAI,EACV,MAAM,GAAG,CAAC,mBAAmB,CAC3B,GAAG,EACH,IAAI,CAAC,WAAW,CAAC,GAAG,EACpB,cAAG,CAAC,iCAAiC,CACtC,CACF,CACF,CAAA;YACH,CAAC;YAED,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,CAAA;YAC3B,MAAM,WAAW,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,iBAAiB,CAC5D,IAAI,CAAC,WAAW,CAAC,GAAG,EACpB,IAAI,EACJ,KAAK,CAAC,IAAI,CAAC,UAAU,IAAI,KAAK,CAC/B,CAAA;YAED,OAAO;gBACL,QAAQ,EAAE,kBAAkB;gBAC5B,IAAI,EAAE,WAAW;aAClB,CAAA;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC","sourcesContent":["import { ForbiddenError } from '@atproto/xrpc-server'\nimport { ACCESS_FULL } from '../../../../auth-scope'\nimport { AppContext } from '../../../../context'\nimport { Server } from '../../../../lexicon'\nimport { ids } from '../../../../lexicon/lexicons'\nimport { resultPassthru } from '../../../proxy'\n\nexport default function (server: Server, ctx: AppContext) {\n server.com.atproto.server.createAppPassword({\n auth: ctx.authVerifier.authorization({\n checkTakedown: true,\n scopes: ACCESS_FULL,\n authorize: () => {\n throw new ForbiddenError(\n 'OAuth credentials are not supported for this endpoint',\n )\n },\n }),\n handler: async ({ auth, input, req }) => {\n if (ctx.entrywayAgent) {\n return resultPassthru(\n await ctx.entrywayAgent.com.atproto.server.createAppPassword(\n input.body,\n await ctx.entrywayAuthHeaders(\n req,\n auth.credentials.did,\n ids.ComAtprotoServerCreateAppPassword,\n ),\n ),\n )\n }\n\n const { name } = input.body\n const appPassword = await ctx.accountManager.createAppPassword(\n auth.credentials.did,\n name,\n input.body.privileged ?? false,\n )\n\n return {\n encoding: 'application/json',\n body: appPassword,\n }\n },\n })\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"createInviteCode.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/createInviteCode.ts"],"names":[],"mappings":";;AAKA,4BAwBC;AA7BD,sDAA0D;AAG1D,iCAAmC;AAEnC,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC;QACzC,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,UAAU;QACjC,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;YAC3B,IAAI,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;gBACrB,MAAM,IAAI,iCAAmB,CAC3B,qDAAqD,CACtD,CAAA;YACH,CAAC;YACD,MAAM,EAAE,QAAQ,EAAE,UAAU,GAAG,OAAO,EAAE,GAAG,KAAK,CAAC,IAAI,CAAA;YAErD,MAAM,IAAI,GAAG,IAAA,iBAAU,EAAC,GAAG,CAAC,GAAG,CAAC,CAAA;YAEhC,MAAM,GAAG,CAAC,cAAc,CAAC,iBAAiB,CACxC,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EACxC,QAAQ,CACT,CAAA;YAED,OAAO;gBACL,QAAQ,EAAE,kBAAkB;gBAC5B,IAAI,EAAE,EAAE,IAAI,EAAE;aACf,CAAA;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"createInviteCode.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/createInviteCode.ts"],"names":[],"mappings":";;AAKA,4BAwBC;AA7BD,sDAA0D;AAG1D,iCAAmC;AAEnC,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC;QACzC,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,UAAU;QACjC,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;YAC3B,IAAI,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;gBACrB,MAAM,IAAI,iCAAmB,CAC3B,qDAAqD,CACtD,CAAA;YACH,CAAC;YACD,MAAM,EAAE,QAAQ,EAAE,UAAU,GAAG,OAAO,EAAE,GAAG,KAAK,CAAC,IAAI,CAAA;YAErD,MAAM,IAAI,GAAG,IAAA,iBAAU,EAAC,GAAG,CAAC,GAAG,CAAC,CAAA;YAEhC,MAAM,GAAG,CAAC,cAAc,CAAC,iBAAiB,CACxC,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EACxC,QAAQ,CACT,CAAA;YAED,OAAO;gBACL,QAAQ,EAAE,kBAAkB;gBAC5B,IAAI,EAAE,EAAE,IAAI,EAAE;aACf,CAAA;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC","sourcesContent":["import { InvalidRequestError } from '@atproto/xrpc-server'\nimport { AppContext } from '../../../../context'\nimport { Server } from '../../../../lexicon'\nimport { genInvCode } from './util'\n\nexport default function (server: Server, ctx: AppContext) {\n server.com.atproto.server.createInviteCode({\n auth: ctx.authVerifier.adminToken,\n handler: async ({ input }) => {\n if (ctx.cfg.entryway) {\n throw new InvalidRequestError(\n 'Account invites are managed by the entryway service',\n )\n }\n const { useCount, forAccount = 'admin' } = input.body\n\n const code = genInvCode(ctx.cfg)\n\n await ctx.accountManager.createInviteCodes(\n [{ account: forAccount, codes: [code] }],\n useCount,\n )\n\n return {\n encoding: 'application/json',\n body: { code },\n }\n },\n })\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"createInviteCodes.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/createInviteCodes.ts"],"names":[],"mappings":";;AAMA,4BA2BC;AAjCD,sDAA0D;AAI1D,iCAAoC;AAEpC,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC;QAC1C,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,UAAU;QACjC,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;YAC3B,IAAI,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;gBACrB,MAAM,IAAI,iCAAmB,CAC3B,qDAAqD,CACtD,CAAA;YACH,CAAC;YAED,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC,IAAI,CAAA;YAE1C,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,OAAO,CAAC,CAAA;YAEvD,MAAM,YAAY,GAAmB,EAAE,CAAA;YACvC,KAAK,MAAM,OAAO,IAAI,WAAW,EAAE,CAAC;gBAClC,MAAM,KAAK,GAAG,IAAA,kBAAW,EAAC,GAAG,CAAC,GAAG,EAAE,SAAS,CAAC,CAAA;gBAC7C,YAAY,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAA;YACvC,CAAC;YACD,MAAM,GAAG,CAAC,cAAc,CAAC,iBAAiB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAA;YAElE,OAAO;gBACL,QAAQ,EAAE,kBAAkB;gBAC5B,IAAI,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE;aAC9B,CAAA;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"createInviteCodes.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/createInviteCodes.ts"],"names":[],"mappings":";;AAMA,4BA2BC;AAjCD,sDAA0D;AAI1D,iCAAoC;AAEpC,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC;QAC1C,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,UAAU;QACjC,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;YAC3B,IAAI,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;gBACrB,MAAM,IAAI,iCAAmB,CAC3B,qDAAqD,CACtD,CAAA;YACH,CAAC;YAED,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC,IAAI,CAAA;YAE1C,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,OAAO,CAAC,CAAA;YAEvD,MAAM,YAAY,GAAmB,EAAE,CAAA;YACvC,KAAK,MAAM,OAAO,IAAI,WAAW,EAAE,CAAC;gBAClC,MAAM,KAAK,GAAG,IAAA,kBAAW,EAAC,GAAG,CAAC,GAAG,EAAE,SAAS,CAAC,CAAA;gBAC7C,YAAY,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAA;YACvC,CAAC;YACD,MAAM,GAAG,CAAC,cAAc,CAAC,iBAAiB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAA;YAElE,OAAO;gBACL,QAAQ,EAAE,kBAAkB;gBAC5B,IAAI,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE;aAC9B,CAAA;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC","sourcesContent":["import { InvalidRequestError } from '@atproto/xrpc-server'\nimport { AppContext } from '../../../../context'\nimport { Server } from '../../../../lexicon'\nimport { AccountCodes } from '../../../../lexicon/types/com/atproto/server/createInviteCodes'\nimport { genInvCodes } from './util'\n\nexport default function (server: Server, ctx: AppContext) {\n server.com.atproto.server.createInviteCodes({\n auth: ctx.authVerifier.adminToken,\n handler: async ({ input }) => {\n if (ctx.cfg.entryway) {\n throw new InvalidRequestError(\n 'Account invites are managed by the entryway service',\n )\n }\n\n const { codeCount, useCount } = input.body\n\n const forAccounts = input.body.forAccounts ?? ['admin']\n\n const accountCodes: AccountCodes[] = []\n for (const account of forAccounts) {\n const codes = genInvCodes(ctx.cfg, codeCount)\n accountCodes.push({ account, codes })\n }\n await ctx.accountManager.createInviteCodes(accountCodes, useCount)\n\n return {\n encoding: 'application/json',\n body: { codes: accountCodes },\n }\n },\n })\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"createSession.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/createSession.ts"],"names":[],"mappings":";;AAUA,4BA+DC;AAzED,4CAA6C;AAC7C,4CAAgD;AAChD,sDAAwD;AACxD,iFAAiF;AACjF,uEAAoF;AAGpF,0CAA+C;AAC/C,iCAAyC;AAEzC,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC;QACtC,SAAS,EAAE;YACT;gBACE,UAAU,EAAE,YAAG;gBACf,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,IAAI,GAAG,CAAC,EAAE,EAAE;aAClE;YACD;gBACE,UAAU,EAAE,CAAC,GAAG,eAAM;gBACtB,MAAM,EAAE,EAAE;gBACV,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,IAAI,GAAG,CAAC,EAAE,EAAE;aAClE;SACF;QACD,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE;YAChC,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;gBACtB,OAAO,IAAA,sBAAc,EACnB,MAAM,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CACtD,KAAK,CAAC,IAAI,EACV,GAAG,CAAC,uBAAuB,CAAC,GAAG,CAAC,CACjC,CACF,CAAA;YACH,CAAC;YAED,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,gCAAuB,EAAE,CAAC;gBACzD,MAAM,IAAI,+BAAiB,CACzB,sDAAsD,CACvD,CAAA;YACH,CAAC;YAED,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,WAAW,EAAE,GACxC,MAAM,GAAG,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;YAE5C,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,IAAI,aAAa,EAAE,CAAC;gBAChD,MAAM,IAAI,+BAAiB,CACzB,6BAA6B,EAC7B,iBAAiB,CAClB,CAAA;YACH,CAAC;YAED,MAAM,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,EAAE,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAC5D,GAAG,CAAC,cAAc,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,WAAW,EAAE,aAAa,CAAC;gBACtE,IAAA,uBAAgB,EAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC;aAChC,CAAC,CAAA;YAEF,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,qCAAmB,EAAC,IAAI,CAAC,CAAA;YAEpD,OAAO;gBACL,QAAQ,EAAE,kBAAkB;gBAC5B,IAAI,EAAE;oBACJ,GAAG,EAAE,IAAI,CAAC,GAAG;oBACb,MAAM;oBACN,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,uBAAc;oBACrC,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,SAAS;oBAC9B,cAAc,EAAE,CAAC,CAAC,IAAI,CAAC,gBAAgB;oBACvC,SAAS;oBACT,UAAU;oBACV,MAAM;oBACN,MAAM;iBACP;aACF,CAAA;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"createSession.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/createSession.ts"],"names":[],"mappings":";;AAUA,4BA+DC;AAzED,4CAA6C;AAC7C,4CAAgD;AAChD,sDAAwD;AACxD,iFAAiF;AACjF,uEAAoF;AAGpF,0CAA+C;AAC/C,iCAAyC;AAEzC,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC;QACtC,SAAS,EAAE;YACT;gBACE,UAAU,EAAE,YAAG;gBACf,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,IAAI,GAAG,CAAC,EAAE,EAAE;aAClE;YACD;gBACE,UAAU,EAAE,CAAC,GAAG,eAAM;gBACtB,MAAM,EAAE,EAAE;gBACV,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,IAAI,GAAG,CAAC,EAAE,EAAE;aAClE;SACF;QACD,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE;YAChC,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;gBACtB,OAAO,IAAA,sBAAc,EACnB,MAAM,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CACtD,KAAK,CAAC,IAAI,EACV,GAAG,CAAC,uBAAuB,CAAC,GAAG,CAAC,CACjC,CACF,CAAA;YACH,CAAC;YAED,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,gCAAuB,EAAE,CAAC;gBACzD,MAAM,IAAI,+BAAiB,CACzB,sDAAsD,CACvD,CAAA;YACH,CAAC;YAED,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,WAAW,EAAE,GACxC,MAAM,GAAG,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;YAE5C,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,IAAI,aAAa,EAAE,CAAC;gBAChD,MAAM,IAAI,+BAAiB,CACzB,6BAA6B,EAC7B,iBAAiB,CAClB,CAAA;YACH,CAAC;YAED,MAAM,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,EAAE,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAC5D,GAAG,CAAC,cAAc,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,WAAW,EAAE,aAAa,CAAC;gBACtE,IAAA,uBAAgB,EAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC;aAChC,CAAC,CAAA;YAEF,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,qCAAmB,EAAC,IAAI,CAAC,CAAA;YAEpD,OAAO;gBACL,QAAQ,EAAE,kBAAkB;gBAC5B,IAAI,EAAE;oBACJ,GAAG,EAAE,IAAI,CAAC,GAAG;oBACb,MAAM;oBACN,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,uBAAc;oBACrC,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,SAAS;oBAC9B,cAAc,EAAE,CAAC,CAAC,IAAI,CAAC,gBAAgB;oBACvC,SAAS;oBACT,UAAU;oBACV,MAAM;oBACN,MAAM;iBACP;aACF,CAAA;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC","sourcesContent":["import { DAY, MINUTE } from '@atproto/common'\nimport { INVALID_HANDLE } from '@atproto/syntax'\nimport { AuthRequiredError } from '@atproto/xrpc-server'\nimport { formatAccountStatus } from '../../../../account-manager/account-manager'\nimport { OLD_PASSWORD_MAX_LENGTH } from '../../../../account-manager/helpers/scrypt'\nimport { AppContext } from '../../../../context'\nimport { Server } from '../../../../lexicon'\nimport { resultPassthru } from '../../../proxy'\nimport { didDocForSession } from './util'\n\nexport default function (server: Server, ctx: AppContext) {\n server.com.atproto.server.createSession({\n rateLimit: [\n {\n durationMs: DAY,\n points: 300,\n calcKey: ({ input, req }) => `${input.body.identifier}-${req.ip}`,\n },\n {\n durationMs: 5 * MINUTE,\n points: 30,\n calcKey: ({ input, req }) => `${input.body.identifier}-${req.ip}`,\n },\n ],\n handler: async ({ input, req }) => {\n if (ctx.entrywayAgent) {\n return resultPassthru(\n await ctx.entrywayAgent.com.atproto.server.createSession(\n input.body,\n ctx.entrywayPassthruHeaders(req),\n ),\n )\n }\n\n if (input.body.password.length > OLD_PASSWORD_MAX_LENGTH) {\n throw new AuthRequiredError(\n 'Password too long. Consider resetting your password.',\n )\n }\n\n const { user, isSoftDeleted, appPassword } =\n await ctx.accountManager.login(input.body)\n\n if (!input.body.allowTakendown && isSoftDeleted) {\n throw new AuthRequiredError(\n 'Account has been taken down',\n 'AccountTakedown',\n )\n }\n\n const [{ accessJwt, refreshJwt }, didDoc] = await Promise.all([\n ctx.accountManager.createSession(user.did, appPassword, isSoftDeleted),\n didDocForSession(ctx, user.did),\n ])\n\n const { status, active } = formatAccountStatus(user)\n\n return {\n encoding: 'application/json',\n body: {\n did: user.did,\n didDoc,\n handle: user.handle ?? INVALID_HANDLE,\n email: user.email ?? undefined,\n emailConfirmed: !!user.emailConfirmedAt,\n accessJwt,\n refreshJwt,\n active,\n status,\n },\n }\n },\n })\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"deactivateAccount.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/deactivateAccount.ts"],"names":[],"mappings":";;AAKA,4BA8BC;AAnCD,sDAAqD;AACrD,uDAA+D;AAI/D,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC;QAC1C,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,aAAa,CAAC;YACnC,UAAU,EAAE,CAAC,sBAAS,CAAC,SAAS,CAAC;YACjC,MAAM,EAAE,wBAAW;YACnB,SAAS,EAAE,GAAG,EAAE;gBACd,MAAM,IAAI,4BAAc,CACtB,uDAAuD,CACxD,CAAA;YACH,CAAC;SACF,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE;YACtC,gIAAgI;YAChI,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;gBACtB,MAAM,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAC1D,KAAK,CAAC,IAAI,EACV,GAAG,CAAC,uBAAuB,CAAC,GAAG,CAAC,CACjC,CAAA;gBACD,OAAM;YACR,CAAC;YAED,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAA;YACtC,MAAM,GAAG,CAAC,cAAc,CAAC,iBAAiB,CACxC,SAAS,EACT,KAAK,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAC/B,CAAA;YACD,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAA;YACnE,MAAM,GAAG,CAAC,SAAS,CAAC,kBAAkB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;QAC3D,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"deactivateAccount.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/deactivateAccount.ts"],"names":[],"mappings":";;AAKA,4BA8BC;AAnCD,sDAAqD;AACrD,uDAA+D;AAI/D,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC;QAC1C,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,aAAa,CAAC;YACnC,UAAU,EAAE,CAAC,sBAAS,CAAC,SAAS,CAAC;YACjC,MAAM,EAAE,wBAAW;YACnB,SAAS,EAAE,GAAG,EAAE;gBACd,MAAM,IAAI,4BAAc,CACtB,uDAAuD,CACxD,CAAA;YACH,CAAC;SACF,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE;YACtC,gIAAgI;YAChI,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;gBACtB,MAAM,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAC1D,KAAK,CAAC,IAAI,EACV,GAAG,CAAC,uBAAuB,CAAC,GAAG,CAAC,CACjC,CAAA;gBACD,OAAM;YACR,CAAC;YAED,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAA;YACtC,MAAM,GAAG,CAAC,cAAc,CAAC,iBAAiB,CACxC,SAAS,EACT,KAAK,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAC/B,CAAA;YACD,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAA;YACnE,MAAM,GAAG,CAAC,SAAS,CAAC,kBAAkB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;QAC3D,CAAC;KACF,CAAC,CAAA;AACJ,CAAC","sourcesContent":["import { ForbiddenError } from '@atproto/xrpc-server'\nimport { ACCESS_FULL, AuthScope } from '../../../../auth-scope'\nimport { AppContext } from '../../../../context'\nimport { Server } from '../../../../lexicon'\n\nexport default function (server: Server, ctx: AppContext) {\n server.com.atproto.server.deactivateAccount({\n auth: ctx.authVerifier.authorization({\n additional: [AuthScope.Takendown],\n scopes: ACCESS_FULL,\n authorize: () => {\n throw new ForbiddenError(\n 'OAuth credentials are not supported for this endpoint',\n )\n },\n }),\n handler: async ({ req, auth, input }) => {\n // in the case of entryway, the full flow is deactivateAccount (PDS) -> deactivateAccount (Entryway) -> updateSubjectStatus(PDS)\n if (ctx.entrywayAgent) {\n await ctx.entrywayAgent.com.atproto.server.deactivateAccount(\n input.body,\n ctx.entrywayPassthruHeaders(req),\n )\n return\n }\n\n const requester = auth.credentials.did\n await ctx.accountManager.deactivateAccount(\n requester,\n input.body.deleteAfter ?? null,\n )\n const status = await ctx.accountManager.getAccountStatus(requester)\n await ctx.sequencer.sequenceAccountEvt(requester, status)\n },\n })\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"deleteAccount.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/deleteAccount.ts"],"names":[],"mappings":";;AAOA,4BAmDC;AA1DD,4CAAwC;AACxC,sDAA6E;AAC7E,iFAA2E;AAC3E,uEAAoF;AAIpF,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC;QACtC,SAAS,EAAE;YACT,UAAU,EAAE,CAAC,GAAG,eAAM;YACtB,MAAM,EAAE,EAAE;SACX;QACD,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE;YAChC,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,IAAI,CAAA;YAE3C,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,UAAU,CAAC,GAAG,EAAE;gBACvD,kBAAkB,EAAE,IAAI;gBACxB,gBAAgB,EAAE,IAAI;aACvB,CAAC,CAAA;YACF,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,IAAI,iCAAmB,CAAC,mBAAmB,CAAC,CAAA;YACpD,CAAC;YAED,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;gBACtB,MAAM,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CACtD,KAAK,CAAC,IAAI,EACV,GAAG,CAAC,uBAAuB,CAAC,GAAG,CAAC,CACjC,CAAA;gBACD,OAAM;YACR,CAAC;YAED,IAAI,QAAQ,CAAC,MAAM,GAAG,gCAAuB,EAAE,CAAC;gBAC9C,MAAM,IAAI,iCAAmB,CAAC,0BAA0B,CAAC,CAAA;YAC3D,CAAC;YAED,MAAM,SAAS,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,qBAAqB,CAC9D,GAAG,EACH,QAAQ,CACT,CAAA;YACD,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,MAAM,IAAI,+BAAiB,CAAC,yBAAyB,CAAC,CAAA;YACxD,CAAC;YAED,MAAM,GAAG,CAAC,cAAc,CAAC,qBAAqB,CAC5C,GAAG,EACH,gBAAgB,EAChB,KAAK,CACN,CAAA;YACD,MAAM,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;YACjC,MAAM,GAAG,CAAC,cAAc,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;YAC3C,MAAM,UAAU,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,kBAAkB,CACvD,GAAG,EACH,+BAAa,CAAC,OAAO,CACtB,CAAA;YACD,MAAM,GAAG,CAAC,SAAS,CAAC,gBAAgB,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC,CAAA;QACzD,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"deleteAccount.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/deleteAccount.ts"],"names":[],"mappings":";;AAOA,4BAmDC;AA1DD,4CAAwC;AACxC,sDAA6E;AAC7E,iFAA2E;AAC3E,uEAAoF;AAIpF,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC;QACtC,SAAS,EAAE;YACT,UAAU,EAAE,CAAC,GAAG,eAAM;YACtB,MAAM,EAAE,EAAE;SACX;QACD,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE;YAChC,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,IAAI,CAAA;YAE3C,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,UAAU,CAAC,GAAG,EAAE;gBACvD,kBAAkB,EAAE,IAAI;gBACxB,gBAAgB,EAAE,IAAI;aACvB,CAAC,CAAA;YACF,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,IAAI,iCAAmB,CAAC,mBAAmB,CAAC,CAAA;YACpD,CAAC;YAED,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;gBACtB,MAAM,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CACtD,KAAK,CAAC,IAAI,EACV,GAAG,CAAC,uBAAuB,CAAC,GAAG,CAAC,CACjC,CAAA;gBACD,OAAM;YACR,CAAC;YAED,IAAI,QAAQ,CAAC,MAAM,GAAG,gCAAuB,EAAE,CAAC;gBAC9C,MAAM,IAAI,iCAAmB,CAAC,0BAA0B,CAAC,CAAA;YAC3D,CAAC;YAED,MAAM,SAAS,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,qBAAqB,CAC9D,GAAG,EACH,QAAQ,CACT,CAAA;YACD,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,MAAM,IAAI,+BAAiB,CAAC,yBAAyB,CAAC,CAAA;YACxD,CAAC;YAED,MAAM,GAAG,CAAC,cAAc,CAAC,qBAAqB,CAC5C,GAAG,EACH,gBAAgB,EAChB,KAAK,CACN,CAAA;YACD,MAAM,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;YACjC,MAAM,GAAG,CAAC,cAAc,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;YAC3C,MAAM,UAAU,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,kBAAkB,CACvD,GAAG,EACH,+BAAa,CAAC,OAAO,CACtB,CAAA;YACD,MAAM,GAAG,CAAC,SAAS,CAAC,gBAAgB,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC,CAAA;QACzD,CAAC;KACF,CAAC,CAAA;AACJ,CAAC","sourcesContent":["import { MINUTE } from '@atproto/common'\nimport { AuthRequiredError, InvalidRequestError } from '@atproto/xrpc-server'\nimport { AccountStatus } from '../../../../account-manager/account-manager'\nimport { OLD_PASSWORD_MAX_LENGTH } from '../../../../account-manager/helpers/scrypt'\nimport { AppContext } from '../../../../context'\nimport { Server } from '../../../../lexicon'\n\nexport default function (server: Server, ctx: AppContext) {\n server.com.atproto.server.deleteAccount({\n rateLimit: {\n durationMs: 5 * MINUTE,\n points: 50,\n },\n handler: async ({ input, req }) => {\n const { did, password, token } = input.body\n\n const account = await ctx.accountManager.getAccount(did, {\n includeDeactivated: true,\n includeTakenDown: true,\n })\n if (!account) {\n throw new InvalidRequestError('account not found')\n }\n\n if (ctx.entrywayAgent) {\n await ctx.entrywayAgent.com.atproto.server.deleteAccount(\n input.body,\n ctx.entrywayPassthruHeaders(req),\n )\n return\n }\n\n if (password.length > OLD_PASSWORD_MAX_LENGTH) {\n throw new InvalidRequestError('Invalid password length.')\n }\n\n const validPass = await ctx.accountManager.verifyAccountPassword(\n did,\n password,\n )\n if (!validPass) {\n throw new AuthRequiredError('Invalid did or password')\n }\n\n await ctx.accountManager.assertValidEmailToken(\n did,\n 'delete_account',\n token,\n )\n await ctx.actorStore.destroy(did)\n await ctx.accountManager.deleteAccount(did)\n const accountSeq = await ctx.sequencer.sequenceAccountEvt(\n did,\n AccountStatus.Deleted,\n )\n await ctx.sequencer.deleteAllForUser(did, [accountSeq])\n },\n })\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"deleteSession.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/deleteSession.ts"],"names":[],"mappings":";;AAGA,4BAmBC;AAnBD,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,EAAE,aAAa,EAAE,GAAG,GAAG,CAAA;IAC7B,IAAI,aAAa,EAAE,CAAC;QAClB,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE;YACxD,MAAM,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAClD,SAAS,EACT,GAAG,CAAC,uBAAuB,CAAC,GAAG,CAAC,CACjC,CAAA;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC;YACtC,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC;gBAC7B,YAAY,EAAE,IAAI;aACnB,CAAC;YACF,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;gBAC1B,MAAM,GAAG,CAAC,cAAc,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;YACvE,CAAC;SACF,CAAC,CAAA;IACJ,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"deleteSession.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/deleteSession.ts"],"names":[],"mappings":";;AAGA,4BAmBC;AAnBD,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,EAAE,aAAa,EAAE,GAAG,GAAG,CAAA;IAC7B,IAAI,aAAa,EAAE,CAAC;QAClB,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE;YACxD,MAAM,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAClD,SAAS,EACT,GAAG,CAAC,uBAAuB,CAAC,GAAG,CAAC,CACjC,CAAA;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC;YACtC,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC;gBAC7B,YAAY,EAAE,IAAI;aACnB,CAAC;YACF,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;gBAC1B,MAAM,GAAG,CAAC,cAAc,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;YACvE,CAAC;SACF,CAAC,CAAA;IACJ,CAAC;AACH,CAAC","sourcesContent":["import { AppContext } from '../../../../context'\nimport { Server } from '../../../../lexicon'\n\nexport default function (server: Server, ctx: AppContext) {\n const { entrywayAgent } = ctx\n if (entrywayAgent) {\n server.com.atproto.server.deleteSession(async ({ req }) => {\n await entrywayAgent.com.atproto.server.deleteSession(\n undefined,\n ctx.entrywayPassthruHeaders(req),\n )\n })\n } else {\n server.com.atproto.server.deleteSession({\n auth: ctx.authVerifier.refresh({\n allowExpired: true,\n }),\n handler: async ({ auth }) => {\n await ctx.accountManager.revokeRefreshToken(auth.credentials.tokenId)\n },\n })\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"describeServer.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/describeServer.ts"],"names":[],"mappings":";;AAGA,4BAqBC;AArBD,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE;QAC5C,MAAM,oBAAoB,GAAG,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,oBAAoB,CAAA;QAClE,MAAM,kBAAkB,GAAG,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAA;QACnD,MAAM,aAAa,GAAG,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAA;QACtD,MAAM,cAAc,GAAG,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,iBAAiB,CAAA;QACxD,MAAM,mBAAmB,GAAG,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAAA;QAE/D,OAAO;YACL,QAAQ,EAAE,kBAAkB;YAC5B,IAAI,EAAE;gBACJ,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG;gBACxB,oBAAoB;gBACpB,kBAAkB;gBAClB,KAAK,EAAE,EAAE,aAAa,EAAE,cAAc,EAAE;gBACxC,OAAO,EAAE;oBACP,KAAK,EAAE,mBAAmB;iBAC3B;aACF;SACF,CAAA;IACH,CAAC,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"describeServer.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/describeServer.ts"],"names":[],"mappings":";;AAGA,4BAqBC;AArBD,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE;QAC5C,MAAM,oBAAoB,GAAG,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,oBAAoB,CAAA;QAClE,MAAM,kBAAkB,GAAG,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAA;QACnD,MAAM,aAAa,GAAG,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAA;QACtD,MAAM,cAAc,GAAG,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,iBAAiB,CAAA;QACxD,MAAM,mBAAmB,GAAG,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAAA;QAE/D,OAAO;YACL,QAAQ,EAAE,kBAAkB;YAC5B,IAAI,EAAE;gBACJ,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG;gBACxB,oBAAoB;gBACpB,kBAAkB;gBAClB,KAAK,EAAE,EAAE,aAAa,EAAE,cAAc,EAAE;gBACxC,OAAO,EAAE;oBACP,KAAK,EAAE,mBAAmB;iBAC3B;aACF;SACF,CAAA;IACH,CAAC,CAAC,CAAA;AACJ,CAAC","sourcesContent":["import { AppContext } from '../../../../context'\nimport { Server } from '../../../../lexicon'\n\nexport default function (server: Server, ctx: AppContext) {\n server.com.atproto.server.describeServer(() => {\n const availableUserDomains = ctx.cfg.identity.serviceHandleDomains\n const inviteCodeRequired = ctx.cfg.invites.required\n const privacyPolicy = ctx.cfg.service.privacyPolicyUrl\n const termsOfService = ctx.cfg.service.termsOfServiceUrl\n const contactEmailAddress = ctx.cfg.service.contactEmailAddress\n\n return {\n encoding: 'application/json',\n body: {\n did: ctx.cfg.service.did,\n availableUserDomains,\n inviteCodeRequired,\n links: { privacyPolicy, termsOfService },\n contact: {\n email: contactEmailAddress,\n },\n },\n }\n })\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"getAccountInviteCodes.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/getAccountInviteCodes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getAccountInviteCodes.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/getAccountInviteCodes.ts"],"names":[],"mappings":"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","sourcesContent":["import { ForbiddenError, InvalidRequestError } from '@atproto/xrpc-server'\nimport { CodeDetail } from '../../../../account-manager/helpers/invite'\nimport { ACCESS_FULL } from '../../../../auth-scope'\nimport { AppContext } from '../../../../context'\nimport { Server } from '../../../../lexicon'\nimport { ids } from '../../../../lexicon/lexicons'\nimport { resultPassthru } from '../../../proxy'\nimport { genInvCodes } from './util'\n\nexport default function (server: Server, ctx: AppContext) {\n server.com.atproto.server.getAccountInviteCodes({\n auth: ctx.authVerifier.authorization({\n checkTakedown: true,\n scopes: ACCESS_FULL,\n authorize: () => {\n throw new ForbiddenError(\n 'OAuth credentials are not supported for this endpoint',\n )\n },\n }),\n handler: async ({ params, auth, req }) => {\n if (ctx.entrywayAgent) {\n return resultPassthru(\n await ctx.entrywayAgent.com.atproto.server.getAccountInviteCodes(\n params,\n await ctx.entrywayAuthHeaders(\n req,\n auth.credentials.did,\n ids.ComAtprotoServerGetAccountInviteCodes,\n ),\n ),\n )\n }\n\n const requester = auth.credentials.did\n const { includeUsed, createAvailable } = params\n\n const [account, userCodes] = await Promise.all([\n ctx.accountManager.getAccount(requester),\n ctx.accountManager.getAccountInvitesCodes(requester),\n ])\n if (!account) {\n throw new InvalidRequestError('Account not found', 'NotFound')\n }\n\n let created: CodeDetail[] = []\n\n if (\n createAvailable &&\n ctx.cfg.invites.required &&\n ctx.cfg.invites.interval !== null\n ) {\n const { toCreate, total } = calculateCodesToCreate({\n did: requester,\n userCreatedAt: new Date(account.createdAt).getTime(),\n codes: userCodes,\n epoch: ctx.cfg.invites.epoch,\n interval: ctx.cfg.invites.interval,\n })\n if (toCreate > 0) {\n const codes = genInvCodes(ctx.cfg, toCreate)\n created = await ctx.accountManager.createAccountInviteCodes(\n requester,\n codes,\n total,\n account.invitesDisabled ?? 0,\n )\n }\n }\n\n const allCodes = [...userCodes, ...created]\n\n const filtered = allCodes.filter((code) => {\n if (code.disabled) return false\n if (!includeUsed && code.uses.length >= code.available) return false\n return true\n })\n\n return {\n encoding: 'application/json',\n body: {\n codes: filtered,\n },\n }\n },\n })\n}\n\n/**\n * WARNING: TRICKY SUBTLE MATH - DONT MESS WITH THIS FUNCTION UNLESS YOUR'RE VERY CONFIDENT\n * if the user wishes to create available codes & the server allows that,\n * we determine the number to create by dividing their account lifetime by the interval at which they can create codes\n * if an invite epoch is provided, we only calculate available invites since that epoch\n * we allow a max of 5 open codes at a given time\n * note: even if a user is disabled from future invites, we still create the invites for bookkeeping, we just immediately disable them as well\n */\nconst calculateCodesToCreate = (opts: {\n did: string\n userCreatedAt: number\n codes: CodeDetail[]\n epoch: number\n interval: number\n}): { toCreate: number; total: number } => {\n // for the sake of generating routine interval codes, we do not count explicitly gifted admin codes\n const routineCodes = opts.codes.filter((code) => code.createdBy !== 'admin')\n const unusedRoutineCodes = routineCodes.filter(\n (row) => !row.disabled && row.available > row.uses.length,\n )\n\n const userLifespan = Date.now() - opts.userCreatedAt\n\n // how many codes a user could create within the current epoch if they have 0\n let couldCreate: number\n\n if (opts.userCreatedAt >= opts.epoch) {\n // if the user was created after the epoch, then they can create a code for each interval since the epoch\n couldCreate = Math.floor(userLifespan / opts.interval)\n } else {\n // if the user was created before the epoch, we:\n // - calculate the total intervals since account creation\n // - calculate the total intervals before the epoch\n // - subtract the two\n const couldCreateTotal = Math.floor(userLifespan / opts.interval)\n const userPreEpochLifespan = opts.epoch - opts.userCreatedAt\n const couldCreateBeforeEpoch = Math.floor(\n userPreEpochLifespan / opts.interval,\n )\n couldCreate = couldCreateTotal - couldCreateBeforeEpoch\n }\n // we count the codes that the user has created within the current epoch\n const epochCodes = routineCodes.filter(\n (code) => new Date(code.createdAt).getTime() > opts.epoch,\n )\n // finally we the number of codes they currently have from the number that they could create, and take a max of 5\n const toCreate = Math.min(\n 5 - unusedRoutineCodes.length,\n couldCreate - epochCodes.length,\n )\n return {\n toCreate,\n total: routineCodes.length + toCreate,\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"getServiceAuth.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/getServiceAuth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getServiceAuth.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/getServiceAuth.ts"],"names":[],"mappings":";;AAYA,4BAkFC;AA9FD,4CAA8C;AAC9C,sDAA4E;AAC5E,uDAI+B;AAG/B,2DAAkD;AAClD,yDAA+E;AAE/E,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC;QACvC,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,aAAa,CAAC;YACnC,UAAU,EAAE,CAAC,sBAAS,CAAC,SAAS,CAAC;YACjC,SAAS,EAAE,CAAC,WAAW,EAAE,GAAG,EAAE,EAAE;gBAC9B,MAAM,EAAE,GAAG,EAAE,GAAG,GAAG,GAAG,EAAE,GAAG,GAAG,CAAC,MAAM,CAAA;gBACrC,WAAW,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAA;YACrC,CAAC;SACF,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE;YAClC,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAA;YAEhC,oEAAoE;YACpE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,IAAI,EAAE,GAAG,MAAM,CAAA;YAEvC,2HAA2H;YAC3H,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACvC,4DAA4D;gBAC5D,4CAA4C;gBAC5C,IACE,IAAA,wBAAW,EAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;oBACnC,GAAG,KAAK,cAAG,CAAC,6BAA6B,EACzC,CAAC;oBACD,MAAM,IAAI,iCAAmB,CAAC,iBAAiB,EAAE,cAAc,CAAC,CAAA;gBAClE,CAAC;gBAED,qEAAqE;gBACrE,mCAAmC;gBACnC,IACE,GAAG,IAAI,IAAI;oBACX,gCAAkB,CAAC,GAAG,CAAC,GAAG,CAAC;oBAC3B,CAAC,IAAA,+BAAkB,EAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAC3C,CAAC;oBACD,MAAM,IAAI,iCAAmB,CAC3B,iFAAiF,GAAG,EAAE,CACvF,CAAA;gBACH,CAAC;YACH,CAAC;YAED,IAAI,GAAG,EAAE,CAAC;gBACR,MAAM,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;gBACpC,IAAI,IAAI,GAAG,CAAC,EAAE,CAAC;oBACb,MAAM,IAAI,iCAAmB,CAC3B,uBAAuB,EACvB,eAAe,CAChB,CAAA;gBACH,CAAC;qBAAM,IAAI,IAAI,GAAG,aAAI,EAAE,CAAC;oBACvB,MAAM,IAAI,iCAAmB,CAC3B,2EAA2E,EAC3E,eAAe,CAChB,CAAA;gBACH,CAAC;qBAAM,IAAI,CAAC,GAAG,IAAI,IAAI,GAAG,eAAM,EAAE,CAAC;oBACjC,MAAM,IAAI,iCAAmB,CAC3B,wFAAwF,EACxF,eAAe,CAChB,CAAA;gBACH,CAAC;YACH,CAAC;YAED,IAAI,GAAG,IAAI,+BAAiB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBACtC,MAAM,IAAI,iCAAmB,CAC3B,2EAA2E,GAAG,EAAE,CACjF,CAAA;YACH,CAAC;YAED,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;YAEjD,MAAM,KAAK,GAAG,MAAM,IAAA,8BAAgB,EAAC;gBACnC,GAAG,EAAE,GAAG;gBACR,GAAG;gBACH,GAAG;gBACH,GAAG;gBACH,OAAO;aACR,CAAC,CAAA;YACF,OAAO;gBACL,QAAQ,EAAE,kBAAkB;gBAC5B,IAAI,EAAE;oBACJ,KAAK;iBACN;aACF,CAAA;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC","sourcesContent":["import { HOUR, MINUTE } from '@atproto/common'\nimport { InvalidRequestError, createServiceJwt } from '@atproto/xrpc-server'\nimport {\n AuthScope,\n isAccessPrivileged,\n isTakendown,\n} from '../../../../auth-scope'\nimport { AppContext } from '../../../../context'\nimport { Server } from '../../../../lexicon'\nimport { ids } from '../../../../lexicon/lexicons'\nimport { PRIVILEGED_METHODS, PROTECTED_METHODS } from '../../../../pipethrough'\n\nexport default function (server: Server, ctx: AppContext) {\n server.com.atproto.server.getServiceAuth({\n auth: ctx.authVerifier.authorization({\n additional: [AuthScope.Takendown],\n authorize: (permissions, ctx) => {\n const { aud, lxm = '*' } = ctx.params\n permissions.assertRpc({ aud, lxm })\n },\n }),\n handler: async ({ params, auth }) => {\n const did = auth.credentials.did\n\n // @NOTE \"exp\" is expressed in seconds since epoch, not milliseconds\n const { aud, exp, lxm = null } = params\n\n // Takendown accounts should not be able to generate service auth tokens except for methods necessary for account migration\n if (auth.credentials.type === 'access') {\n // @NOTE We should probably use \"ForbiddenError\" here. Using\n // \"InvalidRequestError\" for legacy reasons.\n if (\n isTakendown(auth.credentials.scope) &&\n lxm !== ids.ComAtprotoServerCreateAccount\n ) {\n throw new InvalidRequestError('Bad token scope', 'InvalidToken')\n }\n\n // @NOTE \"oauth\" based credentials already checked through permission\n // set in \"authorize\" method above.\n if (\n lxm != null &&\n PRIVILEGED_METHODS.has(lxm) &&\n !isAccessPrivileged(auth.credentials.scope)\n ) {\n throw new InvalidRequestError(\n `insufficient access to request a service auth token for the following method: ${lxm}`,\n )\n }\n }\n\n if (exp) {\n const diff = exp * 1000 - Date.now()\n if (diff < 0) {\n throw new InvalidRequestError(\n 'expiration is in past',\n 'BadExpiration',\n )\n } else if (diff > HOUR) {\n throw new InvalidRequestError(\n 'cannot request a token with an expiration more than an hour in the future',\n 'BadExpiration',\n )\n } else if (!lxm && diff > MINUTE) {\n throw new InvalidRequestError(\n 'cannot request a method-less token with an expiration more than a minute in the future',\n 'BadExpiration',\n )\n }\n }\n\n if (lxm && PROTECTED_METHODS.has(lxm)) {\n throw new InvalidRequestError(\n `cannot request a service auth token for the following protected method: ${lxm}`,\n )\n }\n\n const keypair = await ctx.actorStore.keypair(did)\n\n const token = await createServiceJwt({\n iss: did,\n aud,\n exp,\n lxm,\n keypair,\n })\n return {\n encoding: 'application/json',\n body: {\n token,\n },\n }\n },\n })\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"getSession.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/getSession.ts"],"names":[],"mappings":";;AAUA,4BAsDC;AA/DD,4CAAgD;AAChD,sDAA0D;AAC1D,iFAAiF;AAEjF,uDAAkD;AAGlD,iCAAyC;AAEzC,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC;QACnC,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,aAAa,CAAC;YACnC,UAAU,EAAE,CAAC,sBAAS,CAAC,YAAY,CAAC;YACpC,SAAS,EAAE,GAAG,EAAE;gBACd,4DAA4D;YAC9D,CAAC;SACF,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE;YAC/B,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;gBACtB,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,mBAAmB,CAC3C,GAAG,EACH,IAAI,CAAC,WAAW,CAAC,GAAG,EACpB,+BAA+B,CAChC,CAAA;gBAED,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAC/D,SAAS,EACT,OAAO,CACR,CAAA;gBAED,OAAO;oBACL,QAAQ,EAAE,kBAAkB;oBAC5B,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC;iBAC7B,CAAA;YACH,CAAC;YAED,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAA;YAChC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBACvC,GAAG,CAAC,cAAc,CAAC,UAAU,CAAC,GAAG,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,CAAC;gBAChE,IAAA,uBAAgB,EAAC,GAAG,EAAE,GAAG,CAAC;aAC3B,CAAC,CAAA;YACF,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,MAAM,IAAI,iCAAmB,CAC3B,yCAAyC,GAAG,EAAE,CAC/C,CAAA;YACH,CAAC;YAED,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,qCAAmB,EAAC,IAAI,CAAC,CAAA;YAEpD,OAAO;gBACL,QAAQ,EAAE,kBAAkB;gBAC5B,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE;oBACjB,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,uBAAc;oBACrC,GAAG,EAAE,IAAI,CAAC,GAAG;oBACb,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,SAAS;oBAC9B,MAAM;oBACN,cAAc,EAAE,CAAC,CAAC,IAAI,CAAC,gBAAgB;oBACvC,MAAM;oBACN,MAAM;iBACP,CAAC;aACH,CAAA;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,MAAM,CACb,EAAE,WAAW,EAA8B,EAC3C,IAA6C;IAE7C,IACE,WAAW,CAAC,IAAI,KAAK,OAAO;QAC5B,CAAC,WAAW,CAAC,WAAW,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EACzE,CAAC;QACD,MAAM,EAAE,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,GAAG,IAAI,EAAE,GAAG,IAAI,CAAA;QAChE,OAAO,IAAI,CAAA;IACb,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC"}
1
+ {"version":3,"file":"getSession.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/getSession.ts"],"names":[],"mappings":";;AAUA,4BAsDC;AA/DD,4CAAgD;AAChD,sDAA0D;AAC1D,iFAAiF;AAEjF,uDAAkD;AAGlD,iCAAyC;AAEzC,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC;QACnC,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,aAAa,CAAC;YACnC,UAAU,EAAE,CAAC,sBAAS,CAAC,YAAY,CAAC;YACpC,SAAS,EAAE,GAAG,EAAE;gBACd,4DAA4D;YAC9D,CAAC;SACF,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE;YAC/B,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;gBACtB,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,mBAAmB,CAC3C,GAAG,EACH,IAAI,CAAC,WAAW,CAAC,GAAG,EACpB,+BAA+B,CAChC,CAAA;gBAED,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAC/D,SAAS,EACT,OAAO,CACR,CAAA;gBAED,OAAO;oBACL,QAAQ,EAAE,kBAAkB;oBAC5B,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC;iBAC7B,CAAA;YACH,CAAC;YAED,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAA;YAChC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBACvC,GAAG,CAAC,cAAc,CAAC,UAAU,CAAC,GAAG,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,CAAC;gBAChE,IAAA,uBAAgB,EAAC,GAAG,EAAE,GAAG,CAAC;aAC3B,CAAC,CAAA;YACF,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,MAAM,IAAI,iCAAmB,CAC3B,yCAAyC,GAAG,EAAE,CAC/C,CAAA;YACH,CAAC;YAED,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,qCAAmB,EAAC,IAAI,CAAC,CAAA;YAEpD,OAAO;gBACL,QAAQ,EAAE,kBAAkB;gBAC5B,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE;oBACjB,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,uBAAc;oBACrC,GAAG,EAAE,IAAI,CAAC,GAAG;oBACb,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,SAAS;oBAC9B,MAAM;oBACN,cAAc,EAAE,CAAC,CAAC,IAAI,CAAC,gBAAgB;oBACvC,MAAM;oBACN,MAAM;iBACP,CAAC;aACH,CAAA;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,MAAM,CACb,EAAE,WAAW,EAA8B,EAC3C,IAA6C;IAE7C,IACE,WAAW,CAAC,IAAI,KAAK,OAAO;QAC5B,CAAC,WAAW,CAAC,WAAW,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EACzE,CAAC;QACD,MAAM,EAAE,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,GAAG,IAAI,EAAE,GAAG,IAAI,CAAA;QAChE,OAAO,IAAI,CAAA;IACb,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC","sourcesContent":["import { ComAtprotoServerGetSession } from '@atproto/api'\nimport { INVALID_HANDLE } from '@atproto/syntax'\nimport { InvalidRequestError } from '@atproto/xrpc-server'\nimport { formatAccountStatus } from '../../../../account-manager/account-manager'\nimport { AccessOutput, OAuthOutput } from '../../../../auth-output'\nimport { AuthScope } from '../../../../auth-scope'\nimport { AppContext } from '../../../../context'\nimport { Server } from '../../../../lexicon'\nimport { didDocForSession } from './util'\n\nexport default function (server: Server, ctx: AppContext) {\n server.com.atproto.server.getSession({\n auth: ctx.authVerifier.authorization({\n additional: [AuthScope.SignupQueued],\n authorize: () => {\n // Always allowed. \"email\" access is checked in the handler.\n },\n }),\n handler: async ({ auth, req }) => {\n if (ctx.entrywayAgent) {\n const headers = await ctx.entrywayAuthHeaders(\n req,\n auth.credentials.did,\n 'com.atproto.server.getSession',\n )\n\n const res = await ctx.entrywayAgent.com.atproto.server.getSession(\n undefined,\n headers,\n )\n\n return {\n encoding: 'application/json',\n body: output(auth, res.data),\n }\n }\n\n const did = auth.credentials.did\n const [user, didDoc] = await Promise.all([\n ctx.accountManager.getAccount(did, { includeDeactivated: true }),\n didDocForSession(ctx, did),\n ])\n if (!user) {\n throw new InvalidRequestError(\n `Could not find user info for account: ${did}`,\n )\n }\n\n const { status, active } = formatAccountStatus(user)\n\n return {\n encoding: 'application/json',\n body: output(auth, {\n handle: user.handle ?? INVALID_HANDLE,\n did: user.did,\n email: user.email ?? undefined,\n didDoc,\n emailConfirmed: !!user.emailConfirmedAt,\n active,\n status,\n }),\n }\n },\n })\n}\n\nfunction output(\n { credentials }: OAuthOutput | AccessOutput,\n data: ComAtprotoServerGetSession.OutputSchema,\n): ComAtprotoServerGetSession.OutputSchema {\n if (\n credentials.type === 'oauth' &&\n !credentials.permissions.allowsAccount({ attr: 'email', action: 'read' })\n ) {\n const { email, emailAuthFactor, emailConfirmed, ...rest } = data\n return rest\n }\n\n return data\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/index.ts"],"names":[],"mappings":";;;;;AA4BA,4BA0BC;AApDD,wEAA+C;AAC/C,8EAAqD;AACrD,kEAAyC;AACzC,oEAA2C;AAC3C,4EAAmD;AACnD,0EAAiD;AACjD,4EAAmD;AACnD,oEAA2C;AAC3C,4EAAmD;AACnD,oEAA2C;AAC3C,oEAA2C;AAC3C,sEAA6C;AAC7C,oFAA2D;AAC3D,sEAA6C;AAC7C,8DAAqC;AACrC,0EAAiD;AACjD,sEAA6C;AAC7C,kFAAkD;AAClD,0FAAiE;AACjE,8EAAqD;AACrD,kFAAyD;AACzD,4EAAmD;AACnD,oEAA2C;AAC3C,4EAAmD;AACnD,gEAAuC;AAEvC,mBAAyB,MAAc,EAAE,GAAe;IACtD,IAAA,wBAAc,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC3B,IAAA,uBAAa,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC1B,IAAA,0BAAgB,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC7B,IAAA,2BAAiB,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC9B,IAAA,+BAAqB,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAClC,IAAA,2BAAiB,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC9B,IAAA,8BAAa,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC1B,IAAA,uBAAa,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC1B,IAAA,8BAAoB,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACjC,IAAA,uBAAa,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC1B,IAAA,kCAAwB,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACrC,IAAA,sBAAY,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACzB,IAAA,4BAAkB,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC/B,IAAA,qBAAW,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACxB,IAAA,uBAAa,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC1B,IAAA,uBAAa,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC1B,IAAA,oBAAU,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACvB,IAAA,wBAAc,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC3B,IAAA,2BAAiB,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC9B,IAAA,0BAAgB,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC7B,IAAA,2BAAiB,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC9B,IAAA,wBAAc,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC3B,IAAA,4BAAkB,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC/B,IAAA,yBAAe,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC5B,IAAA,2BAAiB,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;AAChC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/index.ts"],"names":[],"mappings":";;;;;AA4BA,4BA0BC;AApDD,wEAA+C;AAC/C,8EAAqD;AACrD,kEAAyC;AACzC,oEAA2C;AAC3C,4EAAmD;AACnD,0EAAiD;AACjD,4EAAmD;AACnD,oEAA2C;AAC3C,4EAAmD;AACnD,oEAA2C;AAC3C,oEAA2C;AAC3C,sEAA6C;AAC7C,oFAA2D;AAC3D,sEAA6C;AAC7C,8DAAqC;AACrC,0EAAiD;AACjD,sEAA6C;AAC7C,kFAAkD;AAClD,0FAAiE;AACjE,8EAAqD;AACrD,kFAAyD;AACzD,4EAAmD;AACnD,oEAA2C;AAC3C,4EAAmD;AACnD,gEAAuC;AAEvC,mBAAyB,MAAc,EAAE,GAAe;IACtD,IAAA,wBAAc,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC3B,IAAA,uBAAa,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC1B,IAAA,0BAAgB,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC7B,IAAA,2BAAiB,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC9B,IAAA,+BAAqB,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAClC,IAAA,2BAAiB,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC9B,IAAA,8BAAa,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC1B,IAAA,uBAAa,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC1B,IAAA,8BAAoB,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACjC,IAAA,uBAAa,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC1B,IAAA,kCAAwB,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACrC,IAAA,sBAAY,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACzB,IAAA,4BAAkB,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC/B,IAAA,qBAAW,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACxB,IAAA,uBAAa,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC1B,IAAA,uBAAa,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC1B,IAAA,oBAAU,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACvB,IAAA,wBAAc,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC3B,IAAA,2BAAiB,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC9B,IAAA,0BAAgB,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC7B,IAAA,2BAAiB,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC9B,IAAA,wBAAc,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC3B,IAAA,4BAAkB,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC/B,IAAA,yBAAe,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC5B,IAAA,2BAAiB,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;AAChC,CAAC","sourcesContent":["import { AppContext } from '../../../../context'\nimport { Server } from '../../../../lexicon'\nimport activateAccount from './activateAccount'\nimport checkAccountStatus from './checkAccountStatus'\nimport confirmEmail from './confirmEmail'\nimport createAccount from './createAccount'\nimport createAppPassword from './createAppPassword'\nimport createInviteCode from './createInviteCode'\nimport createInviteCodes from './createInviteCodes'\nimport createSession from './createSession'\nimport deactivateAccount from './deactivateAccount'\nimport deleteAccount from './deleteAccount'\nimport deleteSession from './deleteSession'\nimport describeServer from './describeServer'\nimport getAccountInviteCodes from './getAccountInviteCodes'\nimport getServiceAuth from './getServiceAuth'\nimport getSession from './getSession'\nimport listAppPasswords from './listAppPasswords'\nimport refreshSession from './refreshSession'\nimport requestDelete from './requestAccountDelete'\nimport requestEmailConfirmation from './requestEmailConfirmation'\nimport requestEmailUpdate from './requestEmailUpdate'\nimport requestPasswordReset from './requestPasswordReset'\nimport reserveSigningKey from './reserveSigningKey'\nimport resetPassword from './resetPassword'\nimport revokeAppPassword from './revokeAppPassword'\nimport updateEmail from './updateEmail'\n\nexport default function (server: Server, ctx: AppContext) {\n describeServer(server, ctx)\n createAccount(server, ctx)\n createInviteCode(server, ctx)\n createInviteCodes(server, ctx)\n getAccountInviteCodes(server, ctx)\n reserveSigningKey(server, ctx)\n requestDelete(server, ctx)\n deleteAccount(server, ctx)\n requestPasswordReset(server, ctx)\n resetPassword(server, ctx)\n requestEmailConfirmation(server, ctx)\n confirmEmail(server, ctx)\n requestEmailUpdate(server, ctx)\n updateEmail(server, ctx)\n createSession(server, ctx)\n deleteSession(server, ctx)\n getSession(server, ctx)\n refreshSession(server, ctx)\n createAppPassword(server, ctx)\n listAppPasswords(server, ctx)\n revokeAppPassword(server, ctx)\n getServiceAuth(server, ctx)\n checkAccountStatus(server, ctx)\n activateAccount(server, ctx)\n deactivateAccount(server, ctx)\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"listAppPasswords.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/listAppPasswords.ts"],"names":[],"mappings":";;AAMA,4BAgCC;AAtCD,sDAAqD;AAGrD,2DAAkD;AAClD,0CAA+C;AAE/C,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC;QACzC,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,aAAa,CAAC;YACnC,SAAS,EAAE,GAAG,EAAE;gBACd,MAAM,IAAI,4BAAc,CACtB,uDAAuD,CACxD,CAAA;YACH,CAAC;SACF,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE;YAC/B,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;gBACtB,OAAO,IAAA,sBAAc,EACnB,MAAM,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,gBAAgB,CACzD,SAAS,EACT,MAAM,GAAG,CAAC,mBAAmB,CAC3B,GAAG,EACH,IAAI,CAAC,WAAW,CAAC,GAAG,EACpB,cAAG,CAAC,gCAAgC,CACrC,CACF,CACF,CAAA;YACH,CAAC;YAED,MAAM,SAAS,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,gBAAgB,CACzD,IAAI,CAAC,WAAW,CAAC,GAAG,CACrB,CAAA;YACD,OAAO;gBACL,QAAQ,EAAE,kBAAkB;gBAC5B,IAAI,EAAE,EAAE,SAAS,EAAE;aACpB,CAAA;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"listAppPasswords.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/listAppPasswords.ts"],"names":[],"mappings":";;AAMA,4BAgCC;AAtCD,sDAAqD;AAGrD,2DAAkD;AAClD,0CAA+C;AAE/C,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC;QACzC,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,aAAa,CAAC;YACnC,SAAS,EAAE,GAAG,EAAE;gBACd,MAAM,IAAI,4BAAc,CACtB,uDAAuD,CACxD,CAAA;YACH,CAAC;SACF,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE;YAC/B,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;gBACtB,OAAO,IAAA,sBAAc,EACnB,MAAM,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,gBAAgB,CACzD,SAAS,EACT,MAAM,GAAG,CAAC,mBAAmB,CAC3B,GAAG,EACH,IAAI,CAAC,WAAW,CAAC,GAAG,EACpB,cAAG,CAAC,gCAAgC,CACrC,CACF,CACF,CAAA;YACH,CAAC;YAED,MAAM,SAAS,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,gBAAgB,CACzD,IAAI,CAAC,WAAW,CAAC,GAAG,CACrB,CAAA;YACD,OAAO;gBACL,QAAQ,EAAE,kBAAkB;gBAC5B,IAAI,EAAE,EAAE,SAAS,EAAE;aACpB,CAAA;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC","sourcesContent":["import { ForbiddenError } from '@atproto/xrpc-server'\nimport { AppContext } from '../../../../context'\nimport { Server } from '../../../../lexicon'\nimport { ids } from '../../../../lexicon/lexicons'\nimport { resultPassthru } from '../../../proxy'\n\nexport default function (server: Server, ctx: AppContext) {\n server.com.atproto.server.listAppPasswords({\n auth: ctx.authVerifier.authorization({\n authorize: () => {\n throw new ForbiddenError(\n 'OAuth credentials are not supported for this endpoint',\n )\n },\n }),\n handler: async ({ auth, req }) => {\n if (ctx.entrywayAgent) {\n return resultPassthru(\n await ctx.entrywayAgent.com.atproto.server.listAppPasswords(\n undefined,\n await ctx.entrywayAuthHeaders(\n req,\n auth.credentials.did,\n ids.ComAtprotoServerListAppPasswords,\n ),\n ),\n )\n }\n\n const passwords = await ctx.accountManager.listAppPasswords(\n auth.credentials.did,\n )\n return {\n encoding: 'application/json',\n body: { passwords },\n }\n },\n })\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"refreshSession.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/refreshSession.ts"],"names":[],"mappings":";;AASA,4BAsDC;AA/DD,4CAAgD;AAChD,sDAA6E;AAC7E,iFAAiF;AAEjF,8CAAiD;AAEjD,0CAA+C;AAC/C,iCAAyC;AAEzC,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC;QACvC,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,OAAO,EAAE;QAChC,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE;YAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAA;YAChC,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,UAAU,CAAC,GAAG,EAAE;gBACpD,kBAAkB,EAAE,IAAI;gBACxB,gBAAgB,EAAE,IAAI;aACvB,CAAC,CAAA;YACF,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,MAAM,IAAI,iCAAmB,CAC3B,yCAAyC,GAAG,EAAE,CAC/C,CAAA;YACH,CAAC;YACD,IAAI,IAAA,kBAAW,EAAC,IAAI,CAAC,EAAE,CAAC;gBACtB,MAAM,IAAI,+BAAiB,CACzB,6BAA6B,EAC7B,iBAAiB,CAClB,CAAA;YACH,CAAC;YAED,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;gBACtB,OAAO,IAAA,sBAAc,EACnB,MAAM,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc,CACvD,SAAS,EACT,GAAG,CAAC,uBAAuB,CAAC,GAAG,CAAC,CACjC,CACF,CAAA;YACH,CAAC;YAED,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAC1C,IAAA,uBAAgB,EAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC;gBAC/B,GAAG,CAAC,cAAc,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;aAChE,CAAC,CAAA;YACF,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;gBACrB,MAAM,IAAI,iCAAmB,CAAC,wBAAwB,EAAE,cAAc,CAAC,CAAA;YACzE,CAAC;YAED,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,qCAAmB,EAAC,IAAI,CAAC,CAAA;YAEpD,OAAO;gBACL,QAAQ,EAAE,kBAAkB;gBAC5B,IAAI,EAAE;oBACJ,GAAG,EAAE,IAAI,CAAC,GAAG;oBACb,MAAM;oBACN,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,uBAAc;oBACrC,SAAS,EAAE,OAAO,CAAC,SAAS;oBAC5B,UAAU,EAAE,OAAO,CAAC,UAAU;oBAC9B,MAAM;oBACN,MAAM;iBACP;aACF,CAAA;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"refreshSession.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/refreshSession.ts"],"names":[],"mappings":";;AASA,4BAsDC;AA/DD,4CAAgD;AAChD,sDAA6E;AAC7E,iFAAiF;AAEjF,8CAAiD;AAEjD,0CAA+C;AAC/C,iCAAyC;AAEzC,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC;QACvC,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,OAAO,EAAE;QAChC,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE;YAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAA;YAChC,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,UAAU,CAAC,GAAG,EAAE;gBACpD,kBAAkB,EAAE,IAAI;gBACxB,gBAAgB,EAAE,IAAI;aACvB,CAAC,CAAA;YACF,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,MAAM,IAAI,iCAAmB,CAC3B,yCAAyC,GAAG,EAAE,CAC/C,CAAA;YACH,CAAC;YACD,IAAI,IAAA,kBAAW,EAAC,IAAI,CAAC,EAAE,CAAC;gBACtB,MAAM,IAAI,+BAAiB,CACzB,6BAA6B,EAC7B,iBAAiB,CAClB,CAAA;YACH,CAAC;YAED,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;gBACtB,OAAO,IAAA,sBAAc,EACnB,MAAM,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc,CACvD,SAAS,EACT,GAAG,CAAC,uBAAuB,CAAC,GAAG,CAAC,CACjC,CACF,CAAA;YACH,CAAC;YAED,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAC1C,IAAA,uBAAgB,EAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC;gBAC/B,GAAG,CAAC,cAAc,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;aAChE,CAAC,CAAA;YACF,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;gBACrB,MAAM,IAAI,iCAAmB,CAAC,wBAAwB,EAAE,cAAc,CAAC,CAAA;YACzE,CAAC;YAED,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,qCAAmB,EAAC,IAAI,CAAC,CAAA;YAEpD,OAAO;gBACL,QAAQ,EAAE,kBAAkB;gBAC5B,IAAI,EAAE;oBACJ,GAAG,EAAE,IAAI,CAAC,GAAG;oBACb,MAAM;oBACN,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,uBAAc;oBACrC,SAAS,EAAE,OAAO,CAAC,SAAS;oBAC5B,UAAU,EAAE,OAAO,CAAC,UAAU;oBAC9B,MAAM;oBACN,MAAM;iBACP;aACF,CAAA;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC","sourcesContent":["import { INVALID_HANDLE } from '@atproto/syntax'\nimport { AuthRequiredError, InvalidRequestError } from '@atproto/xrpc-server'\nimport { formatAccountStatus } from '../../../../account-manager/account-manager'\nimport { AppContext } from '../../../../context'\nimport { softDeleted } from '../../../../db/util'\nimport { Server } from '../../../../lexicon'\nimport { resultPassthru } from '../../../proxy'\nimport { didDocForSession } from './util'\n\nexport default function (server: Server, ctx: AppContext) {\n server.com.atproto.server.refreshSession({\n auth: ctx.authVerifier.refresh(),\n handler: async ({ auth, req }) => {\n const did = auth.credentials.did\n const user = await ctx.accountManager.getAccount(did, {\n includeDeactivated: true,\n includeTakenDown: true,\n })\n if (!user) {\n throw new InvalidRequestError(\n `Could not find user info for account: ${did}`,\n )\n }\n if (softDeleted(user)) {\n throw new AuthRequiredError(\n 'Account has been taken down',\n 'AccountTakedown',\n )\n }\n\n if (ctx.entrywayAgent) {\n return resultPassthru(\n await ctx.entrywayAgent.com.atproto.server.refreshSession(\n undefined,\n ctx.entrywayPassthruHeaders(req),\n ),\n )\n }\n\n const [didDoc, rotated] = await Promise.all([\n didDocForSession(ctx, user.did),\n ctx.accountManager.rotateRefreshToken(auth.credentials.tokenId),\n ])\n if (rotated === null) {\n throw new InvalidRequestError('Token has been revoked', 'ExpiredToken')\n }\n\n const { status, active } = formatAccountStatus(user)\n\n return {\n encoding: 'application/json',\n body: {\n did: user.did,\n didDoc,\n handle: user.handle ?? INVALID_HANDLE,\n accessJwt: rotated.accessJwt,\n refreshJwt: rotated.refreshJwt,\n active,\n status,\n },\n }\n },\n })\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"requestAccountDelete.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/requestAccountDelete.ts"],"names":[],"mappings":";;AAOA,4BAuDC;AA9DD,4CAA2C;AAC3C,sDAA0E;AAC1E,uDAAoD;AAGpD,2DAAkD;AAElD,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,oBAAoB,CAAC;QAC7C,SAAS,EAAE;YACT;gBACE,UAAU,EAAE,YAAG;gBACf,MAAM,EAAE,EAAE;gBACV,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG;aAC5C;YACD;gBACE,UAAU,EAAE,aAAI;gBAChB,MAAM,EAAE,CAAC;gBACT,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG;aAC5C;SACF;QACD,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,aAAa,CAAC;YACnC,aAAa,EAAE,IAAI;YACnB,MAAM,EAAE,wBAAW;YACnB,SAAS,EAAE,GAAG,EAAE;gBACd,MAAM,IAAI,4BAAc,CACtB,uDAAuD,CACxD,CAAA;YACH,CAAC;SACF,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE;YAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAA;YAChC,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,UAAU,CAAC,GAAG,EAAE;gBACvD,kBAAkB,EAAE,IAAI;gBACxB,gBAAgB,EAAE,IAAI;aACvB,CAAC,CAAA;YACF,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,IAAI,iCAAmB,CAAC,mBAAmB,CAAC,CAAA;YACpD,CAAC;YAED,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;gBACtB,MAAM,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,oBAAoB,CAC7D,SAAS,EACT,MAAM,GAAG,CAAC,mBAAmB,CAC3B,GAAG,EACH,IAAI,CAAC,WAAW,CAAC,GAAG,EACpB,cAAG,CAAC,oCAAoC,CACzC,CACF,CAAA;gBACD,OAAM;YACR,CAAC;YAED,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;gBACnB,MAAM,IAAI,iCAAmB,CAAC,wCAAwC,CAAC,CAAA;YACzE,CAAC;YACD,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,gBAAgB,CACrD,GAAG,EACH,gBAAgB,CACjB,CAAA;YACD,MAAM,GAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAA;QACtE,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"requestAccountDelete.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/requestAccountDelete.ts"],"names":[],"mappings":";;AAOA,4BAuDC;AA9DD,4CAA2C;AAC3C,sDAA0E;AAC1E,uDAAoD;AAGpD,2DAAkD;AAElD,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,oBAAoB,CAAC;QAC7C,SAAS,EAAE;YACT;gBACE,UAAU,EAAE,YAAG;gBACf,MAAM,EAAE,EAAE;gBACV,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG;aAC5C;YACD;gBACE,UAAU,EAAE,aAAI;gBAChB,MAAM,EAAE,CAAC;gBACT,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG;aAC5C;SACF;QACD,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,aAAa,CAAC;YACnC,aAAa,EAAE,IAAI;YACnB,MAAM,EAAE,wBAAW;YACnB,SAAS,EAAE,GAAG,EAAE;gBACd,MAAM,IAAI,4BAAc,CACtB,uDAAuD,CACxD,CAAA;YACH,CAAC;SACF,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE;YAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAA;YAChC,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,UAAU,CAAC,GAAG,EAAE;gBACvD,kBAAkB,EAAE,IAAI;gBACxB,gBAAgB,EAAE,IAAI;aACvB,CAAC,CAAA;YACF,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,IAAI,iCAAmB,CAAC,mBAAmB,CAAC,CAAA;YACpD,CAAC;YAED,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;gBACtB,MAAM,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,oBAAoB,CAC7D,SAAS,EACT,MAAM,GAAG,CAAC,mBAAmB,CAC3B,GAAG,EACH,IAAI,CAAC,WAAW,CAAC,GAAG,EACpB,cAAG,CAAC,oCAAoC,CACzC,CACF,CAAA;gBACD,OAAM;YACR,CAAC;YAED,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;gBACnB,MAAM,IAAI,iCAAmB,CAAC,wCAAwC,CAAC,CAAA;YACzE,CAAC;YACD,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,gBAAgB,CACrD,GAAG,EACH,gBAAgB,CACjB,CAAA;YACD,MAAM,GAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAA;QACtE,CAAC;KACF,CAAC,CAAA;AACJ,CAAC","sourcesContent":["import { DAY, HOUR } from '@atproto/common'\nimport { ForbiddenError, InvalidRequestError } from '@atproto/xrpc-server'\nimport { ACCESS_FULL } from '../../../../auth-scope'\nimport { AppContext } from '../../../../context'\nimport { Server } from '../../../../lexicon'\nimport { ids } from '../../../../lexicon/lexicons'\n\nexport default function (server: Server, ctx: AppContext) {\n server.com.atproto.server.requestAccountDelete({\n rateLimit: [\n {\n durationMs: DAY,\n points: 15,\n calcKey: ({ auth }) => auth.credentials.did,\n },\n {\n durationMs: HOUR,\n points: 5,\n calcKey: ({ auth }) => auth.credentials.did,\n },\n ],\n auth: ctx.authVerifier.authorization({\n checkTakedown: true,\n scopes: ACCESS_FULL,\n authorize: () => {\n throw new ForbiddenError(\n 'OAuth credentials are not supported for this endpoint',\n )\n },\n }),\n handler: async ({ auth, req }) => {\n const did = auth.credentials.did\n const account = await ctx.accountManager.getAccount(did, {\n includeDeactivated: true,\n includeTakenDown: true,\n })\n if (!account) {\n throw new InvalidRequestError('account not found')\n }\n\n if (ctx.entrywayAgent) {\n await ctx.entrywayAgent.com.atproto.server.requestAccountDelete(\n undefined,\n await ctx.entrywayAuthHeaders(\n req,\n auth.credentials.did,\n ids.ComAtprotoServerRequestAccountDelete,\n ),\n )\n return\n }\n\n if (!account.email) {\n throw new InvalidRequestError('account does not have an email address')\n }\n const token = await ctx.accountManager.createEmailToken(\n did,\n 'delete_account',\n )\n await ctx.mailer.sendAccountDelete({ token }, { to: account.email })\n },\n })\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"requestEmailConfirmation.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/requestEmailConfirmation.ts"],"names":[],"mappings":";;AAMA,4BAoDC;AA1DD,4CAA2C;AAC3C,sDAA0D;AAG1D,2DAAkD;AAElD,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,wBAAwB,CAAC;QACjD,SAAS,EAAE;YACT;gBACE,UAAU,EAAE,YAAG;gBACf,MAAM,EAAE,EAAE;gBACV,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG;aAC5C;YACD;gBACE,UAAU,EAAE,aAAI;gBAChB,MAAM,EAAE,CAAC;gBACT,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG;aAC5C;SACF;QACD,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,aAAa,CAAC;YACnC,aAAa,EAAE,IAAI;YACnB,SAAS,EAAE,CAAC,WAAW,EAAE,EAAE;gBACzB,WAAW,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAA;YAChE,CAAC;SACF,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE;YAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAA;YAChC,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,UAAU,CAAC,GAAG,EAAE;gBACvD,kBAAkB,EAAE,IAAI;gBACxB,gBAAgB,EAAE,IAAI;aACvB,CAAC,CAAA;YACF,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,IAAI,iCAAmB,CAAC,mBAAmB,CAAC,CAAA;YACpD,CAAC;YAED,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;gBACtB,MAAM,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,wBAAwB,CACjE,SAAS,EACT,MAAM,GAAG,CAAC,mBAAmB,CAC3B,GAAG,EACH,IAAI,CAAC,WAAW,CAAC,GAAG,EACpB,cAAG,CAAC,wCAAwC,CAC7C,CACF,CAAA;gBACD,OAAM;YACR,CAAC;YAED,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;gBACnB,MAAM,IAAI,iCAAmB,CAAC,wCAAwC,CAAC,CAAA;YACzE,CAAC;YACD,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,gBAAgB,CACrD,GAAG,EACH,eAAe,CAChB,CAAA;YACD,MAAM,GAAG,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAA;QACrE,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"requestEmailConfirmation.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/requestEmailConfirmation.ts"],"names":[],"mappings":";;AAMA,4BAoDC;AA1DD,4CAA2C;AAC3C,sDAA0D;AAG1D,2DAAkD;AAElD,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,wBAAwB,CAAC;QACjD,SAAS,EAAE;YACT;gBACE,UAAU,EAAE,YAAG;gBACf,MAAM,EAAE,EAAE;gBACV,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG;aAC5C;YACD;gBACE,UAAU,EAAE,aAAI;gBAChB,MAAM,EAAE,CAAC;gBACT,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG;aAC5C;SACF;QACD,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,aAAa,CAAC;YACnC,aAAa,EAAE,IAAI;YACnB,SAAS,EAAE,CAAC,WAAW,EAAE,EAAE;gBACzB,WAAW,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAA;YAChE,CAAC;SACF,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE;YAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAA;YAChC,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,UAAU,CAAC,GAAG,EAAE;gBACvD,kBAAkB,EAAE,IAAI;gBACxB,gBAAgB,EAAE,IAAI;aACvB,CAAC,CAAA;YACF,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,IAAI,iCAAmB,CAAC,mBAAmB,CAAC,CAAA;YACpD,CAAC;YAED,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;gBACtB,MAAM,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,wBAAwB,CACjE,SAAS,EACT,MAAM,GAAG,CAAC,mBAAmB,CAC3B,GAAG,EACH,IAAI,CAAC,WAAW,CAAC,GAAG,EACpB,cAAG,CAAC,wCAAwC,CAC7C,CACF,CAAA;gBACD,OAAM;YACR,CAAC;YAED,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;gBACnB,MAAM,IAAI,iCAAmB,CAAC,wCAAwC,CAAC,CAAA;YACzE,CAAC;YACD,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,gBAAgB,CACrD,GAAG,EACH,eAAe,CAChB,CAAA;YACD,MAAM,GAAG,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAA;QACrE,CAAC;KACF,CAAC,CAAA;AACJ,CAAC","sourcesContent":["import { DAY, HOUR } from '@atproto/common'\nimport { InvalidRequestError } from '@atproto/xrpc-server'\nimport { AppContext } from '../../../../context'\nimport { Server } from '../../../../lexicon'\nimport { ids } from '../../../../lexicon/lexicons'\n\nexport default function (server: Server, ctx: AppContext) {\n server.com.atproto.server.requestEmailConfirmation({\n rateLimit: [\n {\n durationMs: DAY,\n points: 15,\n calcKey: ({ auth }) => auth.credentials.did,\n },\n {\n durationMs: HOUR,\n points: 5,\n calcKey: ({ auth }) => auth.credentials.did,\n },\n ],\n auth: ctx.authVerifier.authorization({\n checkTakedown: true,\n authorize: (permissions) => {\n permissions.assertAccount({ attr: 'email', action: 'manage' })\n },\n }),\n handler: async ({ auth, req }) => {\n const did = auth.credentials.did\n const account = await ctx.accountManager.getAccount(did, {\n includeDeactivated: true,\n includeTakenDown: true,\n })\n if (!account) {\n throw new InvalidRequestError('account not found')\n }\n\n if (ctx.entrywayAgent) {\n await ctx.entrywayAgent.com.atproto.server.requestEmailConfirmation(\n undefined,\n await ctx.entrywayAuthHeaders(\n req,\n auth.credentials.did,\n ids.ComAtprotoServerRequestEmailConfirmation,\n ),\n )\n return\n }\n\n if (!account.email) {\n throw new InvalidRequestError('account does not have an email address')\n }\n const token = await ctx.accountManager.createEmailToken(\n did,\n 'confirm_email',\n )\n await ctx.mailer.sendConfirmEmail({ token }, { to: account.email })\n },\n })\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"requestEmailUpdate.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/requestEmailUpdate.ts"],"names":[],"mappings":";;AAOA,4BAgEC;AAvED,4CAA2C;AAC3C,sDAA0D;AAG1D,2DAAkD;AAClD,0CAA+C;AAE/C,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAAC;QAC3C,SAAS,EAAE;YACT;gBACE,UAAU,EAAE,YAAG;gBACf,MAAM,EAAE,EAAE;gBACV,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG;aAC5C;YACD;gBACE,UAAU,EAAE,aAAI;gBAChB,MAAM,EAAE,CAAC;gBACT,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG;aAC5C;SACF;QACD,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,aAAa,CAAC;YACnC,aAAa,EAAE,IAAI;YACnB,SAAS,EAAE,CAAC,WAAW,EAAE,EAAE;gBACzB,WAAW,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAA;YAChE,CAAC;SACF,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE;YAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAA;YAChC,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,UAAU,CAAC,GAAG,EAAE;gBACvD,kBAAkB,EAAE,IAAI;gBACxB,gBAAgB,EAAE,IAAI;aACvB,CAAC,CAAA;YACF,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,IAAI,iCAAmB,CAAC,mBAAmB,CAAC,CAAA;YACpD,CAAC;YAED,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;gBACtB,OAAO,IAAA,sBAAc,EACnB,MAAM,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAC3D,SAAS,EACT,MAAM,GAAG,CAAC,mBAAmB,CAC3B,GAAG,EACH,IAAI,CAAC,WAAW,CAAC,GAAG,EACpB,cAAG,CAAC,kCAAkC,CACvC,CACF,CACF,CAAA;YACH,CAAC;YAED,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;gBACnB,MAAM,IAAI,iCAAmB,CAAC,wCAAwC,CAAC,CAAA;YACzE,CAAC;YAED,MAAM,aAAa,GAAG,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAA;YAChD,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,gBAAgB,CACrD,GAAG,EACH,cAAc,CACf,CAAA;gBACD,MAAM,GAAG,CAAC,MAAM,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAA;YACpE,CAAC;YAED,OAAO;gBACL,QAAQ,EAAE,kBAAkB;gBAC5B,IAAI,EAAE;oBACJ,aAAa;iBACd;aACF,CAAA;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"requestEmailUpdate.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/requestEmailUpdate.ts"],"names":[],"mappings":";;AAOA,4BAgEC;AAvED,4CAA2C;AAC3C,sDAA0D;AAG1D,2DAAkD;AAClD,0CAA+C;AAE/C,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAAC;QAC3C,SAAS,EAAE;YACT;gBACE,UAAU,EAAE,YAAG;gBACf,MAAM,EAAE,EAAE;gBACV,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG;aAC5C;YACD;gBACE,UAAU,EAAE,aAAI;gBAChB,MAAM,EAAE,CAAC;gBACT,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG;aAC5C;SACF;QACD,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,aAAa,CAAC;YACnC,aAAa,EAAE,IAAI;YACnB,SAAS,EAAE,CAAC,WAAW,EAAE,EAAE;gBACzB,WAAW,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAA;YAChE,CAAC;SACF,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE;YAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAA;YAChC,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,UAAU,CAAC,GAAG,EAAE;gBACvD,kBAAkB,EAAE,IAAI;gBACxB,gBAAgB,EAAE,IAAI;aACvB,CAAC,CAAA;YACF,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,IAAI,iCAAmB,CAAC,mBAAmB,CAAC,CAAA;YACpD,CAAC;YAED,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;gBACtB,OAAO,IAAA,sBAAc,EACnB,MAAM,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAC3D,SAAS,EACT,MAAM,GAAG,CAAC,mBAAmB,CAC3B,GAAG,EACH,IAAI,CAAC,WAAW,CAAC,GAAG,EACpB,cAAG,CAAC,kCAAkC,CACvC,CACF,CACF,CAAA;YACH,CAAC;YAED,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;gBACnB,MAAM,IAAI,iCAAmB,CAAC,wCAAwC,CAAC,CAAA;YACzE,CAAC;YAED,MAAM,aAAa,GAAG,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAA;YAChD,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,gBAAgB,CACrD,GAAG,EACH,cAAc,CACf,CAAA;gBACD,MAAM,GAAG,CAAC,MAAM,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAA;YACpE,CAAC;YAED,OAAO;gBACL,QAAQ,EAAE,kBAAkB;gBAC5B,IAAI,EAAE;oBACJ,aAAa;iBACd;aACF,CAAA;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC","sourcesContent":["import { DAY, HOUR } from '@atproto/common'\nimport { InvalidRequestError } from '@atproto/xrpc-server'\nimport { AppContext } from '../../../../context'\nimport { Server } from '../../../../lexicon'\nimport { ids } from '../../../../lexicon/lexicons'\nimport { resultPassthru } from '../../../proxy'\n\nexport default function (server: Server, ctx: AppContext) {\n server.com.atproto.server.requestEmailUpdate({\n rateLimit: [\n {\n durationMs: DAY,\n points: 15,\n calcKey: ({ auth }) => auth.credentials.did,\n },\n {\n durationMs: HOUR,\n points: 5,\n calcKey: ({ auth }) => auth.credentials.did,\n },\n ],\n auth: ctx.authVerifier.authorization({\n checkTakedown: true,\n authorize: (permissions) => {\n permissions.assertAccount({ attr: 'email', action: 'manage' })\n },\n }),\n handler: async ({ auth, req }) => {\n const did = auth.credentials.did\n const account = await ctx.accountManager.getAccount(did, {\n includeDeactivated: true,\n includeTakenDown: true,\n })\n if (!account) {\n throw new InvalidRequestError('account not found')\n }\n\n if (ctx.entrywayAgent) {\n return resultPassthru(\n await ctx.entrywayAgent.com.atproto.server.requestEmailUpdate(\n undefined,\n await ctx.entrywayAuthHeaders(\n req,\n auth.credentials.did,\n ids.ComAtprotoServerRequestEmailUpdate,\n ),\n ),\n )\n }\n\n if (!account.email) {\n throw new InvalidRequestError('account does not have an email address')\n }\n\n const tokenRequired = !!account.emailConfirmedAt\n if (tokenRequired) {\n const token = await ctx.accountManager.createEmailToken(\n did,\n 'update_email',\n )\n await ctx.mailer.sendUpdateEmail({ token }, { to: account.email })\n }\n\n return {\n encoding: 'application/json',\n body: {\n tokenRequired,\n },\n }\n },\n })\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"requestPasswordReset.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/requestPasswordReset.ts"],"names":[],"mappings":";;AAKA,4BAyCC;AA9CD,4CAA2C;AAC3C,sDAA0D;AAI1D,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,oBAAoB,CAAC;QAC7C,SAAS,EAAE;YACT;gBACE,UAAU,EAAE,YAAG;gBACf,MAAM,EAAE,EAAE;aACX;YACD;gBACE,UAAU,EAAE,aAAI;gBAChB,MAAM,EAAE,EAAE;aACX;SACF;QACD,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE;YAChC,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAA;YAE5C,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,iBAAiB,CAAC,KAAK,EAAE;gBAChE,kBAAkB,EAAE,IAAI;gBACxB,gBAAgB,EAAE,IAAI;aACvB,CAAC,CAAA;YAEF,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;gBACpB,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;oBACtB,MAAM,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,oBAAoB,CAC7D,KAAK,CAAC,IAAI,EACV,GAAG,CAAC,uBAAuB,CAAC,GAAG,CAAC,CACjC,CAAA;oBACD,OAAM;gBACR,CAAC;gBACD,MAAM,IAAI,iCAAmB,CAAC,wCAAwC,CAAC,CAAA;YACzE,CAAC;YAED,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,gBAAgB,CACrD,OAAO,CAAC,GAAG,EACX,gBAAgB,CACjB,CAAA;YACD,MAAM,GAAG,CAAC,MAAM,CAAC,iBAAiB,CAChC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,EAClD,EAAE,EAAE,EAAE,OAAO,CAAC,KAAK,EAAE,CACtB,CAAA;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"requestPasswordReset.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/requestPasswordReset.ts"],"names":[],"mappings":";;AAKA,4BAyCC;AA9CD,4CAA2C;AAC3C,sDAA0D;AAI1D,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,oBAAoB,CAAC;QAC7C,SAAS,EAAE;YACT;gBACE,UAAU,EAAE,YAAG;gBACf,MAAM,EAAE,EAAE;aACX;YACD;gBACE,UAAU,EAAE,aAAI;gBAChB,MAAM,EAAE,EAAE;aACX;SACF;QACD,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE;YAChC,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAA;YAE5C,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,iBAAiB,CAAC,KAAK,EAAE;gBAChE,kBAAkB,EAAE,IAAI;gBACxB,gBAAgB,EAAE,IAAI;aACvB,CAAC,CAAA;YAEF,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;gBACpB,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;oBACtB,MAAM,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,oBAAoB,CAC7D,KAAK,CAAC,IAAI,EACV,GAAG,CAAC,uBAAuB,CAAC,GAAG,CAAC,CACjC,CAAA;oBACD,OAAM;gBACR,CAAC;gBACD,MAAM,IAAI,iCAAmB,CAAC,wCAAwC,CAAC,CAAA;YACzE,CAAC;YAED,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,gBAAgB,CACrD,OAAO,CAAC,GAAG,EACX,gBAAgB,CACjB,CAAA;YACD,MAAM,GAAG,CAAC,MAAM,CAAC,iBAAiB,CAChC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,EAClD,EAAE,EAAE,EAAE,OAAO,CAAC,KAAK,EAAE,CACtB,CAAA;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC","sourcesContent":["import { DAY, HOUR } from '@atproto/common'\nimport { InvalidRequestError } from '@atproto/xrpc-server'\nimport { AppContext } from '../../../../context'\nimport { Server } from '../../../../lexicon'\n\nexport default function (server: Server, ctx: AppContext) {\n server.com.atproto.server.requestPasswordReset({\n rateLimit: [\n {\n durationMs: DAY,\n points: 50,\n },\n {\n durationMs: HOUR,\n points: 15,\n },\n ],\n handler: async ({ input, req }) => {\n const email = input.body.email.toLowerCase()\n\n const account = await ctx.accountManager.getAccountByEmail(email, {\n includeDeactivated: true,\n includeTakenDown: true,\n })\n\n if (!account?.email) {\n if (ctx.entrywayAgent) {\n await ctx.entrywayAgent.com.atproto.server.requestPasswordReset(\n input.body,\n ctx.entrywayPassthruHeaders(req),\n )\n return\n }\n throw new InvalidRequestError('account does not have an email address')\n }\n\n const token = await ctx.accountManager.createEmailToken(\n account.did,\n 'reset_password',\n )\n await ctx.mailer.sendResetPassword(\n { handle: account.handle ?? account.email, token },\n { to: account.email },\n )\n },\n })\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"reserveSigningKey.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/reserveSigningKey.ts"],"names":[],"mappings":";;AAGA,4BAYC;AAZD,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC;QAC1C,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;YAC3B,MAAM,UAAU,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YACtE,OAAO;gBACL,QAAQ,EAAE,kBAAkB;gBAC5B,IAAI,EAAE;oBACJ,UAAU;iBACX;aACF,CAAA;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"reserveSigningKey.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/reserveSigningKey.ts"],"names":[],"mappings":";;AAGA,4BAYC;AAZD,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC;QAC1C,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;YAC3B,MAAM,UAAU,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YACtE,OAAO;gBACL,QAAQ,EAAE,kBAAkB;gBAC5B,IAAI,EAAE;oBACJ,UAAU;iBACX;aACF,CAAA;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC","sourcesContent":["import { AppContext } from '../../../../context'\nimport { Server } from '../../../../lexicon'\n\nexport default function (server: Server, ctx: AppContext) {\n server.com.atproto.server.reserveSigningKey({\n handler: async ({ input }) => {\n const signingKey = await ctx.actorStore.reserveKeypair(input.body.did)\n return {\n encoding: 'application/json',\n body: {\n signingKey,\n },\n }\n },\n })\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"resetPassword.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/resetPassword.ts"],"names":[],"mappings":";;AAMA,4BA0BC;AAhCD,4CAAwC;AACxC,sDAA0D;AAC1D,uEAAoF;AAIpF,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC;QACtC,SAAS,EAAE;YACT;gBACE,UAAU,EAAE,CAAC,GAAG,eAAM;gBACtB,MAAM,EAAE,EAAE;aACX;SACF;QACD,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE;YAChC,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;gBACtB,MAAM,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CACtD,KAAK,CAAC,IAAI,EACV,GAAG,CAAC,uBAAuB,CAAC,GAAG,CAAC,CACjC,CAAA;gBACD,OAAM;YACR,CAAC;YAED,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC,IAAI,CAAA;YAEtC,IAAI,QAAQ,CAAC,MAAM,GAAG,gCAAuB,EAAE,CAAC;gBAC9C,MAAM,IAAI,iCAAmB,CAAC,0BAA0B,CAAC,CAAA;YAC3D,CAAC;YAED,MAAM,GAAG,CAAC,cAAc,CAAC,aAAa,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAA;QAC7D,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"resetPassword.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/resetPassword.ts"],"names":[],"mappings":";;AAMA,4BA0BC;AAhCD,4CAAwC;AACxC,sDAA0D;AAC1D,uEAAoF;AAIpF,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC;QACtC,SAAS,EAAE;YACT;gBACE,UAAU,EAAE,CAAC,GAAG,eAAM;gBACtB,MAAM,EAAE,EAAE;aACX;SACF;QACD,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE;YAChC,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;gBACtB,MAAM,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CACtD,KAAK,CAAC,IAAI,EACV,GAAG,CAAC,uBAAuB,CAAC,GAAG,CAAC,CACjC,CAAA;gBACD,OAAM;YACR,CAAC;YAED,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC,IAAI,CAAA;YAEtC,IAAI,QAAQ,CAAC,MAAM,GAAG,gCAAuB,EAAE,CAAC;gBAC9C,MAAM,IAAI,iCAAmB,CAAC,0BAA0B,CAAC,CAAA;YAC3D,CAAC;YAED,MAAM,GAAG,CAAC,cAAc,CAAC,aAAa,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAA;QAC7D,CAAC;KACF,CAAC,CAAA;AACJ,CAAC","sourcesContent":["import { MINUTE } from '@atproto/common'\nimport { InvalidRequestError } from '@atproto/xrpc-server'\nimport { NEW_PASSWORD_MAX_LENGTH } from '../../../../account-manager/helpers/scrypt'\nimport { AppContext } from '../../../../context'\nimport { Server } from '../../../../lexicon'\n\nexport default function (server: Server, ctx: AppContext) {\n server.com.atproto.server.resetPassword({\n rateLimit: [\n {\n durationMs: 5 * MINUTE,\n points: 50,\n },\n ],\n handler: async ({ input, req }) => {\n if (ctx.entrywayAgent) {\n await ctx.entrywayAgent.com.atproto.server.resetPassword(\n input.body,\n ctx.entrywayPassthruHeaders(req),\n )\n return\n }\n\n const { token, password } = input.body\n\n if (password.length > NEW_PASSWORD_MAX_LENGTH) {\n throw new InvalidRequestError('Invalid password length.')\n }\n\n await ctx.accountManager.resetPassword({ token, password })\n },\n })\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"revokeAppPassword.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/revokeAppPassword.ts"],"names":[],"mappings":";;AAKA,4BA4BC;AAjCD,sDAAqD;AAGrD,2DAAkD;AAElD,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC;QAC1C,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,aAAa,CAAC;YACnC,SAAS,EAAE,GAAG,EAAE;gBACd,MAAM,IAAI,4BAAc,CACtB,uDAAuD,CACxD,CAAA;YACH,CAAC;SACF,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE;YACtC,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;gBACtB,MAAM,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAC1D,KAAK,CAAC,IAAI,EACV,MAAM,GAAG,CAAC,mBAAmB,CAC3B,GAAG,EACH,IAAI,CAAC,WAAW,CAAC,GAAG,EACpB,cAAG,CAAC,iCAAiC,CACtC,CACF,CAAA;gBACD,OAAM;YACR,CAAC;YAED,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAA;YACtC,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,CAAA;YAE3B,MAAM,GAAG,CAAC,cAAc,CAAC,iBAAiB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;QAC7D,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"revokeAppPassword.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/revokeAppPassword.ts"],"names":[],"mappings":";;AAKA,4BA4BC;AAjCD,sDAAqD;AAGrD,2DAAkD;AAElD,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC;QAC1C,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,aAAa,CAAC;YACnC,SAAS,EAAE,GAAG,EAAE;gBACd,MAAM,IAAI,4BAAc,CACtB,uDAAuD,CACxD,CAAA;YACH,CAAC;SACF,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE;YACtC,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;gBACtB,MAAM,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAC1D,KAAK,CAAC,IAAI,EACV,MAAM,GAAG,CAAC,mBAAmB,CAC3B,GAAG,EACH,IAAI,CAAC,WAAW,CAAC,GAAG,EACpB,cAAG,CAAC,iCAAiC,CACtC,CACF,CAAA;gBACD,OAAM;YACR,CAAC;YAED,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAA;YACtC,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,CAAA;YAE3B,MAAM,GAAG,CAAC,cAAc,CAAC,iBAAiB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;QAC7D,CAAC;KACF,CAAC,CAAA;AACJ,CAAC","sourcesContent":["import { ForbiddenError } from '@atproto/xrpc-server'\nimport { AppContext } from '../../../../context'\nimport { Server } from '../../../../lexicon'\nimport { ids } from '../../../../lexicon/lexicons'\n\nexport default function (server: Server, ctx: AppContext) {\n server.com.atproto.server.revokeAppPassword({\n auth: ctx.authVerifier.authorization({\n authorize: () => {\n throw new ForbiddenError(\n 'OAuth credentials are not supported for this endpoint',\n )\n },\n }),\n handler: async ({ auth, input, req }) => {\n if (ctx.entrywayAgent) {\n await ctx.entrywayAgent.com.atproto.server.revokeAppPassword(\n input.body,\n await ctx.entrywayAuthHeaders(\n req,\n auth.credentials.did,\n ids.ComAtprotoServerRevokeAppPassword,\n ),\n )\n return\n }\n\n const requester = auth.credentials.did\n const { name } = input.body\n\n await ctx.accountManager.revokeAppPassword(requester, name)\n },\n })\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"updateEmail.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/updateEmail.ts"],"names":[],"mappings":";;AASA,4BAkEC;AA3ED,2CAA4C;AAC5C,6EAA+D;AAC/D,sDAA0E;AAC1E,yEAAoF;AACpF,uDAAoD;AAGpD,2DAAkD;AAElD,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC;QACpC,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,aAAa,CAAC;YACnC,aAAa,EAAE,IAAI;YACnB,MAAM,EAAE,wBAAW;YACnB,SAAS,EAAE,GAAG,EAAE;gBACd,MAAM,IAAI,4BAAc,CACtB,uDAAuD,CACxD,CAAA;YACH,CAAC;SACF,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE;YACtC,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAA;YAChC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,IAAI,CAAA;YACnC,IAAI,CAAC,IAAA,sBAAY,EAAC,KAAK,CAAC,IAAI,IAAA,+CAAiB,EAAC,KAAK,CAAC,EAAE,CAAC;gBACrD,MAAM,IAAI,iCAAmB,CAC3B,oEAAoE,CACrE,CAAA;YACH,CAAC;YACD,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,UAAU,CAAC,GAAG,EAAE;gBACvD,kBAAkB,EAAE,IAAI;aACzB,CAAC,CAAA;YACF,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,IAAI,iCAAmB,CAAC,mBAAmB,CAAC,CAAA;YACpD,CAAC;YAED,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;gBACtB,MAAM,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CACpD,KAAK,CAAC,IAAI,EACV,MAAM,GAAG,CAAC,mBAAmB,CAC3B,GAAG,EACH,IAAI,CAAC,WAAW,CAAC,GAAG,EACpB,cAAG,CAAC,2BAA2B,CAChC,CACF,CAAA;gBACD,OAAM;YACR,CAAC;YAED,oDAAoD;YACpD,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;gBAC7B,IAAI,CAAC,KAAK,EAAE,CAAC;oBACX,MAAM,IAAI,iCAAmB,CAC3B,6BAA6B,EAC7B,eAAe,CAChB,CAAA;gBACH,CAAC;gBACD,MAAM,GAAG,CAAC,cAAc,CAAC,qBAAqB,CAC5C,GAAG,EACH,cAAc,EACd,KAAK,CACN,CAAA;YACH,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,GAAG,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAA;YACtD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,GAAG,YAAY,gCAAsB,EAAE,CAAC;oBAC1C,MAAM,IAAI,iCAAmB,CAC3B,qEAAqE,CACtE,CAAA;gBACH,CAAC;qBAAM,CAAC;oBACN,MAAM,GAAG,CAAA;gBACX,CAAC;YACH,CAAC;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"updateEmail.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/updateEmail.ts"],"names":[],"mappings":";;AASA,4BAkEC;AA3ED,2CAA4C;AAC5C,6EAA+D;AAC/D,sDAA0E;AAC1E,yEAAoF;AACpF,uDAAoD;AAGpD,2DAAkD;AAElD,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC;QACpC,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,aAAa,CAAC;YACnC,aAAa,EAAE,IAAI;YACnB,MAAM,EAAE,wBAAW;YACnB,SAAS,EAAE,GAAG,EAAE;gBACd,MAAM,IAAI,4BAAc,CACtB,uDAAuD,CACxD,CAAA;YACH,CAAC;SACF,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE;YACtC,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAA;YAChC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,IAAI,CAAA;YACnC,IAAI,CAAC,IAAA,sBAAY,EAAC,KAAK,CAAC,IAAI,IAAA,+CAAiB,EAAC,KAAK,CAAC,EAAE,CAAC;gBACrD,MAAM,IAAI,iCAAmB,CAC3B,oEAAoE,CACrE,CAAA;YACH,CAAC;YACD,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,UAAU,CAAC,GAAG,EAAE;gBACvD,kBAAkB,EAAE,IAAI;aACzB,CAAC,CAAA;YACF,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,IAAI,iCAAmB,CAAC,mBAAmB,CAAC,CAAA;YACpD,CAAC;YAED,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;gBACtB,MAAM,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CACpD,KAAK,CAAC,IAAI,EACV,MAAM,GAAG,CAAC,mBAAmB,CAC3B,GAAG,EACH,IAAI,CAAC,WAAW,CAAC,GAAG,EACpB,cAAG,CAAC,2BAA2B,CAChC,CACF,CAAA;gBACD,OAAM;YACR,CAAC;YAED,oDAAoD;YACpD,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;gBAC7B,IAAI,CAAC,KAAK,EAAE,CAAC;oBACX,MAAM,IAAI,iCAAmB,CAC3B,6BAA6B,EAC7B,eAAe,CAChB,CAAA;gBACH,CAAC;gBACD,MAAM,GAAG,CAAC,cAAc,CAAC,qBAAqB,CAC5C,GAAG,EACH,cAAc,EACd,KAAK,CACN,CAAA;YACH,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,GAAG,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAA;YACtD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,GAAG,YAAY,gCAAsB,EAAE,CAAC;oBAC1C,MAAM,IAAI,iCAAmB,CAC3B,qEAAqE,CACtE,CAAA;gBACH,CAAC;qBAAM,CAAC;oBACN,MAAM,GAAG,CAAA;gBACX,CAAC;YACH,CAAC;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC","sourcesContent":["import { isEmailValid } from '@hapi/address'\nimport { isDisposableEmail } from 'disposable-email-domains-js'\nimport { ForbiddenError, InvalidRequestError } from '@atproto/xrpc-server'\nimport { UserAlreadyExistsError } from '../../../../account-manager/helpers/account'\nimport { ACCESS_FULL } from '../../../../auth-scope'\nimport { AppContext } from '../../../../context'\nimport { Server } from '../../../../lexicon'\nimport { ids } from '../../../../lexicon/lexicons'\n\nexport default function (server: Server, ctx: AppContext) {\n server.com.atproto.server.updateEmail({\n auth: ctx.authVerifier.authorization({\n checkTakedown: true,\n scopes: ACCESS_FULL,\n authorize: () => {\n throw new ForbiddenError(\n 'OAuth credentials are not supported for this endpoint',\n )\n },\n }),\n handler: async ({ auth, input, req }) => {\n const did = auth.credentials.did\n const { token, email } = input.body\n if (!isEmailValid(email) || isDisposableEmail(email)) {\n throw new InvalidRequestError(\n 'This email address is not supported, please use a different email.',\n )\n }\n const account = await ctx.accountManager.getAccount(did, {\n includeDeactivated: true,\n })\n if (!account) {\n throw new InvalidRequestError('account not found')\n }\n\n if (ctx.entrywayAgent) {\n await ctx.entrywayAgent.com.atproto.server.updateEmail(\n input.body,\n await ctx.entrywayAuthHeaders(\n req,\n auth.credentials.did,\n ids.ComAtprotoServerUpdateEmail,\n ),\n )\n return\n }\n\n // require valid token if account email is confirmed\n if (account.emailConfirmedAt) {\n if (!token) {\n throw new InvalidRequestError(\n 'confirmation token required',\n 'TokenRequired',\n )\n }\n await ctx.accountManager.assertValidEmailToken(\n did,\n 'update_email',\n token,\n )\n }\n\n try {\n await ctx.accountManager.updateEmail({ did, email })\n } catch (err) {\n if (err instanceof UserAlreadyExistsError) {\n throw new InvalidRequestError(\n 'This email address is already in use, please use a different email.',\n )\n } else {\n throw err\n }\n }\n },\n })\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/util.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../../../../src/api/com/atproto/server/util.ts"],"names":[],"mappings":"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","sourcesContent":["import { getPdsEndpoint, getSigningDidKey } from '@atproto/common'\nimport * as crypto from '@atproto/crypto'\nimport { DidDocument } from '@atproto/identity'\nimport { InvalidRequestError } from '@atproto/xrpc-server'\nimport { ServerConfig } from '../../../../config'\nimport { AppContext } from '../../../../context'\nimport { httpLogger } from '../../../../logger'\n\n// generate an invite code preceded by the hostname\n// with '.'s replaced by '-'s so it is not mistakable for a link\n// ex: bsky-app-abc23-567xy\n// regex: bsky-app-[a-z2-7]{5}-[a-z2-7]{5}\nexport const genInvCode = (cfg: ServerConfig): string => {\n return cfg.service.hostname.replaceAll('.', '-') + '-' + getRandomToken()\n}\n\nexport const genInvCodes = (cfg: ServerConfig, count: number): string[] => {\n const codes: string[] = []\n for (let i = 0; i < count; i++) {\n codes.push(genInvCode(cfg))\n }\n return codes\n}\n\n// Formatted xxxxx-xxxxx where digits are in base32\nexport const getRandomToken = () => {\n const token = crypto.randomStr(8, 'base32').slice(0, 10)\n return token.slice(0, 5) + '-' + token.slice(5, 10)\n}\n\nexport const safeResolveDidDoc = async (\n ctx: AppContext,\n did: string,\n forceRefresh?: boolean,\n): Promise<DidDocument | undefined> => {\n try {\n const didDoc = await ctx.idResolver.did.resolve(did, forceRefresh)\n return didDoc ?? undefined\n } catch (err) {\n httpLogger.warn({ err, did }, 'failed to resolve did doc')\n }\n}\n\nexport const didDocForSession = async (\n ctx: AppContext,\n did: string,\n forceRefresh?: boolean,\n): Promise<DidDocument | undefined> => {\n if (!ctx.cfg.identity.enableDidDocWithSession) return\n return safeResolveDidDoc(ctx, did, forceRefresh)\n}\n\nexport const isValidDidDocForService = async (\n ctx: AppContext,\n did: string,\n): Promise<boolean> => {\n try {\n await assertValidDidDocumentForService(ctx, did)\n return true\n } catch {\n return false\n }\n}\n\nexport const assertValidDidDocumentForService = async (\n ctx: AppContext,\n did: string,\n) => {\n if (did.startsWith('did:plc')) {\n const resolved = await ctx.plcClient.getDocumentData(did)\n await assertValidDocContents(ctx, did, {\n pdsEndpoint: resolved.services['atproto_pds']?.endpoint,\n signingKey: resolved.verificationMethods['atproto'],\n rotationKeys: resolved.rotationKeys,\n })\n } else {\n const resolved = await ctx.idResolver.did.resolve(did, true)\n if (!resolved) {\n throw new InvalidRequestError('Could not resolve DID')\n }\n await assertValidDocContents(ctx, did, {\n pdsEndpoint: getPdsEndpoint(resolved),\n signingKey: getSigningDidKey(resolved),\n })\n }\n}\n\nconst assertValidDocContents = async (\n ctx: AppContext,\n did: string,\n contents: {\n signingKey?: string\n pdsEndpoint?: string\n rotationKeys?: string[]\n },\n) => {\n const { signingKey, pdsEndpoint, rotationKeys } = contents\n\n const plcRotationKey =\n ctx.cfg.entryway?.plcRotationKey ?? ctx.plcRotationKey.did()\n if (rotationKeys !== undefined && !rotationKeys.includes(plcRotationKey)) {\n throw new InvalidRequestError(\n 'Server rotation key not included in PLC DID data',\n )\n }\n\n if (!pdsEndpoint || pdsEndpoint !== ctx.cfg.service.publicUrl) {\n throw new InvalidRequestError(\n 'DID document atproto_pds service endpoint does not match PDS public url',\n )\n }\n\n const keypair = await ctx.actorStore.keypair(did)\n if (!signingKey || signingKey !== keypair.did()) {\n throw new InvalidRequestError(\n 'DID document verification method does not match expected signing key',\n )\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"getCheckout.js","sourceRoot":"","sources":["../../../../../../src/api/com/atproto/sync/deprecated/getCheckout.ts"],"names":[],"mappings":";;AAMA,4BAmBC;AAzBD,gEAA4D;AAG5D,wCAAyC;AACzC,kCAAgD;AAEhD,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC;QAClC,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,iCAAiC,CAAC;YACvD,SAAS,EAAE,GAAG,EAAE;gBACd,eAAe;YACjB,CAAC;SACF,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE;YAClC,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,CAAA;YACtB,MAAM,IAAA,6BAAsB,EAAC,GAAG,EAAE,GAAG,EAAE,IAAA,6BAAa,EAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAA;YAEhE,MAAM,SAAS,GAAG,MAAM,IAAA,sBAAY,EAAC,GAAG,EAAE,GAAG,CAAC,CAAA;YAE9C,OAAO;gBACL,QAAQ,EAAE,0BAA0B;gBACpC,IAAI,EAAE,SAAS;aAChB,CAAA;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"getCheckout.js","sourceRoot":"","sources":["../../../../../../src/api/com/atproto/sync/deprecated/getCheckout.ts"],"names":[],"mappings":";;AAMA,4BAmBC;AAzBD,gEAA4D;AAG5D,wCAAyC;AACzC,kCAAgD;AAEhD,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC;QAClC,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,iCAAiC,CAAC;YACvD,SAAS,EAAE,GAAG,EAAE;gBACd,eAAe;YACjB,CAAC;SACF,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE;YAClC,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,CAAA;YACtB,MAAM,IAAA,6BAAsB,EAAC,GAAG,EAAE,GAAG,EAAE,IAAA,6BAAa,EAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAA;YAEhE,MAAM,SAAS,GAAG,MAAM,IAAA,sBAAY,EAAC,GAAG,EAAE,GAAG,CAAC,CAAA;YAE9C,OAAO;gBACL,QAAQ,EAAE,0BAA0B;gBACpC,IAAI,EAAE,SAAS;aAChB,CAAA;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC","sourcesContent":["import { isUserOrAdmin } from '../../../../../auth-verifier'\nimport { AppContext } from '../../../../../context'\nimport { Server } from '../../../../../lexicon'\nimport { getCarStream } from '../getRepo'\nimport { assertRepoAvailability } from '../util'\n\nexport default function (server: Server, ctx: AppContext) {\n server.com.atproto.sync.getCheckout({\n auth: ctx.authVerifier.authorizationOrAdminTokenOptional({\n authorize: () => {\n // always allow\n },\n }),\n handler: async ({ params, auth }) => {\n const { did } = params\n await assertRepoAvailability(ctx, did, isUserOrAdmin(auth, did))\n\n const carStream = await getCarStream(ctx, did)\n\n return {\n encoding: 'application/vnd.ipld.car',\n body: carStream,\n }\n },\n })\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"getHead.js","sourceRoot":"","sources":["../../../../../../src/api/com/atproto/sync/deprecated/getHead.ts"],"names":[],"mappings":";;AAMA,4BA0BC;AAhCD,sDAA0D;AAC1D,gEAA4D;AAG5D,kCAAgD;AAEhD,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC;QAC9B,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,iCAAiC,CAAC;YACvD,SAAS,EAAE,GAAG,EAAE;gBACd,eAAe;YACjB,CAAC;SACF,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE;YAClC,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,CAAA;YACtB,MAAM,IAAA,6BAAsB,EAAC,GAAG,EAAE,GAAG,EAAE,IAAA,6BAAa,EAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAA;YAEhE,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,EAAE,CACpD,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAC7B,CAAA;YACD,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;gBAClB,MAAM,IAAI,iCAAmB,CAC3B,gCAAgC,GAAG,EAAE,EACrC,cAAc,CACf,CAAA;YACH,CAAC;YACD,OAAO;gBACL,QAAQ,EAAE,kBAAkB;gBAC5B,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE;aAChC,CAAA;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"getHead.js","sourceRoot":"","sources":["../../../../../../src/api/com/atproto/sync/deprecated/getHead.ts"],"names":[],"mappings":";;AAMA,4BA0BC;AAhCD,sDAA0D;AAC1D,gEAA4D;AAG5D,kCAAgD;AAEhD,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC;QAC9B,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,iCAAiC,CAAC;YACvD,SAAS,EAAE,GAAG,EAAE;gBACd,eAAe;YACjB,CAAC;SACF,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE;YAClC,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,CAAA;YACtB,MAAM,IAAA,6BAAsB,EAAC,GAAG,EAAE,GAAG,EAAE,IAAA,6BAAa,EAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAA;YAEhE,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,EAAE,CACpD,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAC7B,CAAA;YACD,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;gBAClB,MAAM,IAAI,iCAAmB,CAC3B,gCAAgC,GAAG,EAAE,EACrC,cAAc,CACf,CAAA;YACH,CAAC;YACD,OAAO;gBACL,QAAQ,EAAE,kBAAkB;gBAC5B,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE;aAChC,CAAA;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC","sourcesContent":["import { InvalidRequestError } from '@atproto/xrpc-server'\nimport { isUserOrAdmin } from '../../../../../auth-verifier'\nimport { AppContext } from '../../../../../context'\nimport { Server } from '../../../../../lexicon'\nimport { assertRepoAvailability } from '../util'\n\nexport default function (server: Server, ctx: AppContext) {\n server.com.atproto.sync.getHead({\n auth: ctx.authVerifier.authorizationOrAdminTokenOptional({\n authorize: () => {\n // always allow\n },\n }),\n handler: async ({ params, auth }) => {\n const { did } = params\n await assertRepoAvailability(ctx, did, isUserOrAdmin(auth, did))\n\n const root = await ctx.actorStore.read(did, (store) =>\n store.repo.storage.getRoot(),\n )\n if (root === null) {\n throw new InvalidRequestError(\n `Could not find root for DID: ${did}`,\n 'HeadNotFound',\n )\n }\n return {\n encoding: 'application/json',\n body: { root: root.toString() },\n }\n },\n })\n}\n"]}