aboutsummaryrefslogtreecommitdiff
path: root/packages/aml-backoffice-ui/src/handlers/forms.ts
diff options
context:
space:
mode:
Diffstat (limited to 'packages/aml-backoffice-ui/src/handlers/forms.ts')
-rw-r--r--packages/aml-backoffice-ui/src/handlers/forms.ts11
1 files changed, 6 insertions, 5 deletions
diff --git a/packages/aml-backoffice-ui/src/handlers/forms.ts b/packages/aml-backoffice-ui/src/handlers/forms.ts
index 2c90a69ed..b1fcc2937 100644
--- a/packages/aml-backoffice-ui/src/handlers/forms.ts
+++ b/packages/aml-backoffice-ui/src/handlers/forms.ts
@@ -11,7 +11,7 @@ import { InputFile } from "./InputFile.js";
import { Caption } from "./Caption.js";
import { Group } from "./Group.js";
import { InputSelectOne } from "./InputSelectOne.js";
-import { FormProvider } from "./FormProvider.js";
+import { FormProvider, FormState } from "./FormProvider.js";
import { InputLine } from "./InputLine.js";
import { InputAmount } from "./InputAmount.js";
import { InputChoiceHorizontal } from "./InputChoiceHorizontal.js";
@@ -23,6 +23,10 @@ export type DoubleColumnFormSection = {
description?: TranslatedString;
fields: UIFormField[];
};
+export interface FlexibleForm<T extends object> {
+ design: DoubleColumnForm;
+ behavior?: (form: Partial<T>) => FormState<T>;
+}
/**
* Constrain the type with the ui props
@@ -116,10 +120,7 @@ export function RenderAllFieldsByUiConfig({
type FormSet<T extends object> = {
Provider: typeof FormProvider<T>;
InputLine: <K extends keyof T>() => typeof InputLine<T, K>;
- InputChoiceHorizontal: <K extends keyof T>() => typeof InputChoiceHorizontal<
- T,
- K
- >;
+ InputChoiceHorizontal: <K extends keyof T>() => typeof InputChoiceHorizontal<T, K>;
};
export function createNewForm<T extends object>() {
const res: FormSet<T> = {