@digigov/form 2.0.0-2445d5cb → 2.0.0-298cfc51
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Field/FieldBase/index.js +1 -0
- package/Field/FieldBase.js.map +2 -2
- package/Field/FieldBaseContainer/index.js +2 -2
- package/Field/FieldBaseContainer.js.map +2 -2
- package/Field/FieldConditional/index.js +7 -3
- package/Field/FieldConditional.js.map +2 -2
- package/Field/index.js +5 -2
- package/Field/index.js.map +2 -2
- package/Field/types.d.ts +5 -1
- package/Field/utils/index.d.ts +1 -0
- package/Field/utils/index.js +18 -1
- package/Field/utils/index.js.map +2 -2
- package/FieldArray/index.d.ts +1 -0
- package/FieldArray/index.js +7 -5
- package/FieldArray/index.js.map +2 -2
- package/FieldObject/index.d.ts +2 -0
- package/FieldObject/index.js +9 -5
- package/FieldObject/index.js.map +2 -2
- package/Fieldset/index.d.ts +1 -1
- package/Fieldset/index.js +5 -5
- package/Fieldset/index.js.map +2 -2
- package/Fieldset/types.d.ts +2 -3
- package/FormBuilder/index.d.ts +8 -2
- package/FormBuilder/index.js +150 -6
- package/FormBuilder/index.js.map +3 -3
- package/MultiplicityField/add-objects/index.js +7 -5
- package/MultiplicityField/add-objects.js.map +2 -2
- package/MultiplicityField/index.js +16 -12
- package/MultiplicityField/index.js.map +2 -2
- package/Questions/QuestionsContext.d.ts +0 -1
- package/Questions/Step/StepContext.d.ts +0 -1
- package/Questions/Step/StepTitle/index.js +4 -3
- package/Questions/Step/StepTitle.d.ts +1 -1
- package/Questions/Step/StepTitle.js.map +2 -2
- package/Questions/Step/types.d.ts +0 -1
- package/Questions/types.d.ts +0 -1
- package/cjs/Field/FieldBase/index.js +1 -0
- package/cjs/Field/FieldBase.js.map +2 -2
- package/cjs/Field/FieldBaseContainer/index.js +4 -4
- package/cjs/Field/FieldBaseContainer.js.map +3 -3
- package/cjs/Field/FieldConditional/index.js +7 -3
- package/cjs/Field/FieldConditional.js.map +2 -2
- package/cjs/Field/index.js +5 -2
- package/cjs/Field/index.js.map +2 -2
- package/cjs/Field/types.js.map +1 -1
- package/cjs/Field/utils/index.js +18 -0
- package/cjs/Field/utils/index.js.map +2 -2
- package/cjs/FieldArray/index.js +9 -7
- package/cjs/FieldArray/index.js.map +3 -3
- package/cjs/FieldObject/index.js +10 -6
- package/cjs/FieldObject/index.js.map +3 -3
- package/cjs/Fieldset/index.js +10 -10
- package/cjs/Fieldset/index.js.map +3 -3
- package/cjs/Fieldset/types.js.map +1 -1
- package/cjs/FormBuilder/index.js +165 -5
- package/cjs/FormBuilder/index.js.map +3 -3
- package/cjs/MultiplicityField/add-objects/index.js +11 -9
- package/cjs/MultiplicityField/add-objects.js.map +3 -3
- package/cjs/MultiplicityField/index.js +15 -16
- package/cjs/MultiplicityField/index.js.map +3 -3
- package/cjs/Questions/Step/StepTitle/index.js +5 -5
- package/cjs/Questions/Step/StepTitle.js.map +3 -3
- package/cjs/index.js +11 -155
- package/cjs/index.js.map +4 -4
- package/cjs/inputs/AutoCompleteInput/__stories__/Multiple/index.js +0 -1
- package/cjs/inputs/AutoCompleteInput/__stories__/Multiple.js.map +2 -2
- package/cjs/inputs/AutoCompleteInput/index.js +8 -6
- package/cjs/inputs/AutoCompleteInput/index.js.map +3 -3
- package/cjs/inputs/Checkboxes/index.js +7 -9
- package/cjs/inputs/Checkboxes/index.js.map +3 -3
- package/cjs/inputs/DateInput/index.js +3 -4
- package/cjs/inputs/DateInput/index.js.map +3 -3
- package/cjs/inputs/FileInput/index.js +7 -8
- package/cjs/inputs/FileInput/index.js.map +3 -3
- package/cjs/inputs/ImageInput/ImageInput.stories/index.js +4 -4
- package/cjs/inputs/ImageInput/ImageInput.stories.js.map +2 -2
- package/cjs/inputs/ImageInput/__stories__/MaxSize/index.js +69 -0
- package/cjs/inputs/ImageInput/__stories__/MaxSize.js.map +7 -0
- package/cjs/inputs/ImageInput/__stories__/WithInvalidImageDimension/index.js +2 -1
- package/cjs/inputs/ImageInput/__stories__/WithInvalidImageDimension.js.map +2 -2
- package/cjs/inputs/ImageInput/index.js +8 -8
- package/cjs/inputs/ImageInput/index.js.map +3 -3
- package/cjs/inputs/Input/__stories__/LandlineNumber/index.js +1 -0
- package/cjs/inputs/Input/__stories__/LandlineNumber.js.map +2 -2
- package/cjs/inputs/Input/__stories__/MobilePhone/index.js +1 -0
- package/cjs/inputs/Input/__stories__/MobilePhone.js.map +2 -2
- package/cjs/inputs/Input/__stories__/PhoneNumber/index.js +1 -0
- package/cjs/inputs/Input/__stories__/PhoneNumber.js.map +2 -2
- package/cjs/inputs/Input/__stories__/PostalCode/index.js +1 -0
- package/cjs/inputs/Input/__stories__/PostalCode.js.map +2 -2
- package/cjs/inputs/Input/index.js +20 -7
- package/cjs/inputs/Input/index.js.map +3 -3
- package/cjs/inputs/Label/index.js +3 -3
- package/cjs/inputs/Label/index.js.map +3 -3
- package/cjs/inputs/Radio/__stories__/Conditional.js.map +2 -2
- package/cjs/inputs/Radio/index.js +56 -10
- package/cjs/inputs/Radio/index.js.map +3 -3
- package/cjs/inputs/Select/index.js +3 -4
- package/cjs/inputs/Select/index.js.map +3 -3
- package/cjs/inputs/inputsScenarios/index.js +0 -1
- package/cjs/inputs/inputsScenarios.js.map +2 -2
- package/cjs/lazy/index.js +7 -2
- package/cjs/lazy.js.map +2 -2
- package/cjs/registry/index.js +2 -0
- package/cjs/registry.js.map +2 -2
- package/cjs/types.js.map +1 -1
- package/cjs/validators/index.js +16 -66
- package/cjs/validators/index.js.map +3 -3
- package/cjs/validators/utils/date/index.js +138 -0
- package/cjs/validators/utils/date.js.map +7 -0
- package/cjs/validators/utils/file/index.js +1 -1
- package/cjs/validators/utils/file.js.map +2 -2
- package/cjs/validators/utils/index.js +3 -1
- package/cjs/validators/utils/index.js.map +2 -2
- package/index.d.ts +5 -8
- package/index.js +9 -152
- package/index.js.map +4 -4
- package/inputs/AutoCompleteInput/__stories__/Multiple/index.js +0 -1
- package/inputs/AutoCompleteInput/__stories__/Multiple.js.map +2 -2
- package/inputs/AutoCompleteInput/index.js +10 -6
- package/inputs/AutoCompleteInput/index.js.map +2 -2
- package/inputs/Checkboxes/index.js +8 -6
- package/inputs/Checkboxes/index.js.map +2 -2
- package/inputs/DateInput/index.js +5 -3
- package/inputs/DateInput/index.js.map +2 -2
- package/inputs/FileInput/index.js +5 -6
- package/inputs/FileInput/index.js.map +2 -2
- package/inputs/ImageInput/ImageInput.stories/index.js +2 -2
- package/inputs/ImageInput/ImageInput.stories.d.ts +1 -1
- package/inputs/ImageInput/ImageInput.stories.js.map +2 -2
- package/inputs/ImageInput/__stories__/MaxSize/index.js +36 -0
- package/inputs/ImageInput/__stories__/MaxSize/package.json +6 -0
- package/inputs/ImageInput/__stories__/MaxSize.d.ts +3 -0
- package/inputs/ImageInput/__stories__/MaxSize.js.map +7 -0
- package/inputs/ImageInput/__stories__/WithInvalidImageDimension/index.js +2 -1
- package/inputs/ImageInput/__stories__/WithInvalidImageDimension.js.map +2 -2
- package/inputs/ImageInput/index.js +7 -7
- package/inputs/ImageInput/index.js.map +2 -2
- package/inputs/Input/__stories__/LandlineNumber/index.js +1 -0
- package/inputs/Input/__stories__/LandlineNumber.js.map +2 -2
- package/inputs/Input/__stories__/MobilePhone/index.js +1 -0
- package/inputs/Input/__stories__/MobilePhone.js.map +2 -2
- package/inputs/Input/__stories__/PhoneNumber/index.js +1 -0
- package/inputs/Input/__stories__/PhoneNumber.js.map +2 -2
- package/inputs/Input/__stories__/PostalCode/index.js +1 -0
- package/inputs/Input/__stories__/PostalCode.js.map +2 -2
- package/inputs/Input/index.js +18 -5
- package/inputs/Input/index.js.map +3 -3
- package/inputs/Label/index.js +2 -2
- package/inputs/Label/index.js.map +2 -2
- package/inputs/Radio/__stories__/Conditional.js.map +2 -2
- package/inputs/Radio/index.d.ts +4 -0
- package/inputs/Radio/index.js +57 -8
- package/inputs/Radio/index.js.map +2 -2
- package/inputs/Select/index.js +1 -2
- package/inputs/Select/index.js.map +2 -2
- package/inputs/inputsScenarios/index.js +0 -1
- package/inputs/inputsScenarios.d.ts +0 -42
- package/inputs/inputsScenarios.js.map +2 -2
- package/lazy/index.js +7 -2
- package/lazy.d.ts +16 -8
- package/lazy.js.map +2 -2
- package/package.json +4 -4
- package/registry/index.js +2 -0
- package/registry.d.ts +1 -0
- package/registry.js.map +2 -2
- package/src/Field/FieldBase.tsx +1 -0
- package/src/Field/FieldBaseContainer.tsx +2 -2
- package/src/Field/FieldConditional.tsx +4 -0
- package/src/Field/index.tsx +4 -1
- package/src/Field/types.tsx +24 -20
- package/src/Field/utils/index.ts +18 -1
- package/src/FieldArray/index.tsx +9 -5
- package/src/FieldObject/index.tsx +8 -2
- package/src/Fieldset/index.tsx +5 -5
- package/src/Fieldset/types.tsx +2 -2
- package/src/FormBuilder/{FormBuilder.mdx → doc.mdx} +20 -33
- package/src/FormBuilder/index.tsx +179 -7
- package/src/FormBuilder/scenarios.test.tsx +2 -2
- package/src/MultiplicityField/add-objects.tsx +6 -5
- package/src/MultiplicityField/{MultiplicityField.mdx → doc.mdx} +12 -16
- package/src/MultiplicityField/index.tsx +15 -12
- package/src/Questions/Step/StepTitle.tsx +4 -3
- package/src/Questions/__snapshots__/index.spec.tsx.snap +8 -4
- package/src/Questions/{index.mdx → doc.mdx} +9 -12
- package/src/create-simple-form.mdx +2 -6
- package/src/{index.mdx → doc.mdx} +4 -8
- package/src/index.ts +6 -0
- package/src/inputs/AutoCompleteInput/__stories__/Multiple.tsx +0 -1
- package/src/inputs/AutoCompleteInput/{index.mdx → doc.mdx} +2 -13
- package/src/inputs/AutoCompleteInput/index.tsx +36 -29
- package/src/inputs/Checkboxes/{index.mdx → doc.mdx} +5 -15
- package/src/inputs/Checkboxes/index.test.tsx +16 -17
- package/src/inputs/Checkboxes/index.tsx +9 -7
- package/src/inputs/DateInput/{index.mdx → doc.mdx} +1 -8
- package/src/inputs/DateInput/index.tsx +5 -3
- package/src/inputs/FileInput/{index.mdx → doc.mdx} +1 -5
- package/src/inputs/FileInput/index.tsx +5 -6
- package/src/inputs/ImageInput/ImageInput.stories.js +2 -1
- package/src/inputs/ImageInput/__stories__/MaxSize.tsx +37 -0
- package/src/inputs/ImageInput/__stories__/WithInvalidImageDimension.tsx +2 -0
- package/src/inputs/ImageInput/doc.mdx +23 -0
- package/src/inputs/ImageInput/index.test.tsx +4 -0
- package/src/inputs/ImageInput/index.tsx +9 -11
- package/src/inputs/Input/__stories__/LandlineNumber.tsx +2 -1
- package/src/inputs/Input/__stories__/MobilePhone.tsx +1 -0
- package/src/inputs/Input/__stories__/PhoneNumber.tsx +1 -0
- package/src/inputs/Input/__stories__/PostalCode.tsx +1 -0
- package/src/inputs/Input/doc.mdx +56 -0
- package/src/inputs/Input/index.tsx +33 -30
- package/src/inputs/Label/doc.mdx +14 -0
- package/src/inputs/Label/index.tsx +2 -3
- package/src/inputs/OtpInput/{index.mdx → doc.mdx} +1 -8
- package/src/inputs/Radio/__stories__/Conditional.tsx +2 -1
- package/src/inputs/Radio/{index.mdx → doc.mdx} +5 -15
- package/src/inputs/Radio/index.tsx +75 -9
- package/src/inputs/Select/{index.mdx → doc.mdx} +1 -5
- package/src/inputs/Select/index.tsx +1 -2
- package/src/inputs/inputsScenarios.ts +147 -148
- package/src/installation.mdx +2 -5
- package/src/lazy.js +7 -2
- package/src/registry.js +2 -0
- package/src/types.tsx +1 -0
- package/src/validators/index.ts +33 -71
- package/src/validators/utils/date.ts +107 -0
- package/src/validators/utils/file.ts +1 -1
- package/src/validators/utils/index.ts +1 -0
- package/types.d.ts +1 -1
- package/types.js.map +1 -1
- package/validators/index.js +20 -67
- package/validators/index.js.map +2 -2
- package/validators/utils/date/index.js +103 -0
- package/validators/utils/date/package.json +6 -0
- package/validators/utils/date.d.ts +9 -0
- package/validators/utils/date.js.map +7 -0
- package/validators/utils/file/index.js +1 -1
- package/validators/utils/file.js.map +2 -2
- package/validators/utils/index.d.ts +1 -0
- package/validators/utils/index.js +1 -0
- package/validators/utils/index.js.map +2 -2
- package/src/index.tsx +0 -178
- package/src/inputs/ImageInput/index.mdx +0 -19
- package/src/inputs/Input/index.mdx +0 -95
- package/src/inputs/Label/index.mdx +0 -0
- /package/src/Field/{index.mdx → doc.mdx} +0 -0
package/cjs/Field/index.js
CHANGED
|
@@ -79,7 +79,8 @@ const Field = ({
|
|
|
79
79
|
reset,
|
|
80
80
|
register,
|
|
81
81
|
field: calculatedField,
|
|
82
|
-
error
|
|
82
|
+
error,
|
|
83
|
+
Field
|
|
83
84
|
}
|
|
84
85
|
);
|
|
85
86
|
}
|
|
@@ -92,6 +93,7 @@ const Field = ({
|
|
|
92
93
|
register,
|
|
93
94
|
error,
|
|
94
95
|
formState,
|
|
96
|
+
Field,
|
|
95
97
|
...calculatedField
|
|
96
98
|
}
|
|
97
99
|
);
|
|
@@ -110,6 +112,7 @@ const Field = ({
|
|
|
110
112
|
setValue,
|
|
111
113
|
getValues,
|
|
112
114
|
unregister,
|
|
115
|
+
Field,
|
|
113
116
|
...calculatedField
|
|
114
117
|
}
|
|
115
118
|
);
|
|
@@ -124,7 +127,7 @@ const Field = ({
|
|
|
124
127
|
register,
|
|
125
128
|
reset,
|
|
126
129
|
error,
|
|
127
|
-
|
|
130
|
+
Field
|
|
128
131
|
}
|
|
129
132
|
);
|
|
130
133
|
};
|
package/cjs/Field/index.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/Field/index.tsx"],
|
|
4
|
-
"sourcesContent": ["import React, { useMemo } from 'react';\nimport { FieldBase } from '@digigov/form/Field/FieldBase';\nimport FieldConditional from '@digigov/form/Field/FieldConditional';\nimport {\n FieldWithCondition,\n CalculatedField,\n FieldProps,\n} from '@digigov/form/Field/types';\nimport {\n FIELD_COMPONENTS,\n ALTERNATIVE_COMPONENTS,\n} from '@digigov/form/Field/utils';\nimport { calculateField } from '@digigov/form/Field/utils/calculateField';\nimport { useField } from '@digigov/form/Field/utils/useField';\nimport FieldArray from '@digigov/form/FieldArray';\nimport Multiplicity from '@digigov/form/MultiplicityField';\nexport const Field: React.FC<FieldProps> = ({\n name,\n disabled,\n children,\n ...customField\n}) => {\n const {\n field,\n control,\n register,\n reset,\n error,\n componentRegistry,\n formState,\n setValue,\n getValues,\n unregister,\n trigger,\n clearErrors,\n } = useField(name, customField?.type ? customField : null);\n const calculatedField: CalculatedField = useMemo(\n () =>\n calculateField(\n children,\n field,\n {\n ...FIELD_COMPONENTS,\n ...componentRegistry,\n },\n ALTERNATIVE_COMPONENTS\n ),\n [field]\n );\n\n if (calculatedField.condition) {\n return (\n <FieldConditional\n control={control}\n reset={reset}\n register={register}\n field={calculatedField as FieldWithCondition}\n error={error}\n />\n );\n }\n if (calculatedField.type === 'array' && !calculatedField.multiplicity) {\n calculatedField.name = name;\n return (\n <FieldArray\n control={control}\n register={register}\n error={error}\n formState={formState}\n {...calculatedField}\n />\n );\n }\n if (\n calculatedField.type === 'array' &&\n calculatedField.multiplicity === true\n ) {\n calculatedField.name = name;\n return (\n <Multiplicity\n control={control}\n register={register}\n trigger={trigger}\n clearErrors={clearErrors}\n error={error}\n formState={formState}\n setValue={setValue}\n getValues={getValues}\n unregister={unregister}\n {...calculatedField}\n />\n );\n }\n return (\n <FieldBase\n {...calculatedField}\n name={name}\n disabled={disabled}\n control={control}\n register={register}\n reset={reset}\n error={error}\n
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAA+B;AAC/B,uBAA0B;AAC1B,8BAA6B;AAM7B,mBAGO;AACP,4BAA+B;AAC/B,sBAAyB;AACzB,wBAAuB;AACvB,+BAAyB;AAClB,MAAM,QAA8B,CAAC;AAAA,EAC1C;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAM;AACJ,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,QAAI,0BAAS,MAAM,aAAa,OAAO,cAAc,IAAI;AACzD,QAAM,sBAAmC;AAAA,IACvC,UACE;AAAA,MACE;AAAA,MACA;AAAA,MACA;AAAA,QACE,GAAG;AAAA,QACH,GAAG;AAAA,MACL;AAAA,MACA;AAAA,IACF;AAAA,IACF,CAAC,KAAK;AAAA,EACR;AAEA,MAAI,gBAAgB,WAAW;AAC7B,WACE,6BAAAA,QAAA;AAAA,MAAC,wBAAAC;AAAA,MAAA;AAAA,QACC;AAAA,QACA;AAAA,QACA;AAAA,QACA,OAAO;AAAA,QACP;AAAA;AAAA,IACF;AAAA,EAEJ;AACA,MAAI,gBAAgB,SAAS,WAAW,CAAC,gBAAgB,cAAc;AACrE,oBAAgB,OAAO;AACvB,WACE,6BAAAD,QAAA;AAAA,MAAC,kBAAAE;AAAA,MAAA;AAAA,QACC;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACC,GAAG;AAAA;AAAA,IACN;AAAA,EAEJ;AACA,MACE,gBAAgB,SAAS,WACzB,gBAAgB,iBAAiB,MACjC;AACA,oBAAgB,OAAO;AACvB,WACE,6BAAAF,QAAA;AAAA,MAAC,yBAAAG;AAAA,MAAA;AAAA,QACC;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACC,GAAG;AAAA;AAAA,IACN;AAAA,EAEJ;AACA,SACE,6BAAAH,QAAA;AAAA,IAAC;AAAA;AAAA,MACE,GAAG;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA
|
|
4
|
+
"sourcesContent": ["import React, { useMemo } from 'react';\nimport { FieldBase } from '@digigov/form/Field/FieldBase';\nimport FieldConditional from '@digigov/form/Field/FieldConditional';\nimport {\n FieldWithCondition,\n CalculatedField,\n FieldProps,\n} from '@digigov/form/Field/types';\nimport {\n FIELD_COMPONENTS,\n ALTERNATIVE_COMPONENTS,\n} from '@digigov/form/Field/utils';\nimport { calculateField } from '@digigov/form/Field/utils/calculateField';\nimport { useField } from '@digigov/form/Field/utils/useField';\nimport FieldArray from '@digigov/form/FieldArray';\nimport Multiplicity from '@digigov/form/MultiplicityField';\nexport const Field: React.FC<FieldProps> = ({\n name,\n disabled,\n children,\n ...customField\n}) => {\n const {\n field,\n control,\n register,\n reset,\n error,\n componentRegistry,\n formState,\n setValue,\n getValues,\n unregister,\n trigger,\n clearErrors,\n } = useField(name, customField?.type ? customField : null);\n const calculatedField: CalculatedField = useMemo(\n () =>\n calculateField(\n children,\n field,\n {\n ...FIELD_COMPONENTS,\n ...componentRegistry,\n },\n ALTERNATIVE_COMPONENTS\n ),\n [field]\n );\n\n if (calculatedField.condition) {\n return (\n <FieldConditional\n control={control}\n reset={reset}\n register={register}\n field={calculatedField as FieldWithCondition}\n error={error}\n Field={Field}\n />\n );\n }\n if (calculatedField.type === 'array' && !calculatedField.multiplicity) {\n calculatedField.name = name;\n return (\n <FieldArray\n control={control}\n register={register}\n error={error}\n formState={formState}\n Field={Field}\n {...calculatedField}\n />\n );\n }\n if (\n calculatedField.type === 'array' &&\n calculatedField.multiplicity === true\n ) {\n calculatedField.name = name;\n return (\n <Multiplicity\n control={control}\n register={register}\n trigger={trigger}\n clearErrors={clearErrors}\n error={error}\n formState={formState}\n setValue={setValue}\n getValues={getValues}\n unregister={unregister}\n Field={Field}\n {...calculatedField}\n />\n );\n }\n return (\n <FieldBase\n {...calculatedField}\n name={name}\n disabled={disabled}\n control={control}\n register={register}\n reset={reset}\n error={error}\n Field={Field}\n />\n );\n};\n\nexport default Field;\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAA+B;AAC/B,uBAA0B;AAC1B,8BAA6B;AAM7B,mBAGO;AACP,4BAA+B;AAC/B,sBAAyB;AACzB,wBAAuB;AACvB,+BAAyB;AAClB,MAAM,QAA8B,CAAC;AAAA,EAC1C;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAM;AACJ,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,QAAI,0BAAS,MAAM,aAAa,OAAO,cAAc,IAAI;AACzD,QAAM,sBAAmC;AAAA,IACvC,UACE;AAAA,MACE;AAAA,MACA;AAAA,MACA;AAAA,QACE,GAAG;AAAA,QACH,GAAG;AAAA,MACL;AAAA,MACA;AAAA,IACF;AAAA,IACF,CAAC,KAAK;AAAA,EACR;AAEA,MAAI,gBAAgB,WAAW;AAC7B,WACE,6BAAAA,QAAA;AAAA,MAAC,wBAAAC;AAAA,MAAA;AAAA,QACC;AAAA,QACA;AAAA,QACA;AAAA,QACA,OAAO;AAAA,QACP;AAAA,QACA;AAAA;AAAA,IACF;AAAA,EAEJ;AACA,MAAI,gBAAgB,SAAS,WAAW,CAAC,gBAAgB,cAAc;AACrE,oBAAgB,OAAO;AACvB,WACE,6BAAAD,QAAA;AAAA,MAAC,kBAAAE;AAAA,MAAA;AAAA,QACC;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACC,GAAG;AAAA;AAAA,IACN;AAAA,EAEJ;AACA,MACE,gBAAgB,SAAS,WACzB,gBAAgB,iBAAiB,MACjC;AACA,oBAAgB,OAAO;AACvB,WACE,6BAAAF,QAAA;AAAA,MAAC,yBAAAG;AAAA,MAAA;AAAA,QACC;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACC,GAAG;AAAA;AAAA,IACN;AAAA,EAEJ;AACA,SACE,6BAAAH,QAAA;AAAA,IAAC;AAAA;AAAA,MACE,GAAG;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA,EACF;AAEJ;AAEA,IAAO,gBAAQ;",
|
|
6
6
|
"names": ["React", "FieldConditional", "FieldArray", "Multiplicity"]
|
|
7
7
|
}
|
package/cjs/Field/types.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/Field/types.tsx"],
|
|
4
|
-
"sourcesContent": ["import React from 'react';\nimport { ErrorOption, UseFormReturn, UseFormProps } from 'react-hook-form';\nimport { ValidatorSchema } from '@digigov/form/validators/types';\nimport { GridProps } from '@digigov/ui/layouts/Grid';\n\nexport type FieldLabelProps = {\n primary?: string;\n secondary?: string;\n};\n\nexport interface FieldSpec {\n key: string; // !TODO rename key to name;\n type?:\n
|
|
4
|
+
"sourcesContent": ["import React from 'react';\nimport { ErrorOption, UseFormReturn, UseFormProps } from 'react-hook-form';\nimport { ValidatorSchema } from '@digigov/form/validators/types';\nimport { GridProps } from '@digigov/ui/layouts/Grid';\n\nexport type FieldLabelProps = {\n primary?: string;\n secondary?: string;\n};\n\nexport interface FieldSpec {\n key: string; // !TODO rename key to name;\n type?:\n | 'int'\n | 'string'\n | 'text'\n | 'boolean'\n | 'email'\n | 'uuid4'\n | 'choice:multiple'\n | 'choice:single'\n | 'mobile_phone'\n | 'date'\n | 'otp'\n | 'afm'\n | 'iban'\n | 'file'\n | 'image'\n | 'postal_code'\n | 'phone_number'\n | 'array'\n | 'object';\n component?: any;\n autoComplete?: string;\n maxLength?: number;\n condition?: Record<string, FieldCondition>;\n controlled?: boolean;\n label?: FieldLabelProps;\n extra?: {\n [key: string]: any;\n };\n editable?: boolean;\n required?: boolean;\n enabled?: boolean;\n disabled?: boolean;\n layout?: Record<\n string,\n | GridProps['xs']\n | GridProps['sm']\n | GridProps['md']\n | GridProps['lg']\n | GridProps['xl']\n >;\n validators?: ValidatorSchema[];\n wrapper?: 'label' | 'fieldset';\n maxWidth?: string;\n maxHeight?: string;\n width?: string;\n}\n\nexport interface FieldCondition {\n is: string | string[] | number | number[] | boolean | boolean[];\n then?: Partial<FieldSpec>;\n else?: Partial<FieldSpec>;\n}\nexport interface ChildFieldMemoProps extends FieldConditionalProps {\n dependencies: FormData;\n}\nexport type FormData = UseFormProps['defaultValues'];\n\nexport interface FieldWithCondition extends Omit<CalculatedField, 'condition'> {\n condition: Record<string, FieldCondition>;\n}\n\nexport interface FieldConditionalProps {\n field: FieldWithCondition;\n control: UseFormReturn['control'];\n register: UseFormReturn['register'];\n reset: UseFormReturn['reset'];\n error?: ErrorOption;\n Field: React.FC<FieldProps>;\n}\n\nexport type FieldComponentItem = {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n component: any;\n controlled?: boolean;\n wrapper?: FieldSpec['wrapper'];\n};\n\nexport interface FieldContainerProps {\n name?: FieldSpec['key'];\n layout?: FieldSpec['layout'];\n label?: FieldSpec['label'];\n error?: ErrorOption | Record<string, any>;\n children?: React.ReactNode;\n wrapper?: FieldSpec['wrapper'];\n}\n\nexport type FieldComponentRegistry = Record<string, FieldComponentItem>;\n\nexport type OmittedFieldSpec = Omit<FieldSpec, 'component'>;\n\nexport type UnknownValue = never | never[];\n\nexport interface ControlledFieldProps {\n type?: string;\n value: UnknownValue;\n onChange: (v: UnknownValue) => void;\n defaultValue?: UnknownValue;\n onBlur?: (e: Event) => void;\n extra?: never;\n error?: boolean;\n name?: string;\n disabled?: boolean;\n Field: React.FC<FieldProps>;\n}\n\nexport interface UncontrolledFieldProps {\n name: string;\n register: FieldBaseProps['register'];\n control?: FieldBaseProps['control'];\n error?: boolean;\n extra?: Record<string, never>;\n type?: string;\n disabled?: boolean;\n Field: React.FC<FieldProps>;\n}\n\nexport interface CalculatedField extends OmittedFieldSpec {\n name: string;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n component: any;\n defaultValue?: never;\n error?: ErrorOption;\n wrapper?: FieldComponentItem['wrapper'];\n multiplicity?: boolean;\n}\n\nexport interface FieldBaseProps extends CalculatedField {\n control: UseFormReturn['control'];\n register: UseFormReturn['register'];\n reset: UseFormReturn['reset'];\n Field: React.FC<FieldProps>;\n}\n\nexport interface FieldProps extends FieldSpec {\n name: string;\n children?: React.ReactNode;\n}\n\nexport interface UseFieldProps {\n field: FieldSpec;\n control: FieldBaseProps['control'];\n register: FieldBaseProps['register'];\n reset: FieldBaseProps['reset'];\n watch: UseFormReturn['watch'];\n formState: UseFormReturn['formState'];\n getFieldState: UseFormReturn['getFieldState'];\n setValue: UseFormReturn['setValue'];\n getValues: UseFormReturn['getValues'];\n unregister: UseFormReturn['unregister'];\n trigger: UseFormReturn['trigger'];\n clearErrors: UseFormReturn['clearErrors'];\n error?: ErrorOption;\n componentRegistry?: FieldComponentRegistry;\n}\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;AAAA;AAAA;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
package/cjs/Field/utils/index.js
CHANGED
|
@@ -28,6 +28,7 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
|
|
|
28
28
|
var utils_exports = {};
|
|
29
29
|
__export(utils_exports, {
|
|
30
30
|
ALTERNATIVE_COMPONENTS: () => ALTERNATIVE_COMPONENTS,
|
|
31
|
+
CONTROLLED_FIELD_COMPONENTS: () => CONTROLLED_FIELD_COMPONENTS,
|
|
31
32
|
FIELD_COMPONENTS: () => FIELD_COMPONENTS
|
|
32
33
|
});
|
|
33
34
|
module.exports = __toCommonJS(utils_exports);
|
|
@@ -87,9 +88,26 @@ const ALTERNATIVE_COMPONENTS = {
|
|
|
87
88
|
wrapper: "fieldset"
|
|
88
89
|
}
|
|
89
90
|
};
|
|
91
|
+
const CONTROLLED_FIELD_COMPONENTS = {
|
|
92
|
+
...FIELD_COMPONENTS,
|
|
93
|
+
"choice:single": {
|
|
94
|
+
wrapper: "fieldset",
|
|
95
|
+
controlled: true,
|
|
96
|
+
component: import_Radio.ControlledRadioButtonsGroup
|
|
97
|
+
},
|
|
98
|
+
text: {
|
|
99
|
+
component: import_Input.default,
|
|
100
|
+
controlled: true
|
|
101
|
+
},
|
|
102
|
+
string: {
|
|
103
|
+
component: import_Input.default,
|
|
104
|
+
controlled: true
|
|
105
|
+
}
|
|
106
|
+
};
|
|
90
107
|
// Annotate the CommonJS export names for ESM import in node:
|
|
91
108
|
0 && (module.exports = {
|
|
92
109
|
ALTERNATIVE_COMPONENTS,
|
|
110
|
+
CONTROLLED_FIELD_COMPONENTS,
|
|
93
111
|
FIELD_COMPONENTS
|
|
94
112
|
});
|
|
95
113
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/Field/utils/index.ts"],
|
|
4
|
-
"sourcesContent": ["import { FieldComponentRegistry } from '@digigov/form/Field/types';\nimport AutoCompleteInput from '@digigov/form/inputs/AutoCompleteInput';\nimport Checkboxes from '@digigov/form/inputs/Checkboxes';\nimport DateInput from '@digigov/form/inputs/DateInput';\nimport FileInput from '@digigov/form/inputs/FileInput';\nimport ImageInput from '@digigov/form/inputs/ImageInput';\nimport Input from '@digigov/form/inputs/Input';\nimport OtpInput from '@digigov/form/inputs/OtpInput';\nimport Radio from '@digigov/form/inputs/Radio';\nimport Select from '@digigov/form/inputs/Select';\n\nexport const FIELD_COMPONENTS: FieldComponentRegistry = {\n text: {\n component: Input,\n },\n string: {\n component: Input,\n },\n file: {\n wrapper: 'fieldset',\n component: FileInput,\n },\n image: {\n wrapper: 'fieldset',\n component: ImageInput,\n },\n date: {\n wrapper: 'fieldset',\n controlled: true,\n component: DateInput,\n },\n otp: {\n wrapper: 'fieldset',\n controlled: true,\n component: OtpInput,\n },\n 'choice:multiple': {\n wrapper: 'fieldset',\n controlled: true,\n component: Checkboxes,\n },\n 'choice:single': {\n wrapper: 'fieldset',\n controlled: false,\n component: Radio,\n },\n};\n\nexport const ALTERNATIVE_COMPONENTS: FieldComponentRegistry = {\n Select: {\n component: Select,\n controlled: false,\n },\n AutoComplete: {\n component: AutoCompleteInput,\n controlled: true,\n wrapper: 'fieldset',\n },\n};\n"],
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,+BAA8B;AAC9B,wBAAuB;AACvB,uBAAsB;AACtB,uBAAsB;AACtB,wBAAuB;AACvB,mBAAkB;AAClB,sBAAqB;AACrB,
|
|
4
|
+
"sourcesContent": ["import { FieldComponentRegistry } from '@digigov/form/Field/types';\nimport AutoCompleteInput from '@digigov/form/inputs/AutoCompleteInput';\nimport Checkboxes from '@digigov/form/inputs/Checkboxes';\nimport DateInput from '@digigov/form/inputs/DateInput';\nimport FileInput from '@digigov/form/inputs/FileInput';\nimport ImageInput from '@digigov/form/inputs/ImageInput';\nimport Input from '@digigov/form/inputs/Input';\nimport OtpInput from '@digigov/form/inputs/OtpInput';\nimport Radio, { ControlledRadioButtonsGroup } from '@digigov/form/inputs/Radio';\nimport Select from '@digigov/form/inputs/Select';\n\nexport const FIELD_COMPONENTS: FieldComponentRegistry = {\n text: {\n component: Input,\n },\n string: {\n component: Input,\n },\n file: {\n wrapper: 'fieldset',\n component: FileInput,\n },\n image: {\n wrapper: 'fieldset',\n component: ImageInput,\n },\n date: {\n wrapper: 'fieldset',\n controlled: true,\n component: DateInput,\n },\n otp: {\n wrapper: 'fieldset',\n controlled: true,\n component: OtpInput,\n },\n 'choice:multiple': {\n wrapper: 'fieldset',\n controlled: true,\n component: Checkboxes,\n },\n 'choice:single': {\n wrapper: 'fieldset',\n controlled: false,\n component: Radio,\n },\n};\n\nexport const ALTERNATIVE_COMPONENTS: FieldComponentRegistry = {\n Select: {\n component: Select,\n controlled: false,\n },\n AutoComplete: {\n component: AutoCompleteInput,\n controlled: true,\n wrapper: 'fieldset',\n },\n};\n\nexport const CONTROLLED_FIELD_COMPONENTS: FieldComponentRegistry = {\n ...FIELD_COMPONENTS,\n 'choice:single': {\n wrapper: 'fieldset',\n controlled: true,\n component: ControlledRadioButtonsGroup,\n },\n text: {\n component: Input,\n controlled: true,\n },\n string: {\n component: Input,\n controlled: true,\n },\n};\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,+BAA8B;AAC9B,wBAAuB;AACvB,uBAAsB;AACtB,uBAAsB;AACtB,wBAAuB;AACvB,mBAAkB;AAClB,sBAAqB;AACrB,mBAAmD;AACnD,oBAAmB;AAEZ,MAAM,mBAA2C;AAAA,EACtD,MAAM;AAAA,IACJ,WAAW,aAAAA;AAAA,EACb;AAAA,EACA,QAAQ;AAAA,IACN,WAAW,aAAAA;AAAA,EACb;AAAA,EACA,MAAM;AAAA,IACJ,SAAS;AAAA,IACT,WAAW,iBAAAC;AAAA,EACb;AAAA,EACA,OAAO;AAAA,IACL,SAAS;AAAA,IACT,WAAW,kBAAAC;AAAA,EACb;AAAA,EACA,MAAM;AAAA,IACJ,SAAS;AAAA,IACT,YAAY;AAAA,IACZ,WAAW,iBAAAC;AAAA,EACb;AAAA,EACA,KAAK;AAAA,IACH,SAAS;AAAA,IACT,YAAY;AAAA,IACZ,WAAW,gBAAAC;AAAA,EACb;AAAA,EACA,mBAAmB;AAAA,IACjB,SAAS;AAAA,IACT,YAAY;AAAA,IACZ,WAAW,kBAAAC;AAAA,EACb;AAAA,EACA,iBAAiB;AAAA,IACf,SAAS;AAAA,IACT,YAAY;AAAA,IACZ,WAAW,aAAAC;AAAA,EACb;AACF;AAEO,MAAM,yBAAiD;AAAA,EAC5D,QAAQ;AAAA,IACN,WAAW,cAAAC;AAAA,IACX,YAAY;AAAA,EACd;AAAA,EACA,cAAc;AAAA,IACZ,WAAW,yBAAAC;AAAA,IACX,YAAY;AAAA,IACZ,SAAS;AAAA,EACX;AACF;AAEO,MAAM,8BAAsD;AAAA,EACjE,GAAG;AAAA,EACH,iBAAiB;AAAA,IACf,SAAS;AAAA,IACT,YAAY;AAAA,IACZ,WAAW;AAAA,EACb;AAAA,EACA,MAAM;AAAA,IACJ,WAAW,aAAAR;AAAA,IACX,YAAY;AAAA,EACd;AAAA,EACA,QAAQ;AAAA,IACN,WAAW,aAAAA;AAAA,IACX,YAAY;AAAA,EACd;AACF;",
|
|
6
6
|
"names": ["Input", "FileInput", "ImageInput", "DateInput", "OtpInput", "Checkboxes", "Radio", "Select", "AutoCompleteInput"]
|
|
7
7
|
}
|
package/cjs/FieldArray/index.js
CHANGED
|
@@ -33,10 +33,10 @@ __export(FieldArray_exports, {
|
|
|
33
33
|
module.exports = __toCommonJS(FieldArray_exports);
|
|
34
34
|
var import_react = __toESM(require("react"));
|
|
35
35
|
var import_react_hook_form = require("react-hook-form");
|
|
36
|
-
var import_FieldBaseContainer =
|
|
37
|
-
var import_FieldObject =
|
|
36
|
+
var import_FieldBaseContainer = require("@digigov/form/Field/FieldBaseContainer");
|
|
37
|
+
var import_FieldObject = require("@digigov/form/FieldObject");
|
|
38
38
|
var import_Fieldset = require("@digigov/form/Fieldset");
|
|
39
|
-
var import_Fieldset2 =
|
|
39
|
+
var import_Fieldset2 = require("@digigov/form/Fieldset");
|
|
40
40
|
var import_Card = require("@digigov/ui/content/Card");
|
|
41
41
|
var import_Button = require("@digigov/ui/form/Button");
|
|
42
42
|
var import_Hint = require("@digigov/ui/typography/Hint");
|
|
@@ -48,6 +48,7 @@ const FieldArray = ({
|
|
|
48
48
|
error,
|
|
49
49
|
layout,
|
|
50
50
|
label,
|
|
51
|
+
Field,
|
|
51
52
|
...customField
|
|
52
53
|
}) => {
|
|
53
54
|
const { fields, append, remove } = (0, import_react_hook_form.useFieldArray)({
|
|
@@ -55,7 +56,7 @@ const FieldArray = ({
|
|
|
55
56
|
name
|
|
56
57
|
});
|
|
57
58
|
return /* @__PURE__ */ import_react.default.createElement(
|
|
58
|
-
import_FieldBaseContainer.
|
|
59
|
+
import_FieldBaseContainer.FieldBaseContainer,
|
|
59
60
|
{
|
|
60
61
|
label,
|
|
61
62
|
layout,
|
|
@@ -64,15 +65,16 @@ const FieldArray = ({
|
|
|
64
65
|
name
|
|
65
66
|
},
|
|
66
67
|
fields.length === 0 && /* @__PURE__ */ import_react.default.createElement(import_Hint.Hint, null, customField.extra?.label.object?.nothing_added),
|
|
67
|
-
fields.map((field, index) => /* @__PURE__ */ import_react.default.createElement(import_Card.Card, { variant: "border", key: field.id }, /* @__PURE__ */ import_react.default.createElement(import_Fieldset2.
|
|
68
|
-
import_FieldObject.
|
|
68
|
+
fields.map((field, index) => /* @__PURE__ */ import_react.default.createElement(import_Card.Card, { variant: "border", key: field.id }, /* @__PURE__ */ import_react.default.createElement(import_Fieldset2.Fieldset, null, /* @__PURE__ */ import_react.default.createElement(import_Fieldset.FieldsetLabel, null, customField.extra?.label.object.title, " ", index + 1), /* @__PURE__ */ import_react.default.createElement(
|
|
69
|
+
import_FieldObject.FieldObject,
|
|
69
70
|
{
|
|
70
71
|
name: `${name}.${index}`,
|
|
71
72
|
error: Array.isArray(error) && error[index],
|
|
72
73
|
formState,
|
|
73
74
|
register,
|
|
74
75
|
control,
|
|
75
|
-
...customField.extra?.of
|
|
76
|
+
...customField.extra?.of,
|
|
77
|
+
Field
|
|
76
78
|
}
|
|
77
79
|
), /* @__PURE__ */ import_react.default.createElement(
|
|
78
80
|
import_Button.Button,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/FieldArray/index.tsx"],
|
|
4
|
-
"sourcesContent": ["import React from 'react';\nimport { ErrorOption, useFieldArray, UseFormReturn } from 'react-hook-form';\nimport
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAkB;AAClB,6BAA0D;AAC1D,
|
|
6
|
-
"names": ["import_Fieldset", "React"
|
|
4
|
+
"sourcesContent": ["import React from 'react';\nimport { ErrorOption, useFieldArray, UseFormReturn } from 'react-hook-form';\nimport { FieldBaseContainer } from '@digigov/form/Field/FieldBaseContainer';\nimport { FieldProps } from '@digigov/form/Field/types';\nimport { FieldObject } from '@digigov/form/FieldObject';\nimport { FieldsetLabel } from '@digigov/form/Fieldset';\nimport { Fieldset } from '@digigov/form/Fieldset';\nimport { Card } from '@digigov/ui/content/Card';\nimport { Button } from '@digigov/ui/form/Button';\nimport { Hint } from '@digigov/ui/typography/Hint';\n\nexport interface FieldArrayProps extends FieldProps {\n control: UseFormReturn['control'];\n register: UseFormReturn['register'];\n formState: UseFormReturn['formState'];\n error?: ErrorOption;\n Field: React.FC<FieldProps>;\n}\nexport const FieldArray: React.FC<FieldArrayProps> = ({\n name,\n register,\n control,\n formState,\n error,\n layout,\n label,\n Field,\n ...customField\n}) => {\n const { fields, append, remove } = useFieldArray({\n control,\n name,\n });\n\n return (\n <FieldBaseContainer\n label={label}\n layout={layout}\n error={\n formState.isSubmitted &&\n !formState.isSubmitting &&\n error?.message &&\n error\n ? error\n : undefined\n }\n wrapper=\"fieldset\"\n name={name}\n >\n {fields.length === 0 && (\n <Hint>{customField.extra?.label.object?.nothing_added}</Hint>\n )}\n {fields.map((field, index) => (\n <Card variant=\"border\" key={field.id}>\n <Fieldset>\n <FieldsetLabel>\n {customField.extra?.label.object.title} {index + 1}\n </FieldsetLabel>\n <FieldObject\n name={`${name}.${index}`}\n error={Array.isArray(error) && error[index]}\n formState={formState}\n register={register}\n control={control}\n {...customField.extra?.of}\n Field={Field}\n />\n <Button\n name={`${name}-object-remove`}\n type=\"button\"\n color=\"warning\"\n onClick={() => remove(index)}\n >\n {customField.extra?.label.object?.delete}\n </Button>\n </Fieldset>\n </Card>\n ))}\n\n <Button\n type=\"button\"\n name={`${name}-add-object`}\n color=\"secondary\"\n onClick={(ev) => {\n ev.preventDefault();\n append({});\n }}\n >\n {customField.extra?.label.object?.add}\n </Button>\n </FieldBaseContainer>\n );\n};\n\nexport default FieldArray;\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAkB;AAClB,6BAA0D;AAC1D,gCAAmC;AAEnC,yBAA4B;AAC5B,sBAA8B;AAC9B,IAAAA,mBAAyB;AACzB,kBAAqB;AACrB,oBAAuB;AACvB,kBAAqB;AASd,MAAM,aAAwC,CAAC;AAAA,EACpD;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAM;AACJ,QAAM,EAAE,QAAQ,QAAQ,OAAO,QAAI,sCAAc;AAAA,IAC/C;AAAA,IACA;AAAA,EACF,CAAC;AAED,SACE,6BAAAC,QAAA;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA,OACE,UAAU,eACV,CAAC,UAAU,gBACX,OAAO,WACP,QACI,QACA;AAAA,MAEN,SAAQ;AAAA,MACR;AAAA;AAAA,IAEC,OAAO,WAAW,KACjB,6BAAAA,QAAA,cAAC,wBAAM,YAAY,OAAO,MAAM,QAAQ,aAAc;AAAA,IAEvD,OAAO,IAAI,CAAC,OAAO,UAClB,6BAAAA,QAAA,cAAC,oBAAK,SAAQ,UAAS,KAAK,MAAM,MAChC,6BAAAA,QAAA,cAAC,iCACC,6BAAAA,QAAA,cAAC,qCACE,YAAY,OAAO,MAAM,OAAO,OAAM,KAAE,QAAQ,CACnD,GACA,6BAAAA,QAAA;AAAA,MAAC;AAAA;AAAA,QACC,MAAM,GAAG,IAAI,IAAI,KAAK;AAAA,QACtB,OAAO,MAAM,QAAQ,KAAK,KAAK,MAAM,KAAK;AAAA,QAC1C;AAAA,QACA;AAAA,QACA;AAAA,QACC,GAAG,YAAY,OAAO;AAAA,QACvB;AAAA;AAAA,IACF,GACA,6BAAAA,QAAA;AAAA,MAAC;AAAA;AAAA,QACC,MAAM,GAAG,IAAI;AAAA,QACb,MAAK;AAAA,QACL,OAAM;AAAA,QACN,SAAS,MAAM,OAAO,KAAK;AAAA;AAAA,MAE1B,YAAY,OAAO,MAAM,QAAQ;AAAA,IACpC,CACF,CACF,CACD;AAAA,IAED,6BAAAA,QAAA;AAAA,MAAC;AAAA;AAAA,QACC,MAAK;AAAA,QACL,MAAM,GAAG,IAAI;AAAA,QACb,OAAM;AAAA,QACN,SAAS,CAAC,OAAO;AACf,aAAG,eAAe;AAClB,iBAAO,CAAC,CAAC;AAAA,QACX;AAAA;AAAA,MAEC,YAAY,OAAO,MAAM,QAAQ;AAAA,IACpC;AAAA,EACF;AAEJ;AAEA,IAAO,qBAAQ;",
|
|
6
|
+
"names": ["import_Fieldset", "React"]
|
|
7
7
|
}
|
package/cjs/FieldObject/index.js
CHANGED
|
@@ -35,8 +35,8 @@ var import_react = __toESM(require("react"));
|
|
|
35
35
|
var import_FieldBase = require("@digigov/form/Field/FieldBase");
|
|
36
36
|
var import_utils = require("@digigov/form/Field/utils");
|
|
37
37
|
var import_calculateField = require("@digigov/form/Field/utils/calculateField");
|
|
38
|
-
var import_Fieldset =
|
|
39
|
-
var
|
|
38
|
+
var import_Fieldset = require("@digigov/form/Fieldset");
|
|
39
|
+
var import_FieldContainer = require("@digigov/ui/form/FieldContainer");
|
|
40
40
|
var import_i18n = require("@digigov/ui/i18n");
|
|
41
41
|
const FieldObject = ({
|
|
42
42
|
name,
|
|
@@ -46,10 +46,11 @@ const FieldObject = ({
|
|
|
46
46
|
register,
|
|
47
47
|
reset,
|
|
48
48
|
formState,
|
|
49
|
-
error
|
|
49
|
+
error,
|
|
50
|
+
Field
|
|
50
51
|
}) => {
|
|
51
52
|
const { t } = (0, import_i18n.useTranslation)();
|
|
52
|
-
return /* @__PURE__ */ import_react.default.createElement(import_Fieldset.
|
|
53
|
+
return /* @__PURE__ */ import_react.default.createElement(import_Fieldset.Fieldset, null, label?.primary && /* @__PURE__ */ import_react.default.createElement(import_FieldContainer.FieldsetLegend, { size: "sm" }, t(label.primary)), label?.secondary && /* @__PURE__ */ import_react.default.createElement(import_Fieldset.FieldsetCaption, null, t(label.secondary)), extra?.fields.map((field) => /* @__PURE__ */ import_react.default.createElement(
|
|
53
54
|
FieldObjectItem,
|
|
54
55
|
{
|
|
55
56
|
key: `${name}.${field.key}`,
|
|
@@ -59,7 +60,8 @@ const FieldObject = ({
|
|
|
59
60
|
reset,
|
|
60
61
|
field,
|
|
61
62
|
error: error && error[field.key],
|
|
62
|
-
formState
|
|
63
|
+
formState,
|
|
64
|
+
Field
|
|
63
65
|
}
|
|
64
66
|
)));
|
|
65
67
|
};
|
|
@@ -71,7 +73,8 @@ const FieldObjectItem = ({
|
|
|
71
73
|
control,
|
|
72
74
|
formState,
|
|
73
75
|
reset,
|
|
74
|
-
register
|
|
76
|
+
register,
|
|
77
|
+
Field
|
|
75
78
|
}) => {
|
|
76
79
|
const calculatedField = (0, import_react.useMemo)(
|
|
77
80
|
() => (0, import_calculateField.calculateField)(children, field, import_utils.FIELD_COMPONENTS, import_utils.ALTERNATIVE_COMPONENTS),
|
|
@@ -83,6 +86,7 @@ const FieldObjectItem = ({
|
|
|
83
86
|
{
|
|
84
87
|
...calculatedField,
|
|
85
88
|
name,
|
|
89
|
+
Field,
|
|
86
90
|
control,
|
|
87
91
|
reset,
|
|
88
92
|
register,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/FieldObject/index.tsx"],
|
|
4
|
-
"sourcesContent": ["import React, { useMemo } from 'react';\nimport { ErrorOption, UseFormReturn } from 'react-hook-form';\nimport { FieldBase } from '@digigov/form/Field/FieldBase';\nimport { CalculatedField, FieldProps } from '@digigov/form/Field/types';\nimport {\n FIELD_COMPONENTS,\n ALTERNATIVE_COMPONENTS,\n} from '@digigov/form/Field/utils';\nimport { calculateField } from '@digigov/form/Field/utils/calculateField';\nimport Fieldset,
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAA+B;AAE/B,uBAA0B;AAE1B,mBAGO;AACP,4BAA+B;AAC/B,sBAA0C;AAE1C,4BAA+B;AAC/B,kBAA+B;
|
|
6
|
-
"names": ["React"
|
|
4
|
+
"sourcesContent": ["import React, { useMemo } from 'react';\nimport { ErrorOption, UseFormReturn } from 'react-hook-form';\nimport { FieldBase } from '@digigov/form/Field/FieldBase';\nimport { CalculatedField, FieldProps } from '@digigov/form/Field/types';\nimport {\n FIELD_COMPONENTS,\n ALTERNATIVE_COMPONENTS,\n} from '@digigov/form/Field/utils';\nimport { calculateField } from '@digigov/form/Field/utils/calculateField';\nimport { Fieldset, FieldsetCaption } from '@digigov/form/Fieldset';\nimport { FieldSpec } from '@digigov/form/types';\nimport { FieldsetLegend } from '@digigov/ui/form/FieldContainer';\nimport { useTranslation } from '@digigov/ui/i18n';\n\nexport interface FieldObjectProps extends Omit<FieldProps, 'key'> {\n control: UseFormReturn['control'];\n register: UseFormReturn['register'];\n reset: UseFormReturn['reset'];\n formState: UseFormReturn['formState'];\n error?: ErrorOption;\n Field: React.FC<FieldProps>;\n}\n\nexport const FieldObject: React.FC<FieldObjectProps> = ({\n name,\n label,\n extra,\n control,\n register,\n reset,\n formState,\n error,\n Field,\n}) => {\n const { t } = useTranslation();\n\n return (\n <Fieldset>\n {label?.primary && (\n <FieldsetLegend size=\"sm\">{t(label.primary)}</FieldsetLegend>\n )}\n {label?.secondary && (\n <FieldsetCaption>{t(label.secondary)}</FieldsetCaption>\n )}\n {extra?.fields.map((field) => (\n <FieldObjectItem\n key={`${name}.${field.key}`}\n name={`${name}.${field.key}`}\n control={control}\n register={register}\n reset={reset}\n field={field}\n error={error && error[field.key]}\n formState={formState}\n Field={Field}\n />\n ))}\n </Fieldset>\n );\n};\n\nexport interface FieldObjectItemProps {\n name: string;\n field: FieldSpec;\n control: UseFormReturn['control'];\n register: UseFormReturn['register'];\n reset: UseFormReturn['reset'];\n formState: UseFormReturn['formState'];\n error?: ErrorOption;\n children?: React.ReactNode;\n Field: React.FC<FieldProps>;\n}\n\nconst FieldObjectItem: React.FC<FieldObjectItemProps> = ({\n name,\n children,\n field,\n error,\n control,\n formState,\n reset,\n register,\n Field,\n}) => {\n const calculatedField: CalculatedField = useMemo(\n () =>\n calculateField(children, field, FIELD_COMPONENTS, ALTERNATIVE_COMPONENTS),\n [field]\n );\n\n const customError = error ? error : formState?.errors[name];\n return (\n <FieldBase\n {...calculatedField}\n name={name}\n Field={Field}\n control={control}\n reset={reset}\n register={register}\n error={customError}\n />\n );\n};\n\nexport default FieldObject;\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAA+B;AAE/B,uBAA0B;AAE1B,mBAGO;AACP,4BAA+B;AAC/B,sBAA0C;AAE1C,4BAA+B;AAC/B,kBAA+B;AAWxB,MAAM,cAA0C,CAAC;AAAA,EACtD;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAAM;AACJ,QAAM,EAAE,EAAE,QAAI,4BAAe;AAE7B,SACE,6BAAAA,QAAA,cAAC,gCACE,OAAO,WACN,6BAAAA,QAAA,cAAC,wCAAe,MAAK,QAAM,EAAE,MAAM,OAAO,CAAE,GAE7C,OAAO,aACN,6BAAAA,QAAA,cAAC,uCAAiB,EAAE,MAAM,SAAS,CAAE,GAEtC,OAAO,OAAO,IAAI,CAAC,UAClB,6BAAAA,QAAA;AAAA,IAAC;AAAA;AAAA,MACC,KAAK,GAAG,IAAI,IAAI,MAAM,GAAG;AAAA,MACzB,MAAM,GAAG,IAAI,IAAI,MAAM,GAAG;AAAA,MAC1B;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,OAAO,SAAS,MAAM,MAAM,GAAG;AAAA,MAC/B;AAAA,MACA;AAAA;AAAA,EACF,CACD,CACH;AAEJ;AAcA,MAAM,kBAAkD,CAAC;AAAA,EACvD;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAAM;AACJ,QAAM,sBAAmC;AAAA,IACvC,UACE,sCAAe,UAAU,OAAO,+BAAkB,mCAAsB;AAAA,IAC1E,CAAC,KAAK;AAAA,EACR;AAEA,QAAM,cAAc,QAAQ,QAAQ,WAAW,OAAO,IAAI;AAC1D,SACE,6BAAAA,QAAA;AAAA,IAAC;AAAA;AAAA,MACE,GAAG;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,OAAO;AAAA;AAAA,EACT;AAEJ;AAEA,IAAO,sBAAQ;",
|
|
6
|
+
"names": ["React"]
|
|
7
7
|
}
|
package/cjs/Fieldset/index.js
CHANGED
|
@@ -27,7 +27,7 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
27
27
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
28
28
|
var Fieldset_exports = {};
|
|
29
29
|
__export(Fieldset_exports, {
|
|
30
|
-
Fieldset: () => import_Fieldset.
|
|
30
|
+
Fieldset: () => import_Fieldset.Fieldset,
|
|
31
31
|
FieldsetBody: () => FieldsetBody,
|
|
32
32
|
FieldsetCaption: () => FieldsetCaption,
|
|
33
33
|
FieldsetLabel: () => FieldsetLabel,
|
|
@@ -35,27 +35,27 @@ __export(Fieldset_exports, {
|
|
|
35
35
|
});
|
|
36
36
|
module.exports = __toCommonJS(Fieldset_exports);
|
|
37
37
|
var import_react = __toESM(require("react"));
|
|
38
|
-
var import_Fieldset =
|
|
39
|
-
var
|
|
40
|
-
var
|
|
41
|
-
var
|
|
42
|
-
var import_NormalText =
|
|
38
|
+
var import_Fieldset = require("@digigov/react-core/Fieldset");
|
|
39
|
+
var import_FieldContainer = require("@digigov/ui/form/FieldContainer");
|
|
40
|
+
var import_Grid = require("@digigov/ui/layouts/Grid");
|
|
41
|
+
var import_Hint = require("@digigov/ui/typography/Hint");
|
|
42
|
+
var import_NormalText = require("@digigov/ui/typography/NormalText");
|
|
43
43
|
const FieldsetLabel = ({
|
|
44
44
|
children,
|
|
45
45
|
...props
|
|
46
46
|
}) => {
|
|
47
|
-
return /* @__PURE__ */ import_react.default.createElement(
|
|
47
|
+
return /* @__PURE__ */ import_react.default.createElement(import_FieldContainer.FieldsetLegend, { heading: true, size: "xl", ...props }, children);
|
|
48
48
|
};
|
|
49
49
|
const FieldsetCaption = ({
|
|
50
50
|
children,
|
|
51
51
|
...props
|
|
52
52
|
}) => {
|
|
53
|
-
return /* @__PURE__ */ import_react.default.createElement(import_Hint.
|
|
53
|
+
return /* @__PURE__ */ import_react.default.createElement(import_Hint.Hint, { ...props }, children);
|
|
54
54
|
};
|
|
55
55
|
const FieldsetBody = ({ children }) => {
|
|
56
|
-
return /* @__PURE__ */ import_react.default.createElement(import_Grid.
|
|
56
|
+
return /* @__PURE__ */ import_react.default.createElement(import_Grid.Grid, { item: true, xs: 12 }, /* @__PURE__ */ import_react.default.createElement(import_NormalText.NormalText, null, children));
|
|
57
57
|
};
|
|
58
|
-
var Fieldset_default = import_Fieldset.
|
|
58
|
+
var Fieldset_default = import_Fieldset.Fieldset;
|
|
59
59
|
// Annotate the CommonJS export names for ESM import in node:
|
|
60
60
|
0 && (module.exports = {
|
|
61
61
|
Fieldset,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/Fieldset/index.tsx"],
|
|
4
|
-
"sourcesContent": ["import React from 'react';\nimport {\n FieldsetLabelProps,\n FieldsetCaptionProps,\n FieldsetBodyProps,\n} from '@digigov/form/Fieldset/types';\nimport Fieldset from '@digigov/react-core/Fieldset';\nimport FieldsetLegend from '@digigov/
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA
|
|
6
|
-
"names": ["
|
|
4
|
+
"sourcesContent": ["import React from 'react';\nimport {\n FieldsetLabelProps,\n FieldsetCaptionProps,\n FieldsetBodyProps,\n} from '@digigov/form/Fieldset/types';\nimport { Fieldset } from '@digigov/react-core/Fieldset';\nimport { FieldsetLegend } from '@digigov/ui/form/FieldContainer';\nimport { Grid } from '@digigov/ui/layouts/Grid';\nimport { Hint } from '@digigov/ui/typography/Hint';\nimport { NormalText } from '@digigov/ui/typography/NormalText';\n\nexport const FieldsetLabel: React.FC<FieldsetLabelProps> = ({\n children,\n ...props\n}) => {\n return (\n <FieldsetLegend heading size=\"xl\" {...props}>\n {children}\n </FieldsetLegend>\n );\n};\n\nexport const FieldsetCaption: React.FC<FieldsetCaptionProps> = ({\n children,\n ...props\n}) => {\n return <Hint {...props}>{children}</Hint>;\n};\n\nexport const FieldsetBody: React.FC<FieldsetBodyProps> = ({ children }) => {\n return (\n <Grid item xs={12}>\n <NormalText>{children}</NormalText>\n </Grid>\n );\n};\n\nexport { Fieldset };\nexport default Fieldset;\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAkB;AAMlB,sBAAyB;AACzB,4BAA+B;AAC/B,kBAAqB;AACrB,kBAAqB;AACrB,wBAA2B;AAEpB,MAAM,gBAA8C,CAAC;AAAA,EAC1D;AAAA,EACA,GAAG;AACL,MAAM;AACJ,SACE,6BAAAA,QAAA,cAAC,wCAAe,SAAO,MAAC,MAAK,MAAM,GAAG,SACnC,QACH;AAEJ;AAEO,MAAM,kBAAkD,CAAC;AAAA,EAC9D;AAAA,EACA,GAAG;AACL,MAAM;AACJ,SAAO,6BAAAA,QAAA,cAAC,oBAAM,GAAG,SAAQ,QAAS;AACpC;AAEO,MAAM,eAA4C,CAAC,EAAE,SAAS,MAAM;AACzE,SACE,6BAAAA,QAAA,cAAC,oBAAK,MAAI,MAAC,IAAI,MACb,6BAAAA,QAAA,cAAC,oCAAY,QAAS,CACxB;AAEJ;AAGA,IAAO,mBAAQ;",
|
|
6
|
+
"names": ["React"]
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/Fieldset/types.tsx"],
|
|
4
|
-
"sourcesContent": ["import { FieldsetLegendProps } from '@digigov/
|
|
4
|
+
"sourcesContent": ["import { FieldsetLegendProps } from '@digigov/ui/form/FieldContainer';\nimport { HintProps } from '@digigov/ui/typography/Hint';\n\nexport interface FieldsetLabelProps extends FieldsetLegendProps {}\nexport interface FieldsetCaptionProps extends HintProps {}\nexport interface FieldsetBodyProps {\n children?: React.ReactNode;\n}\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;AAAA;AAAA;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
package/cjs/FormBuilder/index.js
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
|
+
var __create = Object.create;
|
|
1
2
|
var __defProp = Object.defineProperty;
|
|
2
3
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
4
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
4
6
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
7
|
var __export = (target, all) => {
|
|
6
8
|
for (var name in all)
|
|
@@ -14,19 +16,177 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
14
16
|
}
|
|
15
17
|
return to;
|
|
16
18
|
};
|
|
19
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
20
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
21
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
22
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
23
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
24
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
25
|
+
mod
|
|
26
|
+
));
|
|
17
27
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
28
|
var FormBuilder_exports = {};
|
|
19
29
|
__export(FormBuilder_exports, {
|
|
20
|
-
|
|
30
|
+
ControlledFormBuilder: () => ControlledFormBuilder,
|
|
31
|
+
FormBase: () => FormBase,
|
|
21
32
|
default: () => FormBuilder_default,
|
|
22
|
-
useFormContext: () =>
|
|
23
|
-
useFormValues: () =>
|
|
33
|
+
useFormContext: () => useFormContext,
|
|
34
|
+
useFormValues: () => useFormValues
|
|
24
35
|
});
|
|
25
36
|
module.exports = __toCommonJS(FormBuilder_exports);
|
|
26
|
-
var
|
|
27
|
-
var
|
|
37
|
+
var import_react = __toESM(require("react"));
|
|
38
|
+
var import_react_hook_form = require("react-hook-form");
|
|
39
|
+
var import_Field = require("@digigov/form/Field");
|
|
40
|
+
var import_utils = require("@digigov/form/Field/utils");
|
|
41
|
+
var import_Fieldset = require("@digigov/form/Fieldset");
|
|
42
|
+
var import_FormContext = require("@digigov/form/FormContext");
|
|
43
|
+
var import_utils2 = require("@digigov/form/utils");
|
|
44
|
+
var import_validators = require("@digigov/form/validators");
|
|
45
|
+
var import_Button = require("@digigov/ui/form/Button");
|
|
46
|
+
var import_Form = require("@digigov/ui/form/Form");
|
|
47
|
+
const FormBase = import_react.default.forwardRef(function FormBase2({
|
|
48
|
+
onSubmit,
|
|
49
|
+
children,
|
|
50
|
+
registerField,
|
|
51
|
+
fieldsMap,
|
|
52
|
+
fieldsetsMap,
|
|
53
|
+
resolver,
|
|
54
|
+
mode,
|
|
55
|
+
initial,
|
|
56
|
+
reValidateMode,
|
|
57
|
+
shouldFocusError,
|
|
58
|
+
criteriaMode,
|
|
59
|
+
componentRegistry,
|
|
60
|
+
grid,
|
|
61
|
+
...props
|
|
62
|
+
}, ref) {
|
|
63
|
+
const form = (0, import_react_hook_form.useForm)({
|
|
64
|
+
resolver,
|
|
65
|
+
mode,
|
|
66
|
+
defaultValues: initial,
|
|
67
|
+
reValidateMode,
|
|
68
|
+
shouldFocusError,
|
|
69
|
+
criteriaMode
|
|
70
|
+
});
|
|
71
|
+
const handleSubmit = (0, import_react.useCallback)(
|
|
72
|
+
(data) => {
|
|
73
|
+
onSubmit && onSubmit(data);
|
|
74
|
+
},
|
|
75
|
+
[onSubmit]
|
|
76
|
+
);
|
|
77
|
+
const submit = form.handleSubmit(handleSubmit);
|
|
78
|
+
const ctx = {
|
|
79
|
+
fieldsMap,
|
|
80
|
+
fieldsetsMap,
|
|
81
|
+
control: form.control,
|
|
82
|
+
register: form.register,
|
|
83
|
+
watch: form.watch,
|
|
84
|
+
resetField: form.resetField,
|
|
85
|
+
registerField,
|
|
86
|
+
errors: form.formState.errors,
|
|
87
|
+
formState: form.formState,
|
|
88
|
+
reset: form.reset,
|
|
89
|
+
trigger: form.trigger,
|
|
90
|
+
getFieldState: form.getFieldState,
|
|
91
|
+
setValue: form.setValue,
|
|
92
|
+
clearErrors: form.clearErrors,
|
|
93
|
+
getValues: form.getValues,
|
|
94
|
+
unregister: form.unregister,
|
|
95
|
+
componentRegistry,
|
|
96
|
+
setError: form.setError,
|
|
97
|
+
formRef: ref,
|
|
98
|
+
submit
|
|
99
|
+
};
|
|
100
|
+
return /* @__PURE__ */ import_react.default.createElement(import_FormContext.FormContext.Provider, { value: ctx }, /* @__PURE__ */ import_react.default.createElement(import_Form.Form, { grid, onSubmit: submit, ref, ...props }, children));
|
|
101
|
+
});
|
|
102
|
+
const useFormContext = () => {
|
|
103
|
+
return (0, import_react.useContext)(import_FormContext.FormContext);
|
|
104
|
+
};
|
|
105
|
+
const useFormValues = () => {
|
|
106
|
+
const ctx = useFormContext();
|
|
107
|
+
return ctx.getValues();
|
|
108
|
+
};
|
|
109
|
+
const FormBuilder = import_react.default.forwardRef(function FormBuilder2({
|
|
110
|
+
fields = [],
|
|
111
|
+
fieldsets,
|
|
112
|
+
initial = {},
|
|
113
|
+
onSubmit,
|
|
114
|
+
children,
|
|
115
|
+
reValidateMode = "onSubmit",
|
|
116
|
+
mode = "onSubmit",
|
|
117
|
+
shouldFocusError = true,
|
|
118
|
+
criteriaMode = "all",
|
|
119
|
+
auto = false,
|
|
120
|
+
validatorRegistry,
|
|
121
|
+
componentRegistry,
|
|
122
|
+
grid = false,
|
|
123
|
+
...props
|
|
124
|
+
}, ref) {
|
|
125
|
+
const fieldsState = (0, import_react.useRef)(fields);
|
|
126
|
+
const setFieldsState = (0, import_react.useCallback)((newFields) => {
|
|
127
|
+
fieldsState.current = newFields;
|
|
128
|
+
}, []);
|
|
129
|
+
const schema = (0, import_validators.useValidationSchema)(fieldsState, validatorRegistry);
|
|
130
|
+
const registerField = (0, import_react.useCallback)((field) => {
|
|
131
|
+
const fieldIndex = fieldsState.current.findIndex(
|
|
132
|
+
(f) => f.key === field.key
|
|
133
|
+
);
|
|
134
|
+
if (fieldIndex > -1) {
|
|
135
|
+
fieldsState.current[fieldIndex] = field;
|
|
136
|
+
} else {
|
|
137
|
+
fieldsState.current.push(field);
|
|
138
|
+
}
|
|
139
|
+
setFieldsState(fieldsState.current);
|
|
140
|
+
}, []);
|
|
141
|
+
let resolver;
|
|
142
|
+
let fieldsMap;
|
|
143
|
+
let fieldsetsMap;
|
|
144
|
+
let fieldChildren;
|
|
145
|
+
if (schema) {
|
|
146
|
+
resolver = (0, import_utils2.yupResolver)(schema);
|
|
147
|
+
fieldsMap = fields ? fields.reduce((map, field) => ({ ...map, [field.key]: field }), {}) : {};
|
|
148
|
+
fieldsetsMap = fieldsets && fieldsets.reduce(
|
|
149
|
+
(map, fieldset) => ({ ...map, [fieldset.key]: fieldset }),
|
|
150
|
+
{}
|
|
151
|
+
);
|
|
152
|
+
if (auto) {
|
|
153
|
+
if (fieldsets) {
|
|
154
|
+
fieldChildren = fieldsets.map((fieldset) => /* @__PURE__ */ import_react.default.createElement(import_Fieldset.Fieldset, { key: fieldset.key }));
|
|
155
|
+
} else if (fields) {
|
|
156
|
+
fieldChildren = fields.map((field) => /* @__PURE__ */ import_react.default.createElement(import_Field.Field, { key: field.key, name: field.key }));
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
return /* @__PURE__ */ import_react.default.createElement(
|
|
161
|
+
FormBase,
|
|
162
|
+
{
|
|
163
|
+
resolver,
|
|
164
|
+
fieldsetsMap,
|
|
165
|
+
fieldsMap,
|
|
166
|
+
registerField,
|
|
167
|
+
initial,
|
|
168
|
+
reValidateMode,
|
|
169
|
+
mode,
|
|
170
|
+
shouldFocusError,
|
|
171
|
+
criteriaMode,
|
|
172
|
+
onSubmit,
|
|
173
|
+
componentRegistry,
|
|
174
|
+
ref,
|
|
175
|
+
grid,
|
|
176
|
+
...props
|
|
177
|
+
},
|
|
178
|
+
fieldChildren,
|
|
179
|
+
auto && /* @__PURE__ */ import_react.default.createElement(import_Button.Button, { type: "submit" }, "\u03A3\u03C5\u03BD\u03AD\u03C7\u03B5\u03B9\u03B1"),
|
|
180
|
+
children
|
|
181
|
+
);
|
|
182
|
+
});
|
|
183
|
+
const ControlledFormBuilder = (props) => {
|
|
184
|
+
return /* @__PURE__ */ import_react.default.createElement(FormBuilder, { ...props, componentRegistry: import_utils.CONTROLLED_FIELD_COMPONENTS });
|
|
185
|
+
};
|
|
186
|
+
var FormBuilder_default = FormBuilder;
|
|
28
187
|
// Annotate the CommonJS export names for ESM import in node:
|
|
29
188
|
0 && (module.exports = {
|
|
189
|
+
ControlledFormBuilder,
|
|
30
190
|
FormBase,
|
|
31
191
|
useFormContext,
|
|
32
192
|
useFormValues
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/FormBuilder/index.tsx"],
|
|
4
|
-
"sourcesContent": ["
|
|
5
|
-
"mappings": "
|
|
6
|
-
"names": []
|
|
4
|
+
"sourcesContent": ["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport React, { useCallback, useContext, useRef } from 'react';\nimport { useForm } from 'react-hook-form';\nimport { Field } from '@digigov/form/Field';\nimport { CONTROLLED_FIELD_COMPONENTS } from '@digigov/form/Field/utils';\nimport { Fieldset } from '@digigov/form/Fieldset';\nimport { FormContext } from '@digigov/form/FormContext';\nimport { FormBaseProps, FormData, FormBuilderProps } from '@digigov/form/types';\nimport { yupResolver } from '@digigov/form/utils';\nimport { useValidationSchema } from '@digigov/form/validators';\nimport { Button } from '@digigov/ui/form/Button';\nimport { Form } from '@digigov/ui/form/Form';\n\nconst FormBase = React.forwardRef(function FormBase(\n {\n onSubmit,\n children,\n registerField,\n fieldsMap,\n fieldsetsMap,\n resolver,\n mode,\n initial,\n reValidateMode,\n shouldFocusError,\n criteriaMode,\n componentRegistry,\n grid,\n ...props\n }: FormBaseProps,\n ref: React.Ref<HTMLFormElement>\n) {\n const form = useForm({\n resolver,\n mode,\n defaultValues: initial,\n reValidateMode,\n shouldFocusError,\n criteriaMode,\n });\n\n const handleSubmit = useCallback(\n (data: FormData): void => {\n onSubmit && onSubmit(data);\n },\n [onSubmit]\n );\n const submit = form.handleSubmit(handleSubmit);\n const ctx = {\n fieldsMap,\n fieldsetsMap,\n control: form.control,\n register: form.register,\n watch: form.watch,\n resetField: form.resetField,\n registerField: registerField,\n errors: form.formState.errors,\n formState: form.formState,\n reset: form.reset,\n trigger: form.trigger,\n getFieldState: form.getFieldState,\n setValue: form.setValue,\n clearErrors: form.clearErrors,\n getValues: form.getValues,\n unregister: form.unregister,\n componentRegistry,\n setError: form.setError,\n formRef: ref,\n submit,\n };\n return (\n <FormContext.Provider value={ctx}>\n <Form grid={grid} onSubmit={submit} ref={ref} {...props}>\n {children}\n </Form>\n </FormContext.Provider>\n );\n});\n\nconst useFormContext = () => {\n return useContext(FormContext);\n};\nconst useFormValues = () => {\n const ctx = useFormContext();\n return ctx.getValues();\n};\nconst FormBuilder = React.forwardRef(function FormBuilder(\n {\n fields = [],\n fieldsets,\n initial = {},\n onSubmit,\n children,\n reValidateMode = 'onSubmit',\n mode = 'onSubmit',\n shouldFocusError = true,\n criteriaMode = 'all',\n auto = false,\n validatorRegistry,\n componentRegistry,\n grid = false,\n ...props\n }: FormBuilderProps,\n ref: React.Ref<HTMLFormElement>\n): React.ReactElement {\n const fieldsState = useRef(fields);\n const setFieldsState = useCallback((newFields) => {\n fieldsState.current = newFields;\n }, []);\n const schema = useValidationSchema(fieldsState, validatorRegistry);\n const registerField = useCallback((field) => {\n const fieldIndex = fieldsState.current.findIndex(\n (f) => f.key === field.key\n );\n if (fieldIndex > -1) {\n fieldsState.current[fieldIndex] = field;\n } else {\n fieldsState.current.push(field);\n }\n setFieldsState(fieldsState.current);\n }, []);\n let resolver;\n let fieldsMap;\n let fieldsetsMap;\n let fieldChildren;\n if (schema) {\n resolver = yupResolver(schema);\n fieldsMap = fields\n ? fields.reduce((map, field) => ({ ...map, [field.key]: field }), {})\n : {};\n fieldsetsMap =\n fieldsets &&\n fieldsets.reduce(\n (map, fieldset) => ({ ...map, [fieldset.key]: fieldset }),\n {}\n );\n\n if (auto) {\n if (fieldsets) {\n fieldChildren = fieldsets.map((fieldset) => (\n <Fieldset key={fieldset.key} />\n ));\n } else if (fields) {\n fieldChildren = fields.map((field) => (\n <Field key={field.key} name={field.key} />\n ));\n }\n }\n }\n return (\n <FormBase\n resolver={resolver}\n fieldsetsMap={fieldsetsMap}\n fieldsMap={fieldsMap}\n registerField={registerField}\n initial={initial}\n reValidateMode={reValidateMode}\n mode={mode}\n shouldFocusError={shouldFocusError}\n criteriaMode={criteriaMode}\n onSubmit={onSubmit}\n componentRegistry={componentRegistry}\n ref={ref}\n grid={grid}\n {...props}\n >\n {fieldChildren}\n {auto && <Button type=\"submit\">\u03A3\u03C5\u03BD\u03AD\u03C7\u03B5\u03B9\u03B1</Button>}\n {children}\n </FormBase>\n );\n});\nexport const ControlledFormBuilder = (props) => {\n return (\n <FormBuilder {...props} componentRegistry={CONTROLLED_FIELD_COMPONENTS} />\n );\n};\nexport default FormBuilder;\n\nexport { useFormContext, useFormValues, FormBase };\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["import_utils", "React", "FormBase", "FormBuilder"]
|
|
7
7
|
}
|