@atproto/bsky 0.1.7 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (143) hide show
  1. package/CHANGELOG.md +58 -0
  2. package/dist/api/app/bsky/actor/getProfile.js +1 -1
  3. package/dist/api/app/bsky/actor/getProfile.js.map +1 -1
  4. package/dist/api/app/bsky/actor/getProfiles.js +1 -1
  5. package/dist/api/app/bsky/actor/getProfiles.js.map +1 -1
  6. package/dist/api/app/bsky/actor/getSuggestions.js +2 -2
  7. package/dist/api/app/bsky/actor/getSuggestions.js.map +1 -1
  8. package/dist/api/app/bsky/embed/getEmbedExternalView.d.ts.map +1 -1
  9. package/dist/api/app/bsky/embed/getEmbedExternalView.js +132 -53
  10. package/dist/api/app/bsky/embed/getEmbedExternalView.js.map +1 -1
  11. package/dist/api/app/bsky/feed/getAuthorFeed.d.ts.map +1 -1
  12. package/dist/api/app/bsky/feed/getAuthorFeed.js +4 -2
  13. package/dist/api/app/bsky/feed/getAuthorFeed.js.map +1 -1
  14. package/dist/api/app/bsky/graph/getSuggestedFollowsByActor.js +2 -2
  15. package/dist/api/app/bsky/graph/getSuggestedFollowsByActor.js.map +1 -1
  16. package/dist/api/app/bsky/notification/constants.d.ts +4 -1
  17. package/dist/api/app/bsky/notification/constants.d.ts.map +1 -1
  18. package/dist/api/app/bsky/notification/constants.js +3 -0
  19. package/dist/api/app/bsky/notification/constants.js.map +1 -1
  20. package/dist/api/app/bsky/notification/getGroupedNotifications.d.ts +1 -1
  21. package/dist/api/app/bsky/notification/getGroupedNotifications.d.ts.map +1 -1
  22. package/dist/api/app/bsky/notification/getGroupedNotifications.js +44 -26
  23. package/dist/api/app/bsky/notification/getGroupedNotifications.js.map +1 -1
  24. package/dist/api/app/bsky/notification/grouping/spotlight.d.ts +1 -1
  25. package/dist/api/app/bsky/notification/grouping/spotlight.d.ts.map +1 -1
  26. package/dist/api/app/bsky/notification/grouping/spotlight.js +114 -80
  27. package/dist/api/app/bsky/notification/grouping/spotlight.js.map +1 -1
  28. package/dist/api/app/bsky/notification/listActivitySubscriptions.js +3 -2
  29. package/dist/api/app/bsky/notification/listActivitySubscriptions.js.map +1 -1
  30. package/dist/api/app/bsky/unspecced/getAtmosphereExploreTab.d.ts.map +1 -1
  31. package/dist/api/app/bsky/unspecced/getAtmosphereExploreTab.js +16 -148
  32. package/dist/api/app/bsky/unspecced/getAtmosphereExploreTab.js.map +1 -1
  33. package/dist/api/internal/bsky/actor/getProfiles.js +4 -1
  34. package/dist/api/internal/bsky/actor/getProfiles.js.map +1 -1
  35. package/dist/config.d.ts +10 -0
  36. package/dist/config.d.ts.map +1 -1
  37. package/dist/config.js +43 -0
  38. package/dist/config.js.map +1 -1
  39. package/dist/data-plane/server/indexing/index.d.ts +3 -1
  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-link.d.ts +8 -0
  44. package/dist/data-plane/server/indexing/plugins/profile-link.d.ts.map +1 -0
  45. package/dist/data-plane/server/indexing/plugins/profile-link.js +30 -0
  46. package/dist/data-plane/server/indexing/plugins/profile-link.js.map +1 -0
  47. package/dist/data-plane/server/routes/records.d.ts.map +1 -1
  48. package/dist/data-plane/server/routes/records.js +1 -0
  49. package/dist/data-plane/server/routes/records.js.map +1 -1
  50. package/dist/hydration/actor.d.ts +4 -1
  51. package/dist/hydration/actor.d.ts.map +1 -1
  52. package/dist/hydration/actor.js +11 -0
  53. package/dist/hydration/actor.js.map +1 -1
  54. package/dist/hydration/external.d.ts +67 -64
  55. package/dist/hydration/external.d.ts.map +1 -1
  56. package/dist/hydration/external.js +79 -133
  57. package/dist/hydration/external.js.map +1 -1
  58. package/dist/hydration/hydrator.d.ts +53 -14
  59. package/dist/hydration/hydrator.d.ts.map +1 -1
  60. package/dist/hydration/hydrator.js +422 -105
  61. package/dist/hydration/hydrator.js.map +1 -1
  62. package/dist/lexicons/app/bsky/actor/defs.defs.d.ts +25 -0
  63. package/dist/lexicons/app/bsky/actor/defs.defs.d.ts.map +1 -1
  64. package/dist/lexicons/app/bsky/actor/defs.defs.js +16 -0
  65. package/dist/lexicons/app/bsky/actor/defs.defs.js.map +1 -1
  66. package/dist/lexicons/app/bsky/actor/link.d.ts +3 -0
  67. package/dist/lexicons/app/bsky/actor/link.d.ts.map +1 -0
  68. package/dist/lexicons/app/bsky/actor/link.defs.d.ts +120 -0
  69. package/dist/lexicons/app/bsky/actor/link.defs.d.ts.map +1 -0
  70. package/dist/lexicons/app/bsky/actor/link.defs.js +39 -0
  71. package/dist/lexicons/app/bsky/actor/link.defs.js.map +1 -0
  72. package/dist/lexicons/app/bsky/actor/link.js +6 -0
  73. package/dist/lexicons/app/bsky/actor/link.js.map +1 -0
  74. package/dist/lexicons/app/bsky/actor/profile.defs.d.ts +14 -0
  75. package/dist/lexicons/app/bsky/actor/profile.defs.d.ts.map +1 -1
  76. package/dist/lexicons/app/bsky/actor/profile.defs.js +3 -0
  77. package/dist/lexicons/app/bsky/actor/profile.defs.js.map +1 -1
  78. package/dist/lexicons/app/bsky/actor.d.ts +1 -0
  79. package/dist/lexicons/app/bsky/actor.d.ts.map +1 -1
  80. package/dist/lexicons/app/bsky/actor.js +1 -0
  81. package/dist/lexicons/app/bsky/actor.js.map +1 -1
  82. package/dist/lexicons/app/bsky/authFullApp.defs.d.ts.map +1 -1
  83. package/dist/lexicons/app/bsky/authFullApp.defs.js +1 -0
  84. package/dist/lexicons/app/bsky/authFullApp.defs.js.map +1 -1
  85. package/dist/lexicons/app/bsky/authManageProfile.defs.d.ts.map +1 -1
  86. package/dist/lexicons/app/bsky/authManageProfile.defs.js +1 -0
  87. package/dist/lexicons/app/bsky/authManageProfile.defs.js.map +1 -1
  88. package/dist/lexicons/app/bsky/embed/getEmbedExternalView.defs.d.ts +13 -3
  89. package/dist/lexicons/app/bsky/embed/getEmbedExternalView.defs.d.ts.map +1 -1
  90. package/dist/lexicons/app/bsky/embed/getEmbedExternalView.defs.js +11 -3
  91. package/dist/lexicons/app/bsky/embed/getEmbedExternalView.defs.js.map +1 -1
  92. package/dist/lexicons/app/bsky/notification/getGroupedNotifications.defs.d.ts +62 -3
  93. package/dist/lexicons/app/bsky/notification/getGroupedNotifications.defs.d.ts.map +1 -1
  94. package/dist/lexicons/app/bsky/notification/getGroupedNotifications.defs.js +53 -2
  95. package/dist/lexicons/app/bsky/notification/getGroupedNotifications.defs.js.map +1 -1
  96. package/dist/lexicons/tools/ozone/inbox/defs.defs.d.ts +14 -1
  97. package/dist/lexicons/tools/ozone/inbox/defs.defs.d.ts.map +1 -1
  98. package/dist/lexicons/tools/ozone/inbox/defs.defs.js +6 -1
  99. package/dist/lexicons/tools/ozone/inbox/defs.defs.js.map +1 -1
  100. package/dist/lexicons/tools/ozone/inbox/getNotificationPreferences.defs.d.ts +1 -0
  101. package/dist/lexicons/tools/ozone/inbox/getNotificationPreferences.defs.d.ts.map +1 -1
  102. package/dist/lexicons/tools/ozone/inbox/getNotificationPreferences.defs.js +1 -0
  103. package/dist/lexicons/tools/ozone/inbox/getNotificationPreferences.defs.js.map +1 -1
  104. package/dist/lexicons/tools/ozone/inbox/putNotificationPreferences.defs.d.ts +7 -2
  105. package/dist/lexicons/tools/ozone/inbox/putNotificationPreferences.defs.d.ts.map +1 -1
  106. package/dist/lexicons/tools/ozone/inbox/putNotificationPreferences.defs.js +4 -1
  107. package/dist/lexicons/tools/ozone/inbox/putNotificationPreferences.defs.js.map +1 -1
  108. package/dist/proto/bsky_connect.d.ts +10 -1
  109. package/dist/proto/bsky_connect.d.ts.map +1 -1
  110. package/dist/proto/bsky_connect.js +10 -1
  111. package/dist/proto/bsky_connect.js.map +1 -1
  112. package/dist/proto/bsky_pb.d.ts +34 -0
  113. package/dist/proto/bsky_pb.d.ts.map +1 -1
  114. package/dist/proto/bsky_pb.js +60 -0
  115. package/dist/proto/bsky_pb.js.map +1 -1
  116. package/dist/telemetry/events.d.ts +35 -0
  117. package/dist/telemetry/events.d.ts.map +1 -1
  118. package/dist/telemetry/events.js +68 -0
  119. package/dist/telemetry/events.js.map +1 -1
  120. package/dist/util/external/index.d.ts +8 -0
  121. package/dist/util/external/index.d.ts.map +1 -0
  122. package/dist/util/external/index.js +50 -0
  123. package/dist/util/external/index.js.map +1 -0
  124. package/dist/util/{standard-site.d.ts → external/standard-site.d.ts} +30 -4
  125. package/dist/util/external/standard-site.d.ts.map +1 -0
  126. package/dist/util/{standard-site.js → external/standard-site.js} +73 -4
  127. package/dist/util/external/standard-site.js.map +1 -0
  128. package/dist/views/external.js +1 -1
  129. package/dist/views/external.js.map +1 -1
  130. package/dist/views/index.d.ts +11 -7
  131. package/dist/views/index.d.ts.map +1 -1
  132. package/dist/views/index.js +94 -43
  133. package/dist/views/index.js.map +1 -1
  134. package/dist/views/profile-link-rules.d.ts +10 -0
  135. package/dist/views/profile-link-rules.d.ts.map +1 -0
  136. package/dist/views/profile-link-rules.js +48 -0
  137. package/dist/views/profile-link-rules.js.map +1 -0
  138. package/dist/views/types.d.ts +2 -0
  139. package/dist/views/types.d.ts.map +1 -1
  140. package/dist/views/types.js.map +1 -1
  141. package/package.json +7 -7
  142. package/dist/util/standard-site.d.ts.map +0 -1
  143. package/dist/util/standard-site.js.map +0 -1
