@digigov/form 2.0.0-8e254888 → 2.0.0-a402a664
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 +6 -2
- package/Field/FieldBase.js.map +2 -2
- package/Field/FieldBaseContainer/index.js +5 -3
- package/Field/FieldBaseContainer.js.map +2 -2
- package/Field/FieldConditional/index.js +4 -0
- package/Field/FieldConditional.js.map +2 -2
- package/Field/index.js +10 -4
- package/Field/index.js.map +2 -2
- package/Field/types.d.ts +11 -3
- package/Field/utils/index.js +3 -1
- package/Field/utils/index.js.map +2 -2
- package/Field/utils/useField/index.js +8 -1
- package/Field/utils/useField.js.map +2 -2
- package/FieldArray/FormDialog/index.js +314 -196
- package/FieldArray/FormDialog.d.ts +20 -7
- package/FieldArray/FormDialog.js.map +3 -3
- 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 -0
- package/FieldArray/index.js +12 -7
- package/FieldArray/index.js.map +2 -2
- package/FieldObject/index.d.ts +3 -0
- package/FieldObject/index.js +26 -15
- package/FieldObject/index.js.map +2 -2
- package/FormBuilder/FormBuilder.stories.d.ts +2 -0
- 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 +11 -6
- package/FormBuilder/index.js.map +2 -2
- package/FormContext/index.js +6 -2
- package/FormContext.d.ts +1 -0
- package/FormContext.js.map +2 -2
- package/MultiplicityField/MultiplicityField.stories.d.ts +2 -0
- 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 +2 -0
- package/MultiplicityField/add-objects.js.map +2 -2
- package/MultiplicityField/index.js +4 -1
- package/MultiplicityField/index.js.map +2 -2
- package/MultiplicityField/types.d.ts +1 -0
- package/Questions/Questions.stories.d.ts +2 -0
- package/Questions/__stories__/Default.d.ts +1 -1
- package/cjs/Field/FieldBase/index.js +6 -2
- package/cjs/Field/FieldBase.js.map +2 -2
- package/cjs/Field/FieldBaseContainer/index.js +4 -2
- package/cjs/Field/FieldBaseContainer.js.map +3 -3
- package/cjs/Field/FieldConditional/index.js +4 -0
- package/cjs/Field/FieldConditional.js.map +2 -2
- package/cjs/Field/index.js +10 -4
- package/cjs/Field/index.js.map +2 -2
- package/cjs/Field/types.js.map +1 -1
- package/cjs/Field/utils/index.js +3 -1
- package/cjs/Field/utils/index.js.map +2 -2
- package/cjs/Field/utils/useField/index.js +8 -1
- package/cjs/Field/utils/useField.js.map +2 -2
- package/cjs/FieldArray/FormDialog/index.js +309 -194
- package/cjs/FieldArray/FormDialog.js.map +3 -3
- package/cjs/FieldArray/index.js +12 -7
- package/cjs/FieldArray/index.js.map +2 -2
- package/cjs/FieldObject/index.js +26 -15
- package/cjs/FieldObject/index.js.map +2 -2
- package/cjs/FormBuilder/index.js +11 -6
- package/cjs/FormBuilder/index.js.map +2 -2
- package/cjs/FormContext/index.js +7 -2
- package/cjs/FormContext.js.map +2 -2
- package/cjs/MultiplicityField/add-objects/index.js +2 -0
- package/cjs/MultiplicityField/add-objects.js.map +2 -2
- package/cjs/MultiplicityField/index.js +4 -1
- package/cjs/MultiplicityField/index.js.map +2 -2
- package/cjs/MultiplicityField/types.js.map +1 -1
- package/cjs/inputs/Checkboxes/index.js +1 -1
- package/cjs/inputs/Checkboxes/index.js.map +2 -2
- package/cjs/inputs/DateInput/index.js +20 -8
- package/cjs/inputs/DateInput/index.js.map +2 -2
- package/cjs/inputs/DateTimeInput/index.js +23 -10
- package/cjs/inputs/DateTimeInput/index.js.map +2 -2
- package/cjs/inputs/FileInput/index.js +26 -21
- package/cjs/inputs/FileInput/index.js.map +2 -2
- package/cjs/inputs/ImageInput/__stories__/logo.d/index.js +1 -0
- package/cjs/inputs/ImageInput/__stories__/logo.d.js.map +7 -0
- package/cjs/inputs/ImageInput/index.js +41 -10
- package/cjs/inputs/ImageInput/index.js.map +2 -2
- package/cjs/inputs/Input/index.js +4 -4
- package/cjs/inputs/Input/index.js.map +2 -2
- package/cjs/inputs/Select/index.js +4 -3
- package/cjs/inputs/Select/index.js.map +2 -2
- package/cjs/inputs/inputsScenarios/index.js +2 -2
- package/cjs/inputs/inputsScenarios.js.map +2 -2
- package/cjs/lazy/index.js +2 -1
- package/cjs/lazy.js.map +2 -2
- package/cjs/registry/index.js +8 -8
- package/cjs/registry.js.map +2 -2
- package/cjs/types.js.map +1 -1
- package/cjs/utils/index.js +20 -6
- package/cjs/utils.js.map +2 -2
- package/cjs/validators/index.js +10 -5
- package/cjs/validators/index.js.map +2 -2
- package/cjs/validators/utils/amka/index.js +60 -0
- package/cjs/validators/utils/amka.js.map +7 -0
- package/cjs/validators/utils/file/index.js +30 -17
- package/cjs/validators/utils/file.js.map +2 -2
- package/cjs/validators/utils/index.js +5 -1
- package/cjs/validators/utils/index.js.map +2 -2
- package/index.js +1 -1
- package/inputs/AutoCompleteInput/AutoComplete.stories.d.ts +2 -0
- 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 +2 -0
- 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 -1
- package/inputs/Checkboxes/index.js.map +2 -2
- package/inputs/DateInput/DateInput.stories.d.ts +2 -0
- package/inputs/DateInput/__stories__/Default.d.ts +1 -1
- package/inputs/DateInput/index.js +20 -8
- package/inputs/DateInput/index.js.map +2 -2
- package/inputs/DateTimeInput/DateTimeInput.stories.d.ts +2 -0
- package/inputs/DateTimeInput/__stories__/Default.d.ts +1 -1
- package/inputs/DateTimeInput/index.js +23 -10
- package/inputs/DateTimeInput/index.js.map +2 -2
- package/inputs/FileInput/FileInput.stories.d.ts +3 -0
- package/inputs/FileInput/__stories__/Default.d.ts +1 -1
- package/inputs/FileInput/__stories__/WithBorderAndLink.d.ts +3 -0
- package/inputs/FileInput/index.d.ts +6 -3
- package/inputs/FileInput/index.js +31 -23
- package/inputs/FileInput/index.js.map +2 -2
- package/inputs/ImageInput/ImageInput.stories.d.ts +4 -1
- package/inputs/ImageInput/__stories__/Default.d.ts +1 -1
- package/inputs/ImageInput/__stories__/MaxSize.d.ts +1 -1
- package/inputs/ImageInput/__stories__/WithInitialValues.d.ts +3 -0
- package/inputs/ImageInput/__stories__/WithInvalidImageDimension.d.ts +1 -1
- package/inputs/ImageInput/__stories__/logo.d/index.js +1 -0
- package/inputs/ImageInput/__stories__/logo.d/package.json +6 -0
- package/inputs/ImageInput/__stories__/logo.d.js.map +7 -0
- package/inputs/ImageInput/index.d.ts +9 -1
- package/inputs/ImageInput/index.js +42 -11
- package/inputs/ImageInput/index.js.map +2 -2
- package/inputs/Input/Input.stories.d.ts +4 -0
- package/inputs/Input/__stories__/AFM.d.ts +1 -1
- package/inputs/Input/__stories__/AMKA.d.ts +3 -0
- package/inputs/Input/__stories__/Boolean.d.ts +1 -1
- package/inputs/Input/__stories__/Email.d.ts +3 -0
- 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/index.d.ts +2 -1
- package/inputs/Input/index.js +4 -4
- package/inputs/Input/index.js.map +2 -2
- package/inputs/Label/Label.stories.d.ts +2 -0
- package/inputs/Label/__stories__/Default.d.ts +1 -1
- package/inputs/OtpInput/OtpInput.stories.d.ts +2 -0
- package/inputs/OtpInput/__stories__/Default.d.ts +1 -1
- package/inputs/Radio/Radio.stories.d.ts +2 -0
- 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 +2 -0
- package/inputs/Select/__stories__/Default.d.ts +1 -1
- package/inputs/Select/index.d.ts +2 -1
- package/inputs/Select/index.js +4 -3
- package/inputs/Select/index.js.map +2 -2
- package/inputs/inputsScenarios/index.js +2 -2
- package/inputs/inputsScenarios.d.ts +1 -1
- package/inputs/inputsScenarios.js.map +2 -2
- package/lazy/index.js +2 -1
- package/package.json +8 -8
- package/registry/index.js +8 -8
- package/src/Field/FieldBase.tsx +5 -1
- package/src/Field/FieldBaseContainer.tsx +8 -4
- package/src/Field/FieldConditional.tsx +4 -0
- package/src/Field/doc.mdx +202 -1
- package/src/Field/index.tsx +15 -5
- package/src/Field/types.tsx +12 -3
- package/src/Field/utils/index.ts +2 -0
- package/src/Field/utils/useField.ts +9 -1
- package/src/FieldArray/FormDialog.tsx +430 -243
- package/src/FieldArray/__stories__/Default.tsx +1 -1
- package/src/FieldArray/__stories__/WithExactLength.tsx +1 -1
- package/src/FieldArray/__stories__/WithModal.tsx +4 -3
- package/src/FieldArray/index.test.tsx +4 -0
- package/src/FieldArray/index.tsx +26 -30
- package/src/FieldObject/index.tsx +33 -18
- package/src/FormBuilder/FormBuilder.stories.js +3 -0
- 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/doc.mdx +9 -4
- package/src/FormBuilder/index.test.tsx +4 -0
- package/src/FormBuilder/index.tsx +12 -6
- package/src/FormBuilder/interaction.test.tsx +8 -0
- package/src/FormBuilder/scenarios.test.tsx +7 -7
- package/src/FormContext.tsx +5 -1
- package/src/MultiplicityField/MultiplicityField.stories.js +3 -0
- 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 +2 -0
- package/src/MultiplicityField/doc.mdx +101 -83
- package/src/MultiplicityField/index.test.tsx +4 -0
- package/src/MultiplicityField/index.tsx +3 -0
- package/src/MultiplicityField/types.ts +1 -0
- package/src/Questions/Questions.stories.js +3 -0
- package/src/Questions/__snapshots__/index.spec.tsx.snap +2 -1
- package/src/Questions/__stories__/Default.tsx +1 -1
- package/src/Questions/doc.mdx +21 -41
- package/src/Questions/index.test.tsx +4 -0
- package/src/doc.mdx +26 -11
- package/src/inputs/AutoCompleteInput/AutoComplete.stories.js +3 -0
- package/src/inputs/AutoCompleteInput/__stories__/Default.tsx +1 -1
- package/src/inputs/AutoCompleteInput/__stories__/Multiple.tsx +1 -1
- package/src/inputs/AutoCompleteInput/index.test.tsx +4 -0
- package/src/inputs/Checkboxes/Checkboxes.stories.js +3 -0
- 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.test.tsx +4 -0
- package/src/inputs/Checkboxes/index.tsx +1 -1
- package/src/inputs/DateInput/DateInput.stories.js +3 -0
- package/src/inputs/DateInput/__stories__/Default.tsx +1 -1
- package/src/inputs/DateInput/index.test.tsx +4 -0
- package/src/inputs/DateInput/index.tsx +21 -7
- package/src/inputs/DateTimeInput/DateTimeInput.stories.js +3 -0
- package/src/inputs/DateTimeInput/__stories__/Default.tsx +1 -1
- package/src/inputs/DateTimeInput/index.test.tsx +4 -0
- package/src/inputs/DateTimeInput/index.tsx +24 -9
- package/src/inputs/FileInput/FileInput.stories.js +4 -0
- package/src/inputs/FileInput/__stories__/Default.tsx +1 -1
- package/src/inputs/FileInput/__stories__/WithBorderAndLink.tsx +34 -0
- package/src/inputs/FileInput/index.test.tsx +8 -0
- package/src/inputs/FileInput/index.tsx +41 -30
- package/src/inputs/ImageInput/ImageInput.stories.js +5 -1
- package/src/inputs/ImageInput/__stories__/Default.tsx +1 -1
- package/src/inputs/ImageInput/__stories__/MaxSize.tsx +3 -2
- package/src/inputs/ImageInput/__stories__/{WithInvalidImageSize.tsx → WithInitialValues.tsx} +12 -3
- package/src/inputs/ImageInput/__stories__/WithInvalidImageDimension.tsx +1 -1
- package/src/inputs/ImageInput/__stories__/logo.d.ts +4 -0
- package/src/inputs/ImageInput/__stories__/logo.png +0 -0
- package/src/inputs/ImageInput/index.test.tsx +8 -4
- package/src/inputs/ImageInput/index.tsx +100 -48
- package/src/inputs/Input/Input.stories.js +5 -0
- package/src/inputs/Input/__stories__/AFM.tsx +1 -1
- package/src/inputs/Input/__stories__/AMKA.tsx +23 -0
- package/src/inputs/Input/__stories__/Boolean.tsx +1 -1
- package/src/inputs/Input/__stories__/Email.tsx +23 -0
- 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 +12 -0
- package/src/inputs/Input/index.tsx +5 -3
- package/src/inputs/Label/Label.stories.js +3 -0
- package/src/inputs/Label/__stories__/Default.tsx +1 -1
- package/src/inputs/Label/index.test.tsx +4 -0
- package/src/inputs/OtpInput/OtpInput.stories.js +3 -0
- package/src/inputs/OtpInput/__stories__/Default.tsx +1 -1
- package/src/inputs/OtpInput/index.test.tsx +4 -0
- package/src/inputs/Radio/Radio.stories.js +3 -0
- 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/Radio/index.test.tsx +4 -0
- package/src/inputs/Select/Select.stories.js +3 -0
- package/src/inputs/Select/__stories__/Default.tsx +1 -1
- package/src/inputs/Select/index.test.tsx +4 -0
- package/src/inputs/Select/index.tsx +7 -4
- package/src/inputs/inputsScenarios.ts +2 -2
- package/src/lazy.js +2 -1
- package/src/registry.js +8 -8
- package/src/types.tsx +2 -1
- package/src/utils.ts +27 -6
- package/src/validators/index.ts +16 -5
- package/src/validators/utils/amka.ts +39 -0
- package/src/validators/utils/file.ts +33 -19
- package/src/validators/utils/index.ts +4 -1
- package/types.d.ts +2 -1
- package/types.js.map +1 -1
- package/utils/index.js +20 -6
- package/utils.d.ts +2 -0
- package/utils.js.map +2 -2
- package/validators/index.d.ts +1 -1
- package/validators/index.js +11 -5
- package/validators/index.js.map +2 -2
- package/validators/utils/amka/index.js +36 -0
- package/{inputs/Input/inputsInputScenarios → validators/utils/amka}/package.json +1 -1
- package/validators/utils/amka.d.ts +6 -0
- package/validators/utils/amka.js.map +7 -0
- package/validators/utils/file/index.js +30 -17
- package/validators/utils/file.js.map +2 -2
- package/validators/utils/index.d.ts +1 -0
- package/validators/utils/index.js +4 -1
- package/validators/utils/index.js.map +2 -2
- package/cjs/inputs/Input/inputsInputScenarios/index.js +0 -439
- package/cjs/inputs/Input/inputsInputScenarios.js.map +0 -7
- package/inputs/ImageInput/__stories__/WithInvalidImageSize.d.ts +0 -3
- package/inputs/Input/inputsInputScenarios/index.js +0 -406
- package/inputs/Input/inputsInputScenarios.d.ts +0 -57
- package/inputs/Input/inputsInputScenarios.js.map +0 -7
- package/src/inputs/Input/inputsInputScenarios.ts +0 -404
package/src/Questions/doc.mdx
CHANGED
|
@@ -14,6 +14,7 @@ import {
|
|
|
14
14
|
TableDataCell,
|
|
15
15
|
} from '@digigov/react-core';
|
|
16
16
|
|
|
17
|
+
# Questions
|
|
17
18
|
|
|
18
19
|
Question pages are used to ask users meaningful questions needed by your
|
|
19
20
|
GOV.GR service, or even gather data about their persona or their application
|
|
@@ -46,7 +47,7 @@ import { Field } from '@digigov/form';
|
|
|
46
47
|
const steps = [
|
|
47
48
|
{
|
|
48
49
|
name: 'residency',
|
|
49
|
-
title: '
|
|
50
|
+
title: 'Που μένετε;',
|
|
50
51
|
fields: [
|
|
51
52
|
{
|
|
52
53
|
key: 'countries',
|
|
@@ -56,25 +57,25 @@ const steps = [
|
|
|
56
57
|
options: [
|
|
57
58
|
{
|
|
58
59
|
label: {
|
|
59
|
-
primary: '
|
|
60
|
+
primary: 'Ελλάδα',
|
|
60
61
|
},
|
|
61
62
|
value: 'greece',
|
|
62
63
|
},
|
|
63
64
|
{
|
|
64
65
|
label: {
|
|
65
|
-
primary: '
|
|
66
|
+
primary: 'Κύπρος',
|
|
66
67
|
},
|
|
67
68
|
value: 'cyprus',
|
|
68
69
|
},
|
|
69
70
|
{
|
|
70
71
|
label: {
|
|
71
|
-
primary: '
|
|
72
|
+
primary: 'Ευρωπαϊκή Ένωση',
|
|
72
73
|
},
|
|
73
74
|
value: 'eu',
|
|
74
75
|
},
|
|
75
76
|
{
|
|
76
77
|
label: {
|
|
77
|
-
primary: '
|
|
78
|
+
primary: 'Ηνωμένες Πολιτείες της Αμερικής',
|
|
78
79
|
},
|
|
79
80
|
value: 'usa',
|
|
80
81
|
},
|
|
@@ -85,12 +86,12 @@ const steps = [
|
|
|
85
86
|
},
|
|
86
87
|
{
|
|
87
88
|
name: 'dob',
|
|
88
|
-
title: '
|
|
89
|
+
title: 'Ποια είναι ημερομηνία γέννησής σας;',
|
|
89
90
|
fields: [
|
|
90
91
|
{
|
|
91
92
|
key: 'dob',
|
|
92
93
|
label: {
|
|
93
|
-
primary: '
|
|
94
|
+
primary: 'Ημερομηνία γέννησης',
|
|
94
95
|
},
|
|
95
96
|
type: 'date',
|
|
96
97
|
required: true,
|
|
@@ -184,7 +185,7 @@ object. The most basic properties are the following:
|
|
|
184
185
|
```json pure title="step-name.json"
|
|
185
186
|
{
|
|
186
187
|
"name": "name",
|
|
187
|
-
"title": "
|
|
188
|
+
"title": "Ποιο είναι το όνομά σας;",
|
|
188
189
|
"fields": [
|
|
189
190
|
{
|
|
190
191
|
"key": "name",
|
|
@@ -210,7 +211,7 @@ the next `step`.
|
|
|
210
211
|
const steps = [
|
|
211
212
|
{
|
|
212
213
|
name: 'age',
|
|
213
|
-
title: '
|
|
214
|
+
title: 'Ποια είναι η ηλικία σας?',
|
|
214
215
|
fields: [
|
|
215
216
|
{
|
|
216
217
|
key: 'age',
|
|
@@ -226,13 +227,13 @@ const steps = [
|
|
|
226
227
|
},
|
|
227
228
|
{
|
|
228
229
|
name: 'citizen-underage',
|
|
229
|
-
title: '
|
|
230
|
+
title: 'Είστε μαθητής;',
|
|
230
231
|
fields: [ ... ]
|
|
231
232
|
},
|
|
232
233
|
{
|
|
233
234
|
// highlight-next-line
|
|
234
235
|
name: 'citizen-adult',
|
|
235
|
-
title: '
|
|
236
|
+
title: 'Εργάζεστε;',
|
|
236
237
|
fields: [
|
|
237
238
|
{
|
|
238
239
|
key: 'citizen-underage-employed',
|
|
@@ -242,11 +243,11 @@ const steps = [
|
|
|
242
243
|
options: [
|
|
243
244
|
{
|
|
244
245
|
label: {primary: "Yes"},
|
|
245
|
-
value: '
|
|
246
|
+
value: 'Ναι',
|
|
246
247
|
},
|
|
247
248
|
{
|
|
248
249
|
label: {primary: "No"},
|
|
249
|
-
value: '
|
|
250
|
+
value: 'ΌΧι',
|
|
250
251
|
}
|
|
251
252
|
]
|
|
252
253
|
}
|
|
@@ -280,7 +281,7 @@ import TranslatorsHeader from 'translators-landing/components/TranslatorsHeader'
|
|
|
280
281
|
const steps = [
|
|
281
282
|
{
|
|
282
283
|
name: 'age',
|
|
283
|
-
title: '
|
|
284
|
+
title: 'Ποια είναι η ηλικία σας;',
|
|
284
285
|
fields: [
|
|
285
286
|
{
|
|
286
287
|
key: 'age',
|
|
@@ -294,7 +295,7 @@ const steps = [
|
|
|
294
295
|
},
|
|
295
296
|
{
|
|
296
297
|
name: 'citizen-underage',
|
|
297
|
-
title: '
|
|
298
|
+
title: 'Είστε μαθητής;',
|
|
298
299
|
fields: [
|
|
299
300
|
{
|
|
300
301
|
key: 'citizen-underage-student',
|
|
@@ -303,11 +304,11 @@ const steps = [
|
|
|
303
304
|
extra: {
|
|
304
305
|
options: [
|
|
305
306
|
{
|
|
306
|
-
label: { primary: '
|
|
307
|
+
label: { primary: 'Ναι' },
|
|
307
308
|
value: 'yes',
|
|
308
309
|
},
|
|
309
310
|
{
|
|
310
|
-
label: { primary: '
|
|
311
|
+
label: { primary: 'Όχι' },
|
|
311
312
|
value: 'no',
|
|
312
313
|
},
|
|
313
314
|
],
|
|
@@ -317,7 +318,7 @@ const steps = [
|
|
|
317
318
|
},
|
|
318
319
|
{
|
|
319
320
|
name: 'citizen-adult',
|
|
320
|
-
title: '
|
|
321
|
+
title: 'Εργάζεστε;',
|
|
321
322
|
fields: [
|
|
322
323
|
{
|
|
323
324
|
key: 'citizen-adult-employed',
|
|
@@ -326,11 +327,11 @@ const steps = [
|
|
|
326
327
|
extra: {
|
|
327
328
|
options: [
|
|
328
329
|
{
|
|
329
|
-
label: { primary: '
|
|
330
|
+
label: { primary: 'Ναι' },
|
|
330
331
|
value: 'yes',
|
|
331
332
|
},
|
|
332
333
|
{
|
|
333
|
-
label: { primary: '
|
|
334
|
+
label: { primary: 'Όχι' },
|
|
334
335
|
value: 'no',
|
|
335
336
|
},
|
|
336
337
|
],
|
|
@@ -389,24 +390,3 @@ export default function Index() {
|
|
|
389
390
|
);
|
|
390
391
|
}
|
|
391
392
|
```
|
|
392
|
-
|
|
393
|
-
## Prop types
|
|
394
|
-
|
|
395
|
-
<TableContainer>
|
|
396
|
-
<Table>
|
|
397
|
-
<TableHead>
|
|
398
|
-
<TableRow>
|
|
399
|
-
<TableHeadCell>Περίοδος</TableHeadCell>
|
|
400
|
-
<TableHeadCell>Κανονικό ποσό</TableHeadCell>
|
|
401
|
-
<TableHeadCell>Μειωμένο ποσό</TableHeadCell>
|
|
402
|
-
</TableRow>
|
|
403
|
-
</TableHead>
|
|
404
|
-
<TableBody>
|
|
405
|
-
<TableRow>
|
|
406
|
-
<TableDataCell>Πρώτες 6 εβδομάδες </TableDataCell>
|
|
407
|
-
<TableDataCell> €109.80 / εβδομάδα</TableDataCell>
|
|
408
|
-
<TableDataCell> €69.80 / εβδομάδα</TableDataCell>
|
|
409
|
-
</TableRow>
|
|
410
|
-
</TableBody>
|
|
411
|
-
</Table>
|
|
412
|
-
</TableContainer>
|
|
@@ -14,6 +14,10 @@ test('renders the All Questions variants', async ({ mount, page }) => {
|
|
|
14
14
|
)
|
|
15
15
|
await page.evaluate(() => document.fonts.ready);
|
|
16
16
|
|
|
17
|
+
// Move the mouse to the top-left corner to avoid random hover issues
|
|
18
|
+
await page.mouse.move(0, 0);
|
|
19
|
+
|
|
20
|
+
|
|
17
21
|
const screenshot = await page.screenshot({ fullPage: true, animations: 'disabled' });
|
|
18
22
|
expect(screenshot).toMatchSnapshot();
|
|
19
23
|
});
|
package/src/doc.mdx
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
---
|
|
2
2
|
id: Introduction
|
|
3
|
-
title: Digigov Form
|
|
4
|
-
sidebar_label: Introduction to Digigov Form
|
|
5
3
|
---
|
|
6
4
|
|
|
5
|
+
# Digigov form
|
|
6
|
+
|
|
7
7
|
Digigov Form is an off-the-shelf solution for managing web forms using
|
|
8
8
|
Reactjs. It supports flexible and multi-step forms and easy-to-use validation.
|
|
9
9
|
This page will guide you through everything you need to create accessible and
|
|
10
10
|
dynamic forms that can handle all sorts of user inputs.
|
|
11
11
|
|
|
12
12
|
<img
|
|
13
|
-
src="/
|
|
13
|
+
src="/tmp/form.svg"
|
|
14
14
|
style={{ margin: '3rem 0', maxWidth: '450px', width: '60%' }}
|
|
15
15
|
/>
|
|
16
16
|
|
|
@@ -30,18 +30,33 @@ will be able to save via an JSON API.
|
|
|
30
30
|
The `@digigov/form` NPM package contains React components and validators. The
|
|
31
31
|
library uses basic, semantically correct HTML5 input fields.
|
|
32
32
|
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
33
|
+
### 📦 Installation
|
|
34
|
+
|
|
35
|
+
```sh
|
|
36
|
+
yarn add @digigov/form
|
|
37
|
+
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
Or using npm:
|
|
41
|
+
|
|
42
|
+
```sh
|
|
43
|
+
npm install i @digigov/form
|
|
37
44
|
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
`digigov/form` is a **form management solution** which adds dynamic control while simplifies handling user input, based on:
|
|
48
|
+
|
|
49
|
+
✅ [React Hook Form](https://www.react-hook-form.com/) which helps us manage the form state and
|
|
50
|
+
perform actions and mutations on it.
|
|
51
|
+
|
|
52
|
+
🛠️ [Yup](https://github.com/jquense/yup) and it is used to validate form data. It
|
|
42
53
|
interfaces with React Hook Form right out of the box, but also enables us to
|
|
43
54
|
define custom validation types such as AMKA, AFM etc.
|
|
44
55
|
|
|
56
|
+
🔄 [Multi-step](/components/@digigov/form/Questions) forms for complex workflows.
|
|
57
|
+
|
|
58
|
+
🔗 [digigov/form](/components/@digigov/form/FormBuilder) components for a consistent UI.
|
|
59
|
+
|
|
45
60
|
Some basic functionalites of `@digigov/form` will be presented in the following
|
|
46
61
|
sections and also we are going to guide you through some more advanced topics
|
|
47
62
|
such as internationalisation, custom data validation etc.
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import AutoComplete from '@digigov/form/inputs/AutoCompleteInput';
|
|
2
|
+
import doc from './doc.mdx?raw';
|
|
2
3
|
export default {
|
|
3
4
|
title: 'Digigov Form/inputs/AutoCompleteInput',
|
|
4
5
|
component: AutoComplete,
|
|
6
|
+
tags: ['autodocs'],
|
|
7
|
+
markdown: doc,
|
|
5
8
|
displayName: 'AutoCompleteInput',
|
|
6
9
|
};
|
|
7
10
|
export { Default } from '@digigov/form/inputs/AutoCompleteInput/__stories__/Default';
|
|
@@ -18,6 +18,10 @@ test('renders the All AutoCompleteInput variants', async ({ mount, page }) => {
|
|
|
18
18
|
)
|
|
19
19
|
await page.evaluate(() => document.fonts.ready);
|
|
20
20
|
|
|
21
|
+
// Move the mouse to the top-left corner to avoid random hover issues
|
|
22
|
+
await page.mouse.move(0, 0);
|
|
23
|
+
|
|
24
|
+
|
|
21
25
|
const screenshot = await page.screenshot({ fullPage: true, animations: 'disabled' });
|
|
22
26
|
expect(screenshot).toMatchSnapshot();
|
|
23
27
|
});
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import Checkboxes from '@digigov/form/inputs/Checkboxes';
|
|
2
|
+
import doc from './doc.mdx?raw';
|
|
2
3
|
export default {
|
|
3
4
|
title: 'Digigov Form/inputs/Checkboxes',
|
|
4
5
|
component: Checkboxes,
|
|
6
|
+
tags: ['autodocs'],
|
|
7
|
+
markdown: doc,
|
|
5
8
|
displayName: 'Checkboxes',
|
|
6
9
|
};
|
|
7
10
|
export { Default } from '@digigov/form/inputs/Checkboxes/__stories__/Default';
|
|
@@ -2,7 +2,7 @@ import React from 'react';
|
|
|
2
2
|
import FormBuilder, { Field } from '@digigov/form';
|
|
3
3
|
import { Button } from '@digigov/ui/form/Button';
|
|
4
4
|
|
|
5
|
-
export const WithDivider = () => (
|
|
5
|
+
export const WithDivider = (_: any) => (
|
|
6
6
|
<FormBuilder
|
|
7
7
|
onSubmit={(data) => {
|
|
8
8
|
console.log(data);
|
|
@@ -22,6 +22,10 @@ test('renders the All Checkboxes variants', async ({ mount, page }) => {
|
|
|
22
22
|
)
|
|
23
23
|
await page.evaluate(() => document.fonts.ready);
|
|
24
24
|
|
|
25
|
+
// Move the mouse to the top-left corner to avoid random hover issues
|
|
26
|
+
await page.mouse.move(0, 0);
|
|
27
|
+
|
|
28
|
+
|
|
25
29
|
const screenshot = await page.screenshot({ fullPage: true, animations: 'disabled' });
|
|
26
30
|
expect(screenshot).toMatchSnapshot();
|
|
27
31
|
});
|
|
@@ -85,9 +85,9 @@ export const Checkboxes: React.FC<CheckboxesProps> = ({
|
|
|
85
85
|
...props,
|
|
86
86
|
reset: undefined,
|
|
87
87
|
defaultValue: undefined,
|
|
88
|
+
error: undefined,
|
|
88
89
|
onBlur: undefined,
|
|
89
90
|
required: undefined,
|
|
90
|
-
Field: undefined,
|
|
91
91
|
'aria-describedby': undefined,
|
|
92
92
|
type: 'checkbox',
|
|
93
93
|
}}
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import DateInput from '@digigov/form/inputs/DateInput';
|
|
2
|
+
import doc from './doc.mdx?raw';
|
|
2
3
|
export default {
|
|
3
4
|
title: 'Digigov Form/inputs/DateInput',
|
|
4
5
|
component: DateInput,
|
|
6
|
+
tags: ['autodocs'],
|
|
7
|
+
markdown: doc,
|
|
5
8
|
displayName: 'DateInput',
|
|
6
9
|
};
|
|
7
10
|
export { Default } from '@digigov/form/inputs/DateInput/__stories__/Default';
|
|
@@ -14,7 +14,7 @@ const fields = [
|
|
|
14
14
|
} as const,
|
|
15
15
|
];
|
|
16
16
|
|
|
17
|
-
export const Default = () => (
|
|
17
|
+
export const Default = (_: any) => (
|
|
18
18
|
<FormBuilder onSubmit={() => console.log('kati')}>
|
|
19
19
|
{fields.map(({ key, ...field }) => {
|
|
20
20
|
return <Field {...field} name={key} key={key} />;
|
|
@@ -14,6 +14,10 @@ test('renders the All DateInput variants', async ({ mount, page }) => {
|
|
|
14
14
|
)
|
|
15
15
|
await page.evaluate(() => document.fonts.ready);
|
|
16
16
|
|
|
17
|
+
// Move the mouse to the top-left corner to avoid random hover issues
|
|
18
|
+
await page.mouse.move(0, 0);
|
|
19
|
+
|
|
20
|
+
|
|
17
21
|
const screenshot = await page.screenshot({ fullPage: true, animations: 'disabled' });
|
|
18
22
|
expect(screenshot).toMatchSnapshot();
|
|
19
23
|
});
|
|
@@ -2,6 +2,7 @@ import React, { useMemo, useState } from 'react';
|
|
|
2
2
|
import dayjs from 'dayjs';
|
|
3
3
|
import customParseFormat from 'dayjs/plugin/customParseFormat';
|
|
4
4
|
import { UncontrolledFieldProps } from '@digigov/form/Field/types';
|
|
5
|
+
import { useFormContext } from '@digigov/form/FormContext';
|
|
5
6
|
import {
|
|
6
7
|
DateInputContainer,
|
|
7
8
|
DateInputItem,
|
|
@@ -16,22 +17,26 @@ export interface DateInputProps extends Omit<UncontrolledFieldProps, 'extra'> {
|
|
|
16
17
|
};
|
|
17
18
|
}
|
|
18
19
|
|
|
19
|
-
function useDate(value,
|
|
20
|
+
function useDate(name, value, form) {
|
|
20
21
|
const [year, month, day] = useMemo(() => {
|
|
21
22
|
if (!value || value.length === 0) {
|
|
22
|
-
|
|
23
|
+
update('');
|
|
23
24
|
return ['', '', ''];
|
|
24
25
|
}
|
|
25
26
|
const [day, month, year] = value.split('/');
|
|
26
27
|
return [year, month, day];
|
|
27
28
|
}, [value]);
|
|
28
29
|
|
|
30
|
+
function update(value) {
|
|
31
|
+
form.setValue(name, value, { shouldValidate: false });
|
|
32
|
+
}
|
|
33
|
+
|
|
29
34
|
function set(year, month, day) {
|
|
30
35
|
const value = `${day || ''}/${month || ''}/${year || ''}`;
|
|
31
36
|
if (!year && !month && !day) {
|
|
32
|
-
|
|
37
|
+
update('');
|
|
33
38
|
} else {
|
|
34
|
-
|
|
39
|
+
update(value);
|
|
35
40
|
}
|
|
36
41
|
}
|
|
37
42
|
|
|
@@ -56,6 +61,12 @@ function useDate(value, onChange) {
|
|
|
56
61
|
set(year, month, val);
|
|
57
62
|
}
|
|
58
63
|
|
|
64
|
+
function trigger() {
|
|
65
|
+
if (form.formState.isSubmitted) {
|
|
66
|
+
form.trigger(name);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
|
|
59
70
|
return {
|
|
60
71
|
day,
|
|
61
72
|
month,
|
|
@@ -63,6 +74,7 @@ function useDate(value, onChange) {
|
|
|
63
74
|
setYear,
|
|
64
75
|
setMonth,
|
|
65
76
|
setDay,
|
|
77
|
+
trigger,
|
|
66
78
|
};
|
|
67
79
|
}
|
|
68
80
|
|
|
@@ -90,14 +102,15 @@ export const DateInput = ({ name, ...props }) => {
|
|
|
90
102
|
return props.value;
|
|
91
103
|
}, [props.value, initial]);
|
|
92
104
|
|
|
93
|
-
const
|
|
105
|
+
const form = useFormContext();
|
|
106
|
+
const date = useDate(name, value || makeDate(props.defaultValue), form);
|
|
94
107
|
|
|
95
108
|
return (
|
|
96
109
|
<DateInputContainer>
|
|
97
110
|
<DatePart
|
|
98
111
|
label={t('form.label.day')}
|
|
99
112
|
onChange={date.setDay}
|
|
100
|
-
onBlur={
|
|
113
|
+
onBlur={date.trigger}
|
|
101
114
|
value={date.day}
|
|
102
115
|
width={2}
|
|
103
116
|
name={`${name}-day`}
|
|
@@ -110,7 +123,7 @@ export const DateInput = ({ name, ...props }) => {
|
|
|
110
123
|
<DatePart
|
|
111
124
|
label={t('form.label.month')}
|
|
112
125
|
onChange={date.setMonth}
|
|
113
|
-
onBlur={
|
|
126
|
+
onBlur={date.trigger}
|
|
114
127
|
value={date.month}
|
|
115
128
|
width={2}
|
|
116
129
|
name={`${name}-month`}
|
|
@@ -123,6 +136,7 @@ export const DateInput = ({ name, ...props }) => {
|
|
|
123
136
|
<DatePart
|
|
124
137
|
label={t('form.label.year')}
|
|
125
138
|
onChange={date.setYear}
|
|
139
|
+
onBlur={date.trigger}
|
|
126
140
|
value={date.year}
|
|
127
141
|
width={4}
|
|
128
142
|
name={`${name}-year`}
|
|
@@ -14,7 +14,7 @@ const fields = [
|
|
|
14
14
|
} as const,
|
|
15
15
|
];
|
|
16
16
|
|
|
17
|
-
export const Default = () => (
|
|
17
|
+
export const Default = (_: any) => (
|
|
18
18
|
<FormBuilder onSubmit={() => console.log('kati')}>
|
|
19
19
|
{fields.map(({ key, ...field }) => {
|
|
20
20
|
return <Field {...field} name={key} key={key} />;
|
|
@@ -14,6 +14,10 @@ test('renders the All DateTimeInput variants', async ({ mount, page }) => {
|
|
|
14
14
|
)
|
|
15
15
|
await page.evaluate(() => document.fonts.ready);
|
|
16
16
|
|
|
17
|
+
// Move the mouse to the top-left corner to avoid random hover issues
|
|
18
|
+
await page.mouse.move(0, 0);
|
|
19
|
+
|
|
20
|
+
|
|
17
21
|
const screenshot = await page.screenshot({ fullPage: true, animations: 'disabled' });
|
|
18
22
|
expect(screenshot).toMatchSnapshot();
|
|
19
23
|
});
|
|
@@ -2,6 +2,7 @@ import React, { useMemo, useState } from 'react';
|
|
|
2
2
|
import dayjs from 'dayjs';
|
|
3
3
|
import customParseFormat from 'dayjs/plugin/customParseFormat';
|
|
4
4
|
import { UncontrolledFieldProps } from '@digigov/form/Field/types';
|
|
5
|
+
import { useFormContext } from '@digigov/form/FormContext';
|
|
5
6
|
import {
|
|
6
7
|
DateInputContainer,
|
|
7
8
|
DateInputItem,
|
|
@@ -17,10 +18,10 @@ export interface DateTimeInputProps
|
|
|
17
18
|
};
|
|
18
19
|
}
|
|
19
20
|
|
|
20
|
-
function useDateTime(value,
|
|
21
|
+
function useDateTime(name, value, form) {
|
|
21
22
|
const [year, month, day, hours, minutes] = useMemo(() => {
|
|
22
23
|
if (!value || value.length === 0) {
|
|
23
|
-
|
|
24
|
+
update('');
|
|
24
25
|
return ['', '', '', '', ''];
|
|
25
26
|
}
|
|
26
27
|
const [datePart, timePart] = value.split(' ');
|
|
@@ -29,15 +30,19 @@ function useDateTime(value, onChange) {
|
|
|
29
30
|
return [year, month, day, hours, minutes];
|
|
30
31
|
}, [value]);
|
|
31
32
|
|
|
33
|
+
function update(value) {
|
|
34
|
+
form.setValue(name, value, { shouldValidate: false });
|
|
35
|
+
}
|
|
36
|
+
|
|
32
37
|
function set(year, month, day, hours, minutes) {
|
|
33
38
|
const datePart = `${day || ''}/${month || ''}/${year || ''}`;
|
|
34
39
|
const timePart = hours || minutes ? `${hours || ''}:${minutes || ''}` : '';
|
|
35
40
|
const value = timePart ? `${datePart} ${timePart}` : datePart;
|
|
36
41
|
|
|
37
42
|
if (!year && !month && !day && !hours && !minutes) {
|
|
38
|
-
|
|
43
|
+
update('');
|
|
39
44
|
} else {
|
|
40
|
-
|
|
45
|
+
update(value);
|
|
41
46
|
}
|
|
42
47
|
}
|
|
43
48
|
|
|
@@ -78,6 +83,12 @@ function useDateTime(value, onChange) {
|
|
|
78
83
|
set(year, month, day, hours, val);
|
|
79
84
|
}
|
|
80
85
|
|
|
86
|
+
function trigger() {
|
|
87
|
+
if (form.formState.isSubmitted) {
|
|
88
|
+
form.trigger(name);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
|
|
81
92
|
return {
|
|
82
93
|
day,
|
|
83
94
|
month,
|
|
@@ -89,6 +100,7 @@ function useDateTime(value, onChange) {
|
|
|
89
100
|
setDay,
|
|
90
101
|
setHours,
|
|
91
102
|
setMinutes,
|
|
103
|
+
trigger,
|
|
92
104
|
};
|
|
93
105
|
}
|
|
94
106
|
|
|
@@ -116,9 +128,11 @@ export const DateTimeInput = ({ name, ...props }) => {
|
|
|
116
128
|
return props.value;
|
|
117
129
|
}, [props.value, initial]);
|
|
118
130
|
|
|
131
|
+
const form = useFormContext();
|
|
119
132
|
const datetime = useDateTime(
|
|
133
|
+
name,
|
|
120
134
|
value || makeDateTime(props.defaultValue),
|
|
121
|
-
|
|
135
|
+
form
|
|
122
136
|
);
|
|
123
137
|
|
|
124
138
|
return (
|
|
@@ -126,7 +140,7 @@ export const DateTimeInput = ({ name, ...props }) => {
|
|
|
126
140
|
<DateTimePart
|
|
127
141
|
label={t('form.label.day')}
|
|
128
142
|
onChange={datetime.setDay}
|
|
129
|
-
onBlur={
|
|
143
|
+
onBlur={datetime.trigger}
|
|
130
144
|
value={datetime.day}
|
|
131
145
|
width={2}
|
|
132
146
|
name={`${name}-day`}
|
|
@@ -139,7 +153,7 @@ export const DateTimeInput = ({ name, ...props }) => {
|
|
|
139
153
|
<DateTimePart
|
|
140
154
|
label={t('form.label.month')}
|
|
141
155
|
onChange={datetime.setMonth}
|
|
142
|
-
onBlur={
|
|
156
|
+
onBlur={datetime.trigger}
|
|
143
157
|
value={datetime.month}
|
|
144
158
|
width={2}
|
|
145
159
|
name={`${name}-month`}
|
|
@@ -152,6 +166,7 @@ export const DateTimeInput = ({ name, ...props }) => {
|
|
|
152
166
|
<DateTimePart
|
|
153
167
|
label={t('form.label.year')}
|
|
154
168
|
onChange={datetime.setYear}
|
|
169
|
+
onBlur={datetime.trigger}
|
|
155
170
|
value={datetime.year}
|
|
156
171
|
width={4}
|
|
157
172
|
name={`${name}-year`}
|
|
@@ -164,7 +179,7 @@ export const DateTimeInput = ({ name, ...props }) => {
|
|
|
164
179
|
<DateTimePart
|
|
165
180
|
label={t('form.label.hours')}
|
|
166
181
|
onChange={datetime.setHours}
|
|
167
|
-
onBlur={
|
|
182
|
+
onBlur={datetime.trigger}
|
|
168
183
|
value={datetime.hours}
|
|
169
184
|
width={2}
|
|
170
185
|
name={`${name}-hours`}
|
|
@@ -177,7 +192,7 @@ export const DateTimeInput = ({ name, ...props }) => {
|
|
|
177
192
|
<DateTimePart
|
|
178
193
|
label={t('form.label.minutes')}
|
|
179
194
|
onChange={datetime.setMinutes}
|
|
180
|
-
onBlur={
|
|
195
|
+
onBlur={datetime.trigger}
|
|
181
196
|
value={datetime.minutes}
|
|
182
197
|
width={2}
|
|
183
198
|
name={`${name}-minutes`}
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
import FileInput from '@digigov/form/inputs/FileInput';
|
|
2
|
+
import doc from './doc.mdx?raw';
|
|
2
3
|
export default {
|
|
3
4
|
title: 'Digigov Form/inputs/FileInput',
|
|
4
5
|
component: FileInput,
|
|
6
|
+
tags: ['autodocs'],
|
|
7
|
+
markdown: doc,
|
|
5
8
|
displayName: 'FileInput',
|
|
6
9
|
};
|
|
7
10
|
export { Default } from '@digigov/form/inputs/FileInput/__stories__/Default';
|
|
11
|
+
export { WithBorderAndLink } from '@digigov/form/inputs/FileInput/__stories__/WithBorderAndLink';
|