@atproto/bsky 0.0.269 → 0.0.271
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.
- package/CHANGELOG.md +41 -0
- package/dist/api/app/bsky/feed/getFeed.d.ts.map +1 -1
- package/dist/api/app/bsky/feed/getFeed.js +2 -0
- package/dist/api/app/bsky/feed/getFeed.js.map +1 -1
- package/dist/api/app/bsky/feed/getListFeed.d.ts.map +1 -1
- package/dist/api/app/bsky/feed/getListFeed.js +2 -0
- package/dist/api/app/bsky/feed/getListFeed.js.map +1 -1
- package/dist/api/app/bsky/feed/getTimeline.d.ts.map +1 -1
- package/dist/api/app/bsky/feed/getTimeline.js +2 -0
- package/dist/api/app/bsky/feed/getTimeline.js.map +1 -1
- package/dist/api/app/bsky/graph/getMutes.js +29 -9
- package/dist/api/app/bsky/graph/getMutes.js.map +1 -1
- package/dist/api/app/bsky/graph/muteActor.d.ts.map +1 -1
- package/dist/api/app/bsky/graph/muteActor.js +3 -1
- package/dist/api/app/bsky/graph/muteActor.js.map +1 -1
- package/dist/api/app/bsky/notification/updateSeen.js +3 -4
- package/dist/api/app/bsky/notification/updateSeen.js.map +1 -1
- package/dist/api/app/bsky/unspecced/getPostThreadV2.js +3 -0
- package/dist/api/app/bsky/unspecced/getPostThreadV2.js.map +1 -1
- package/dist/data-plane/server/bsync-subscription.d.ts.map +1 -1
- package/dist/data-plane/server/bsync-subscription.js +6 -2
- package/dist/data-plane/server/bsync-subscription.js.map +1 -1
- package/dist/data-plane/server/db/database-schema.d.ts +2 -1
- package/dist/data-plane/server/db/database-schema.d.ts.map +1 -1
- package/dist/data-plane/server/db/database-schema.js.map +1 -1
- package/dist/data-plane/server/db/db.d.ts +3 -4
- package/dist/data-plane/server/db/db.d.ts.map +1 -1
- package/dist/data-plane/server/db/db.js +0 -2
- package/dist/data-plane/server/db/db.js.map +1 -1
- package/dist/data-plane/server/db/migrations/20260618T200000000Z-add-mute-scope.d.ts +4 -0
- package/dist/data-plane/server/db/migrations/20260618T200000000Z-add-mute-scope.d.ts.map +1 -0
- package/dist/data-plane/server/db/migrations/20260618T200000000Z-add-mute-scope.js +17 -0
- package/dist/data-plane/server/db/migrations/20260618T200000000Z-add-mute-scope.js.map +1 -0
- package/dist/data-plane/server/db/migrations/20260729T223157563Z-add-op-thread-reply.d.ts +4 -0
- package/dist/data-plane/server/db/migrations/20260729T223157563Z-add-op-thread-reply.d.ts.map +1 -0
- package/dist/data-plane/server/db/migrations/20260729T223157563Z-add-op-thread-reply.js +14 -0
- package/dist/data-plane/server/db/migrations/20260729T223157563Z-add-op-thread-reply.js.map +1 -0
- package/dist/data-plane/server/db/migrations/index.d.ts +2 -0
- package/dist/data-plane/server/db/migrations/index.d.ts.map +1 -1
- package/dist/data-plane/server/db/migrations/index.js +2 -0
- package/dist/data-plane/server/db/migrations/index.js.map +1 -1
- package/dist/data-plane/server/db/tables/mute.d.ts +2 -0
- package/dist/data-plane/server/db/tables/mute.d.ts.map +1 -1
- package/dist/data-plane/server/db/tables/mute.js.map +1 -1
- package/dist/data-plane/server/db/tables/op-thread-reply.d.ts +12 -0
- package/dist/data-plane/server/db/tables/op-thread-reply.d.ts.map +1 -0
- package/dist/data-plane/server/db/tables/op-thread-reply.js +3 -0
- package/dist/data-plane/server/db/tables/op-thread-reply.js.map +1 -0
- package/dist/data-plane/server/db/types.d.ts.map +1 -1
- package/dist/data-plane/server/db/types.js.map +1 -1
- package/dist/data-plane/server/db/util.d.ts.map +1 -1
- package/dist/data-plane/server/db/util.js.map +1 -1
- package/dist/data-plane/server/index.d.ts.map +1 -1
- package/dist/data-plane/server/index.js +2 -3
- package/dist/data-plane/server/index.js.map +1 -1
- package/dist/data-plane/server/indexing/plugins/post.d.ts.map +1 -1
- package/dist/data-plane/server/indexing/plugins/post.js +22 -0
- package/dist/data-plane/server/indexing/plugins/post.js.map +1 -1
- package/dist/data-plane/server/routes/activity-subscription.d.ts +1 -1
- package/dist/data-plane/server/routes/activity-subscription.d.ts.map +1 -1
- package/dist/data-plane/server/routes/blocks.d.ts +1 -1
- package/dist/data-plane/server/routes/blocks.d.ts.map +1 -1
- package/dist/data-plane/server/routes/bookmarks.d.ts +1 -1
- package/dist/data-plane/server/routes/bookmarks.d.ts.map +1 -1
- package/dist/data-plane/server/routes/drafts.d.ts +1 -1
- package/dist/data-plane/server/routes/drafts.d.ts.map +1 -1
- package/dist/data-plane/server/routes/drafts.js.map +1 -1
- package/dist/data-plane/server/routes/feed-gens.d.ts +1 -1
- package/dist/data-plane/server/routes/feed-gens.d.ts.map +1 -1
- package/dist/data-plane/server/routes/feeds.d.ts +1 -1
- package/dist/data-plane/server/routes/feeds.d.ts.map +1 -1
- package/dist/data-plane/server/routes/follows.d.ts +1 -1
- package/dist/data-plane/server/routes/follows.d.ts.map +1 -1
- package/dist/data-plane/server/routes/identity.d.ts +1 -1
- package/dist/data-plane/server/routes/identity.d.ts.map +1 -1
- package/dist/data-plane/server/routes/index.d.ts +1 -1
- package/dist/data-plane/server/routes/index.d.ts.map +1 -1
- package/dist/data-plane/server/routes/interactions.d.ts +1 -1
- package/dist/data-plane/server/routes/interactions.d.ts.map +1 -1
- package/dist/data-plane/server/routes/labels.d.ts +1 -1
- package/dist/data-plane/server/routes/labels.d.ts.map +1 -1
- package/dist/data-plane/server/routes/likes.d.ts +1 -1
- package/dist/data-plane/server/routes/likes.d.ts.map +1 -1
- package/dist/data-plane/server/routes/lists.d.ts +1 -1
- package/dist/data-plane/server/routes/lists.d.ts.map +1 -1
- package/dist/data-plane/server/routes/moderation.d.ts +1 -1
- package/dist/data-plane/server/routes/moderation.d.ts.map +1 -1
- package/dist/data-plane/server/routes/mutes.d.ts +1 -1
- package/dist/data-plane/server/routes/mutes.d.ts.map +1 -1
- package/dist/data-plane/server/routes/mutes.js +17 -4
- package/dist/data-plane/server/routes/mutes.js.map +1 -1
- package/dist/data-plane/server/routes/notifs.d.ts +1 -1
- package/dist/data-plane/server/routes/notifs.d.ts.map +1 -1
- package/dist/data-plane/server/routes/profile.d.ts +1 -1
- package/dist/data-plane/server/routes/profile.d.ts.map +1 -1
- package/dist/data-plane/server/routes/quotes.d.ts +1 -1
- package/dist/data-plane/server/routes/quotes.d.ts.map +1 -1
- package/dist/data-plane/server/routes/records.d.ts +1 -1
- package/dist/data-plane/server/routes/records.d.ts.map +1 -1
- package/dist/data-plane/server/routes/relationships.d.ts +1 -1
- package/dist/data-plane/server/routes/relationships.d.ts.map +1 -1
- package/dist/data-plane/server/routes/relationships.js +14 -3
- package/dist/data-plane/server/routes/relationships.js.map +1 -1
- package/dist/data-plane/server/routes/reposts.d.ts +1 -1
- package/dist/data-plane/server/routes/reposts.d.ts.map +1 -1
- package/dist/data-plane/server/routes/search.d.ts +1 -1
- package/dist/data-plane/server/routes/search.d.ts.map +1 -1
- package/dist/data-plane/server/routes/site-standard.d.ts +1 -1
- package/dist/data-plane/server/routes/site-standard.d.ts.map +1 -1
- package/dist/data-plane/server/routes/sitemap.d.ts +1 -1
- package/dist/data-plane/server/routes/sitemap.d.ts.map +1 -1
- package/dist/data-plane/server/routes/starter-packs.d.ts +1 -1
- package/dist/data-plane/server/routes/starter-packs.d.ts.map +1 -1
- package/dist/data-plane/server/routes/suggestions.d.ts +1 -1
- package/dist/data-plane/server/routes/suggestions.d.ts.map +1 -1
- package/dist/data-plane/server/routes/sync.d.ts +1 -1
- package/dist/data-plane/server/routes/sync.d.ts.map +1 -1
- package/dist/data-plane/server/routes/threads.d.ts +1 -1
- package/dist/data-plane/server/routes/threads.d.ts.map +1 -1
- package/dist/data-plane/server/routes/threads.js +89 -2
- package/dist/data-plane/server/routes/threads.js.map +1 -1
- package/dist/data-plane/server/util.d.ts +4 -4
- package/dist/hydration/actor.d.ts +2 -0
- package/dist/hydration/actor.d.ts.map +1 -1
- package/dist/hydration/actor.js +2 -0
- package/dist/hydration/actor.js.map +1 -1
- package/dist/hydration/external.d.ts.map +1 -1
- package/dist/hydration/external.js.map +1 -1
- package/dist/hydration/graph.d.ts.map +1 -1
- package/dist/hydration/graph.js.map +1 -1
- package/dist/hydration/hydrator.d.ts.map +1 -1
- package/dist/hydration/hydrator.js +4 -1
- package/dist/hydration/hydrator.js.map +1 -1
- package/dist/image/uri.d.ts.map +1 -1
- package/dist/image/uri.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -3
- package/dist/index.js.map +1 -1
- package/dist/lexicons/app/bsky/actor/defs.defs.d.ts +11 -0
- package/dist/lexicons/app/bsky/actor/defs.defs.d.ts.map +1 -1
- package/dist/lexicons/app/bsky/actor/defs.defs.js +2 -0
- package/dist/lexicons/app/bsky/actor/defs.defs.js.map +1 -1
- package/dist/lexicons/app/bsky/authCreatePosts.defs.d.ts +1 -1
- package/dist/lexicons/app/bsky/authCreatePosts.defs.d.ts.map +1 -1
- package/dist/lexicons/app/bsky/authDeleteContent.defs.d.ts +1 -1
- package/dist/lexicons/app/bsky/authDeleteContent.defs.d.ts.map +1 -1
- package/dist/lexicons/app/bsky/authFullApp.defs.d.ts +1 -1
- package/dist/lexicons/app/bsky/authFullApp.defs.d.ts.map +1 -1
- package/dist/lexicons/app/bsky/authManageFeedDeclarations.defs.d.ts +1 -1
- package/dist/lexicons/app/bsky/authManageFeedDeclarations.defs.d.ts.map +1 -1
- package/dist/lexicons/app/bsky/authManageLabelerService.defs.d.ts +1 -1
- package/dist/lexicons/app/bsky/authManageLabelerService.defs.d.ts.map +1 -1
- package/dist/lexicons/app/bsky/authManageModeration.defs.d.ts +1 -1
- package/dist/lexicons/app/bsky/authManageModeration.defs.d.ts.map +1 -1
- package/dist/lexicons/app/bsky/authManageNotifications.defs.d.ts +1 -1
- package/dist/lexicons/app/bsky/authManageNotifications.defs.d.ts.map +1 -1
- package/dist/lexicons/app/bsky/authManageProfile.defs.d.ts +1 -1
- package/dist/lexicons/app/bsky/authManageProfile.defs.d.ts.map +1 -1
- package/dist/lexicons/app/bsky/authViewAll.defs.d.ts +1 -1
- package/dist/lexicons/app/bsky/authViewAll.defs.d.ts.map +1 -1
- package/dist/lexicons/app/bsky/draft/defs.defs.d.ts.map +1 -1
- package/dist/lexicons/app/bsky/draft/defs.defs.js.map +1 -1
- package/dist/lexicons/app/bsky/graph/getMutes.defs.d.ts +1 -1
- package/dist/lexicons/app/bsky/graph/getMutes.defs.d.ts.map +1 -1
- package/dist/lexicons/app/bsky/graph/getMutes.defs.js +1 -1
- package/dist/lexicons/app/bsky/graph/getMutes.defs.js.map +1 -1
- package/dist/lexicons/app/bsky/graph/muteActor.defs.d.ts +5 -1
- package/dist/lexicons/app/bsky/graph/muteActor.defs.d.ts.map +1 -1
- package/dist/lexicons/app/bsky/graph/muteActor.defs.js +3 -1
- package/dist/lexicons/app/bsky/graph/muteActor.defs.js.map +1 -1
- package/dist/lexicons/app/bsky/richtext/facet.defs.d.ts.map +1 -1
- package/dist/lexicons/app/bsky/richtext/facet.defs.js.map +1 -1
- package/dist/lexicons/app/bsky/unspecced/defs.defs.d.ts +9 -1
- package/dist/lexicons/app/bsky/unspecced/defs.defs.d.ts.map +1 -1
- package/dist/lexicons/app/bsky/unspecced/defs.defs.js +2 -0
- package/dist/lexicons/app/bsky/unspecced/defs.defs.js.map +1 -1
- package/dist/lexicons/chat/bsky/authFullChatClient.defs.d.ts +1 -1
- package/dist/lexicons/chat/bsky/authFullChatClient.defs.d.ts.map +1 -1
- package/dist/lexicons/chat/bsky/convo/defs.defs.d.ts.map +1 -1
- package/dist/lexicons/chat/bsky/convo/defs.defs.js.map +1 -1
- package/dist/lexicons/chat/bsky/group/createGroup.defs.js +1 -1
- package/dist/lexicons/chat/bsky/group/createGroup.defs.js.map +1 -1
- package/dist/lexicons/com/atproto/sync/defs.defs.d.ts.map +1 -1
- package/dist/lexicons/com/atproto/sync/defs.defs.js.map +1 -1
- package/dist/lexicons/tools/ozone/moderation/defs.defs.d.ts.map +1 -1
- package/dist/lexicons/tools/ozone/moderation/defs.defs.js.map +1 -1
- package/dist/lexicons/tools/ozone/queue/createQueue.defs.d.ts +3 -1
- package/dist/lexicons/tools/ozone/queue/createQueue.defs.d.ts.map +1 -1
- package/dist/lexicons/tools/ozone/queue/createQueue.defs.js +3 -0
- package/dist/lexicons/tools/ozone/queue/createQueue.defs.js.map +1 -1
- package/dist/lexicons/tools/ozone/queue/defs.defs.d.ts +4 -0
- package/dist/lexicons/tools/ozone/queue/defs.defs.d.ts.map +1 -1
- package/dist/lexicons/tools/ozone/queue/defs.defs.js +2 -0
- package/dist/lexicons/tools/ozone/queue/defs.defs.js.map +1 -1
- package/dist/lexicons/tools/ozone/queue/updateQueue.defs.d.ts +4 -2
- package/dist/lexicons/tools/ozone/queue/updateQueue.defs.d.ts.map +1 -1
- package/dist/lexicons/tools/ozone/queue/updateQueue.defs.js +6 -2
- package/dist/lexicons/tools/ozone/queue/updateQueue.defs.js.map +1 -1
- package/dist/lexicons/tools/ozone/report/defs.defs.d.ts.map +1 -1
- package/dist/lexicons/tools/ozone/report/defs.defs.js.map +1 -1
- package/dist/proto/bsky_pb.d.ts +81 -1
- package/dist/proto/bsky_pb.d.ts.map +1 -1
- package/dist/proto/bsky_pb.js +104 -1
- package/dist/proto/bsky_pb.js.map +1 -1
- package/dist/proto/bsync_pb.d.ts +23 -0
- package/dist/proto/bsync_pb.d.ts.map +1 -1
- package/dist/proto/bsync_pb.js +27 -0
- package/dist/proto/bsync_pb.js.map +1 -1
- package/dist/util/standard-site.d.ts.map +1 -1
- package/dist/util/standard-site.js.map +1 -1
- package/dist/views/index.d.ts +5 -0
- package/dist/views/index.d.ts.map +1 -1
- package/dist/views/index.js +59 -3
- package/dist/views/index.js.map +1 -1
- package/dist/views/threads-v2.d.ts +1 -0
- package/dist/views/threads-v2.d.ts.map +1 -1
- package/dist/views/threads-v2.js +8 -2
- package/dist/views/threads-v2.js.map +1 -1
- package/dist/views/types.d.ts.map +1 -1
- package/dist/views/types.js.map +1 -1
- package/package.json +16 -16
package/dist/views/index.js
CHANGED
|
@@ -71,6 +71,18 @@ export class Views {
|
|
|
71
71
|
return false;
|
|
72
72
|
return !!(viewer.muted || this.mutedByList(viewer, state));
|
|
73
73
|
}
|
|
74
|
+
viewerRepostMuteExists(did, state) {
|
|
75
|
+
const viewer = state.profileViewers?.get(did);
|
|
76
|
+
if (!viewer)
|
|
77
|
+
return false;
|
|
78
|
+
return !!viewer.mutedOnlyReposts;
|
|
79
|
+
}
|
|
80
|
+
viewerQuotepostMuteExists(did, state) {
|
|
81
|
+
const viewer = state.profileViewers?.get(did);
|
|
82
|
+
if (!viewer)
|
|
83
|
+
return false;
|
|
84
|
+
return !!viewer.mutedOnlyQuoteposts;
|
|
85
|
+
}
|
|
74
86
|
blockingByList(viewer, state) {
|
|
75
87
|
return (viewer.blockingByList && this.recordActive(viewer.blockingByList, state));
|
|
76
88
|
}
|
|
@@ -254,8 +266,16 @@ export class Views {
|
|
|
254
266
|
const blockingUri = viewer.blocking || blockingByList;
|
|
255
267
|
const block = !!blockedByUri || !!blockingUri;
|
|
256
268
|
const mutedByList = this.mutedByList(viewer, state);
|
|
269
|
+
// scoped mute flags are exclusive with muted: when the account is fully
|
|
270
|
+
// muted (directly or via a mutelist), suppress them so a scoped direct
|
|
271
|
+
// mute underneath a list mute doesn't surface both as true.
|
|
272
|
+
const muted = !!(viewer.muted || mutedByList);
|
|
257
273
|
return {
|
|
258
|
-
muted
|
|
274
|
+
muted,
|
|
275
|
+
// when muted is true, these are suppressed to avoid confusion
|
|
276
|
+
mutedOnlyReposts: !muted && !!viewer.mutedOnlyReposts,
|
|
277
|
+
// when muted is true, these are suppressed to avoid confusion
|
|
278
|
+
mutedOnlyQuoteposts: !muted && !!viewer.mutedOnlyQuoteposts,
|
|
259
279
|
mutedByList: mutedByList ? this.listBasic(mutedByList, state) : undefined,
|
|
260
280
|
blockedBy: !!blockedByUri,
|
|
261
281
|
blocking: blockingUri,
|
|
@@ -607,8 +627,11 @@ export class Views {
|
|
|
607
627
|
const grandparentAuthorDid = grandparentUri && creatorFromUri(grandparentUri);
|
|
608
628
|
return {
|
|
609
629
|
originatorMuted: this.viewerMuteExists(originatorDid, state),
|
|
630
|
+
originatorRepostMuted: !!item.repost && this.viewerRepostMuteExists(originatorDid, state),
|
|
610
631
|
originatorBlocked: this.viewerBlockExists(originatorDid, state),
|
|
611
632
|
authorMuted: this.viewerMuteExists(authorDid, state),
|
|
633
|
+
authorQuotepostMuted: postIsQuotepost(post?.record) &&
|
|
634
|
+
this.viewerQuotepostMuteExists(authorDid, state),
|
|
612
635
|
authorBlocked: this.viewerBlockExists(authorDid, state),
|
|
613
636
|
ancestorAuthorBlocked: (!!parentAuthorDid && this.viewerBlockExists(parentAuthorDid, state)) ||
|
|
614
637
|
(!!grandparentAuthorDid &&
|
|
@@ -1052,6 +1075,7 @@ export class Views {
|
|
|
1052
1075
|
}
|
|
1053
1076
|
const thread = sortTrimFlattenThreadTree(anchorTree, {
|
|
1054
1077
|
opDid,
|
|
1078
|
+
opThreadUris: skeleton.opThread && new Set(skeleton.opThread),
|
|
1055
1079
|
branchingFactor,
|
|
1056
1080
|
sort,
|
|
1057
1081
|
viewer: state.ctx?.viewer ?? null,
|
|
@@ -1059,6 +1083,25 @@ export class Views {
|
|
|
1059
1083
|
threadTagsHide: this.threadTagsHide,
|
|
1060
1084
|
visibilityTagRankPrefix: this.visibilityTagRankPrefix,
|
|
1061
1085
|
}, state.ctx?.features.checkGate(state.ctx.features.Gate.ThreadsReplyRankingExplorationEnable));
|
|
1086
|
+
if (skeleton.opThread) {
|
|
1087
|
+
const indexByUri = new Map(skeleton.opThread.map((uri, i) => [uri, i + 1]));
|
|
1088
|
+
const postCount = skeleton.opThread.length;
|
|
1089
|
+
for (const item of thread) {
|
|
1090
|
+
if (!app.bsky.unspecced.defs.threadItemPost.$isTypeOf(item.value)) {
|
|
1091
|
+
continue;
|
|
1092
|
+
}
|
|
1093
|
+
const index = indexByUri.get(item.uri);
|
|
1094
|
+
item.value.opThread = index !== undefined;
|
|
1095
|
+
if (index !== undefined) {
|
|
1096
|
+
item.value.opThreadPostIndex = index;
|
|
1097
|
+
item.value.opThreadPostCount = postCount;
|
|
1098
|
+
}
|
|
1099
|
+
else {
|
|
1100
|
+
delete item.value.opThreadPostIndex;
|
|
1101
|
+
delete item.value.opThreadPostCount;
|
|
1102
|
+
}
|
|
1103
|
+
}
|
|
1104
|
+
}
|
|
1062
1105
|
return {
|
|
1063
1106
|
hasOtherReplies,
|
|
1064
1107
|
thread,
|
|
@@ -1660,9 +1703,9 @@ export class Views {
|
|
|
1660
1703
|
// unit, so doc-scoped and publication-scoped labels end up in the same
|
|
1661
1704
|
// bucket.
|
|
1662
1705
|
const labels = [
|
|
1663
|
-
...(document ? state.labels?.getBySubject(document.ref.uri) ?? [] : []),
|
|
1706
|
+
...(document ? (state.labels?.getBySubject(document.ref.uri) ?? []) : []),
|
|
1664
1707
|
...(publication
|
|
1665
|
-
? state.labels?.getBySubject(publication.ref.uri) ?? []
|
|
1708
|
+
? (state.labels?.getBySubject(publication.ref.uri) ?? [])
|
|
1666
1709
|
: []),
|
|
1667
1710
|
];
|
|
1668
1711
|
if (labels.length)
|
|
@@ -1959,6 +2002,19 @@ export class Views {
|
|
|
1959
2002
|
const getRootUri = (uri, post) => {
|
|
1960
2003
|
return post.record.reply?.root.uri ?? uri;
|
|
1961
2004
|
};
|
|
2005
|
+
const postIsQuotepost = (record) => {
|
|
2006
|
+
const embed = record?.embed;
|
|
2007
|
+
if (!embed)
|
|
2008
|
+
return false;
|
|
2009
|
+
const recordEmbed = isRecordEmbedType(embed)
|
|
2010
|
+
? embed
|
|
2011
|
+
: isRecordWithMediaType(embed)
|
|
2012
|
+
? embed.record
|
|
2013
|
+
: undefined;
|
|
2014
|
+
if (!recordEmbed)
|
|
2015
|
+
return false;
|
|
2016
|
+
return (new AtUri(recordEmbed.record.uri).collection === app.bsky.feed.post.$type);
|
|
2017
|
+
};
|
|
1962
2018
|
const externalEmbedSourceTheme = (theme) => {
|
|
1963
2019
|
if (!theme)
|
|
1964
2020
|
return undefined;
|