mirror of
https://github.com/ManInDark/HabitTrove.git
synced 2026-03-11 04:49:49 +01:00
Release/v0.2.31 (#188)
This commit is contained in:
18
lib/types.ts
18
lib/types.ts
@@ -28,6 +28,7 @@ export type SafeUser = SessionUser & {
|
||||
avatarPath?: string
|
||||
permissions?: Permission[]
|
||||
isAdmin?: boolean
|
||||
hasPassword?: boolean
|
||||
}
|
||||
|
||||
export type User = SafeUser & {
|
||||
@@ -35,6 +36,10 @@ export type User = SafeUser & {
|
||||
lastNotificationReadTimestamp?: string // UTC ISO date string
|
||||
}
|
||||
|
||||
export type PublicUser = Omit<User, 'password'> & {
|
||||
hasPassword: boolean
|
||||
}
|
||||
|
||||
export type Habit = {
|
||||
id: string
|
||||
name: string
|
||||
@@ -82,6 +87,10 @@ export interface UserData {
|
||||
users: User[]
|
||||
}
|
||||
|
||||
export interface PublicUserData {
|
||||
users: PublicUser[]
|
||||
}
|
||||
|
||||
export interface HabitsData {
|
||||
habits: Habit[];
|
||||
}
|
||||
@@ -111,6 +120,13 @@ export const getDefaultUsersData = (): UserData => ({
|
||||
]
|
||||
});
|
||||
|
||||
export const getDefaultPublicUsersData = (): PublicUserData => ({
|
||||
users: getDefaultUsersData().users.map(({ password, ...user }) => ({
|
||||
...user,
|
||||
hasPassword: !!password,
|
||||
})),
|
||||
});
|
||||
|
||||
export const getDefaultHabitsData = (): HabitsData => ({
|
||||
habits: []
|
||||
});
|
||||
@@ -192,7 +208,7 @@ export interface JotaiHydrateInitialValues {
|
||||
coins: CoinsData;
|
||||
habits: HabitsData;
|
||||
wishlist: WishlistData;
|
||||
users: UserData;
|
||||
users: PublicUserData;
|
||||
serverSettings: ServerSettings;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user