@atproto/bsky 0.0.149 → 0.0.151

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 (67) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/dist/api/app/bsky/feed/getFeed.d.ts +1 -0
  3. package/dist/api/app/bsky/feed/getFeed.d.ts.map +1 -1
  4. package/dist/api/app/bsky/feed/getFeed.js +3 -2
  5. package/dist/api/app/bsky/feed/getFeed.js.map +1 -1
  6. package/dist/data-plane/server/db/migrations/20250526T023712742Z-like-repost-via.d.ts +4 -0
  7. package/dist/data-plane/server/db/migrations/20250526T023712742Z-like-repost-via.d.ts.map +1 -0
  8. package/dist/data-plane/server/db/migrations/20250526T023712742Z-like-repost-via.js +17 -0
  9. package/dist/data-plane/server/db/migrations/20250526T023712742Z-like-repost-via.js.map +1 -0
  10. package/dist/data-plane/server/db/migrations/index.d.ts +1 -0
  11. package/dist/data-plane/server/db/migrations/index.d.ts.map +1 -1
  12. package/dist/data-plane/server/db/migrations/index.js +2 -1
  13. package/dist/data-plane/server/db/migrations/index.js.map +1 -1
  14. package/dist/data-plane/server/db/tables/like.d.ts +2 -0
  15. package/dist/data-plane/server/db/tables/like.d.ts.map +1 -1
  16. package/dist/data-plane/server/db/tables/repost.d.ts +2 -0
  17. package/dist/data-plane/server/db/tables/repost.d.ts.map +1 -1
  18. package/dist/data-plane/server/indexing/plugins/like.d.ts.map +1 -1
  19. package/dist/data-plane/server/indexing/plugins/like.js +32 -9
  20. package/dist/data-plane/server/indexing/plugins/like.js.map +1 -1
  21. package/dist/data-plane/server/indexing/plugins/repost.d.ts.map +1 -1
  22. package/dist/data-plane/server/indexing/plugins/repost.js +32 -9
  23. package/dist/data-plane/server/indexing/plugins/repost.js.map +1 -1
  24. package/dist/lexicon/lexicons.d.ts +68 -6
  25. package/dist/lexicon/lexicons.d.ts.map +1 -1
  26. package/dist/lexicon/lexicons.js +35 -2
  27. package/dist/lexicon/lexicons.js.map +1 -1
  28. package/dist/lexicon/types/app/bsky/feed/defs.d.ts +6 -0
  29. package/dist/lexicon/types/app/bsky/feed/defs.d.ts.map +1 -1
  30. package/dist/lexicon/types/app/bsky/feed/defs.js.map +1 -1
  31. package/dist/lexicon/types/app/bsky/feed/getFeedSkeleton.d.ts +2 -0
  32. package/dist/lexicon/types/app/bsky/feed/getFeedSkeleton.d.ts.map +1 -1
  33. package/dist/lexicon/types/app/bsky/feed/like.d.ts +1 -0
  34. package/dist/lexicon/types/app/bsky/feed/like.d.ts.map +1 -1
  35. package/dist/lexicon/types/app/bsky/feed/like.js.map +1 -1
  36. package/dist/lexicon/types/app/bsky/feed/repost.d.ts +1 -0
  37. package/dist/lexicon/types/app/bsky/feed/repost.d.ts.map +1 -1
  38. package/dist/lexicon/types/app/bsky/feed/repost.js.map +1 -1
  39. package/dist/lexicon/types/app/bsky/notification/listNotifications.d.ts +2 -2
  40. package/dist/lexicon/types/app/bsky/notification/listNotifications.d.ts.map +1 -1
  41. package/dist/lexicon/types/app/bsky/notification/listNotifications.js.map +1 -1
  42. package/dist/views/index.d.ts +1 -1
  43. package/dist/views/index.d.ts.map +1 -1
  44. package/dist/views/index.js +5 -2
  45. package/dist/views/index.js.map +1 -1
  46. package/package.json +5 -5
  47. package/src/api/app/bsky/feed/getFeed.ts +5 -1
  48. package/src/data-plane/server/db/migrations/20250526T023712742Z-like-repost-via.ts +17 -0
  49. package/src/data-plane/server/db/migrations/index.ts +1 -0
  50. package/src/data-plane/server/db/tables/like.ts +2 -0
  51. package/src/data-plane/server/db/tables/repost.ts +2 -0
  52. package/src/data-plane/server/indexing/plugins/like.ts +39 -9
  53. package/src/data-plane/server/indexing/plugins/repost.ts +38 -9
  54. package/src/lexicon/lexicons.ts +38 -2
  55. package/src/lexicon/types/app/bsky/feed/defs.ts +6 -0
  56. package/src/lexicon/types/app/bsky/feed/getFeedSkeleton.ts +2 -0
  57. package/src/lexicon/types/app/bsky/feed/like.ts +1 -0
  58. package/src/lexicon/types/app/bsky/feed/repost.ts +1 -0
  59. package/src/lexicon/types/app/bsky/notification/listNotifications.ts +3 -1
  60. package/src/views/index.ts +5 -2
  61. package/tests/__snapshots__/feed-generation.test.ts.snap +13 -0
  62. package/tests/feed-generation.test.ts +1 -0
  63. package/tests/views/__snapshots__/author-feed.test.ts.snap +30 -24
  64. package/tests/views/__snapshots__/notifications.test.ts.snap +1164 -229
  65. package/tests/views/__snapshots__/timeline.test.ts.snap +398 -376
  66. package/tests/views/notifications.test.ts +177 -0
  67. package/tsconfig.build.tsbuildinfo +1 -1
@@ -1,5 +1,148 @@
1
1
  // Jest Snapshot v1, https://goo.gl/fbAQLP
2
2
 
