Reusable defaults
Even with a simple setup, resulting code is very verbose. Therefore, it is convenient to create a file that re-exports the selected resolver, theme, validator, merger and translation.
export { resolver } from "@sjsf/form/resolvers/basic";import "@sjsf/form/fields/extra/enum-include";import "@sjsf/form/fields/extra/multi-enum-include";import "@sjsf/form/fields/extra/file-include";import "@sjsf/form/fields/extra/unknown-native-file-include";
export { theme } from "@sjsf/basic-theme";import "@sjsf/basic-theme/extra-widgets/textarea-include";import "@sjsf/basic-theme/extra-widgets/file-include";import "@sjsf/basic-theme/extra-widgets/checkboxes-include";
export { createFormIdBuilder as idBuilder } from "@sjsf/form/id-builders/modern";
export { createFormValidator as validator } from "@sjsf/ajv8-validator";
export { createFormMerger as merger } from "@sjsf/form/mergers/modern";
export { translation } from "@sjsf/form/translations/en";And use it like this:
import * as defaults from '$lib/form/defaults'
const form = createForm({ ...defaults, <your-options> })