@atproto/bsky 0.0.205 → 0.0.206

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 CHANGED
@@ -1,5 +1,14 @@
1
1
  # @atproto/bsky
2
2
 
3
+ ## 0.0.206
4
+
5
+ ### Patch Changes
6
+
7
+ - [#4513](https://github.com/bluesky-social/atproto/pull/4513) [`7ef8935`](https://github.com/bluesky-social/atproto/commit/7ef893563b25252ecf246e0d75e17855a7284e53) Thanks [@estrattonbailey](https://github.com/estrattonbailey)! - Adds `minAccessAge` to Age Assurance regional configs.
8
+
9
+ - Updated dependencies [[`7ef8935`](https://github.com/bluesky-social/atproto/commit/7ef893563b25252ecf246e0d75e17855a7284e53)]:
10
+ - @atproto/api@0.18.11
11
+
3
12
  ## 0.0.205
4
13
 
5
14
  ### Patch Changes
@@ -1 +1 @@
1
- {"version":3,"file":"const.d.ts","sourceRoot":"","sources":["../../../src/api/age-assurance/const.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EAExB,MAAM,cAAc,CAAA;AAErB;;;;;;;GAOG;AACH,eAAO,MAAM,oBAAoB,EAAE,uBAAuB,CAAC,MAwK1D,CAAA"}
1
+ {"version":3,"file":"const.d.ts","sourceRoot":"","sources":["../../../src/api/age-assurance/const.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EAExB,MAAM,cAAc,CAAA;AAErB;;;;;;;GAOG;AACH,eAAO,MAAM,oBAAoB,EAAE,uBAAuB,CAAC,MAgL1D,CAAA"}
@@ -15,6 +15,7 @@ exports.AGE_ASSURANCE_CONFIG = {
15
15
  {
16
16
  countryCode: 'GB',
17
17
  regionCode: undefined,
18
+ minAccessAge: 13,
18
19
  rules: [
19
20
  {
20
21
  $type: api_1.ageAssuranceRuleIDs.IfAssuredOverAge,
@@ -35,6 +36,7 @@ exports.AGE_ASSURANCE_CONFIG = {
35
36
  {
36
37
  countryCode: 'AU',
37
38
  regionCode: undefined,
39
+ minAccessAge: 16,
38
40
  rules: [
39
41
  {
40
42
  $type: api_1.ageAssuranceRuleIDs.IfAccountNewerThan,
@@ -65,6 +67,7 @@ exports.AGE_ASSURANCE_CONFIG = {
65
67
  {
66
68
  countryCode: 'US',
67
69
  regionCode: 'SD',
70
+ minAccessAge: 13,
68
71
  rules: [
69
72
  {
70
73
  $type: api_1.ageAssuranceRuleIDs.IfAssuredOverAge,
@@ -85,6 +88,7 @@ exports.AGE_ASSURANCE_CONFIG = {
85
88
  {
86
89
  countryCode: 'US',
87
90
  regionCode: 'WY',
91
+ minAccessAge: 13,
88
92
  rules: [
89
93
  {
90
94
  $type: api_1.ageAssuranceRuleIDs.IfAssuredOverAge,
@@ -105,6 +109,7 @@ exports.AGE_ASSURANCE_CONFIG = {
105
109
  {
106
110
  countryCode: 'US',
107
111
  regionCode: 'OH',
112
+ minAccessAge: 13,
108
113
  rules: [
109
114
  {
110
115
  $type: api_1.ageAssuranceRuleIDs.IfAssuredOverAge,
@@ -125,6 +130,7 @@ exports.AGE_ASSURANCE_CONFIG = {
125
130
  {
126
131
  countryCode: 'US',
127
132
  regionCode: 'MS',
133
+ minAccessAge: 18,
128
134
  rules: [
129
135
  {
130
136
  $type: api_1.ageAssuranceRuleIDs.IfAssuredOverAge,
@@ -140,6 +146,7 @@ exports.AGE_ASSURANCE_CONFIG = {
140
146
  {
141
147
  countryCode: 'US',
142
148
  regionCode: 'VA',
149
+ minAccessAge: 16,
143
150
  rules: [
144
151
  {
145
152
  $type: api_1.ageAssuranceRuleIDs.IfAssuredOverAge,
@@ -160,6 +167,7 @@ exports.AGE_ASSURANCE_CONFIG = {
160
167
  {
161
168
  countryCode: 'US',
162
169
  regionCode: 'TN',
170
+ minAccessAge: 18,
163
171
  rules: [
164
172
  {
165
173
  $type: api_1.ageAssuranceRuleIDs.IfAssuredOverAge,
@@ -1 +1 @@
1
- {"version":3,"file":"const.js","sourceRoot":"","sources":["../../../src/api/age-assurance/const.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n AppBskyAgeassuranceDefs,\n ageAssuranceRuleIDs as ids,\n} from '@atproto/api'\n\n/**\n * Age assurance configuration defining rules for various regions.\n *\n * NOTE: These rules are matched in order, and the first matching rule\n * determines the access level granted.\n *\n * NOTE: all regions MUST have a default rule as the last rule.\n */\nexport const AGE_ASSURANCE_CONFIG: AppBskyAgeassuranceDefs.Config = {\n regions: [\n {\n countryCode: 'GB',\n regionCode: undefined,\n rules: [\n {\n $type: ids.IfAssuredOverAge,\n age: 18,\n access: 'full',\n },\n {\n $type: ids.IfDeclaredOverAge,\n age: 13,\n access: 'safe',\n },\n {\n $type: ids.Default,\n access: 'none',\n },\n ],\n },\n {\n countryCode: 'AU',\n regionCode: undefined,\n rules: [\n {\n $type: ids.IfAccountNewerThan,\n date: '2025-12-10T00:00:00Z',\n access: 'none',\n },\n {\n $type: ids.IfAssuredOverAge,\n age: 18,\n access: 'full',\n },\n {\n $type: ids.IfAssuredOverAge,\n age: 16,\n access: 'safe',\n },\n {\n $type: ids.IfDeclaredOverAge,\n age: 16,\n access: 'safe',\n },\n {\n $type: ids.Default,\n access: 'none',\n },\n ],\n },\n {\n countryCode: 'US',\n regionCode: 'SD',\n rules: [\n {\n $type: ids.IfAssuredOverAge,\n age: 18,\n access: 'full',\n },\n {\n $type: ids.IfDeclaredOverAge,\n age: 13,\n access: 'safe',\n },\n {\n $type: ids.Default,\n access: 'none',\n },\n ],\n },\n {\n countryCode: 'US',\n regionCode: 'WY',\n rules: [\n {\n $type: ids.IfAssuredOverAge,\n age: 18,\n access: 'full',\n },\n {\n $type: ids.IfDeclaredOverAge,\n age: 13,\n access: 'safe',\n },\n {\n $type: ids.Default,\n access: 'none',\n },\n ],\n },\n {\n countryCode: 'US',\n regionCode: 'OH',\n rules: [\n {\n $type: ids.IfAssuredOverAge,\n age: 18,\n access: 'full',\n },\n {\n $type: ids.IfDeclaredOverAge,\n age: 13,\n access: 'safe',\n },\n {\n $type: ids.Default,\n access: 'none',\n },\n ],\n },\n {\n countryCode: 'US',\n regionCode: 'MS',\n rules: [\n {\n $type: ids.IfAssuredOverAge,\n age: 18,\n access: 'full',\n },\n {\n $type: ids.Default,\n access: 'none',\n },\n ],\n },\n {\n countryCode: 'US',\n regionCode: 'VA',\n rules: [\n {\n $type: ids.IfAssuredOverAge,\n age: 16,\n access: 'full',\n },\n {\n $type: ids.IfDeclaredOverAge,\n age: 16,\n access: 'full',\n },\n {\n $type: ids.Default,\n access: 'none',\n },\n ],\n },\n {\n countryCode: 'US',\n regionCode: 'TN',\n rules: [\n {\n $type: ids.IfAssuredOverAge,\n age: 18,\n access: 'full',\n },\n {\n $type: ids.IfDeclaredOverAge,\n age: 18,\n access: 'full',\n },\n {\n $type: ids.Default,\n access: 'none',\n },\n ],\n },\n ],\n}\n"]}
1
+ {"version":3,"file":"const.js","sourceRoot":"","sources":["../../../src/api/age-assurance/const.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n AppBskyAgeassuranceDefs,\n ageAssuranceRuleIDs as ids,\n} from '@atproto/api'\n\n/**\n * Age assurance configuration defining rules for various regions.\n *\n * NOTE: These rules are matched in order, and the first matching rule\n * determines the access level granted.\n *\n * NOTE: all regions MUST have a default rule as the last rule.\n */\nexport const AGE_ASSURANCE_CONFIG: AppBskyAgeassuranceDefs.Config = {\n regions: [\n {\n countryCode: 'GB',\n regionCode: undefined,\n minAccessAge: 13,\n rules: [\n {\n $type: ids.IfAssuredOverAge,\n age: 18,\n access: 'full',\n },\n {\n $type: ids.IfDeclaredOverAge,\n age: 13,\n access: 'safe',\n },\n {\n $type: ids.Default,\n access: 'none',\n },\n ],\n },\n {\n countryCode: 'AU',\n regionCode: undefined,\n minAccessAge: 16,\n rules: [\n {\n $type: ids.IfAccountNewerThan,\n date: '2025-12-10T00:00:00Z',\n access: 'none',\n },\n {\n $type: ids.IfAssuredOverAge,\n age: 18,\n access: 'full',\n },\n {\n $type: ids.IfAssuredOverAge,\n age: 16,\n access: 'safe',\n },\n {\n $type: ids.IfDeclaredOverAge,\n age: 16,\n access: 'safe',\n },\n {\n $type: ids.Default,\n access: 'none',\n },\n ],\n },\n {\n countryCode: 'US',\n regionCode: 'SD',\n minAccessAge: 13,\n rules: [\n {\n $type: ids.IfAssuredOverAge,\n age: 18,\n access: 'full',\n },\n {\n $type: ids.IfDeclaredOverAge,\n age: 13,\n access: 'safe',\n },\n {\n $type: ids.Default,\n access: 'none',\n },\n ],\n },\n {\n countryCode: 'US',\n regionCode: 'WY',\n minAccessAge: 13,\n rules: [\n {\n $type: ids.IfAssuredOverAge,\n age: 18,\n access: 'full',\n },\n {\n $type: ids.IfDeclaredOverAge,\n age: 13,\n access: 'safe',\n },\n {\n $type: ids.Default,\n access: 'none',\n },\n ],\n },\n {\n countryCode: 'US',\n regionCode: 'OH',\n minAccessAge: 13,\n rules: [\n {\n $type: ids.IfAssuredOverAge,\n age: 18,\n access: 'full',\n },\n {\n $type: ids.IfDeclaredOverAge,\n age: 13,\n access: 'safe',\n },\n {\n $type: ids.Default,\n access: 'none',\n },\n ],\n },\n {\n countryCode: 'US',\n regionCode: 'MS',\n minAccessAge: 18,\n rules: [\n {\n $type: ids.IfAssuredOverAge,\n age: 18,\n access: 'full',\n },\n {\n $type: ids.Default,\n access: 'none',\n },\n ],\n },\n {\n countryCode: 'US',\n regionCode: 'VA',\n minAccessAge: 16,\n rules: [\n {\n $type: ids.IfAssuredOverAge,\n age: 16,\n access: 'full',\n },\n {\n $type: ids.IfDeclaredOverAge,\n age: 16,\n access: 'full',\n },\n {\n $type: ids.Default,\n access: 'none',\n },\n ],\n },\n {\n countryCode: 'US',\n regionCode: 'TN',\n minAccessAge: 18,\n rules: [\n {\n $type: ids.IfAssuredOverAge,\n age: 18,\n access: 'full',\n },\n {\n $type: ids.IfDeclaredOverAge,\n age: 18,\n access: 'full',\n },\n {\n $type: ids.Default,\n access: 'none',\n },\n ],\n },\n ],\n}\n"]}
@@ -40,7 +40,7 @@ const skeleton = async (input) => {
40
40
  const hydration = async (input) => {
41
41
  const { ctx, params, skeleton } = input;
42
42
  return ctx.hydrator.hydrateProfilesDetailed([skeleton.did], params.hydrateCtx.copy({
43
- includeActorTakedowns: true,
43
+ overrideIncludeTakedownsForActor: true,
44
44
  }));
45
45
  };
46
46
  const presentation = (input) => {
@@ -1 +1 @@
1
- {"version":3,"file":"getProfile.js","sourceRoot":"","sources":["../../../../../src/api/app/bsky/actor/getProfile.ts"],"names":[],"mappings":";;AAaA,4BA2BC;AAxCD,sDAA0D;AAS1D,mDAA8D;AAE9D,wCAA0C;AAE1C,mBAAyB,MAAc,EAAE,GAAe;IACtD,MAAM,UAAU,GAAG,IAAA,yBAAc,EAAC,QAAQ,EAAE,SAAS,EAAE,kBAAO,EAAE,YAAY,CAAC,CAAA;IAC7E,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;QAC/B,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,sBAAsB;QAC7C,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,EAAE;YACvC,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,GAAG,GAAG,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;YACtE,MAAM,QAAQ,GAAG,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;YACrC,MAAM,UAAU,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,aAAa,CAAC;gBAClD,QAAQ;gBACR,MAAM;gBACN,gBAAgB;aACjB,CAAC,CAAA;YAEF,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,EAAE,GAAG,MAAM,EAAE,UAAU,EAAE,EAAE,GAAG,CAAC,CAAA;YAE/D,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAA;YAE/D,OAAO;gBACL,QAAQ,EAAE,kBAAkB;gBAC5B,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE,IAAA,iBAAU,EAAC;oBAClB,OAAO;oBACP,QAAQ,EAAE,UAAU,CAAC,QAAQ;iBAC9B,CAAC;aACH,CAAA;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,QAAQ,GAAG,KAAK,EAAE,KAGvB,EAA0B,EAAE;IAC3B,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,KAAK,CAAA;IAC7B,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;IAC9D,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,iCAAmB,CAAC,mBAAmB,CAAC,CAAA;IACpD,CAAC;IACD,OAAO,EAAE,GAAG,EAAE,CAAA;AAChB,CAAC,CAAA;AAED,MAAM,SAAS,GAAG,KAAK,EAAE,KAIxB,EAAE,EAAE;IACH,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAA;IACvC,OAAO,GAAG,CAAC,QAAQ,CAAC,uBAAuB,CACzC,CAAC,QAAQ,CAAC,GAAG,CAAC,EACd,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC;QACrB,qBAAqB,EAAE,IAAI;KAC5B,CAAC,CACH,CAAA;AACH,CAAC,CAAA;AAED,MAAM,YAAY,GAAG,CAAC,KAKrB,EAAE,EAAE;IACH,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,KAAK,CAAA;IAClD,MAAM,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,QAAQ,CAAC,GAAG,EAAE,SAAS,CAAC,CAAA;IAClE,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,iCAAmB,CAAC,mBAAmB,CAAC,CAAA;IACpD,CAAC;SAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,gBAAgB,EAAE,CAAC;QAC/C,IAAI,GAAG,CAAC,KAAK,CAAC,gBAAgB,CAAC,QAAQ,CAAC,GAAG,EAAE,SAAS,CAAC,EAAE,CAAC;YACxD,MAAM,IAAI,iCAAmB,CAC3B,4BAA4B,EAC5B,iBAAiB,CAClB,CAAA;QACH,CAAC;aAAM,IAAI,GAAG,CAAC,KAAK,CAAC,kBAAkB,CAAC,QAAQ,CAAC,GAAG,EAAE,SAAS,CAAC,EAAE,CAAC;YACjE,MAAM,IAAI,iCAAmB,CAC3B,wBAAwB,EACxB,oBAAoB,CACrB,CAAA;QACH,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA","sourcesContent":["import { InvalidRequestError } from '@atproto/xrpc-server'\nimport { AppContext } from '../../../../context'\nimport {\n HydrateCtx,\n HydrationState,\n Hydrator,\n} from '../../../../hydration/hydrator'\nimport { Server } from '../../../../lexicon'\nimport { QueryParams } from '../../../../lexicon/types/app/bsky/actor/getProfile'\nimport { createPipeline, noRules } from '../../../../pipeline'\nimport { Views } from '../../../../views'\nimport { resHeaders } from '../../../util'\n\nexport default function (server: Server, ctx: AppContext) {\n const getProfile = createPipeline(skeleton, hydration, noRules, presentation)\n server.app.bsky.actor.getProfile({\n auth: ctx.authVerifier.optionalStandardOrRole,\n handler: async ({ auth, params, req }) => {\n const { viewer, includeTakedowns } = ctx.authVerifier.parseCreds(auth)\n const labelers = ctx.reqLabelers(req)\n const hydrateCtx = await ctx.hydrator.createContext({\n labelers,\n viewer,\n includeTakedowns,\n })\n\n const result = await getProfile({ ...params, hydrateCtx }, ctx)\n\n const repoRev = await ctx.hydrator.actor.getRepoRevSafe(viewer)\n\n return {\n encoding: 'application/json',\n body: result,\n headers: resHeaders({\n repoRev,\n labelers: hydrateCtx.labelers,\n }),\n }\n },\n })\n}\n\nconst skeleton = async (input: {\n ctx: Context\n params: Params\n}): Promise<SkeletonState> => {\n const { ctx, params } = input\n const [did] = await ctx.hydrator.actor.getDids([params.actor])\n if (!did) {\n throw new InvalidRequestError('Profile not found')\n }\n return { did }\n}\n\nconst hydration = async (input: {\n ctx: Context\n params: Params\n skeleton: SkeletonState\n}) => {\n const { ctx, params, skeleton } = input\n return ctx.hydrator.hydrateProfilesDetailed(\n [skeleton.did],\n params.hydrateCtx.copy({\n includeActorTakedowns: true,\n }),\n )\n}\n\nconst presentation = (input: {\n ctx: Context\n params: Params\n skeleton: SkeletonState\n hydration: HydrationState\n}) => {\n const { ctx, params, skeleton, hydration } = input\n const profile = ctx.views.profileDetailed(skeleton.did, hydration)\n if (!profile) {\n throw new InvalidRequestError('Profile not found')\n } else if (!params.hydrateCtx.includeTakedowns) {\n if (ctx.views.actorIsTakendown(skeleton.did, hydration)) {\n throw new InvalidRequestError(\n 'Account has been suspended',\n 'AccountTakedown',\n )\n } else if (ctx.views.actorIsDeactivated(skeleton.did, hydration)) {\n throw new InvalidRequestError(\n 'Account is deactivated',\n 'AccountDeactivated',\n )\n }\n }\n return profile\n}\n\ntype Context = {\n hydrator: Hydrator\n views: Views\n}\n\ntype Params = QueryParams & {\n hydrateCtx: HydrateCtx\n}\n\ntype SkeletonState = { did: string }\n"]}
1
+ {"version":3,"file":"getProfile.js","sourceRoot":"","sources":["../../../../../src/api/app/bsky/actor/getProfile.ts"],"names":[],"mappings":"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","sourcesContent":["import { InvalidRequestError } from '@atproto/xrpc-server'\nimport { AppContext } from '../../../../context'\nimport {\n HydrateCtx,\n HydrationState,\n Hydrator,\n} from '../../../../hydration/hydrator'\nimport { Server } from '../../../../lexicon'\nimport { QueryParams } from '../../../../lexicon/types/app/bsky/actor/getProfile'\nimport { createPipeline, noRules } from '../../../../pipeline'\nimport { Views } from '../../../../views'\nimport { resHeaders } from '../../../util'\n\nexport default function (server: Server, ctx: AppContext) {\n const getProfile = createPipeline(skeleton, hydration, noRules, presentation)\n server.app.bsky.actor.getProfile({\n auth: ctx.authVerifier.optionalStandardOrRole,\n handler: async ({ auth, params, req }) => {\n const { viewer, includeTakedowns } = ctx.authVerifier.parseCreds(auth)\n const labelers = ctx.reqLabelers(req)\n const hydrateCtx = await ctx.hydrator.createContext({\n labelers,\n viewer,\n includeTakedowns,\n })\n\n const result = await getProfile({ ...params, hydrateCtx }, ctx)\n\n const repoRev = await ctx.hydrator.actor.getRepoRevSafe(viewer)\n\n return {\n encoding: 'application/json',\n body: result,\n headers: resHeaders({\n repoRev,\n labelers: hydrateCtx.labelers,\n }),\n }\n },\n })\n}\n\nconst skeleton = async (input: {\n ctx: Context\n params: Params\n}): Promise<SkeletonState> => {\n const { ctx, params } = input\n const [did] = await ctx.hydrator.actor.getDids([params.actor])\n if (!did) {\n throw new InvalidRequestError('Profile not found')\n }\n return { did }\n}\n\nconst hydration = async (input: {\n ctx: Context\n params: Params\n skeleton: SkeletonState\n}) => {\n const { ctx, params, skeleton } = input\n return ctx.hydrator.hydrateProfilesDetailed(\n [skeleton.did],\n params.hydrateCtx.copy({\n overrideIncludeTakedownsForActor: true,\n }),\n )\n}\n\nconst presentation = (input: {\n ctx: Context\n params: Params\n skeleton: SkeletonState\n hydration: HydrationState\n}) => {\n const { ctx, params, skeleton, hydration } = input\n const profile = ctx.views.profileDetailed(skeleton.did, hydration)\n if (!profile) {\n throw new InvalidRequestError('Profile not found')\n } else if (!params.hydrateCtx.includeTakedowns) {\n if (ctx.views.actorIsTakendown(skeleton.did, hydration)) {\n throw new InvalidRequestError(\n 'Account has been suspended',\n 'AccountTakedown',\n )\n } else if (ctx.views.actorIsDeactivated(skeleton.did, hydration)) {\n throw new InvalidRequestError(\n 'Account is deactivated',\n 'AccountDeactivated',\n )\n }\n }\n return profile\n}\n\ntype Context = {\n hydrator: Hydrator\n views: Views\n}\n\ntype Params = QueryParams & {\n hydrateCtx: HydrateCtx\n}\n\ntype SkeletonState = { did: string }\n"]}
@@ -90,6 +90,12 @@ export declare class ActorHydrator {
90
90
  getDidsDefined(handleOrDids: string[]): Promise<string[]>;
91
91
  getActors(dids: string[], opts?: {
92
92
  includeTakedowns?: boolean;
93
+ /**
94
+ * The raw `HydrationCtx.includeTakedowns` value, independent of any
95
+ * special casing that may apply to `includeTakedowns` within this
96
+ * method.
97
+ */
98
+ includeTakedownsBase?: boolean;
93
99
  skipCacheForDids?: string[];
94
100
  }): Promise<Actors>;
95
101
  getChatDeclarations(uris: string[], includeTakedowns?: boolean): Promise<ChatDeclarations>;
@@ -1 +1 @@
1
- {"version":3,"file":"actor.d.ts","sourceRoot":"","sources":["../../src/hydration/actor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"actor.d.ts","sourceRoot":"","sources":["../../src/hydration/actor.ts"],"names":[],"mappings":"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"}
@@ -46,7 +46,7 @@ class ActorHydrator {
46
46
  return res.filter((did) => did !== undefined);
47
47
  }
48
48
  async getActors(dids, opts = {}) {
49
- const { includeTakedowns = false, skipCacheForDids } = opts;
49
+ const { includeTakedowns = false, skipCacheForDids, includeTakedownsBase = false, } = opts;
50
50
  if (!dids.length)
51
51
  return new util_1.HydrationMap();
52
52
  const res = await this.dataplane.getActors({ dids, skipCacheForDids });
@@ -63,7 +63,7 @@ class ActorHydrator {
63
63
  ? (0, util_1.parseRecord)(actor.profile, includeTakedowns)
64
64
  : undefined;
65
65
  const status = actor.statusRecord
66
- ? (0, util_1.parseRecord)(actor.statusRecord, includeTakedowns)
66
+ ? (0, util_1.parseRecord)(actor.statusRecord, includeTakedownsBase)
67
67
  : undefined;
68
68
  const verifications = (0, common_1.mapDefined)(Object.entries(actor.verifiedBy), ([actorDid, verificationMeta]) => {
69
69
  if (verificationMeta.handle &&
@@ -1 +1 @@
1
- {"version":3,"file":"actor.js","sourceRoot":"","sources":["../../src/hydration/actor.ts"],"names":[],"mappings":";;;AACA,4CAA4C;AAO5C,iCAOe;AAkGf,MAAa,aAAa;IACxB,YAAmB,SAA0B;QAAjC;;;;mBAAO,SAAS;WAAiB;IAAG,CAAC;IAEjD,KAAK,CAAC,cAAc,CAAC,GAAkB;QACrC,IAAI,CAAC,GAAG;YAAE,OAAO,IAAI,CAAA;QACrB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAA;YAChE,OAAO,IAAA,kBAAW,EAAC,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,CAAA;QACrC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAA;QACb,CAAC;IACH,CAAC;IAED,KAAK,CAAC,OAAO,CACX,YAAsB,EACtB,IAAyC;QAEzC,MAAM,OAAO,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAA;QACzE,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM;YACxB,CAAC,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC;gBACpC,OAAO;gBACP,oBAAoB,EAAE,IAAI,EAAE,oBAAoB;aACjD,CAAC;YACJ,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAA;QAChB,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAChC,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE;YACd,MAAM,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;YACvB,IAAI,GAAG,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1B,OAAO,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;YAC1B,CAAC;YACD,OAAO,GAAG,CAAA;QACZ,CAAC,EACD,IAAI,GAAG,EAAyB,CACjC,CAAA;QACD,OAAO,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAC7B,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,CACjD,CAAA;IACH,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,YAAsB;QACzC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAA;QAC5C,aAAa;QACb,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,SAAS,CAAC,CAAA;IAC/C,CAAC;IAED,KAAK,CAAC,SAAS,CACb,IAAc,EACd,OAGI,EAAE;QAEN,MAAM,EAAE,gBAAgB,GAAG,KAAK,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAAA;QAC3D,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,mBAAY,EAAS,CAAA;QAClD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC,CAAA;QACtE,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE;YACjC,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;YAC3B,MAAM,UAAU,GACd,KAAK,CAAC,SAAS;gBACf,CAAC,KAAK,CAAC,cAAc,IAAI,KAAK,CAAC,cAAc,KAAK,QAAQ,CAAC,CAAA;YAC7D,IACE,CAAC,KAAK,CAAC,MAAM;gBACb,CAAC,UAAU,IAAI,CAAC,gBAAgB,CAAC;gBACjC,CAAC,CAAC,KAAK,CAAC,YAAY,EACpB,CAAC;gBACD,OAAO,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;YAC3B,CAAC;YAED,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,EAAE,MAAM;gBACnC,CAAC,CAAC,IAAA,kBAAW,EAAgB,KAAK,CAAC,OAAO,EAAE,gBAAgB,CAAC;gBAC7D,CAAC,CAAC,SAAS,CAAA;YAEb,MAAM,MAAM,GAAG,KAAK,CAAC,YAAY;gBAC/B,CAAC,CAAC,IAAA,kBAAW,EAAe,KAAK,CAAC,YAAY,EAAE,gBAAgB,CAAC;gBACjE,CAAC,CAAC,SAAS,CAAA;YAEb,MAAM,aAAa,GAAG,IAAA,mBAAU,EAC9B,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,EAChC,CAAC,CAAC,QAAQ,EAAE,gBAAgB,CAAC,EAAE,EAAE;gBAC/B,IACE,gBAAgB,CAAC,MAAM;oBACvB,gBAAgB,CAAC,IAAI;oBACrB,gBAAgB,CAAC,QAAQ,EACzB,CAAC;oBACD,OAAO;wBACL,MAAM,EAAE,QAAQ;wBAChB,GAAG,EAAE,QAAQ,QAAQ,gCAAgC,gBAAgB,CAAC,IAAI,EAAE;wBAC5E,MAAM,EAAE,gBAAgB,CAAC,MAAM;wBAC/B,WAAW,EAAE,gBAAgB,CAAC,WAAW;wBACzC,SAAS,EAAE,gBAAgB,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE;qBAC5D,CAAA;gBACH,CAAC;gBACD,kEAAkE;gBAClE,OAAO,SAAS,CAAA;YAClB,CAAC,CACF,CAAA;YAED,MAAM,8BAA8B,GAAG,CACrC,GAAW,EACiB,EAAE;gBAC9B,QAAQ,GAAG,EAAE,CAAC;oBACZ,KAAK,WAAW,CAAC;oBACjB,KAAK,SAAS,CAAC;oBACf,KAAK,MAAM;wBACT,OAAO,GAAG,CAAA;oBACZ;wBACE,qEAAqE;wBACrE,OAAO,WAAW,CAAA;gBACtB,CAAC;YACH,CAAC,CAAA;YAED,MAAM,KAAK,GAAG;gBACZ,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,WAAW,EAAE,KAAK,CAAC,IAAI;gBACvB,WAAW,EAAE,KAAK,CAAC,WAAW;aAC/B,CAAA;YAED,OAAO,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE;gBAClB,GAAG;gBACH,MAAM,EAAE,IAAA,kBAAW,EAAC,KAAK,CAAC,MAAM,CAAC;gBACjC,OAAO,EAAE,OAAO,EAAE,MAAM;gBACxB,UAAU,EAAE,OAAO,EAAE,GAAG;gBACxB,kBAAkB,EAAE,OAAO,EAAE,WAAW;gBACxC,QAAQ,EAAE,OAAO,EAAE,QAAQ;gBAC3B,SAAS,EAAE,OAAO,EAAE,SAAS;gBAC7B,WAAW,EAAE,IAAA,sBAAe,EAAC,KAAK,CAAC;gBACnC,SAAS,EAAE,KAAK,CAAC,OAAO,IAAI,KAAK;gBACjC,sBAAsB,EAAE,KAAK,CAAC,sBAAsB,IAAI,SAAS;gBACjE,cAAc,EAAE,KAAK,CAAC,cAAc,IAAI,SAAS;gBACjD,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE;gBACpC,qBAAqB,EAAE,KAAK,CAAC,qBAAqB;gBAClD,eAAe,EAAE,KAAK,CAAC,eAAe;gBACtC,aAAa;gBACb,MAAM,EAAE,MAAM;gBACd,8BAA8B,EAAE,8BAA8B,CAC5D,KAAK,CAAC,8BAA8B,CACrC;gBACD,KAAK;aACN,CAAC,CAAA;QACJ,CAAC,EAAE,IAAI,mBAAY,EAAS,CAAC,CAAA;IAC/B,CAAC;IAED,KAAK,CAAC,mBAAmB,CACvB,IAAc,EACd,gBAAgB,GAAG,KAAK;QAExB,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,mBAAY,EAAmB,CAAA;QAC5D,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,8BAA8B,CAAC,EAAE,IAAI,EAAE,CAAC,CAAA;QACzE,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE;YACjC,MAAM,MAAM,GAAG,IAAA,kBAAW,EACxB,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EACd,gBAAgB,CACjB,CAAA;YACD,OAAO,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,IAAI,IAAI,CAAC,CAAA;QACrC,CAAC,EAAE,IAAI,mBAAY,EAAmB,CAAC,CAAA;IACzC,CAAC;IAED,KAAK,CAAC,2BAA2B,CAC/B,IAAc,EACd,gBAAgB,GAAG,KAAK;QAExB,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,mBAAY,EAA2B,CAAA;QACpE,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,iCAAiC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAA;QAC5E,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE;YACjC,MAAM,MAAM,GAAG,IAAA,kBAAW,EACxB,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EACd,gBAAgB,CACjB,CAAA;YACD,OAAO,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,IAAI,IAAI,CAAC,CAAA;QACrC,CAAC,EAAE,IAAI,mBAAY,EAA2B,CAAC,CAAA;IACjD,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,IAAc,EAAE,gBAAgB,GAAG,KAAK;QACtD,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,mBAAY,EAAU,CAAA;QACnD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,EAAE,IAAI,EAAE,CAAC,CAAA;QAC3D,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE;YACjC,MAAM,MAAM,GAAG,IAAA,kBAAW,EAAe,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAA;YAC1E,OAAO,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,IAAI,IAAI,CAAC,CAAA;QACrC,CAAC,EAAE,IAAI,mBAAY,EAAU,CAAC,CAAA;IAChC,CAAC;IAED,+EAA+E;IAC/E,qFAAqF;IACrF,+BAA+B;IAC/B,KAAK,CAAC,2BAA2B,CAC/B,IAAc,EACd,MAAc;QAEd,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,mBAAY,EAAsB,CAAA;QAC/D,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC;YAChD,QAAQ,EAAE,MAAM;YAChB,UAAU,EAAE,IAAI;SACjB,CAAC,CAAA;QAEF,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE;YACjC,MAAM,IAAI,GAAG,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAA;YACjC,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;gBACnB,4EAA4E;gBAC5E,OAAO,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;YACzB,CAAC;YACD,OAAO,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE;gBAClB,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,KAAK;gBAC1B,WAAW,EAAE,IAAA,kBAAW,EAAC,IAAI,CAAC,WAAW,CAAC;gBAC1C,SAAS,EAAE,IAAA,kBAAW,EAAC,IAAI,CAAC,SAAS,CAAC;gBACtC,QAAQ,EAAE,IAAA,kBAAW,EAAC,IAAI,CAAC,QAAQ,CAAC;gBACpC,aAAa,EAAE,IAAA,kBAAW,EAAC,IAAI,CAAC,aAAa,CAAC;gBAC9C,cAAc,EAAE,IAAA,kBAAW,EAAC,IAAI,CAAC,cAAc,CAAC;gBAChD,SAAS,EAAE,IAAA,kBAAW,EAAC,IAAI,CAAC,SAAS,CAAC;gBACtC,UAAU,EAAE,IAAA,kBAAW,EAAC,IAAI,CAAC,UAAU,CAAC;aACzC,CAAC,CAAA;QACJ,CAAC,EAAE,IAAI,mBAAY,EAAsB,CAAC,CAAA;IAC5C,CAAC;IAED,KAAK,CAAC,iBAAiB,CACrB,IAAc,EACd,MAAqB;QAErB,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,mBAAY,EAAmC,CAAA;QACvE,MAAM,EAAE,OAAO,EAAE,qBAAqB,EAAE,GAAG,MAAM,IAAI,CAAC,SAAS;aAC5D,mBAAmB,CAClB;YACE,QAAQ,EAAE,MAAM;YAChB,UAAU,EAAE,IAAI;SACjB,EACD;YACE,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC;SACjC,CACF;aACA,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,CAAA;QACjC,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE;YACjC,MAAM,MAAM,GAAG,qBAAqB,CAAC,CAAC,CAAC,EAAE,IAAI,CAAA;YAC7C,OAAO,GAAG,CAAC,GAAG,CACZ,GAAG,EACH,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;gBACzB,CAAC,CAAC;oBACE,KAAK,EAAE,MAAM,CAAC,MAAM;oBACpB,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;iBAC9B;gBACH,CAAC,CAAC,SAAS,CACd,CAAA;QACH,CAAC,EAAE,IAAI,mBAAY,EAAmC,CAAC,CAAA;IACzD,CAAC;IAED,KAAK,CAAC,wBAAwB,CAC5B,IAAc,EACd,MAAqB;QAErB,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,IAAI,mBAAY,EAAyC,CAAA;QAClE,CAAC;QAED,MAAM,oBAAoB,GAAG,CAAC,GAAqC,EAAE,EAAE;YACrE,IAAI,CAAC,GAAG;gBAAE,OAAO,SAAS,CAAA;YAE1B,MAAM,MAAM,GAAG;gBACb,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI;gBAChB,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK;aACnB,CAAA;YACD,IAAI,CAAC,IAAA,oCAA6B,EAAC,MAAM,CAAC;gBAAE,OAAO,SAAS,CAAA;YAE5D,OAAO,MAAM,CAAA;QACf,CAAC,CAAA;QAED,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,IAAI,CAAC,SAAS;aAC3C,0CAA0C,CACzC,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,EACvC,EAAE,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CACrC;aACA,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC,CAAC,CAAA;QAEvC,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE;YACjC,OAAO,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,oBAAoB,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAC7D,CAAC,EAAE,IAAI,mBAAY,EAAyC,CAAC,CAAA;IAC/D,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,IAAc;QACvC,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,mBAAY,EAAc,CAAA;QACvD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAE,CAAC,CAAA;QAC/D,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE;YACjC,OAAO,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE;gBAClB,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;gBACnC,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;gBACjC,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;gBAC3B,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;gBAC3B,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;gBAC3B,YAAY,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC;aAC1C,CAAC,CAAA;QACJ,CAAC,EAAE,IAAI,mBAAY,EAAc,CAAC,CAAA;IACpC,CAAC;CACF;AAjSD,sCAiSC","sourcesContent":["import { AppBskyNotificationDeclaration } from '@atproto/api'\nimport { mapDefined } from '@atproto/common'\nimport { DataPlaneClient } from '../data-plane/client'\nimport { Record as ProfileRecord } from '../lexicon/types/app/bsky/actor/profile'\nimport { Record as StatusRecord } from '../lexicon/types/app/bsky/actor/status'\nimport { Record as NotificationDeclarationRecord } from '../lexicon/types/app/bsky/notification/declaration'\nimport { Record as ChatDeclarationRecord } from '../lexicon/types/chat/bsky/actor/declaration'\nimport { ActivitySubscription, VerificationMeta } from '../proto/bsky_pb'\nimport {\n HydrationMap,\n RecordInfo,\n isActivitySubscriptionEnabled,\n parseRecord,\n parseString,\n safeTakedownRef,\n} from './util'\n\ntype AllowActivitySubscriptions = Extract<\n AppBskyNotificationDeclaration.Record['allowSubscriptions'],\n 'followers' | 'mutuals' | 'none'\n>\n\nexport type Actor = {\n did: string\n handle?: string\n profile?: ProfileRecord\n profileCid?: string\n profileTakedownRef?: string\n sortedAt?: Date\n indexedAt?: Date\n takedownRef?: string\n isLabeler: boolean\n allowIncomingChatsFrom?: string\n upstreamStatus?: string\n createdAt?: Date\n priorityNotifications: boolean\n trustedVerifier?: boolean\n verifications: VerificationHydrationState[]\n status?: RecordInfo<StatusRecord>\n allowActivitySubscriptionsFrom: AllowActivitySubscriptions\n /**\n * Debug information for internal development\n */\n debug?: {\n pagerank?: number\n accountTags?: string[]\n profileTags?: string[]\n [key: string]: unknown\n }\n}\n\nexport type VerificationHydrationState = {\n issuer: string\n uri: string\n handle: string\n displayName: string\n createdAt: string\n}\n\nexport type VerificationMetaRequired = Required<VerificationMeta>\n\nexport type Actors = HydrationMap<Actor>\n\nexport type ChatDeclaration = RecordInfo<ChatDeclarationRecord>\n\nexport type ChatDeclarations = HydrationMap<ChatDeclaration>\nexport type NotificationDeclaration = RecordInfo<NotificationDeclarationRecord>\n\nexport type NotificationDeclarations = HydrationMap<NotificationDeclaration>\n\nexport type Status = RecordInfo<StatusRecord>\nexport type Statuses = HydrationMap<Status>\n\nexport type ProfileViewerState = {\n muted?: boolean\n mutedByList?: string\n blockedBy?: string\n blocking?: string\n blockedByList?: string\n blockingByList?: string\n following?: string\n followedBy?: string\n}\n\nexport type ProfileViewerStates = HydrationMap<ProfileViewerState>\n\ntype ActivitySubscriptionState = {\n post: boolean\n reply: boolean\n}\n\nexport type ActivitySubscriptionStates = HydrationMap<\n ActivitySubscriptionState | undefined\n>\n\ntype KnownFollowersState = {\n count: number\n followers: string[]\n}\n\nexport type KnownFollowersStates = HydrationMap<KnownFollowersState | undefined>\n\nexport type ProfileAgg = {\n followers: number\n follows: number\n posts: number\n lists: number\n feeds: number\n starterPacks: number\n}\n\nexport type ProfileAggs = HydrationMap<ProfileAgg>\n\nexport class ActorHydrator {\n constructor(public dataplane: DataPlaneClient) {}\n\n async getRepoRevSafe(did: string | null): Promise<string | null> {\n if (!did) return null\n try {\n const res = await this.dataplane.getLatestRev({ actorDid: did })\n return parseString(res.rev) ?? null\n } catch {\n return null\n }\n }\n\n async getDids(\n handleOrDids: string[],\n opts?: { lookupUnidirectional?: boolean },\n ): Promise<(string | undefined)[]> {\n const handles = handleOrDids.filter((actor) => !actor.startsWith('did:'))\n const res = handles.length\n ? await this.dataplane.getDidsByHandles({\n handles,\n lookupUnidirectional: opts?.lookupUnidirectional,\n })\n : { dids: [] }\n const didByHandle = handles.reduce(\n (acc, cur, i) => {\n const did = res.dids[i]\n if (did && did.length > 0) {\n return acc.set(cur, did)\n }\n return acc\n },\n new Map() as Map<string, string>,\n )\n return handleOrDids.map((id) =>\n id.startsWith('did:') ? id : didByHandle.get(id),\n )\n }\n\n async getDidsDefined(handleOrDids: string[]): Promise<string[]> {\n const res = await this.getDids(handleOrDids)\n // @ts-ignore\n return res.filter((did) => did !== undefined)\n }\n\n async getActors(\n dids: string[],\n opts: {\n includeTakedowns?: boolean\n skipCacheForDids?: string[]\n } = {},\n ): Promise<Actors> {\n const { includeTakedowns = false, skipCacheForDids } = opts\n if (!dids.length) return new HydrationMap<Actor>()\n const res = await this.dataplane.getActors({ dids, skipCacheForDids })\n return dids.reduce((acc, did, i) => {\n const actor = res.actors[i]\n const isNoHosted =\n actor.takenDown ||\n (actor.upstreamStatus && actor.upstreamStatus !== 'active')\n if (\n !actor.exists ||\n (isNoHosted && !includeTakedowns) ||\n !!actor.tombstonedAt\n ) {\n return acc.set(did, null)\n }\n\n const profile = actor.profile?.record\n ? parseRecord<ProfileRecord>(actor.profile, includeTakedowns)\n : undefined\n\n const status = actor.statusRecord\n ? parseRecord<StatusRecord>(actor.statusRecord, includeTakedowns)\n : undefined\n\n const verifications = mapDefined(\n Object.entries(actor.verifiedBy),\n ([actorDid, verificationMeta]) => {\n if (\n verificationMeta.handle &&\n verificationMeta.rkey &&\n verificationMeta.sortedAt\n ) {\n return {\n issuer: actorDid,\n uri: `at://${actorDid}/app.bsky.graph.verification/${verificationMeta.rkey}`,\n handle: verificationMeta.handle,\n displayName: verificationMeta.displayName,\n createdAt: verificationMeta.sortedAt.toDate().toISOString(),\n }\n }\n // Filter out the verification meta that doesn't contain all info.\n return undefined\n },\n )\n\n const allowActivitySubscriptionsFrom = (\n val: string,\n ): AllowActivitySubscriptions => {\n switch (val) {\n case 'followers':\n case 'mutuals':\n case 'none':\n return val\n default:\n // The dataplane should set the default of \"FOLLOWERS\". Just in case.\n return 'followers'\n }\n }\n\n const debug = {\n pagerank: actor.pagerank,\n accountTags: actor.tags,\n profileTags: actor.profileTags,\n }\n\n return acc.set(did, {\n did,\n handle: parseString(actor.handle),\n profile: profile?.record,\n profileCid: profile?.cid,\n profileTakedownRef: profile?.takedownRef,\n sortedAt: profile?.sortedAt,\n indexedAt: profile?.indexedAt,\n takedownRef: safeTakedownRef(actor),\n isLabeler: actor.labeler ?? false,\n allowIncomingChatsFrom: actor.allowIncomingChatsFrom || undefined,\n upstreamStatus: actor.upstreamStatus || undefined,\n createdAt: actor.createdAt?.toDate(),\n priorityNotifications: actor.priorityNotifications,\n trustedVerifier: actor.trustedVerifier,\n verifications,\n status: status,\n allowActivitySubscriptionsFrom: allowActivitySubscriptionsFrom(\n actor.allowActivitySubscriptionsFrom,\n ),\n debug,\n })\n }, new HydrationMap<Actor>())\n }\n\n async getChatDeclarations(\n uris: string[],\n includeTakedowns = false,\n ): Promise<ChatDeclarations> {\n if (!uris.length) return new HydrationMap<ChatDeclaration>()\n const res = await this.dataplane.getActorChatDeclarationRecords({ uris })\n return uris.reduce((acc, uri, i) => {\n const record = parseRecord<ChatDeclarationRecord>(\n res.records[i],\n includeTakedowns,\n )\n return acc.set(uri, record ?? null)\n }, new HydrationMap<ChatDeclaration>())\n }\n\n async getNotificationDeclarations(\n uris: string[],\n includeTakedowns = false,\n ): Promise<NotificationDeclarations> {\n if (!uris.length) return new HydrationMap<NotificationDeclaration>()\n const res = await this.dataplane.getNotificationDeclarationRecords({ uris })\n return uris.reduce((acc, uri, i) => {\n const record = parseRecord<NotificationDeclarationRecord>(\n res.records[i],\n includeTakedowns,\n )\n return acc.set(uri, record ?? null)\n }, new HydrationMap<NotificationDeclaration>())\n }\n\n async getStatus(uris: string[], includeTakedowns = false): Promise<Statuses> {\n if (!uris.length) return new HydrationMap<Status>()\n const res = await this.dataplane.getStatusRecords({ uris })\n return uris.reduce((acc, uri, i) => {\n const record = parseRecord<StatusRecord>(res.records[i], includeTakedowns)\n return acc.set(uri, record ?? null)\n }, new HydrationMap<Status>())\n }\n\n // \"naive\" because this method does not verify the existence of the list itself\n // a later check in the main hydrator will remove list uris that have been deleted or\n // repurposed to \"curate lists\"\n async getProfileViewerStatesNaive(\n dids: string[],\n viewer: string,\n ): Promise<ProfileViewerStates> {\n if (!dids.length) return new HydrationMap<ProfileViewerState>()\n const res = await this.dataplane.getRelationships({\n actorDid: viewer,\n targetDids: dids,\n })\n\n return dids.reduce((acc, did, i) => {\n const rels = res.relationships[i]\n if (viewer === did) {\n // ignore self-follows, self-mutes, self-blocks, self-activity-subscriptions\n return acc.set(did, {})\n }\n return acc.set(did, {\n muted: rels.muted ?? false,\n mutedByList: parseString(rels.mutedByList),\n blockedBy: parseString(rels.blockedBy),\n blocking: parseString(rels.blocking),\n blockedByList: parseString(rels.blockedByList),\n blockingByList: parseString(rels.blockingByList),\n following: parseString(rels.following),\n followedBy: parseString(rels.followedBy),\n })\n }, new HydrationMap<ProfileViewerState>())\n }\n\n async getKnownFollowers(\n dids: string[],\n viewer: string | null,\n ): Promise<KnownFollowersStates> {\n if (!viewer) return new HydrationMap<KnownFollowersState | undefined>()\n const { results: knownFollowersResults } = await this.dataplane\n .getFollowsFollowing(\n {\n actorDid: viewer,\n targetDids: dids,\n },\n {\n signal: AbortSignal.timeout(100),\n },\n )\n .catch(() => ({ results: [] }))\n return dids.reduce((acc, did, i) => {\n const result = knownFollowersResults[i]?.dids\n return acc.set(\n did,\n result && result.length > 0\n ? {\n count: result.length,\n followers: result.slice(0, 5),\n }\n : undefined,\n )\n }, new HydrationMap<KnownFollowersState | undefined>())\n }\n\n async getActivitySubscriptions(\n dids: string[],\n viewer: string | null,\n ): Promise<ActivitySubscriptionStates> {\n if (!viewer) {\n return new HydrationMap<ActivitySubscriptionState | undefined>()\n }\n\n const activitySubscription = (val: ActivitySubscription | undefined) => {\n if (!val) return undefined\n\n const result = {\n post: !!val.post,\n reply: !!val.reply,\n }\n if (!isActivitySubscriptionEnabled(result)) return undefined\n\n return result\n }\n\n const { subscriptions } = await this.dataplane\n .getActivitySubscriptionsByActorAndSubjects(\n { actorDid: viewer, subjectDids: dids },\n { signal: AbortSignal.timeout(100) },\n )\n .catch(() => ({ subscriptions: [] }))\n\n return dids.reduce((acc, did, i) => {\n return acc.set(did, activitySubscription(subscriptions[i]))\n }, new HydrationMap<ActivitySubscriptionState | undefined>())\n }\n\n async getProfileAggregates(dids: string[]): Promise<ProfileAggs> {\n if (!dids.length) return new HydrationMap<ProfileAgg>()\n const counts = await this.dataplane.getCountsForUsers({ dids })\n return dids.reduce((acc, did, i) => {\n return acc.set(did, {\n followers: counts.followers[i] ?? 0,\n follows: counts.following[i] ?? 0,\n posts: counts.posts[i] ?? 0,\n lists: counts.lists[i] ?? 0,\n feeds: counts.feeds[i] ?? 0,\n starterPacks: counts.starterPacks[i] ?? 0,\n })\n }, new HydrationMap<ProfileAgg>())\n }\n}\n"]}
1
+ {"version":3,"file":"actor.js","sourceRoot":"","sources":["../../src/hydration/actor.ts"],"names":[],"mappings":"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","sourcesContent":["import { AppBskyNotificationDeclaration } from '@atproto/api'\nimport { mapDefined } from '@atproto/common'\nimport { DataPlaneClient } from '../data-plane/client'\nimport { Record as ProfileRecord } from '../lexicon/types/app/bsky/actor/profile'\nimport { Record as StatusRecord } from '../lexicon/types/app/bsky/actor/status'\nimport { Record as NotificationDeclarationRecord } from '../lexicon/types/app/bsky/notification/declaration'\nimport { Record as ChatDeclarationRecord } from '../lexicon/types/chat/bsky/actor/declaration'\nimport { ActivitySubscription, VerificationMeta } from '../proto/bsky_pb'\nimport {\n HydrationMap,\n RecordInfo,\n isActivitySubscriptionEnabled,\n parseRecord,\n parseString,\n safeTakedownRef,\n} from './util'\n\ntype AllowActivitySubscriptions = Extract<\n AppBskyNotificationDeclaration.Record['allowSubscriptions'],\n 'followers' | 'mutuals' | 'none'\n>\n\nexport type Actor = {\n did: string\n handle?: string\n profile?: ProfileRecord\n profileCid?: string\n profileTakedownRef?: string\n sortedAt?: Date\n indexedAt?: Date\n takedownRef?: string\n isLabeler: boolean\n allowIncomingChatsFrom?: string\n upstreamStatus?: string\n createdAt?: Date\n priorityNotifications: boolean\n trustedVerifier?: boolean\n verifications: VerificationHydrationState[]\n status?: RecordInfo<StatusRecord>\n allowActivitySubscriptionsFrom: AllowActivitySubscriptions\n /**\n * Debug information for internal development\n */\n debug?: {\n pagerank?: number\n accountTags?: string[]\n profileTags?: string[]\n [key: string]: unknown\n }\n}\n\nexport type VerificationHydrationState = {\n issuer: string\n uri: string\n handle: string\n displayName: string\n createdAt: string\n}\n\nexport type VerificationMetaRequired = Required<VerificationMeta>\n\nexport type Actors = HydrationMap<Actor>\n\nexport type ChatDeclaration = RecordInfo<ChatDeclarationRecord>\n\nexport type ChatDeclarations = HydrationMap<ChatDeclaration>\nexport type NotificationDeclaration = RecordInfo<NotificationDeclarationRecord>\n\nexport type NotificationDeclarations = HydrationMap<NotificationDeclaration>\n\nexport type Status = RecordInfo<StatusRecord>\nexport type Statuses = HydrationMap<Status>\n\nexport type ProfileViewerState = {\n muted?: boolean\n mutedByList?: string\n blockedBy?: string\n blocking?: string\n blockedByList?: string\n blockingByList?: string\n following?: string\n followedBy?: string\n}\n\nexport type ProfileViewerStates = HydrationMap<ProfileViewerState>\n\ntype ActivitySubscriptionState = {\n post: boolean\n reply: boolean\n}\n\nexport type ActivitySubscriptionStates = HydrationMap<\n ActivitySubscriptionState | undefined\n>\n\ntype KnownFollowersState = {\n count: number\n followers: string[]\n}\n\nexport type KnownFollowersStates = HydrationMap<KnownFollowersState | undefined>\n\nexport type ProfileAgg = {\n followers: number\n follows: number\n posts: number\n lists: number\n feeds: number\n starterPacks: number\n}\n\nexport type ProfileAggs = HydrationMap<ProfileAgg>\n\nexport class ActorHydrator {\n constructor(public dataplane: DataPlaneClient) {}\n\n async getRepoRevSafe(did: string | null): Promise<string | null> {\n if (!did) return null\n try {\n const res = await this.dataplane.getLatestRev({ actorDid: did })\n return parseString(res.rev) ?? null\n } catch {\n return null\n }\n }\n\n async getDids(\n handleOrDids: string[],\n opts?: { lookupUnidirectional?: boolean },\n ): Promise<(string | undefined)[]> {\n const handles = handleOrDids.filter((actor) => !actor.startsWith('did:'))\n const res = handles.length\n ? await this.dataplane.getDidsByHandles({\n handles,\n lookupUnidirectional: opts?.lookupUnidirectional,\n })\n : { dids: [] }\n const didByHandle = handles.reduce(\n (acc, cur, i) => {\n const did = res.dids[i]\n if (did && did.length > 0) {\n return acc.set(cur, did)\n }\n return acc\n },\n new Map() as Map<string, string>,\n )\n return handleOrDids.map((id) =>\n id.startsWith('did:') ? id : didByHandle.get(id),\n )\n }\n\n async getDidsDefined(handleOrDids: string[]): Promise<string[]> {\n const res = await this.getDids(handleOrDids)\n // @ts-ignore\n return res.filter((did) => did !== undefined)\n }\n\n async getActors(\n dids: string[],\n opts: {\n includeTakedowns?: boolean\n /**\n * The raw `HydrationCtx.includeTakedowns` value, independent of any\n * special casing that may apply to `includeTakedowns` within this\n * method.\n */\n includeTakedownsBase?: boolean\n skipCacheForDids?: string[]\n } = {},\n ): Promise<Actors> {\n const {\n includeTakedowns = false,\n skipCacheForDids,\n includeTakedownsBase = false,\n } = opts\n if (!dids.length) return new HydrationMap<Actor>()\n const res = await this.dataplane.getActors({ dids, skipCacheForDids })\n return dids.reduce((acc, did, i) => {\n const actor = res.actors[i]\n const isNoHosted =\n actor.takenDown ||\n (actor.upstreamStatus && actor.upstreamStatus !== 'active')\n if (\n !actor.exists ||\n (isNoHosted && !includeTakedowns) ||\n !!actor.tombstonedAt\n ) {\n return acc.set(did, null)\n }\n\n const profile = actor.profile?.record\n ? parseRecord<ProfileRecord>(actor.profile, includeTakedowns)\n : undefined\n\n const status = actor.statusRecord\n ? parseRecord<StatusRecord>(actor.statusRecord, includeTakedownsBase)\n : undefined\n\n const verifications = mapDefined(\n Object.entries(actor.verifiedBy),\n ([actorDid, verificationMeta]) => {\n if (\n verificationMeta.handle &&\n verificationMeta.rkey &&\n verificationMeta.sortedAt\n ) {\n return {\n issuer: actorDid,\n uri: `at://${actorDid}/app.bsky.graph.verification/${verificationMeta.rkey}`,\n handle: verificationMeta.handle,\n displayName: verificationMeta.displayName,\n createdAt: verificationMeta.sortedAt.toDate().toISOString(),\n }\n }\n // Filter out the verification meta that doesn't contain all info.\n return undefined\n },\n )\n\n const allowActivitySubscriptionsFrom = (\n val: string,\n ): AllowActivitySubscriptions => {\n switch (val) {\n case 'followers':\n case 'mutuals':\n case 'none':\n return val\n default:\n // The dataplane should set the default of \"FOLLOWERS\". Just in case.\n return 'followers'\n }\n }\n\n const debug = {\n pagerank: actor.pagerank,\n accountTags: actor.tags,\n profileTags: actor.profileTags,\n }\n\n return acc.set(did, {\n did,\n handle: parseString(actor.handle),\n profile: profile?.record,\n profileCid: profile?.cid,\n profileTakedownRef: profile?.takedownRef,\n sortedAt: profile?.sortedAt,\n indexedAt: profile?.indexedAt,\n takedownRef: safeTakedownRef(actor),\n isLabeler: actor.labeler ?? false,\n allowIncomingChatsFrom: actor.allowIncomingChatsFrom || undefined,\n upstreamStatus: actor.upstreamStatus || undefined,\n createdAt: actor.createdAt?.toDate(),\n priorityNotifications: actor.priorityNotifications,\n trustedVerifier: actor.trustedVerifier,\n verifications,\n status: status,\n allowActivitySubscriptionsFrom: allowActivitySubscriptionsFrom(\n actor.allowActivitySubscriptionsFrom,\n ),\n debug,\n })\n }, new HydrationMap<Actor>())\n }\n\n async getChatDeclarations(\n uris: string[],\n includeTakedowns = false,\n ): Promise<ChatDeclarations> {\n if (!uris.length) return new HydrationMap<ChatDeclaration>()\n const res = await this.dataplane.getActorChatDeclarationRecords({ uris })\n return uris.reduce((acc, uri, i) => {\n const record = parseRecord<ChatDeclarationRecord>(\n res.records[i],\n includeTakedowns,\n )\n return acc.set(uri, record ?? null)\n }, new HydrationMap<ChatDeclaration>())\n }\n\n async getNotificationDeclarations(\n uris: string[],\n includeTakedowns = false,\n ): Promise<NotificationDeclarations> {\n if (!uris.length) return new HydrationMap<NotificationDeclaration>()\n const res = await this.dataplane.getNotificationDeclarationRecords({ uris })\n return uris.reduce((acc, uri, i) => {\n const record = parseRecord<NotificationDeclarationRecord>(\n res.records[i],\n includeTakedowns,\n )\n return acc.set(uri, record ?? null)\n }, new HydrationMap<NotificationDeclaration>())\n }\n\n async getStatus(uris: string[], includeTakedowns = false): Promise<Statuses> {\n if (!uris.length) return new HydrationMap<Status>()\n const res = await this.dataplane.getStatusRecords({ uris })\n return uris.reduce((acc, uri, i) => {\n const record = parseRecord<StatusRecord>(res.records[i], includeTakedowns)\n return acc.set(uri, record ?? null)\n }, new HydrationMap<Status>())\n }\n\n // \"naive\" because this method does not verify the existence of the list itself\n // a later check in the main hydrator will remove list uris that have been deleted or\n // repurposed to \"curate lists\"\n async getProfileViewerStatesNaive(\n dids: string[],\n viewer: string,\n ): Promise<ProfileViewerStates> {\n if (!dids.length) return new HydrationMap<ProfileViewerState>()\n const res = await this.dataplane.getRelationships({\n actorDid: viewer,\n targetDids: dids,\n })\n\n return dids.reduce((acc, did, i) => {\n const rels = res.relationships[i]\n if (viewer === did) {\n // ignore self-follows, self-mutes, self-blocks, self-activity-subscriptions\n return acc.set(did, {})\n }\n return acc.set(did, {\n muted: rels.muted ?? false,\n mutedByList: parseString(rels.mutedByList),\n blockedBy: parseString(rels.blockedBy),\n blocking: parseString(rels.blocking),\n blockedByList: parseString(rels.blockedByList),\n blockingByList: parseString(rels.blockingByList),\n following: parseString(rels.following),\n followedBy: parseString(rels.followedBy),\n })\n }, new HydrationMap<ProfileViewerState>())\n }\n\n async getKnownFollowers(\n dids: string[],\n viewer: string | null,\n ): Promise<KnownFollowersStates> {\n if (!viewer) return new HydrationMap<KnownFollowersState | undefined>()\n const { results: knownFollowersResults } = await this.dataplane\n .getFollowsFollowing(\n {\n actorDid: viewer,\n targetDids: dids,\n },\n {\n signal: AbortSignal.timeout(100),\n },\n )\n .catch(() => ({ results: [] }))\n return dids.reduce((acc, did, i) => {\n const result = knownFollowersResults[i]?.dids\n return acc.set(\n did,\n result && result.length > 0\n ? {\n count: result.length,\n followers: result.slice(0, 5),\n }\n : undefined,\n )\n }, new HydrationMap<KnownFollowersState | undefined>())\n }\n\n async getActivitySubscriptions(\n dids: string[],\n viewer: string | null,\n ): Promise<ActivitySubscriptionStates> {\n if (!viewer) {\n return new HydrationMap<ActivitySubscriptionState | undefined>()\n }\n\n const activitySubscription = (val: ActivitySubscription | undefined) => {\n if (!val) return undefined\n\n const result = {\n post: !!val.post,\n reply: !!val.reply,\n }\n if (!isActivitySubscriptionEnabled(result)) return undefined\n\n return result\n }\n\n const { subscriptions } = await this.dataplane\n .getActivitySubscriptionsByActorAndSubjects(\n { actorDid: viewer, subjectDids: dids },\n { signal: AbortSignal.timeout(100) },\n )\n .catch(() => ({ subscriptions: [] }))\n\n return dids.reduce((acc, did, i) => {\n return acc.set(did, activitySubscription(subscriptions[i]))\n }, new HydrationMap<ActivitySubscriptionState | undefined>())\n }\n\n async getProfileAggregates(dids: string[]): Promise<ProfileAggs> {\n if (!dids.length) return new HydrationMap<ProfileAgg>()\n const counts = await this.dataplane.getCountsForUsers({ dids })\n return dids.reduce((acc, did, i) => {\n return acc.set(did, {\n followers: counts.followers[i] ?? 0,\n follows: counts.following[i] ?? 0,\n posts: counts.posts[i] ?? 0,\n lists: counts.lists[i] ?? 0,\n feeds: counts.feeds[i] ?? 0,\n starterPacks: counts.starterPacks[i] ?? 0,\n })\n }, new HydrationMap<ProfileAgg>())\n }\n}\n"]}
@@ -13,7 +13,7 @@ export declare class HydrateCtx {
13
13
  labelers: ParsedLabelers;
14
14
  viewer: string | null;
15
15
  includeTakedowns: boolean | undefined;
16
- includeActorTakedowns: boolean | undefined;
16
+ overrideIncludeTakedownsForActor: boolean | undefined;
17
17
  include3pBlocks: boolean | undefined;
18
18
  includeDebugField: boolean | undefined;
19
19
  featureGates: CheckedFeatureGatesMap;
@@ -25,7 +25,7 @@ export type HydrateCtxVals = {
25
25
  labelers: ParsedLabelers;
26
26
  viewer: string | null;
27
27
  includeTakedowns?: boolean;
28
- includeActorTakedowns?: boolean;
28
+ overrideIncludeTakedownsForActor?: boolean;
29
29
  include3pBlocks?: boolean;
30
30
  includeDebugField?: boolean;
31
31
  featureGates?: CheckedFeatureGatesMap;
@@ -1 +1 @@
1
- {"version":3,"file":"hydrator.d.ts","sourceRoot":"","sources":["../../src/hydration/hydrator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hydrator.d.ts","sourceRoot":"","sources":["../../src/hydration/hydrator.ts"],"names":[],"mappings":"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"}
@@ -45,11 +45,11 @@ class HydrateCtx {
45
45
  writable: true,
46
46
  value: this.vals.includeTakedowns
47
47
  });
48
- Object.defineProperty(this, "includeActorTakedowns", {
48
+ Object.defineProperty(this, "overrideIncludeTakedownsForActor", {
49
49
  enumerable: true,
50
50
  configurable: true,
51
51
  writable: true,
52
- value: this.vals.includeActorTakedowns
52
+ value: this.vals.overrideIncludeTakedownsForActor
53
53
  });
54
54
  Object.defineProperty(this, "include3pBlocks", {
55
55
  enumerable: true,
@@ -159,10 +159,16 @@ class Hydrator {
159
159
  // - profile
160
160
  // - list basic
161
161
  async hydrateProfiles(dids, ctx) {
162
- const includeTakedowns = ctx.includeTakedowns || ctx.includeActorTakedowns;
162
+ /**
163
+ * Special case here, we want to include takedowns in special cases, like
164
+ * `getProfile`, since we throw client-facing errors later in the pipeline.
165
+ */
166
+ const includeTakedowns = ctx.includeTakedowns || ctx.overrideIncludeTakedownsForActor;
167
+ const includeTakedownsBase = ctx.includeTakedowns;
163
168
  const [actors, labels, profileViewersState] = await Promise.all([
164
169
  this.actor.getActors(dids, {
165
170
  includeTakedowns,
171
+ includeTakedownsBase,
166
172
  skipCacheForDids: ctx.skipCacheForViewer,
167
173
  }),
168
174
  this.label.getLabelsForSubjects(labelSubjectsForDid(dids), ctx.labelers),