3
+ exports[`notification views does not generate self notifications for likes via own repost 1`] = `
4
+ Array [
5
+ Object {
6
+ "author": Object {
7
+ "did": "user(0)",
8
+ "handle": "carol.test",
9
+ "labels": Array [],
10
+ "viewer": Object {
11
+ "blockedBy": false,
12
+ "muted": false,
13
+ },
14
+ },
15
+ "cid": "cids(0)",
16
+ "indexedAt": "1970-01-01T00:00:00.000Z",
17
+ "isRead": false,
18
+ "labels": Array [],
19
+ "reason": "like",
20
+ "reasonSubject": "record(1)",
21
+ "record": Object {
22
+ "$type": "app.bsky.feed.like",
23
+ "createdAt": "1970-01-01T00:00:00.000Z",
24
+ "subject": Object {
25
+ "cid": "cids(2)",
26
+ "uri": "record(1)",
27
+ },
28
+ "via": Object {
29
+ "cid": "cids(1)",
30
+ "uri": "record(2)",
31
+ },
32
+ },
33
+ "uri": "record(0)",
34
+ },
35
+ Object {
36
+ "author": Object {
37
+ "avatar": "https://bsky.public.url/img/avatar/plain/user(2)/cids(4)@jpeg",
38
+ "createdAt": "1970-01-01T00:00:00.000Z",
39
+ "description": "its me!",
40
+ "did": "user(1)",
41
+ "displayName": "ali",
42
+ "handle": "alice.test",
43
+ "indexedAt": "1970-01-01T00:00:00.000Z",
44
+ "labels": Array [
45
+ Object {
46
+ "cid": "cids(5)",
47
+ "cts": "1970-01-01T00:00:00.000Z",
48
+ "src": "user(1)",
49
+ "uri": "record(5)",
50
+ "val": "self-label-a",
51
+ },
52
+ Object {
53
+ "cid": "cids(5)",
54
+ "cts": "1970-01-01T00:00:00.000Z",
55
+ "src": "user(1)",
56
+ "uri": "record(5)",
57
+ "val": "self-label-b",
58
+ },
59
+ ],
60
+ "viewer": Object {
61
+ "blockedBy": false,
62
+ "followedBy": "record(4)",
63
+ "muted": false,
64
+ },
65
+ },
66
+ "cid": "cids(3)",
67
+ "indexedAt": "1970-01-01T00:00:00.000Z",
68
+ "isRead": true,
69
+ "labels": Array [],
70
+ "reason": "like",
71
+ "reasonSubject": "record(1)",
72
+ "record": Object {
73
+ "$type": "app.bsky.feed.like",
74
+ "createdAt": "1970-01-01T00:00:00.000Z",
75
+ "subject": Object {
76
+ "cid": "cids(2)",
77
+ "uri": "record(1)",
78
+ },
79
+ "via": Object {
80
+ "cid": "cids(1)",
81
+ "uri": "record(2)",
82
+ },
83
+ },
84
+ "uri": "record(3)",
85
+ },
86
+ ]
87
+ `;
88
+
89
+ exports[`notification views does not generate self notifications for likes via own repost 2`] = `
90
+ Array [
91
+ Object {
92
+ "author": Object {
93
+ "avatar": "https://bsky.public.url/img/avatar/plain/user(1)/cids(1)@jpeg",
94
+ "createdAt": "1970-01-01T00:00:00.000Z",
95
+ "description": "its me!",
96
+ "did": "user(0)",
97
+ "displayName": "ali",
98
+ "handle": "alice.test",
99
+ "indexedAt": "1970-01-01T00:00:00.000Z",
100
+ "labels": Array [
101
+ Object {
102
+ "cid": "cids(2)",
103
+ "cts": "1970-01-01T00:00:00.000Z",
104
+ "src": "user(0)",
105
+ "uri": "record(3)",
106
+ "val": "self-label-a",
107
+ },
108
+ Object {
109
+ "cid": "cids(2)",
110
+ "cts": "1970-01-01T00:00:00.000Z",
111
+ "src": "user(0)",
112
+ "uri": "record(3)",
113
+ "val": "self-label-b",
114
+ },
115
+ ],
116
+ "viewer": Object {
117
+ "blockedBy": false,
118
+ "followedBy": "record(2)",
119
+ "following": "record(1)",
120
+ "muted": false,
121
+ },
122
+ },
123
+ "cid": "cids(0)",
124
+ "indexedAt": "1970-01-01T00:00:00.000Z",
125
+ "isRead": false,
126
+ "labels": Array [],
127
+ "reason": "like-via-repost",
128
+ "reasonSubject": "record(4)",
129
+ "record": Object {
130
+ "$type": "app.bsky.feed.like",
131
+ "createdAt": "1970-01-01T00:00:00.000Z",
132
+ "subject": Object {
133
+ "cid": "cids(4)",
134
+ "uri": "record(5)",
135
+ },
136
+ "via": Object {
137
+ "cid": "cids(3)",
138
+ "uri": "record(4)",
139
+ },
140
+ },
141
+ "uri": "record(0)",
142
+ },
143
+ ]
144
+ `;
145
+
3
146
  exports[`notification views fetches notifications omitting mentions and replies for taken-down posts 1`] = `
4
147
  Array [
5
148
  Object {
@@ -422,12 +565,16 @@ Object {
422
565
  "indexedAt": "1970-01-01T00:00:00.000Z",
423
566
  "isRead": true,
424
567
  "labels": Array [],
425
- "reason": "like",
568
+ "reason": "repost-via-repost",
426
569
  "reasonSubject": "record(4)",
427
570
  "record": Object {
428
- "$type": "app.bsky.feed.like",
429
- "createdAt": "1970-01-01T00:00:00.000000Z",
571
+ "$type": "app.bsky.feed.repost",
572
+ "createdAt": "1970-01-01T00:00:00.000Z",
430
573
  "subject": Object {
574
+ "cid": "cids(4)",
575
+ "uri": "record(5)",
576
+ },
577
+ "via": Object {
431
578
  "cid": "cids(3)",
432
579
  "uri": "record(4)",
433
580
  },
@@ -466,28 +613,26 @@ Object {
466
613
  "muted": false,
467
614
  },
468
615
  },
469
- "cid": "cids(4)",
616
+ "cid": "cids(5)",
470
617
  "indexedAt": "1970-01-01T00:00:00.000Z",
471
618
  "isRead": true,
472
619
  "labels": Array [],
473
- "reason": "follow",
620
+ "reason": "like-via-repost",
621
+ "reasonSubject": "record(4)",
474
622
  "record": Object {
475
- "$type": "app.bsky.graph.follow",
623
+ "$type": "app.bsky.feed.like",
476
624
  "createdAt": "1970-01-01T00:00:00.000Z",
477
- "subject": "user(2)",
625
+ "subject": Object {
626
+ "cid": "cids(4)",
627
+ "uri": "record(5)",
628
+ },
629
+ "via": Object {
630
+ "cid": "cids(3)",
631
+ "uri": "record(4)",
632
+ },
478
633
  },
479
- "uri": "record(2)",
634
+ "uri": "record(6)",
480
635
  },
481
- ],
482
- "priority": true,
483
- "seenAt": "1970-01-01T00:00:00.000Z",
484
- }
485
- `;
486
-
487
- exports[`notification views fetches notifications with explicit priority 1`] = `
488
- Object {
489
- "cursor": "1970-01-01T00:00:00.000Z",
490
- "notifications": Array [
491
636
  Object {
492
637
  "author": Object {
493
638
  "avatar": "https://bsky.public.url/img/avatar/plain/user(1)/cids(1)@jpeg",
@@ -520,21 +665,21 @@ Object {
520
665
  "muted": false,
521
666
  },
522
667
  },
523
- "cid": "cids(0)",
668
+ "cid": "cids(6)",
524
669
  "indexedAt": "1970-01-01T00:00:00.000Z",
525
- "isRead": false,
670
+ "isRead": true,
526
671
  "labels": Array [],
527
672
  "reason": "like",
528
- "reasonSubject": "record(4)",
673
+ "reasonSubject": "record(8)",
529
674
  "record": Object {
530
675
  "$type": "app.bsky.feed.like",
531
676
  "createdAt": "1970-01-01T00:00:00.000000Z",
532
677
  "subject": Object {
533
- "cid": "cids(3)",
534
- "uri": "record(4)",
678
+ "cid": "cids(7)",
679
+ "uri": "record(8)",
535
680
  },
536
681
  },
537
- "uri": "record(0)",
682
+ "uri": "record(7)",
538
683
  },
539
684
  Object {
540
685
  "author": Object {
@@ -568,7 +713,7 @@ Object {
568
713
  "muted": false,
569
714
  },
570
715
  },
571
- "cid": "cids(4)",
716
+ "cid": "cids(8)",
572
717
  "indexedAt": "1970-01-01T00:00:00.000Z",
573
718
  "isRead": true,
574
719
  "labels": Array [],
@@ -586,7 +731,7 @@ Object {
586
731
  }
587
732
  `;
588
733
 
589
- exports[`notification views fetches notifications with explicit priority 2`] = `
734
+ exports[`notification views fetches notifications with explicit priority 1`] = `
590
735
  Object {
591
736
  "cursor": "1970-01-01T00:00:00.000Z",
592
737
  "notifications": Array [
@@ -594,15 +739,31 @@ Object {
594
739
  "author": Object {
595
740
  "avatar": "https://bsky.public.url/img/avatar/plain/user(1)/cids(1)@jpeg",
596
741
  "createdAt": "1970-01-01T00:00:00.000Z",
597
- "description": "hi im bob label_me",
742
+ "description": "its me!",
598
743
  "did": "user(0)",
599
- "displayName": "bobby",
600
- "handle": "bob.test",
744
+ "displayName": "ali",
745
+ "handle": "alice.test",
601
746
  "indexedAt": "1970-01-01T00:00:00.000Z",
602
- "labels": Array [],
747
+ "labels": Array [
748
+ Object {
749
+ "cid": "cids(2)",
750
+ "cts": "1970-01-01T00:00:00.000Z",
751
+ "src": "user(0)",
752
+ "uri": "record(3)",
753
+ "val": "self-label-a",
754
+ },
755
+ Object {
756
+ "cid": "cids(2)",
757
+ "cts": "1970-01-01T00:00:00.000Z",
758
+ "src": "user(0)",
759
+ "uri": "record(3)",
760
+ "val": "self-label-b",
761
+ },
762
+ ],
603
763
  "viewer": Object {
604
764
  "blockedBy": false,
605
- "followedBy": "record(1)",
765
+ "followedBy": "record(2)",
766
+ "following": "record(1)",
606
767
  "muted": false,
607
768
  },
608
769
  },
@@ -610,128 +771,103 @@ Object {
610
771
  "indexedAt": "1970-01-01T00:00:00.000Z",
611
772
  "isRead": false,
612
773
  "labels": Array [],
613
- "reason": "like",
614
- "reasonSubject": "record(2)",
774
+ "reason": "repost-via-repost",
775
+ "reasonSubject": "record(4)",
615
776
  "record": Object {
616
- "$type": "app.bsky.feed.like",
617
- "createdAt": "1970-01-01T00:00:00.000+00:00",
777
+ "$type": "app.bsky.feed.repost",
778
+ "createdAt": "1970-01-01T00:00:00.000Z",
618
779
  "subject": Object {
619
- "cid": "cids(2)",
620
- "uri": "record(2)",
780
+ "cid": "cids(4)",
781
+ "uri": "record(5)",
782
+ },
783
+ "via": Object {
784
+ "cid": "cids(3)",
785
+ "uri": "record(4)",
621
786
  },
622
787
  },
623
788
  "uri": "record(0)",
624
789
  },
625
790
  Object {
626
791
  "author": Object {
627
- "avatar": "https://bsky.public.url/img/avatar/plain/user(3)/cids(1)@jpeg",
792
+ "avatar": "https://bsky.public.url/img/avatar/plain/user(1)/cids(1)@jpeg",
628
793
  "createdAt": "1970-01-01T00:00:00.000Z",
629
794
  "description": "its me!",
630
- "did": "user(2)",
795
+ "did": "user(0)",
631
796
  "displayName": "ali",
632
797
  "handle": "alice.test",
633
798
  "indexedAt": "1970-01-01T00:00:00.000Z",
634
799
  "labels": Array [
635
800
  Object {
636
- "cid": "cids(4)",
801
+ "cid": "cids(2)",
637
802
  "cts": "1970-01-01T00:00:00.000Z",
638
- "src": "user(2)",
639
- "uri": "record(6)",
803
+ "src": "user(0)",
804
+ "uri": "record(3)",
640
805
  "val": "self-label-a",
641
806
  },
642
807
  Object {
643
- "cid": "cids(4)",
808
+ "cid": "cids(2)",
644
809
  "cts": "1970-01-01T00:00:00.000Z",
645
- "src": "user(2)",
646
- "uri": "record(6)",
810
+ "src": "user(0)",
811
+ "uri": "record(3)",
647
812
  "val": "self-label-b",
648
813
  },
649
814
  ],
650
815
  "viewer": Object {
651
816
  "blockedBy": false,
652
- "followedBy": "record(5)",
653
- "following": "record(4)",
817
+ "followedBy": "record(2)",
818
+ "following": "record(1)",
654
819
  "muted": false,
655
820
  },
656
821
  },
657
- "cid": "cids(3)",
822
+ "cid": "cids(5)",
658
823
  "indexedAt": "1970-01-01T00:00:00.000Z",
659
824
  "isRead": true,
660
825
  "labels": Array [],
661
- "reason": "like",
662
- "reasonSubject": "record(2)",
826
+ "reason": "like-via-repost",
827
+ "reasonSubject": "record(4)",
663
828
  "record": Object {
664
829
  "$type": "app.bsky.feed.like",
665
- "createdAt": "1970-01-01T00:00:00.000000Z",
830
+ "createdAt": "1970-01-01T00:00:00.000Z",
666
831
  "subject": Object {
667
- "cid": "cids(2)",
668
- "uri": "record(2)",
832
+ "cid": "cids(4)",
833
+ "uri": "record(5)",
834
+ },
835
+ "via": Object {
836
+ "cid": "cids(3)",
837
+ "uri": "record(4)",
669
838
  },
670
839
  },
671
- "uri": "record(3)",
840
+ "uri": "record(6)",
672
841
  },
673
842
  Object {
674
843
  "author": Object {
675
- "associated": Object {
676
- "chat": Object {
677
- "allowIncoming": "none",
678
- },
679
- },
680
- "did": "user(4)",
681
- "handle": "dan.test",
682
- "labels": Array [],
683
- "viewer": Object {
684
- "blockedBy": false,
685
- "muted": false,
686
- },
687
- },
688
- "cid": "cids(5)",
689
- "indexedAt": "1970-01-01T00:00:00.000Z",
690
- "isRead": true,
691
- "labels": Array [],
692
- "reason": "quote",
693
- "reasonSubject": "record(2)",
694
- "record": Object {
695
- "$type": "app.bsky.feed.post",
844
+ "avatar": "https://bsky.public.url/img/avatar/plain/user(1)/cids(1)@jpeg",
696
845
  "createdAt": "1970-01-01T00:00:00.000Z",
697
- "embed": Object {
698
- "$type": "app.bsky.embed.record",
699
- "record": Object {
846
+ "description": "its me!",
847
+ "did": "user(0)",
848
+ "displayName": "ali",
849
+ "handle": "alice.test",
850
+ "indexedAt": "1970-01-01T00:00:00.000Z",
851
+ "labels": Array [
852
+ Object {
700
853
  "cid": "cids(2)",
701
- "uri": "record(2)",
854
+ "cts": "1970-01-01T00:00:00.000Z",
855
+ "src": "user(0)",
856
+ "uri": "record(3)",
857
+ "val": "self-label-a",
702
858
  },
703
- },
704
- "facets": Array [
705
859
  Object {
706
- "features": Array [
707
- Object {
708
- "$type": "app.bsky.richtext.facet#mention",
709
- "did": "user(2)",
710
- },
711
- ],
712
- "index": Object {
713
- "byteEnd": 18,
714
- "byteStart": 0,
715
- },
860
+ "cid": "cids(2)",
861
+ "cts": "1970-01-01T00:00:00.000Z",
862
+ "src": "user(0)",
863
+ "uri": "record(3)",
864
+ "val": "self-label-b",
716
865
  },
717
866
  ],
718
- "text": "@alice.bluesky.xyz is the best",
719
- },
720
- "uri": "record(7)",
721
- },
722
- Object {
723
- "author": Object {
724
- "avatar": "https://bsky.public.url/img/avatar/plain/user(1)/cids(1)@jpeg",
725
- "createdAt": "1970-01-01T00:00:00.000Z",
726
- "description": "hi im bob label_me",
727
- "did": "user(0)",
728
- "displayName": "bobby",
729
- "handle": "bob.test",
730
- "indexedAt": "1970-01-01T00:00:00.000Z",
731
- "labels": Array [],
732
867
  "viewer": Object {
733
868
  "blockedBy": false,
734
- "followedBy": "record(1)",
869
+ "followedBy": "record(2)",
870
+ "following": "record(1)",
735
871
  "muted": false,
736
872
  },
737
873
  },
@@ -739,47 +875,51 @@ Object {
739
875
  "indexedAt": "1970-01-01T00:00:00.000Z",
740
876
  "isRead": true,
741
877
  "labels": Array [],
742
- "reason": "follow",
878
+ "reason": "like",
879
+ "reasonSubject": "record(8)",
743
880
  "record": Object {
744
- "$type": "app.bsky.graph.follow",
881
+ "$type": "app.bsky.feed.like",
745
882
  "createdAt": "1970-01-01T00:00:00.000000Z",
746
- "subject": "user(5)",
883
+ "subject": Object {
884
+ "cid": "cids(7)",
885
+ "uri": "record(8)",
886
+ },
747
887
  },
748
- "uri": "record(1)",
888
+ "uri": "record(7)",
749
889
  },
750
890
  Object {
751
891
  "author": Object {
752
- "avatar": "https://bsky.public.url/img/avatar/plain/user(3)/cids(1)@jpeg",
892
+ "avatar": "https://bsky.public.url/img/avatar/plain/user(1)/cids(1)@jpeg",
753
893
  "createdAt": "1970-01-01T00:00:00.000Z",
754
894
  "description": "its me!",
755
- "did": "user(2)",
895
+ "did": "user(0)",
756
896
  "displayName": "ali",
757
897
  "handle": "alice.test",
758
898
  "indexedAt": "1970-01-01T00:00:00.000Z",
759
899
  "labels": Array [
760
900
  Object {
761
- "cid": "cids(4)",
901
+ "cid": "cids(2)",
762
902
  "cts": "1970-01-01T00:00:00.000Z",
763
- "src": "user(2)",
764
- "uri": "record(6)",
903
+ "src": "user(0)",
904
+ "uri": "record(3)",
765
905
  "val": "self-label-a",
766
906
  },
767
907
  Object {
768
- "cid": "cids(4)",
908
+ "cid": "cids(2)",
769
909
  "cts": "1970-01-01T00:00:00.000Z",
770
- "src": "user(2)",
771
- "uri": "record(6)",
910
+ "src": "user(0)",
911
+ "uri": "record(3)",
772
912
  "val": "self-label-b",
773
913
  },
774
914
  ],
775
915
  "viewer": Object {
776
916
  "blockedBy": false,
777
- "followedBy": "record(5)",
778
- "following": "record(4)",
917
+ "followedBy": "record(2)",
918
+ "following": "record(1)",
779
919
  "muted": false,
780
920
  },
781
921
  },
782
- "cid": "cids(7)",
922
+ "cid": "cids(8)",
783
923
  "indexedAt": "1970-01-01T00:00:00.000Z",
784
924
  "isRead": true,
785
925
  "labels": Array [],
@@ -787,101 +927,416 @@ Object {
787
927
  "record": Object {
788
928
  "$type": "app.bsky.graph.follow",
789
929
  "createdAt": "1970-01-01T00:00:00.000Z",
790
- "subject": "user(5)",
930
+ "subject": "user(2)",
791
931
  },
792
- "uri": "record(5)",
932
+ "uri": "record(2)",
793
933
  },
794
934
  ],
795
- "priority": false,
935
+ "priority": true,
796
936
  "seenAt": "1970-01-01T00:00:00.000Z",
797
937
  }
798
938
  `;
799
939
 
800
- exports[`notification views fetches notifications without a last-seen 1`] = `
801
- Array [
802
- Object {
803
- "author": Object {
804
- "associated": Object {
805
- "chat": Object {
806
- "allowIncoming": "none",
940
+ exports[`notification views fetches notifications with explicit priority 2`] = `
941
+ Object {
942
+ "cursor": "1970-01-01T00:00:00.000Z",
943
+ "notifications": Array [
944
+ Object {
945
+ "author": Object {
946
+ "avatar": "https://bsky.public.url/img/avatar/plain/user(1)/cids(1)@jpeg",
947
+ "createdAt": "1970-01-01T00:00:00.000Z",
948
+ "description": "its me!",
949
+ "did": "user(0)",
950
+ "displayName": "ali",
951
+ "handle": "alice.test",
952
+ "indexedAt": "1970-01-01T00:00:00.000Z",
953
+ "labels": Array [
954
+ Object {
955
+ "cid": "cids(2)",
956
+ "cts": "1970-01-01T00:00:00.000Z",
957
+ "src": "user(0)",
958
+ "uri": "record(3)",
959
+ "val": "self-label-a",
960
+ },
961
+ Object {
962
+ "cid": "cids(2)",
963
+ "cts": "1970-01-01T00:00:00.000Z",
964
+ "src": "user(0)",
965
+ "uri": "record(3)",
966
+ "val": "self-label-b",
967
+ },
968
+ ],
969
+ "viewer": Object {
970
+ "blockedBy": false,
971
+ "followedBy": "record(2)",
972
+ "following": "record(1)",
973
+ "muted": false,
807
974
  },
808
975
  },
809
- "did": "user(0)",
810
- "handle": "dan.test",
976
+ "cid": "cids(0)",
977
+ "indexedAt": "1970-01-01T00:00:00.000Z",
978
+ "isRead": false,
811
979
  "labels": Array [],
812
- "viewer": Object {
813
- "blockedBy": false,
814
- "following": "record(1)",
815
- "muted": false,
816
- },
817
- },
818
- "cid": "cids(0)",
819
- "indexedAt": "1970-01-01T00:00:00.000Z",
820
- "isRead": true,
821
- "labels": Array [],
822
- "reason": "repost",
823
- "reasonSubject": "record(2)",
824
- "record": Object {
825
- "$type": "app.bsky.feed.repost",
826
- "createdAt": "1970-01-01T00:00:00.000Z",
827
- "subject": Object {
828
- "cid": "cids(1)",
829
- "uri": "record(2)",
980
+ "reason": "repost-via-repost",
981
+ "reasonSubject": "record(4)",
982
+ "record": Object {
983
+ "$type": "app.bsky.feed.repost",
984
+ "createdAt": "1970-01-01T00:00:00.000Z",
985
+ "subject": Object {
986
+ "cid": "cids(4)",
987
+ "uri": "record(5)",
988
+ },
989
+ "via": Object {
990
+ "cid": "cids(3)",
991
+ "uri": "record(4)",
992
+ },
830
993
  },
994
+ "uri": "record(0)",
831
995
  },
832
- "uri": "record(0)",
833
- },
834
- Object {
835
- "author": Object {
836
- "associated": Object {
837
- "chat": Object {
838
- "allowIncoming": "none",
996
+ Object {
997
+ "author": Object {
998
+ "avatar": "https://bsky.public.url/img/avatar/plain/user(1)/cids(1)@jpeg",
999
+ "createdAt": "1970-01-01T00:00:00.000Z",
1000
+ "description": "its me!",
1001
+ "did": "user(0)",
1002
+ "displayName": "ali",
1003
+ "handle": "alice.test",
1004
+ "indexedAt": "1970-01-01T00:00:00.000Z",
1005
+ "labels": Array [
1006
+ Object {
1007
+ "cid": "cids(2)",
1008
+ "cts": "1970-01-01T00:00:00.000Z",
1009
+ "src": "user(0)",
1010
+ "uri": "record(3)",
1011
+ "val": "self-label-a",
1012
+ },
1013
+ Object {
1014
+ "cid": "cids(2)",
1015
+ "cts": "1970-01-01T00:00:00.000Z",
1016
+ "src": "user(0)",
1017
+ "uri": "record(3)",
1018
+ "val": "self-label-b",
1019
+ },
1020
+ ],
1021
+ "viewer": Object {
1022
+ "blockedBy": false,
1023
+ "followedBy": "record(2)",
1024
+ "following": "record(1)",
1025
+ "muted": false,
839
1026
  },
840
1027
  },
841
- "did": "user(0)",
842
- "handle": "dan.test",
1028
+ "cid": "cids(5)",
1029
+ "indexedAt": "1970-01-01T00:00:00.000Z",
1030
+ "isRead": true,
843
1031
  "labels": Array [],
844
- "viewer": Object {
845
- "blockedBy": false,
846
- "following": "record(1)",
847
- "muted": false,
848
- },
849
- },
850
- "cid": "cids(2)",
851
- "indexedAt": "1970-01-01T00:00:00.000Z",
852
- "isRead": true,
853
- "labels": Array [],
854
- "reason": "repost",
855
- "reasonSubject": "record(4)",
856
- "record": Object {
857
- "$type": "app.bsky.feed.repost",
858
- "createdAt": "1970-01-01T00:00:00.000Z",
859
- "subject": Object {
860
- "cid": "cids(3)",
861
- "uri": "record(4)",
1032
+ "reason": "like-via-repost",
1033
+ "reasonSubject": "record(4)",
1034
+ "record": Object {
1035
+ "$type": "app.bsky.feed.like",
1036
+ "createdAt": "1970-01-01T00:00:00.000Z",
1037
+ "subject": Object {
1038
+ "cid": "cids(4)",
1039
+ "uri": "record(5)",
1040
+ },
1041
+ "via": Object {
1042
+ "cid": "cids(3)",
1043
+ "uri": "record(4)",
1044
+ },
862
1045
  },
1046
+ "uri": "record(6)",
863
1047
  },
864
- "uri": "record(3)",
865
- },
866
- Object {
867
- "author": Object {
868
- "associated": Object {
869
- "chat": Object {
870
- "allowIncoming": "none",
1048
+ Object {
1049
+ "author": Object {
1050
+ "avatar": "https://bsky.public.url/img/avatar/plain/user(3)/cids(1)@jpeg",
1051
+ "createdAt": "1970-01-01T00:00:00.000Z",
1052
+ "description": "hi im bob label_me",
1053
+ "did": "user(2)",
1054
+ "displayName": "bobby",
1055
+ "handle": "bob.test",
1056
+ "indexedAt": "1970-01-01T00:00:00.000Z",
1057
+ "labels": Array [],
1058
+ "viewer": Object {
1059
+ "blockedBy": false,
1060
+ "followedBy": "record(8)",
1061
+ "muted": false,
871
1062
  },
872
1063
  },
873
- "did": "user(0)",
874
- "handle": "dan.test",
1064
+ "cid": "cids(6)",
1065
+ "indexedAt": "1970-01-01T00:00:00.000Z",
1066
+ "isRead": true,
875
1067
  "labels": Array [],
876
- "viewer": Object {
877
- "blockedBy": false,
878
- "following": "record(1)",
879
- "muted": false,
1068
+ "reason": "like",
1069
+ "reasonSubject": "record(9)",
1070
+ "record": Object {
1071
+ "$type": "app.bsky.feed.like",
1072
+ "createdAt": "1970-01-01T00:00:00.000+00:00",
1073
+ "subject": Object {
1074
+ "cid": "cids(7)",
1075
+ "uri": "record(9)",
1076
+ },
880
1077
  },
1078
+ "uri": "record(7)",
881
1079
  },
882
- "cid": "cids(4)",
883
- "indexedAt": "1970-01-01T00:00:00.000Z",
884
- "isRead": true,
1080
+ Object {
1081
+ "author": Object {
1082
+ "avatar": "https://bsky.public.url/img/avatar/plain/user(1)/cids(1)@jpeg",
1083
+ "createdAt": "1970-01-01T00:00:00.000Z",
1084
+ "description": "its me!",
1085
+ "did": "user(0)",
1086
+ "displayName": "ali",
1087
+ "handle": "alice.test",
1088
+ "indexedAt": "1970-01-01T00:00:00.000Z",
1089
+ "labels": Array [
1090
+ Object {
1091
+ "cid": "cids(2)",
1092
+ "cts": "1970-01-01T00:00:00.000Z",
1093
+ "src": "user(0)",
1094
+ "uri": "record(3)",
1095
+ "val": "self-label-a",
1096
+ },
1097
+ Object {
1098
+ "cid": "cids(2)",
1099
+ "cts": "1970-01-01T00:00:00.000Z",
1100
+ "src": "user(0)",
1101
+ "uri": "record(3)",
1102
+ "val": "self-label-b",
1103
+ },
1104
+ ],
1105
+ "viewer": Object {
1106
+ "blockedBy": false,
1107
+ "followedBy": "record(2)",
1108
+ "following": "record(1)",
1109
+ "muted": false,
1110
+ },
1111
+ },
1112
+ "cid": "cids(8)",
1113
+ "indexedAt": "1970-01-01T00:00:00.000Z",
1114
+ "isRead": true,
1115
+ "labels": Array [],
1116
+ "reason": "like",
1117
+ "reasonSubject": "record(9)",
1118
+ "record": Object {
1119
+ "$type": "app.bsky.feed.like",
1120
+ "createdAt": "1970-01-01T00:00:00.000000Z",
1121
+ "subject": Object {
1122
+ "cid": "cids(7)",
1123
+ "uri": "record(9)",
1124
+ },
1125
+ },
1126
+ "uri": "record(10)",
1127
+ },
1128
+ Object {
1129
+ "author": Object {
1130
+ "associated": Object {
1131
+ "chat": Object {
1132
+ "allowIncoming": "none",
1133
+ },
1134
+ },
1135
+ "did": "user(4)",
1136
+ "handle": "dan.test",
1137
+ "labels": Array [],
1138
+ "viewer": Object {
1139
+ "blockedBy": false,
1140
+ "muted": false,
1141
+ },
1142
+ },
1143
+ "cid": "cids(4)",
1144
+ "indexedAt": "1970-01-01T00:00:00.000Z",
1145
+ "isRead": true,
1146
+ "labels": Array [],
1147
+ "reason": "quote",
1148
+ "reasonSubject": "record(9)",
1149
+ "record": Object {
1150
+ "$type": "app.bsky.feed.post",
1151
+ "createdAt": "1970-01-01T00:00:00.000Z",
1152
+ "embed": Object {
1153
+ "$type": "app.bsky.embed.record",
1154
+ "record": Object {
1155
+ "cid": "cids(7)",
1156
+ "uri": "record(9)",
1157
+ },
1158
+ },
1159
+ "facets": Array [
1160
+ Object {
1161
+ "features": Array [
1162
+ Object {
1163
+ "$type": "app.bsky.richtext.facet#mention",
1164
+ "did": "user(0)",
1165
+ },
1166
+ ],
1167
+ "index": Object {
1168
+ "byteEnd": 18,
1169
+ "byteStart": 0,
1170
+ },
1171
+ },
1172
+ ],
1173
+ "text": "@alice.bluesky.xyz is the best",
1174
+ },
1175
+ "uri": "record(5)",
1176
+ },
1177
+ Object {
1178
+ "author": Object {
1179
+ "avatar": "https://bsky.public.url/img/avatar/plain/user(3)/cids(1)@jpeg",
1180
+ "createdAt": "1970-01-01T00:00:00.000Z",
1181
+ "description": "hi im bob label_me",
1182
+ "did": "user(2)",
1183
+ "displayName": "bobby",
1184
+ "handle": "bob.test",
1185
+ "indexedAt": "1970-01-01T00:00:00.000Z",
1186
+ "labels": Array [],
1187
+ "viewer": Object {
1188
+ "blockedBy": false,
1189
+ "followedBy": "record(8)",
1190
+ "muted": false,
1191
+ },
1192
+ },
1193
+ "cid": "cids(9)",
1194
+ "indexedAt": "1970-01-01T00:00:00.000Z",
1195
+ "isRead": true,
1196
+ "labels": Array [],
1197
+ "reason": "follow",
1198
+ "record": Object {
1199
+ "$type": "app.bsky.graph.follow",
1200
+ "createdAt": "1970-01-01T00:00:00.000000Z",
1201
+ "subject": "user(5)",
1202
+ },
1203
+ "uri": "record(8)",
1204
+ },
1205
+ Object {
1206
+ "author": Object {
1207
+ "avatar": "https://bsky.public.url/img/avatar/plain/user(1)/cids(1)@jpeg",
1208
+ "createdAt": "1970-01-01T00:00:00.000Z",
1209
+ "description": "its me!",
1210
+ "did": "user(0)",
1211
+ "displayName": "ali",
1212
+ "handle": "alice.test",
1213
+ "indexedAt": "1970-01-01T00:00:00.000Z",
1214
+ "labels": Array [
1215
+ Object {
1216
+ "cid": "cids(2)",
1217
+ "cts": "1970-01-01T00:00:00.000Z",
1218
+ "src": "user(0)",
1219
+ "uri": "record(3)",
1220
+ "val": "self-label-a",
1221
+ },
1222
+ Object {
1223
+ "cid": "cids(2)",
1224
+ "cts": "1970-01-01T00:00:00.000Z",
1225
+ "src": "user(0)",
1226
+ "uri": "record(3)",
1227
+ "val": "self-label-b",
1228
+ },
1229
+ ],
1230
+ "viewer": Object {
1231
+ "blockedBy": false,
1232
+ "followedBy": "record(2)",
1233
+ "following": "record(1)",
1234
+ "muted": false,
1235
+ },
1236
+ },
1237
+ "cid": "cids(10)",
1238
+ "indexedAt": "1970-01-01T00:00:00.000Z",
1239
+ "isRead": true,
1240
+ "labels": Array [],
1241
+ "reason": "follow",
1242
+ "record": Object {
1243
+ "$type": "app.bsky.graph.follow",
1244
+ "createdAt": "1970-01-01T00:00:00.000Z",
1245
+ "subject": "user(5)",
1246
+ },
1247
+ "uri": "record(2)",
1248
+ },
1249
+ ],
1250
+ "priority": false,
1251
+ "seenAt": "1970-01-01T00:00:00.000Z",
1252
+ }
1253
+ `;
1254
+
1255
+ exports[`notification views fetches notifications without a last-seen 1`] = `
1256
+ Array [
1257
+ Object {
1258
+ "author": Object {
1259
+ "associated": Object {
1260
+ "chat": Object {
1261
+ "allowIncoming": "none",
1262
+ },
1263
+ },
1264
+ "did": "user(0)",
1265
+ "handle": "dan.test",
1266
+ "labels": Array [],
1267
+ "viewer": Object {
1268
+ "blockedBy": false,
1269
+ "following": "record(1)",
1270
+ "muted": false,
1271
+ },
1272
+ },
1273
+ "cid": "cids(0)",
1274
+ "indexedAt": "1970-01-01T00:00:00.000Z",
1275
+ "isRead": true,
1276
+ "labels": Array [],
1277
+ "reason": "repost",
1278
+ "reasonSubject": "record(2)",
1279
+ "record": Object {
1280
+ "$type": "app.bsky.feed.repost",
1281
+ "createdAt": "1970-01-01T00:00:00.000Z",
1282
+ "subject": Object {
1283
+ "cid": "cids(1)",
1284
+ "uri": "record(2)",
1285
+ },
1286
+ },
1287
+ "uri": "record(0)",
1288
+ },
1289
+ Object {
1290
+ "author": Object {
1291
+ "associated": Object {
1292
+ "chat": Object {
1293
+ "allowIncoming": "none",
1294
+ },
1295
+ },
1296
+ "did": "user(0)",
1297
+ "handle": "dan.test",
1298
+ "labels": Array [],
1299
+ "viewer": Object {
1300
+ "blockedBy": false,
1301
+ "following": "record(1)",
1302
+ "muted": false,
1303
+ },
1304
+ },
1305
+ "cid": "cids(2)",
1306
+ "indexedAt": "1970-01-01T00:00:00.000Z",
1307
+ "isRead": true,
1308
+ "labels": Array [],
1309
+ "reason": "repost",
1310
+ "reasonSubject": "record(4)",
1311
+ "record": Object {
1312
+ "$type": "app.bsky.feed.repost",
1313
+ "createdAt": "1970-01-01T00:00:00.000Z",
1314
+ "subject": Object {
1315
+ "cid": "cids(3)",
1316
+ "uri": "record(4)",
1317
+ },
1318
+ },
1319
+ "uri": "record(3)",
1320
+ },
1321
+ Object {
1322
+ "author": Object {
1323
+ "associated": Object {
1324
+ "chat": Object {
1325
+ "allowIncoming": "none",
1326
+ },
1327
+ },
1328
+ "did": "user(0)",
1329
+ "handle": "dan.test",
1330
+ "labels": Array [],
1331
+ "viewer": Object {
1332
+ "blockedBy": false,
1333
+ "following": "record(1)",
1334
+ "muted": false,
1335
+ },
1336
+ },
1337
+ "cid": "cids(4)",
1338
+ "indexedAt": "1970-01-01T00:00:00.000Z",
1339
+ "isRead": true,
885
1340
  "labels": Array [],
886
1341
  "reason": "mention",
887
1342
  "record": Object {
@@ -1481,43 +1936,315 @@ Object {
1481
1936
  "muted": false,
1482
1937
  },
1483
1938
  },
1484
- "cid": "cids(0)",
1485
- "indexedAt": "1970-01-01T00:00:00.000Z",
1486
- "isRead": false,
1487
- "labels": Array [],
1488
- "reason": "mention",
1489
- "record": Object {
1490
- "$type": "app.bsky.feed.post",
1491
- "createdAt": "1970-01-01T00:00:00.000Z",
1492
- "embed": Object {
1493
- "$type": "app.bsky.embed.record",
1494
- "record": Object {
1495
- "cid": "cids(1)",
1496
- "uri": "record(2)",
1497
- },
1498
- },
1499
- "facets": Array [
1500
- Object {
1501
- "features": Array [
1502
- Object {
1503
- "$type": "app.bsky.richtext.facet#mention",
1504
- "did": "user(1)",
1505
- },
1506
- ],
1507
- "index": Object {
1508
- "byteEnd": 18,
1509
- "byteStart": 0,
1510
- },
1511
- },
1512
- ],
1513
- "text": "@alice.bluesky.xyz is the best",
1939
+ "cid": "cids(0)",
1940
+ "indexedAt": "1970-01-01T00:00:00.000Z",
1941
+ "isRead": false,
1942
+ "labels": Array [],
1943
+ "reason": "mention",
1944
+ "record": Object {
1945
+ "$type": "app.bsky.feed.post",
1946
+ "createdAt": "1970-01-01T00:00:00.000Z",
1947
+ "embed": Object {
1948
+ "$type": "app.bsky.embed.record",
1949
+ "record": Object {
1950
+ "cid": "cids(1)",
1951
+ "uri": "record(2)",
1952
+ },
1953
+ },
1954
+ "facets": Array [
1955
+ Object {
1956
+ "features": Array [
1957
+ Object {
1958
+ "$type": "app.bsky.richtext.facet#mention",
1959
+ "did": "user(1)",
1960
+ },
1961
+ ],
1962
+ "index": Object {
1963
+ "byteEnd": 18,
1964
+ "byteStart": 0,
1965
+ },
1966
+ },
1967
+ ],
1968
+ "text": "@alice.bluesky.xyz is the best",
1969
+ },
1970
+ "uri": "record(0)",
1971
+ },
1972
+ ],
1973
+ "priority": false,
1974
+ "seenAt": "1970-01-01T00:00:00.000Z",
1975
+ }
1976
+ `;
1977
+
1978
+ exports[`notification views generates notifications for likes 1`] = `
1979
+ Array [
1980
+ Object {
1981
+ "author": Object {
1982
+ "associated": Object {
1983
+ "chat": Object {
1984
+ "allowIncoming": "none",
1985
+ },
1986
+ },
1987
+ "did": "user(0)",
1988
+ "handle": "dan.test",
1989
+ "labels": Array [],
1990
+ "viewer": Object {
1991
+ "blockedBy": false,
1992
+ "following": "record(1)",
1993
+ "muted": false,
1994
+ },
1995
+ },
1996
+ "cid": "cids(0)",
1997
+ "indexedAt": "1970-01-01T00:00:00.000Z",
1998
+ "isRead": true,
1999
+ "labels": Array [],
2000
+ "reason": "like",
2001
+ "reasonSubject": "record(2)",
2002
+ "record": Object {
2003
+ "$type": "app.bsky.feed.like",
2004
+ "createdAt": "1970-01-01T00:00:00.000Z",
2005
+ "subject": Object {
2006
+ "cid": "cids(1)",
2007
+ "uri": "record(2)",
2008
+ },
2009
+ },
2010
+ "uri": "record(0)",
2011
+ },
2012
+ Object {
2013
+ "author": Object {
2014
+ "did": "user(1)",
2015
+ "handle": "carol.test",
2016
+ "labels": Array [],
2017
+ "viewer": Object {
2018
+ "blockedBy": false,
2019
+ "followedBy": "record(5)",
2020
+ "following": "record(4)",
2021
+ "muted": false,
2022
+ },
2023
+ },
2024
+ "cid": "cids(2)",
2025
+ "indexedAt": "1970-01-01T00:00:00.000Z",
2026
+ "isRead": true,
2027
+ "labels": Array [],
2028
+ "reason": "like",
2029
+ "reasonSubject": "record(6)",
2030
+ "record": Object {
2031
+ "$type": "app.bsky.feed.like",
2032
+ "createdAt": "1970-01-01T00:00:00.000Z",
2033
+ "subject": Object {
2034
+ "cid": "cids(3)",
2035
+ "uri": "record(6)",
2036
+ },
2037
+ },
2038
+ "uri": "record(3)",
2039
+ },
2040
+ Object {
2041
+ "author": Object {
2042
+ "did": "user(1)",
2043
+ "handle": "carol.test",
2044
+ "labels": Array [],
2045
+ "viewer": Object {
2046
+ "blockedBy": false,
2047
+ "followedBy": "record(5)",
2048
+ "following": "record(4)",
2049
+ "muted": false,
2050
+ },
2051
+ },
2052
+ "cid": "cids(4)",
2053
+ "indexedAt": "1970-01-01T00:00:00.000Z",
2054
+ "isRead": true,
2055
+ "labels": Array [],
2056
+ "reason": "like",
2057
+ "reasonSubject": "record(2)",
2058
+ "record": Object {
2059
+ "$type": "app.bsky.feed.like",
2060
+ "createdAt": "1970-01-01T00:00:00.000Z",
2061
+ "subject": Object {
2062
+ "cid": "cids(1)",
2063
+ "uri": "record(2)",
2064
+ },
2065
+ },
2066
+ "uri": "record(7)",
2067
+ },
2068
+ Object {
2069
+ "author": Object {
2070
+ "avatar": "https://bsky.public.url/img/avatar/plain/user(3)/cids(6)@jpeg",
2071
+ "createdAt": "1970-01-01T00:00:00.000Z",
2072
+ "description": "hi im bob label_me",
2073
+ "did": "user(2)",
2074
+ "displayName": "bobby",
2075
+ "handle": "bob.test",
2076
+ "indexedAt": "1970-01-01T00:00:00.000Z",
2077
+ "labels": Array [],
2078
+ "viewer": Object {
2079
+ "blockedBy": false,
2080
+ "followedBy": "record(10)",
2081
+ "following": "record(9)",
2082
+ "muted": false,
2083
+ },
2084
+ },
2085
+ "cid": "cids(5)",
2086
+ "indexedAt": "1970-01-01T00:00:00.000Z",
2087
+ "isRead": true,
2088
+ "labels": Array [],
2089
+ "reason": "like",
2090
+ "reasonSubject": "record(6)",
2091
+ "record": Object {
2092
+ "$type": "app.bsky.feed.like",
2093
+ "createdAt": "1970-01-01T00:00:00.000Z",
2094
+ "subject": Object {
2095
+ "cid": "cids(3)",
2096
+ "uri": "record(6)",
2097
+ },
2098
+ },
2099
+ "uri": "record(8)",
2100
+ },
2101
+ Object {
2102
+ "author": Object {
2103
+ "avatar": "https://bsky.public.url/img/avatar/plain/user(3)/cids(6)@jpeg",
2104
+ "createdAt": "1970-01-01T00:00:00.000Z",
2105
+ "description": "hi im bob label_me",
2106
+ "did": "user(2)",
2107
+ "displayName": "bobby",
2108
+ "handle": "bob.test",
2109
+ "indexedAt": "1970-01-01T00:00:00.000Z",
2110
+ "labels": Array [],
2111
+ "viewer": Object {
2112
+ "blockedBy": false,
2113
+ "followedBy": "record(10)",
2114
+ "following": "record(9)",
2115
+ "muted": false,
2116
+ },
2117
+ },
2118
+ "cid": "cids(7)",
2119
+ "indexedAt": "1970-01-01T00:00:00.000Z",
2120
+ "isRead": true,
2121
+ "labels": Array [],
2122
+ "reason": "like",
2123
+ "reasonSubject": "record(2)",
2124
+ "record": Object {
2125
+ "$type": "app.bsky.feed.like",
2126
+ "createdAt": "1970-01-01T00:00:00.000Z",
2127
+ "subject": Object {
2128
+ "cid": "cids(1)",
2129
+ "uri": "record(2)",
2130
+ },
2131
+ },
2132
+ "uri": "record(11)",
2133
+ },
2134
+ ]
2135
+ `;
2136
+
2137
+ exports[`notification views generates notifications for likes via repost 1`] = `
2138
+ Array [
2139
+ Object {
2140
+ "author": Object {
2141
+ "avatar": "https://bsky.public.url/img/avatar/plain/user(1)/cids(1)@jpeg",
2142
+ "createdAt": "1970-01-01T00:00:00.000Z",
2143
+ "description": "its me!",
2144
+ "did": "user(0)",
2145
+ "displayName": "ali",
2146
+ "handle": "alice.test",
2147
+ "indexedAt": "1970-01-01T00:00:00.000Z",
2148
+ "labels": Array [
2149
+ Object {
2150
+ "cid": "cids(2)",
2151
+ "cts": "1970-01-01T00:00:00.000Z",
2152
+ "src": "user(0)",
2153
+ "uri": "record(2)",
2154
+ "val": "self-label-a",
2155
+ },
2156
+ Object {
2157
+ "cid": "cids(2)",
2158
+ "cts": "1970-01-01T00:00:00.000Z",
2159
+ "src": "user(0)",
2160
+ "uri": "record(2)",
2161
+ "val": "self-label-b",
2162
+ },
2163
+ ],
2164
+ "viewer": Object {
2165
+ "blockedBy": false,
2166
+ "followedBy": "record(1)",
2167
+ "muted": false,
2168
+ },
2169
+ },
2170
+ "cid": "cids(0)",
2171
+ "indexedAt": "1970-01-01T00:00:00.000Z",
2172
+ "isRead": false,
2173
+ "labels": Array [],
2174
+ "reason": "like",
2175
+ "reasonSubject": "record(3)",
2176
+ "record": Object {
2177
+ "$type": "app.bsky.feed.like",
2178
+ "createdAt": "1970-01-01T00:00:00.000Z",
2179
+ "subject": Object {
2180
+ "cid": "cids(4)",
2181
+ "uri": "record(3)",
2182
+ },
2183
+ "via": Object {
2184
+ "cid": "cids(3)",
2185
+ "uri": "record(4)",
2186
+ },
2187
+ },
2188
+ "uri": "record(0)",
2189
+ },
2190
+ ]
2191
+ `;
2192
+
2193
+ exports[`notification views generates notifications for likes via repost 2`] = `
2194
+ Array [
2195
+ Object {
2196
+ "author": Object {
2197
+ "avatar": "https://bsky.public.url/img/avatar/plain/user(1)/cids(1)@jpeg",
2198
+ "createdAt": "1970-01-01T00:00:00.000Z",
2199
+ "description": "its me!",
2200
+ "did": "user(0)",
2201
+ "displayName": "ali",
2202
+ "handle": "alice.test",
2203
+ "indexedAt": "1970-01-01T00:00:00.000Z",
2204
+ "labels": Array [
2205
+ Object {
2206
+ "cid": "cids(2)",
2207
+ "cts": "1970-01-01T00:00:00.000Z",
2208
+ "src": "user(0)",
2209
+ "uri": "record(3)",
2210
+ "val": "self-label-a",
2211
+ },
2212
+ Object {
2213
+ "cid": "cids(2)",
2214
+ "cts": "1970-01-01T00:00:00.000Z",
2215
+ "src": "user(0)",
2216
+ "uri": "record(3)",
2217
+ "val": "self-label-b",
2218
+ },
2219
+ ],
2220
+ "viewer": Object {
2221
+ "blockedBy": false,
2222
+ "followedBy": "record(2)",
2223
+ "following": "record(1)",
2224
+ "muted": false,
2225
+ },
2226
+ },
2227
+ "cid": "cids(0)",
2228
+ "indexedAt": "1970-01-01T00:00:00.000Z",
2229
+ "isRead": false,
2230
+ "labels": Array [],
2231
+ "reason": "like-via-repost",
2232
+ "reasonSubject": "record(4)",
2233
+ "record": Object {
2234
+ "$type": "app.bsky.feed.like",
2235
+ "createdAt": "1970-01-01T00:00:00.000Z",
2236
+ "subject": Object {
2237
+ "cid": "cids(4)",
2238
+ "uri": "record(5)",
2239
+ },
2240
+ "via": Object {
2241
+ "cid": "cids(3)",
2242
+ "uri": "record(4)",
1514
2243
  },
1515
- "uri": "record(0)",
1516
2244
  },
1517
- ],
1518
- "priority": false,
1519
- "seenAt": "1970-01-01T00:00:00.000Z",
1520
- }
2245
+ "uri": "record(0)",
2246
+ },
2247
+ ]
1521
2248
  `;
1522
2249
 
1523
2250
  exports[`notification views generates notifications for quotes 1`] = `
@@ -1653,6 +2380,214 @@ Array [
1653
2380
  ]
1654
2381
  `;
1655
2382
 
2383
+ exports[`notification views generates notifications for reposts 1`] = `
2384
+ Array [
2385
+ Object {
2386
+ "author": Object {
2387
+ "associated": Object {
2388
+ "chat": Object {
2389
+ "allowIncoming": "none",
2390
+ },
2391
+ },
2392
+ "did": "user(0)",
2393
+ "handle": "dan.test",
2394
+ "labels": Array [],
2395
+ "viewer": Object {
2396
+ "blockedBy": false,
2397
+ "following": "record(1)",
2398
+ "muted": false,
2399
+ },
2400
+ },
2401
+ "cid": "cids(0)",
2402
+ "indexedAt": "1970-01-01T00:00:00.000Z",
2403
+ "isRead": true,
2404
+ "labels": Array [],
2405
+ "reason": "repost",
2406
+ "reasonSubject": "record(2)",
2407
+ "record": Object {
2408
+ "$type": "app.bsky.feed.repost",
2409
+ "createdAt": "1970-01-01T00:00:00.000Z",
2410
+ "subject": Object {
2411
+ "cid": "cids(1)",
2412
+ "uri": "record(2)",
2413
+ },
2414
+ },
2415
+ "uri": "record(0)",
2416
+ },
2417
+ Object {
2418
+ "author": Object {
2419
+ "associated": Object {
2420
+ "chat": Object {
2421
+ "allowIncoming": "none",
2422
+ },
2423
+ },
2424
+ "did": "user(0)",
2425
+ "handle": "dan.test",
2426
+ "labels": Array [],
2427
+ "viewer": Object {
2428
+ "blockedBy": false,
2429
+ "following": "record(1)",
2430
+ "muted": false,
2431
+ },
2432
+ },
2433
+ "cid": "cids(2)",
2434
+ "indexedAt": "1970-01-01T00:00:00.000Z",
2435
+ "isRead": true,
2436
+ "labels": Array [],
2437
+ "reason": "repost",
2438
+ "reasonSubject": "record(4)",
2439
+ "record": Object {
2440
+ "$type": "app.bsky.feed.repost",
2441
+ "createdAt": "1970-01-01T00:00:00.000Z",
2442
+ "subject": Object {
2443
+ "cid": "cids(3)",
2444
+ "uri": "record(4)",
2445
+ },
2446
+ },
2447
+ "uri": "record(3)",
2448
+ },
2449
+ ]
2450
+ `;
2451
+
2452
+ exports[`notification views generates notifications for reposts via repost 1`] = `
2453
+ Array [
2454
+ Object {
2455
+ "author": Object {
2456
+ "did": "user(0)",
2457
+ "handle": "carol.test",
2458
+ "labels": Array [],
2459
+ "viewer": Object {
2460
+ "blockedBy": false,
2461
+ "muted": false,
2462
+ },
2463
+ },
2464
+ "cid": "cids(0)",
2465
+ "indexedAt": "1970-01-01T00:00:00.000Z",
2466
+ "isRead": true,
2467
+ "labels": Array [],
2468
+ "reason": "repost",
2469
+ "reasonSubject": "record(1)",
2470
+ "record": Object {
2471
+ "$type": "app.bsky.feed.repost",
2472
+ "createdAt": "1970-01-01T00:00:00.000Z",
2473
+ "subject": Object {
2474
+ "cid": "cids(1)",
2475
+ "uri": "record(1)",
2476
+ },
2477
+ },
2478
+ "uri": "record(0)",
2479
+ },
2480
+ Object {
2481
+ "author": Object {
2482
+ "avatar": "https://bsky.public.url/img/avatar/plain/user(2)/cids(3)@jpeg",
2483
+ "createdAt": "1970-01-01T00:00:00.000Z",
2484
+ "description": "its me!",
2485
+ "did": "user(1)",
2486
+ "displayName": "ali",
2487
+ "handle": "alice.test",
2488
+ "indexedAt": "1970-01-01T00:00:00.000Z",
2489
+ "labels": Array [
2490
+ Object {
2491
+ "cid": "cids(4)",
2492
+ "cts": "1970-01-01T00:00:00.000Z",
2493
+ "src": "user(1)",
2494
+ "uri": "record(4)",
2495
+ "val": "self-label-a",
2496
+ },
2497
+ Object {
2498
+ "cid": "cids(4)",
2499
+ "cts": "1970-01-01T00:00:00.000Z",
2500
+ "src": "user(1)",
2501
+ "uri": "record(4)",
2502
+ "val": "self-label-b",
2503
+ },
2504
+ ],
2505
+ "viewer": Object {
2506
+ "blockedBy": false,
2507
+ "followedBy": "record(3)",
2508
+ "muted": false,
2509
+ },
2510
+ },
2511
+ "cid": "cids(2)",
2512
+ "indexedAt": "1970-01-01T00:00:00.000Z",
2513
+ "isRead": false,
2514
+ "labels": Array [],
2515
+ "reason": "repost",
2516
+ "reasonSubject": "record(1)",
2517
+ "record": Object {
2518
+ "$type": "app.bsky.feed.repost",
2519
+ "createdAt": "1970-01-01T00:00:00.000Z",
2520
+ "subject": Object {
2521
+ "cid": "cids(1)",
2522
+ "uri": "record(1)",
2523
+ },
2524
+ "via": Object {
2525
+ "cid": "cids(0)",
2526
+ "uri": "record(0)",
2527
+ },
2528
+ },
2529
+ "uri": "record(2)",
2530
+ },
2531
+ ]
2532
+ `;
2533
+
2534
+ exports[`notification views generates notifications for reposts via repost 2`] = `
2535
+ Array [
2536
+ Object {
2537
+ "author": Object {
2538
+ "avatar": "https://bsky.public.url/img/avatar/plain/user(1)/cids(1)@jpeg",
2539
+ "createdAt": "1970-01-01T00:00:00.000Z",
2540
+ "description": "its me!",
2541
+ "did": "user(0)",
2542
+ "displayName": "ali",
2543
+ "handle": "alice.test",
2544
+ "indexedAt": "1970-01-01T00:00:00.000Z",
2545
+ "labels": Array [
2546
+ Object {
2547
+ "cid": "cids(2)",
2548
+ "cts": "1970-01-01T00:00:00.000Z",
2549
+ "src": "user(0)",
2550
+ "uri": "record(3)",
2551
+ "val": "self-label-a",
2552
+ },
2553
+ Object {
2554
+ "cid": "cids(2)",
2555
+ "cts": "1970-01-01T00:00:00.000Z",
2556
+ "src": "user(0)",
2557
+ "uri": "record(3)",
2558
+ "val": "self-label-b",
2559
+ },
2560
+ ],
2561
+ "viewer": Object {
2562
+ "blockedBy": false,
2563
+ "followedBy": "record(2)",
2564
+ "following": "record(1)",
2565
+ "muted": false,
2566
+ },
2567
+ },
2568
+ "cid": "cids(0)",
2569
+ "indexedAt": "1970-01-01T00:00:00.000Z",
2570
+ "isRead": false,
2571
+ "labels": Array [],
2572
+ "reason": "repost-via-repost",
2573
+ "reasonSubject": "record(4)",
2574
+ "record": Object {
2575
+ "$type": "app.bsky.feed.repost",
2576
+ "createdAt": "1970-01-01T00:00:00.000Z",
2577
+ "subject": Object {
2578
+ "cid": "cids(4)",
2579
+ "uri": "record(5)",
2580
+ },
2581
+ "via": Object {
2582
+ "cid": "cids(3)",
2583
+ "uri": "record(4)",
2584
+ },
2585
+ },
2586
+ "uri": "record(0)",
2587
+ },
2588
+ ]
2589
+ `;
2590
+
1656
2591
  exports[`notification views generates notifications for verification created and removed 1`] = `
1657
2592
  Array [
1658
2593
  Object {