@atproto/bsky 0.3.5 → 0.3.6
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 +9 -0
- package/dist/data-plane/server/routes/moderation.js +4 -0
- package/dist/data-plane/server/routes/moderation.js.map +1 -1
- package/dist/hydration/hydrator.d.ts +1 -0
- package/dist/hydration/hydrator.d.ts.map +1 -1
- package/dist/hydration/hydrator.js +1 -1
- package/dist/hydration/hydrator.js.map +1 -1
- package/dist/hydration/label.d.ts +2 -1
- package/dist/hydration/label.d.ts.map +1 -1
- package/dist/hydration/label.js +38 -5
- package/dist/hydration/label.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/proto/bsky_connect.d.ts +12 -1
- package/dist/proto/bsky_connect.d.ts.map +1 -1
- package/dist/proto/bsky_connect.js +12 -1
- package/dist/proto/bsky_connect.js.map +1 -1
- package/dist/proto/bsky_pb.d.ts +130 -0
- package/dist/proto/bsky_pb.d.ts.map +1 -1
- package/dist/proto/bsky_pb.js +168 -0
- package/dist/proto/bsky_pb.js.map +1 -1
- package/package.json +8 -8
|
@@ -27,7 +27,8 @@ export type LabelerViewerState = {
|
|
|
27
27
|
export type LabelerViewerStates = HydrationMap<DidString, LabelerViewerState>;
|
|
28
28
|
export declare class LabelHydrator {
|
|
29
29
|
dataplane: DataPlaneClient;
|
|
30
|
-
|
|
30
|
+
private needsReviewTagSources;
|
|
31
|
+
constructor(dataplane: DataPlaneClient, needsReviewTagSources?: readonly DidString[]);
|
|
31
32
|
getLabelsForSubjects(subjects: UriString[], labelers: ParsedLabelers): Promise<Labels>;
|
|
32
33
|
getLabelers(dids: DidString[], includeTakedowns?: boolean): Promise<Labelers>;
|
|
33
34
|
getLabelerViewerStates(dids: DidString[], viewer: DidString): Promise<LabelerViewerStates>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"label.d.ts","sourceRoot":"","sources":["../../src/hydration/label.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,SAAS,EAEf,MAAM,cAAc,CAAA;AACrB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAEpE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAChD,OAAO,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAC7D,OAAO,EACL,YAAY,EACZ,KAAK,MAAM,EACX,KAAK,UAAU,EAIhB,MAAM,WAAW,CAAA;AAElB,YAAY,EAAE,KAAK,EAAE,CAAA;AAErB,MAAM,MAAM,aAAa,GAAG;IAC1B,eAAe,EAAE,OAAO,CAAA;IACxB,WAAW,EAAE,OAAO,CAAA;IACpB,WAAW,EAAE,OAAO,CAAA;IACpB,MAAM,EAAE,YAAY,CAAC,GAAG,MAAM,KAAK,MAAM,EAAE,EAAE,KAAK,CAAC,CAAA;CACpD,CAAA;AAED,qBAAa,MACX,SAAQ,YAAY,CAAC,SAAS,EAAE,aAAa,CAC7C,YAAW,MAAM;IAEjB,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,GAAG,GAAG,MAAM,KAAK,MAAM,EAAE,CAE/C;IACD,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"label.d.ts","sourceRoot":"","sources":["../../src/hydration/label.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,SAAS,EAEf,MAAM,cAAc,CAAA;AACrB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAEpE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAChD,OAAO,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAC7D,OAAO,EACL,YAAY,EACZ,KAAK,MAAM,EACX,KAAK,UAAU,EAIhB,MAAM,WAAW,CAAA;AAElB,YAAY,EAAE,KAAK,EAAE,CAAA;AAErB,MAAM,MAAM,aAAa,GAAG;IAC1B,eAAe,EAAE,OAAO,CAAA;IACxB,WAAW,EAAE,OAAO,CAAA;IACpB,WAAW,EAAE,OAAO,CAAA;IACpB,MAAM,EAAE,YAAY,CAAC,GAAG,MAAM,KAAK,MAAM,EAAE,EAAE,KAAK,CAAC,CAAA;CACpD,CAAA;AAED,qBAAa,MACX,SAAQ,YAAY,CAAC,SAAS,EAAE,aAAa,CAC7C,YAAW,MAAM;IAEjB,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,GAAG,GAAG,MAAM,KAAK,MAAM,EAAE,CAE/C;IACD,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAcvB;IACD,YAAY,CAAC,GAAG,EAAE,SAAS,GAAG,KAAK,EAAE,CAQpC;CACF;AAED,MAAM,MAAM,UAAU,GAAG;IACvB,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAED,MAAM,MAAM,WAAW,GAAG,YAAY,CAAC,SAAS,EAAE,UAAU,CAAC,CAAA;AAE7D,MAAM,MAAM,OAAO,GAAG,UAAU,CAAC,aAAa,CAAC,CAAA;AAC/C,MAAM,MAAM,QAAQ,GAAG,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;AAEvD,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,CAAC,EAAE,WAAW,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG,YAAY,CAAC,SAAS,EAAE,kBAAkB,CAAC,CAAA;AAE7E,qBAAa,aAAa;IAEf,SAAS,EAAE,eAAe;IACjC,OAAO,CAAC,qBAAqB;IAF/B,YACS,SAAS,EAAE,eAAe,EACzB,qBAAqB,GAAE,SAAS,SAAS,EAAO,EACtD;IAEE,oBAAoB,CACxB,QAAQ,EAAE,SAAS,EAAE,EACrB,QAAQ,EAAE,cAAc,GACvB,OAAO,CAAC,MAAM,CAAC,CAyFjB;IAEK,WAAW,CACf,IAAI,EAAE,SAAS,EAAE,EACjB,gBAAgB,UAAQ,GACvB,OAAO,CAAC,QAAQ,CAAC,CAkBnB;IAEK,sBAAsB,CAC1B,IAAI,EAAE,SAAS,EAAE,EACjB,MAAM,EAAE,SAAS,GAChB,OAAO,CAAC,mBAAmB,CAAC,CAiB9B;IAEK,oBAAoB,CACxB,IAAI,EAAE,SAAS,EAAE,EACjB,MAAM,EAAE,SAAS,GAAG,IAAI,GACvB,OAAO,CAAC,WAAW,CAAC,CAiBtB;CACF"}
|
package/dist/hydration/label.js
CHANGED
|
@@ -11,7 +11,9 @@ export class Labels extends HydrationMap {
|
|
|
11
11
|
continue;
|
|
12
12
|
const mine = this.get(key);
|
|
13
13
|
if (mine) {
|
|
14
|
+
mine.isImpersonation = mine.isImpersonation || theirs.isImpersonation;
|
|
14
15
|
mine.isTakendown = mine.isTakendown || theirs.isTakendown;
|
|
16
|
+
mine.needsReview = mine.needsReview || theirs.needsReview;
|
|
15
17
|
mine.labels = mine.labels.merge(theirs.labels);
|
|
16
18
|
}
|
|
17
19
|
else {
|
|
@@ -33,17 +35,21 @@ export class Labels extends HydrationMap {
|
|
|
33
35
|
}
|
|
34
36
|
}
|
|
35
37
|
export class LabelHydrator {
|
|
36
|
-
constructor(dataplane) {
|
|
38
|
+
constructor(dataplane, needsReviewTagSources = []) {
|
|
37
39
|
this.dataplane = dataplane;
|
|
40
|
+
this.needsReviewTagSources = needsReviewTagSources;
|
|
38
41
|
}
|
|
39
42
|
async getLabelsForSubjects(subjects, labelers) {
|
|
40
43
|
const map = new Labels();
|
|
41
44
|
if (!subjects.length || !labelers.dids.length)
|
|
42
45
|
return map;
|
|
43
|
-
const
|
|
44
|
-
|
|
45
|
-
issuers: labelers.dids,
|
|
46
|
-
|
|
46
|
+
const sources = this.needsReviewTagSources.filter((source) => labelers.dids.includes(source) && labelers.redact.has(source));
|
|
47
|
+
const [res, tagRes] = await Promise.all([
|
|
48
|
+
this.dataplane.getLabels({ subjects, issuers: labelers.dids }),
|
|
49
|
+
sources.length
|
|
50
|
+
? this.dataplane.getTagsForSubjects({ subjects, sources })
|
|
51
|
+
: undefined,
|
|
52
|
+
]);
|
|
47
53
|
for (const cur of res.labels) {
|
|
48
54
|
const parsed = parseJsonBytes(com.atproto.label.defs.label, cur);
|
|
49
55
|
if (!parsed || parsed.neg)
|
|
@@ -80,6 +86,33 @@ export class LabelHydrator {
|
|
|
80
86
|
entry.isImpersonation = true;
|
|
81
87
|
}
|
|
82
88
|
}
|
|
89
|
+
if (tagRes) {
|
|
90
|
+
const requestedSubjects = new Set(subjects);
|
|
91
|
+
const now = Date.now();
|
|
92
|
+
for (const tag of tagRes.tags) {
|
|
93
|
+
if (tag.value !== NEEDS_REVIEW_LABEL ||
|
|
94
|
+
tag.removed ||
|
|
95
|
+
!tag.event ||
|
|
96
|
+
!sources.includes(tag.event.source) ||
|
|
97
|
+
!requestedSubjects.has(tag.subject) ||
|
|
98
|
+
(tag.expiresAt && tag.expiresAt.toDate().getTime() <= now)) {
|
|
99
|
+
continue;
|
|
100
|
+
}
|
|
101
|
+
const subject = tag.subject;
|
|
102
|
+
const entry = map.get(subject);
|
|
103
|
+
if (entry) {
|
|
104
|
+
entry.needsReview = true;
|
|
105
|
+
}
|
|
106
|
+
else {
|
|
107
|
+
map.set(subject, {
|
|
108
|
+
isImpersonation: false,
|
|
109
|
+
isTakendown: false,
|
|
110
|
+
needsReview: true,
|
|
111
|
+
labels: new HydrationMap(),
|
|
112
|
+
});
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
}
|
|
83
116
|
return map;
|
|
84
117
|
}
|
|
85
118
|
async getLabelers(dids, includeTakedowns = false) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"label.js","sourceRoot":"","sources":["../../src/hydration/label.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n type AtUriString,\n type DidString,\n type UriString,\n atUri,\n} from '@atproto/lex'\nimport type { DataPlaneClient } from '../data-plane/client/index.js'\nimport { app, com } from '../lexicons/index.js'\nimport type { ParsedLabelers } from '../util.js'\nimport type { Label, LabelerRecord } from '../views/types.js'\nimport {\n HydrationMap,\n type Merges,\n type RecordInfo,\n parseJsonBytes,\n parseRecord,\n parseString,\n} from './util.js'\n\nexport type { Label }\n\nexport type SubjectLabels = {\n isImpersonation: boolean\n isTakendown: boolean\n needsReview: boolean\n labels: HydrationMap<`${string}::${string}`, Label> // src + val -> label\n}\n\nexport class Labels\n extends HydrationMap<UriString, SubjectLabels>\n implements Merges\n{\n static key(label: Label): `${string}::${string}` {\n return `${label.src}::${label.val}`\n }\n merge(map: Labels): this {\n for (const [key, theirs] of map) {\n if (!theirs) continue\n const mine = this.get(key)\n if (mine) {\n mine.isTakendown = mine.isTakendown || theirs.isTakendown\n mine.labels = mine.labels.merge(theirs.labels)\n } else {\n this.set(key, theirs)\n }\n }\n return this\n }\n getBySubject(sub: UriString): Label[] {\n const it = this.get(sub)?.labels.values()\n if (!it) return []\n const labels: Label[] = []\n for (const label of it) {\n if (label) labels.push(label)\n }\n return labels\n }\n}\n\nexport type LabelerAgg = {\n likes: number\n}\n\nexport type LabelerAggs = HydrationMap<DidString, LabelerAgg>\n\nexport type Labeler = RecordInfo<LabelerRecord>\nexport type Labelers = HydrationMap<DidString, Labeler>\n\nexport type LabelerViewerState = {\n like?: AtUriString\n}\n\nexport type LabelerViewerStates = HydrationMap<DidString, LabelerViewerState>\n\nexport class LabelHydrator {\n constructor(public dataplane: DataPlaneClient) {}\n\n async getLabelsForSubjects(\n subjects: UriString[],\n labelers: ParsedLabelers,\n ): Promise<Labels> {\n const map = new Labels()\n\n if (!subjects.length || !labelers.dids.length) return map\n\n const res = await this.dataplane.getLabels({\n subjects,\n issuers: labelers.dids,\n })\n\n for (const cur of res.labels) {\n const parsed = parseJsonBytes(com.atproto.label.defs.label, cur)\n if (!parsed || parsed.neg) continue\n const { sig: _, ...label } = parsed\n let entry = map.get(label.uri)\n if (!entry) {\n entry = {\n isImpersonation: false,\n isTakendown: false,\n needsReview: false,\n labels: new HydrationMap(),\n }\n map.set(label.uri, entry)\n }\n\n const isActionableNeedsReview =\n label.val === NEEDS_REVIEW_LABEL &&\n !label.neg &&\n labelers.redact.has(label.src)\n\n // we action needs review labels on backend for now so don't send to client until client has proper logic for them\n if (!isActionableNeedsReview) {\n entry.labels.set(Labels.key(label), label)\n }\n\n if (\n TAKEDOWN_LABELS.includes(label.val) &&\n !label.neg &&\n labelers.redact.has(label.src)\n ) {\n entry.isTakendown = true\n }\n if (isActionableNeedsReview) {\n entry.needsReview = true\n }\n if (\n label.val === IMPERSONATION_LABEL &&\n !label.neg &&\n labelers.redact.has(label.src)\n ) {\n entry.isImpersonation = true\n }\n }\n\n return map\n }\n\n async getLabelers(\n dids: DidString[],\n includeTakedowns = false,\n ): Promise<Labelers> {\n const map: Labelers = new HydrationMap()\n if (!dids.length) return map\n\n const res = await this.dataplane.getLabelerRecords({\n uris: dids.map(labelerDidToUri),\n })\n for (let i = 0; i < dids.length; i++) {\n const did = dids[i]\n const record = parseRecord(\n app.bsky.labeler.service.main,\n res.records[i],\n includeTakedowns,\n )\n map.set(did, record ?? null)\n }\n\n return map\n }\n\n async getLabelerViewerStates(\n dids: DidString[],\n viewer: DidString,\n ): Promise<LabelerViewerStates> {\n const map: LabelerViewerStates = new HydrationMap()\n if (!dids.length) return map\n\n const likes = await this.dataplane.getLikesByActorAndSubjects({\n actorDid: viewer,\n refs: dids.map((did) => ({ uri: labelerDidToUri(did) })),\n })\n\n for (let i = 0; i < dids.length; i++) {\n const did = dids[i]\n map.set(did, {\n like: parseString(likes.uris[i]),\n })\n }\n\n return map\n }\n\n async getLabelerAggregates(\n dids: DidString[],\n viewer: DidString | null,\n ): Promise<LabelerAggs> {\n const map: LabelerAggs = new HydrationMap()\n if (!dids.length) return map\n\n const refs = dids.map((did) => ({ uri: labelerDidToUri(did) }))\n const counts = await this.dataplane.getInteractionCounts({\n refs,\n skipCacheForDids: viewer ? [viewer] : undefined,\n })\n for (let i = 0; i < dids.length; i++) {\n const did = dids[i]\n map.set(did, {\n likes: counts.likes[i] ?? 0,\n })\n }\n\n return map\n }\n}\n\nfunction labelerDidToUri<T extends DidString>(did: T) {\n return atUri(did, app.bsky.labeler.service)\n}\n\nconst IMPERSONATION_LABEL = 'impersonation'\nconst TAKEDOWN_LABELS = ['!takedown', '!suspend']\nconst NEEDS_REVIEW_LABEL = 'needs-review'\n"]}
|
|
1
|
+
{"version":3,"file":"label.js","sourceRoot":"","sources":["../../src/hydration/label.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n type AtUriString,\n type DidString,\n type UriString,\n atUri,\n} from '@atproto/lex'\nimport type { DataPlaneClient } from '../data-plane/client/index.js'\nimport { app, com } from '../lexicons/index.js'\nimport type { ParsedLabelers } from '../util.js'\nimport type { Label, LabelerRecord } from '../views/types.js'\nimport {\n HydrationMap,\n type Merges,\n type RecordInfo,\n parseJsonBytes,\n parseRecord,\n parseString,\n} from './util.js'\n\nexport type { Label }\n\nexport type SubjectLabels = {\n isImpersonation: boolean\n isTakendown: boolean\n needsReview: boolean\n labels: HydrationMap<`${string}::${string}`, Label> // src + val -> label\n}\n\nexport class Labels\n extends HydrationMap<UriString, SubjectLabels>\n implements Merges\n{\n static key(label: Label): `${string}::${string}` {\n return `${label.src}::${label.val}`\n }\n merge(map: Labels): this {\n for (const [key, theirs] of map) {\n if (!theirs) continue\n const mine = this.get(key)\n if (mine) {\n mine.isImpersonation = mine.isImpersonation || theirs.isImpersonation\n mine.isTakendown = mine.isTakendown || theirs.isTakendown\n mine.needsReview = mine.needsReview || theirs.needsReview\n mine.labels = mine.labels.merge(theirs.labels)\n } else {\n this.set(key, theirs)\n }\n }\n return this\n }\n getBySubject(sub: UriString): Label[] {\n const it = this.get(sub)?.labels.values()\n if (!it) return []\n const labels: Label[] = []\n for (const label of it) {\n if (label) labels.push(label)\n }\n return labels\n }\n}\n\nexport type LabelerAgg = {\n likes: number\n}\n\nexport type LabelerAggs = HydrationMap<DidString, LabelerAgg>\n\nexport type Labeler = RecordInfo<LabelerRecord>\nexport type Labelers = HydrationMap<DidString, Labeler>\n\nexport type LabelerViewerState = {\n like?: AtUriString\n}\n\nexport type LabelerViewerStates = HydrationMap<DidString, LabelerViewerState>\n\nexport class LabelHydrator {\n constructor(\n public dataplane: DataPlaneClient,\n private needsReviewTagSources: readonly DidString[] = [],\n ) {}\n\n async getLabelsForSubjects(\n subjects: UriString[],\n labelers: ParsedLabelers,\n ): Promise<Labels> {\n const map = new Labels()\n\n if (!subjects.length || !labelers.dids.length) return map\n\n const sources = this.needsReviewTagSources.filter(\n (source) => labelers.dids.includes(source) && labelers.redact.has(source),\n )\n const [res, tagRes] = await Promise.all([\n this.dataplane.getLabels({ subjects, issuers: labelers.dids }),\n sources.length\n ? this.dataplane.getTagsForSubjects({ subjects, sources })\n : undefined,\n ])\n\n for (const cur of res.labels) {\n const parsed = parseJsonBytes(com.atproto.label.defs.label, cur)\n if (!parsed || parsed.neg) continue\n const { sig: _, ...label } = parsed\n let entry = map.get(label.uri)\n if (!entry) {\n entry = {\n isImpersonation: false,\n isTakendown: false,\n needsReview: false,\n labels: new HydrationMap(),\n }\n map.set(label.uri, entry)\n }\n\n const isActionableNeedsReview =\n label.val === NEEDS_REVIEW_LABEL &&\n !label.neg &&\n labelers.redact.has(label.src)\n\n // we action needs review labels on backend for now so don't send to client until client has proper logic for them\n if (!isActionableNeedsReview) {\n entry.labels.set(Labels.key(label), label)\n }\n\n if (\n TAKEDOWN_LABELS.includes(label.val) &&\n !label.neg &&\n labelers.redact.has(label.src)\n ) {\n entry.isTakendown = true\n }\n if (isActionableNeedsReview) {\n entry.needsReview = true\n }\n if (\n label.val === IMPERSONATION_LABEL &&\n !label.neg &&\n labelers.redact.has(label.src)\n ) {\n entry.isImpersonation = true\n }\n }\n\n if (tagRes) {\n const requestedSubjects = new Set<string>(subjects)\n const now = Date.now()\n for (const tag of tagRes.tags) {\n if (\n tag.value !== NEEDS_REVIEW_LABEL ||\n tag.removed ||\n !tag.event ||\n !sources.includes(tag.event.source as DidString) ||\n !requestedSubjects.has(tag.subject) ||\n (tag.expiresAt && tag.expiresAt.toDate().getTime() <= now)\n ) {\n continue\n }\n const subject = tag.subject as UriString\n const entry = map.get(subject)\n if (entry) {\n entry.needsReview = true\n } else {\n map.set(subject, {\n isImpersonation: false,\n isTakendown: false,\n needsReview: true,\n labels: new HydrationMap(),\n })\n }\n }\n }\n\n return map\n }\n\n async getLabelers(\n dids: DidString[],\n includeTakedowns = false,\n ): Promise<Labelers> {\n const map: Labelers = new HydrationMap()\n if (!dids.length) return map\n\n const res = await this.dataplane.getLabelerRecords({\n uris: dids.map(labelerDidToUri),\n })\n for (let i = 0; i < dids.length; i++) {\n const did = dids[i]\n const record = parseRecord(\n app.bsky.labeler.service.main,\n res.records[i],\n includeTakedowns,\n )\n map.set(did, record ?? null)\n }\n\n return map\n }\n\n async getLabelerViewerStates(\n dids: DidString[],\n viewer: DidString,\n ): Promise<LabelerViewerStates> {\n const map: LabelerViewerStates = new HydrationMap()\n if (!dids.length) return map\n\n const likes = await this.dataplane.getLikesByActorAndSubjects({\n actorDid: viewer,\n refs: dids.map((did) => ({ uri: labelerDidToUri(did) })),\n })\n\n for (let i = 0; i < dids.length; i++) {\n const did = dids[i]\n map.set(did, {\n like: parseString(likes.uris[i]),\n })\n }\n\n return map\n }\n\n async getLabelerAggregates(\n dids: DidString[],\n viewer: DidString | null,\n ): Promise<LabelerAggs> {\n const map: LabelerAggs = new HydrationMap()\n if (!dids.length) return map\n\n const refs = dids.map((did) => ({ uri: labelerDidToUri(did) }))\n const counts = await this.dataplane.getInteractionCounts({\n refs,\n skipCacheForDids: viewer ? [viewer] : undefined,\n })\n for (let i = 0; i < dids.length; i++) {\n const did = dids[i]\n map.set(did, {\n likes: counts.likes[i] ?? 0,\n })\n }\n\n return map\n }\n}\n\nfunction labelerDidToUri<T extends DidString>(did: T) {\n return atUri(did, app.bsky.labeler.service)\n}\n\nconst IMPERSONATION_LABEL = 'impersonation'\nconst TAKEDOWN_LABELS = ['!takedown', '!suspend']\nconst NEEDS_REVIEW_LABEL = 'needs-review'\n"]}
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AAKjC,OAAO,OAAO,MAAM,SAAS,CAAA;AAG7B,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAc9C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAsBzC,OAAO,EACL,KAAK,WAAW,EAGjB,MAAM,aAAa,CAAA;AAIpB,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC1C,YAAY,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,cAAc,uBAAuB,CAAA;AACrC,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAA;AACnE,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAA;AAC1D,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAElC,qBAAa,WAAW;IACf,GAAG,EAAE,UAAU,CAAA;IACf,GAAG,EAAE,OAAO,CAAC,WAAW,CAAA;IACxB,MAAM,CAAC,EAAE,IAAI,CAAC,MAAM,CAAA;IAC3B,OAAO,CAAC,UAAU,CAAC,CAAgB;IACnC,OAAO,CAAC,WAAW,CAAe;IAElC,YAAY,IAAI,EAAE;QAChB,GAAG,EAAE,UAAU,CAAA;QACf,GAAG,EAAE,OAAO,CAAC,WAAW,CAAA;QACxB,WAAW,CAAC,EAAE,WAAW,EAAE,CAAA;KAC5B,EAIA;IAED,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE;QAClB,MAAM,EAAE,YAAY,CAAA;QACpB,UAAU,EAAE,OAAO,CAAA;KACpB,GAAG,WAAW,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AAKjC,OAAO,OAAO,MAAM,SAAS,CAAA;AAG7B,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAc9C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAsBzC,OAAO,EACL,KAAK,WAAW,EAGjB,MAAM,aAAa,CAAA;AAIpB,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC1C,YAAY,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,cAAc,uBAAuB,CAAA;AACrC,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAA;AACnE,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAA;AAC1D,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAElC,qBAAa,WAAW;IACf,GAAG,EAAE,UAAU,CAAA;IACf,GAAG,EAAE,OAAO,CAAC,WAAW,CAAA;IACxB,MAAM,CAAC,EAAE,IAAI,CAAC,MAAM,CAAA;IAC3B,OAAO,CAAC,UAAU,CAAC,CAAgB;IACnC,OAAO,CAAC,WAAW,CAAe;IAElC,YAAY,IAAI,EAAE;QAChB,GAAG,EAAE,UAAU,CAAA;QACf,GAAG,EAAE,OAAO,CAAC,WAAW,CAAA;QACxB,WAAW,CAAC,EAAE,WAAW,EAAE,CAAA;KAC5B,EAIA;IAED,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE;QAClB,MAAM,EAAE,YAAY,CAAA;QACpB,UAAU,EAAE,OAAO,CAAA;KACpB,GAAG,WAAW,CAiPd;IAEK,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAalC;IAEK,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAc7B;IAEK,CAAC,MAAM,CAAC,YAAY,CAAC,kBAE1B;CACF;eAEc,WAAW"}
|
package/dist/index.js
CHANGED
|
@@ -135,6 +135,7 @@ export class BskyAppView {
|
|
|
135
135
|
const hydrator = new Hydrator(dataplane, config.labelsFromIssuerDids, {
|
|
136
136
|
debugFieldAllowedDids: config.debugFieldAllowedDids,
|
|
137
137
|
featureGatesClient,
|
|
138
|
+
needsReviewTagSources: [config.modServiceDid],
|
|
138
139
|
});
|
|
139
140
|
const views = new Views({
|
|
140
141
|
imgUriBuilder: imgUriBuilder,
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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","sourcesContent":["import events from 'node:events'\nimport type http from 'node:http'\nimport type { AddressInfo } from 'node:net'\nimport compression from 'compression'\nimport cors from 'cors'\nimport { Etcd3 } from 'etcd3'\nimport express from 'express'\nimport { type HttpTerminator, createHttpTerminator } from 'http-terminator'\nimport { DAY, SECOND } from '@atproto/common'\nimport type { Keypair } from '@atproto/crypto'\nimport { IdResolver } from '@atproto/identity'\nimport { Client } from '@atproto/lex'\nimport { createServer } from '@atproto/xrpc-server'\nimport { createBlobDispatcher } from './api/blob-dispatcher.js'\nimport API, {\n blobResolver,\n external,\n health,\n sitemap,\n wellKnown,\n} from './api/index.js'\nimport { AuthVerifier, createPublicKeyObject } from './auth-verifier.js'\nimport { authWithApiKey as bsyncAuth, createBsyncClient } from './bsync.js'\nimport type { ServerConfig } from './config.js'\nimport { AppContext } from './context.js'\nimport {\n authWithApiKey as courierAuth,\n createCourierClient,\n} from './courier.js'\nimport {\n BasicHostList,\n EtcdHostList,\n createDataPlaneClient,\n} from './data-plane/client/index.js'\nimport * as error from './error.js'\nimport { FeatureGatesClient } from './feature-gates/index.js'\nimport { Hydrator } from './hydration/hydrator.js'\nimport * as imageServer from './image/server.js'\nimport { ImageUriBuilder } from './image/uri.js'\nimport { createKwsClient } from './kws.js'\nimport { loggerMiddleware } from './logger.js'\nimport {\n authWithApiKey as rolodexAuth,\n createRolodexClient,\n} from './rolodex.js'\nimport { createStashClient } from './stash.js'\nimport {\n type UndiciAgent,\n createUndiciAgent,\n dispatcherFetch,\n} from './undici.js'\nimport { Views } from './views/index.js'\nimport { VideoUriBuilder } from './views/util.js'\n\nexport { ServerConfig } from './config.js'\nexport type { ServerConfigValues } from './config.js'\nexport { AppContext } from './context.js'\nexport * from './data-plane/index.js'\nexport { BackgroundQueue } from './data-plane/server/background.js'\nexport { Database } from './data-plane/server/db/index.js'\nexport { Redis } from './redis.js'\n\nexport class BskyAppView {\n public ctx: AppContext\n public app: express.Application\n public server?: http.Server\n private terminator?: HttpTerminator\n private dispatchers: UndiciAgent[]\n\n constructor(opts: {\n ctx: AppContext\n app: express.Application\n dispatchers?: UndiciAgent[]\n }) {\n this.ctx = opts.ctx\n this.app = opts.app\n this.dispatchers = opts.dispatchers ?? []\n }\n\n static create(opts: {\n config: ServerConfig\n signingKey: Keypair\n }): BskyAppView {\n const { config, signingKey } = opts\n const app = express()\n app.set('trust proxy', true)\n app.use(cors({ maxAge: DAY / SECOND }))\n app.use(loggerMiddleware)\n app.use(compression())\n\n // used solely for handle resolution: identity lookups occur on dataplane\n const idResolver = new IdResolver({\n plcUrl: config.didPlcUrl,\n backupNameservers: config.handleResolveNameservers,\n fetch: config.disableSsrfProtection ? globalThis.fetch : undefined,\n })\n\n const imgUriBuilderUrl =\n config.cdnUrl ||\n (config.publicUrl ? `${config.publicUrl}/img` : undefined)\n if (!imgUriBuilderUrl) {\n throw new Error('No image URI builder URL could be determined')\n }\n const imgUriBuilder = new ImageUriBuilder(imgUriBuilderUrl)\n const videoUriBuilder = new VideoUriBuilder({\n playlistUrlPattern:\n config.videoPlaylistUrlPattern ||\n `${config.publicUrl}/vid/%s/%s/playlist.m3u8`,\n thumbnailUrlPattern:\n config.videoThumbnailUrlPattern ||\n `${config.publicUrl}/vid/%s/%s/thumbnail.jpg`,\n })\n\n const searchClient = config.searchUrl\n ? new Client(\n {\n service: config.searchUrl,\n },\n {\n // Trust internal services to send us well-formed responses\n strictResponseProcessing: false,\n validateResponse: config.debugMode,\n },\n )\n : undefined\n\n const suggestionsClient = config.suggestionsUrl\n ? new Client(\n {\n service: config.suggestionsUrl,\n headers: config.suggestionsApiKey\n ? { authorization: `Bearer ${config.suggestionsApiKey}` }\n : undefined,\n },\n {\n // Trust internal services to send us well-formed responses\n strictResponseProcessing: false,\n validateResponse: config.debugMode,\n },\n )\n : undefined\n\n // @NOTE These bound the connection phase (TCP + TLS) only; once connected,\n // the request is not bounded here. They are kept for the lifetime of the\n // service (pooling connections), and closed on `destroy()`.\n // An unused agent holds no socket, so they can be built unconditionally.\n const topicsDispatcher = createUndiciAgent({ connectTimeout: SECOND })\n const irisDispatcher = createUndiciAgent({ connectTimeout: SECOND })\n\n const topicsClient = config.topicsUrl\n ? new Client(\n {\n service: config.topicsUrl,\n headers: config.topicsApiKey\n ? { authorization: `Bearer ${config.topicsApiKey}` }\n : undefined,\n fetch: dispatcherFetch(topicsDispatcher),\n },\n {\n // Trust internal services to send us well-formed responses\n strictResponseProcessing: false,\n validateResponse: config.debugMode,\n },\n )\n : undefined\n\n const irisClient = config.irisUrl\n ? new Client(\n {\n service: config.irisUrl,\n headers: config.irisApiKey\n ? { authorization: `Bearer ${config.irisApiKey}` }\n : undefined,\n fetch: dispatcherFetch(irisDispatcher),\n },\n {\n // Trust internal services to send us well-formed responses\n strictResponseProcessing: false,\n validateResponse: config.debugMode,\n },\n )\n : undefined\n\n const etcd = config.etcdHosts.length\n ? new Etcd3({ hosts: config.etcdHosts })\n : undefined\n\n const dataplaneHostList =\n etcd && config.dataplaneUrlsEtcdKeyPrefix\n ? new EtcdHostList(\n etcd,\n config.dataplaneUrlsEtcdKeyPrefix,\n config.dataplaneUrls,\n )\n : new BasicHostList(config.dataplaneUrls)\n\n const featureGatesClient = new FeatureGatesClient({\n growthBookApiHost: config.growthBookApiHost,\n growthBookClientKey: config.growthBookClientKey,\n eventProxyTrackingEndpoint: config.eventProxyTrackingEndpoint,\n })\n\n const dataplane = createDataPlaneClient(dataplaneHostList, {\n httpVersion: config.dataplaneHttpVersion,\n rejectUnauthorized: !config.dataplaneIgnoreBadTls,\n })\n const hydrator = new Hydrator(dataplane, config.labelsFromIssuerDids, {\n debugFieldAllowedDids: config.debugFieldAllowedDids,\n featureGatesClient,\n })\n const views = new Views({\n imgUriBuilder: imgUriBuilder,\n videoUriBuilder: videoUriBuilder,\n indexedAtEpoch: config.indexedAtEpoch,\n threadTagsBumpDown: [...config.threadTagsBumpDown],\n threadTagsHide: [...config.threadTagsHide],\n visibilityTagHide: config.visibilityTagHide,\n visibilityTagRankPrefix: config.visibilityTagRankPrefix,\n })\n\n const bsyncClient = createBsyncClient({\n baseUrl: config.bsyncUrl,\n httpVersion: config.bsyncHttpVersion ?? '2',\n nodeOptions: { rejectUnauthorized: !config.bsyncIgnoreBadTls },\n interceptors: config.bsyncApiKey ? [bsyncAuth(config.bsyncApiKey)] : [],\n })\n\n const stashClient = createStashClient(bsyncClient)\n\n const courierClient = config.courierUrl\n ? createCourierClient({\n baseUrl: config.courierUrl,\n httpVersion: config.courierHttpVersion ?? '2',\n nodeOptions: { rejectUnauthorized: !config.courierIgnoreBadTls },\n interceptors: config.courierApiKey\n ? [courierAuth(config.courierApiKey)]\n : [],\n })\n : undefined\n\n const rolodexClient = config.rolodexUrl\n ? createRolodexClient({\n baseUrl: config.rolodexUrl,\n httpVersion: config.rolodexHttpVersion ?? '2',\n nodeOptions: { rejectUnauthorized: !config.rolodexIgnoreBadTls },\n interceptors: config.rolodexApiKey\n ? [rolodexAuth(config.rolodexApiKey)]\n : [],\n })\n : undefined\n\n const kwsClient = config.kws ? createKwsClient(config.kws) : undefined\n\n const entrywayJwtPublicKey = config.entrywayJwtPublicKeyHex\n ? createPublicKeyObject(config.entrywayJwtPublicKeyHex)\n : undefined\n const bffJwtSecret = config.bffJwtSecret\n ? Buffer.from(config.bffJwtSecret, 'utf8')\n : undefined\n const authVerifier = new AuthVerifier(dataplane, {\n ownDid: config.serverDid,\n alternateAudienceDids: config.alternateAudienceDids,\n modServiceDid: config.modServiceDid,\n adminPasses: config.adminPasswords,\n entrywayJwtPublicKey,\n bffJwtSecret,\n })\n\n const blobDispatcher = createBlobDispatcher(config)\n\n const ctx = new AppContext({\n cfg: config,\n etcd,\n dataplane,\n dataplaneHostList,\n searchClient,\n suggestionsClient,\n topicsClient,\n irisClient,\n hydrator,\n views,\n signingKey,\n idResolver,\n bsyncClient,\n stashClient,\n courierClient,\n rolodexClient,\n authVerifier,\n featureGatesClient,\n blobDispatcher,\n kwsClient,\n })\n\n const server = createServer([], {\n validateResponse: config.debugMode,\n payload: {\n jsonLimit: 100 * 1024, // 100kb\n textLimit: 100 * 1024, // 100kb\n blobLimit: 5 * 1024 * 1024, // 5mb\n },\n })\n\n API(server, ctx)\n\n app.use(health.createRouter(ctx))\n app.use(wellKnown.createRouter(ctx))\n app.use(blobResolver.createMiddleware(ctx))\n app.use(imageServer.createMiddleware(ctx, { prefix: '/img/' }))\n\n if (config.dataplaneUrls.length > 0 || config.dataplaneUrlsEtcdKeyPrefix) {\n app.use(sitemap.createRouter(ctx))\n }\n\n app.use(server.router)\n app.use(error.handler)\n app.use('/external', external.createRouter(ctx))\n\n return new BskyAppView({\n ctx,\n app,\n dispatchers: [topicsDispatcher, irisDispatcher],\n })\n }\n\n async start(): Promise<http.Server> {\n if (this.ctx.dataplaneHostList instanceof EtcdHostList) {\n await this.ctx.dataplaneHostList.connect()\n }\n this.ctx.featureGatesClient.start() // lazy, no await\n const server = this.app.listen(this.ctx.cfg.port)\n this.server = server\n server.keepAliveTimeout = 90000\n this.terminator = createHttpTerminator({ server })\n await events.once(server, 'listening')\n const { port } = server.address() as AddressInfo\n this.ctx.cfg.assignPort(port)\n return server\n }\n\n async destroy(): Promise<void> {\n try {\n await this.ctx.featureGatesClient.destroy()\n } finally {\n try {\n await this.terminator?.terminate()\n } finally {\n try {\n await this.ctx.etcd?.close()\n } finally {\n await Promise.all(this.dispatchers.map((d) => d.close()))\n }\n }\n }\n }\n\n async [Symbol.asyncDispose]() {\n await this.destroy()\n }\n}\n\nexport default BskyAppView\n"]}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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","sourcesContent":["import events from 'node:events'\nimport type http from 'node:http'\nimport type { AddressInfo } from 'node:net'\nimport compression from 'compression'\nimport cors from 'cors'\nimport { Etcd3 } from 'etcd3'\nimport express from 'express'\nimport { type HttpTerminator, createHttpTerminator } from 'http-terminator'\nimport { DAY, SECOND } from '@atproto/common'\nimport type { Keypair } from '@atproto/crypto'\nimport { IdResolver } from '@atproto/identity'\nimport { Client } from '@atproto/lex'\nimport { createServer } from '@atproto/xrpc-server'\nimport { createBlobDispatcher } from './api/blob-dispatcher.js'\nimport API, {\n blobResolver,\n external,\n health,\n sitemap,\n wellKnown,\n} from './api/index.js'\nimport { AuthVerifier, createPublicKeyObject } from './auth-verifier.js'\nimport { authWithApiKey as bsyncAuth, createBsyncClient } from './bsync.js'\nimport type { ServerConfig } from './config.js'\nimport { AppContext } from './context.js'\nimport {\n authWithApiKey as courierAuth,\n createCourierClient,\n} from './courier.js'\nimport {\n BasicHostList,\n EtcdHostList,\n createDataPlaneClient,\n} from './data-plane/client/index.js'\nimport * as error from './error.js'\nimport { FeatureGatesClient } from './feature-gates/index.js'\nimport { Hydrator } from './hydration/hydrator.js'\nimport * as imageServer from './image/server.js'\nimport { ImageUriBuilder } from './image/uri.js'\nimport { createKwsClient } from './kws.js'\nimport { loggerMiddleware } from './logger.js'\nimport {\n authWithApiKey as rolodexAuth,\n createRolodexClient,\n} from './rolodex.js'\nimport { createStashClient } from './stash.js'\nimport {\n type UndiciAgent,\n createUndiciAgent,\n dispatcherFetch,\n} from './undici.js'\nimport { Views } from './views/index.js'\nimport { VideoUriBuilder } from './views/util.js'\n\nexport { ServerConfig } from './config.js'\nexport type { ServerConfigValues } from './config.js'\nexport { AppContext } from './context.js'\nexport * from './data-plane/index.js'\nexport { BackgroundQueue } from './data-plane/server/background.js'\nexport { Database } from './data-plane/server/db/index.js'\nexport { Redis } from './redis.js'\n\nexport class BskyAppView {\n public ctx: AppContext\n public app: express.Application\n public server?: http.Server\n private terminator?: HttpTerminator\n private dispatchers: UndiciAgent[]\n\n constructor(opts: {\n ctx: AppContext\n app: express.Application\n dispatchers?: UndiciAgent[]\n }) {\n this.ctx = opts.ctx\n this.app = opts.app\n this.dispatchers = opts.dispatchers ?? []\n }\n\n static create(opts: {\n config: ServerConfig\n signingKey: Keypair\n }): BskyAppView {\n const { config, signingKey } = opts\n const app = express()\n app.set('trust proxy', true)\n app.use(cors({ maxAge: DAY / SECOND }))\n app.use(loggerMiddleware)\n app.use(compression())\n\n // used solely for handle resolution: identity lookups occur on dataplane\n const idResolver = new IdResolver({\n plcUrl: config.didPlcUrl,\n backupNameservers: config.handleResolveNameservers,\n fetch: config.disableSsrfProtection ? globalThis.fetch : undefined,\n })\n\n const imgUriBuilderUrl =\n config.cdnUrl ||\n (config.publicUrl ? `${config.publicUrl}/img` : undefined)\n if (!imgUriBuilderUrl) {\n throw new Error('No image URI builder URL could be determined')\n }\n const imgUriBuilder = new ImageUriBuilder(imgUriBuilderUrl)\n const videoUriBuilder = new VideoUriBuilder({\n playlistUrlPattern:\n config.videoPlaylistUrlPattern ||\n `${config.publicUrl}/vid/%s/%s/playlist.m3u8`,\n thumbnailUrlPattern:\n config.videoThumbnailUrlPattern ||\n `${config.publicUrl}/vid/%s/%s/thumbnail.jpg`,\n })\n\n const searchClient = config.searchUrl\n ? new Client(\n {\n service: config.searchUrl,\n },\n {\n // Trust internal services to send us well-formed responses\n strictResponseProcessing: false,\n validateResponse: config.debugMode,\n },\n )\n : undefined\n\n const suggestionsClient = config.suggestionsUrl\n ? new Client(\n {\n service: config.suggestionsUrl,\n headers: config.suggestionsApiKey\n ? { authorization: `Bearer ${config.suggestionsApiKey}` }\n : undefined,\n },\n {\n // Trust internal services to send us well-formed responses\n strictResponseProcessing: false,\n validateResponse: config.debugMode,\n },\n )\n : undefined\n\n // @NOTE These bound the connection phase (TCP + TLS) only; once connected,\n // the request is not bounded here. They are kept for the lifetime of the\n // service (pooling connections), and closed on `destroy()`.\n // An unused agent holds no socket, so they can be built unconditionally.\n const topicsDispatcher = createUndiciAgent({ connectTimeout: SECOND })\n const irisDispatcher = createUndiciAgent({ connectTimeout: SECOND })\n\n const topicsClient = config.topicsUrl\n ? new Client(\n {\n service: config.topicsUrl,\n headers: config.topicsApiKey\n ? { authorization: `Bearer ${config.topicsApiKey}` }\n : undefined,\n fetch: dispatcherFetch(topicsDispatcher),\n },\n {\n // Trust internal services to send us well-formed responses\n strictResponseProcessing: false,\n validateResponse: config.debugMode,\n },\n )\n : undefined\n\n const irisClient = config.irisUrl\n ? new Client(\n {\n service: config.irisUrl,\n headers: config.irisApiKey\n ? { authorization: `Bearer ${config.irisApiKey}` }\n : undefined,\n fetch: dispatcherFetch(irisDispatcher),\n },\n {\n // Trust internal services to send us well-formed responses\n strictResponseProcessing: false,\n validateResponse: config.debugMode,\n },\n )\n : undefined\n\n const etcd = config.etcdHosts.length\n ? new Etcd3({ hosts: config.etcdHosts })\n : undefined\n\n const dataplaneHostList =\n etcd && config.dataplaneUrlsEtcdKeyPrefix\n ? new EtcdHostList(\n etcd,\n config.dataplaneUrlsEtcdKeyPrefix,\n config.dataplaneUrls,\n )\n : new BasicHostList(config.dataplaneUrls)\n\n const featureGatesClient = new FeatureGatesClient({\n growthBookApiHost: config.growthBookApiHost,\n growthBookClientKey: config.growthBookClientKey,\n eventProxyTrackingEndpoint: config.eventProxyTrackingEndpoint,\n })\n\n const dataplane = createDataPlaneClient(dataplaneHostList, {\n httpVersion: config.dataplaneHttpVersion,\n rejectUnauthorized: !config.dataplaneIgnoreBadTls,\n })\n const hydrator = new Hydrator(dataplane, config.labelsFromIssuerDids, {\n debugFieldAllowedDids: config.debugFieldAllowedDids,\n featureGatesClient,\n needsReviewTagSources: [config.modServiceDid],\n })\n const views = new Views({\n imgUriBuilder: imgUriBuilder,\n videoUriBuilder: videoUriBuilder,\n indexedAtEpoch: config.indexedAtEpoch,\n threadTagsBumpDown: [...config.threadTagsBumpDown],\n threadTagsHide: [...config.threadTagsHide],\n visibilityTagHide: config.visibilityTagHide,\n visibilityTagRankPrefix: config.visibilityTagRankPrefix,\n })\n\n const bsyncClient = createBsyncClient({\n baseUrl: config.bsyncUrl,\n httpVersion: config.bsyncHttpVersion ?? '2',\n nodeOptions: { rejectUnauthorized: !config.bsyncIgnoreBadTls },\n interceptors: config.bsyncApiKey ? [bsyncAuth(config.bsyncApiKey)] : [],\n })\n\n const stashClient = createStashClient(bsyncClient)\n\n const courierClient = config.courierUrl\n ? createCourierClient({\n baseUrl: config.courierUrl,\n httpVersion: config.courierHttpVersion ?? '2',\n nodeOptions: { rejectUnauthorized: !config.courierIgnoreBadTls },\n interceptors: config.courierApiKey\n ? [courierAuth(config.courierApiKey)]\n : [],\n })\n : undefined\n\n const rolodexClient = config.rolodexUrl\n ? createRolodexClient({\n baseUrl: config.rolodexUrl,\n httpVersion: config.rolodexHttpVersion ?? '2',\n nodeOptions: { rejectUnauthorized: !config.rolodexIgnoreBadTls },\n interceptors: config.rolodexApiKey\n ? [rolodexAuth(config.rolodexApiKey)]\n : [],\n })\n : undefined\n\n const kwsClient = config.kws ? createKwsClient(config.kws) : undefined\n\n const entrywayJwtPublicKey = config.entrywayJwtPublicKeyHex\n ? createPublicKeyObject(config.entrywayJwtPublicKeyHex)\n : undefined\n const bffJwtSecret = config.bffJwtSecret\n ? Buffer.from(config.bffJwtSecret, 'utf8')\n : undefined\n const authVerifier = new AuthVerifier(dataplane, {\n ownDid: config.serverDid,\n alternateAudienceDids: config.alternateAudienceDids,\n modServiceDid: config.modServiceDid,\n adminPasses: config.adminPasswords,\n entrywayJwtPublicKey,\n bffJwtSecret,\n })\n\n const blobDispatcher = createBlobDispatcher(config)\n\n const ctx = new AppContext({\n cfg: config,\n etcd,\n dataplane,\n dataplaneHostList,\n searchClient,\n suggestionsClient,\n topicsClient,\n irisClient,\n hydrator,\n views,\n signingKey,\n idResolver,\n bsyncClient,\n stashClient,\n courierClient,\n rolodexClient,\n authVerifier,\n featureGatesClient,\n blobDispatcher,\n kwsClient,\n })\n\n const server = createServer([], {\n validateResponse: config.debugMode,\n payload: {\n jsonLimit: 100 * 1024, // 100kb\n textLimit: 100 * 1024, // 100kb\n blobLimit: 5 * 1024 * 1024, // 5mb\n },\n })\n\n API(server, ctx)\n\n app.use(health.createRouter(ctx))\n app.use(wellKnown.createRouter(ctx))\n app.use(blobResolver.createMiddleware(ctx))\n app.use(imageServer.createMiddleware(ctx, { prefix: '/img/' }))\n\n if (config.dataplaneUrls.length > 0 || config.dataplaneUrlsEtcdKeyPrefix) {\n app.use(sitemap.createRouter(ctx))\n }\n\n app.use(server.router)\n app.use(error.handler)\n app.use('/external', external.createRouter(ctx))\n\n return new BskyAppView({\n ctx,\n app,\n dispatchers: [topicsDispatcher, irisDispatcher],\n })\n }\n\n async start(): Promise<http.Server> {\n if (this.ctx.dataplaneHostList instanceof EtcdHostList) {\n await this.ctx.dataplaneHostList.connect()\n }\n this.ctx.featureGatesClient.start() // lazy, no await\n const server = this.app.listen(this.ctx.cfg.port)\n this.server = server\n server.keepAliveTimeout = 90000\n this.terminator = createHttpTerminator({ server })\n await events.once(server, 'listening')\n const { port } = server.address() as AddressInfo\n this.ctx.cfg.assignPort(port)\n return server\n }\n\n async destroy(): Promise<void> {\n try {\n await this.ctx.featureGatesClient.destroy()\n } finally {\n try {\n await this.terminator?.terminate()\n } finally {\n try {\n await this.ctx.etcd?.close()\n } finally {\n await Promise.all(this.dispatchers.map((d) => d.close()))\n }\n }\n }\n }\n\n async [Symbol.asyncDispose]() {\n await this.destroy()\n }\n}\n\nexport default BskyAppView\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ClearActorMutelistSubscriptionsRequest, ClearActorMutelistSubscriptionsResponse, ClearActorMutesRequest, ClearActorMutesResponse, ClearThreadMutesRequest, ClearThreadMutesResponse, CreateActorMutelistSubscriptionRequest, CreateActorMutelistSubscriptionResponse, CreateActorMuteRequest, CreateActorMuteResponse, CreateThreadMuteRequest, CreateThreadMuteResponse, DeleteActorMutelistSubscriptionRequest, DeleteActorMutelistSubscriptionResponse, DeleteActorMuteRequest, DeleteActorMuteResponse, DeleteThreadMuteRequest, DeleteThreadMuteResponse, GetActivitySubscriptionDidsRequest, GetActivitySubscriptionDidsResponse, GetActivitySubscriptionsByActorAndSubjectsRequest, GetActivitySubscriptionsByActorAndSubjectsResponse, GetActorBookmarksRequest, GetActorBookmarksResponse, GetActorChatDeclarationRecordsRequest, GetActorChatDeclarationRecordsResponse, GetActorDraftsRequest, GetActorDraftsResponse, GetActorFeedsRequest, GetActorFeedsResponse, GetActorFollowsActorsRequest, GetActorFollowsActorsResponse, GetActorLikesRequest, GetActorLikesResponse, GetActorListsRequest, GetActorListsResponse, GetActorMutesActorRequest, GetActorMutesActorResponse, GetActorMutesActorViaListRequest, GetActorMutesActorViaListResponse, GetActorRepostsRequest, GetActorRepostsResponse, GetActorsRequest, GetActorsResponse, GetActorStarterPacksRequest, GetActorStarterPacksResponse, GetActorTakedownRequest, GetActorTakedownResponse, GetAllLabelersRequest, GetAllLabelersResponse, GetAtmosphereBacklinkCountsRequest, GetAtmosphereBacklinkCountsResponse, GetAtmosphereBacklinksByActorRequest, GetAtmosphereBacklinksByActorResponse, GetAtmosphereBacklinksRequest, GetAtmosphereBacklinksResponse, GetAtmosphereTimelineRequest, GetAtmosphereTimelineResponse, GetAuthorFeedRequest, GetAuthorFeedResponse, GetBidirectionalBlockRequest, GetBidirectionalBlockResponse, GetBidirectionalBlockViaListRequest, GetBidirectionalBlockViaListResponse, GetBlobTakedownRequest, GetBlobTakedownResponse, GetBlockExistenceRequest, GetBlockExistenceResponse, GetBlocklistSubscriptionRequest, GetBlocklistSubscriptionResponse, GetBlocklistSubscriptionsRequest, GetBlocklistSubscriptionsResponse, GetBlockRecordsRequest, GetBlockRecordsResponse, GetBlocksRequest, GetBlocksResponse, GetBookmarksByActorAndSubjectsRequest, GetBookmarksByActorAndSubjectsResponse, GetCountsForUsersRequest, GetCountsForUsersResponse, GetDidsByHandlesRequest, GetDidsByHandlesResponse, GetFeedGeneratorRecordsRequest, GetFeedGeneratorRecordsResponse, GetFeedGeneratorStatusRequest, GetFeedGeneratorStatusResponse, GetFollowersRequest, GetFollowersResponse, GetFollowRecordsRequest, GetFollowRecordsResponse, GetFollowsFollowingRequest, GetFollowsFollowingResponse, GetFollowsRequest, GetFollowsResponse, GetFollowSuggestionsRequest, GetFollowSuggestionsResponse, GetGermDeclarationRecordsRequest, GetGermDeclarationRecordsResponse, GetIdentityByDidRequest, GetIdentityByDidResponse, GetIdentityByHandleRequest, GetIdentityByHandleResponse, GetInteractionCountsRequest, GetInteractionCountsResponse, GetKnownLikersRequest, GetKnownLikersResponse, GetLabelerRecordsRequest, GetLabelerRecordsResponse, GetLabelsRequest, GetLabelsResponse, GetLatestRevRequest, GetLatestRevResponse, GetLikeRecordsRequest, GetLikeRecordsResponse, GetLikesByActorAndSubjectsRequest, GetLikesByActorAndSubjectsResponse, GetLikesBySubjectRequest, GetLikesBySubjectResponse, GetLikesBySubjectSortedRequest, GetLikesBySubjectSortedResponse, GetListBlockRecordsRequest, GetListBlockRecordsResponse, GetListCountRequest, GetListCountResponse, GetListCountsRequest, GetListCountsResponse, GetListFeedRequest, GetListFeedResponse, GetListItemRecordsRequest, GetListItemRecordsResponse, GetListMembershipRequest, GetListMembershipResponse, GetListMembersRequest, GetListMembersResponse, GetListRecordsRequest, GetListRecordsResponse, GetMutelistSubscriptionRequest, GetMutelistSubscriptionResponse, GetMutelistSubscriptionsRequest, GetMutelistSubscriptionsResponse, GetMutesRequest, GetMutesResponse, GetNewUserCountForRangeRequest, GetNewUserCountForRangeResponse, GetNotificationDeclarationRecordsRequest, GetNotificationDeclarationRecordsResponse, GetNotificationPreferencesRequest, GetNotificationPreferencesResponse, GetNotificationSeenRequest, GetNotificationSeenResponse, GetNotificationsRequest, GetNotificationsResponse, GetNotificationsV2Request, GetNotificationsV2Response, GetPostgateRecordsRequest, GetPostgateRecordsResponse, GetPostRecordsRequest, GetPostRecordsResponse, GetProfileLinkRecordsRequest, GetProfileLinkRecordsResponse, GetProfileRecordsRequest, GetProfileRecordsResponse, GetQuotesBySubjectSortedRequest, GetQuotesBySubjectSortedResponse, GetRecordsByRefRequest, GetRecordsByRefResponse, GetRecordsByURIRequest, GetRecordsByURIResponse, GetRecordTakedownRequest, GetRecordTakedownResponse, GetReferencelistoptoutsByActorAndSubjectsRequest, GetReferencelistoptoutsByActorAndSubjectsResponse, GetRelationshipsRequest, GetRelationshipsResponse, GetRepostRecordsRequest, GetRepostRecordsResponse, GetRepostsByActorAndSubjectsRequest, GetRepostsByActorAndSubjectsResponse, GetRepostsBySubjectRequest, GetRepostsBySubjectResponse, GetSitemapIndexRequest, GetSitemapIndexResponse, GetSitemapPageRequest, GetSitemapPageResponse, GetStarterPackCountsRequest, GetStarterPackCountsResponse, GetStarterPackRecordsRequest, GetStarterPackRecordsResponse, GetStatusRecordsRequest, GetStatusRecordsResponse, GetSuggestedEntitiesRequest, GetSuggestedEntitiesResponse, GetSuggestedFeedsRequest, GetSuggestedFeedsResponse, GetThreadGateRecordsRequest, GetThreadGateRecordsResponse, GetThreadMutesOnSubjectsRequest, GetThreadMutesOnSubjectsResponse, GetThreadRequest, GetThreadResponse, GetTimelineRequest, GetTimelineResponse, GetUnreadNotificationCountRequest, GetUnreadNotificationCountResponse, GetVerificationRecordsRequest, GetVerificationRecordsResponse, GetVerificationsIssuedRequest, GetVerificationsIssuedResponse, GetVerificationsReceivedRequest, GetVerificationsReceivedResponse, PingRequest, PingResponse, SampleFollowsFollowingRequest, SampleFollowsFollowingResponse, SearchActorsRequest, SearchActorsResponse, SearchActorsTypeaheadRequest, SearchActorsTypeaheadResponse, SearchActorsV2Request, SearchActorsV2Response, SearchFeedGeneratorsRequest, SearchFeedGeneratorsResponse, SearchFeedGeneratorsV2Request, SearchFeedGeneratorsV2Response, SearchPostsRequest, SearchPostsResponse, SearchPostsV2Request, SearchPostsV2Response, SearchStarterPacksRequest, SearchStarterPacksResponse, SearchStarterPacksV2Request, SearchStarterPacksV2Response, TakedownActorRequest, TakedownActorResponse, TakedownBlobRequest, TakedownBlobResponse, TakedownRecordRequest, TakedownRecordResponse, UntakedownActorRequest, UntakedownActorResponse, UntakedownBlobRequest, UntakedownBlobResponse, UntakedownRecordRequest, UntakedownRecordResponse, UpdateActorUpstreamStatusRequest, UpdateActorUpstreamStatusResponse, UpdateNotificationSeenRequest, UpdateNotificationSeenResponse } from "./bsky_pb.js";
|
|
1
|
+
import { ClearActorMutelistSubscriptionsRequest, ClearActorMutelistSubscriptionsResponse, ClearActorMutesRequest, ClearActorMutesResponse, ClearThreadMutesRequest, ClearThreadMutesResponse, CreateActorMutelistSubscriptionRequest, CreateActorMutelistSubscriptionResponse, CreateActorMuteRequest, CreateActorMuteResponse, CreateThreadMuteRequest, CreateThreadMuteResponse, DeleteActorMutelistSubscriptionRequest, DeleteActorMutelistSubscriptionResponse, DeleteActorMuteRequest, DeleteActorMuteResponse, DeleteThreadMuteRequest, DeleteThreadMuteResponse, GetActivitySubscriptionDidsRequest, GetActivitySubscriptionDidsResponse, GetActivitySubscriptionsByActorAndSubjectsRequest, GetActivitySubscriptionsByActorAndSubjectsResponse, GetActorBookmarksRequest, GetActorBookmarksResponse, GetActorChatDeclarationRecordsRequest, GetActorChatDeclarationRecordsResponse, GetActorDraftsRequest, GetActorDraftsResponse, GetActorFeedsRequest, GetActorFeedsResponse, GetActorFollowsActorsRequest, GetActorFollowsActorsResponse, GetActorLikesRequest, GetActorLikesResponse, GetActorListsRequest, GetActorListsResponse, GetActorMutesActorRequest, GetActorMutesActorResponse, GetActorMutesActorViaListRequest, GetActorMutesActorViaListResponse, GetActorRepostsRequest, GetActorRepostsResponse, GetActorsRequest, GetActorsResponse, GetActorStarterPacksRequest, GetActorStarterPacksResponse, GetActorTakedownRequest, GetActorTakedownResponse, GetAllLabelersRequest, GetAllLabelersResponse, GetAtmosphereBacklinkCountsRequest, GetAtmosphereBacklinkCountsResponse, GetAtmosphereBacklinksByActorRequest, GetAtmosphereBacklinksByActorResponse, GetAtmosphereBacklinksRequest, GetAtmosphereBacklinksResponse, GetAtmosphereTimelineRequest, GetAtmosphereTimelineResponse, GetAuthorFeedRequest, GetAuthorFeedResponse, GetBidirectionalBlockRequest, GetBidirectionalBlockResponse, GetBidirectionalBlockViaListRequest, GetBidirectionalBlockViaListResponse, GetBlobTakedownRequest, GetBlobTakedownResponse, GetBlockExistenceRequest, GetBlockExistenceResponse, GetBlocklistSubscriptionRequest, GetBlocklistSubscriptionResponse, GetBlocklistSubscriptionsRequest, GetBlocklistSubscriptionsResponse, GetBlockRecordsRequest, GetBlockRecordsResponse, GetBlocksRequest, GetBlocksResponse, GetBookmarksByActorAndSubjectsRequest, GetBookmarksByActorAndSubjectsResponse, GetCountsForUsersRequest, GetCountsForUsersResponse, GetDidsByHandlesRequest, GetDidsByHandlesResponse, GetFeedGeneratorRecordsRequest, GetFeedGeneratorRecordsResponse, GetFeedGeneratorStatusRequest, GetFeedGeneratorStatusResponse, GetFollowersRequest, GetFollowersResponse, GetFollowRecordsRequest, GetFollowRecordsResponse, GetFollowsFollowingRequest, GetFollowsFollowingResponse, GetFollowsRequest, GetFollowsResponse, GetFollowSuggestionsRequest, GetFollowSuggestionsResponse, GetGermDeclarationRecordsRequest, GetGermDeclarationRecordsResponse, GetIdentityByDidRequest, GetIdentityByDidResponse, GetIdentityByHandleRequest, GetIdentityByHandleResponse, GetInteractionCountsRequest, GetInteractionCountsResponse, GetKnownLikersRequest, GetKnownLikersResponse, GetLabelerRecordsRequest, GetLabelerRecordsResponse, GetLabelsRequest, GetLabelsResponse, GetLatestRevRequest, GetLatestRevResponse, GetLikeRecordsRequest, GetLikeRecordsResponse, GetLikesByActorAndSubjectsRequest, GetLikesByActorAndSubjectsResponse, GetLikesBySubjectRequest, GetLikesBySubjectResponse, GetLikesBySubjectSortedRequest, GetLikesBySubjectSortedResponse, GetListBlockRecordsRequest, GetListBlockRecordsResponse, GetListCountRequest, GetListCountResponse, GetListCountsRequest, GetListCountsResponse, GetListFeedRequest, GetListFeedResponse, GetListItemRecordsRequest, GetListItemRecordsResponse, GetListMembershipRequest, GetListMembershipResponse, GetListMembersRequest, GetListMembersResponse, GetListRecordsRequest, GetListRecordsResponse, GetMutelistSubscriptionRequest, GetMutelistSubscriptionResponse, GetMutelistSubscriptionsRequest, GetMutelistSubscriptionsResponse, GetMutesRequest, GetMutesResponse, GetNewUserCountForRangeRequest, GetNewUserCountForRangeResponse, GetNotificationDeclarationRecordsRequest, GetNotificationDeclarationRecordsResponse, GetNotificationPreferencesRequest, GetNotificationPreferencesResponse, GetNotificationSeenRequest, GetNotificationSeenResponse, GetNotificationsRequest, GetNotificationsResponse, GetNotificationsV2Request, GetNotificationsV2Response, GetPostgateRecordsRequest, GetPostgateRecordsResponse, GetPostRecordsRequest, GetPostRecordsResponse, GetProfileLinkRecordsRequest, GetProfileLinkRecordsResponse, GetProfileRecordsRequest, GetProfileRecordsResponse, GetQuotesBySubjectSortedRequest, GetQuotesBySubjectSortedResponse, GetRecordsByRefRequest, GetRecordsByRefResponse, GetRecordsByURIRequest, GetRecordsByURIResponse, GetRecordTakedownRequest, GetRecordTakedownResponse, GetReferencelistoptoutsByActorAndSubjectsRequest, GetReferencelistoptoutsByActorAndSubjectsResponse, GetRelationshipsRequest, GetRelationshipsResponse, GetRepostRecordsRequest, GetRepostRecordsResponse, GetRepostsByActorAndSubjectsRequest, GetRepostsByActorAndSubjectsResponse, GetRepostsBySubjectRequest, GetRepostsBySubjectResponse, GetSitemapIndexRequest, GetSitemapIndexResponse, GetSitemapPageRequest, GetSitemapPageResponse, GetStarterPackCountsRequest, GetStarterPackCountsResponse, GetStarterPackRecordsRequest, GetStarterPackRecordsResponse, GetStatusRecordsRequest, GetStatusRecordsResponse, GetSuggestedEntitiesRequest, GetSuggestedEntitiesResponse, GetSuggestedFeedsRequest, GetSuggestedFeedsResponse, GetTagsForSubjectsRequest, GetTagsForSubjectsResponse, GetThreadGateRecordsRequest, GetThreadGateRecordsResponse, GetThreadMutesOnSubjectsRequest, GetThreadMutesOnSubjectsResponse, GetThreadRequest, GetThreadResponse, GetTimelineRequest, GetTimelineResponse, GetUnreadNotificationCountRequest, GetUnreadNotificationCountResponse, GetVerificationRecordsRequest, GetVerificationRecordsResponse, GetVerificationsIssuedRequest, GetVerificationsIssuedResponse, GetVerificationsReceivedRequest, GetVerificationsReceivedResponse, PingRequest, PingResponse, SampleFollowsFollowingRequest, SampleFollowsFollowingResponse, SearchActorsRequest, SearchActorsResponse, SearchActorsTypeaheadRequest, SearchActorsTypeaheadResponse, SearchActorsV2Request, SearchActorsV2Response, SearchFeedGeneratorsRequest, SearchFeedGeneratorsResponse, SearchFeedGeneratorsV2Request, SearchFeedGeneratorsV2Response, SearchPostsRequest, SearchPostsResponse, SearchPostsV2Request, SearchPostsV2Response, SearchStarterPacksRequest, SearchStarterPacksResponse, SearchStarterPacksV2Request, SearchStarterPacksV2Response, TakedownActorRequest, TakedownActorResponse, TakedownBlobRequest, TakedownBlobResponse, TakedownRecordRequest, TakedownRecordResponse, UntakedownActorRequest, UntakedownActorResponse, UntakedownBlobRequest, UntakedownBlobResponse, UntakedownRecordRequest, UntakedownRecordResponse, UpdateActorUpstreamStatusRequest, UpdateActorUpstreamStatusResponse, UpdateNotificationSeenRequest, UpdateNotificationSeenResponse } from "./bsky_pb.js";
|
|
2
2
|
import { MethodKind } from "@bufbuild/protobuf";
|
|
3
3
|
/**
|
|
4
4
|
*
|
|
@@ -906,6 +906,17 @@ export declare const Service: {
|
|
|
906
906
|
readonly O: typeof GetActorStarterPacksResponse;
|
|
907
907
|
readonly kind: MethodKind.Unary;
|
|
908
908
|
};
|
|
909
|
+
/**
|
|
910
|
+
* Tags
|
|
911
|
+
*
|
|
912
|
+
* @generated from rpc bsky.Service.GetTagsForSubjects
|
|
913
|
+
*/
|
|
914
|
+
readonly getTagsForSubjects: {
|
|
915
|
+
readonly name: "GetTagsForSubjects";
|
|
916
|
+
readonly I: typeof GetTagsForSubjectsRequest;
|
|
917
|
+
readonly O: typeof GetTagsForSubjectsResponse;
|
|
918
|
+
readonly kind: MethodKind.Unary;
|
|
919
|
+
};
|
|
909
920
|
/**
|
|
910
921
|
* Sync
|
|
911
922
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bsky_connect.d.ts","sourceRoot":"","sources":["../../src/proto/bsky_connect.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"bsky_connect.d.ts","sourceRoot":"","sources":["../../src/proto/bsky_connect.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
// @generated from file bsky.proto (package bsky, syntax proto3)
|
|
3
3
|
/* eslint-disable */
|
|
4
4
|
// @ts-nocheck
|
|
5
|
-
import { ClearActorMutelistSubscriptionsRequest, ClearActorMutelistSubscriptionsResponse, ClearActorMutesRequest, ClearActorMutesResponse, ClearThreadMutesRequest, ClearThreadMutesResponse, CreateActorMutelistSubscriptionRequest, CreateActorMutelistSubscriptionResponse, CreateActorMuteRequest, CreateActorMuteResponse, CreateThreadMuteRequest, CreateThreadMuteResponse, DeleteActorMutelistSubscriptionRequest, DeleteActorMutelistSubscriptionResponse, DeleteActorMuteRequest, DeleteActorMuteResponse, DeleteThreadMuteRequest, DeleteThreadMuteResponse, GetActivitySubscriptionDidsRequest, GetActivitySubscriptionDidsResponse, GetActivitySubscriptionsByActorAndSubjectsRequest, GetActivitySubscriptionsByActorAndSubjectsResponse, GetActorBookmarksRequest, GetActorBookmarksResponse, GetActorChatDeclarationRecordsRequest, GetActorChatDeclarationRecordsResponse, GetActorDraftsRequest, GetActorDraftsResponse, GetActorFeedsRequest, GetActorFeedsResponse, GetActorFollowsActorsRequest, GetActorFollowsActorsResponse, GetActorLikesRequest, GetActorLikesResponse, GetActorListsRequest, GetActorListsResponse, GetActorMutesActorRequest, GetActorMutesActorResponse, GetActorMutesActorViaListRequest, GetActorMutesActorViaListResponse, GetActorRepostsRequest, GetActorRepostsResponse, GetActorsRequest, GetActorsResponse, GetActorStarterPacksRequest, GetActorStarterPacksResponse, GetActorTakedownRequest, GetActorTakedownResponse, GetAllLabelersRequest, GetAllLabelersResponse, GetAtmosphereBacklinkCountsRequest, GetAtmosphereBacklinkCountsResponse, GetAtmosphereBacklinksByActorRequest, GetAtmosphereBacklinksByActorResponse, GetAtmosphereBacklinksRequest, GetAtmosphereBacklinksResponse, GetAtmosphereTimelineRequest, GetAtmosphereTimelineResponse, GetAuthorFeedRequest, GetAuthorFeedResponse, GetBidirectionalBlockRequest, GetBidirectionalBlockResponse, GetBidirectionalBlockViaListRequest, GetBidirectionalBlockViaListResponse, GetBlobTakedownRequest, GetBlobTakedownResponse, GetBlockExistenceRequest, GetBlockExistenceResponse, GetBlocklistSubscriptionRequest, GetBlocklistSubscriptionResponse, GetBlocklistSubscriptionsRequest, GetBlocklistSubscriptionsResponse, GetBlockRecordsRequest, GetBlockRecordsResponse, GetBlocksRequest, GetBlocksResponse, GetBookmarksByActorAndSubjectsRequest, GetBookmarksByActorAndSubjectsResponse, GetCountsForUsersRequest, GetCountsForUsersResponse, GetDidsByHandlesRequest, GetDidsByHandlesResponse, GetFeedGeneratorRecordsRequest, GetFeedGeneratorRecordsResponse, GetFeedGeneratorStatusRequest, GetFeedGeneratorStatusResponse, GetFollowersRequest, GetFollowersResponse, GetFollowRecordsRequest, GetFollowRecordsResponse, GetFollowsFollowingRequest, GetFollowsFollowingResponse, GetFollowsRequest, GetFollowsResponse, GetFollowSuggestionsRequest, GetFollowSuggestionsResponse, GetGermDeclarationRecordsRequest, GetGermDeclarationRecordsResponse, GetIdentityByDidRequest, GetIdentityByDidResponse, GetIdentityByHandleRequest, GetIdentityByHandleResponse, GetInteractionCountsRequest, GetInteractionCountsResponse, GetKnownLikersRequest, GetKnownLikersResponse, GetLabelerRecordsRequest, GetLabelerRecordsResponse, GetLabelsRequest, GetLabelsResponse, GetLatestRevRequest, GetLatestRevResponse, GetLikeRecordsRequest, GetLikeRecordsResponse, GetLikesByActorAndSubjectsRequest, GetLikesByActorAndSubjectsResponse, GetLikesBySubjectRequest, GetLikesBySubjectResponse, GetLikesBySubjectSortedRequest, GetLikesBySubjectSortedResponse, GetListBlockRecordsRequest, GetListBlockRecordsResponse, GetListCountRequest, GetListCountResponse, GetListCountsRequest, GetListCountsResponse, GetListFeedRequest, GetListFeedResponse, GetListItemRecordsRequest, GetListItemRecordsResponse, GetListMembershipRequest, GetListMembershipResponse, GetListMembersRequest, GetListMembersResponse, GetListRecordsRequest, GetListRecordsResponse, GetMutelistSubscriptionRequest, GetMutelistSubscriptionResponse, GetMutelistSubscriptionsRequest, GetMutelistSubscriptionsResponse, GetMutesRequest, GetMutesResponse, GetNewUserCountForRangeRequest, GetNewUserCountForRangeResponse, GetNotificationDeclarationRecordsRequest, GetNotificationDeclarationRecordsResponse, GetNotificationPreferencesRequest, GetNotificationPreferencesResponse, GetNotificationSeenRequest, GetNotificationSeenResponse, GetNotificationsRequest, GetNotificationsResponse, GetNotificationsV2Request, GetNotificationsV2Response, GetPostgateRecordsRequest, GetPostgateRecordsResponse, GetPostRecordsRequest, GetPostRecordsResponse, GetProfileLinkRecordsRequest, GetProfileLinkRecordsResponse, GetProfileRecordsRequest, GetProfileRecordsResponse, GetQuotesBySubjectSortedRequest, GetQuotesBySubjectSortedResponse, GetRecordsByRefRequest, GetRecordsByRefResponse, GetRecordsByURIRequest, GetRecordsByURIResponse, GetRecordTakedownRequest, GetRecordTakedownResponse, GetReferencelistoptoutsByActorAndSubjectsRequest, GetReferencelistoptoutsByActorAndSubjectsResponse, GetRelationshipsRequest, GetRelationshipsResponse, GetRepostRecordsRequest, GetRepostRecordsResponse, GetRepostsByActorAndSubjectsRequest, GetRepostsByActorAndSubjectsResponse, GetRepostsBySubjectRequest, GetRepostsBySubjectResponse, GetSitemapIndexRequest, GetSitemapIndexResponse, GetSitemapPageRequest, GetSitemapPageResponse, GetStarterPackCountsRequest, GetStarterPackCountsResponse, GetStarterPackRecordsRequest, GetStarterPackRecordsResponse, GetStatusRecordsRequest, GetStatusRecordsResponse, GetSuggestedEntitiesRequest, GetSuggestedEntitiesResponse, GetSuggestedFeedsRequest, GetSuggestedFeedsResponse, GetThreadGateRecordsRequest, GetThreadGateRecordsResponse, GetThreadMutesOnSubjectsRequest, GetThreadMutesOnSubjectsResponse, GetThreadRequest, GetThreadResponse, GetTimelineRequest, GetTimelineResponse, GetUnreadNotificationCountRequest, GetUnreadNotificationCountResponse, GetVerificationRecordsRequest, GetVerificationRecordsResponse, GetVerificationsIssuedRequest, GetVerificationsIssuedResponse, GetVerificationsReceivedRequest, GetVerificationsReceivedResponse, PingRequest, PingResponse, SampleFollowsFollowingRequest, SampleFollowsFollowingResponse, SearchActorsRequest, SearchActorsResponse, SearchActorsTypeaheadRequest, SearchActorsTypeaheadResponse, SearchActorsV2Request, SearchActorsV2Response, SearchFeedGeneratorsRequest, SearchFeedGeneratorsResponse, SearchFeedGeneratorsV2Request, SearchFeedGeneratorsV2Response, SearchPostsRequest, SearchPostsResponse, SearchPostsV2Request, SearchPostsV2Response, SearchStarterPacksRequest, SearchStarterPacksResponse, SearchStarterPacksV2Request, SearchStarterPacksV2Response, TakedownActorRequest, TakedownActorResponse, TakedownBlobRequest, TakedownBlobResponse, TakedownRecordRequest, TakedownRecordResponse, UntakedownActorRequest, UntakedownActorResponse, UntakedownBlobRequest, UntakedownBlobResponse, UntakedownRecordRequest, UntakedownRecordResponse, UpdateActorUpstreamStatusRequest, UpdateActorUpstreamStatusResponse, UpdateNotificationSeenRequest, UpdateNotificationSeenResponse } from "./bsky_pb.js";
|
|
5
|
+
import { ClearActorMutelistSubscriptionsRequest, ClearActorMutelistSubscriptionsResponse, ClearActorMutesRequest, ClearActorMutesResponse, ClearThreadMutesRequest, ClearThreadMutesResponse, CreateActorMutelistSubscriptionRequest, CreateActorMutelistSubscriptionResponse, CreateActorMuteRequest, CreateActorMuteResponse, CreateThreadMuteRequest, CreateThreadMuteResponse, DeleteActorMutelistSubscriptionRequest, DeleteActorMutelistSubscriptionResponse, DeleteActorMuteRequest, DeleteActorMuteResponse, DeleteThreadMuteRequest, DeleteThreadMuteResponse, GetActivitySubscriptionDidsRequest, GetActivitySubscriptionDidsResponse, GetActivitySubscriptionsByActorAndSubjectsRequest, GetActivitySubscriptionsByActorAndSubjectsResponse, GetActorBookmarksRequest, GetActorBookmarksResponse, GetActorChatDeclarationRecordsRequest, GetActorChatDeclarationRecordsResponse, GetActorDraftsRequest, GetActorDraftsResponse, GetActorFeedsRequest, GetActorFeedsResponse, GetActorFollowsActorsRequest, GetActorFollowsActorsResponse, GetActorLikesRequest, GetActorLikesResponse, GetActorListsRequest, GetActorListsResponse, GetActorMutesActorRequest, GetActorMutesActorResponse, GetActorMutesActorViaListRequest, GetActorMutesActorViaListResponse, GetActorRepostsRequest, GetActorRepostsResponse, GetActorsRequest, GetActorsResponse, GetActorStarterPacksRequest, GetActorStarterPacksResponse, GetActorTakedownRequest, GetActorTakedownResponse, GetAllLabelersRequest, GetAllLabelersResponse, GetAtmosphereBacklinkCountsRequest, GetAtmosphereBacklinkCountsResponse, GetAtmosphereBacklinksByActorRequest, GetAtmosphereBacklinksByActorResponse, GetAtmosphereBacklinksRequest, GetAtmosphereBacklinksResponse, GetAtmosphereTimelineRequest, GetAtmosphereTimelineResponse, GetAuthorFeedRequest, GetAuthorFeedResponse, GetBidirectionalBlockRequest, GetBidirectionalBlockResponse, GetBidirectionalBlockViaListRequest, GetBidirectionalBlockViaListResponse, GetBlobTakedownRequest, GetBlobTakedownResponse, GetBlockExistenceRequest, GetBlockExistenceResponse, GetBlocklistSubscriptionRequest, GetBlocklistSubscriptionResponse, GetBlocklistSubscriptionsRequest, GetBlocklistSubscriptionsResponse, GetBlockRecordsRequest, GetBlockRecordsResponse, GetBlocksRequest, GetBlocksResponse, GetBookmarksByActorAndSubjectsRequest, GetBookmarksByActorAndSubjectsResponse, GetCountsForUsersRequest, GetCountsForUsersResponse, GetDidsByHandlesRequest, GetDidsByHandlesResponse, GetFeedGeneratorRecordsRequest, GetFeedGeneratorRecordsResponse, GetFeedGeneratorStatusRequest, GetFeedGeneratorStatusResponse, GetFollowersRequest, GetFollowersResponse, GetFollowRecordsRequest, GetFollowRecordsResponse, GetFollowsFollowingRequest, GetFollowsFollowingResponse, GetFollowsRequest, GetFollowsResponse, GetFollowSuggestionsRequest, GetFollowSuggestionsResponse, GetGermDeclarationRecordsRequest, GetGermDeclarationRecordsResponse, GetIdentityByDidRequest, GetIdentityByDidResponse, GetIdentityByHandleRequest, GetIdentityByHandleResponse, GetInteractionCountsRequest, GetInteractionCountsResponse, GetKnownLikersRequest, GetKnownLikersResponse, GetLabelerRecordsRequest, GetLabelerRecordsResponse, GetLabelsRequest, GetLabelsResponse, GetLatestRevRequest, GetLatestRevResponse, GetLikeRecordsRequest, GetLikeRecordsResponse, GetLikesByActorAndSubjectsRequest, GetLikesByActorAndSubjectsResponse, GetLikesBySubjectRequest, GetLikesBySubjectResponse, GetLikesBySubjectSortedRequest, GetLikesBySubjectSortedResponse, GetListBlockRecordsRequest, GetListBlockRecordsResponse, GetListCountRequest, GetListCountResponse, GetListCountsRequest, GetListCountsResponse, GetListFeedRequest, GetListFeedResponse, GetListItemRecordsRequest, GetListItemRecordsResponse, GetListMembershipRequest, GetListMembershipResponse, GetListMembersRequest, GetListMembersResponse, GetListRecordsRequest, GetListRecordsResponse, GetMutelistSubscriptionRequest, GetMutelistSubscriptionResponse, GetMutelistSubscriptionsRequest, GetMutelistSubscriptionsResponse, GetMutesRequest, GetMutesResponse, GetNewUserCountForRangeRequest, GetNewUserCountForRangeResponse, GetNotificationDeclarationRecordsRequest, GetNotificationDeclarationRecordsResponse, GetNotificationPreferencesRequest, GetNotificationPreferencesResponse, GetNotificationSeenRequest, GetNotificationSeenResponse, GetNotificationsRequest, GetNotificationsResponse, GetNotificationsV2Request, GetNotificationsV2Response, GetPostgateRecordsRequest, GetPostgateRecordsResponse, GetPostRecordsRequest, GetPostRecordsResponse, GetProfileLinkRecordsRequest, GetProfileLinkRecordsResponse, GetProfileRecordsRequest, GetProfileRecordsResponse, GetQuotesBySubjectSortedRequest, GetQuotesBySubjectSortedResponse, GetRecordsByRefRequest, GetRecordsByRefResponse, GetRecordsByURIRequest, GetRecordsByURIResponse, GetRecordTakedownRequest, GetRecordTakedownResponse, GetReferencelistoptoutsByActorAndSubjectsRequest, GetReferencelistoptoutsByActorAndSubjectsResponse, GetRelationshipsRequest, GetRelationshipsResponse, GetRepostRecordsRequest, GetRepostRecordsResponse, GetRepostsByActorAndSubjectsRequest, GetRepostsByActorAndSubjectsResponse, GetRepostsBySubjectRequest, GetRepostsBySubjectResponse, GetSitemapIndexRequest, GetSitemapIndexResponse, GetSitemapPageRequest, GetSitemapPageResponse, GetStarterPackCountsRequest, GetStarterPackCountsResponse, GetStarterPackRecordsRequest, GetStarterPackRecordsResponse, GetStatusRecordsRequest, GetStatusRecordsResponse, GetSuggestedEntitiesRequest, GetSuggestedEntitiesResponse, GetSuggestedFeedsRequest, GetSuggestedFeedsResponse, GetTagsForSubjectsRequest, GetTagsForSubjectsResponse, GetThreadGateRecordsRequest, GetThreadGateRecordsResponse, GetThreadMutesOnSubjectsRequest, GetThreadMutesOnSubjectsResponse, GetThreadRequest, GetThreadResponse, GetTimelineRequest, GetTimelineResponse, GetUnreadNotificationCountRequest, GetUnreadNotificationCountResponse, GetVerificationRecordsRequest, GetVerificationRecordsResponse, GetVerificationsIssuedRequest, GetVerificationsIssuedResponse, GetVerificationsReceivedRequest, GetVerificationsReceivedResponse, PingRequest, PingResponse, SampleFollowsFollowingRequest, SampleFollowsFollowingResponse, SearchActorsRequest, SearchActorsResponse, SearchActorsTypeaheadRequest, SearchActorsTypeaheadResponse, SearchActorsV2Request, SearchActorsV2Response, SearchFeedGeneratorsRequest, SearchFeedGeneratorsResponse, SearchFeedGeneratorsV2Request, SearchFeedGeneratorsV2Response, SearchPostsRequest, SearchPostsResponse, SearchPostsV2Request, SearchPostsV2Response, SearchStarterPacksRequest, SearchStarterPacksResponse, SearchStarterPacksV2Request, SearchStarterPacksV2Response, TakedownActorRequest, TakedownActorResponse, TakedownBlobRequest, TakedownBlobResponse, TakedownRecordRequest, TakedownRecordResponse, UntakedownActorRequest, UntakedownActorResponse, UntakedownBlobRequest, UntakedownBlobResponse, UntakedownRecordRequest, UntakedownRecordResponse, UpdateActorUpstreamStatusRequest, UpdateActorUpstreamStatusResponse, UpdateNotificationSeenRequest, UpdateNotificationSeenResponse } from "./bsky_pb.js";
|
|
6
6
|
import { MethodKind } from "@bufbuild/protobuf";
|
|
7
7
|
/**
|
|
8
8
|
*
|
|
@@ -910,6 +910,17 @@ export const Service = {
|
|
|
910
910
|
O: GetActorStarterPacksResponse,
|
|
911
911
|
kind: MethodKind.Unary,
|
|
912
912
|
},
|
|
913
|
+
/**
|
|
914
|
+
* Tags
|
|
915
|
+
*
|
|
916
|
+
* @generated from rpc bsky.Service.GetTagsForSubjects
|
|
917
|
+
*/
|
|
918
|
+
getTagsForSubjects: {
|
|
919
|
+
name: "GetTagsForSubjects",
|
|
920
|
+
I: GetTagsForSubjectsRequest,
|
|
921
|
+
O: GetTagsForSubjectsResponse,
|
|
922
|
+
kind: MethodKind.Unary,
|
|
923
|
+
},
|
|
913
924
|
/**
|
|
914
925
|
* Sync
|
|
915
926
|
*
|