@atproto/bsky 0.0.152 → 0.0.154

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (91) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/dist/api/app/bsky/unspecced/getPostThreadHiddenV2.js +2 -1
  3. package/dist/api/app/bsky/unspecced/getPostThreadHiddenV2.js.map +1 -1
  4. package/dist/api/com/atproto/repo/getRecord.d.ts.map +1 -1
  5. package/dist/api/com/atproto/repo/getRecord.js +1 -1
  6. package/dist/api/com/atproto/repo/getRecord.js.map +1 -1
  7. package/dist/config.d.ts +4 -0
  8. package/dist/config.d.ts.map +1 -1
  9. package/dist/config.js +10 -0
  10. package/dist/config.js.map +1 -1
  11. package/dist/data-plane/server/db/migrations/20250528T221913281Z-add-record-tags.d.ts +4 -0
  12. package/dist/data-plane/server/db/migrations/20250528T221913281Z-add-record-tags.d.ts.map +1 -0
  13. package/dist/data-plane/server/db/migrations/20250528T221913281Z-add-record-tags.js +11 -0
  14. package/dist/data-plane/server/db/migrations/20250528T221913281Z-add-record-tags.js.map +1 -0
  15. package/dist/data-plane/server/db/migrations/index.d.ts +1 -0
  16. package/dist/data-plane/server/db/migrations/index.d.ts.map +1 -1
  17. package/dist/data-plane/server/db/migrations/index.js +2 -1
  18. package/dist/data-plane/server/db/migrations/index.js.map +1 -1
  19. package/dist/data-plane/server/db/tables/record.d.ts +1 -0
  20. package/dist/data-plane/server/db/tables/record.d.ts.map +1 -1
  21. package/dist/data-plane/server/db/tables/record.js.map +1 -1
  22. package/dist/data-plane/server/routes/records.d.ts.map +1 -1
  23. package/dist/data-plane/server/routes/records.js +1 -0
  24. package/dist/data-plane/server/routes/records.js.map +1 -1
  25. package/dist/hydration/feed.d.ts +1 -0
  26. package/dist/hydration/feed.d.ts.map +1 -1
  27. package/dist/hydration/feed.js +2 -0
  28. package/dist/hydration/feed.js.map +1 -1
  29. package/dist/index.d.ts.map +1 -1
  30. package/dist/index.js +2 -0
  31. package/dist/index.js.map +1 -1
  32. package/dist/lexicon/lexicons.d.ts +112 -122
  33. package/dist/lexicon/lexicons.d.ts.map +1 -1
  34. package/dist/lexicon/lexicons.js +66 -66
  35. package/dist/lexicon/lexicons.js.map +1 -1
  36. package/dist/lexicon/types/app/bsky/unspecced/defs.d.ts +33 -0
  37. package/dist/lexicon/types/app/bsky/unspecced/defs.d.ts.map +1 -1
  38. package/dist/lexicon/types/app/bsky/unspecced/defs.js +36 -0
  39. package/dist/lexicon/types/app/bsky/unspecced/defs.js.map +1 -1
  40. package/dist/lexicon/types/app/bsky/unspecced/getPostThreadHiddenV2.d.ts +5 -13
  41. package/dist/lexicon/types/app/bsky/unspecced/getPostThreadHiddenV2.d.ts.map +1 -1
  42. package/dist/lexicon/types/app/bsky/unspecced/getPostThreadHiddenV2.js +0 -9
  43. package/dist/lexicon/types/app/bsky/unspecced/getPostThreadHiddenV2.js.map +1 -1
  44. package/dist/lexicon/types/app/bsky/unspecced/getPostThreadV2.d.ts +2 -29
  45. package/dist/lexicon/types/app/bsky/unspecced/getPostThreadV2.d.ts.map +1 -1
  46. package/dist/lexicon/types/app/bsky/unspecced/getPostThreadV2.js +0 -36
  47. package/dist/lexicon/types/app/bsky/unspecced/getPostThreadV2.js.map +1 -1
  48. package/dist/proto/bsky_pb.d.ts +4 -0
  49. package/dist/proto/bsky_pb.d.ts.map +1 -1
  50. package/dist/proto/bsky_pb.js +16 -0
  51. package/dist/proto/bsky_pb.js.map +1 -1
  52. package/dist/proto/bsync_connect.d.ts +19 -1
  53. package/dist/proto/bsync_connect.d.ts.map +1 -1
  54. package/dist/proto/bsync_connect.js +18 -0
  55. package/dist/proto/bsync_connect.js.map +1 -1
  56. package/dist/proto/bsync_pb.d.ts +150 -0
  57. package/dist/proto/bsync_pb.d.ts.map +1 -1
  58. package/dist/proto/bsync_pb.js +401 -1
  59. package/dist/proto/bsync_pb.js.map +1 -1
  60. package/dist/views/index.d.ts +6 -1
  61. package/dist/views/index.d.ts.map +1 -1
  62. package/dist/views/index.js +68 -27
  63. package/dist/views/index.js.map +1 -1
  64. package/dist/views/threads-v2.d.ts +9 -5
  65. package/dist/views/threads-v2.d.ts.map +1 -1
  66. package/dist/views/threads-v2.js +50 -25
  67. package/dist/views/threads-v2.js.map +1 -1
  68. package/package.json +7 -7
  69. package/proto/bsky.proto +1 -0
  70. package/src/api/app/bsky/unspecced/getPostThreadHiddenV2.ts +2 -1
  71. package/src/api/com/atproto/repo/getRecord.ts +4 -1
  72. package/src/config.ts +15 -0
  73. package/src/data-plane/server/db/migrations/20250528T221913281Z-add-record-tags.ts +9 -0
  74. package/src/data-plane/server/db/migrations/index.ts +1 -0
  75. package/src/data-plane/server/db/tables/record.ts +1 -0
  76. package/src/data-plane/server/routes/records.ts +1 -0
  77. package/src/hydration/feed.ts +3 -0
  78. package/src/index.ts +2 -0
  79. package/src/lexicon/lexicons.ts +72 -71
  80. package/src/lexicon/types/app/bsky/unspecced/defs.ts +73 -0
  81. package/src/lexicon/types/app/bsky/unspecced/getPostThreadHiddenV2.ts +5 -22
  82. package/src/lexicon/types/app/bsky/unspecced/getPostThreadV2.ts +5 -72
  83. package/src/proto/bsky_pb.ts +12 -0
  84. package/src/proto/bsync_connect.ts +22 -0
  85. package/src/proto/bsync_pb.ts +355 -0
  86. package/src/views/index.ts +102 -58
  87. package/src/views/threads-v2.ts +88 -60
  88. package/tests/seed/thread-v2.ts +131 -32
  89. package/tests/views/__snapshots__/thread-v2.test.ts.snap +69 -23
  90. package/tests/views/thread-v2.test.ts +173 -69
  91. package/tsconfig.build.tsbuildinfo +1 -1
@@ -1,24 +1,20 @@
1
1
  import assert from 'node:assert'
2
- import {
3
- AppBskyUnspeccedGetPostThreadHiddenV2,
4
- AppBskyUnspeccedGetPostThreadV2,
5
- AtpAgent,
6
- } from '@atproto/api'
2
+ import { AppBskyUnspeccedDefs, AtpAgent } from '@atproto/api'
7
3
  import { SeedClient, TestNetwork } from '@atproto/dev-env'
8
4
  import { ids } from '../../src/lexicon/lexicons'
9
- import {
10
- OutputSchema as OutputSchemaHiddenThread,
11
- ThreadHiddenItem,
12
- ThreadHiddenItemPost,
13
- } from '../../src/lexicon/types/app/bsky/unspecced/getPostThreadHiddenV2'
5
+ import { ThreadItemPost } from '../../src/lexicon/types/app/bsky/unspecced/defs'
6
+ import { OutputSchema as OutputSchemaHiddenThread } from '../../src/lexicon/types/app/bsky/unspecced/getPostThreadHiddenV2'
14
7
  import {
15
8
  OutputSchema as OutputSchemaThread,
16
9
  QueryParams as QueryParamsThread,
17
- ThreadItemPost,
18
10
  } from '../../src/lexicon/types/app/bsky/unspecced/getPostThreadV2'
19
- import { ThreadItemValuePost } from '../../src/views/threads-v2'
11
+ import {
12
+ ThreadHiddenItemValuePost,
13
+ ThreadItemValuePost,
14
+ } from '../../src/views/threads-v2'
20
15
  import { forSnapshot } from '../_util'
21
16
  import * as seeds from '../seed/thread-v2'
17
+ import { TAG_BUMP_DOWN, TAG_HIDE } from '../seed/thread-v2'
22
18
 
23
19
  type PostProps = Pick<ThreadItemPost, 'moreReplies' | 'opThread'>
