wip: email notification
This commit is contained in:
parent
2d3248504b
commit
ebadd7fd3f
20 changed files with 355 additions and 159 deletions
|
@ -4,6 +4,8 @@ import { User } from './user';
|
|||
import { Page } from './page';
|
||||
import { notificationTypes } from '../../types';
|
||||
|
||||
// TODO: このテーブルで管理している情報すべてレジストリで管理するようにしても良いかも
|
||||
// ただ、「emailVerified が true なユーザーを find する」のようなクエリは書けなくなるからウーン
|
||||
@Entity()
|
||||
export class UserProfile {
|
||||
@PrimaryColumn(id())
|
||||
|
@ -41,6 +43,11 @@ export class UserProfile {
|
|||
value: string;
|
||||
}[];
|
||||
|
||||
@Column('varchar', {
|
||||
length: 32, nullable: true,
|
||||
})
|
||||
public lang: string | null;
|
||||
|
||||
@Column('varchar', {
|
||||
length: 512, nullable: true,
|
||||
comment: 'Remote URL of the user.'
|
||||
|
@ -63,6 +70,11 @@ export class UserProfile {
|
|||
})
|
||||
public emailVerified: boolean;
|
||||
|
||||
@Column('jsonb', {
|
||||
default: ['follow', 'receiveFollowRequest', 'groupInvited']
|
||||
})
|
||||
public emailNotificationTypes: string[];
|
||||
|
||||
@Column('varchar', {
|
||||
length: 128, nullable: true,
|
||||
})
|
||||
|
|
|
@ -213,6 +213,7 @@ export class UserRepository extends Repository<User> {
|
|||
description: profile!.description,
|
||||
location: profile!.location,
|
||||
birthday: profile!.birthday,
|
||||
lang: profile!.lang,
|
||||
fields: profile!.fields,
|
||||
followersCount: user.followersCount,
|
||||
followingCount: user.followingCount,
|
||||
|
@ -258,7 +259,8 @@ export class UserRepository extends Repository<User> {
|
|||
hasPendingReceivedFollowRequest: this.getHasPendingReceivedFollowRequest(user.id),
|
||||
integrations: profile!.integrations,
|
||||
mutedWords: profile!.mutedWords,
|
||||
mutingNotificationTypes: profile?.mutingNotificationTypes,
|
||||
mutingNotificationTypes: profile!.mutingNotificationTypes,
|
||||
emailNotificationTypes: profile!.emailNotificationTypes,
|
||||
} : {}),
|
||||
|
||||
...(opts.includeSecrets ? {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue