diff options
| author | syuilo <Syuilotan@yahoo.co.jp> | 2023-03-08 08:56:09 +0900 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-03-08 08:56:09 +0900 |
| commit | 4c2f7c64cc2b70bd7b686e9ece1ebbc30eeab511 (patch) | |
| tree | 0d1ce1e7b3cd567c98205343e1e550cc47c714fa /packages/backend/src/models/entities | |
| parent | refactor(dev): separate test workflows (diff) | |
| download | sharkey-4c2f7c64cc2b70bd7b686e9ece1ebbc30eeab511.tar.gz sharkey-4c2f7c64cc2b70bd7b686e9ece1ebbc30eeab511.tar.bz2 sharkey-4c2f7c64cc2b70bd7b686e9ece1ebbc30eeab511.zip | |
feat: Per-user renote mute (#10249)
* feat: per-user renote muting
From FoundKey/c414f24a2c https://akkoma.dev/FoundKeyGang/FoundKey
* Update ja-JP.yml
* Delete renote-muting.ts
* rename
* fix ids
* lint
* fix
* Update CHANGELOG.md
* リノートをミュートしたユーザー一覧を見れるように
* :art:
* add test
* fix test
---------
Co-authored-by: Hélène <pleroma-dev@helene.moe>
Diffstat (limited to 'packages/backend/src/models/entities')
| -rw-r--r-- | packages/backend/src/models/entities/RenoteMuting.ts | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/packages/backend/src/models/entities/RenoteMuting.ts b/packages/backend/src/models/entities/RenoteMuting.ts new file mode 100644 index 0000000000..2f803a5fa8 --- /dev/null +++ b/packages/backend/src/models/entities/RenoteMuting.ts @@ -0,0 +1,42 @@ +import { PrimaryColumn, Entity, Index, JoinColumn, Column, ManyToOne } from 'typeorm'; +import { id } from '../id.js'; +import { User } from './User.js'; + +@Entity() +@Index(['muterId', 'muteeId'], { unique: true }) +export class RenoteMuting { + @PrimaryColumn(id()) + public id: string; + + @Index() + @Column('timestamp with time zone', { + comment: 'The created date of the Muting.', + }) + public createdAt: Date; + + @Index() + @Column({ + ...id(), + comment: 'The mutee user ID.', + }) + public muteeId: User['id']; + + @ManyToOne(type => User, { + onDelete: 'CASCADE', + }) + @JoinColumn() + public mutee: User | null; + + @Index() + @Column({ + ...id(), + comment: 'The muter user ID.', + }) + public muterId: User['id']; + + @ManyToOne(type => User, { + onDelete: 'CASCADE', + }) + @JoinColumn() + public muter: User | null; +} |