A community based topic aggregation platform built on atproto
1package userblocks
2
3import "time"
4
5// UserBlock represents a one-directional block relationship between two users.
6// The block record lives in the blocker's PDS repository at:
7// at://blocker_did/social.coves.actor.block/{tid}
8//
9// One-directional: Only the blocker's feeds/comments are filtered.
10// The blocked user is unaffected and unaware.
11type UserBlock struct {
12 ID int `json:"id" db:"id"`
13 BlockerDID string `json:"blockerDid" db:"blocker_did"`
14 BlockedDID string `json:"blockedDid" db:"blocked_did"`
15 BlockedAt time.Time `json:"blockedAt" db:"blocked_at"`
16 RecordURI string `json:"recordUri" db:"record_uri"`
17 RecordCID string `json:"recordCid" db:"record_cid"`
18}
19
20// BlockResult is returned by BlockUser after a successful PDS write-forward.
21// Contains only the record URI and CID from PDS. The full UserBlock will be
22// indexed asynchronously via the firehose consumer.
23type BlockResult struct {
24 RecordURI string `json:"recordUri"`
25 RecordCID string `json:"recordCid"`
26}