@@ -9,8 +9,11 @@ import type { Label } from '../hydration/label.js';
9
9
  import type { ImageUriBuilder } from '../image/uri.js';
10
10
  import { app } from '../lexicons/index.js';
11
11
  import type { Notification } from '../proto/bsky_pb.js';
12
- import { type ActivitySubscription, type BlockedPost, type BookmarkView, type Embed, type EmbedView, type ExternalEmbed, type ExternalEmbedSourceView, type ExternalEmbedView, type ExternalRecordView, type FeedViewPost, type FollowRecord, type GalleryEmbed, type GalleryEmbedView, type GeneratorView, type GetPostThreadV2QueryParams, type ImagesEmbed, type ImagesEmbedView, type KnownFollowers, type KnownLikers, type LabelerRecord, type LabelerView, type LabelerViewDetailed, type LikeRecord, type ListItemView, type ListView, type ListViewBasic, type MaybePostView, type NotFoundPost, type NotificationRecordDeleted, type NotificationView, type PostEmbedView, type PostRecord, type PostView, type ProfileAssociatedActivitySubscription, type ProfileAssociatedChat, type ProfileRecord, type ProfileView, type ProfileViewBasic, type ProfileViewDetailed, type ProfileViewer, type ReasonPin, type ReasonRepost, type RecordEmbed, type RecordEmbedView, type RecordWithMedia, type RecordWithMediaView, type ReplyRef, type RepostRecord, type StarterPackView, type StarterPackViewBasic, type StatusView, type ThreadItem, type ThreadOtherItem, type ThreadViewPost, type ThreadgateView, type VerificationRecord, type VerificationState, type VideoEmbed, type VideoEmbedView } from './types.js';
12
+ import { type ActivitySubscription, type BlockedPost, type BookmarkView, type Embed, type EmbedView, type ExternalEmbed, type ExternalEmbedSourceView, type ExternalEmbedView, type ExternalRecordView, type FeedViewPost, type FollowRecord, type GalleryEmbed, type GalleryEmbedView, type GeneratorView, type GetPostThreadV2QueryParams, type ImagesEmbed, type ImagesEmbedView, type KnownFollowers, type KnownLikers, type LabelerRecord, type LabelerView, type LabelerViewDetailed, type LikeRecord, type ListItemView, type ListView, type ListViewBasic, type MaybePostView, type NotFoundPost, type NotificationRecordDeleted, type NotificationView, type PostEmbedView, type PostRecord, type PostView, type ProfileAssociatedActivitySubscription, type ProfileAssociatedChat, type ProfileLinkRecord, type ProfileLinkView, type ProfileRecord, type ProfileView, type ProfileViewBasic, type ProfileViewDetailed, type ProfileViewer, type ReasonPin, type ReasonRepost, type RecordEmbed, type RecordEmbedView, type RecordWithMedia, type RecordWithMediaView, type ReplyRef, type RepostRecord, type StarterPackView, type StarterPackViewBasic, type StatusView, type ThreadItem, type ThreadOtherItem, type ThreadViewPost, type ThreadgateView, type VerificationRecord, type VerificationState, type VideoEmbed, type VideoEmbedView } from './types.js';
13
13
  import { type VideoUriBuilder } from './util.js';