24
20
  const props = (overrides: Partial<PostProps> = {}): PostProps => ({
@@ -28,7 +24,7 @@ const props = (overrides: Partial<PostProps> = {}): PostProps => ({
28
24
  })
29
25
 
30
26
  type PostPropsHidden = Pick<
31
- ThreadHiddenItemPost,
27
+ ThreadItemPost,
32
28
  'hiddenByThreadgate' | 'mutedByViewer'
33
29
  >
34
30
  const propsHidden = (
@@ -43,12 +39,14 @@ describe('appview thread views v2', () => {
43
39
  let network: TestNetwork
44
40
  let agent: AtpAgent
45
41
  let labelerDid: string
46
- let sc: SeedClient
42
+ let sc: SeedClient<TestNetwork>
47
43
 
48
44
  beforeAll(async () => {
49
45
  network = await TestNetwork.create({
50
46
  bsky: {
51
47
  maxThreadParents: 15,
48
+ threadTagsBumpDown: new Set([TAG_BUMP_DOWN]),
49
+ threadTagsHide: new Set([TAG_HIDE]),
52
50
  },
53
51
  dbPostgresSchema: 'bsky_views_thread_v_two',
54
52
  })
@@ -73,7 +71,7 @@ describe('appview thread views v2', () => {
73
71
  expect.objectContaining({
74
72
  depth: 0,
75
73
  value: {
76
- $type: 'app.bsky.unspecced.getPostThreadV2#threadItemNotFound',
74
+ $type: 'app.bsky.unspecced.defs#threadItemNotFound',
77
75
  },
78
76
  }),
79
77
  ])
@@ -1209,13 +1207,7 @@ describe('appview thread views v2', () => {
1209
1207
  let seed: Awaited<ReturnType<typeof seeds.blockDeletionAuth>>
1210
1208
 
1211
1209
  beforeAll(async () => {
1212
- seed = await seeds.blockDeletionAuth(sc)
1213
- await createLabel({
1214
- src: labelerDid,
1215
- uri: seed.users.auth.did,
1216
- cid: '',
1217
- val: '!no-unauthenticated',
1218
- })
1210
+ seed = await seeds.blockDeletionAuth(sc, labelerDid)
1219
1211
  await network.processAll()
1220
1212
  })
1221
1213
 
@@ -1262,7 +1254,7 @@ describe('appview thread views v2', () => {
1262
1254
  uri: seed.r['0'].ref.uriStr,
1263
1255
  depth: 0,
1264
1256
  value: expect.objectContaining({
1265
- $type: 'app.bsky.unspecced.getPostThreadV2#threadItemBlocked',
1257
+ $type: 'app.bsky.unspecced.defs#threadItemBlocked',
1266
1258
  }),
1267
1259
  }),
1268
1260
  ])
@@ -1287,14 +1279,14 @@ describe('appview thread views v2', () => {
1287
1279
  uri: seed.r['0'].ref.uriStr,
1288
1280
  depth: -1,
1289
1281
  value: expect.objectContaining({
1290
- $type: 'app.bsky.unspecced.getPostThreadV2#threadItemBlocked',
1282
+ $type: 'app.bsky.unspecced.defs#threadItemBlocked',
1291
1283
  }),
1292
1284
  }),
1293
1285
  expect.objectContaining({
1294
1286
  uri: seed.r['0.0'].ref.uriStr,
1295
1287
  depth: 0,
1296
1288
  value: expect.objectContaining({
1297
- $type: 'app.bsky.unspecced.getPostThreadV2#threadItemPost',
1289
+ $type: 'app.bsky.unspecced.defs#threadItemPost',
1298
1290
  }),
1299
1291
  }),
1300
1292
  ])
@@ -1346,14 +1338,14 @@ describe('appview thread views v2', () => {
1346
1338
  uri: seed.root.ref.uriStr,
1347
1339
  depth: -1,
1348
1340
  value: expect.objectContaining({
1349
- $type: 'app.bsky.unspecced.getPostThreadV2#threadItemBlocked',
1341
+ $type: 'app.bsky.unspecced.defs#threadItemBlocked',
1350
1342
  }),
1351
1343
  }),
1352
1344
  expect.objectContaining({
1353
1345
  uri: seed.r['1'].ref.uriStr,
1354
1346
  depth: 0,
1355
1347
  value: expect.objectContaining({
1356
- $type: 'app.bsky.unspecced.getPostThreadV2#threadItemPost',
1348
+ $type: 'app.bsky.unspecced.defs#threadItemPost',
1357
1349
  }),
1358
1350
  }),
1359
1351
  // 1.0 is blocked, but 1.1 is not
@@ -1361,7 +1353,7 @@ describe('appview thread views v2', () => {
1361
1353
  uri: seed.r['1.1'].ref.uriStr,
1362
1354
  depth: 1,
1363
1355
  value: expect.objectContaining({
1364
- $type: 'app.bsky.unspecced.getPostThreadV2#threadItemPost',
1356
+ $type: 'app.bsky.unspecced.defs#threadItemPost',
1365
1357
  }),
1366
1358
  }),
1367
1359
  ])
@@ -1386,14 +1378,14 @@ describe('appview thread views v2', () => {
1386
1378
  uri: seed.r['1'].ref.uriStr,
1387
1379
  depth: -1,
1388
1380
  value: expect.objectContaining({
1389
- $type: 'app.bsky.unspecced.getPostThreadV2#threadItemBlocked',
1381
+ $type: 'app.bsky.unspecced.defs#threadItemBlocked',
1390
1382
  }),
1391
1383
  }),
1392
1384
  expect.objectContaining({
1393
1385
  uri: seed.r['1.0'].ref.uriStr,
1394
1386
  depth: 0,
1395
1387
  value: expect.objectContaining({
1396
- $type: 'app.bsky.unspecced.getPostThreadV2#threadItemPost',
1388
+ $type: 'app.bsky.unspecced.defs#threadItemPost',
1397
1389
  }),
1398
1390
  }),
1399
1391
  ])
@@ -1418,21 +1410,21 @@ describe('appview thread views v2', () => {
1418
1410
  uri: seed.root.ref.uriStr,
1419
1411
  depth: -2,
1420
1412
  value: expect.objectContaining({
1421
- $type: 'app.bsky.unspecced.getPostThreadV2#threadItemBlocked',
1413
+ $type: 'app.bsky.unspecced.defs#threadItemBlocked',
1422
1414
  }),
1423
1415
  }),
1424
1416
  expect.objectContaining({
1425
1417
  uri: seed.r['1'].ref.uriStr,
1426
1418
  depth: -1,
1427
1419
  value: expect.objectContaining({
1428
- $type: 'app.bsky.unspecced.getPostThreadV2#threadItemPost',
1420
+ $type: 'app.bsky.unspecced.defs#threadItemPost',
1429
1421
  }),
1430
1422
  }),
1431
1423
  expect.objectContaining({
1432
1424
  uri: seed.r['1.1'].ref.uriStr,
1433
1425
  depth: 0,
1434
1426
  value: expect.objectContaining({
1435
- $type: 'app.bsky.unspecced.getPostThreadV2#threadItemPost',
1427
+ $type: 'app.bsky.unspecced.defs#threadItemPost',
1436
1428
  }),
1437
1429
  }),
1438
1430
  ])
@@ -1482,14 +1474,14 @@ describe('appview thread views v2', () => {
1482
1474
  uri: seed.r['2'].ref.uriStr,
1483
1475
  depth: -1,
1484
1476
  value: expect.objectContaining({
1485
- $type: 'app.bsky.unspecced.getPostThreadV2#threadItemNotFound',
1477
+ $type: 'app.bsky.unspecced.defs#threadItemNotFound',
1486
1478
  }),
1487
1479
  }),
1488
1480
  expect.objectContaining({
1489
1481
  uri: seed.r['2.0'].ref.uriStr,
1490
1482
  depth: 0,
1491
1483
  value: expect.objectContaining({
1492
- $type: 'app.bsky.unspecced.getPostThreadV2#threadItemPost',
1484
+ $type: 'app.bsky.unspecced.defs#threadItemPost',
1493
1485
  }),
1494
1486
  }),
1495
1487
  ])
@@ -1514,21 +1506,21 @@ describe('appview thread views v2', () => {
1514
1506
  uri: seed.root.ref.uriStr,
1515
1507
  depth: 0,
1516
1508
  value: expect.objectContaining({
1517
- $type: 'app.bsky.unspecced.getPostThreadV2#threadItemPost',
1509
+ $type: 'app.bsky.unspecced.defs#threadItemPost',
1518
1510
  }),
1519
1511
  }),
1520
1512
  expect.objectContaining({
1521
1513
  uri: seed.r['0'].ref.uriStr,
1522
1514
  depth: 1,
1523
1515
  value: expect.objectContaining({
1524
- $type: 'app.bsky.unspecced.getPostThreadV2#threadItemPost',
1516
+ $type: 'app.bsky.unspecced.defs#threadItemPost',
1525
1517
  }),
1526
1518
  }),
1527
1519
  expect.objectContaining({
1528
1520
  uri: seed.r['0.0'].ref.uriStr,
1529
1521
  depth: 2,
1530
1522
  value: expect.objectContaining({
1531
- $type: 'app.bsky.unspecced.getPostThreadV2#threadItemPost',
1523
+ $type: 'app.bsky.unspecced.defs#threadItemPost',
1532
1524
  }),
1533
1525
  }),
1534
1526
  ])
@@ -1551,15 +1543,14 @@ describe('appview thread views v2', () => {
1551
1543
  uri: seed.root.ref.uriStr,
1552
1544
  depth: -1,
1553
1545
  value: expect.objectContaining({
1554
- $type: 'app.bsky.unspecced.getPostThreadV2#threadItemPost',
1546
+ $type: 'app.bsky.unspecced.defs#threadItemPost',
1555
1547
  }),
1556
1548
  }),
1557
1549
  expect.objectContaining({
1558
1550
  uri: seed.r['3'].ref.uriStr,
1559
1551
  depth: 0,
1560
1552
  value: expect.objectContaining({
1561
- $type:
1562
- 'app.bsky.unspecced.getPostThreadV2#threadItemNoUnauthenticated',
1553
+ $type: 'app.bsky.unspecced.defs#threadItemNoUnauthenticated',
1563
1554
  }),
1564
1555
  }),
1565
1556
  ])
@@ -1582,30 +1573,28 @@ describe('appview thread views v2', () => {
1582
1573
  uri: seed.root.ref.uriStr,
1583
1574
  depth: -3,
1584
1575
  value: expect.objectContaining({
1585
- $type: 'app.bsky.unspecced.getPostThreadV2#threadItemPost',
1576
+ $type: 'app.bsky.unspecced.defs#threadItemPost',
1586
1577
  }),
1587
1578
  }),
1588
1579
  expect.objectContaining({
1589
1580
  uri: seed.r['3'].ref.uriStr,
1590
1581
  depth: -2,
1591
1582
  value: expect.objectContaining({
1592
- $type:
1593
- 'app.bsky.unspecced.getPostThreadV2#threadItemNoUnauthenticated',
1583
+ $type: 'app.bsky.unspecced.defs#threadItemNoUnauthenticated',
1594
1584
  }),
1595
1585
  }),
1596
1586
  expect.objectContaining({
1597
1587
  uri: seed.r['3.0'].ref.uriStr,
1598
1588
  depth: -1,
1599
1589
  value: expect.objectContaining({
1600
- $type:
1601
- 'app.bsky.unspecced.getPostThreadV2#threadItemNoUnauthenticated',
1590
+ $type: 'app.bsky.unspecced.defs#threadItemNoUnauthenticated',
1602
1591
  }),
1603
1592
  }),
1604
1593
  expect.objectContaining({
1605
1594
  uri: seed.r['3.0.0'].ref.uriStr,
1606
1595
  depth: 0,
1607
1596
  value: expect.objectContaining({
1608
- $type: 'app.bsky.unspecced.getPostThreadV2#threadItemPost',
1597
+ $type: 'app.bsky.unspecced.defs#threadItemPost',
1609
1598
  }),
1610
1599
  }),
1611
1600
  ])
@@ -1964,26 +1953,141 @@ describe('appview thread views v2', () => {
1964
1953
  })
1965
1954
  })
1966
1955
 
