@digigov/form 2.0.0-e7d30530 → 2.0.0-eaf330f5
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 +4 -3
- package/Field/FieldBase.js.map +2 -2
- package/Field/FieldBaseContainer/index.js +19 -37
- package/Field/FieldBaseContainer.d.ts +1 -1
- package/Field/FieldBaseContainer.js.map +2 -2
- package/Field/FieldConditional/index.js +1 -1
- package/Field/FieldConditional.js.map +1 -1
- package/Field/index.js +1 -2
- package/Field/index.js.map +2 -2
- package/Field/types.d.ts +2 -2
- package/Field/utils/index.js +3 -4
- package/Field/utils/index.js.map +2 -2
- package/FieldArray/FormDialog/index.js +7 -2
- package/FieldArray/FormDialog.d.ts +3 -2
- package/FieldArray/FormDialog.js.map +2 -2
- package/FieldArray/__stories__/Default.d.ts +1 -1
- package/FieldArray/__stories__/WithExactLength.d.ts +1 -1
- package/FieldArray/__stories__/WithModal.d.ts +1 -1
- package/FieldArray/index.d.ts +1 -1
- package/FieldArray/index.js +88 -95
- package/FieldArray/index.js.map +3 -3
- package/FormBuilder/FormBuilder.stories.d.ts +0 -2
- package/FormBuilder/__stories__/AutoErrorGrouping.d.ts +1 -1
- package/FormBuilder/__stories__/Default.d.ts +1 -1
- package/FormBuilder/__stories__/ErrorGrouping.d.ts +1 -1
- package/FormBuilder/index.d.ts +1 -1
- package/FormBuilder/index.js +7 -3
- package/FormBuilder/index.js.map +2 -2
- package/FormContext/index.js +2 -6
- package/FormContext.d.ts +0 -1
- package/FormContext.js.map +2 -2
- package/MultiplicityField/MultiplicityField.stories.d.ts +0 -2
- package/MultiplicityField/__stories__/Default.d.ts +1 -1
- package/MultiplicityField/__stories__/PreviewDisplay.d.ts +1 -1
- package/MultiplicityField/__stories__/WithExactLength.d.ts +1 -1
- package/MultiplicityField/__stories__/WithMaxLength.d.ts +1 -1
- package/MultiplicityField/__stories__/WithMinAndMaxLength.d.ts +1 -1
- package/MultiplicityField/__stories__/WithMinLength.d.ts +1 -1
- package/MultiplicityField/add-objects/index.js +1 -1
- package/MultiplicityField/add-objects.js.map +2 -2
- package/MultiplicityField/index.js +2 -4
- package/MultiplicityField/index.js.map +2 -2
- package/MultiplicityField/types.d.ts +0 -1
- package/Questions/Questions.stories.d.ts +0 -2
- package/Questions/__stories__/Default.d.ts +1 -1
- package/cjs/Field/FieldBase/index.js +4 -3
- package/cjs/Field/FieldBase.js.map +2 -2
- package/cjs/Field/FieldBaseContainer/index.js +18 -36
- package/cjs/Field/FieldBaseContainer.js.map +3 -3
- package/cjs/Field/FieldConditional/index.js +1 -1
- package/cjs/Field/FieldConditional.js.map +1 -1
- package/cjs/Field/index.js +1 -2
- package/cjs/Field/index.js.map +2 -2
- package/cjs/Field/types.js.map +1 -1
- package/cjs/Field/utils/index.js +3 -4
- package/cjs/Field/utils/index.js.map +2 -2
- package/cjs/FieldArray/FormDialog/index.js +7 -2
- package/cjs/FieldArray/FormDialog.js.map +2 -2
- package/cjs/FieldArray/index.js +83 -93
- package/cjs/FieldArray/index.js.map +3 -3
- package/cjs/FormBuilder/index.js +7 -3
- package/cjs/FormBuilder/index.js.map +2 -2
- package/cjs/FormContext/index.js +2 -7
- package/cjs/FormContext.js.map +2 -2
- package/cjs/MultiplicityField/add-objects/index.js +1 -1
- package/cjs/MultiplicityField/add-objects.js.map +2 -2
- package/cjs/MultiplicityField/index.js +2 -4
- package/cjs/MultiplicityField/index.js.map +2 -2
- package/cjs/MultiplicityField/types.js.map +1 -1
- package/cjs/inputs/Checkboxes/index.js +1 -2
- package/cjs/inputs/Checkboxes/index.js.map +2 -2
- package/cjs/inputs/DateInput/index.js +12 -27
- package/cjs/inputs/DateInput/index.js.map +2 -2
- package/cjs/inputs/DateTimeInput/index.js +34 -55
- package/cjs/inputs/DateTimeInput/index.js.map +2 -2
- package/cjs/inputs/FileInput/index.js +26 -45
- package/cjs/inputs/FileInput/index.js.map +2 -2
- package/cjs/inputs/ImageInput/index.js +10 -41
- package/cjs/inputs/ImageInput/index.js.map +2 -2
- package/cjs/inputs/Input/inputsInputScenarios/index.js +439 -0
- package/cjs/inputs/Input/inputsInputScenarios.js.map +7 -0
- package/cjs/lazy/index.js +6 -6
- package/cjs/lazy.js.map +2 -2
- package/cjs/registry/index.js +10 -8
- package/cjs/registry.js.map +2 -2
- package/cjs/validators/index.js +10 -8
- package/cjs/validators/index.js.map +2 -2
- package/cjs/validators/utils/date/index.js +3 -21
- package/cjs/validators/utils/date.js.map +2 -2
- package/cjs/validators/utils/datetime/index.js +24 -113
- package/cjs/validators/utils/datetime.js.map +2 -2
- package/index.js +1 -1
- package/inputs/AutoCompleteInput/AutoComplete.stories.d.ts +0 -2
- package/inputs/AutoCompleteInput/__stories__/Default.d.ts +1 -1
- package/inputs/AutoCompleteInput/__stories__/Multiple.d.ts +1 -1
- package/inputs/Checkboxes/Checkboxes.stories.d.ts +0 -2
- package/inputs/Checkboxes/__stories__/Conditional.d.ts +1 -1
- package/inputs/Checkboxes/__stories__/Default.d.ts +1 -1
- package/inputs/Checkboxes/__stories__/WithDivider.d.ts +1 -1
- package/inputs/Checkboxes/index.js +1 -2
- package/inputs/Checkboxes/index.js.map +2 -2
- package/inputs/DateInput/DateInput.stories.d.ts +0 -6
- package/inputs/DateInput/__stories__/Default.d.ts +1 -1
- package/inputs/DateInput/index.js +13 -28
- package/inputs/DateInput/index.js.map +2 -2
- package/inputs/DateTimeInput/DateTimeInput.stories.d.ts +3 -10
- package/inputs/DateTimeInput/__stories__/Default.d.ts +1 -1
- package/inputs/DateTimeInput/index.js +35 -56
- package/inputs/DateTimeInput/index.js.map +2 -2
- package/inputs/FileInput/FileInput.stories.d.ts +0 -2
- package/inputs/FileInput/__stories__/Default.d.ts +1 -1
- package/inputs/FileInput/index.d.ts +1 -5
- package/inputs/FileInput/index.js +27 -46
- package/inputs/FileInput/index.js.map +2 -2
- package/inputs/ImageInput/ImageInput.stories.d.ts +1 -4
- package/inputs/ImageInput/__stories__/Default.d.ts +1 -1
- package/inputs/ImageInput/__stories__/MaxSize.d.ts +1 -1
- package/inputs/ImageInput/__stories__/WithInvalidImageDimension.d.ts +1 -1
- package/inputs/ImageInput/index.d.ts +1 -9
- package/inputs/ImageInput/index.js +11 -42
- package/inputs/ImageInput/index.js.map +2 -2
- package/inputs/Input/Input.stories.d.ts +0 -3
- package/inputs/Input/__stories__/AFM.d.ts +1 -1
- package/inputs/Input/__stories__/Boolean.d.ts +1 -1
- package/inputs/Input/__stories__/IBAN.d.ts +1 -1
- package/inputs/Input/__stories__/Integer.d.ts +1 -1
- package/inputs/Input/__stories__/LandlineNumber.d.ts +1 -1
- package/inputs/Input/__stories__/MobilePhone.d.ts +1 -1
- package/inputs/Input/__stories__/PhoneNumber.d.ts +1 -1
- package/inputs/Input/__stories__/PostalCode.d.ts +1 -1
- package/inputs/Input/__stories__/String.d.ts +1 -1
- package/inputs/Input/__stories__/StringWithTrimValidation.d.ts +1 -1
- package/inputs/Input/__stories__/TextWithLimit.d.ts +1 -1
- package/inputs/Input/inputsInputScenarios/index.js +406 -0
- package/inputs/{ImageInput/__stories__/logo.d → Input/inputsInputScenarios}/package.json +1 -1
- package/inputs/Input/inputsInputScenarios.d.ts +57 -0
- package/inputs/Input/inputsInputScenarios.js.map +7 -0
- package/inputs/Label/Label.stories.d.ts +0 -2
- package/inputs/Label/__stories__/Default.d.ts +1 -1
- package/inputs/OtpInput/OtpInput.stories.d.ts +0 -2
- package/inputs/OtpInput/__stories__/Default.d.ts +1 -1
- package/inputs/Radio/Radio.stories.d.ts +0 -2
- package/inputs/Radio/__stories__/Conditional.d.ts +1 -1
- package/inputs/Radio/__stories__/Default.d.ts +1 -1
- package/inputs/Radio/__stories__/WithDivider.d.ts +1 -1
- package/inputs/Select/Select.stories.d.ts +0 -2
- package/inputs/Select/__stories__/Default.d.ts +1 -1
- package/lazy/index.js +6 -6
- package/package.json +8 -8
- package/registry/index.js +10 -8
- package/src/Field/FieldBase.tsx +18 -14
- package/src/Field/FieldBaseContainer.tsx +51 -68
- package/src/Field/FieldConditional.tsx +1 -1
- package/src/Field/index.tsx +1 -2
- package/src/Field/types.tsx +2 -2
- package/src/Field/utils/index.ts +1 -2
- package/src/FieldArray/FormDialog.tsx +12 -3
- package/src/FieldArray/__stories__/Default.tsx +1 -1
- package/src/FieldArray/__stories__/WithExactLength.tsx +1 -1
- package/src/FieldArray/__stories__/WithModal.tsx +1 -1
- package/src/FieldArray/index.tsx +103 -111
- package/src/FormBuilder/FormBuilder.stories.js +0 -3
- package/src/FormBuilder/__stories__/AutoErrorGrouping.tsx +1 -1
- package/src/FormBuilder/__stories__/Default.tsx +1 -1
- package/src/FormBuilder/__stories__/ErrorGrouping.tsx +1 -1
- package/src/FormBuilder/index.tsx +7 -3
- package/src/FormBuilder/scenarios.test.tsx +1 -1
- package/src/FormContext.tsx +1 -5
- package/src/MultiplicityField/MultiplicityField.stories.js +0 -3
- package/src/MultiplicityField/__stories__/Default.tsx +1 -1
- package/src/MultiplicityField/__stories__/PreviewDisplay.tsx +1 -1
- package/src/MultiplicityField/__stories__/WithExactLength.tsx +1 -1
- package/src/MultiplicityField/__stories__/WithMaxLength.tsx +1 -1
- package/src/MultiplicityField/__stories__/WithMinAndMaxLength.tsx +1 -1
- package/src/MultiplicityField/__stories__/WithMinLength.tsx +1 -1
- package/src/MultiplicityField/add-objects.tsx +1 -1
- package/src/MultiplicityField/index.tsx +1 -3
- package/src/MultiplicityField/types.ts +0 -1
- package/src/Questions/Questions.stories.js +0 -3
- package/src/Questions/__stories__/Default.tsx +1 -1
- package/src/inputs/AutoCompleteInput/AutoComplete.stories.js +0 -3
- package/src/inputs/AutoCompleteInput/__stories__/Default.tsx +1 -1
- package/src/inputs/AutoCompleteInput/__stories__/Multiple.tsx +1 -1
- package/src/inputs/Checkboxes/Checkboxes.stories.js +0 -3
- package/src/inputs/Checkboxes/__stories__/Conditional.tsx +1 -1
- package/src/inputs/Checkboxes/__stories__/Default.tsx +1 -1
- package/src/inputs/Checkboxes/__stories__/WithDivider.tsx +1 -1
- package/src/inputs/Checkboxes/index.tsx +5 -4
- package/src/inputs/DateInput/DateInput.stories.js +0 -7
- package/src/inputs/DateInput/__stories__/Default.tsx +1 -1
- package/src/inputs/DateInput/index.test.tsx +0 -16
- package/src/inputs/DateInput/index.tsx +13 -31
- package/src/inputs/DateTimeInput/DateTimeInput.stories.js +6 -12
- package/src/inputs/DateTimeInput/__stories__/Default.tsx +1 -1
- package/src/inputs/DateTimeInput/index.test.tsx +0 -16
- package/src/inputs/DateTimeInput/index.tsx +35 -59
- package/src/inputs/FileInput/FileInput.stories.js +0 -3
- package/src/inputs/FileInput/__stories__/Default.tsx +1 -1
- package/src/inputs/FileInput/index.tsx +39 -72
- package/src/inputs/ImageInput/ImageInput.stories.js +1 -5
- package/src/inputs/ImageInput/__stories__/Default.tsx +1 -1
- package/src/inputs/ImageInput/__stories__/MaxSize.tsx +2 -3
- package/src/inputs/ImageInput/__stories__/WithInvalidImageDimension.tsx +1 -1
- package/src/inputs/ImageInput/index.test.tsx +0 -4
- package/src/inputs/ImageInput/index.tsx +48 -100
- package/src/inputs/Input/Input.stories.js +0 -4
- package/src/inputs/Input/__stories__/AFM.tsx +1 -1
- package/src/inputs/Input/__stories__/Boolean.tsx +1 -1
- package/src/inputs/Input/__stories__/IBAN.tsx +1 -1
- package/src/inputs/Input/__stories__/Integer.tsx +1 -1
- package/src/inputs/Input/__stories__/LandlineNumber.tsx +1 -1
- package/src/inputs/Input/__stories__/MobilePhone.tsx +1 -1
- package/src/inputs/Input/__stories__/PhoneNumber.tsx +1 -1
- package/src/inputs/Input/__stories__/PostalCode.tsx +1 -1
- package/src/inputs/Input/__stories__/String.tsx +1 -1
- package/src/inputs/Input/__stories__/StringWithTrimValidation.tsx +1 -1
- package/src/inputs/Input/__stories__/TextWithLimit.tsx +1 -1
- package/src/inputs/Input/index.test.tsx +0 -8
- package/src/inputs/Input/inputsInputScenarios.ts +404 -0
- package/src/inputs/Label/Label.stories.js +0 -3
- package/src/inputs/Label/__stories__/Default.tsx +1 -1
- package/src/inputs/OtpInput/OtpInput.stories.js +0 -3
- package/src/inputs/OtpInput/__stories__/Default.tsx +1 -1
- package/src/inputs/Radio/Radio.stories.js +0 -3
- package/src/inputs/Radio/__stories__/Conditional.tsx +1 -1
- package/src/inputs/Radio/__stories__/Default.tsx +1 -1
- package/src/inputs/Radio/__stories__/WithDivider.tsx +1 -1
- package/src/inputs/Select/Select.stories.js +0 -3
- package/src/inputs/Select/__stories__/Default.tsx +1 -1
- package/src/lazy.js +6 -6
- package/src/registry.js +10 -8
- package/src/validators/index.ts +13 -13
- package/src/validators/utils/date.ts +4 -23
- package/src/validators/utils/datetime.ts +29 -116
- package/validators/index.js +10 -8
- package/validators/index.js.map +2 -2
- package/validators/utils/date/index.js +3 -21
- package/validators/utils/date.d.ts +1 -1
- package/validators/utils/date.js.map +2 -2
- package/validators/utils/datetime/index.js +24 -113
- package/validators/utils/datetime.d.ts +1 -1
- package/validators/utils/datetime.js.map +2 -2
- package/cjs/inputs/ImageInput/__stories__/logo.d/index.js +0 -1
- package/cjs/inputs/ImageInput/__stories__/logo.d.js.map +0 -7
- package/inputs/DateInput/__stories__/WithDefaultValue.d.ts +0 -3
- package/inputs/DateInput/__stories__/WithInitialValue.d.ts +0 -3
- package/inputs/DateInput/__stories__/WithWrongDefaultValue.d.ts +0 -3
- package/inputs/DateInput/__stories__/WithWrongInitialValue.d.ts +0 -3
- package/inputs/DateTimeInput/__stories__/WithDefaultValue.d.ts +0 -3
- package/inputs/DateTimeInput/__stories__/WithInitialValue.d.ts +0 -3
- package/inputs/DateTimeInput/__stories__/WithWrongDefaultValue.d.ts +0 -3
- package/inputs/DateTimeInput/__stories__/WithWrongInitialValue.d.ts +0 -3
- package/inputs/ImageInput/__stories__/WithInitialValues.d.ts +0 -3
- package/inputs/ImageInput/__stories__/logo.d/index.js +0 -1
- package/inputs/ImageInput/__stories__/logo.d.js.map +0 -7
- package/inputs/Input/__stories__/Email.d.ts +0 -3
- package/src/inputs/DateInput/__stories__/WithDefaultValue.tsx +0 -26
- package/src/inputs/DateInput/__stories__/WithInitialValue.tsx +0 -28
- package/src/inputs/DateInput/__stories__/WithWrongDefaultValue.tsx +0 -26
- package/src/inputs/DateInput/__stories__/WithWrongInitialValue.tsx +0 -28
- package/src/inputs/DateTimeInput/__stories__/WithDefaultValue.tsx +0 -26
- package/src/inputs/DateTimeInput/__stories__/WithInitialValue.tsx +0 -28
- package/src/inputs/DateTimeInput/__stories__/WithWrongDefaultValue.tsx +0 -26
- package/src/inputs/DateTimeInput/__stories__/WithWrongInitialValue.tsx +0 -28
- package/src/inputs/ImageInput/__stories__/WithInitialValues.tsx +0 -45
- package/src/inputs/ImageInput/__stories__/logo.d.ts +0 -4
- package/src/inputs/ImageInput/__stories__/logo.png +0 -0
- package/src/inputs/Input/__stories__/Email.tsx +0 -23
package/Field/FieldBase/index.js
CHANGED
|
@@ -48,13 +48,13 @@ const FieldBase = ({
|
|
|
48
48
|
control,
|
|
49
49
|
name,
|
|
50
50
|
render: ({ field }) => {
|
|
51
|
-
return /* @__PURE__ */ React.createElement(
|
|
51
|
+
return /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement("div", { tabIndex: -1, ref: field.ref }), /* @__PURE__ */ React.createElement(
|
|
52
52
|
Component,
|
|
53
53
|
{
|
|
54
54
|
...field,
|
|
55
55
|
control,
|
|
56
56
|
ref: void 0,
|
|
57
|
-
defaultValue
|
|
57
|
+
defaultValue,
|
|
58
58
|
extra,
|
|
59
59
|
error: !!error,
|
|
60
60
|
type,
|
|
@@ -64,7 +64,7 @@ const FieldBase = ({
|
|
|
64
64
|
disabled: editable === false,
|
|
65
65
|
...componentProps
|
|
66
66
|
}
|
|
67
|
-
);
|
|
67
|
+
));
|
|
68
68
|
}
|
|
69
69
|
}
|
|
70
70
|
)
|
|
@@ -110,6 +110,7 @@ const FieldBase = ({
|
|
|
110
110
|
"aria-describedby": error && `${name}-error`,
|
|
111
111
|
required,
|
|
112
112
|
disabled: editable === false,
|
|
113
|
+
ref: void 0,
|
|
113
114
|
...componentProps
|
|
114
115
|
}
|
|
115
116
|
)
|
package/Field/FieldBase.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/Field/FieldBase.tsx"],
|
|
4
|
-
"sourcesContent": ["import React, { useContext, useEffect } from 'react';\nimport { Controller } from 'react-hook-form';\nimport { ErrorGroupContext } from '@digigov/form/Field/ErrorGroup';\nimport FieldBaseContainer from '@digigov/form/Field/FieldBaseContainer';\nimport { FieldBaseProps } from '@digigov/form/Field/types';\n\nexport const FieldBase: React.FC<FieldBaseProps> = ({\n required,\n name,\n component: Component,\n wrapper,\n control,\n type,\n controlled = false,\n enabled = true,\n editable,\n defaultValue,\n label,\n extra = {},\n layout,\n error,\n register,\n ...componentProps\n}) => {\n const errorGroupContext = useContext(ErrorGroupContext);\n\n useEffect(() => {\n if (errorGroupContext) {\n errorGroupContext.setError(name, label, error);\n }\n }, [error, name, errorGroupContext?.setError]);\n\n if (!enabled) {\n return null;\n }\n\n if (controlled) {\n return (\n <FieldBaseContainer\n label={label}\n layout={layout}\n register={register}\n error={errorGroupContext ? undefined : error}\n hasError={!!error}\n wrapper={wrapper}\n name={name}\n controlled={controlled}\n >\n <Controller\n control={control}\n name={name}\n render={({ field }) => {\n return (\n <Component\n
|
|
5
|
-
"mappings": "AAAA,OAAO,SAAS,YAAY,iBAAiB;AAC7C,SAAS,kBAAkB;AAC3B,SAAS,yBAAyB;AAClC,OAAO,wBAAwB;AAGxB,MAAM,YAAsC,CAAC;AAAA,EAClD;AAAA,EACA;AAAA,EACA,WAAW;AAAA,EACX;AAAA,EACA;AAAA,EACA;AAAA,EACA,aAAa;AAAA,EACb,UAAU;AAAA,EACV;AAAA,EACA;AAAA,EACA;AAAA,EACA,QAAQ,CAAC;AAAA,EACT;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAM;AACJ,QAAM,oBAAoB,WAAW,iBAAiB;AAEtD,YAAU,MAAM;AACd,QAAI,mBAAmB;AACrB,wBAAkB,SAAS,MAAM,OAAO,KAAK;AAAA,IAC/C;AAAA,EACF,GAAG,CAAC,OAAO,MAAM,mBAAmB,QAAQ,CAAC;AAE7C,MAAI,CAAC,SAAS;AACZ,WAAO;AAAA,EACT;AAEA,MAAI,YAAY;AACd,WACE;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA;AAAA,QACA;AAAA,QACA,OAAO,oBAAoB,SAAY;AAAA,QACvC,UAAU,CAAC,CAAC;AAAA,QACZ;AAAA,QACA;AAAA,QACA;AAAA;AAAA,MAEA;AAAA,QAAC;AAAA;AAAA,UACC;AAAA,UACA;AAAA,UACA,QAAQ,CAAC,EAAE,MAAM,MAAM;AACrB,mBACE;AAAA,cAAC;AAAA;AAAA,gBACE,GAAG;AAAA,gBACJ;AAAA,gBACA,KAAK;AAAA,gBACL
|
|
4
|
+
"sourcesContent": ["import React, { useContext, useEffect } from 'react';\nimport { Controller } from 'react-hook-form';\nimport { ErrorGroupContext } from '@digigov/form/Field/ErrorGroup';\nimport FieldBaseContainer from '@digigov/form/Field/FieldBaseContainer';\nimport { FieldBaseProps } from '@digigov/form/Field/types';\n\nexport const FieldBase: React.FC<FieldBaseProps> = ({\n required,\n name,\n component: Component,\n wrapper,\n control,\n type,\n controlled = false,\n enabled = true,\n editable,\n defaultValue,\n label,\n extra = {},\n layout,\n error,\n register,\n ...componentProps\n}) => {\n const errorGroupContext = useContext(ErrorGroupContext);\n\n useEffect(() => {\n if (errorGroupContext) {\n errorGroupContext.setError(name, label, error);\n }\n }, [error, name, errorGroupContext?.setError]);\n\n if (!enabled) {\n return null;\n }\n\n if (controlled) {\n return (\n <FieldBaseContainer\n label={label}\n layout={layout}\n register={register}\n error={errorGroupContext ? undefined : error}\n hasError={!!error}\n wrapper={wrapper}\n name={name}\n controlled={controlled}\n >\n <Controller\n control={control}\n name={name}\n render={({ field }) => {\n return (\n <>\n <div tabIndex={-1} ref={field.ref} />\n <Component\n {...field}\n control={control}\n ref={undefined}\n defaultValue={defaultValue}\n extra={extra}\n error={!!error}\n type={type}\n aria-required={!!required}\n aria-describedby={error && `${name}-error`}\n required={required}\n disabled={editable === false}\n {...componentProps}\n />\n </>\n );\n }}\n />\n </FieldBaseContainer>\n );\n }\n\n return (\n <FieldBaseContainer\n label={label}\n layout={layout}\n register={register}\n error={errorGroupContext ? undefined : error}\n hasError={!!error}\n wrapper={wrapper}\n name={name}\n >\n {Component?.render ? (\n <Component\n {...register(name)}\n control={control}\n error={!!error}\n extra={extra}\n type={type}\n aria-required={!!required}\n aria-describedby={error && `${name}-error`}\n required={required}\n disabled={editable === false}\n defaultValue={defaultValue}\n {...componentProps}\n />\n ) : (\n <Component\n {...register(name)}\n register={register}\n control={control}\n error={!!error}\n extra={extra}\n type={type}\n defaultValue={defaultValue}\n aria-required={!!required}\n aria-describedby={error && `${name}-error`}\n required={required}\n disabled={editable === false}\n ref={undefined}\n {...componentProps}\n />\n )}\n </FieldBaseContainer>\n );\n};\n"],
|
|
5
|
+
"mappings": "AAAA,OAAO,SAAS,YAAY,iBAAiB;AAC7C,SAAS,kBAAkB;AAC3B,SAAS,yBAAyB;AAClC,OAAO,wBAAwB;AAGxB,MAAM,YAAsC,CAAC;AAAA,EAClD;AAAA,EACA;AAAA,EACA,WAAW;AAAA,EACX;AAAA,EACA;AAAA,EACA;AAAA,EACA,aAAa;AAAA,EACb,UAAU;AAAA,EACV;AAAA,EACA;AAAA,EACA;AAAA,EACA,QAAQ,CAAC;AAAA,EACT;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAM;AACJ,QAAM,oBAAoB,WAAW,iBAAiB;AAEtD,YAAU,MAAM;AACd,QAAI,mBAAmB;AACrB,wBAAkB,SAAS,MAAM,OAAO,KAAK;AAAA,IAC/C;AAAA,EACF,GAAG,CAAC,OAAO,MAAM,mBAAmB,QAAQ,CAAC;AAE7C,MAAI,CAAC,SAAS;AACZ,WAAO;AAAA,EACT;AAEA,MAAI,YAAY;AACd,WACE;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA;AAAA,QACA;AAAA,QACA,OAAO,oBAAoB,SAAY;AAAA,QACvC,UAAU,CAAC,CAAC;AAAA,QACZ;AAAA,QACA;AAAA,QACA;AAAA;AAAA,MAEA;AAAA,QAAC;AAAA;AAAA,UACC;AAAA,UACA;AAAA,UACA,QAAQ,CAAC,EAAE,MAAM,MAAM;AACrB,mBACE,0DACE,oCAAC,SAAI,UAAU,IAAI,KAAK,MAAM,KAAK,GACnC;AAAA,cAAC;AAAA;AAAA,gBACE,GAAG;AAAA,gBACJ;AAAA,gBACA,KAAK;AAAA,gBACL;AAAA,gBACA;AAAA,gBACA,OAAO,CAAC,CAAC;AAAA,gBACT;AAAA,gBACA,iBAAe,CAAC,CAAC;AAAA,gBACjB,oBAAkB,SAAS,GAAG,IAAI;AAAA,gBAClC;AAAA,gBACA,UAAU,aAAa;AAAA,gBACtB,GAAG;AAAA;AAAA,YACN,CACF;AAAA,UAEJ;AAAA;AAAA,MACF;AAAA,IACF;AAAA,EAEJ;AAEA,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA;AAAA,MACA,OAAO,oBAAoB,SAAY;AAAA,MACvC,UAAU,CAAC,CAAC;AAAA,MACZ;AAAA,MACA;AAAA;AAAA,IAEC,WAAW,SACV;AAAA,MAAC;AAAA;AAAA,QACE,GAAG,SAAS,IAAI;AAAA,QACjB;AAAA,QACA,OAAO,CAAC,CAAC;AAAA,QACT;AAAA,QACA;AAAA,QACA,iBAAe,CAAC,CAAC;AAAA,QACjB,oBAAkB,SAAS,GAAG,IAAI;AAAA,QAClC;AAAA,QACA,UAAU,aAAa;AAAA,QACvB;AAAA,QACC,GAAG;AAAA;AAAA,IACN,IAEA;AAAA,MAAC;AAAA;AAAA,QACE,GAAG,SAAS,IAAI;AAAA,QACjB;AAAA,QACA;AAAA,QACA,OAAO,CAAC,CAAC;AAAA,QACT;AAAA,QACA;AAAA,QACA;AAAA,QACA,iBAAe,CAAC,CAAC;AAAA,QACjB,oBAAkB,SAAS,GAAG,IAAI;AAAA,QAClC;AAAA,QACA,UAAU,aAAa;AAAA,QACvB,KAAK;AAAA,QACJ,GAAG;AAAA;AAAA,IACN;AAAA,EAEJ;AAEJ;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -2,48 +2,30 @@ import React from "react";
|
|
|
2
2
|
import Label from "@digigov/form/inputs/Label";
|
|
3
3
|
import { ErrorMessage } from "@digigov/react-core/ErrorMessage";
|
|
4
4
|
import FieldContainer from "@digigov/react-core/FieldContainer";
|
|
5
|
-
import
|
|
5
|
+
import CoreFieldset from "@digigov/react-core/Fieldset";
|
|
6
6
|
import FieldsetLegend from "@digigov/react-core/FieldsetLegend";
|
|
7
7
|
import LabelContainer from "@digigov/react-core/LabelContainer";
|
|
8
8
|
import { useTranslation } from "@digigov/ui/i18n";
|
|
9
9
|
import { Hint } from "@digigov/ui/typography/Hint";
|
|
10
|
-
const FieldBaseContainer =
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
Fieldset,
|
|
28
|
-
{
|
|
29
|
-
ref,
|
|
30
|
-
className: "outline-none",
|
|
31
|
-
...controlled && {
|
|
32
|
-
tabIndex: -1
|
|
33
|
-
}
|
|
34
|
-
},
|
|
35
|
-
/* @__PURE__ */ React.createElement(FieldsetLegend, { size: labelSize }, label && label.primary),
|
|
36
|
-
label && label.secondary && /* @__PURE__ */ React.createElement(Hint, null, t(label.secondary)),
|
|
37
|
-
error && /* @__PURE__ */ React.createElement(ErrorMessage, { id: `${name}-error` }, t(errorMessage, errorContext)),
|
|
38
|
-
children,
|
|
39
|
-
label && label.hint && /* @__PURE__ */ React.createElement(Hint, { size: "sm" }, label.hint)
|
|
40
|
-
));
|
|
41
|
-
} else {
|
|
42
|
-
return /* @__PURE__ */ React.createElement(FieldContainer, { error: hasError, ...layout }, /* @__PURE__ */ React.createElement(LabelContainer, null, label && /* @__PURE__ */ React.createElement(Label, { label }), error && /* @__PURE__ */ React.createElement(ErrorMessage, { id: `${name}-error` }, t(errorMessage, errorContext)), children, label && label.hint && /* @__PURE__ */ React.createElement(Hint, { size: "sm" }, label.hint)));
|
|
43
|
-
}
|
|
10
|
+
const FieldBaseContainer = ({
|
|
11
|
+
name,
|
|
12
|
+
wrapper,
|
|
13
|
+
label,
|
|
14
|
+
children,
|
|
15
|
+
error,
|
|
16
|
+
hasError,
|
|
17
|
+
layout,
|
|
18
|
+
labelSize = "sm"
|
|
19
|
+
}) => {
|
|
20
|
+
const { t } = useTranslation();
|
|
21
|
+
const errorMessage = error?.message.key ? error.message.key : error?.message || "";
|
|
22
|
+
const errorContext = error?.message.context || {};
|
|
23
|
+
if (wrapper === "fieldset") {
|
|
24
|
+
return /* @__PURE__ */ React.createElement(FieldContainer, { error: hasError, ...layout }, /* @__PURE__ */ React.createElement(CoreFieldset, null, /* @__PURE__ */ React.createElement(FieldsetLegend, { size: labelSize }, label && label.primary), label && label.secondary && /* @__PURE__ */ React.createElement(Hint, { mb: 0 }, t(label.secondary)), error && /* @__PURE__ */ React.createElement(ErrorMessage, { id: `${name}-error`, mb: 0 }, t(errorMessage, errorContext)), children, label && label.hint && /* @__PURE__ */ React.createElement(Hint, { size: "sm" }, label.hint)));
|
|
25
|
+
} else {
|
|
26
|
+
return /* @__PURE__ */ React.createElement(FieldContainer, { error: hasError, ...layout }, /* @__PURE__ */ React.createElement(LabelContainer, null, label && /* @__PURE__ */ React.createElement(Label, { label }), error && /* @__PURE__ */ React.createElement(ErrorMessage, { id: `${name}-error` }, t(errorMessage, errorContext)), children, label && label.hint && /* @__PURE__ */ React.createElement(Hint, { size: "sm" }, label.hint)));
|
|
44
27
|
}
|
|
45
|
-
|
|
46
|
-
FieldBaseContainer.displayName = "FieldBaseContainer";
|
|
28
|
+
};
|
|
47
29
|
var FieldBaseContainer_default = FieldBaseContainer;
|
|
48
30
|
export {
|
|
49
31
|
FieldBaseContainer,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { FieldContainerProps } from '@digigov/form/Field/types';
|
|
3
|
-
export declare const FieldBaseContainer: React.
|
|
3
|
+
export declare const FieldBaseContainer: React.FC<FieldContainerProps>;
|
|
4
4
|
export default FieldBaseContainer;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/Field/FieldBaseContainer.tsx"],
|
|
4
|
-
"sourcesContent": ["import React
|
|
5
|
-
"mappings": "AAAA,OAAO,
|
|
4
|
+
"sourcesContent": ["import React from 'react';\nimport { FieldContainerProps } from '@digigov/form/Field/types';\nimport Label from '@digigov/form/inputs/Label';\nimport { ErrorMessage } from '@digigov/react-core/ErrorMessage';\nimport FieldContainer from '@digigov/react-core/FieldContainer';\nimport CoreFieldset from '@digigov/react-core/Fieldset';\nimport FieldsetLegend from '@digigov/react-core/FieldsetLegend';\nimport LabelContainer from '@digigov/react-core/LabelContainer';\nimport { useTranslation } from '@digigov/ui/i18n';\nimport { Hint } from '@digigov/ui/typography/Hint';\n\nexport const FieldBaseContainer: React.FC<FieldContainerProps> = ({\n name,\n wrapper,\n label,\n children,\n error,\n hasError,\n layout,\n labelSize = 'sm',\n}) => {\n const { t } = useTranslation();\n const errorMessage = error?.message.key\n ? error.message.key\n : error?.message || '';\n const errorContext = error?.message.context || {};\n if (wrapper === 'fieldset') {\n return (\n <FieldContainer error={hasError} {...layout}>\n <CoreFieldset>\n <FieldsetLegend size={labelSize}>\n {label && label.primary}\n </FieldsetLegend>\n {label && label.secondary && <Hint mb={0}>{t(label.secondary)}</Hint>}\n {error && (\n <ErrorMessage id={`${name}-error`} mb={0}>\n {t(errorMessage, errorContext)}\n </ErrorMessage>\n )}\n {children}\n {label && label.hint && <Hint size=\"sm\">{label.hint}</Hint>}\n </CoreFieldset>\n </FieldContainer>\n );\n } else {\n return (\n <FieldContainer error={hasError} {...layout}>\n <LabelContainer>\n {label && <Label label={label} />}\n {error && (\n <ErrorMessage id={`${name}-error`}>\n {t(errorMessage, errorContext)}\n </ErrorMessage>\n )}\n {children}\n {label && label.hint && <Hint size=\"sm\">{label.hint}</Hint>}\n </LabelContainer>\n </FieldContainer>\n );\n }\n};\n\nexport default FieldBaseContainer;\n"],
|
|
5
|
+
"mappings": "AAAA,OAAO,WAAW;AAElB,OAAO,WAAW;AAClB,SAAS,oBAAoB;AAC7B,OAAO,oBAAoB;AAC3B,OAAO,kBAAkB;AACzB,OAAO,oBAAoB;AAC3B,OAAO,oBAAoB;AAC3B,SAAS,sBAAsB;AAC/B,SAAS,YAAY;AAEd,MAAM,qBAAoD,CAAC;AAAA,EAChE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,YAAY;AACd,MAAM;AACJ,QAAM,EAAE,EAAE,IAAI,eAAe;AAC7B,QAAM,eAAe,OAAO,QAAQ,MAChC,MAAM,QAAQ,MACd,OAAO,WAAW;AACtB,QAAM,eAAe,OAAO,QAAQ,WAAW,CAAC;AAChD,MAAI,YAAY,YAAY;AAC1B,WACE,oCAAC,kBAAe,OAAO,UAAW,GAAG,UACnC,oCAAC,oBACC,oCAAC,kBAAe,MAAM,aACnB,SAAS,MAAM,OAClB,GACC,SAAS,MAAM,aAAa,oCAAC,QAAK,IAAI,KAAI,EAAE,MAAM,SAAS,CAAE,GAC7D,SACC,oCAAC,gBAAa,IAAI,GAAG,IAAI,UAAU,IAAI,KACpC,EAAE,cAAc,YAAY,CAC/B,GAED,UACA,SAAS,MAAM,QAAQ,oCAAC,QAAK,MAAK,QAAM,MAAM,IAAK,CACtD,CACF;AAAA,EAEJ,OAAO;AACL,WACE,oCAAC,kBAAe,OAAO,UAAW,GAAG,UACnC,oCAAC,sBACE,SAAS,oCAAC,SAAM,OAAc,GAC9B,SACC,oCAAC,gBAAa,IAAI,GAAG,IAAI,YACtB,EAAE,cAAc,YAAY,CAC/B,GAED,UACA,SAAS,MAAM,QAAQ,oCAAC,QAAK,MAAK,QAAM,MAAM,IAAK,CACtD,CACF;AAAA,EAEJ;AACF;AAEA,IAAO,6BAAQ;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/Field/FieldConditional.tsx"],
|
|
4
|
-
"sourcesContent": ["import React from 'react';\nimport { useWatch } from 'react-hook-form';\nimport { FieldBase } from '@digigov/form/Field/FieldBase';\nimport {\n ChildFieldMemoProps,\n FieldConditionalProps,\n} from '@digigov/form/Field/types';\nimport { evaluateFieldWithConditions } from '@digigov/form/Field/utils/evaluateFieldWithConditions';\n\nconst ChildFieldMemo = React.memo(\n function ChildField({\n dependencies,\n field,\n control,\n reset,\n resetField,\n register,\n error,\n Field,\n }: ChildFieldMemoProps) {\n const newField = evaluateFieldWithConditions(\n field,\n dependencies as FormData\n );\n return (\n <FieldBase\n {...newField}\n Field={Field}\n name={newField.key}\n reset={reset}\n resetField={resetField}\n control={control}\n register={register}\n error={error}\n />\n );\n },\n (prev, next) => {\n if (!prev || !prev.dependencies) {\n return false;\n }\n if (prev.error !== next.error) {\n return false;\n }\n for (const dep in next.dependencies) {\n if (next.dependencies[dep] !== prev.dependencies[dep]) {\n return false;\n }\n }\n return true;\n }\n);\n\nexport const FieldConditional: React.FC<FieldConditionalProps> = ({\n control,\n field,\n register,\n reset,\n resetField,\n error,\n Field,\n}) => {\n const dependencyKeys = Object.keys(field.condition);\n const dependencyValues = useWatch({\n name: dependencyKeys,\n control,\n });\n const variables = dependencyKeys.reduce(\n (data, fieldKey, index) => ({\n ...data,\n [fieldKey]: dependencyValues[index],\n }),\n {}\n );\n return (\n <ChildFieldMemo\n dependencies={variables}\n field={field}\n control={control}\n register={register}\n
|
|
4
|
+
"sourcesContent": ["import React from 'react';\nimport { useWatch } from 'react-hook-form';\nimport { FieldBase } from '@digigov/form/Field/FieldBase';\nimport {\n ChildFieldMemoProps,\n FieldConditionalProps,\n} from '@digigov/form/Field/types';\nimport { evaluateFieldWithConditions } from '@digigov/form/Field/utils/evaluateFieldWithConditions';\n\nconst ChildFieldMemo = React.memo(\n function ChildField({\n dependencies,\n field,\n control,\n reset,\n resetField,\n register,\n error,\n Field,\n }: ChildFieldMemoProps) {\n const newField = evaluateFieldWithConditions(\n field,\n dependencies as FormData\n );\n return (\n <FieldBase\n {...newField}\n Field={Field}\n name={newField.key}\n reset={reset}\n resetField={resetField}\n control={control}\n register={register}\n error={error}\n />\n );\n },\n (prev, next) => {\n if (!prev || !prev.dependencies) {\n return false;\n }\n if (prev.error !== next.error) {\n return false;\n }\n for (const dep in next.dependencies) {\n if (next.dependencies[dep] !== prev.dependencies[dep]) {\n return false;\n }\n }\n return true;\n }\n);\n\nexport const FieldConditional: React.FC<FieldConditionalProps> = ({\n control,\n field,\n register,\n reset,\n resetField,\n error,\n Field,\n}) => {\n const dependencyKeys = Object.keys(field.condition);\n const dependencyValues = useWatch({\n name: dependencyKeys,\n control,\n });\n const variables = dependencyKeys.reduce(\n (data, fieldKey, index) => ({\n ...data,\n [fieldKey]: dependencyValues[index],\n }),\n {}\n );\n return (\n <ChildFieldMemo\n dependencies={variables}\n field={field}\n control={control}\n register={register}\n resetField={resetField}\n reset={reset}\n error={error}\n Field={Field}\n />\n );\n};\n\nexport default FieldConditional;\n"],
|
|
5
5
|
"mappings": "AAAA,OAAO,WAAW;AAClB,SAAS,gBAAgB;AACzB,SAAS,iBAAiB;AAK1B,SAAS,mCAAmC;AAE5C,MAAM,iBAAiB,MAAM;AAAA,EAC3B,SAAS,WAAW;AAAA,IAClB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,GAAwB;AACtB,UAAM,WAAW;AAAA,MACf;AAAA,MACA;AAAA,IACF;AACA,WACE;AAAA,MAAC;AAAA;AAAA,QACE,GAAG;AAAA,QACJ;AAAA,QACA,MAAM,SAAS;AAAA,QACf;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA;AAAA,IACF;AAAA,EAEJ;AAAA,EACA,CAAC,MAAM,SAAS;AACd,QAAI,CAAC,QAAQ,CAAC,KAAK,cAAc;AAC/B,aAAO;AAAA,IACT;AACA,QAAI,KAAK,UAAU,KAAK,OAAO;AAC7B,aAAO;AAAA,IACT;AACA,eAAW,OAAO,KAAK,cAAc;AACnC,UAAI,KAAK,aAAa,GAAG,MAAM,KAAK,aAAa,GAAG,GAAG;AACrD,eAAO;AAAA,MACT;AAAA,IACF;AACA,WAAO;AAAA,EACT;AACF;AAEO,MAAM,mBAAoD,CAAC;AAAA,EAChE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAAM;AACJ,QAAM,iBAAiB,OAAO,KAAK,MAAM,SAAS;AAClD,QAAM,mBAAmB,SAAS;AAAA,IAChC,MAAM;AAAA,IACN;AAAA,EACF,CAAC;AACD,QAAM,YAAY,eAAe;AAAA,IAC/B,CAAC,MAAM,UAAU,WAAW;AAAA,MAC1B,GAAG;AAAA,MACH,CAAC,QAAQ,GAAG,iBAAiB,KAAK;AAAA,IACpC;AAAA,IACA,CAAC;AAAA,EACH;AACA,SACE;AAAA,IAAC;AAAA;AAAA,MACC,cAAc;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA,EACF;AAEJ;AAEA,IAAO,2BAAQ;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
package/Field/index.js
CHANGED
|
@@ -89,7 +89,6 @@ const Field = ({
|
|
|
89
89
|
setValue,
|
|
90
90
|
getValues,
|
|
91
91
|
unregister,
|
|
92
|
-
resetField,
|
|
93
92
|
Field,
|
|
94
93
|
...calculatedField
|
|
95
94
|
}
|
|
@@ -106,8 +105,8 @@ const Field = ({
|
|
|
106
105
|
control,
|
|
107
106
|
register,
|
|
108
107
|
reset,
|
|
109
|
-
error: customError,
|
|
110
108
|
resetField,
|
|
109
|
+
error: customError,
|
|
111
110
|
Field
|
|
112
111
|
}
|
|
113
112
|
);
|
package/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 children,\n ...customField\n}) => {\n const {\n field,\n control,\n register,\n reset,\n resetField,\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 if (calculatedField.condition) {\n return (\n <FieldConditional\n control={control}\n reset={reset}\n resetField={resetField}\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 trigger={trigger}\n register={register}\n clearErrors={clearErrors}\n error={\n formState.isSubmitted && !formState.isSubmitting ? error : undefined\n }\n getValues={getValues}\n setValue={setValue}\n formState={formState}\n Field={Field}\n reset={reset}\n resetField={resetField}\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
|
|
5
|
-
"mappings": "AAAA,OAAO,SAAS,eAAe;AAC/B,SAAS,iBAAiB;AAC1B,OAAO,sBAAsB;AAM7B;AAAA,EACE;AAAA,EACA;AAAA,OACK;AACP,SAAS,sBAAsB;AAC/B,SAAS,gBAAgB;AACzB,OAAO,gBAAgB;AACvB,OAAO,kBAAkB;AAClB,MAAM,QAA8B,CAAC;AAAA,EAC1C;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,IACA;AAAA,EACF,IAAI,SAAS,MAAM,aAAa,OAAO,cAAc,IAAI;AACzD,QAAM,kBAAmC;AAAA,IACvC,MACE;AAAA,MACE;AAAA,MACA;AAAA,MACA;AAAA,QACE,GAAG;AAAA,QACH,GAAG;AAAA,MACL;AAAA,MACA;AAAA,IACF;AAAA,IACF,CAAC,KAAK;AAAA,EACR;AACA,MAAI,gBAAgB,WAAW;AAC7B,WACE;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA;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;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA,OACE,UAAU,eAAe,CAAC,UAAU,eAAe,QAAQ;AAAA,QAE7D;AAAA,QACA;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;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,
|
|
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 children,\n ...customField\n}) => {\n const {\n field,\n control,\n register,\n reset,\n resetField,\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 if (calculatedField.condition) {\n return (\n <FieldConditional\n control={control}\n reset={reset}\n resetField={resetField}\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 trigger={trigger}\n register={register}\n clearErrors={clearErrors}\n error={\n formState.isSubmitted && !formState.isSubmitting ? error : undefined\n }\n getValues={getValues}\n setValue={setValue}\n formState={formState}\n Field={Field}\n reset={reset}\n resetField={resetField}\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 const editable =\n customField.editable === false || customField.disabled === true\n ? false\n : true;\n const customError = error ? error : formState?.errors[name];\n return (\n <FieldBase\n {...calculatedField}\n editable={editable}\n name={name}\n control={control}\n register={register}\n reset={reset}\n resetField={resetField}\n error={customError}\n Field={Field}\n />\n );\n};\n\nexport default Field;\n"],
|
|
5
|
+
"mappings": "AAAA,OAAO,SAAS,eAAe;AAC/B,SAAS,iBAAiB;AAC1B,OAAO,sBAAsB;AAM7B;AAAA,EACE;AAAA,EACA;AAAA,OACK;AACP,SAAS,sBAAsB;AAC/B,SAAS,gBAAgB;AACzB,OAAO,gBAAgB;AACvB,OAAO,kBAAkB;AAClB,MAAM,QAA8B,CAAC;AAAA,EAC1C;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,IACA;AAAA,EACF,IAAI,SAAS,MAAM,aAAa,OAAO,cAAc,IAAI;AACzD,QAAM,kBAAmC;AAAA,IACvC,MACE;AAAA,MACE;AAAA,MACA;AAAA,MACA;AAAA,QACE,GAAG;AAAA,QACH,GAAG;AAAA,MACL;AAAA,MACA;AAAA,IACF;AAAA,IACF,CAAC,KAAK;AAAA,EACR;AACA,MAAI,gBAAgB,WAAW;AAC7B,WACE;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA;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;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA,OACE,UAAU,eAAe,CAAC,UAAU,eAAe,QAAQ;AAAA,QAE7D;AAAA,QACA;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;AAAA,MAAC;AAAA;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,QAAM,WACJ,YAAY,aAAa,SAAS,YAAY,aAAa,OACvD,QACA;AACN,QAAM,cAAc,QAAQ,QAAQ,WAAW,OAAO,IAAI;AAC1D,SACE;AAAA,IAAC;AAAA;AAAA,MACE,GAAG;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,OAAO;AAAA,MACP;AAAA;AAAA,EACF;AAEJ;AAEA,IAAO,gBAAQ;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
package/Field/types.d.ts
CHANGED
|
@@ -49,7 +49,7 @@ export interface FieldConditionalProps {
|
|
|
49
49
|
control: UseFormReturn['control'];
|
|
50
50
|
register: UseFormReturn['register'];
|
|
51
51
|
reset: UseFormReturn['reset'];
|
|
52
|
-
resetField
|
|
52
|
+
resetField: UseFormReturn['resetField'];
|
|
53
53
|
error?: ErrorOption;
|
|
54
54
|
Field: React.FC<FieldProps>;
|
|
55
55
|
}
|
|
@@ -107,7 +107,7 @@ export interface FieldBaseProps extends CalculatedField {
|
|
|
107
107
|
control: UseFormReturn['control'];
|
|
108
108
|
register: UseFormReturn['register'];
|
|
109
109
|
reset: UseFormReturn['reset'];
|
|
110
|
-
resetField
|
|
110
|
+
resetField: UseFormReturn['resetField'];
|
|
111
111
|
Field?: React.FC<FieldProps>;
|
|
112
112
|
}
|
|
113
113
|
export interface FieldProps extends FieldSpec {
|
package/Field/utils/index.js
CHANGED
|
@@ -17,13 +17,12 @@ const FIELD_COMPONENTS = {
|
|
|
17
17
|
},
|
|
18
18
|
file: {
|
|
19
19
|
wrapper: "fieldset",
|
|
20
|
-
component: FileInput
|
|
21
|
-
|
|
20
|
+
component: FileInput,
|
|
21
|
+
controlled: true
|
|
22
22
|
},
|
|
23
23
|
image: {
|
|
24
24
|
wrapper: "fieldset",
|
|
25
|
-
component: ImageInput
|
|
26
|
-
controlled: true
|
|
25
|
+
component: ImageInput
|
|
27
26
|
},
|
|
28
27
|
date: {
|
|
29
28
|
wrapper: "fieldset",
|
package/Field/utils/index.js.map
CHANGED
|
@@ -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 DateTimeInput from '@digigov/form/inputs/DateTimeInput';\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
|
|
5
|
-
"mappings": "AACA,OAAO,uBAAuB;AAC9B,OAAO,gBAAgB;AACvB,OAAO,eAAe;AACtB,OAAO,mBAAmB;AAC1B,OAAO,eAAe;AACtB,OAAO,gBAAgB;AACvB,OAAO,WAAW;AAClB,OAAO,cAAc;AACrB,OAAO,SAAS,mCAAmC;AACnD,OAAO,YAAY;AAEZ,MAAM,mBAA2C;AAAA,EACtD,MAAM;AAAA,IACJ,WAAW;AAAA,EACb;AAAA,EACA,QAAQ;AAAA,IACN,WAAW;AAAA,EACb;AAAA,EACA,MAAM;AAAA,IACJ,SAAS;AAAA,IACT,WAAW;AAAA;AAAA,
|
|
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 DateTimeInput from '@digigov/form/inputs/DateTimeInput';\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 controlled: true,\n },\n image: {\n wrapper: 'fieldset',\n component: ImageInput,\n },\n date: {\n wrapper: 'fieldset',\n controlled: true,\n component: DateInput,\n },\n datetime: {\n wrapper: 'fieldset',\n controlled: true,\n component: DateTimeInput,\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": "AACA,OAAO,uBAAuB;AAC9B,OAAO,gBAAgB;AACvB,OAAO,eAAe;AACtB,OAAO,mBAAmB;AAC1B,OAAO,eAAe;AACtB,OAAO,gBAAgB;AACvB,OAAO,WAAW;AAClB,OAAO,cAAc;AACrB,OAAO,SAAS,mCAAmC;AACnD,OAAO,YAAY;AAEZ,MAAM,mBAA2C;AAAA,EACtD,MAAM;AAAA,IACJ,WAAW;AAAA,EACb;AAAA,EACA,QAAQ;AAAA,IACN,WAAW;AAAA,EACb;AAAA,EACA,MAAM;AAAA,IACJ,SAAS;AAAA,IACT,WAAW;AAAA,IACX,YAAY;AAAA,EACd;AAAA,EACA,OAAO;AAAA,IACL,SAAS;AAAA,IACT,WAAW;AAAA,EACb;AAAA,EACA,MAAM;AAAA,IACJ,SAAS;AAAA,IACT,YAAY;AAAA,IACZ,WAAW;AAAA,EACb;AAAA,EACA,UAAU;AAAA,IACR,SAAS;AAAA,IACT,YAAY;AAAA,IACZ,WAAW;AAAA,EACb;AAAA,EACA,KAAK;AAAA,IACH,SAAS;AAAA,IACT,YAAY;AAAA,IACZ,WAAW;AAAA,EACb;AAAA,EACA,mBAAmB;AAAA,IACjB,SAAS;AAAA,IACT,YAAY;AAAA,IACZ,WAAW;AAAA,EACb;AAAA,EACA,iBAAiB;AAAA,IACf,SAAS;AAAA,IACT,YAAY;AAAA,IACZ,WAAW;AAAA,EACb;AACF;AAEO,MAAM,yBAAiD;AAAA,EAC5D,QAAQ;AAAA,IACN,WAAW;AAAA,IACX,YAAY;AAAA,EACd;AAAA,EACA,cAAc;AAAA,IACZ,WAAW;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;AAAA,IACX,YAAY;AAAA,EACd;AAAA,EACA,QAAQ;AAAA,IACN,WAAW;AAAA,IACX,YAAY;AAAA,EACd;AACF;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -156,6 +156,7 @@ const FormDialog = React.forwardRef(
|
|
|
156
156
|
!customField.extra?.noHeader && !noValuesCommitted && ofField?.extra && values?.length > 0 && /* @__PURE__ */ React.createElement(
|
|
157
157
|
ArrayItemHeader,
|
|
158
158
|
{
|
|
159
|
+
tableCellActionsLabel: customField.extra?.tableCellActionsLabel,
|
|
159
160
|
labels: ofField.type === "object" ? ofField.extra.fields.map(({ label }) => label.primary) : [ofField.label.primary],
|
|
160
161
|
disabled: customField?.editable === false
|
|
161
162
|
}
|
|
@@ -293,10 +294,14 @@ const ArrayItemModal = React.forwardRef(function ArrayItemModal2({
|
|
|
293
294
|
))
|
|
294
295
|
);
|
|
295
296
|
});
|
|
296
|
-
const ArrayItemHeader = ({
|
|
297
|
+
const ArrayItemHeader = ({
|
|
298
|
+
labels,
|
|
299
|
+
disabled,
|
|
300
|
+
tableCellActionsLabel
|
|
301
|
+
}) => {
|
|
297
302
|
return /* @__PURE__ */ React.createElement(TableHead, null, /* @__PURE__ */ React.createElement(TableRow, null, labels.map((label, index) => {
|
|
298
303
|
return /* @__PURE__ */ React.createElement(TableHeadCell, { key: index }, label);
|
|
299
|
-
}), !disabled && /* @__PURE__ */ React.createElement(TableHeadCell, null,
|
|
304
|
+
}), !disabled && /* @__PURE__ */ React.createElement(TableHeadCell, null, tableCellActionsLabel ?? `\u0395\u03BD\u03AD\u03C1\u03B3\u03B5\u03B9\u03B5\u03C2`)));
|
|
300
305
|
};
|
|
301
306
|
const ArrayItemDisplay = ({
|
|
302
307
|
name,
|
|
@@ -12,7 +12,7 @@ export interface FormDialogProps extends FieldProps {
|
|
|
12
12
|
getValues: UseFormReturn['getValues'];
|
|
13
13
|
setValue: UseFormReturn['setValue'];
|
|
14
14
|
reset: UseFormReturn['reset'];
|
|
15
|
-
resetField
|
|
15
|
+
resetField: UseFormReturn['resetField'];
|
|
16
16
|
sortable: boolean;
|
|
17
17
|
Field: React.FC<FieldProps>;
|
|
18
18
|
}
|
|
@@ -41,9 +41,10 @@ export declare const ArrayItemModal: React.ForwardRefExoticComponent<Omit<{
|
|
|
41
41
|
cancelProps?: any;
|
|
42
42
|
children: React.ReactNode;
|
|
43
43
|
}, "ref"> & React.RefAttributes<unknown>>;
|
|
44
|
-
export declare const ArrayItemHeader: ({ labels, disabled }: {
|
|
44
|
+
export declare const ArrayItemHeader: ({ labels, disabled, tableCellActionsLabel, }: {
|
|
45
45
|
labels: any;
|
|
46
46
|
disabled: any;
|
|
47
|
+
tableCellActionsLabel: any;
|
|
47
48
|
}) => React.JSX.Element;
|
|
48
49
|
export declare const ArrayItemDisplay: ({ name, data, edit, remove, disabledEdit, disabledDelete, disabled, sortable, index, isFirst, isLast, move, valueDisplay, border, wordBreak, stackProps, }: {
|
|
49
50
|
data: any;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/FieldArray/FormDialog.tsx"],
|
|
4
|
-
"sourcesContent": ["import React, { LegacyRef, useEffect, useRef, useState } from 'react';\nimport {\n ErrorOption,\n useFieldArray,\n UseFieldArrayMove,\n UseFormReturn,\n useWatch,\n} from 'react-hook-form';\nimport { FieldProps } from '@digigov/form/Field/types';\nimport { FieldObject } from '@digigov/form/FieldObject';\nimport { Fieldset } from '@digigov/form/Fieldset';\nimport {\n Modal,\n ModalAction,\n ModalContent,\n ModalHeading,\n useModal,\n} from '@digigov/ui/app/Modal';\nimport {\n Table,\n TableBody,\n TableContainer,\n TableDataCell,\n TableHead,\n TableHeadCell,\n TableRow,\n} from '@digigov/ui/content';\nimport { Button } from '@digigov/ui/form/Button';\nimport { StackProps, Grid, Stack } from '@digigov/ui/layouts';\nimport Heading from '@digigov/ui/typography/Heading';\nimport { Hint } from '@digigov/ui/typography/Hint';\n\nexport interface FormDialogProps extends FieldProps {\n control: UseFormReturn['control'];\n trigger: UseFormReturn['trigger'];\n register: UseFormReturn['register'];\n clearErrors: UseFormReturn['clearErrors'];\n formState: UseFormReturn['formState'];\n error?: ErrorOption;\n getValues: UseFormReturn['getValues'];\n setValue: UseFormReturn['setValue'];\n reset: UseFormReturn['reset'];\n resetField?: UseFormReturn['resetField'];\n sortable: boolean;\n Field: React.FC<FieldProps>;\n}\n\nexport interface DialogProps {\n name: string;\n heading: string;\n actions: React.ReactNode;\n children: React.ReactNode;\n registerModal: (any) => {};\n}\n\nexport const FormDialog: React.FC<FormDialogProps> = React.forwardRef(\n function FormDialog(\n {\n name,\n trigger,\n register,\n control,\n formState,\n error,\n getValues,\n Field,\n reset,\n sortable,\n ...customField\n },\n ref\n ) {\n const [isAppending, setIsAppending] = useState(false);\n const [currentIndex, setCurrentIndex] = useState(0);\n const { fields, append, remove, update, move } = useFieldArray({\n control,\n name,\n });\n const { open, close, registerModal } = useModal();\n const currentLength = fields.length > 0 ? fields.length - 1 : fields.length;\n const currentName = isAppending\n ? `${name}.${currentLength}`\n : `${name}.${currentIndex}`;\n useEffect(() => {\n if (isAppending) {\n setCurrentIndex(currentLength);\n open(`modal-${name}`);\n }\n }, [isAppending]);\n\n const valuesRef = useRef(null);\n if (!error) {\n const values = getValues(currentName);\n if (typeof values === 'object') {\n valuesRef.current = { ...values };\n } else {\n valuesRef.current = values;\n }\n }\n const values = getValues(name);\n const ofField = {\n ...customField.extra?.of,\n name: currentName,\n };\n const defaultValue = getValues(currentName) || ofField.defaultValue;\n const noValuesCommitted =\n fields.length === 0 || (fields.length === 1 && isAppending);\n const titleNumber = customField.extra?.label.object.titleNumbering\n ? `${currentLength + 1}`\n : '';\n return (\n <>\n {noValuesCommitted && (\n <Hint {...customField.extra?.label.object?.nothing_added_props}>\n {customField.extra?.label.object?.nothing_added}\n </Hint>\n )}\n <ArrayItemModal\n title={\n customField.extra?.label.object.title &&\n `${customField.extra?.label.object.title} ${titleNumber}`\n }\n hint={customField.label?.secondary}\n name={name}\n defaultValue={defaultValue}\n currentName={currentName}\n editOrAppend={async () => {\n const hasNoErrors = await trigger(\n ofField.type === 'object'\n ? ofField.extra.fields.map(({ key }) => `${currentName}.${key}`)\n : currentName\n );\n if (!hasNoErrors) {\n update(currentIndex, valuesRef.current);\n }\n if (hasNoErrors) {\n const newValues = getValues(currentName);\n if (isAppending) {\n setIsAppending(false);\n }\n if (newValues === '') {\n remove(currentIndex);\n } else {\n update(currentIndex, newValues);\n }\n close();\n }\n }}\n cancel={() => {\n if (isAppending) {\n setIsAppending(false);\n remove(currentIndex);\n close();\n return;\n }\n update(currentIndex, valuesRef.current);\n reset(undefined, {\n keepTouched: true,\n keepDefaultValues: true,\n keepIsValid: true,\n keepIsSubmitted: true,\n keepValues: true,\n });\n close();\n }}\n type={isAppending ? 'append' : 'edit'}\n appendLabel={customField.extra?.label.object.append.label}\n appendProps={customField.extra?.label.object.append.props}\n editLabel={customField.extra?.label.object.edit.label}\n editProps={customField.extra?.label.object.edit.props}\n cancelLabel={customField.extra?.label.object.cancel.label}\n cancelProps={customField.extra?.label.object.cancel.props}\n control={control}\n {...registerModal(`modal-${name}`)}\n >\n <Fieldset>\n {ofField?.type === 'object' ? (\n <FieldObject\n defaultValue={defaultValue || undefined}\n error={error && error[currentIndex]}\n formState={formState}\n register={register}\n control={control}\n {...ofField}\n key={currentName}\n Field={Field}\n />\n ) : (\n <Field\n name={currentName}\n {...ofField}\n error={error && error[currentIndex]}\n key={currentName}\n />\n )}\n </Fieldset>\n </ArrayItemModal>\n {!noValuesCommitted && (\n <TableContainer {...customField.extra?.tableContainer}>\n <Table\n ref={ref as LegacyRef<HTMLTableElement>}\n verticalAlign={customField.extra?.verticalAlign}\n >\n {!customField.extra?.noHeader &&\n !noValuesCommitted &&\n ofField?.extra &&\n values?.length > 0 && (\n <ArrayItemHeader\n labels={\n ofField.type === 'object'\n ? ofField.extra.fields.map(({ label }) => label.primary)\n : [ofField.label.primary]\n }\n disabled={customField?.editable === false}\n />\n )}\n <TableBody>\n {!noValuesCommitted &&\n values?.map?.((field, index) => {\n return (\n <ArrayItemDisplay\n key={index}\n name={`${name}.${index}`}\n index={index}\n isFirst={index === 0}\n isLast={index === values.length - 1}\n data={field}\n edit={() => {\n setCurrentIndex(index);\n open(`modal-${name}`);\n }}\n stackProps={customField?.extra?.stackProps}\n wordBreak={customField?.extra?.wordBreak}\n valueDisplay={customField?.extra?.valueDisplay}\n remove={() => {\n remove(index);\n }}\n border={customField.extra?.border}\n move={move}\n sortable={sortable}\n disabledEdit={\n sortable ? true : (customField.extra?.noEdit ?? false)\n }\n disabledDelete={customField.extra?.noDelete ?? false}\n disabled={customField?.editable === false}\n />\n );\n })}\n </TableBody>\n </Table>\n </TableContainer>\n )}\n {customField.extra?.editVariant !== 'display' && (\n <div\n className={\n customField.extra?.label.object?.addButtonVariant === 'link'\n ? 'px-2 py-2 bg-gray-200 border-t border-b border-gray-400'\n : ''\n }\n >\n <Button\n type=\"button\"\n name={`${name}-add-object`}\n color=\"secondary\"\n variant={customField.extra?.label.object?.addButtonVariant}\n onClick={(ev) => {\n ev.preventDefault();\n if (customField?.extra?.of?.type === 'object') {\n append({});\n } else {\n append('');\n }\n setCurrentIndex(currentLength + 1);\n setIsAppending(true);\n }}\n disabled={\n customField?.editable === false ||\n customField.extra?.editVariant === 'noinput' ||\n fields.length >= (customField.extra?.max ?? Number.MAX_VALUE)\n }\n >\n {customField.extra?.label.object?.add}\n </Button>\n </div>\n )}\n </>\n );\n }\n);\n\nexport const ArrayItemModal = React.forwardRef(function ArrayItemModal(\n {\n type,\n currentName,\n title,\n hint,\n defaultValue,\n editOrAppend,\n cancel,\n control,\n addTitle,\n editLabel,\n editProps,\n appendLabel,\n appendProps,\n cancelLabel,\n cancelProps,\n children,\n ...props\n }: {\n type: 'append' | 'edit';\n name: string;\n title?: string;\n hint?: string;\n editOrAppend: () => void;\n cancel: () => void;\n addTitle?: string;\n editLabel?: string;\n editProps?: any;\n appendLabel?: string;\n appendProps?: any;\n cancelLabel?: string;\n cancelProps?: any;\n children: React.ReactNode;\n [key: string]: any;\n },\n ref\n) {\n const value = useWatch({\n control,\n name: currentName,\n defaultValue: defaultValue,\n });\n const disabled = value === undefined || value === null || value === '';\n return (\n <Modal\n {...props}\n ref={ref as LegacyRef<HTMLDivElement>}\n aria-labelledby=\"modal-label\"\n >\n <ModalHeading id=\"modal-label\">\n {title\n ? title\n : type === 'edit'\n ? '\u0395\u03C0\u03B5\u03BE\u03B5\u03C1\u03B3\u03B1\u03C3\u03AF\u03B1'\n : addTitle || '\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7'}\n </ModalHeading>\n <ModalContent>\n {hint && <Hint>{hint}</Hint>}\n {children}\n </ModalContent>\n <ModalAction>\n {type === 'edit' ? (\n <Button\n color=\"secondary\"\n {...editProps}\n type=\"button\"\n onClick={(e) => {\n e.preventDefault();\n editOrAppend();\n }}\n disabled={disabled}\n >\n {editLabel || '\u0391\u03C0\u03BF\u03B8\u03AE\u03BA\u03B5\u03C5\u03C3\u03B7'}\n </Button>\n ) : (\n <Button\n color=\"primary\"\n {...appendProps}\n type=\"button\"\n onClick={(e) => {\n e.preventDefault();\n editOrAppend();\n }}\n disabled={disabled}\n >\n {appendLabel || '\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7'}\n </Button>\n )}\n <Button\n variant=\"link\"\n type=\"button\"\n {...cancelProps}\n onClick={(e) => {\n e.preventDefault();\n cancel();\n }}\n >\n {cancelLabel || '\u0391\u03BA\u03CD\u03C1\u03C9\u03C3\u03B7'}\n </Button>\n </ModalAction>\n </Modal>\n );\n});\n\nexport const ArrayItemHeader = ({ labels, disabled }) => {\n return (\n <TableHead>\n <TableRow>\n {labels.map((label, index) => {\n return <TableHeadCell key={index}>{label}</TableHeadCell>;\n })}\n {!disabled && <TableHeadCell>\u0395\u03BD\u03AD\u03C1\u03B3\u03B5\u03B9\u03B5\u03C2</TableHeadCell>}\n </TableRow>\n </TableHead>\n );\n};\n\nexport const ArrayItemDisplay = ({\n name,\n data,\n edit,\n remove,\n disabledEdit,\n disabledDelete,\n disabled,\n sortable,\n index,\n isFirst,\n isLast,\n move,\n valueDisplay,\n border = true,\n wordBreak = 'break-all',\n stackProps = {\n spacing: 4,\n alignItems: 'flex-end',\n justifyContent: 'flex-end',\n direction: 'column',\n },\n}: {\n data: any;\n name: string;\n edit: (name: string) => void;\n remove: (name: string) => void;\n disabledEdit?: boolean;\n disabledDelete?: boolean;\n disabled?: boolean;\n sortable: boolean;\n index: number;\n isFirst: boolean;\n isLast: boolean;\n move: UseFieldArrayMove;\n valueDisplay?: (value) => React.ReactNode;\n border: boolean;\n wordBreak?: 'break-all' | 'none';\n stackProps?: StackProps;\n}) => {\n if (data === undefined || data === null) {\n return null;\n }\n if (\n Object.keys(data).length === 0 ||\n (Object.keys(data).length === 1 && data.id)\n ) {\n return null;\n }\n delete data.id;\n const values: (string | Record<string, any>)[] =\n typeof data === 'string' ? [data] : Object.values(data || {});\n const borderVariant = border === false || sortable ? 'none' : 'border';\n return (\n <>\n <TableRow>\n {values?.map?.((value, valueIndex) => {\n return (\n <TableDataCell\n key={valueIndex}\n variant={borderVariant}\n wordBreak={wordBreak}\n pb={sortable ? 0 : undefined}\n pt={sortable ? 4 : undefined}\n >\n {sortable && valueIndex === 0 && (\n <Heading size=\"sm\" className=\"mb-2\">\n \u0395\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE #{index + 1}\n </Heading>\n )}\n {(value as Record<string, any>)?.name ||\n (Array.isArray(value)\n ? value.join('\\n')\n : valueDisplay\n ? valueDisplay(value)\n : value) ||\n ''}\n </TableDataCell>\n );\n })}\n {disabled === true ||\n (disabledEdit === true && disabledDelete === true) ? null : (\n <TableDataCell variant={borderVariant}>\n <Stack {...stackProps}>\n {disabledEdit !== true && (\n <Button\n variant=\"link\"\n type=\"button\"\n onClick={() => {\n edit(name);\n }}\n >\n \u0395\u03C0\u03B5\u03BE\u03B5\u03C1\u03B3\u03B1\u03C3\u03AF\u03B1\n </Button>\n )}\n {disabledDelete !== true && (\n <Button\n variant=\"link\"\n type=\"button\"\n onClick={() => remove(name)}\n >\n \u0394\u03B9\u03B1\u03B3\u03C1\u03B1\u03C6\u03AE\n </Button>\n )}\n </Stack>\n </TableDataCell>\n )}\n </TableRow>\n {sortable && (\n <TableRow>\n <TableDataCell\n variant={isLast ? 'none' : 'border'}\n colSpan={\n disabled === true ||\n (disabledEdit === true && disabledDelete === true)\n ? values.length\n : values.length + 1\n }\n >\n {sortable && !disabled && !(isFirst && isLast) && (\n <Grid xs={12} mt={2}>\n \u039C\u03B5\u03C4\u03B1\u03BA\u03AF\u03BD\u03B7\u03C3\u03B7{' '}\n {!isFirst && (\n <>\n \u03C0\u03C1\u03BF\u03C2 \u03C4\u03B1{' '}\n <Button\n type=\"button\"\n variant=\"link\"\n onClick={() => move(index, index - 1)}\n >\n \u03C0\u03AC\u03BD\u03C9\n </Button>\n </>\n )}\n {!isFirst && !isLast && ' \u03AE '}\n {!isLast && (\n <>\n \u03C0\u03C1\u03BF\u03C2 \u03C4\u03B1{' '}\n <Button\n type=\"button\"\n variant=\"link\"\n onClick={() => move(index, index + 1)}\n >\n \u03BA\u03AC\u03C4\u03C9\n </Button>\n </>\n )}\n </Grid>\n )}\n </TableDataCell>\n </TableRow>\n )}\n </>\n );\n};\n\nexport default FormDialog;\n"],
|
|
5
|
-
"mappings": "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
|
|
4
|
+
"sourcesContent": ["import React, { LegacyRef, useEffect, useRef, useState } from 'react';\nimport {\n ErrorOption,\n useFieldArray,\n UseFieldArrayMove,\n UseFormReturn,\n useWatch,\n} from 'react-hook-form';\nimport { FieldProps } from '@digigov/form/Field/types';\nimport { FieldObject } from '@digigov/form/FieldObject';\nimport { Fieldset } from '@digigov/form/Fieldset';\nimport {\n Modal,\n ModalAction,\n ModalContent,\n ModalHeading,\n useModal,\n} from '@digigov/ui/app/Modal';\nimport {\n Table,\n TableBody,\n TableContainer,\n TableDataCell,\n TableHead,\n TableHeadCell,\n TableRow,\n} from '@digigov/ui/content';\nimport { Button } from '@digigov/ui/form/Button';\nimport { StackProps, Grid, Stack } from '@digigov/ui/layouts';\nimport Heading from '@digigov/ui/typography/Heading';\nimport { Hint } from '@digigov/ui/typography/Hint';\n\nexport interface FormDialogProps extends FieldProps {\n control: UseFormReturn['control'];\n trigger: UseFormReturn['trigger'];\n register: UseFormReturn['register'];\n clearErrors: UseFormReturn['clearErrors'];\n formState: UseFormReturn['formState'];\n error?: ErrorOption;\n getValues: UseFormReturn['getValues'];\n setValue: UseFormReturn['setValue'];\n reset: UseFormReturn['reset'];\n resetField: UseFormReturn['resetField'];\n sortable: boolean;\n Field: React.FC<FieldProps>;\n}\n\nexport interface DialogProps {\n name: string;\n heading: string;\n actions: React.ReactNode;\n children: React.ReactNode;\n registerModal: (any) => {};\n}\n\nexport const FormDialog: React.FC<FormDialogProps> = React.forwardRef(\n function FormDialog(\n {\n name,\n trigger,\n register,\n control,\n formState,\n error,\n getValues,\n Field,\n reset,\n sortable,\n ...customField\n },\n ref\n ) {\n const [isAppending, setIsAppending] = useState(false);\n const [currentIndex, setCurrentIndex] = useState(0);\n const { fields, append, remove, update, move } = useFieldArray({\n control,\n name,\n });\n const { open, close, registerModal } = useModal();\n const currentLength = fields.length > 0 ? fields.length - 1 : fields.length;\n const currentName = isAppending\n ? `${name}.${currentLength}`\n : `${name}.${currentIndex}`;\n useEffect(() => {\n if (isAppending) {\n setCurrentIndex(currentLength);\n open(`modal-${name}`);\n }\n }, [isAppending]);\n\n const valuesRef = useRef(null);\n if (!error) {\n const values = getValues(currentName);\n if (typeof values === 'object') {\n valuesRef.current = { ...values };\n } else {\n valuesRef.current = values;\n }\n }\n const values = getValues(name);\n const ofField = {\n ...customField.extra?.of,\n name: currentName,\n };\n const defaultValue = getValues(currentName) || ofField.defaultValue;\n const noValuesCommitted =\n fields.length === 0 || (fields.length === 1 && isAppending);\n const titleNumber = customField.extra?.label.object.titleNumbering\n ? `${currentLength + 1}`\n : '';\n return (\n <>\n {noValuesCommitted && (\n <Hint {...customField.extra?.label.object?.nothing_added_props}>\n {customField.extra?.label.object?.nothing_added}\n </Hint>\n )}\n <ArrayItemModal\n title={\n customField.extra?.label.object.title &&\n `${customField.extra?.label.object.title} ${titleNumber}`\n }\n hint={customField.label?.secondary}\n name={name}\n defaultValue={defaultValue}\n currentName={currentName}\n editOrAppend={async () => {\n const hasNoErrors = await trigger(\n ofField.type === 'object'\n ? ofField.extra.fields.map(({ key }) => `${currentName}.${key}`)\n : currentName\n );\n if (!hasNoErrors) {\n update(currentIndex, valuesRef.current);\n }\n if (hasNoErrors) {\n const newValues = getValues(currentName);\n if (isAppending) {\n setIsAppending(false);\n }\n if (newValues === '') {\n remove(currentIndex);\n } else {\n update(currentIndex, newValues);\n }\n close();\n }\n }}\n cancel={() => {\n if (isAppending) {\n setIsAppending(false);\n remove(currentIndex);\n close();\n return;\n }\n update(currentIndex, valuesRef.current);\n reset(undefined, {\n keepTouched: true,\n keepDefaultValues: true,\n keepIsValid: true,\n keepIsSubmitted: true,\n keepValues: true,\n });\n close();\n }}\n type={isAppending ? 'append' : 'edit'}\n appendLabel={customField.extra?.label.object.append.label}\n appendProps={customField.extra?.label.object.append.props}\n editLabel={customField.extra?.label.object.edit.label}\n editProps={customField.extra?.label.object.edit.props}\n cancelLabel={customField.extra?.label.object.cancel.label}\n cancelProps={customField.extra?.label.object.cancel.props}\n control={control}\n {...registerModal(`modal-${name}`)}\n >\n <Fieldset>\n {ofField?.type === 'object' ? (\n <FieldObject\n defaultValue={defaultValue || undefined}\n error={error && error[currentIndex]}\n formState={formState}\n register={register}\n control={control}\n {...ofField}\n key={currentName}\n Field={Field}\n />\n ) : (\n <Field\n name={currentName}\n {...ofField}\n error={error && error[currentIndex]}\n key={currentName}\n />\n )}\n </Fieldset>\n </ArrayItemModal>\n {!noValuesCommitted && (\n <TableContainer {...customField.extra?.tableContainer}>\n <Table\n ref={ref as LegacyRef<HTMLTableElement>}\n verticalAlign={customField.extra?.verticalAlign}\n >\n {!customField.extra?.noHeader &&\n !noValuesCommitted &&\n ofField?.extra &&\n values?.length > 0 && (\n <ArrayItemHeader\n tableCellActionsLabel={\n customField.extra?.tableCellActionsLabel\n }\n labels={\n ofField.type === 'object'\n ? ofField.extra.fields.map(({ label }) => label.primary)\n : [ofField.label.primary]\n }\n disabled={customField?.editable === false}\n />\n )}\n <TableBody>\n {!noValuesCommitted &&\n values?.map?.((field, index) => {\n return (\n <ArrayItemDisplay\n key={index}\n name={`${name}.${index}`}\n index={index}\n isFirst={index === 0}\n isLast={index === values.length - 1}\n data={field}\n edit={() => {\n setCurrentIndex(index);\n open(`modal-${name}`);\n }}\n stackProps={customField?.extra?.stackProps}\n wordBreak={customField?.extra?.wordBreak}\n valueDisplay={customField?.extra?.valueDisplay}\n remove={() => {\n remove(index);\n }}\n border={customField.extra?.border}\n move={move}\n sortable={sortable}\n disabledEdit={\n sortable ? true : (customField.extra?.noEdit ?? false)\n }\n disabledDelete={customField.extra?.noDelete ?? false}\n disabled={customField?.editable === false}\n />\n );\n })}\n </TableBody>\n </Table>\n </TableContainer>\n )}\n {customField.extra?.editVariant !== 'display' && (\n <div\n className={\n customField.extra?.label.object?.addButtonVariant === 'link'\n ? 'px-2 py-2 bg-gray-200 border-t border-b border-gray-400'\n : ''\n }\n >\n <Button\n type=\"button\"\n name={`${name}-add-object`}\n color=\"secondary\"\n variant={customField.extra?.label.object?.addButtonVariant}\n onClick={(ev) => {\n ev.preventDefault();\n if (customField?.extra?.of?.type === 'object') {\n append({});\n } else {\n append('');\n }\n setCurrentIndex(currentLength + 1);\n setIsAppending(true);\n }}\n disabled={\n customField?.editable === false ||\n customField.extra?.editVariant === 'noinput' ||\n fields.length >= (customField.extra?.max ?? Number.MAX_VALUE)\n }\n >\n {customField.extra?.label.object?.add}\n </Button>\n </div>\n )}\n </>\n );\n }\n);\n\nexport const ArrayItemModal = React.forwardRef(function ArrayItemModal(\n {\n type,\n currentName,\n title,\n hint,\n defaultValue,\n editOrAppend,\n cancel,\n control,\n addTitle,\n editLabel,\n editProps,\n appendLabel,\n appendProps,\n cancelLabel,\n cancelProps,\n children,\n ...props\n }: {\n type: 'append' | 'edit';\n name: string;\n title?: string;\n hint?: string;\n editOrAppend: () => void;\n cancel: () => void;\n addTitle?: string;\n editLabel?: string;\n editProps?: any;\n appendLabel?: string;\n appendProps?: any;\n cancelLabel?: string;\n cancelProps?: any;\n children: React.ReactNode;\n [key: string]: any;\n },\n ref\n) {\n const value = useWatch({\n control,\n name: currentName,\n defaultValue: defaultValue,\n });\n const disabled = value === undefined || value === null || value === '';\n return (\n <Modal\n {...props}\n ref={ref as LegacyRef<HTMLDivElement>}\n aria-labelledby=\"modal-label\"\n >\n <ModalHeading id=\"modal-label\">\n {title\n ? title\n : type === 'edit'\n ? '\u0395\u03C0\u03B5\u03BE\u03B5\u03C1\u03B3\u03B1\u03C3\u03AF\u03B1'\n : addTitle || '\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7'}\n </ModalHeading>\n <ModalContent>\n {hint && <Hint>{hint}</Hint>}\n {children}\n </ModalContent>\n <ModalAction>\n {type === 'edit' ? (\n <Button\n color=\"secondary\"\n {...editProps}\n type=\"button\"\n onClick={(e) => {\n e.preventDefault();\n editOrAppend();\n }}\n disabled={disabled}\n >\n {editLabel || '\u0391\u03C0\u03BF\u03B8\u03AE\u03BA\u03B5\u03C5\u03C3\u03B7'}\n </Button>\n ) : (\n <Button\n color=\"primary\"\n {...appendProps}\n type=\"button\"\n onClick={(e) => {\n e.preventDefault();\n editOrAppend();\n }}\n disabled={disabled}\n >\n {appendLabel || '\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7'}\n </Button>\n )}\n <Button\n variant=\"link\"\n type=\"button\"\n {...cancelProps}\n onClick={(e) => {\n e.preventDefault();\n cancel();\n }}\n >\n {cancelLabel || '\u0391\u03BA\u03CD\u03C1\u03C9\u03C3\u03B7'}\n </Button>\n </ModalAction>\n </Modal>\n );\n});\n\nexport const ArrayItemHeader = ({\n labels,\n disabled,\n tableCellActionsLabel,\n}) => {\n return (\n <TableHead>\n <TableRow>\n {labels.map((label, index) => {\n return <TableHeadCell key={index}>{label}</TableHeadCell>;\n })}\n {!disabled && (\n <TableHeadCell>{tableCellActionsLabel ?? `\u0395\u03BD\u03AD\u03C1\u03B3\u03B5\u03B9\u03B5\u03C2`}</TableHeadCell>\n )}\n </TableRow>\n </TableHead>\n );\n};\n\nexport const ArrayItemDisplay = ({\n name,\n data,\n edit,\n remove,\n disabledEdit,\n disabledDelete,\n disabled,\n sortable,\n index,\n isFirst,\n isLast,\n move,\n valueDisplay,\n border = true,\n wordBreak = 'break-all',\n stackProps = {\n spacing: 4,\n alignItems: 'flex-end',\n justifyContent: 'flex-end',\n direction: 'column',\n },\n}: {\n data: any;\n name: string;\n edit: (name: string) => void;\n remove: (name: string) => void;\n disabledEdit?: boolean;\n disabledDelete?: boolean;\n disabled?: boolean;\n sortable: boolean;\n index: number;\n isFirst: boolean;\n isLast: boolean;\n move: UseFieldArrayMove;\n valueDisplay?: (value) => React.ReactNode;\n border: boolean;\n wordBreak?: 'break-all' | 'none';\n stackProps?: StackProps;\n}) => {\n if (data === undefined || data === null) {\n return null;\n }\n if (\n Object.keys(data).length === 0 ||\n (Object.keys(data).length === 1 && data.id)\n ) {\n return null;\n }\n delete data.id;\n const values: (string | Record<string, any>)[] =\n typeof data === 'string' ? [data] : Object.values(data || {});\n const borderVariant = border === false || sortable ? 'none' : 'border';\n return (\n <>\n <TableRow>\n {values?.map?.((value, valueIndex) => {\n return (\n <TableDataCell\n key={valueIndex}\n variant={borderVariant}\n wordBreak={wordBreak}\n pb={sortable ? 0 : undefined}\n pt={sortable ? 4 : undefined}\n >\n {sortable && valueIndex === 0 && (\n <Heading size=\"sm\" className=\"mb-2\">\n \u0395\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE #{index + 1}\n </Heading>\n )}\n {(value as Record<string, any>)?.name ||\n (Array.isArray(value)\n ? value.join('\\n')\n : valueDisplay\n ? valueDisplay(value)\n : value) ||\n ''}\n </TableDataCell>\n );\n })}\n {disabled === true ||\n (disabledEdit === true && disabledDelete === true) ? null : (\n <TableDataCell variant={borderVariant}>\n <Stack {...stackProps}>\n {disabledEdit !== true && (\n <Button\n variant=\"link\"\n type=\"button\"\n onClick={() => {\n edit(name);\n }}\n >\n \u0395\u03C0\u03B5\u03BE\u03B5\u03C1\u03B3\u03B1\u03C3\u03AF\u03B1\n </Button>\n )}\n {disabledDelete !== true && (\n <Button\n variant=\"link\"\n type=\"button\"\n onClick={() => remove(name)}\n >\n \u0394\u03B9\u03B1\u03B3\u03C1\u03B1\u03C6\u03AE\n </Button>\n )}\n </Stack>\n </TableDataCell>\n )}\n </TableRow>\n {sortable && (\n <TableRow>\n <TableDataCell\n variant={isLast ? 'none' : 'border'}\n colSpan={\n disabled === true ||\n (disabledEdit === true && disabledDelete === true)\n ? values.length\n : values.length + 1\n }\n >\n {sortable && !disabled && !(isFirst && isLast) && (\n <Grid xs={12} mt={2}>\n \u039C\u03B5\u03C4\u03B1\u03BA\u03AF\u03BD\u03B7\u03C3\u03B7{' '}\n {!isFirst && (\n <>\n \u03C0\u03C1\u03BF\u03C2 \u03C4\u03B1{' '}\n <Button\n type=\"button\"\n variant=\"link\"\n onClick={() => move(index, index - 1)}\n >\n \u03C0\u03AC\u03BD\u03C9\n </Button>\n </>\n )}\n {!isFirst && !isLast && ' \u03AE '}\n {!isLast && (\n <>\n \u03C0\u03C1\u03BF\u03C2 \u03C4\u03B1{' '}\n <Button\n type=\"button\"\n variant=\"link\"\n onClick={() => move(index, index + 1)}\n >\n \u03BA\u03AC\u03C4\u03C9\n </Button>\n </>\n )}\n </Grid>\n )}\n </TableDataCell>\n </TableRow>\n )}\n </>\n );\n};\n\nexport default FormDialog;\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["FormDialog", "values", "ArrayItemModal"]
|
|
7
7
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
export declare const Default: (
|
|
2
|
+
export declare const Default: () => React.JSX.Element;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
export declare const WithExactLength: (
|
|
2
|
+
export declare const WithExactLength: () => React.JSX.Element;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
export declare const WithModal: (
|
|
2
|
+
export declare const WithModal: () => React.JSX.Element;
|
package/FieldArray/index.d.ts
CHANGED
|
@@ -11,7 +11,7 @@ export interface FieldArrayProps extends FieldProps {
|
|
|
11
11
|
getValues: UseFormReturn['getValues'];
|
|
12
12
|
setValue: UseFormReturn['setValue'];
|
|
13
13
|
reset: UseFormReturn['reset'];
|
|
14
|
-
resetField
|
|
14
|
+
resetField: UseFormReturn['resetField'];
|
|
15
15
|
Field: React.FC<FieldProps>;
|
|
16
16
|
}
|
|
17
17
|
export declare const FieldArray: React.FC<FieldArrayProps>;
|