14
+ type ProfileViewOptions = {
15
+ includeKnownFollowers?: boolean;
16
+ };
14
17
  export declare class Views {
15
18
  private opts;
16
19
  imgUriBuilder: ImageUriBuilder;
@@ -46,12 +49,12 @@ export declare class Views {
46
49
  uri?: AtUriString;
47
50
  }, state: HydrationState): boolean;
48
51
  replyIsHiddenByThreadgate(replyUri: AtUriString, rootPostUri: AtUriString, state: HydrationState): boolean;
49
- profileDetailed(did: DidString, state: HydrationState): Un$Typed<ProfileViewDetailed> | undefined;
50
- profile(did: DidString, state: HydrationState): Un$Typed<ProfileView> | undefined;
51
- profileBasic(did: DidString, state: HydrationState): Un$Typed<ProfileViewBasic> | undefined;
52
+ profileDetailed(did: DidString, state: HydrationState, opts?: ProfileViewOptions): Un$Typed<ProfileViewDetailed> | undefined;
53
+ profileLinks(did: DidString, state: HydrationState): ProfileLinkView[] | undefined;
54
+ profile(did: DidString, state: HydrationState, opts?: ProfileViewOptions): Un$Typed<ProfileView> | undefined;
55
+ profileBasic(did: DidString, state: HydrationState, opts?: ProfileViewOptions): Un$Typed<ProfileViewBasic> | undefined;
52
56
  profileAssociatedChat(actor: Actor): ProfileAssociatedChat | undefined;
