[APP-635] Mutelists (#601)
* Add lists and profilelist screens * Implement lists screen and lists-list in profiles * Add empty states to the lists screen * Switch (mostly) from blocklists to mutelists * Rework: create a new moderation screen and move everything related under it * Fix moderation screen on desktop web * Tune the empty state code * Change content moderation modal to content filtering * Add CreateMuteList modal * Implement mutelist creation * Add lists listings * Add the ability to create new mutelists * Add 'add to list' tool * Satisfy the hashtag hyphen haters * Add update/delete/subscribe/unsubscribe to lists * Show which list caused a mute * Add list un/subscribe * Add the mute override when viewing a profile's posts * Update to latest backend * Add simulation tests and tune some behaviors * Fix lint * Bump deps * Fix list refresh after creation * Mute list subscriptions -> Mute lists
This commit is contained in:
parent
34d8fa5991
commit
ebcd633386
48 changed files with 2984 additions and 151 deletions
|
@ -337,6 +337,32 @@ class Mocker {
|
|||
])
|
||||
.execute()
|
||||
}
|
||||
|
||||
async createMuteList(user: string, name: string): Promise<string> {
|
||||
const res = await this.users[user]?.agent.app.bsky.graph.list.create(
|
||||
{repo: this.users[user]?.did},
|
||||
{
|
||||
purpose: 'app.bsky.graph.defs#modlist',
|
||||
name,
|
||||
createdAt: new Date().toISOString(),
|
||||
},
|
||||
)
|
||||
await this.users[user]?.agent.app.bsky.graph.muteActorList({
|
||||
list: res.uri,
|
||||
})
|
||||
return res.uri
|
||||
}
|
||||
|
||||
async addToMuteList(owner: string, list: string, subject: string) {
|
||||
await this.users[owner]?.agent.app.bsky.graph.listitem.create(
|
||||
{repo: this.users[owner]?.did},
|
||||
{
|
||||
list,
|
||||
subject,
|
||||
createdAt: new Date().toISOString(),
|
||||
},
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
const checkAvailablePort = (port: number) =>
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue