@atproto/bsky 0.0.64 → 0.0.65

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 (194) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/dist/api/app/bsky/actor/searchActors.js +1 -1
  3. package/dist/api/app/bsky/actor/searchActors.js.map +1 -1
  4. package/dist/api/app/bsky/feed/getPostThread.js +1 -10
  5. package/dist/api/app/bsky/feed/getPostThread.js.map +1 -1
  6. package/dist/api/app/bsky/feed/searchPosts.js +1 -1
  7. package/dist/api/app/bsky/feed/searchPosts.js.map +1 -1
  8. package/dist/api/app/bsky/graph/getActorStarterPacks.d.ts +4 -0
  9. package/dist/api/app/bsky/graph/getActorStarterPacks.d.ts.map +1 -0
  10. package/dist/api/app/bsky/graph/getActorStarterPacks.js +58 -0
  11. package/dist/api/app/bsky/graph/getActorStarterPacks.js.map +1 -0
  12. package/dist/api/app/bsky/graph/getStarterPack.d.ts +4 -0
  13. package/dist/api/app/bsky/graph/getStarterPack.d.ts.map +1 -0
  14. package/dist/api/app/bsky/graph/getStarterPack.js +45 -0
  15. package/dist/api/app/bsky/graph/getStarterPack.js.map +1 -0
  16. package/dist/api/app/bsky/graph/getStarterPacks.d.ts +4 -0
  17. package/dist/api/app/bsky/graph/getStarterPacks.d.ts.map +1 -0
  18. package/dist/api/app/bsky/graph/getStarterPacks.js +40 -0
  19. package/dist/api/app/bsky/graph/getStarterPacks.js.map +1 -0
  20. package/dist/api/index.d.ts.map +1 -1
  21. package/dist/api/index.js +6 -0
  22. package/dist/api/index.js.map +1 -1
  23. package/dist/data-plane/server/db/database-schema.d.ts +2 -1
  24. package/dist/data-plane/server/db/database-schema.d.ts.map +1 -1
  25. package/dist/data-plane/server/db/migrations/20240606T222548219Z-starter-packs.d.ts +4 -0
  26. package/dist/data-plane/server/db/migrations/20240606T222548219Z-starter-packs.d.ts.map +1 -0
  27. package/dist/data-plane/server/db/migrations/20240606T222548219Z-starter-packs.js +47 -0
  28. package/dist/data-plane/server/db/migrations/20240606T222548219Z-starter-packs.js.map +1 -0
  29. package/dist/data-plane/server/db/migrations/index.d.ts +1 -0
  30. package/dist/data-plane/server/db/migrations/index.d.ts.map +1 -1
  31. package/dist/data-plane/server/db/migrations/index.js +2 -1
  32. package/dist/data-plane/server/db/migrations/index.js.map +1 -1
  33. package/dist/data-plane/server/db/tables/profile.d.ts +2 -0
  34. package/dist/data-plane/server/db/tables/profile.d.ts.map +1 -1
  35. package/dist/data-plane/server/db/tables/starter-pack.d.ts +14 -0
  36. package/dist/data-plane/server/db/tables/starter-pack.d.ts.map +1 -0
  37. package/dist/data-plane/server/db/tables/starter-pack.js +5 -0
  38. package/dist/data-plane/server/db/tables/starter-pack.js.map +1 -0
  39. package/dist/data-plane/server/indexing/index.d.ts +2 -0
  40. package/dist/data-plane/server/indexing/index.d.ts.map +1 -1
  41. package/dist/data-plane/server/indexing/index.js +2 -0
  42. package/dist/data-plane/server/indexing/index.js.map +1 -1
  43. package/dist/data-plane/server/indexing/plugins/profile.d.ts.map +1 -1
  44. package/dist/data-plane/server/indexing/plugins/profile.js +18 -2
  45. package/dist/data-plane/server/indexing/plugins/profile.js.map +1 -1
  46. package/dist/data-plane/server/indexing/plugins/starter-pack.d.ts +11 -0
  47. package/dist/data-plane/server/indexing/plugins/starter-pack.d.ts.map +1 -0
  48. package/dist/data-plane/server/indexing/plugins/starter-pack.js +78 -0
  49. package/dist/data-plane/server/indexing/plugins/starter-pack.js.map +1 -0
  50. package/dist/data-plane/server/routes/index.d.ts.map +1 -1
  51. package/dist/data-plane/server/routes/index.js +2 -0
  52. package/dist/data-plane/server/routes/index.js.map +1 -1
  53. package/dist/data-plane/server/routes/interactions.d.ts.map +1 -1
  54. package/dist/data-plane/server/routes/interactions.js +57 -1
  55. package/dist/data-plane/server/routes/interactions.js.map +1 -1
  56. package/dist/data-plane/server/routes/profile.d.ts.map +1 -1
  57. package/dist/data-plane/server/routes/profile.js +1 -0
  58. package/dist/data-plane/server/routes/profile.js.map +1 -1
  59. package/dist/data-plane/server/routes/records.d.ts.map +1 -1
  60. package/dist/data-plane/server/routes/records.js +1 -0
  61. package/dist/data-plane/server/routes/records.js.map +1 -1
  62. package/dist/data-plane/server/routes/starter-packs.d.ts +6 -0
  63. package/dist/data-plane/server/routes/starter-packs.d.ts.map +1 -0
  64. package/dist/data-plane/server/routes/starter-packs.js +25 -0
  65. package/dist/data-plane/server/routes/starter-packs.js.map +1 -0
  66. package/dist/data-plane/server/util.d.ts +6 -6
  67. package/dist/hydration/actor.d.ts +2 -0
  68. package/dist/hydration/actor.d.ts.map +1 -1
  69. package/dist/hydration/actor.js +2 -0
  70. package/dist/hydration/actor.js.map +1 -1
  71. package/dist/hydration/feed.d.ts +1 -5
  72. package/dist/hydration/feed.d.ts.map +1 -1
  73. package/dist/hydration/feed.js +0 -1
  74. package/dist/hydration/feed.js.map +1 -1
  75. package/dist/hydration/graph.d.ts +17 -1
  76. package/dist/hydration/graph.d.ts.map +1 -1
  77. package/dist/hydration/graph.js +30 -1
  78. package/dist/hydration/graph.js.map +1 -1
  79. package/dist/hydration/hydrator.d.ts +9 -3
  80. package/dist/hydration/hydrator.d.ts.map +1 -1
  81. package/dist/hydration/hydrator.js +114 -5
  82. package/dist/hydration/hydrator.js.map +1 -1
  83. package/dist/hydration/util.d.ts +4 -0
  84. package/dist/hydration/util.d.ts.map +1 -1
  85. package/dist/hydration/util.js.map +1 -1
  86. package/dist/lexicon/index.d.ts +7 -0
  87. package/dist/lexicon/index.d.ts.map +1 -1
  88. package/dist/lexicon/index.js +13 -0
  89. package/dist/lexicon/index.js.map +1 -1
  90. package/dist/lexicon/lexicons.d.ts +332 -0
  91. package/dist/lexicon/lexicons.d.ts.map +1 -1
  92. package/dist/lexicon/lexicons.js +335 -1
  93. package/dist/lexicon/lexicons.js.map +1 -1
  94. package/dist/lexicon/types/app/bsky/actor/defs.d.ts +5 -0
  95. package/dist/lexicon/types/app/bsky/actor/defs.d.ts.map +1 -1
  96. package/dist/lexicon/types/app/bsky/actor/defs.js.map +1 -1
  97. package/dist/lexicon/types/app/bsky/actor/profile.d.ts +3 -0
  98. package/dist/lexicon/types/app/bsky/actor/profile.d.ts.map +1 -1
  99. package/dist/lexicon/types/app/bsky/actor/profile.js.map +1 -1
  100. package/dist/lexicon/types/app/bsky/graph/defs.d.ts +36 -1
  101. package/dist/lexicon/types/app/bsky/graph/defs.d.ts.map +1 -1
  102. package/dist/lexicon/types/app/bsky/graph/defs.js +23 -1
  103. package/dist/lexicon/types/app/bsky/graph/defs.js.map +1 -1
  104. package/dist/lexicon/types/app/bsky/graph/getActorStarterPacks.d.ts +39 -0
  105. package/dist/lexicon/types/app/bsky/graph/getActorStarterPacks.d.ts.map +1 -0
  106. package/dist/lexicon/types/app/bsky/graph/getActorStarterPacks.js +3 -0
  107. package/dist/lexicon/types/app/bsky/graph/getActorStarterPacks.js.map +1 -0
  108. package/dist/lexicon/types/app/bsky/graph/getStarterPack.d.ts +37 -0
  109. package/dist/lexicon/types/app/bsky/graph/getStarterPack.d.ts.map +1 -0
  110. package/dist/lexicon/types/app/bsky/graph/getStarterPack.js +3 -0
  111. package/dist/lexicon/types/app/bsky/graph/getStarterPack.js.map +1 -0
  112. package/dist/lexicon/types/app/bsky/graph/getStarterPacks.d.ts +36 -0
  113. package/dist/lexicon/types/app/bsky/graph/getStarterPacks.d.ts.map +1 -0
  114. package/dist/lexicon/types/app/bsky/graph/getStarterPacks.js +3 -0
  115. package/dist/lexicon/types/app/bsky/graph/getStarterPacks.js.map +1 -0
  116. package/dist/lexicon/types/app/bsky/graph/starterpack.d.ts +25 -0
  117. package/dist/lexicon/types/app/bsky/graph/starterpack.d.ts.map +1 -0
  118. package/dist/lexicon/types/app/bsky/graph/starterpack.js +27 -0
  119. package/dist/lexicon/types/app/bsky/graph/starterpack.js.map +1 -0
  120. package/dist/lexicon/types/app/bsky/notification/listNotifications.d.ts +2 -2
  121. package/dist/lexicon/types/app/bsky/notification/listNotifications.d.ts.map +1 -1
  122. package/dist/lexicon/types/app/bsky/notification/listNotifications.js.map +1 -1
  123. package/dist/proto/bsky_connect.d.ts +39 -1
  124. package/dist/proto/bsky_connect.d.ts.map +1 -1
  125. package/dist/proto/bsky_connect.js +38 -0
  126. package/dist/proto/bsky_connect.js.map +1 -1
  127. package/dist/proto/bsky_pb.d.ts +160 -0
  128. package/dist/proto/bsky_pb.d.ts.map +1 -1
  129. package/dist/proto/bsky_pb.js +508 -4
  130. package/dist/proto/bsky_pb.js.map +1 -1
  131. package/dist/views/index.d.ts +3 -1
  132. package/dist/views/index.d.ts.map +1 -1
  133. package/dist/views/index.js +64 -0
  134. package/dist/views/index.js.map +1 -1
  135. package/package.json +5 -5
  136. package/proto/bsky.proto +47 -0
  137. package/src/api/app/bsky/actor/searchActors.ts +1 -1
  138. package/src/api/app/bsky/feed/getPostThread.ts +1 -9
  139. package/src/api/app/bsky/feed/searchPosts.ts +1 -1
  140. package/src/api/app/bsky/graph/getActorStarterPacks.ts +99 -0
  141. package/src/api/app/bsky/graph/getStarterPack.ts +80 -0
  142. package/src/api/app/bsky/graph/getStarterPacks.ts +81 -0
  143. package/src/api/index.ts +6 -0
  144. package/src/data-plane/server/db/database-schema.ts +2 -0
  145. package/src/data-plane/server/db/migrations/20240606T222548219Z-starter-packs.ts +45 -0
  146. package/src/data-plane/server/db/migrations/index.ts +1 -0
  147. package/src/data-plane/server/db/tables/profile.ts +2 -0
  148. package/src/data-plane/server/db/tables/starter-pack.ts +16 -0
  149. package/src/data-plane/server/indexing/index.ts +3 -0
  150. package/src/data-plane/server/indexing/plugins/profile.ts +16 -2
  151. package/src/data-plane/server/indexing/plugins/starter-pack.ts +76 -0
  152. package/src/data-plane/server/routes/index.ts +2 -0
  153. package/src/data-plane/server/routes/interactions.ts +56 -2
  154. package/src/data-plane/server/routes/profile.ts +1 -0
  155. package/src/data-plane/server/routes/records.ts +1 -0
  156. package/src/data-plane/server/routes/starter-packs.ts +32 -0
  157. package/src/hydration/actor.ts +5 -0
  158. package/src/hydration/feed.ts +1 -2
  159. package/src/hydration/graph.ts +55 -2
  160. package/src/hydration/hydrator.ts +143 -6
  161. package/src/hydration/util.ts +2 -0
  162. package/src/lexicon/index.ts +37 -0
  163. package/src/lexicon/lexicons.ts +337 -1
  164. package/src/lexicon/types/app/bsky/actor/defs.ts +5 -0
  165. package/src/lexicon/types/app/bsky/actor/profile.ts +3 -0
  166. package/src/lexicon/types/app/bsky/graph/defs.ts +58 -0
  167. package/src/lexicon/types/app/bsky/graph/getActorStarterPacks.ts +49 -0
  168. package/src/lexicon/types/app/bsky/graph/getStarterPack.ts +47 -0
  169. package/src/lexicon/types/app/bsky/graph/getStarterPacks.ts +46 -0
  170. package/src/lexicon/types/app/bsky/graph/starterpack.ts +50 -0
  171. package/src/lexicon/types/app/bsky/notification/listNotifications.ts +2 -1
  172. package/src/proto/bsky_connect.ts +46 -0
  173. package/src/proto/bsky_pb.ts +512 -0
  174. package/src/views/index.ts +71 -1
  175. package/tests/__snapshots__/feed-generation.test.ts.snap +28 -0
  176. package/tests/data-plane/__snapshots__/indexing.test.ts.snap +9 -0
  177. package/tests/views/__snapshots__/author-feed.test.ts.snap +29 -0
  178. package/tests/views/__snapshots__/block-lists.test.ts.snap +16 -0
  179. package/tests/views/__snapshots__/blocks.test.ts.snap +4 -0
  180. package/tests/views/__snapshots__/follows.test.ts.snap +34 -0
  181. package/tests/views/__snapshots__/labeler-service.test.ts.snap +4 -0
  182. package/tests/views/__snapshots__/likes.test.ts.snap +1 -0
  183. package/tests/views/__snapshots__/list-feed.test.ts.snap +12 -0
  184. package/tests/views/__snapshots__/mute-lists.test.ts.snap +20 -0
  185. package/tests/views/__snapshots__/mutes.test.ts.snap +8 -0
  186. package/tests/views/__snapshots__/notifications.test.ts.snap +10 -0
  187. package/tests/views/__snapshots__/posts.test.ts.snap +6 -0
  188. package/tests/views/__snapshots__/profile.test.ts.snap +18 -0
  189. package/tests/views/__snapshots__/reposts.test.ts.snap +1 -0
  190. package/tests/views/__snapshots__/starter-packs.test.ts.snap +482 -0
  191. package/tests/views/__snapshots__/thread.test.ts.snap +22 -0
  192. package/tests/views/__snapshots__/threadgating.test.ts.snap +2 -0
  193. package/tests/views/__snapshots__/timeline.test.ts.snap +81 -0
  194. package/tests/views/starter-packs.test.ts +121 -0
