dynamic-forms / Interface

CreateSchemaOptions

Generic types:TModel

Options for creating a schema from field definitions.

Properties

NameTypeDescription
crossFieldValidators
CrossFieldValidatorEntry[] | undefined

Optional array of collected cross-field validators.

formLevelSchema
FormSchema<TModel> | undefined

Optional form-level Standard Schema for additional validation.

Supports Zod, Valibot, ArkType, and other Standard Schema compliant libraries. Useful for cross-field validation rules.

Example usage
import { z } from 'zod';
import { standardSchema } from '@ng-forge/dynamic-forms/schema';

const PasswordSchema = z.object({
  password: z.string().min(8),
  confirmPassword: z.string(),
}).refine(
  (data) => data.password === data.confirmPassword,
  { message: 'Passwords must match', path: ['confirmPassword'] }
);

const schema = createSchemaFromFields(fields, registry, {
  formLevelSchema: standardSchema(PasswordSchema),
});