@modular-forms/solid
Version:
The modular and type-safe form library for SolidJS
23 lines (22 loc) • 787 B
JavaScript
import { mergeProps } from 'solid-js';
import { Form, Field, FieldArray } from '../components';
import { createFormStore } from './createFormStore';
export function createForm(options) {
// Create form store
const form = createFormStore(options);
// Return form store and linked components
return [
form,
{
Form: (props
// eslint-disable-next-line solid/reactivity
) => Form(mergeProps({ of: form }, props)),
Field: (props) => Field(
// eslint-disable-next-line solid/reactivity
mergeProps({ of: form }, props)),
FieldArray: (props
// eslint-disable-next-line solid/reactivity
) => FieldArray(mergeProps({ of: form }, props)),
},
];
}