Changeset View
Changeset View
Standalone View
Standalone View
lib/types/user-types.js
Show All 19 Lines | export type GlobalUserInfo = { | ||||
+avatar?: ?ClientAvatar, | +avatar?: ?ClientAvatar, | ||||
}; | }; | ||||
export type GlobalAccountUserInfo = { | export type GlobalAccountUserInfo = { | ||||
+id: string, | +id: string, | ||||
+username: string, | +username: string, | ||||
+avatar?: ?ClientAvatar, | +avatar?: ?ClientAvatar, | ||||
}; | }; | ||||
export const globalAccountUserInfoValidator: TInterface<GlobalAccountUserInfo> = | |||||
tShape<GlobalAccountUserInfo>({ | |||||
id: t.String, | |||||
username: t.String, | |||||
avatar: t.maybe(clientAvatarValidator), | |||||
}); | |||||
export type UserInfo = { | export type UserInfo = { | ||||
+id: string, | +id: string, | ||||
+username: ?string, | +username: ?string, | ||||
+relationshipStatus?: UserRelationshipStatus, | +relationshipStatus?: UserRelationshipStatus, | ||||
+avatar?: ?ClientAvatar, | +avatar?: ?ClientAvatar, | ||||
}; | }; | ||||
export const userInfoValidator: TInterface<UserInfo> = tShape<UserInfo>({ | export const userInfoValidator: TInterface<UserInfo> = tShape<UserInfo>({ | ||||
id: t.String, | id: t.String, | ||||
username: t.maybe(t.String), | username: t.maybe(t.String), | ||||
relationshipStatus: t.maybe(userRelationshipStatusValidator), | relationshipStatus: t.maybe(userRelationshipStatusValidator), | ||||
avatar: t.maybe(clientAvatarValidator), | avatar: t.maybe(clientAvatarValidator), | ||||
}); | }); | ||||
export type UserInfos = { +[id: string]: UserInfo }; | export type UserInfos = { +[id: string]: UserInfo }; | ||||
export type AccountUserInfo = { | export type AccountUserInfo = { | ||||
+id: string, | +id: string, | ||||
+username: string, | +username: string, | ||||
+relationshipStatus?: UserRelationshipStatus, | +relationshipStatus?: UserRelationshipStatus, | ||||
+avatar?: ?ClientAvatar, | +avatar?: ?ClientAvatar, | ||||
}; | }; | ||||
export const accountUserInfoValidator: TInterface<AccountUserInfo> = | |||||
tShape<AccountUserInfo>({ | |||||
id: t.String, | |||||
username: t.String, | |||||
relationshipStatus: t.maybe(userRelationshipStatusValidator), | |||||
avatar: t.maybe(clientAvatarValidator), | |||||
}); | |||||
export type UserStore = { | export type UserStore = { | ||||
+userInfos: UserInfos, | +userInfos: UserInfos, | ||||
+inconsistencyReports: $ReadOnlyArray<UserInconsistencyReportCreationRequest>, | +inconsistencyReports: $ReadOnlyArray<UserInconsistencyReportCreationRequest>, | ||||
}; | }; | ||||
export type RelativeUserInfo = { | export type RelativeUserInfo = { | ||||
+id: string, | +id: string, | ||||
▲ Show 20 Lines • Show All 59 Lines • Show Last 20 Lines |