A community based topic aggregation platform built on atproto
at main 26 lines 1.0 kB view raw
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}