1967
- const createLabel = async (opts: {
1968
- src?: string
1969
- uri: string
1970
- cid: string
1971
- val: string
1972
- exp?: string
1973
- }) => {
1974
- await network.bsky.db.db
1975
- .insertInto('label')
1976
- .values({
1977
- uri: opts.uri,
1978
- cid: opts.cid,
1979
- val: opts.val,
1980
- cts: new Date().toISOString(),
1981
- exp: opts.exp ?? null,
1982
- neg: false,
1983
- src: opts.src ?? labelerDid,
1956
+ describe('tags', () => {
1957
+ let seed: Awaited<ReturnType<typeof seeds.tags>>
1958
+
1959
+ beforeAll(async () => {
1960
+ seed = await seeds.tags(sc)
1961
+ await network.processAll()
1962
+ })
1963
+
1964
+ describe('when prioritizing followed users', () => {
1965
+ const prioritizeFollowedUsers = true
1966
+
1967
+ it('considers tags for bumping down and hiding', async () => {
1968
+ const { data } = await agent.app.bsky.unspecced.getPostThreadV2(
1969
+ {
1970
+ anchor: seed.root.ref.uriStr,
1971
+ sort: 'newest',
1972
+ prioritizeFollowedUsers,
1973
+ },
1974
+ {
1975
+ headers: await network.serviceHeaders(
1976
+ seed.users.viewer.did,
1977
+ ids.AppBskyUnspeccedGetPostThreadV2,
1978
+ ),
1979
+ },
1980
+ )
1981
+ const { thread: t, hasHiddenReplies } = data
1982
+
1983
+ expect(hasHiddenReplies).toBe(true)
1984
+ assertPosts(t)
1985
+ expect(t).toEqual([
1986
+ expect.objectContaining({ uri: seed.root.ref.uriStr }),
1987
+ // OP (down overridden).
1988
+ expect.objectContaining({ uri: seed.r['3'].ref.uriStr }),
1989
+ // Viewer (hide overridden).
1990
+ expect.objectContaining({ uri: seed.r['4'].ref.uriStr }),
1991
+ // Following (hide overridden).
1992
+ expect.objectContaining({ uri: seed.r['5'].ref.uriStr }),
1993
+ // Fot following.
1994
+ expect.objectContaining({ uri: seed.r['0'].ref.uriStr }),
1995
+ expect.objectContaining({ uri: seed.r['0.0'].ref.uriStr }),
1996
+ expect.objectContaining({ uri: seed.r['0.1'].ref.uriStr }),
1997
+ // Down.
1998
+ expect.objectContaining({ uri: seed.r['1'].ref.uriStr }),
1999
+ expect.objectContaining({ uri: seed.r['1.0'].ref.uriStr }),
2000
+ expect.objectContaining({ uri: seed.r['1.1'].ref.uriStr }),
2001
+ ])
2002
+ })
2003
+
2004
+ it('finds the hidden by tag', async () => {
2005
+ const { data } = await agent.app.bsky.unspecced.getPostThreadHiddenV2(
2006
+ {
2007
+ anchor: seed.root.ref.uriStr,
2008
+ prioritizeFollowedUsers,
2009
+ },
2010
+ {
2011
+ headers: await network.serviceHeaders(
2012
+ seed.users.viewer.did,
2013
+ ids.AppBskyUnspeccedGetPostThreadHiddenV2,
2014
+ ),
2015
+ },
2016
+ )
2017
+ const { thread: t } = data
2018
+
2019
+ assertHiddenPosts(t)
2020
+ expect(t).toEqual([
2021
+ // Hide.
2022
+ expect.objectContaining({ uri: seed.r['2'].ref.uriStr }),
2023
+ ])
1984
2024
  })
1985
- .execute()
1986
- }
2025
+ })
2026
+
2027
+ describe('when not prioritizing followed users', () => {
2028
+ const prioritizeFollowedUsers = false
2029
+
2030
+ it('considers tags for bumping down and hiding', async () => {
2031
+ const { data } = await agent.app.bsky.unspecced.getPostThreadV2(
2032
+ {
2033
+ anchor: seed.root.ref.uriStr,
2034
+ sort: 'newest',
2035
+ prioritizeFollowedUsers,
2036
+ },
2037
+ {
2038
+ headers: await network.serviceHeaders(
2039
+ seed.users.viewer.did,
2040
+ ids.AppBskyUnspeccedGetPostThreadV2,
2041
+ ),
2042
+ },
2043
+ )
2044
+ const { thread: t, hasHiddenReplies } = data
2045
+
2046
+ expect(hasHiddenReplies).toBe(true)
2047
+ assertPosts(t)
2048
+ expect(t).toEqual([
2049
+ expect.objectContaining({ uri: seed.root.ref.uriStr }),
2050
+ // OP (down overridden).
2051
+ expect.objectContaining({ uri: seed.r['3'].ref.uriStr }),
2052
+ // Viewer (hide overriden).
2053
+ expect.objectContaining({ uri: seed.r['4'].ref.uriStr }),
2054
+ // Following was hidden because not prioritizing.
2055
+ // Not following.
2056
+ expect.objectContaining({ uri: seed.r['0'].ref.uriStr }),
2057
+ expect.objectContaining({ uri: seed.r['0.0'].ref.uriStr }),
2058
+ expect.objectContaining({ uri: seed.r['0.1'].ref.uriStr }),
2059
+ // Down.
2060
+ expect.objectContaining({ uri: seed.r['1'].ref.uriStr }),
2061
+ expect.objectContaining({ uri: seed.r['1.0'].ref.uriStr }),
2062
+ expect.objectContaining({ uri: seed.r['1.1'].ref.uriStr }),
2063
+ ])
2064
+ })
2065
+
2066
+ it('finds the hidden by tag', async () => {
2067
+ const { data } = await agent.app.bsky.unspecced.getPostThreadHiddenV2(
2068
+ {
2069
+ anchor: seed.root.ref.uriStr,
2070
+ prioritizeFollowedUsers,
2071
+ },
2072
+ {
2073
+ headers: await network.serviceHeaders(
2074
+ seed.users.viewer.did,
2075
+ ids.AppBskyUnspeccedGetPostThreadHiddenV2,
2076
+ ),
2077
+ },
2078
+ )
2079
+ const { thread: t } = data
2080
+
2081
+ assertHiddenPosts(t)
2082
+ expect(t).toEqual([
2083
+ // Following (hide).
2084
+ expect.objectContaining({ uri: seed.r['5'].ref.uriStr }),
2085
+ // Hide.
2086
+ expect.objectContaining({ uri: seed.r['2'].ref.uriStr }),
2087
+ ])
2088
+ })
2089
+ })
2090
+ })
1987
2091
  })
1988
2092
 
