This repository has been archived on 2024-02-08. You can view files and clone it, but cannot push or open issues or pull requests.
frontend/src/modelSchema/team.ts

24 lines
710 B
TypeScript

import { type TypeOf, array, nativeEnum, string } from 'zod'
import { RIGHTS } from '@/constants/rights'
import { DateSchema } from './common/date'
import { IdSchema } from './common/id'
import { AbstractSchema } from './abstract'
import { UserSchema } from './user'
import { TeamMemberSchema } from './teamMember'
export const TeamSchema = AbstractSchema.extend({
id: IdSchema.default(0),
name: string().default(''),
description: string().default(''),
members: array(TeamMemberSchema),
right: nativeEnum(RIGHTS).default(RIGHTS.READ),
createdBy: UserSchema, // FIXME: default was {},
created: DateSchema.nullable(),
updated: DateSchema.nullable(),
})
export type Team = TypeOf<typeof TeamSchema>