@@ -3939,6 +3939,10 @@ export const schemaDict = {
3939
3939
  ref: 'lex:com.atproto.label.defs#label',
3940
3940
  },
3941
3941
  },
3942
+ createdAt: {
3943
+ type: 'string',
3944
+ format: 'datetime',
3945
+ },
3942
3946
  },
3943
3947
  },
3944
3948
  profileView: {
@@ -3975,6 +3979,10 @@ export const schemaDict = {
3975
3979
  type: 'string',
3976
3980
  format: 'datetime',
3977
3981
  },
3982
+ createdAt: {
3983
+ type: 'string',
3984
+ format: 'datetime',
3985
+ },
3978
3986
  viewer: {
3979
3987
  type: 'ref',
3980
3988
  ref: 'lex:app.bsky.actor.defs#viewerState',
@@ -4031,10 +4039,18 @@ export const schemaDict = {
4031
4039
  type: 'ref',
4032
4040
  ref: 'lex:app.bsky.actor.defs#profileAssociated',
4033
4041
  },
4042
+ joinedViaStarterPack: {
4043
+ type: 'ref',
4044
+ ref: 'lex:app.bsky.graph.defs#starterPackViewBasic',
4045
+ },
4034
4046
  indexedAt: {
4035
4047
  type: 'string',
4036
4048
  format: 'datetime',
4037
4049
  },
4050
+ createdAt: {
4051
+ type: 'string',
4052
+ format: 'datetime',
4053
+ },
4038
4054
  viewer: {
4039
4055
  type: 'ref',
4040
4056
  ref: 'lex:app.bsky.actor.defs#viewerState',
@@ -4057,6 +4073,9 @@ export const schemaDict = {
4057
4073
  feedgens: {
4058
4074
  type: 'integer',
4059
4075
  },
4076
+ starterPacks: {
4077
+ type: 'integer',
4078
+ },
4060
4079
  labeler: {
4061
4080
  type: 'boolean',
4062
4081
  },
@@ -4573,6 +4592,14 @@ export const schemaDict = {
4573
4592
  'Self-label values, specific to the Bluesky application, on the overall account.',
4574
4593
  refs: ['lex:com.atproto.label.defs#selfLabels'],
4575
4594
  },
4595
+ joinedViaStarterPack: {
4596
+ type: 'ref',
4597
+ ref: 'lex:com.atproto.repo.strongRef',
4598
+ },
4599
+ createdAt: {
4600
+ type: 'string',
4601
+ format: 'datetime',
4602
+ },
4576
4603
  },
4577
4604
  },
4578
4605
  },
@@ -6792,6 +6819,10 @@ export const schemaDict = {
6792
6819
  type: 'string',
6793
6820
  format: 'uri',
6794
6821
  },
6822
+ listItemCount: {
6823
+ type: 'integer',
6824
+ minimum: 0,
6825
+ },
6795
6826
  labels: {
6796
6827
  type: 'array',
6797
6828
  items: {
@@ -6850,6 +6881,10 @@ export const schemaDict = {
6850
6881
  type: 'string',
6851
6882
  format: 'uri',
6852
6883
  },
6884
+ listItemCount: {
6885
+ type: 'integer',
6886
+ minimum: 0,
6887
+ },
6853
6888
  labels: {
6854
6889
  type: 'array',
6855
6890
  items: {
@@ -6881,11 +6916,116 @@ export const schemaDict = {
6881
6916
  },
6882
6917
  },
6883
6918
  },
6919
+ starterPackView: {
6920
+ type: 'object',
6921
+ required: ['uri', 'cid', 'record', 'creator', 'indexedAt'],
6922
+ properties: {
6923
+ uri: {
6924
+ type: 'string',
6925
+ format: 'at-uri',
6926
+ },
6927
+ cid: {
6928
+ type: 'string',
6929
+ format: 'cid',
6930
+ },
6931
+ record: {
6932
+ type: 'unknown',
6933
+ },
6934
+ creator: {
6935
+ type: 'ref',
6936
+ ref: 'lex:app.bsky.actor.defs#profileViewBasic',
6937
+ },
6938
+ list: {
6939
+ type: 'ref',
6940
+ ref: 'lex:app.bsky.graph.defs#listViewBasic',
6941
+ },
6942
+ listItemsSample: {
6943
+ type: 'array',
6944
+ maxLength: 12,
6945
+ items: {
6946
+ type: 'ref',
6947
+ ref: 'lex:app.bsky.graph.defs#listItemView',
6948
+ },
6949
+ },
6950
+ feeds: {
6951
+ type: 'array',
6952
+ maxLength: 3,
6953
+ items: {
6954
+ type: 'ref',
6955
+ ref: 'lex:app.bsky.feed.defs#generatorView',
6956
+ },
6957
+ },
6958
+ joinedWeekCount: {
6959
+ type: 'integer',
6960
+ minimum: 0,
6961
+ },
6962
+ joinedAllTimeCount: {
6963
+ type: 'integer',
6964
+ minimum: 0,
6965
+ },
6966
+ labels: {
6967
+ type: 'array',
6968
+ items: {
6969
+ type: 'ref',
6970
+ ref: 'lex:com.atproto.label.defs#label',
6971
+ },
6972
+ },
6973
+ indexedAt: {
6974
+ type: 'string',
6975
+ format: 'datetime',
6976
+ },
6977
+ },
6978
+ },
6979
+ starterPackViewBasic: {
6980
+ type: 'object',
6981
+ required: ['uri', 'cid', 'record', 'creator', 'indexedAt'],
6982
+ properties: {
6983
+ uri: {
6984
+ type: 'string',
6985
+ format: 'at-uri',
6986
+ },
6987
+ cid: {
6988
+ type: 'string',
6989
+ format: 'cid',
6990
+ },
6991
+ record: {
6992
+ type: 'unknown',
6993
+ },
6994
+ creator: {
6995
+ type: 'ref',
6996
+ ref: 'lex:app.bsky.actor.defs#profileViewBasic',
6997
+ },
6998
+ listItemCount: {
6999
+ type: 'integer',
7000
+ minimum: 0,
7001
+ },
7002
+ joinedWeekCount: {
7003
+ type: 'integer',
7004
+ minimum: 0,
7005
+ },
7006
+ joinedAllTimeCount: {
7007
+ type: 'integer',
7008
+ minimum: 0,
7009
+ },
7010
+ labels: {
7011
+ type: 'array',
7012
+ items: {
7013
+ type: 'ref',
7014
+ ref: 'lex:com.atproto.label.defs#label',
7015
+ },
7016
+ },
7017
+ indexedAt: {
7018
+ type: 'string',
7019
+ format: 'datetime',
7020
+ },
7021
+ },
7022
+ },
6884
7023
  listPurpose: {
6885
7024
  type: 'string',
6886
7025
  knownValues: [
6887
7026
  'app.bsky.graph.defs#modlist',
6888
7027
  'app.bsky.graph.defs#curatelist',
7028
+ 'app.bsky.graph.defs#referencelist',
6889
7029
  ],
6890
7030
  },
6891
7031
  modlist: {
@@ -6898,6 +7038,11 @@ export const schemaDict = {
6898
7038
  description:
6899
7039
  'A list of actors used for curation purposes such as list feeds or interaction gating.',
6900
7040
  },
7041
+ referencelist: {
7042
+ type: 'token',
7043
+ description:
7044
+ 'A list of actors used for only for reference purposes such as within a starter pack.',
7045
+ },
6901
7046
  listViewerState: {
6902
7047
  type: 'object',
6903
7048
  properties: {
@@ -6977,6 +7122,54 @@ export const schemaDict = {
6977
7122
  },
6978
7123
  },
6979
7124
  },
7125
+ AppBskyGraphGetActorStarterPacks: {
7126
+ lexicon: 1,
7127
+ id: 'app.bsky.graph.getActorStarterPacks',
7128
+ defs: {
7129
+ main: {
7130
+ type: 'query',
7131
+ description: 'Get a list of starter packs created by the actor.',
7132
+ parameters: {
7133
+ type: 'params',
7134
+ required: ['actor'],
7135
+ properties: {
7136
+ actor: {
7137
+ type: 'string',
7138
+ format: 'at-identifier',
7139
+ },
7140
+ limit: {
7141
+ type: 'integer',
7142
+ minimum: 1,
7143
+ maximum: 100,
7144
+ default: 50,
7145
+ },
7146
+ cursor: {
7147
+ type: 'string',
7148
+ },
7149
+ },
7150
+ },
7151
+ output: {
7152
+ encoding: 'application/json',
7153
+ schema: {
7154
+ type: 'object',
7155
+ required: ['starterPacks'],
7156
+ properties: {
7157
+ cursor: {
7158
+ type: 'string',
7159
+ },
7160
+ starterPacks: {
7161
+ type: 'array',
7162
+ items: {
7163
+ type: 'ref',
7164
+ ref: 'lex:app.bsky.graph.defs#starterPackViewBasic',
7165
+ },
7166
+ },
7167
+ },
7168
+ },
7169
+ },
7170
+ },
7171
+ },
7172
+ },
6980
7173
  AppBskyGraphGetBlocks: {
6981
7174
  lexicon: 1,
6982
7175
  id: 'app.bsky.graph.getBlocks',
@@ -7478,6 +7671,80 @@ export const schemaDict = {
7478
7671
  },
7479
7672
  },
7480
7673
  },
7674
+ AppBskyGraphGetStarterPack: {
7675
+ lexicon: 1,
7676
+ id: 'app.bsky.graph.getStarterPack',
7677
+ defs: {
7678
+ main: {
7679
+ type: 'query',
7680
+ description: 'Gets a view of a starter pack.',
7681
+ parameters: {
7682
+ type: 'params',
7683
+ required: ['starterPack'],
7684
+ properties: {
7685
+ starterPack: {
7686
+ type: 'string',
7687
+ format: 'at-uri',
7688
+ description: 'Reference (AT-URI) of the starter pack record.',
7689
+ },
7690
+ },
7691
+ },
7692
+ output: {
7693
+ encoding: 'application/json',
7694
+ schema: {
7695
+ type: 'object',
7696
+ required: ['starterPack'],
7697
+ properties: {
7698
+ starterPack: {
7699
+ type: 'ref',
7700
+ ref: 'lex:app.bsky.graph.defs#starterPackView',
7701
+ },
7702
+ },
7703
+ },
7704
+ },
7705
+ },
7706
+ },
7707
+ },
7708
+ AppBskyGraphGetStarterPacks: {
7709
+ lexicon: 1,
7710
+ id: 'app.bsky.graph.getStarterPacks',
7711
+ defs: {
7712
+ main: {
7713
+ type: 'query',
7714
+ description: 'Get views for a list of starter packs.',
7715
+ parameters: {
7716
+ type: 'params',
7717
+ required: ['uris'],
7718
+ properties: {
7719
+ uris: {
7720
+ type: 'array',
7721
+ items: {
7722
+ type: 'string',
7723
+ format: 'at-uri',
7724
+ },
7725
+ maxLength: 25,
7726
+ },
7727
+ },
7728
+ },
7729
+ output: {
7730
+ encoding: 'application/json',
7731
+ schema: {
7732
+ type: 'object',
7733
+ required: ['starterPacks'],
7734
+ properties: {
7735
+ starterPacks: {
7736
+ type: 'array',
7737
+ items: {
7738
+ type: 'ref',
7739
+ ref: 'lex:app.bsky.graph.defs#starterPackViewBasic',
7740
+ },
7741
+ },
7742
+ },
7743
+ },
7744
+ },
7745
+ },
7746
+ },
7747
+ },
7481
7748
  AppBskyGraphGetSuggestedFollowsByActor: {
7482
7749
  lexicon: 1,
7483
7750
  id: 'app.bsky.graph.getSuggestedFollowsByActor',
@@ -7702,6 +7969,70 @@ export const schemaDict = {
7702
7969
  },
7703
7970
  },
7704
7971
  },
7972
+ AppBskyGraphStarterpack: {
7973
+ lexicon: 1,
7974
+ id: 'app.bsky.graph.starterpack',
7975
+ defs: {
7976
+ main: {
7977
+ type: 'record',
7978
+ description:
7979
+ 'Record defining a starter pack of actors and feeds for new users.',
7980
+ key: 'tid',
7981
+ record: {
7982
+ type: 'object',
7983
+ required: ['name', 'list', 'createdAt'],
7984
+ properties: {
7985
+ name: {
7986
+ type: 'string',
7987
+ maxGraphemes: 50,
7988
+ maxLength: 500,
7989
+ minLength: 1,
7990
+ description: 'Display name for starter pack; can not be empty.',
7991
+ },
7992
+ description: {
7993
+ type: 'string',
7994
+ maxGraphemes: 300,
7995
+ maxLength: 3000,
7996
+ },
7997
+ descriptionFacets: {
7998
+ type: 'array',
7999
+ items: {
8000
+ type: 'ref',
8001
+ ref: 'lex:app.bsky.richtext.facet',
8002
+ },
8003
+ },
8004
+ list: {
8005
+ type: 'string',
8006
+ format: 'at-uri',
8007
+ description: 'Reference (AT-URI) to the list record.',
8008
+ },
8009
+ feeds: {
8010
+ type: 'array',
8011
+ maxLength: 3,
8012
+ items: {
8013
+ type: 'ref',
8014
+ ref: 'lex:app.bsky.graph.starterpack#feedItem',
8015
+ },
8016
+ },
8017
+ createdAt: {
8018
+ type: 'string',
8019
+ format: 'datetime',
8020
+ },
8021
+ },
8022
+ },
8023
+ },
8024
+ feedItem: {
8025
+ type: 'object',
8026
+ required: ['uri'],
8027
+ properties: {
8028
+ uri: {
8029
+ type: 'string',
8030
+ format: 'at-uri',
8031
+ },
8032
+ },
8033
+ },
8034
+ },
8035
+ },
7705
8036
  AppBskyGraphUnmuteActor: {
7706
8037
  lexicon: 1,
7707
8038
  id: 'app.bsky.graph.unmuteActor',
@@ -8072,7 +8403,7 @@ export const schemaDict = {
8072
8403
  reason: {
8073
8404
  type: 'string',
8074
8405
  description:
8075
- "Expected values are 'like', 'repost', 'follow', 'mention', 'reply', and 'quote'.",
8406
+ "Expected values are 'like', 'repost', 'follow', 'mention', 'reply', 'quote', and 'starterpack-joined'.",
8076
8407
  knownValues: [
8077
8408
  'like',
8078
8409
  'repost',
@@ -8080,6 +8411,7 @@ export const schemaDict = {
8080
8411
  'mention',
8081
8412
  'reply',
8082
8413
  'quote',
8414
+ 'starterpack-joined',
8083
8415
  ],
8084
8416
  },
8085
8417
  reasonSubject: {
@@ -9646,6 +9978,7 @@ export const ids = {
9646
9978
  AppBskyGraphBlock: 'app.bsky.graph.block',
9647
9979
  AppBskyGraphDefs: 'app.bsky.graph.defs',
9648
9980
  AppBskyGraphFollow: 'app.bsky.graph.follow',
9981
+ AppBskyGraphGetActorStarterPacks: 'app.bsky.graph.getActorStarterPacks',
9649
9982
  AppBskyGraphGetBlocks: 'app.bsky.graph.getBlocks',
9650
9983
  AppBskyGraphGetFollowers: 'app.bsky.graph.getFollowers',
9651
9984
  AppBskyGraphGetFollows: 'app.bsky.graph.getFollows',
@@ -9656,6 +9989,8 @@ export const ids = {
9656
9989
  AppBskyGraphGetLists: 'app.bsky.graph.getLists',
9657
9990
  AppBskyGraphGetMutes: 'app.bsky.graph.getMutes',
9658
9991
  AppBskyGraphGetRelationships: 'app.bsky.graph.getRelationships',
9992
+ AppBskyGraphGetStarterPack: 'app.bsky.graph.getStarterPack',
9993
+ AppBskyGraphGetStarterPacks: 'app.bsky.graph.getStarterPacks',
9659
9994
  AppBskyGraphGetSuggestedFollowsByActor:
9660
9995
  'app.bsky.graph.getSuggestedFollowsByActor',
9661
9996
  AppBskyGraphList: 'app.bsky.graph.list',
@@ -9664,6 +9999,7 @@ export const ids = {
9664
9999
  AppBskyGraphMuteActor: 'app.bsky.graph.muteActor',
9665
10000
  AppBskyGraphMuteActorList: 'app.bsky.graph.muteActorList',
9666
10001
  AppBskyGraphMuteThread: 'app.bsky.graph.muteThread',
10002
+ AppBskyGraphStarterpack: 'app.bsky.graph.starterpack',
9667
10003
  AppBskyGraphUnmuteActor: 'app.bsky.graph.unmuteActor',
9668
10004
  AppBskyGraphUnmuteActorList: 'app.bsky.graph.unmuteActorList',
9669
10005
  AppBskyGraphUnmuteThread: 'app.bsky.graph.unmuteThread',
@@ -16,6 +16,7 @@ export interface ProfileViewBasic {
16
16
  associated?: ProfileAssociated
17
17
  viewer?: ViewerState
18
18
  labels?: ComAtprotoLabelDefs.Label[]
19
+ createdAt?: string
19
20
  [k: string]: unknown
20
21
  }
21
22
 
@@ -39,6 +40,7 @@ export interface ProfileView {
39
40
  avatar?: string
40
41
  associated?: ProfileAssociated
41
42
  indexedAt?: string
43
+ createdAt?: string
42
44
  viewer?: ViewerState
43
45
  labels?: ComAtprotoLabelDefs.Label[]
44
46
  [k: string]: unknown
@@ -67,7 +69,9 @@ export interface ProfileViewDetailed {
67
69
  followsCount?: number
68
70
  postsCount?: number
69
71
  associated?: ProfileAssociated
72
+ joinedViaStarterPack?: AppBskyGraphDefs.StarterPackViewBasic
70
73
  indexedAt?: string
74
+ createdAt?: string
71
75
  viewer?: ViewerState
72
76
  labels?: ComAtprotoLabelDefs.Label[]
73
77
  [k: string]: unknown
@@ -88,6 +92,7 @@ export function validateProfileViewDetailed(v: unknown): ValidationResult {
88
92
  export interface ProfileAssociated {
89
93
  lists?: number
90
94
  feedgens?: number
95
+ starterPacks?: number
91
96
  labeler?: boolean
92
97
  chat?: ProfileAssociatedChat
93
98
  [k: string]: unknown
@@ -6,6 +6,7 @@ import { lexicons } from '../../../../lexicons'
6
6
  import { isObj, hasProp } from '../../../../util'
7
7
  import { CID } from 'multiformats/cid'
8
8
  import * as ComAtprotoLabelDefs from '../../../com/atproto/label/defs'
9
+ import * as ComAtprotoRepoStrongRef from '../../../com/atproto/repo/strongRef'
9
10
 
10
11
  export interface Record {
11
12
  displayName?: string
@@ -18,6 +19,8 @@ export interface Record {
18
19
  labels?:
19
20
  | ComAtprotoLabelDefs.SelfLabels
20
21
  | { $type: string; [k: string]: unknown }
22
+ joinedViaStarterPack?: ComAtprotoRepoStrongRef.Main
23
+ createdAt?: string
21
24
  [k: string]: unknown
22
25
  }
23
26
 
@@ -8,6 +8,7 @@ import { CID } from 'multiformats/cid'
8
8
  import * as ComAtprotoLabelDefs from '../../../com/atproto/label/defs'
9
9
  import * as AppBskyActorDefs from '../actor/defs'
10
10
  import * as AppBskyRichtextFacet from '../richtext/facet'
11
+ import * as AppBskyFeedDefs from '../feed/defs'
11
12
 
12
13
  export interface ListViewBasic {
13
14
  uri: string
@@ -15,6 +16,7 @@ export interface ListViewBasic {
15
16
  name: string
16
17
  purpose: ListPurpose
17
18
  avatar?: string
19
+ listItemCount?: number
18
20
  labels?: ComAtprotoLabelDefs.Label[]
19
21
  viewer?: ListViewerState
20
22
  indexedAt?: string
@@ -42,6 +44,7 @@ export interface ListView {
42
44
  description?: string
43
45
  descriptionFacets?: AppBskyRichtextFacet.Main[]
44
46
  avatar?: string
47
+ listItemCount?: number
45
48
  labels?: ComAtprotoLabelDefs.Label[]
46
49
  viewer?: ListViewerState
47
50
  indexedAt: string
@@ -78,15 +81,70 @@ export function validateListItemView(v: unknown): ValidationResult {
78
81
  return lexicons.validate('app.bsky.graph.defs#listItemView', v)
79
82
  }
80
83
 
84
+ export interface StarterPackView {
85
+ uri: string
86
+ cid: string
87
+ record: {}
88
+ creator: AppBskyActorDefs.ProfileViewBasic
89
+ list?: ListViewBasic
90
+ listItemsSample?: ListItemView[]
91
+ feeds?: AppBskyFeedDefs.GeneratorView[]
92
+ joinedWeekCount?: number
93
+ joinedAllTimeCount?: number
94
+ labels?: ComAtprotoLabelDefs.Label[]
95
+ indexedAt: string
96
+ [k: string]: unknown
97
+ }
98
+
99
+ export function isStarterPackView(v: unknown): v is StarterPackView {
100
+ return (
101
+ isObj(v) &&
102
+ hasProp(v, '$type') &&
103
+ v.$type === 'app.bsky.graph.defs#starterPackView'
104
+ )
105
+ }
106
+
107
+ export function validateStarterPackView(v: unknown): ValidationResult {
108
+ return lexicons.validate('app.bsky.graph.defs#starterPackView', v)
109
+ }
110
+
111
+ export interface StarterPackViewBasic {
112
+ uri: string
113
+ cid: string
114
+ record: {}
115
+ creator: AppBskyActorDefs.ProfileViewBasic
116
+ listItemCount?: number
117
+ joinedWeekCount?: number
118
+ joinedAllTimeCount?: number
119
+ labels?: ComAtprotoLabelDefs.Label[]
120
+ indexedAt: string
121
+ [k: string]: unknown
122
+ }
123
+
124
+ export function isStarterPackViewBasic(v: unknown): v is StarterPackViewBasic {
125
+ return (
126
+ isObj(v) &&
127
+ hasProp(v, '$type') &&
128
+ v.$type === 'app.bsky.graph.defs#starterPackViewBasic'
129
+ )
130
+ }
131
+
132
+ export function validateStarterPackViewBasic(v: unknown): ValidationResult {
133
+ return lexicons.validate('app.bsky.graph.defs#starterPackViewBasic', v)
134
+ }
135
+
81
136
  export type ListPurpose =
82
137
  | 'app.bsky.graph.defs#modlist'
83
138
  | 'app.bsky.graph.defs#curatelist'
139
+ | 'app.bsky.graph.defs#referencelist'
84
140
  | (string & {})
85
141
 
86
142
  /** A list of actors to apply an aggregate moderation action (mute/block) on. */
87
143
  export const MODLIST = 'app.bsky.graph.defs#modlist'
88
144
  /** A list of actors used for curation purposes such as list feeds or interaction gating. */
89
145
  export const CURATELIST = 'app.bsky.graph.defs#curatelist'
146
+ /** A list of actors used for only for reference purposes such as within a starter pack. */
147
+ export const REFERENCELIST = 'app.bsky.graph.defs#referencelist'
90
148
 
91
149
  export interface ListViewerState {
92
150
  muted?: boolean
@@ -0,0 +1,49 @@
1
+ /**
2
+ * GENERATED CODE - DO NOT MODIFY
3
+ */
4
+ import express from 'express'
5
+ import { ValidationResult, BlobRef } from '@atproto/lexicon'
6
+ import { lexicons } from '../../../../lexicons'
7
+ import { isObj, hasProp } from '../../../../util'
8
+ import { CID } from 'multiformats/cid'
9
+ import { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server'
10
+ import * as AppBskyGraphDefs from './defs'
11
+
12
+ export interface QueryParams {
13
+ actor: string
14
+ limit: number
15
+ cursor?: string
16
+ }
17
+
18
+ export type InputSchema = undefined
19
+
20
+ export interface OutputSchema {
21
+ cursor?: string
22
+ starterPacks: AppBskyGraphDefs.StarterPackViewBasic[]
23
+ [k: string]: unknown
24
+ }
25
+
26
+ export type HandlerInput = undefined
27
+
28
+ export interface HandlerSuccess {
29
+ encoding: 'application/json'
30
+ body: OutputSchema
31
+ headers?: { [key: string]: string }
32
+ }
33
+
34
+ export interface HandlerError {
35
+ status: number
36
+ message?: string
37
+ }
38
+
39
+ export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough
40
+ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
41
+ auth: HA
42
+ params: QueryParams
43
+ input: HandlerInput
44
+ req: express.Request
45
+ res: express.Response
46
+ }
47
+ export type Handler<HA extends HandlerAuth = never> = (
48
+ ctx: HandlerReqCtx<HA>,
49
+ ) => Promise<HandlerOutput> | HandlerOutput
@@ -0,0 +1,47 @@
1
+ /**
2
+ * GENERATED CODE - DO NOT MODIFY
3
+ */
4
+ import express from 'express'
5
+ import { ValidationResult, BlobRef } from '@atproto/lexicon'
6
+ import { lexicons } from '../../../../lexicons'
7
+ import { isObj, hasProp } from '../../../../util'
8
+ import { CID } from 'multiformats/cid'
9
+ import { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server'
10
+ import * as AppBskyGraphDefs from './defs'
11
+
12
+ export interface QueryParams {
13
+ /** Reference (AT-URI) of the starter pack record. */
14
+ starterPack: string
15
+ }
16
+
17
+ export type InputSchema = undefined
18
+
19
+ export interface OutputSchema {
20
+ starterPack: AppBskyGraphDefs.StarterPackView
21
+ [k: string]: unknown
22
+ }
23
+
24
+ export type HandlerInput = undefined
25
+
26
+ export interface HandlerSuccess {
27
+ encoding: 'application/json'
28
+ body: OutputSchema
29
+ headers?: { [key: string]: string }
30
+ }
31
+
32
+ export interface HandlerError {
33
+ status: number
34
+ message?: string
35
+ }
36
+
37
+ export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough
38
+ export type HandlerReqCtx<HA extends HandlerAuth = never> = {
39
+ auth: HA
40
+ params: QueryParams
41
+ input: HandlerInput
42
+ req: express.Request
43
+ res: express.Response
44
+ }
45
+ export type Handler<HA extends HandlerAuth = never> = (
46
+ ctx: HandlerReqCtx<HA>,
47
+ ) => Promise<HandlerOutput> | HandlerOutput