1989
2093
  function assertPosts(
@@ -1991,7 +2095,7 @@ function assertPosts(
1991
2095
  ): asserts t is ThreadItemValuePost[] {
1992
2096
  t.forEach((i) => {
1993
2097
  assert(
1994
- AppBskyUnspeccedGetPostThreadV2.isThreadItemPost(i.value),
2098
+ AppBskyUnspeccedDefs.isThreadItemPost(i.value),
1995
2099
  `Expected thread item to have a post as value`,
1996
2100
  )
1997
2101
  })
@@ -1999,10 +2103,10 @@ function assertPosts(
1999
2103
 
2000
2104
  function assertHiddenPosts(
2001
2105
  t: OutputSchemaHiddenThread['thread'],
2002
- ): asserts t is ThreadHiddenItem[] {
2106
+ ): asserts t is ThreadHiddenItemValuePost[] {
2003
2107
  t.forEach((i) => {
2004
2108
  assert(
2005
- AppBskyUnspeccedGetPostThreadHiddenV2.isThreadHiddenItemPost(i.value),
2109
+ AppBskyUnspeccedDefs.isThreadItemPost(i.value),
2006
2110
  `Expected thread item to have a hidden post as value`,
2007
2111
  )
2008
2112
  })
@@ -1 +1 @@
1
- {"root":["./src/auth-verifier.ts","./src/bsync.ts","./src/config.ts","./src/context.ts","./src/courier.ts","./src/error.ts","./src/etcd.ts","./src/feature-gates.ts","./src/index.ts","./src/logger.ts","./src/pipeline.ts","./src/redis.ts","./src/util.ts","./src/api/blob-dispatcher.ts","./src/api/blob-resolver.ts","./src/api/health.ts","./src/api/index.ts","./src/api/util.ts","./src/api/well-known.ts","./src/api/app/bsky/actor/getProfile.ts","./src/api/app/bsky/actor/getProfiles.ts","./src/api/app/bsky/actor/getSuggestions.ts","./src/api/app/bsky/actor/searchActors.ts","./src/api/app/bsky/actor/searchActorsTypeahead.ts","./src/api/app/bsky/feed/getActorFeeds.ts","./src/api/app/bsky/feed/getActorLikes.ts","./src/api/app/bsky/feed/getAuthorFeed.ts","./src/api/app/bsky/feed/getFeed.ts","./src/api/app/bsky/feed/getFeedGenerator.ts","./src/api/app/bsky/feed/getFeedGenerators.ts","./src/api/app/bsky/feed/getLikes.ts","./src/api/app/bsky/feed/getListFeed.ts","./src/api/app/bsky/feed/getPostThread.ts","./src/api/app/bsky/feed/getPosts.ts","./src/api/app/bsky/feed/getQuotes.ts","./src/api/app/bsky/feed/getRepostedBy.ts","./src/api/app/bsky/feed/getSuggestedFeeds.ts","./src/api/app/bsky/feed/getTimeline.ts","./src/api/app/bsky/feed/searchPosts.ts","./src/api/app/bsky/graph/getActorStarterPacks.ts","./src/api/app/bsky/graph/getBlocks.ts","./src/api/app/bsky/graph/getFollowers.ts","./src/api/app/bsky/graph/getFollows.ts","./src/api/app/bsky/graph/getKnownFollowers.ts","./src/api/app/bsky/graph/getList.ts","./src/api/app/bsky/graph/getListBlocks.ts","./src/api/app/bsky/graph/getListMutes.ts","./src/api/app/bsky/graph/getLists.ts","./src/api/app/bsky/graph/getMutes.ts","./src/api/app/bsky/graph/getRelationships.ts","./src/api/app/bsky/graph/getStarterPack.ts","./src/api/app/bsky/graph/getStarterPacks.ts","./src/api/app/bsky/graph/getSuggestedFollowsByActor.ts","./src/api/app/bsky/graph/muteActor.ts","./src/api/app/bsky/graph/muteActorList.ts","./src/api/app/bsky/graph/muteThread.ts","./src/api/app/bsky/graph/searchStarterPacks.ts","./src/api/app/bsky/graph/unmuteActor.ts","./src/api/app/bsky/graph/unmuteActorList.ts","./src/api/app/bsky/graph/unmuteThread.ts","./src/api/app/bsky/labeler/getServices.ts","./src/api/app/bsky/notification/getUnreadCount.ts","./src/api/app/bsky/notification/listNotifications.ts","./src/api/app/bsky/notification/putPreferences.ts","./src/api/app/bsky/notification/registerPush.ts","./src/api/app/bsky/notification/updateSeen.ts","./src/api/app/bsky/unspecced/getConfig.ts","./src/api/app/bsky/unspecced/getPopularFeedGenerators.ts","./src/api/app/bsky/unspecced/getPostThreadHiddenV2.ts","./src/api/app/bsky/unspecced/getPostThreadV2.ts","./src/api/app/bsky/unspecced/getSuggestedFeeds.ts","./src/api/app/bsky/unspecced/getSuggestedStarterPacks.ts","./src/api/app/bsky/unspecced/getSuggestedUsers.ts","./src/api/app/bsky/unspecced/getTaggedSuggestions.ts","./src/api/app/bsky/unspecced/getTrendingTopics.ts","./src/api/app/bsky/unspecced/getTrends.ts","./src/api/com/atproto/admin/getAccountInfos.ts","./src/api/com/atproto/admin/getSubjectStatus.ts","./src/api/com/atproto/admin/updateSubjectStatus.ts","./src/api/com/atproto/identity/resolveHandle.ts","./src/api/com/atproto/label/queryLabels.ts","./src/api/com/atproto/repo/getRecord.ts","./src/api/com/atproto/temp/fetchLabels.ts","./src/cache/read-through.ts","./src/data-plane/index.ts","./src/data-plane/bsync/index.ts","./src/data-plane/client/hosts.ts","./src/data-plane/client/index.ts","./src/data-plane/client/util.ts","./src/data-plane/server/background.ts","./src/data-plane/server/index.ts","./src/data-plane/server/subscription.ts","./src/data-plane/server/util.ts","./src/data-plane/server/db/database-schema.ts","./src/data-plane/server/db/db.ts","./src/data-plane/server/db/index.ts","./src/data-plane/server/db/pagination.ts","./src/data-plane/server/db/types.ts","./src/data-plane/server/db/util.ts","./src/data-plane/server/db/migrations/20230309T045948368Z-init.ts","./src/data-plane/server/db/migrations/20230408T152211201Z-notification-init.ts","./src/data-plane/server/db/migrations/20230417T210628672Z-moderation-init.ts","./src/data-plane/server/db/migrations/20230420T211446071Z-did-cache.ts","./src/data-plane/server/db/migrations/20230427T194702079Z-notif-record-index.ts","./src/data-plane/server/db/migrations/20230605T144730094Z-post-profile-aggs.ts","./src/data-plane/server/db/migrations/20230607T211442112Z-feed-generator-init.ts","./src/data-plane/server/db/migrations/20230608T155101190Z-algo-whats-hot-view.ts","./src/data-plane/server/db/migrations/20230608T201813132Z-mute-lists.ts","./src/data-plane/server/db/migrations/20230608T205147239Z-mutes.ts","./src/data-plane/server/db/migrations/20230609T153623961Z-blocks.ts","./src/data-plane/server/db/migrations/20230609T232122649Z-actor-deletion-indexes.ts","./src/data-plane/server/db/migrations/20230610T203555962Z-suggested-follows.ts","./src/data-plane/server/db/migrations/20230611T215300060Z-actor-state.ts","./src/data-plane/server/db/migrations/20230620T161134972Z-post-langs.ts","./src/data-plane/server/db/migrations/20230627T212437895Z-optional-handle.ts","./src/data-plane/server/db/migrations/20230629T220835893Z-remove-post-hierarchy.ts","./src/data-plane/server/db/migrations/20230703T045536691Z-feed-and-label-indices.ts","./src/data-plane/server/db/migrations/20230720T164800037Z-posts-cursor-idx.ts","./src/data-plane/server/db/migrations/20230807T035309811Z-feed-item-delete-invite-for-user-idx.ts","./src/data-plane/server/db/migrations/20230808T172902639Z-repo-rev.ts","./src/data-plane/server/db/migrations/20230810T203349843Z-action-duration.ts","./src/data-plane/server/db/migrations/20230817T195936007Z-native-notifications.ts","./src/data-plane/server/db/migrations/20230830T205507322Z-suggested-feeds.ts","./src/data-plane/server/db/migrations/20230904T211011773Z-block-lists.ts","./src/data-plane/server/db/migrations/20230906T222220386Z-thread-gating.ts","./src/data-plane/server/db/migrations/20230920T213858047Z-add-tags-to-post.ts","./src/data-plane/server/db/migrations/20230929T192920807Z-record-cursor-indexes.ts","./src/data-plane/server/db/migrations/20231003T202833377Z-create-moderation-subject-status.ts","./src/data-plane/server/db/migrations/20231220T225126090Z-blob-takedowns.ts","./src/data-plane/server/db/migrations/20240124T023719200Z-tagged-suggestions.ts","./src/data-plane/server/db/migrations/20240226T225725627Z-labelers.ts","./src/data-plane/server/db/migrations/20240530T170337073Z-account-deactivation.ts","./src/data-plane/server/db/migrations/20240606T171229898Z-thread-mutes.ts","./src/data-plane/server/db/migrations/20240606T222548219Z-starter-packs.ts","./src/data-plane/server/db/migrations/20240719T203853939Z-priority-notifs.ts","./src/data-plane/server/db/migrations/20240723T220700077Z-quotes-post-aggs.ts","./src/data-plane/server/db/migrations/20240723T220703655Z-quotes.ts","./src/data-plane/server/db/migrations/20240801T193939827Z-post-gate.ts","./src/data-plane/server/db/migrations/20240808T224251220Z-post-gate-flags.ts","./src/data-plane/server/db/migrations/20240829T211238293Z-simplify-actor-sync.ts","./src/data-plane/server/db/migrations/20240831T134810923Z-pinned-posts.ts","./src/data-plane/server/db/migrations/20241114T153108102Z-add-starter-packs-name.ts","./src/data-plane/server/db/migrations/20250116T222618297Z-post-embed-video.ts","./src/data-plane/server/db/migrations/20250207T174822012Z-add-label-exp.ts","./src/data-plane/server/db/migrations/20250404T163421487Z-verifications.ts","./src/data-plane/server/db/migrations/20250526T023712742Z-like-repost-via.ts","./src/data-plane/server/db/migrations/index.ts","./src/data-plane/server/db/migrations/provider.ts","./src/data-plane/server/db/tables/actor-block.ts","./src/data-plane/server/db/tables/actor-state.ts","./src/data-plane/server/db/tables/actor-sync.ts","./src/data-plane/server/db/tables/actor.ts","./src/data-plane/server/db/tables/algo.ts","./src/data-plane/server/db/tables/blob-takedown.ts","./src/data-plane/server/db/tables/did-cache.ts","./src/data-plane/server/db/tables/duplicate-record.ts","./src/data-plane/server/db/tables/feed-generator.ts","./src/data-plane/server/db/tables/feed-item.ts","./src/data-plane/server/db/tables/follow.ts","./src/data-plane/server/db/tables/label.ts","./src/data-plane/server/db/tables/labeler.ts","./src/data-plane/server/db/tables/like.ts","./src/data-plane/server/db/tables/list-block.ts","./src/data-plane/server/db/tables/list-item.ts","./src/data-plane/server/db/tables/list-mute.ts","./src/data-plane/server/db/tables/list.ts","./src/data-plane/server/db/tables/mute.ts","./src/data-plane/server/db/tables/notification-push-token.ts","./src/data-plane/server/db/tables/notification.ts","./src/data-plane/server/db/tables/post-agg.ts","./src/data-plane/server/db/tables/post-embed.ts","./src/data-plane/server/db/tables/post-gate.ts","./src/data-plane/server/db/tables/post.ts","./src/data-plane/server/db/tables/profile-agg.ts","./src/data-plane/server/db/tables/profile.ts","./src/data-plane/server/db/tables/quote.ts","./src/data-plane/server/db/tables/record.ts","./src/data-plane/server/db/tables/repost.ts","./src/data-plane/server/db/tables/starter-pack.ts","./src/data-plane/server/db/tables/subscription.ts","./src/data-plane/server/db/tables/suggested-feed.ts","./src/data-plane/server/db/tables/suggested-follow.ts","./src/data-plane/server/db/tables/tagged-suggestion.ts","./src/data-plane/server/db/tables/thread-gate.ts","./src/data-plane/server/db/tables/thread-mute.ts","./src/data-plane/server/db/tables/verification.ts","./src/data-plane/server/db/tables/view-param.ts","./src/data-plane/server/indexing/index.ts","./src/data-plane/server/indexing/processor.ts","./src/data-plane/server/indexing/plugins/block.ts","./src/data-plane/server/indexing/plugins/chat-declaration.ts","./src/data-plane/server/indexing/plugins/feed-generator.ts","./src/data-plane/server/indexing/plugins/follow.ts","./src/data-plane/server/indexing/plugins/labeler.ts","./src/data-plane/server/indexing/plugins/like.ts","./src/data-plane/server/indexing/plugins/list-block.ts","./src/data-plane/server/indexing/plugins/list-item.ts","./src/data-plane/server/indexing/plugins/list.ts","./src/data-plane/server/indexing/plugins/post-gate.ts","./src/data-plane/server/indexing/plugins/post.ts","./src/data-plane/server/indexing/plugins/profile.ts","./src/data-plane/server/indexing/plugins/repost.ts","./src/data-plane/server/indexing/plugins/starter-pack.ts","./src/data-plane/server/indexing/plugins/status.ts","./src/data-plane/server/indexing/plugins/thread-gate.ts","./src/data-plane/server/indexing/plugins/verification.ts","./src/data-plane/server/routes/blocks.ts","./src/data-plane/server/routes/feed-gens.ts","./src/data-plane/server/routes/feeds.ts","./src/data-plane/server/routes/follows.ts","./src/data-plane/server/routes/identity.ts","./src/data-plane/server/routes/index.ts","./src/data-plane/server/routes/interactions.ts","./src/data-plane/server/routes/labels.ts","./src/data-plane/server/routes/likes.ts","./src/data-plane/server/routes/lists.ts","./src/data-plane/server/routes/moderation.ts","./src/data-plane/server/routes/mutes.ts","./src/data-plane/server/routes/notifs.ts","./src/data-plane/server/routes/profile.ts","./src/data-plane/server/routes/quotes.ts","./src/data-plane/server/routes/records.ts","./src/data-plane/server/routes/relationships.ts","./src/data-plane/server/routes/reposts.ts","./src/data-plane/server/routes/search.ts","./src/data-plane/server/routes/starter-packs.ts","./src/data-plane/server/routes/suggestions.ts","./src/data-plane/server/routes/sync.ts","./src/data-plane/server/routes/threads.ts","./src/hydration/actor.ts","./src/hydration/feed.ts","./src/hydration/graph.ts","./src/hydration/hydrator.ts","./src/hydration/label.ts","./src/hydration/util.ts","./src/image/index.ts","./src/image/invalidator.ts","./src/image/logger.ts","./src/image/server.ts","./src/image/sharp.ts","./src/image/uri.ts","./src/image/util.ts","./src/lexicon/index.ts","./src/lexicon/lexicons.ts","./src/lexicon/util.ts","./src/lexicon/types/app/bsky/actor/defs.ts","./src/lexicon/types/app/bsky/actor/getPreferences.ts","./src/lexicon/types/app/bsky/actor/getProfile.ts","./src/lexicon/types/app/bsky/actor/getProfiles.ts","./src/lexicon/types/app/bsky/actor/getSuggestions.ts","./src/lexicon/types/app/bsky/actor/profile.ts","./src/lexicon/types/app/bsky/actor/putPreferences.ts","./src/lexicon/types/app/bsky/actor/searchActors.ts","./src/lexicon/types/app/bsky/actor/searchActorsTypeahead.ts","./src/lexicon/types/app/bsky/actor/status.ts","./src/lexicon/types/app/bsky/embed/defs.ts","./src/lexicon/types/app/bsky/embed/external.ts","./src/lexicon/types/app/bsky/embed/images.ts","./src/lexicon/types/app/bsky/embed/record.ts","./src/lexicon/types/app/bsky/embed/recordWithMedia.ts","./src/lexicon/types/app/bsky/embed/video.ts","./src/lexicon/types/app/bsky/feed/defs.ts","./src/lexicon/types/app/bsky/feed/describeFeedGenerator.ts","./src/lexicon/types/app/bsky/feed/generator.ts","./src/lexicon/types/app/bsky/feed/getActorFeeds.ts","./src/lexicon/types/app/bsky/feed/getActorLikes.ts","./src/lexicon/types/app/bsky/feed/getAuthorFeed.ts","./src/lexicon/types/app/bsky/feed/getFeed.ts","./src/lexicon/types/app/bsky/feed/getFeedGenerator.ts","./src/lexicon/types/app/bsky/feed/getFeedGenerators.ts","./src/lexicon/types/app/bsky/feed/getFeedSkeleton.ts","./src/lexicon/types/app/bsky/feed/getLikes.ts","./src/lexicon/types/app/bsky/feed/getListFeed.ts","./src/lexicon/types/app/bsky/feed/getPostThread.ts","./src/lexicon/types/app/bsky/feed/getPosts.ts","./src/lexicon/types/app/bsky/feed/getQuotes.ts","./src/lexicon/types/app/bsky/feed/getRepostedBy.ts","./src/lexicon/types/app/bsky/feed/getSuggestedFeeds.ts","./src/lexicon/types/app/bsky/feed/getTimeline.ts","./src/lexicon/types/app/bsky/feed/like.ts","./src/lexicon/types/app/bsky/feed/post.ts","./src/lexicon/types/app/bsky/feed/postgate.ts","./src/lexicon/types/app/bsky/feed/repost.ts","./src/lexicon/types/app/bsky/feed/searchPosts.ts","./src/lexicon/types/app/bsky/feed/sendInteractions.ts","./src/lexicon/types/app/bsky/feed/threadgate.ts","./src/lexicon/types/app/bsky/graph/block.ts","./src/lexicon/types/app/bsky/graph/defs.ts","./src/lexicon/types/app/bsky/graph/follow.ts","./src/lexicon/types/app/bsky/graph/getActorStarterPacks.ts","./src/lexicon/types/app/bsky/graph/getBlocks.ts","./src/lexicon/types/app/bsky/graph/getFollowers.ts","./src/lexicon/types/app/bsky/graph/getFollows.ts","./src/lexicon/types/app/bsky/graph/getKnownFollowers.ts","./src/lexicon/types/app/bsky/graph/getList.ts","./src/lexicon/types/app/bsky/graph/getListBlocks.ts","./src/lexicon/types/app/bsky/graph/getListMutes.ts","./src/lexicon/types/app/bsky/graph/getLists.ts","./src/lexicon/types/app/bsky/graph/getMutes.ts","./src/lexicon/types/app/bsky/graph/getRelationships.ts","./src/lexicon/types/app/bsky/graph/getStarterPack.ts","./src/lexicon/types/app/bsky/graph/getStarterPacks.ts","./src/lexicon/types/app/bsky/graph/getSuggestedFollowsByActor.ts","./src/lexicon/types/app/bsky/graph/list.ts","./src/lexicon/types/app/bsky/graph/listblock.ts","./src/lexicon/types/app/bsky/graph/listitem.ts","./src/lexicon/types/app/bsky/graph/muteActor.ts","./src/lexicon/types/app/bsky/graph/muteActorList.ts","./src/lexicon/types/app/bsky/graph/muteThread.ts","./src/lexicon/types/app/bsky/graph/searchStarterPacks.ts","./src/lexicon/types/app/bsky/graph/starterpack.ts","./src/lexicon/types/app/bsky/graph/unmuteActor.ts","./src/lexicon/types/app/bsky/graph/unmuteActorList.ts","./src/lexicon/types/app/bsky/graph/unmuteThread.ts","./src/lexicon/types/app/bsky/graph/verification.ts","./src/lexicon/types/app/bsky/labeler/defs.ts","./src/lexicon/types/app/bsky/labeler/getServices.ts","./src/lexicon/types/app/bsky/labeler/service.ts","./src/lexicon/types/app/bsky/notification/defs.ts","./src/lexicon/types/app/bsky/notification/getUnreadCount.ts","./src/lexicon/types/app/bsky/notification/listNotifications.ts","./src/lexicon/types/app/bsky/notification/putPreferences.ts","./src/lexicon/types/app/bsky/notification/registerPush.ts","./src/lexicon/types/app/bsky/notification/updateSeen.ts","./src/lexicon/types/app/bsky/richtext/facet.ts","./src/lexicon/types/app/bsky/unspecced/defs.ts","./src/lexicon/types/app/bsky/unspecced/getConfig.ts","./src/lexicon/types/app/bsky/unspecced/getPopularFeedGenerators.ts","./src/lexicon/types/app/bsky/unspecced/getPostThreadHiddenV2.ts","./src/lexicon/types/app/bsky/unspecced/getPostThreadV2.ts","./src/lexicon/types/app/bsky/unspecced/getSuggestedFeeds.ts","./src/lexicon/types/app/bsky/unspecced/getSuggestedFeedsSkeleton.ts","./src/lexicon/types/app/bsky/unspecced/getSuggestedStarterPacks.ts","./src/lexicon/types/app/bsky/unspecced/getSuggestedStarterPacksSkeleton.ts","./src/lexicon/types/app/bsky/unspecced/getSuggestedUsers.ts","./src/lexicon/types/app/bsky/unspecced/getSuggestedUsersSkeleton.ts","./src/lexicon/types/app/bsky/unspecced/getSuggestionsSkeleton.ts","./src/lexicon/types/app/bsky/unspecced/getTaggedSuggestions.ts","./src/lexicon/types/app/bsky/unspecced/getTrendingTopics.ts","./src/lexicon/types/app/bsky/unspecced/getTrends.ts","./src/lexicon/types/app/bsky/unspecced/getTrendsSkeleton.ts","./src/lexicon/types/app/bsky/unspecced/searchActorsSkeleton.ts","./src/lexicon/types/app/bsky/unspecced/searchPostsSkeleton.ts","./src/lexicon/types/app/bsky/unspecced/searchStarterPacksSkeleton.ts","./src/lexicon/types/app/bsky/video/defs.ts","./src/lexicon/types/app/bsky/video/getJobStatus.ts","./src/lexicon/types/app/bsky/video/getUploadLimits.ts","./src/lexicon/types/app/bsky/video/uploadVideo.ts","./src/lexicon/types/chat/bsky/actor/declaration.ts","./src/lexicon/types/chat/bsky/actor/defs.ts","./src/lexicon/types/chat/bsky/actor/deleteAccount.ts","./src/lexicon/types/chat/bsky/actor/exportAccountData.ts","./src/lexicon/types/chat/bsky/convo/acceptConvo.ts","./src/lexicon/types/chat/bsky/convo/addReaction.ts","./src/lexicon/types/chat/bsky/convo/defs.ts","./src/lexicon/types/chat/bsky/convo/deleteMessageForSelf.ts","./src/lexicon/types/chat/bsky/convo/getConvo.ts","./src/lexicon/types/chat/bsky/convo/getConvoAvailability.ts","./src/lexicon/types/chat/bsky/convo/getConvoForMembers.ts","./src/lexicon/types/chat/bsky/convo/getLog.ts","./src/lexicon/types/chat/bsky/convo/getMessages.ts","./src/lexicon/types/chat/bsky/convo/leaveConvo.ts","./src/lexicon/types/chat/bsky/convo/listConvos.ts","./src/lexicon/types/chat/bsky/convo/muteConvo.ts","./src/lexicon/types/chat/bsky/convo/removeReaction.ts","./src/lexicon/types/chat/bsky/convo/sendMessage.ts","./src/lexicon/types/chat/bsky/convo/sendMessageBatch.ts","./src/lexicon/types/chat/bsky/convo/unmuteConvo.ts","./src/lexicon/types/chat/bsky/convo/updateAllRead.ts","./src/lexicon/types/chat/bsky/convo/updateRead.ts","./src/lexicon/types/chat/bsky/moderation/getActorMetadata.ts","./src/lexicon/types/chat/bsky/moderation/getMessageContext.ts","./src/lexicon/types/chat/bsky/moderation/updateActorAccess.ts","./src/lexicon/types/com/atproto/admin/defs.ts","./src/lexicon/types/com/atproto/admin/deleteAccount.ts","./src/lexicon/types/com/atproto/admin/disableAccountInvites.ts","./src/lexicon/types/com/atproto/admin/disableInviteCodes.ts","./src/lexicon/types/com/atproto/admin/enableAccountInvites.ts","./src/lexicon/types/com/atproto/admin/getAccountInfo.ts","./src/lexicon/types/com/atproto/admin/getAccountInfos.ts","./src/lexicon/types/com/atproto/admin/getInviteCodes.ts","./src/lexicon/types/com/atproto/admin/getSubjectStatus.ts","./src/lexicon/types/com/atproto/admin/searchAccounts.ts","./src/lexicon/types/com/atproto/admin/sendEmail.ts","./src/lexicon/types/com/atproto/admin/updateAccountEmail.ts","./src/lexicon/types/com/atproto/admin/updateAccountHandle.ts","./src/lexicon/types/com/atproto/admin/updateAccountPassword.ts","./src/lexicon/types/com/atproto/admin/updateAccountSigningKey.ts","./src/lexicon/types/com/atproto/admin/updateSubjectStatus.ts","./src/lexicon/types/com/atproto/identity/defs.ts","./src/lexicon/types/com/atproto/identity/getRecommendedDidCredentials.ts","./src/lexicon/types/com/atproto/identity/refreshIdentity.ts","./src/lexicon/types/com/atproto/identity/requestPlcOperationSignature.ts","./src/lexicon/types/com/atproto/identity/resolveDid.ts","./src/lexicon/types/com/atproto/identity/resolveHandle.ts","./src/lexicon/types/com/atproto/identity/resolveIdentity.ts","./src/lexicon/types/com/atproto/identity/signPlcOperation.ts","./src/lexicon/types/com/atproto/identity/submitPlcOperation.ts","./src/lexicon/types/com/atproto/identity/updateHandle.ts","./src/lexicon/types/com/atproto/label/defs.ts","./src/lexicon/types/com/atproto/label/queryLabels.ts","./src/lexicon/types/com/atproto/label/subscribeLabels.ts","./src/lexicon/types/com/atproto/lexicon/schema.ts","./src/lexicon/types/com/atproto/moderation/createReport.ts","./src/lexicon/types/com/atproto/moderation/defs.ts","./src/lexicon/types/com/atproto/repo/applyWrites.ts","./src/lexicon/types/com/atproto/repo/createRecord.ts","./src/lexicon/types/com/atproto/repo/defs.ts","./src/lexicon/types/com/atproto/repo/deleteRecord.ts","./src/lexicon/types/com/atproto/repo/describeRepo.ts","./src/lexicon/types/com/atproto/repo/getRecord.ts","./src/lexicon/types/com/atproto/repo/importRepo.ts","./src/lexicon/types/com/atproto/repo/listMissingBlobs.ts","./src/lexicon/types/com/atproto/repo/listRecords.ts","./src/lexicon/types/com/atproto/repo/putRecord.ts","./src/lexicon/types/com/atproto/repo/strongRef.ts","./src/lexicon/types/com/atproto/repo/uploadBlob.ts","./src/lexicon/types/com/atproto/server/activateAccount.ts","./src/lexicon/types/com/atproto/server/checkAccountStatus.ts","./src/lexicon/types/com/atproto/server/confirmEmail.ts","./src/lexicon/types/com/atproto/server/createAccount.ts","./src/lexicon/types/com/atproto/server/createAppPassword.ts","./src/lexicon/types/com/atproto/server/createInviteCode.ts","./src/lexicon/types/com/atproto/server/createInviteCodes.ts","./src/lexicon/types/com/atproto/server/createSession.ts","./src/lexicon/types/com/atproto/server/deactivateAccount.ts","./src/lexicon/types/com/atproto/server/defs.ts","./src/lexicon/types/com/atproto/server/deleteAccount.ts","./src/lexicon/types/com/atproto/server/deleteSession.ts","./src/lexicon/types/com/atproto/server/describeServer.ts","./src/lexicon/types/com/atproto/server/getAccountInviteCodes.ts","./src/lexicon/types/com/atproto/server/getServiceAuth.ts","./src/lexicon/types/com/atproto/server/getSession.ts","./src/lexicon/types/com/atproto/server/listAppPasswords.ts","./src/lexicon/types/com/atproto/server/refreshSession.ts","./src/lexicon/types/com/atproto/server/requestAccountDelete.ts","./src/lexicon/types/com/atproto/server/requestEmailConfirmation.ts","./src/lexicon/types/com/atproto/server/requestEmailUpdate.ts","./src/lexicon/types/com/atproto/server/requestPasswordReset.ts","./src/lexicon/types/com/atproto/server/reserveSigningKey.ts","./src/lexicon/types/com/atproto/server/resetPassword.ts","./src/lexicon/types/com/atproto/server/revokeAppPassword.ts","./src/lexicon/types/com/atproto/server/updateEmail.ts","./src/lexicon/types/com/atproto/sync/defs.ts","./src/lexicon/types/com/atproto/sync/getBlob.ts","./src/lexicon/types/com/atproto/sync/getBlocks.ts","./src/lexicon/types/com/atproto/sync/getCheckout.ts","./src/lexicon/types/com/atproto/sync/getHead.ts","./src/lexicon/types/com/atproto/sync/getHostStatus.ts","./src/lexicon/types/com/atproto/sync/getLatestCommit.ts","./src/lexicon/types/com/atproto/sync/getRecord.ts","./src/lexicon/types/com/atproto/sync/getRepo.ts","./src/lexicon/types/com/atproto/sync/getRepoStatus.ts","./src/lexicon/types/com/atproto/sync/listBlobs.ts","./src/lexicon/types/com/atproto/sync/listHosts.ts","./src/lexicon/types/com/atproto/sync/listRepos.ts","./src/lexicon/types/com/atproto/sync/listReposByCollection.ts","./src/lexicon/types/com/atproto/sync/notifyOfUpdate.ts","./src/lexicon/types/com/atproto/sync/requestCrawl.ts","./src/lexicon/types/com/atproto/sync/subscribeRepos.ts","./src/lexicon/types/com/atproto/temp/addReservedHandle.ts","./src/lexicon/types/com/atproto/temp/checkSignupQueue.ts","./src/lexicon/types/com/atproto/temp/fetchLabels.ts","./src/lexicon/types/com/atproto/temp/requestPhoneVerification.ts","./src/proto/bsky_connect.ts","./src/proto/bsky_pb.ts","./src/proto/bsync_connect.ts","./src/proto/bsync_pb.ts","./src/proto/courier_connect.ts","./src/proto/courier_pb.ts","./src/util/debug.ts","./src/util/http.ts","./src/util/retry.ts","./src/util/uris.ts","./src/views/index.ts","./src/views/threads-v2.ts","./src/views/types.ts","./src/views/util.ts"],"version":"5.8.2"}
1
+ {"root":["./src/auth-verifier.ts","./src/bsync.ts","./src/config.ts","./src/context.ts","./src/courier.ts","./src/error.ts","./src/etcd.ts","./src/feature-gates.ts","./src/index.ts","./src/logger.ts","./src/pipeline.ts","./src/redis.ts","./src/util.ts","./src/api/blob-dispatcher.ts","./src/api/blob-resolver.ts","./src/api/health.ts","./src/api/index.ts","./src/api/util.ts","./src/api/well-known.ts","./src/api/app/bsky/actor/getProfile.ts","./src/api/app/bsky/actor/getProfiles.ts","./src/api/app/bsky/actor/getSuggestions.ts","./src/api/app/bsky/actor/searchActors.ts","./src/api/app/bsky/actor/searchActorsTypeahead.ts","./src/api/app/bsky/feed/getActorFeeds.ts","./src/api/app/bsky/feed/getActorLikes.ts","./src/api/app/bsky/feed/getAuthorFeed.ts","./src/api/app/bsky/feed/getFeed.ts","./src/api/app/bsky/feed/getFeedGenerator.ts","./src/api/app/bsky/feed/getFeedGenerators.ts","./src/api/app/bsky/feed/getLikes.ts","./src/api/app/bsky/feed/getListFeed.ts","./src/api/app/bsky/feed/getPostThread.ts","./src/api/app/bsky/feed/getPosts.ts","./src/api/app/bsky/feed/getQuotes.ts","./src/api/app/bsky/feed/getRepostedBy.ts","./src/api/app/bsky/feed/getSuggestedFeeds.ts","./src/api/app/bsky/feed/getTimeline.ts","./src/api/app/bsky/feed/searchPosts.ts","./src/api/app/bsky/graph/getActorStarterPacks.ts","./src/api/app/bsky/graph/getBlocks.ts","./src/api/app/bsky/graph/getFollowers.ts","./src/api/app/bsky/graph/getFollows.ts","./src/api/app/bsky/graph/getKnownFollowers.ts","./src/api/app/bsky/graph/getList.ts","./src/api/app/bsky/graph/getListBlocks.ts","./src/api/app/bsky/graph/getListMutes.ts","./src/api/app/bsky/graph/getLists.ts","./src/api/app/bsky/graph/getMutes.ts","./src/api/app/bsky/graph/getRelationships.ts","./src/api/app/bsky/graph/getStarterPack.ts","./src/api/app/bsky/graph/getStarterPacks.ts","./src/api/app/bsky/graph/getSuggestedFollowsByActor.ts","./src/api/app/bsky/graph/muteActor.ts","./src/api/app/bsky/graph/muteActorList.ts","./src/api/app/bsky/graph/muteThread.ts","./src/api/app/bsky/graph/searchStarterPacks.ts","./src/api/app/bsky/graph/unmuteActor.ts","./src/api/app/bsky/graph/unmuteActorList.ts","./src/api/app/bsky/graph/unmuteThread.ts","./src/api/app/bsky/labeler/getServices.ts","./src/api/app/bsky/notification/getUnreadCount.ts","./src/api/app/bsky/notification/listNotifications.ts","./src/api/app/bsky/notification/putPreferences.ts","./src/api/app/bsky/notification/registerPush.ts","./src/api/app/bsky/notification/updateSeen.ts","./src/api/app/bsky/unspecced/getConfig.ts","./src/api/app/bsky/unspecced/getPopularFeedGenerators.ts","./src/api/app/bsky/unspecced/getPostThreadHiddenV2.ts","./src/api/app/bsky/unspecced/getPostThreadV2.ts","./src/api/app/bsky/unspecced/getSuggestedFeeds.ts","./src/api/app/bsky/unspecced/getSuggestedStarterPacks.ts","./src/api/app/bsky/unspecced/getSuggestedUsers.ts","./src/api/app/bsky/unspecced/getTaggedSuggestions.ts","./src/api/app/bsky/unspecced/getTrendingTopics.ts","./src/api/app/bsky/unspecced/getTrends.ts","./src/api/com/atproto/admin/getAccountInfos.ts","./src/api/com/atproto/admin/getSubjectStatus.ts","./src/api/com/atproto/admin/updateSubjectStatus.ts","./src/api/com/atproto/identity/resolveHandle.ts","./src/api/com/atproto/label/queryLabels.ts","./src/api/com/atproto/repo/getRecord.ts","./src/api/com/atproto/temp/fetchLabels.ts","./src/cache/read-through.ts","./src/data-plane/index.ts","./src/data-plane/bsync/index.ts","./src/data-plane/client/hosts.ts","./src/data-plane/client/index.ts","./src/data-plane/client/util.ts","./src/data-plane/server/background.ts","./src/data-plane/server/index.ts","./src/data-plane/server/subscription.ts","./src/data-plane/server/util.ts","./src/data-plane/server/db/database-schema.ts","./src/data-plane/server/db/db.ts","./src/data-plane/server/db/index.ts","./src/data-plane/server/db/pagination.ts","./src/data-plane/server/db/types.ts","./src/data-plane/server/db/util.ts","./src/data-plane/server/db/migrations/20230309T045948368Z-init.ts","./src/data-plane/server/db/migrations/20230408T152211201Z-notification-init.ts","./src/data-plane/server/db/migrations/20230417T210628672Z-moderation-init.ts","./src/data-plane/server/db/migrations/20230420T211446071Z-did-cache.ts","./src/data-plane/server/db/migrations/20230427T194702079Z-notif-record-index.ts","./src/data-plane/server/db/migrations/20230605T144730094Z-post-profile-aggs.ts","./src/data-plane/server/db/migrations/20230607T211442112Z-feed-generator-init.ts","./src/data-plane/server/db/migrations/20230608T155101190Z-algo-whats-hot-view.ts","./src/data-plane/server/db/migrations/20230608T201813132Z-mute-lists.ts","./src/data-plane/server/db/migrations/20230608T205147239Z-mutes.ts","./src/data-plane/server/db/migrations/20230609T153623961Z-blocks.ts","./src/data-plane/server/db/migrations/20230609T232122649Z-actor-deletion-indexes.ts","./src/data-plane/server/db/migrations/20230610T203555962Z-suggested-follows.ts","./src/data-plane/server/db/migrations/20230611T215300060Z-actor-state.ts","./src/data-plane/server/db/migrations/20230620T161134972Z-post-langs.ts","./src/data-plane/server/db/migrations/20230627T212437895Z-optional-handle.ts","./src/data-plane/server/db/migrations/20230629T220835893Z-remove-post-hierarchy.ts","./src/data-plane/server/db/migrations/20230703T045536691Z-feed-and-label-indices.ts","./src/data-plane/server/db/migrations/20230720T164800037Z-posts-cursor-idx.ts","./src/data-plane/server/db/migrations/20230807T035309811Z-feed-item-delete-invite-for-user-idx.ts","./src/data-plane/server/db/migrations/20230808T172902639Z-repo-rev.ts","./src/data-plane/server/db/migrations/20230810T203349843Z-action-duration.ts","./src/data-plane/server/db/migrations/20230817T195936007Z-native-notifications.ts","./src/data-plane/server/db/migrations/20230830T205507322Z-suggested-feeds.ts","./src/data-plane/server/db/migrations/20230904T211011773Z-block-lists.ts","./src/data-plane/server/db/migrations/20230906T222220386Z-thread-gating.ts","./src/data-plane/server/db/migrations/20230920T213858047Z-add-tags-to-post.ts","./src/data-plane/server/db/migrations/20230929T192920807Z-record-cursor-indexes.ts","./src/data-plane/server/db/migrations/20231003T202833377Z-create-moderation-subject-status.ts","./src/data-plane/server/db/migrations/20231220T225126090Z-blob-takedowns.ts","./src/data-plane/server/db/migrations/20240124T023719200Z-tagged-suggestions.ts","./src/data-plane/server/db/migrations/20240226T225725627Z-labelers.ts","./src/data-plane/server/db/migrations/20240530T170337073Z-account-deactivation.ts","./src/data-plane/server/db/migrations/20240606T171229898Z-thread-mutes.ts","./src/data-plane/server/db/migrations/20240606T222548219Z-starter-packs.ts","./src/data-plane/server/db/migrations/20240719T203853939Z-priority-notifs.ts","./src/data-plane/server/db/migrations/20240723T220700077Z-quotes-post-aggs.ts","./src/data-plane/server/db/migrations/20240723T220703655Z-quotes.ts","./src/data-plane/server/db/migrations/20240801T193939827Z-post-gate.ts","./src/data-plane/server/db/migrations/20240808T224251220Z-post-gate-flags.ts","./src/data-plane/server/db/migrations/20240829T211238293Z-simplify-actor-sync.ts","./src/data-plane/server/db/migrations/20240831T134810923Z-pinned-posts.ts","./src/data-plane/server/db/migrations/20241114T153108102Z-add-starter-packs-name.ts","./src/data-plane/server/db/migrations/20250116T222618297Z-post-embed-video.ts","./src/data-plane/server/db/migrations/20250207T174822012Z-add-label-exp.ts","./src/data-plane/server/db/migrations/20250404T163421487Z-verifications.ts","./src/data-plane/server/db/migrations/20250526T023712742Z-like-repost-via.ts","./src/data-plane/server/db/migrations/20250528T221913281Z-add-record-tags.ts","./src/data-plane/server/db/migrations/index.ts","./src/data-plane/server/db/migrations/provider.ts","./src/data-plane/server/db/tables/actor-block.ts","./src/data-plane/server/db/tables/actor-state.ts","./src/data-plane/server/db/tables/actor-sync.ts","./src/data-plane/server/db/tables/actor.ts","./src/data-plane/server/db/tables/algo.ts","./src/data-plane/server/db/tables/blob-takedown.ts","./src/data-plane/server/db/tables/did-cache.ts","./src/data-plane/server/db/tables/duplicate-record.ts","./src/data-plane/server/db/tables/feed-generator.ts","./src/data-plane/server/db/tables/feed-item.ts","./src/data-plane/server/db/tables/follow.ts","./src/data-plane/server/db/tables/label.ts","./src/data-plane/server/db/tables/labeler.ts","./src/data-plane/server/db/tables/like.ts","./src/data-plane/server/db/tables/list-block.ts","./src/data-plane/server/db/tables/list-item.ts","./src/data-plane/server/db/tables/list-mute.ts","./src/data-plane/server/db/tables/list.ts","./src/data-plane/server/db/tables/mute.ts","./src/data-plane/server/db/tables/notification-push-token.ts","./src/data-plane/server/db/tables/notification.ts","./src/data-plane/server/db/tables/post-agg.ts","./src/data-plane/server/db/tables/post-embed.ts","./src/data-plane/server/db/tables/post-gate.ts","./src/data-plane/server/db/tables/post.ts","./src/data-plane/server/db/tables/profile-agg.ts","./src/data-plane/server/db/tables/profile.ts","./src/data-plane/server/db/tables/quote.ts","./src/data-plane/server/db/tables/record.ts","./src/data-plane/server/db/tables/repost.ts","./src/data-plane/server/db/tables/starter-pack.ts","./src/data-plane/server/db/tables/subscription.ts","./src/data-plane/server/db/tables/suggested-feed.ts","./src/data-plane/server/db/tables/suggested-follow.ts","./src/data-plane/server/db/tables/tagged-suggestion.ts","./src/data-plane/server/db/tables/thread-gate.ts","./src/data-plane/server/db/tables/thread-mute.ts","./src/data-plane/server/db/tables/verification.ts","./src/data-plane/server/db/tables/view-param.ts","./src/data-plane/server/indexing/index.ts","./src/data-plane/server/indexing/processor.ts","./src/data-plane/server/indexing/plugins/block.ts","./src/data-plane/server/indexing/plugins/chat-declaration.ts","./src/data-plane/server/indexing/plugins/feed-generator.ts","./src/data-plane/server/indexing/plugins/follow.ts","./src/data-plane/server/indexing/plugins/labeler.ts","./src/data-plane/server/indexing/plugins/like.ts","./src/data-plane/server/indexing/plugins/list-block.ts","./src/data-plane/server/indexing/plugins/list-item.ts","./src/data-plane/server/indexing/plugins/list.ts","./src/data-plane/server/indexing/plugins/post-gate.ts","./src/data-plane/server/indexing/plugins/post.ts","./src/data-plane/server/indexing/plugins/profile.ts","./src/data-plane/server/indexing/plugins/repost.ts","./src/data-plane/server/indexing/plugins/starter-pack.ts","./src/data-plane/server/indexing/plugins/status.ts","./src/data-plane/server/indexing/plugins/thread-gate.ts","./src/data-plane/server/indexing/plugins/verification.ts","./src/data-plane/server/routes/blocks.ts","./src/data-plane/server/routes/feed-gens.ts","./src/data-plane/server/routes/feeds.ts","./src/data-plane/server/routes/follows.ts","./src/data-plane/server/routes/identity.ts","./src/data-plane/server/routes/index.ts","./src/data-plane/server/routes/interactions.ts","./src/data-plane/server/routes/labels.ts","./src/data-plane/server/routes/likes.ts","./src/data-plane/server/routes/lists.ts","./src/data-plane/server/routes/moderation.ts","./src/data-plane/server/routes/mutes.ts","./src/data-plane/server/routes/notifs.ts","./src/data-plane/server/routes/profile.ts","./src/data-plane/server/routes/quotes.ts","./src/data-plane/server/routes/records.ts","./src/data-plane/server/routes/relationships.ts","./src/data-plane/server/routes/reposts.ts","./src/data-plane/server/routes/search.ts","./src/data-plane/server/routes/starter-packs.ts","./src/data-plane/server/routes/suggestions.ts","./src/data-plane/server/routes/sync.ts","./src/data-plane/server/routes/threads.ts","./src/hydration/actor.ts","./src/hydration/feed.ts","./src/hydration/graph.ts","./src/hydration/hydrator.ts","./src/hydration/label.ts","./src/hydration/util.ts","./src/image/index.ts","./src/image/invalidator.ts","./src/image/logger.ts","./src/image/server.ts","./src/image/sharp.ts","./src/image/uri.ts","./src/image/util.ts","./src/lexicon/index.ts","./src/lexicon/lexicons.ts","./src/lexicon/util.ts","./src/lexicon/types/app/bsky/actor/defs.ts","./src/lexicon/types/app/bsky/actor/getPreferences.ts","./src/lexicon/types/app/bsky/actor/getProfile.ts","./src/lexicon/types/app/bsky/actor/getProfiles.ts","./src/lexicon/types/app/bsky/actor/getSuggestions.ts","./src/lexicon/types/app/bsky/actor/profile.ts","./src/lexicon/types/app/bsky/actor/putPreferences.ts","./src/lexicon/types/app/bsky/actor/searchActors.ts","./src/lexicon/types/app/bsky/actor/searchActorsTypeahead.ts","./src/lexicon/types/app/bsky/actor/status.ts","./src/lexicon/types/app/bsky/embed/defs.ts","./src/lexicon/types/app/bsky/embed/external.ts","./src/lexicon/types/app/bsky/embed/images.ts","./src/lexicon/types/app/bsky/embed/record.ts","./src/lexicon/types/app/bsky/embed/recordWithMedia.ts","./src/lexicon/types/app/bsky/embed/video.ts","./src/lexicon/types/app/bsky/feed/defs.ts","./src/lexicon/types/app/bsky/feed/describeFeedGenerator.ts","./src/lexicon/types/app/bsky/feed/generator.ts","./src/lexicon/types/app/bsky/feed/getActorFeeds.ts","./src/lexicon/types/app/bsky/feed/getActorLikes.ts","./src/lexicon/types/app/bsky/feed/getAuthorFeed.ts","./src/lexicon/types/app/bsky/feed/getFeed.ts","./src/lexicon/types/app/bsky/feed/getFeedGenerator.ts","./src/lexicon/types/app/bsky/feed/getFeedGenerators.ts","./src/lexicon/types/app/bsky/feed/getFeedSkeleton.ts","./src/lexicon/types/app/bsky/feed/getLikes.ts","./src/lexicon/types/app/bsky/feed/getListFeed.ts","./src/lexicon/types/app/bsky/feed/getPostThread.ts","./src/lexicon/types/app/bsky/feed/getPosts.ts","./src/lexicon/types/app/bsky/feed/getQuotes.ts","./src/lexicon/types/app/bsky/feed/getRepostedBy.ts","./src/lexicon/types/app/bsky/feed/getSuggestedFeeds.ts","./src/lexicon/types/app/bsky/feed/getTimeline.ts","./src/lexicon/types/app/bsky/feed/like.ts","./src/lexicon/types/app/bsky/feed/post.ts","./src/lexicon/types/app/bsky/feed/postgate.ts","./src/lexicon/types/app/bsky/feed/repost.ts","./src/lexicon/types/app/bsky/feed/searchPosts.ts","./src/lexicon/types/app/bsky/feed/sendInteractions.ts","./src/lexicon/types/app/bsky/feed/threadgate.ts","./src/lexicon/types/app/bsky/graph/block.ts","./src/lexicon/types/app/bsky/graph/defs.ts","./src/lexicon/types/app/bsky/graph/follow.ts","./src/lexicon/types/app/bsky/graph/getActorStarterPacks.ts","./src/lexicon/types/app/bsky/graph/getBlocks.ts","./src/lexicon/types/app/bsky/graph/getFollowers.ts","./src/lexicon/types/app/bsky/graph/getFollows.ts","./src/lexicon/types/app/bsky/graph/getKnownFollowers.ts","./src/lexicon/types/app/bsky/graph/getList.ts","./src/lexicon/types/app/bsky/graph/getListBlocks.ts","./src/lexicon/types/app/bsky/graph/getListMutes.ts","./src/lexicon/types/app/bsky/graph/getLists.ts","./src/lexicon/types/app/bsky/graph/getMutes.ts","./src/lexicon/types/app/bsky/graph/getRelationships.ts","./src/lexicon/types/app/bsky/graph/getStarterPack.ts","./src/lexicon/types/app/bsky/graph/getStarterPacks.ts","./src/lexicon/types/app/bsky/graph/getSuggestedFollowsByActor.ts","./src/lexicon/types/app/bsky/graph/list.ts","./src/lexicon/types/app/bsky/graph/listblock.ts","./src/lexicon/types/app/bsky/graph/listitem.ts","./src/lexicon/types/app/bsky/graph/muteActor.ts","./src/lexicon/types/app/bsky/graph/muteActorList.ts","./src/lexicon/types/app/bsky/graph/muteThread.ts","./src/lexicon/types/app/bsky/graph/searchStarterPacks.ts","./src/lexicon/types/app/bsky/graph/starterpack.ts","./src/lexicon/types/app/bsky/graph/unmuteActor.ts","./src/lexicon/types/app/bsky/graph/unmuteActorList.ts","./src/lexicon/types/app/bsky/graph/unmuteThread.ts","./src/lexicon/types/app/bsky/graph/verification.ts","./src/lexicon/types/app/bsky/labeler/defs.ts","./src/lexicon/types/app/bsky/labeler/getServices.ts","./src/lexicon/types/app/bsky/labeler/service.ts","./src/lexicon/types/app/bsky/notification/defs.ts","./src/lexicon/types/app/bsky/notification/getUnreadCount.ts","./src/lexicon/types/app/bsky/notification/listNotifications.ts","./src/lexicon/types/app/bsky/notification/putPreferences.ts","./src/lexicon/types/app/bsky/notification/registerPush.ts","./src/lexicon/types/app/bsky/notification/updateSeen.ts","./src/lexicon/types/app/bsky/richtext/facet.ts","./src/lexicon/types/app/bsky/unspecced/defs.ts","./src/lexicon/types/app/bsky/unspecced/getConfig.ts","./src/lexicon/types/app/bsky/unspecced/getPopularFeedGenerators.ts","./src/lexicon/types/app/bsky/unspecced/getPostThreadHiddenV2.ts","./src/lexicon/types/app/bsky/unspecced/getPostThreadV2.ts","./src/lexicon/types/app/bsky/unspecced/getSuggestedFeeds.ts","./src/lexicon/types/app/bsky/unspecced/getSuggestedFeedsSkeleton.ts","./src/lexicon/types/app/bsky/unspecced/getSuggestedStarterPacks.ts","./src/lexicon/types/app/bsky/unspecced/getSuggestedStarterPacksSkeleton.ts","./src/lexicon/types/app/bsky/unspecced/getSuggestedUsers.ts","./src/lexicon/types/app/bsky/unspecced/getSuggestedUsersSkeleton.ts","./src/lexicon/types/app/bsky/unspecced/getSuggestionsSkeleton.ts","./src/lexicon/types/app/bsky/unspecced/getTaggedSuggestions.ts","./src/lexicon/types/app/bsky/unspecced/getTrendingTopics.ts","./src/lexicon/types/app/bsky/unspecced/getTrends.ts","./src/lexicon/types/app/bsky/unspecced/getTrendsSkeleton.ts","./src/lexicon/types/app/bsky/unspecced/searchActorsSkeleton.ts","./src/lexicon/types/app/bsky/unspecced/searchPostsSkeleton.ts","./src/lexicon/types/app/bsky/unspecced/searchStarterPacksSkeleton.ts","./src/lexicon/types/app/bsky/video/defs.ts","./src/lexicon/types/app/bsky/video/getJobStatus.ts","./src/lexicon/types/app/bsky/video/getUploadLimits.ts","./src/lexicon/types/app/bsky/video/uploadVideo.ts","./src/lexicon/types/chat/bsky/actor/declaration.ts","./src/lexicon/types/chat/bsky/actor/defs.ts","./src/lexicon/types/chat/bsky/actor/deleteAccount.ts","./src/lexicon/types/chat/bsky/actor/exportAccountData.ts","./src/lexicon/types/chat/bsky/convo/acceptConvo.ts","./src/lexicon/types/chat/bsky/convo/addReaction.ts","./src/lexicon/types/chat/bsky/convo/defs.ts","./src/lexicon/types/chat/bsky/convo/deleteMessageForSelf.ts","./src/lexicon/types/chat/bsky/convo/getConvo.ts","./src/lexicon/types/chat/bsky/convo/getConvoAvailability.ts","./src/lexicon/types/chat/bsky/convo/getConvoForMembers.ts","./src/lexicon/types/chat/bsky/convo/getLog.ts","./src/lexicon/types/chat/bsky/convo/getMessages.ts","./src/lexicon/types/chat/bsky/convo/leaveConvo.ts","./src/lexicon/types/chat/bsky/convo/listConvos.ts","./src/lexicon/types/chat/bsky/convo/muteConvo.ts","./src/lexicon/types/chat/bsky/convo/removeReaction.ts","./src/lexicon/types/chat/bsky/convo/sendMessage.ts","./src/lexicon/types/chat/bsky/convo/sendMessageBatch.ts","./src/lexicon/types/chat/bsky/convo/unmuteConvo.ts","./src/lexicon/types/chat/bsky/convo/updateAllRead.ts","./src/lexicon/types/chat/bsky/convo/updateRead.ts","./src/lexicon/types/chat/bsky/moderation/getActorMetadata.ts","./src/lexicon/types/chat/bsky/moderation/getMessageContext.ts","./src/lexicon/types/chat/bsky/moderation/updateActorAccess.ts","./src/lexicon/types/com/atproto/admin/defs.ts","./src/lexicon/types/com/atproto/admin/deleteAccount.ts","./src/lexicon/types/com/atproto/admin/disableAccountInvites.ts","./src/lexicon/types/com/atproto/admin/disableInviteCodes.ts","./src/lexicon/types/com/atproto/admin/enableAccountInvites.ts","./src/lexicon/types/com/atproto/admin/getAccountInfo.ts","./src/lexicon/types/com/atproto/admin/getAccountInfos.ts","./src/lexicon/types/com/atproto/admin/getInviteCodes.ts","./src/lexicon/types/com/atproto/admin/getSubjectStatus.ts","./src/lexicon/types/com/atproto/admin/searchAccounts.ts","./src/lexicon/types/com/atproto/admin/sendEmail.ts","./src/lexicon/types/com/atproto/admin/updateAccountEmail.ts","./src/lexicon/types/com/atproto/admin/updateAccountHandle.ts","./src/lexicon/types/com/atproto/admin/updateAccountPassword.ts","./src/lexicon/types/com/atproto/admin/updateAccountSigningKey.ts","./src/lexicon/types/com/atproto/admin/updateSubjectStatus.ts","./src/lexicon/types/com/atproto/identity/defs.ts","./src/lexicon/types/com/atproto/identity/getRecommendedDidCredentials.ts","./src/lexicon/types/com/atproto/identity/refreshIdentity.ts","./src/lexicon/types/com/atproto/identity/requestPlcOperationSignature.ts","./src/lexicon/types/com/atproto/identity/resolveDid.ts","./src/lexicon/types/com/atproto/identity/resolveHandle.ts","./src/lexicon/types/com/atproto/identity/resolveIdentity.ts","./src/lexicon/types/com/atproto/identity/signPlcOperation.ts","./src/lexicon/types/com/atproto/identity/submitPlcOperation.ts","./src/lexicon/types/com/atproto/identity/updateHandle.ts","./src/lexicon/types/com/atproto/label/defs.ts","./src/lexicon/types/com/atproto/label/queryLabels.ts","./src/lexicon/types/com/atproto/label/subscribeLabels.ts","./src/lexicon/types/com/atproto/lexicon/schema.ts","./src/lexicon/types/com/atproto/moderation/createReport.ts","./src/lexicon/types/com/atproto/moderation/defs.ts","./src/lexicon/types/com/atproto/repo/applyWrites.ts","./src/lexicon/types/com/atproto/repo/createRecord.ts","./src/lexicon/types/com/atproto/repo/defs.ts","./src/lexicon/types/com/atproto/repo/deleteRecord.ts","./src/lexicon/types/com/atproto/repo/describeRepo.ts","./src/lexicon/types/com/atproto/repo/getRecord.ts","./src/lexicon/types/com/atproto/repo/importRepo.ts","./src/lexicon/types/com/atproto/repo/listMissingBlobs.ts","./src/lexicon/types/com/atproto/repo/listRecords.ts","./src/lexicon/types/com/atproto/repo/putRecord.ts","./src/lexicon/types/com/atproto/repo/strongRef.ts","./src/lexicon/types/com/atproto/repo/uploadBlob.ts","./src/lexicon/types/com/atproto/server/activateAccount.ts","./src/lexicon/types/com/atproto/server/checkAccountStatus.ts","./src/lexicon/types/com/atproto/server/confirmEmail.ts","./src/lexicon/types/com/atproto/server/createAccount.ts","./src/lexicon/types/com/atproto/server/createAppPassword.ts","./src/lexicon/types/com/atproto/server/createInviteCode.ts","./src/lexicon/types/com/atproto/server/createInviteCodes.ts","./src/lexicon/types/com/atproto/server/createSession.ts","./src/lexicon/types/com/atproto/server/deactivateAccount.ts","./src/lexicon/types/com/atproto/server/defs.ts","./src/lexicon/types/com/atproto/server/deleteAccount.ts","./src/lexicon/types/com/atproto/server/deleteSession.ts","./src/lexicon/types/com/atproto/server/describeServer.ts","./src/lexicon/types/com/atproto/server/getAccountInviteCodes.ts","./src/lexicon/types/com/atproto/server/getServiceAuth.ts","./src/lexicon/types/com/atproto/server/getSession.ts","./src/lexicon/types/com/atproto/server/listAppPasswords.ts","./src/lexicon/types/com/atproto/server/refreshSession.ts","./src/lexicon/types/com/atproto/server/requestAccountDelete.ts","./src/lexicon/types/com/atproto/server/requestEmailConfirmation.ts","./src/lexicon/types/com/atproto/server/requestEmailUpdate.ts","./src/lexicon/types/com/atproto/server/requestPasswordReset.ts","./src/lexicon/types/com/atproto/server/reserveSigningKey.ts","./src/lexicon/types/com/atproto/server/resetPassword.ts","./src/lexicon/types/com/atproto/server/revokeAppPassword.ts","./src/lexicon/types/com/atproto/server/updateEmail.ts","./src/lexicon/types/com/atproto/sync/defs.ts","./src/lexicon/types/com/atproto/sync/getBlob.ts","./src/lexicon/types/com/atproto/sync/getBlocks.ts","./src/lexicon/types/com/atproto/sync/getCheckout.ts","./src/lexicon/types/com/atproto/sync/getHead.ts","./src/lexicon/types/com/atproto/sync/getHostStatus.ts","./src/lexicon/types/com/atproto/sync/getLatestCommit.ts","./src/lexicon/types/com/atproto/sync/getRecord.ts","./src/lexicon/types/com/atproto/sync/getRepo.ts","./src/lexicon/types/com/atproto/sync/getRepoStatus.ts","./src/lexicon/types/com/atproto/sync/listBlobs.ts","./src/lexicon/types/com/atproto/sync/listHosts.ts","./src/lexicon/types/com/atproto/sync/listRepos.ts","./src/lexicon/types/com/atproto/sync/listReposByCollection.ts","./src/lexicon/types/com/atproto/sync/notifyOfUpdate.ts","./src/lexicon/types/com/atproto/sync/requestCrawl.ts","./src/lexicon/types/com/atproto/sync/subscribeRepos.ts","./src/lexicon/types/com/atproto/temp/addReservedHandle.ts","./src/lexicon/types/com/atproto/temp/checkSignupQueue.ts","./src/lexicon/types/com/atproto/temp/fetchLabels.ts","./src/lexicon/types/com/atproto/temp/requestPhoneVerification.ts","./src/proto/bsky_connect.ts","./src/proto/bsky_pb.ts","./src/proto/bsync_connect.ts","./src/proto/bsync_pb.ts","./src/proto/courier_connect.ts","./src/proto/courier_pb.ts","./src/util/debug.ts","./src/util/http.ts","./src/util/retry.ts","./src/util/uris.ts","./src/views/index.ts","./src/views/threads-v2.ts","./src/views/types.ts","./src/views/util.ts"],"version":"5.8.2"}