diff --git a/frontend/.changeset/khaki-schools-move.md b/frontend/.changeset/khaki-schools-move.md
new file mode 100644
index 0000000..3efbd4f
--- /dev/null
+++ b/frontend/.changeset/khaki-schools-move.md
@@ -0,0 +1,5 @@
+---
+'pydantic-forms': patch
+---
+
+Fixes form labels
diff --git a/frontend/.changeset/loose-boxes-fetch.md b/frontend/.changeset/loose-boxes-fetch.md
new file mode 100644
index 0000000..fd24dcf
--- /dev/null
+++ b/frontend/.changeset/loose-boxes-fetch.md
@@ -0,0 +1,5 @@
+---
+'pydantic-forms': patch
+---
+
+Makes rowRenderer configurable
diff --git a/frontend/packages/pydantic-forms/src/components/fields/FieldWrap.tsx b/frontend/packages/pydantic-forms/src/components/fields/FieldWrap.tsx
index 5915678..b7745c7 100644
--- a/frontend/packages/pydantic-forms/src/components/fields/FieldWrap.tsx
+++ b/frontend/packages/pydantic-forms/src/components/fields/FieldWrap.tsx
@@ -8,9 +8,7 @@
*
*/
import React from 'react';
-import type { ControllerFieldState } from 'react-hook-form';
-import ResetNullableFieldTrigger from '@/components/form/ResetNullableFieldTrigger';
import { usePydanticFormContext } from '@/core';
import { PydanticFormField } from '@/types';
@@ -18,36 +16,27 @@ import { FormRow } from './FormRow';
interface FieldWrapProps {
pydanticFormField: PydanticFormField;
- fieldState: ControllerFieldState;
children: React.ReactNode;
}
-export const FieldWrap = ({
- pydanticFormField,
- fieldState,
- children,
-}: FieldWrapProps) => {
- const { errorDetails } = usePydanticFormContext();
-
+export const FieldWrap = ({ pydanticFormField, children }: FieldWrapProps) => {
+ const { errorDetails, rhf, config } = usePydanticFormContext();
+ const RowRenderer = config?.rowRenderer ? config.rowRenderer : FormRow;
+ const fieldState = rhf.getFieldState(pydanticFormField.id);
const errorMsg =
errorDetails?.mapped?.[pydanticFormField.id]?.msg ??
fieldState.error?.message;
const isInvalid = errorMsg ?? fieldState.invalid;
return (
-