53
57
  profileAssociatedActivitySubscription(actor: Actor): ProfileAssociatedActivitySubscription;
54
- profileKnownFollowers(did: DidString, state: HydrationState): ProfileView | undefined;
55
58
  profileViewer(did: DidString, state: HydrationState): ProfileViewer | undefined;
56
59
  profileViewerActivitySubscription(profileViewer: ProfileViewerState, did: DidString, state: HydrationState): ActivitySubscription | undefined;
57
60
  profileWebsite(did: DidString, state: HydrationState): UriString | undefined;
@@ -69,7 +72,7 @@ export declare class Views {
69
72
  selfLabels({ uri, cid, record, }: {
70
73
  uri?: AtUriString;
71
74
  cid?: string;
72
- record?: PostRecord | LikeRecord | RepostRecord | FollowRecord | ProfileRecord | LabelerRecord | VerificationRecord | NotificationRecordDeleted;
75
+ record?: PostRecord | LikeRecord | RepostRecord | FollowRecord | ProfileRecord | LabelerRecord | VerificationRecord | ProfileLinkRecord | NotificationRecordDeleted;
73
76
  }): Label[];
74
77
  labeler(did: DidString, state: HydrationState): Un$Typed<LabelerView> | undefined;
75
78
  labelerDetailed(did: DidString, state: HydrationState): Un$Typed<LabelerViewDetailed> | undefined;
@@ -172,7 +175,7 @@ export declare class Views {
172
175
  /**
173
176
  * Compose-path entry point: caller already knows which document and
174
177
  * publication backed the request and has them in hand (e.g. from
175
- * iterating the SS hydration maps directly). Skips the by-ref lookup
178
+ * `getStandardSiteRecordsForUri`). Skips the by-ref lookup
176
179
  * that `externalEmbedFromStandardSite` does. Used by
177
180
  * `getEmbedExternalView`.
178
181
  *
@@ -213,4 +216,5 @@ export declare class Views {
213
216
  indexedAt: Date;
214
217
  }): Date;
215
218
  }
219
+ export {};
216
220
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/views/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/views/index.ts"],"names":[],"mappings":"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"}
@@ -6,9 +6,10 @@ import { getSiteStandardRecordsFromHydrationMapsByRefs, } from '../hydration/ext
6
6
  import { getStarterPackUriFromFollow, parseString, } from '../hydration/util.js';
7
7
  import { app, site } from '../lexicons/index.js';
8
8
  import { viewsLogger } from '../logger.js';
9
- import { estimateReadingTimeMinutes, validateStandardSiteForUrl, } from '../util/standard-site.js';
9
+ import { estimateReadingTimeMinutes, validateStandardSiteRecordsForUrl, } from '../util/external/standard-site.js';
10
10
  import { postUriToPostgateUri, postUriToThreadgateUri, safePinnedPost, uriToDid, uriToDid as creatorFromUri, } from '../util/uris.js';
11
11
  import { externalRecordView as externalRecordViewBase } from './external.js';
12
+ import { MAX_PROFILE_LINKS, isAllowedProfileLinkUrl, } from './profile-link-rules.js';
12
13
  import { sortTrimFlattenThreadTree, } from './threads-v2.js';
13
14
  import { isExternalEmbedType, isGalleryEmbedType, isGalleryImageEmbedType, isImagesEmbedType, isLabelerRecordType, isListRuleType, isPostRecordType, isPostViewType, isProfileRecordType, isRecordEmbedType, isRecordWithMediaType, isSelfLabelsType, isVideoEmbedType, } from './types.js';
14
15
  import { parsePostgate, parseThreadGate } from './util.js';
@@ -122,24 +123,17 @@ export class Views {
122
123
  const threadgate = state.threadgates?.get(threadgateUri);
123
124
  return !!threadgate?.record?.hiddenReplies?.includes(replyUri);
124
125
  }
125
- profileDetailed(did, state) {
126
+ profileDetailed(did, state, opts) {
126
127
  const actor = state.actors?.get(did);
127
128
  if (!actor)
128
129
  return;
129
- const baseView = this.profile(did, state);
130
+ const baseView = this.profile(did, state, opts);
130
131
  if (!baseView)
131
132
  return;
132
- const knownFollowers = this.knownFollowers(did, state);
133
133
  const profileAggs = state.profileAggs?.get(did);
134
134
  return {
135
135
  ...baseView,
136
136
  website: this.profileWebsite(did, state),
137
- viewer: baseView.viewer
138
- ? {
139
- ...baseView.viewer,
140
- knownFollowers,
141
- }
142
- : undefined,
143
137
  banner: actor.profile?.banner
144
138
  ? this.imgUriBuilder.getPresetUri('banner', did, getBlobCidString(actor.profile.banner))
145
139
  : undefined,
@@ -164,13 +158,47 @@ export class Views {
164
158
  ? this.starterPackBasic(actor.profile.joinedViaStarterPack.uri, state)
165
159
  : undefined,
166
160
  pinnedPost: safePinnedPost(actor.profile?.pinnedPost),
161
+ links: this.profileLinks(did, state),
167
162
  };
168
163
  }
169
- profile(did, state) {
164
+ profileLinks(did, state) {
165
+ const refs = state.actors?.get(did)?.profile?.links;
166
+ if (!refs?.length)
167
+ return;
168
+ const links = [];
169
+ for (const ref of refs.slice(0, MAX_PROFILE_LINKS)) {
170
+ // the batch may include other actors' links, so check the repo here too
171
+ if (uriToDid(ref.uri) !== did)
172
+ continue;
173
+ // missing when taken down, deleted, or invalid
174
+ const link = state.profileLinks?.get(ref.uri);
175
+ if (!link || !isAllowedProfileLinkUrl(link.record.url))
176
+ continue;
177
+ links.push({
178
+ uri: ref.uri,
179
+ cid: link.cid,
180
+ url: link.record.url,
181
+ title: link.record.title,
182
+ icon: link.record.icon
183
+ ? this.imgUriBuilder.getPresetUri('avatar', did, getBlobCidString(link.record.icon))
184
+ : undefined,
185
+ labels: [
186
+ ...(state.labels?.getBySubject(ref.uri) ?? []),
187
+ ...this.selfLabels({
188
+ uri: ref.uri,
189
+ cid: link.cid,
190
+ record: link.record,
191
+ }),
192
+ ],
193
+ });
194
+ }
195
+ return links.length ? links : undefined;
196
+ }
197
+ profile(did, state, opts) {
170
198
  const actor = state.actors?.get(did);
171
199
  if (!actor)
172
200
  return;
173
- const basicView = this.profileBasic(did, state);
201
+ const basicView = this.profileBasic(did, state, opts);
174
202
  if (!basicView)
175
203
  return;
176
204
  return {
@@ -184,7 +212,7 @@ export class Views {
184
212
  : undefined,
185
213
  };
186
214
  }
187
- profileBasic(did, state) {
215
+ profileBasic(did, state, opts) {
188
216
  const actor = state.actors?.get(did);
189
217
  if (!actor)
190
218
  return;
@@ -198,6 +226,12 @@ export class Views {
198
226
  record: actor.profile,
199
227
  }),
200
228
  ];
229
+ const viewer = this.profileViewer(did, state);
230
+ const knownFollowers = viewer && (opts?.includeKnownFollowers ?? true)
231
+ ? this.knownFollowers(did, state)
232
+ : undefined;
233
+ if (viewer && knownFollowers)
234
+ viewer.knownFollowers = knownFollowers;
201
235
  return {
202
236
  did,
203
237
  handle: actor.handle ?? INVALID_HANDLE,
@@ -219,7 +253,7 @@ export class Views {
219
253
  }
220
254
  : undefined,
221
255
  },
222
- viewer: this.profileViewer(did, state),
256
+ viewer,
223
257
  labels,
224
258
  createdAt: actor.createdAt
225
259
  ? actor.createdAt.toISOString()
@@ -240,24 +274,6 @@ export class Views {
240
274
  profileAssociatedActivitySubscription(actor) {
241
275
  return { allowSubscriptions: actor.allowActivitySubscriptionsFrom };
242
276
  }
243
- profileKnownFollowers(did, state) {
244
- const actor = state.actors?.get(did);
245
- if (!actor)
246
- return;
247
- const baseView = this.profile(did, state);
248
- if (!baseView)
249
- return;
250
- const knownFollowers = this.knownFollowers(did, state);
251
- return {
252
- ...baseView,
253
- viewer: baseView.viewer
254
- ? {
255
- ...baseView.viewer,
256
- knownFollowers,
257
- }
258
- : undefined,
259
- };
260
- }
261
277
  profileViewer(did, state) {
262
278
  const viewer = state.profileViewers?.get(did);
263
279
  if (!viewer)
@@ -338,7 +354,10 @@ export class Views {
338
354
  if (this.actorIsNoHosted(subjectDid, state)) {
339
355
  return undefined;
340
356
  }
341
- return this.profileBasic(subjectDid, state);
357
+ // @NOTE Nested known-subject views must not recursively expand social proof.
358
+ return this.profileBasic(subjectDid, state, {
359
+ includeKnownFollowers: false,
360
+ });
342
361
  });
343
362
  return { count, [key]: subjects };
344
363
  }
@@ -560,7 +579,8 @@ export class Views {
560
579
  // Only these have a "labels" property:
561
580
  if (!isPostRecordType(record) &&
562
581
  !isProfileRecordType(record) &&
563
- !isLabelerRecordType(record)) {
582
+ !isLabelerRecordType(record) &&
583
+ !app.bsky.actor.link.$isTypeOf(record)) {
564
584
  return [];
565
585
  }
566
586
  // Ignore if no labels defines
@@ -1651,7 +1671,7 @@ export class Views {
1651
1671
  /**
1652
1672
  * Compose-path entry point: caller already knows which document and
1653
1673
  * publication backed the request and has them in hand (e.g. from
1654
- * iterating the SS hydration maps directly). Skips the by-ref lookup
1674
+ * `getStandardSiteRecordsForUri`). Skips the by-ref lookup
1655
1675
  * that `externalEmbedFromStandardSite` does. Used by
1656
1676
  * `getEmbedExternalView`.
1657
1677
  *
@@ -1676,15 +1696,16 @@ export class Views {
1676
1696
  // 2. The lookups guarantee structural agreement between doc and pub
1677
1697
  // — matching `site`/`uri`, no orphan doc claiming a missing
1678
1698
  // publication (see `getSiteStandardRecordsFromHydrationMapsByRefs`
1679
- // and `…ByDocumentUri` in `hydration/external.ts`).
1680
- // 3. `validateStandardSiteForUrl` below checks that the records back
1681
- // the URL the embed claims (see `util/standard-site.ts`).
1699
+ // in `hydration/external.ts`).
1700
+ // 3. `validateStandardSiteRecordsForUrl` below re-checks the doc/pub
1701
+ // relationship and that the records back the URL the embed claims
1702
+ // (see `util/external/standard-site.ts`).
1682
1703
  //
1683
1704
  // If any layer rejected, callers see `undefined` and fall back to the
1684
1705
  // bare embed rather than render partial / disagreeing enrichment.
1685
1706
  if (!document && !publication)
1686
1707
  return undefined;
1687
- if (!validateStandardSiteForUrl(document, publication, assumedUrl)) {
1708
+ if (!validateStandardSiteRecordsForUrl(document, publication, assumedUrl)) {
1688
1709
  viewsLogger.warn({
1689
1710
  documentUri: document?.ref.uri,
1690
1711
  publicationUri: publication?.ref.uri,
@@ -2079,13 +2100,43 @@ export class Views {
2079
2100
  break;
2080
2101
  }
2081
2102
  case NOTIFICATION_REASON.REPOST:
2082
- kind = defs.repostGroup.$build({
2083
- post: notif.reasonSubject,
2084
- items: actorItems,
2085
- });
2103
+ kind =
2104
+ group.kind === APPVIEW_NOTIFICATION_REASON.MULTI_POST_REPOST &&
2105
+ group.items.length > 1
2106
+ ? defs.multiPostRepostGroup.$build({
2107
+ actor: newestItem.actorDid,
2108
+ items: group.items.map((item) => ({
2109
+ post: item.raw.reasonSubject,
2110
+ })),
2111
+ })
2112
+ : defs.repostGroup.$build({
2113
+ post: notif.reasonSubject,
2114
+ items: actorItems,
2115
+ });
2086
2116
  break;
2087
2117
  case NOTIFICATION_REASON.LIKE_VIA_REPOST:
2088
2118
  case NOTIFICATION_REASON.REPOST_VIA_REPOST: {
2119
+ if ((group.kind ===
2120
+ APPVIEW_NOTIFICATION_REASON.MULTI_POST_LIKE_VIA_REPOST ||
2121
+ group.kind ===
2122
+ APPVIEW_NOTIFICATION_REASON.MULTI_POST_REPOST_VIA_REPOST) &&
2123
+ group.items.length > 1) {
2124
+ const items = mapDefined(group.items, (item) => {
2125
+ const viaRepost = item.raw.reasonSubject;
2126
+ const post = state.reposts?.get(viaRepost)?.record.subject.uri;
2127
+ if (!post)
2128
+ return;
2129
+ return { post, viaRepost };
2130
+ });
2131
+ if (items.length !== group.items.length)
2132
+ return;
2133
+ const fields = { actor: newestItem.actorDid, items };
2134
+ kind =
2135
+ notif.reason === NOTIFICATION_REASON.LIKE_VIA_REPOST
2136
+ ? defs.multiPostLikeViaRepostGroup.$build(fields)
2137
+ : defs.multiPostRepostViaRepostGroup.$build(fields);
2138
+ break;
2139
+ }
2089
2140
  const subjectUri = notif.reasonSubject;
2090
2141
  const originalPostUri = state.reposts?.get(subjectUri)?.record.subject.uri;
2091
2142
  if (!originalPostUri)