- "content": "import React from \"react\";\nimport {\n AutoForm as BaseAutoForm,\n AutoFormUIComponents,\n AutoFormFieldComponents,\n} from \"@autoform/react\";\nimport { AutoFormProps } from \"./types\";\nimport { Form } from \"./components/Form\";\nimport { FieldWrapper } from \"./components/FieldWrapper\";\nimport { ErrorMessage } from \"./components/ErrorMessage\";\nimport { SubmitButton } from \"./components/SubmitButton\";\nimport { StringField } from \"./components/StringField\";\nimport { NumberField } from \"./components/NumberField\";\nimport { BooleanField } from \"./components/BooleanField\";\nimport { DateField } from \"./components/DateField\";\nimport { SelectField } from \"./components/SelectField\";\nimport { ObjectWrapper } from \"./components/ObjectWrapper\";\nimport { ArrayWrapper } from \"./components/ArrayWrapper\";\nimport { ArrayElementWrapper } from \"./components/ArrayElementWrapper\";\n\nconst ShadcnUIComponents: AutoFormUIComponents = {\n Form,\n FieldWrapper,\n ErrorMessage,\n SubmitButton,\n ObjectWrapper,\n ArrayWrapper,\n ArrayElementWrapper,\n};\n\nexport const ShadcnAutoFormFieldComponents = {\n string: StringField,\n number: NumberField,\n boolean: BooleanField,\n date: DateField,\n select: SelectField,\n} as const;\nexport type FieldTypes = keyof typeof ShadcnAutoFormFieldComponents;\n\nexport function AutoForm<T extends Record<string, any>>({\n uiComponents,\n formComponents,\n ...props\n}: AutoFormProps<T>) {\n return (\n <BaseAutoForm\n {...props}\n uiComponents={{ ...ShadcnUIComponents, ...uiComponents }}\n formComponents={{ ...ShadcnAutoFormFieldComponents, ...formComponents }}\n />\n );\n}\n",
0 commit comments