List
Interface
export interface IListField extends CommonField {
type: 'list';
options: Fields;
render?: (v: Fields) => JSX.Element;
private?: () => Promise<Fields>;
validation?: Validation<Fields>;
}Example
{
type: 'list',
name: 'list',
options: [
[
{
type: 'text',
name: 'info.name',
validation: z
.string()
.min(1, { message: 'Name must be at least 1 character long' })
},
// ...
]
],
validation: z
.array(
z.object({
info: z.object({
name: z.string().min(1),
})
})
)
.min(1, { message: 'Collection must have at least 1 items' })
}