@digigov/form 2.0.0-85c27c19 → 2.0.0-8bbad051
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/ErrorGroup/index.js +48 -0
- package/{Form.stories → Field/ErrorGroup}/package.json +1 -1
- package/Field/ErrorGroup.d.ts +15 -0
- package/Field/ErrorGroup.js.map +7 -0
- package/Field/FieldBase/index.js +40 -26
- package/Field/FieldBase.d.ts +1 -1
- package/Field/FieldBase.js.map +2 -2
- package/Field/FieldBaseContainer/index.js +39 -19
- package/Field/FieldBaseContainer.d.ts +2 -2
- package/Field/FieldBaseContainer.js.map +2 -2
- package/Field/FieldConditional/index.js +11 -3
- package/Field/FieldConditional.d.ts +1 -1
- package/Field/FieldConditional.js.map +2 -2
- package/Field/index.d.ts +1 -1
- package/Field/index.js +34 -30
- package/Field/index.js.map +2 -2
- package/Field/types.d.ts +33 -18
- package/Field/utils/evaluateFieldWithConditions.d.ts +2 -2
- package/Field/utils/evaluateFieldWithConditions.js.map +2 -2
- package/Field/utils/resolveField/index.js +35 -0
- package/{Questions/Questions.stories → Field/utils/resolveField}/package.json +1 -1
- package/Field/utils/resolveField.d.ts +3 -0
- package/Field/utils/resolveField.js.map +7 -0
- package/Field/utils/useField/index.js +17 -2
- package/Field/utils/useField.d.ts +1 -1
- package/Field/utils/useField.js.map +2 -2
- package/FieldArray/BaseFieldArray/index.js +76 -0
- package/FieldArray/BaseFieldArray/package.json +6 -0
- package/FieldArray/BaseFieldArray.d.ts +5 -0
- package/FieldArray/BaseFieldArray.js.map +7 -0
- package/FieldArray/FieldArray.stories.d.ts +2 -0
- package/FieldArray/FormDialog/ArrayDisplay/ArrayContainerDisplay/index.js +23 -0
- package/FieldArray/FormDialog/ArrayDisplay/ArrayContainerDisplay/package.json +6 -0
- package/FieldArray/FormDialog/ArrayDisplay/ArrayContainerDisplay.d.ts +9 -0
- package/FieldArray/FormDialog/ArrayDisplay/ArrayContainerDisplay.js.map +7 -0
- package/FieldArray/FormDialog/ArrayDisplay/ArrayDisplay.stories.d.ts +13 -0
- package/FieldArray/FormDialog/ArrayDisplay/ArrayItemDisplay/index.js +184 -0
- package/FieldArray/FormDialog/ArrayDisplay/ArrayItemDisplay/package.json +6 -0
- package/FieldArray/FormDialog/ArrayDisplay/ArrayItemDisplay.d.ts +26 -0
- package/FieldArray/FormDialog/ArrayDisplay/ArrayItemDisplay.js.map +7 -0
- package/FieldArray/FormDialog/ArrayDisplay/ArrayItemHeader/index.js +11 -0
- package/FieldArray/FormDialog/ArrayDisplay/ArrayItemHeader/package.json +6 -0
- package/FieldArray/FormDialog/ArrayDisplay/ArrayItemHeader.d.ts +5 -0
- package/FieldArray/FormDialog/ArrayDisplay/ArrayItemHeader.js.map +7 -0
- package/FieldArray/FormDialog/ArrayDisplay/__stories__/Cards.d.ts +2 -0
- package/FieldArray/FormDialog/ArrayDisplay/__stories__/Default.d.ts +2 -0
- package/FieldArray/FormDialog/ArrayDisplay/__stories__/ReadOnly.d.ts +2 -0
- package/FieldArray/FormDialog/ArrayDisplay/__stories__/ReadOnlyCards.d.ts +2 -0
- package/FieldArray/FormDialog/ArrayDisplay/__stories__/Sortable.d.ts +2 -0
- package/FieldArray/FormDialog/ArrayDisplay/__stories__/SortableCards.d.ts +2 -0
- package/FieldArray/FormDialog/ArrayDisplay/index.d.ts +15 -0
- package/FieldArray/FormDialog/ArrayDisplay/index.js +57 -0
- package/FieldArray/FormDialog/ArrayDisplay/index.js.map +7 -0
- package/{inputs/DateInput/DateInput.stories → FieldArray/FormDialog/ArrayDisplay}/package.json +1 -1
- package/FieldArray/FormDialog/ArrayEditModal/index.js +158 -0
- package/{inputs/Checkboxes/Checkboxes.stories → FieldArray/FormDialog/ArrayEditModal}/package.json +1 -1
- package/FieldArray/FormDialog/ArrayEditModal.d.ts +24 -0
- package/FieldArray/FormDialog/ArrayEditModal.js.map +7 -0
- package/FieldArray/FormDialog/index.d.ts +19 -0
- package/FieldArray/FormDialog/index.js +234 -0
- package/FieldArray/FormDialog/index.js.map +7 -0
- package/{inputs/inputsScenarios → FieldArray/FormDialog}/package.json +1 -1
- package/FieldArray/__stories__/CardsWithError.d.ts +15 -0
- package/FieldArray/__stories__/Default.d.ts +1 -1
- package/FieldArray/__stories__/WithExactLength.d.ts +1 -1
- package/FieldArray/__stories__/WithModal.d.ts +2 -0
- package/FieldArray/index.d.ts +11 -2
- package/FieldArray/index.js +63 -44
- package/FieldArray/index.js.map +2 -2
- package/FieldObject/index.d.ts +10 -3
- package/FieldObject/index.js +40 -28
- package/FieldObject/index.js.map +2 -2
- package/Fieldset/FieldsetWithContext.js.map +1 -1
- package/Fieldset/index.d.ts +2 -2
- package/Fieldset/index.js +5 -5
- package/Fieldset/index.js.map +2 -2
- package/Fieldset/types.d.ts +2 -3
- package/FormBuilder/FormBuilder.stories.d.ts +4 -0
- package/FormBuilder/__stories__/AutoErrorGrouping.d.ts +3 -0
- package/FormBuilder/__stories__/Default.d.ts +1 -1
- package/FormBuilder/__stories__/ErrorGrouping.d.ts +3 -0
- package/FormBuilder/index.d.ts +8 -2
- package/FormBuilder/index.js +259 -6
- package/FormBuilder/index.js.map +3 -3
- package/FormContext/index.js +6 -2
- package/FormContext.d.ts +3 -2
- 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 +23 -26
- package/MultiplicityField/add-objects.d.ts +1 -1
- package/MultiplicityField/add-objects.js.map +2 -2
- package/MultiplicityField/index.d.ts +2 -2
- package/MultiplicityField/index.js +21 -13
- package/MultiplicityField/index.js.map +2 -2
- package/MultiplicityField/types.d.ts +3 -3
- package/Questions/Questions/index.js +5 -4
- package/Questions/Questions.d.ts +1 -1
- package/Questions/Questions.js.map +2 -2
- package/Questions/Questions.stories.d.ts +2 -0
- package/Questions/QuestionsContext.d.ts +1 -2
- package/Questions/QuestionsContext.js.map +1 -1
- package/Questions/Step/Step.d.ts +1 -1
- package/Questions/Step/Step.js.map +1 -1
- package/Questions/Step/StepArrayReview.d.ts +1 -1
- package/Questions/Step/StepArrayReview.js.map +2 -2
- package/Questions/Step/StepContext.d.ts +1 -2
- package/Questions/Step/StepContext.js.map +1 -1
- package/Questions/Step/StepDescription.d.ts +1 -1
- package/Questions/Step/StepDescription.js.map +2 -2
- package/Questions/Step/StepForm.d.ts +2 -2
- package/Questions/Step/StepForm.js.map +1 -1
- package/Questions/Step/StepQuote.d.ts +1 -1
- package/Questions/Step/StepQuote.js.map +2 -2
- package/Questions/Step/StepTitle/index.js +4 -3
- package/Questions/Step/StepTitle.d.ts +1 -1
- package/Questions/Step/StepTitle.js.map +2 -2
- package/Questions/Step/getAddMoreFields.d.ts +2 -2
- package/Questions/Step/getAddMoreFields.js.map +1 -1
- package/Questions/Step/types.d.ts +1 -2
- package/Questions/__stories__/Default.d.ts +1 -1
- package/Questions/getNextStep.d.ts +1 -1
- package/Questions/getNextStep.js.map +1 -1
- package/Questions/types.d.ts +1 -2
- package/cjs/Field/ErrorGroup/index.js +82 -0
- package/cjs/Field/ErrorGroup.js.map +7 -0
- package/cjs/Field/FieldBase/index.js +39 -25
- package/cjs/Field/FieldBase.js.map +2 -2
- package/cjs/Field/FieldBaseContainer/index.js +38 -18
- package/cjs/Field/FieldBaseContainer.js.map +3 -3
- package/cjs/Field/FieldConditional/index.js +11 -3
- package/cjs/Field/FieldConditional.js.map +2 -2
- package/cjs/Field/index.js +34 -27
- package/cjs/Field/index.js.map +2 -2
- package/cjs/Field/types.js.map +1 -1
- package/cjs/Field/utils/evaluateFieldWithConditions.js.map +2 -2
- package/cjs/Field/utils/resolveField/index.js +55 -0
- package/cjs/Field/utils/resolveField.js.map +7 -0
- package/cjs/Field/utils/useField/index.js +17 -2
- package/cjs/Field/utils/useField.js.map +2 -2
- package/cjs/FieldArray/BaseFieldArray/index.js +109 -0
- package/cjs/FieldArray/BaseFieldArray.js.map +7 -0
- package/cjs/{FormBuilder/__stories__/Default → FieldArray/FormDialog/ArrayDisplay/ArrayContainerDisplay}/index.js +22 -31
- package/cjs/FieldArray/FormDialog/ArrayDisplay/ArrayContainerDisplay.js.map +7 -0
- package/cjs/FieldArray/FormDialog/ArrayDisplay/ArrayItemDisplay/index.js +209 -0
- package/cjs/FieldArray/FormDialog/ArrayDisplay/ArrayItemDisplay.js.map +7 -0
- package/cjs/{FormBuilder/FormBuilder.stories → FieldArray/FormDialog/ArrayDisplay/ArrayItemHeader}/index.js +12 -13
- package/cjs/FieldArray/FormDialog/ArrayDisplay/ArrayItemHeader.js.map +7 -0
- package/cjs/FieldArray/FormDialog/ArrayDisplay/index.js +90 -0
- package/cjs/FieldArray/FormDialog/ArrayDisplay/index.js.map +7 -0
- package/cjs/FieldArray/FormDialog/ArrayEditModal/index.js +186 -0
- package/cjs/FieldArray/FormDialog/ArrayEditModal.js.map +7 -0
- package/cjs/FieldArray/FormDialog/index.js +261 -0
- package/cjs/FieldArray/FormDialog/index.js.map +7 -0
- package/cjs/FieldArray/index.js +62 -43
- package/cjs/FieldArray/index.js.map +3 -3
- package/cjs/FieldObject/index.js +40 -25
- package/cjs/FieldObject/index.js.map +3 -3
- package/cjs/Fieldset/FieldsetWithContext.js.map +1 -1
- package/cjs/Fieldset/index.js +10 -10
- package/cjs/Fieldset/index.js.map +3 -3
- package/cjs/Fieldset/types.js.map +1 -1
- package/cjs/FormBuilder/index.js +274 -5
- package/cjs/FormBuilder/index.js.map +3 -3
- package/cjs/FormContext/index.js +9 -4
- package/cjs/FormContext.js.map +3 -3
- package/cjs/MultiplicityField/add-objects/index.js +26 -24
- package/cjs/MultiplicityField/add-objects.js.map +3 -3
- package/cjs/MultiplicityField/index.js +20 -17
- package/cjs/MultiplicityField/index.js.map +3 -3
- package/cjs/MultiplicityField/types.js.map +1 -1
- package/cjs/Questions/Questions/index.js +5 -4
- package/cjs/Questions/Questions.js.map +2 -2
- package/cjs/Questions/QuestionsContext.js.map +1 -1
- package/cjs/Questions/Step/Step.js.map +1 -1
- package/cjs/Questions/Step/StepArrayReview.js.map +2 -2
- package/cjs/Questions/Step/StepContext.js.map +1 -1
- package/cjs/Questions/Step/StepDescription.js.map +2 -2
- package/cjs/Questions/Step/StepForm.js.map +1 -1
- package/cjs/Questions/Step/StepQuote.js.map +2 -2
- package/cjs/Questions/Step/StepTitle/index.js +5 -5
- package/cjs/Questions/Step/StepTitle.js.map +3 -3
- package/cjs/Questions/Step/getAddMoreFields.js.map +1 -1
- package/cjs/Questions/Step/types.js.map +1 -1
- package/cjs/Questions/getNextStep.js.map +1 -1
- package/cjs/Questions/types.js.map +1 -1
- package/cjs/hooks/useFieldFocusManager/index.js +135 -0
- package/cjs/hooks/useFieldFocusManager.js.map +7 -0
- package/cjs/hooks/utils/index.js +98 -0
- package/cjs/hooks/utils.js.map +7 -0
- package/cjs/index.js +11 -155
- package/cjs/index.js.map +4 -4
- package/cjs/inputs/AutoCompleteInput/index.js +12 -9
- package/cjs/inputs/AutoCompleteInput/index.js.map +3 -3
- package/cjs/inputs/Checkboxes/index.js +70 -65
- package/cjs/inputs/Checkboxes/index.js.map +3 -3
- package/cjs/inputs/DateInput/index.js +59 -25
- package/cjs/inputs/DateInput/index.js.map +3 -3
- package/cjs/inputs/DateTimeInput/index.js +250 -0
- package/cjs/inputs/DateTimeInput/index.js.map +7 -0
- package/cjs/inputs/FileInput/index.js +64 -35
- package/cjs/inputs/FileInput/index.js.map +3 -3
- 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 +56 -19
- package/cjs/inputs/ImageInput/index.js.map +3 -3
- package/cjs/inputs/Input/index.js +30 -8
- package/cjs/inputs/Input/index.js.map +3 -3
- package/cjs/inputs/Label/index.js +3 -3
- package/cjs/inputs/Label/index.js.map +3 -3
- package/cjs/inputs/OtpInput/index.js +36 -30
- package/cjs/inputs/OtpInput/index.js.map +2 -2
- package/cjs/inputs/Radio/index.js +60 -11
- package/cjs/inputs/Radio/index.js.map +3 -3
- package/cjs/inputs/Select/index.js +11 -5
- package/cjs/inputs/Select/index.js.map +3 -3
- package/cjs/{Field/utils → inputs/registry}/index.js +31 -5
- package/cjs/inputs/registry.js.map +7 -0
- package/cjs/lazy/index.js +54 -35
- package/cjs/lazy.js.map +3 -3
- package/cjs/registry/index.js +85 -61
- package/cjs/registry.js.map +3 -3
- package/cjs/types.js.map +1 -1
- package/cjs/utils/index.js +31 -7
- package/cjs/utils.js.map +2 -2
- package/cjs/validators/index.js +59 -86
- package/cjs/validators/index.js.map +3 -3
- package/cjs/validators/types.js.map +1 -1
- package/cjs/validators/utils/amka/index.js +60 -0
- package/cjs/validators/utils/amka.js.map +7 -0
- package/cjs/validators/utils/date/index.js +161 -0
- package/cjs/validators/utils/date.js.map +7 -0
- package/cjs/validators/utils/datetime/index.js +245 -0
- package/cjs/validators/utils/datetime.js.map +7 -0
- package/cjs/{Form.stories → validators/utils/email}/index.js +20 -7
- package/cjs/validators/utils/email.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/iban.js.map +1 -1
- package/cjs/validators/utils/image.js.map +1 -1
- package/cjs/validators/utils/index.js +10 -2
- package/cjs/validators/utils/index.js.map +2 -2
- package/cjs/validators/utils/int/index.js +1 -1
- package/cjs/validators/utils/int.js.map +2 -2
- package/cjs/validators/utils/number/index.js +1 -1
- package/cjs/validators/utils/number.js.map +2 -2
- package/cjs/validators/utils/otp.js.map +1 -1
- package/cjs/validators/utils/phone.js.map +2 -2
- package/cjs/validators/utils/postal_code.js.map +1 -1
- package/cjs/validators/utils/text_limit.js.map +1 -1
- package/cjs/validators/utils/uuid4.js.map +2 -2
- package/hooks/useFieldFocusManager/index.js +116 -0
- package/hooks/useFieldFocusManager/package.json +6 -0
- package/hooks/useFieldFocusManager.d.ts +25 -0
- package/hooks/useFieldFocusManager.js.map +7 -0
- package/hooks/utils/index.js +73 -0
- package/{Field → hooks}/utils/package.json +1 -1
- package/hooks/utils.d.ts +18 -0
- package/hooks/utils.js.map +7 -0
- package/index.d.ts +5 -8
- package/index.js +9 -152
- package/index.js.map +4 -4
- 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/AutoCompleteInput/index.d.ts +4 -4
- package/inputs/AutoCompleteInput/index.js +12 -9
- package/inputs/AutoCompleteInput/index.js.map +2 -2
- 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.d.ts +6 -4
- package/inputs/Checkboxes/index.js +74 -65
- package/inputs/Checkboxes/index.js.map +2 -2
- package/inputs/DateInput/DateInput.stories.d.ts +6 -0
- package/inputs/DateInput/__stories__/Default.d.ts +1 -1
- package/inputs/DateInput/__stories__/WithDefaultValue.d.ts +3 -0
- package/inputs/DateInput/__stories__/WithInitialValue.d.ts +3 -0
- package/inputs/DateInput/__stories__/WithWrongDefaultValue.d.ts +3 -0
- package/inputs/DateInput/__stories__/WithWrongInitialValue.d.ts +3 -0
- package/inputs/DateInput/index.d.ts +2 -6
- package/inputs/DateInput/index.js +62 -25
- package/inputs/DateInput/index.js.map +2 -2
- package/inputs/DateTimeInput/DateTimeInput.stories.d.ts +14 -0
- package/inputs/DateTimeInput/__stories__/Default.d.ts +3 -0
- package/inputs/DateTimeInput/__stories__/WithDefaultValue.d.ts +3 -0
- package/inputs/DateTimeInput/__stories__/WithInitialValue.d.ts +3 -0
- package/inputs/DateTimeInput/__stories__/WithWrongDefaultValue.d.ts +3 -0
- package/inputs/DateTimeInput/__stories__/WithWrongInitialValue.d.ts +3 -0
- package/inputs/DateTimeInput/index.d.ts +10 -0
- package/inputs/DateTimeInput/index.js +220 -0
- package/inputs/DateTimeInput/index.js.map +7 -0
- package/inputs/DateTimeInput/package.json +6 -0
- 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 +18 -2
- package/inputs/FileInput/index.js +65 -36
- 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 +3 -0
- 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/{DateInput/__stories__/Default → ImageInput/__stories__/logo.d}/package.json +1 -1
- package/inputs/ImageInput/__stories__/logo.d.js.map +7 -0
- package/inputs/ImageInput/index.d.ts +10 -2
- package/inputs/ImageInput/index.js +56 -19
- package/inputs/ImageInput/index.js.map +2 -2
- package/inputs/Input/Input.stories.d.ts +5 -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 +3 -0
- package/inputs/Input/__stories__/TextWithLimit.d.ts +1 -1
- package/inputs/Input/index.d.ts +5 -2
- package/inputs/Input/index.js +28 -6
- package/inputs/Input/index.js.map +3 -3
- package/inputs/Label/Label.stories.d.ts +2 -0
- package/inputs/Label/__stories__/Default.d.ts +1 -1
- package/inputs/Label/index.d.ts +1 -3
- package/inputs/Label/index.js +2 -2
- package/inputs/Label/index.js.map +2 -2
- package/inputs/OtpInput/OtpInput.stories.d.ts +2 -0
- package/inputs/OtpInput/__stories__/Default.d.ts +1 -1
- package/inputs/OtpInput/index.d.ts +1 -5
- package/inputs/OtpInput/index.js +36 -30
- package/inputs/OtpInput/index.js.map +2 -2
- 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/Radio/index.d.ts +9 -3
- package/inputs/Radio/index.js +61 -9
- package/inputs/Radio/index.js.map +3 -3
- package/inputs/Select/Select.stories.d.ts +2 -0
- package/inputs/Select/__stories__/Default.d.ts +1 -1
- package/inputs/Select/index.d.ts +7 -4
- package/inputs/Select/index.js +13 -4
- package/inputs/Select/index.js.map +2 -2
- package/{Field/utils → inputs/registry}/index.js +28 -3
- package/{locales/el → inputs/registry}/package.json +1 -1
- package/inputs/registry.d.ts +5 -0
- package/inputs/registry.js.map +7 -0
- package/lazy/index.js +80 -65
- package/package.json +8 -8
- package/registry/index.js +129 -106
- package/src/Field/ErrorGroup.tsx +84 -0
- package/src/Field/FieldBase.tsx +43 -26
- package/src/Field/FieldBaseContainer.tsx +71 -47
- package/src/Field/FieldConditional.tsx +9 -1
- package/src/Field/doc.mdx +207 -0
- package/src/Field/index.tsx +36 -38
- package/src/Field/types.tsx +36 -21
- package/src/Field/utils/evaluateFieldWithConditions.ts +5 -2
- package/src/Field/utils/resolveField.ts +58 -0
- package/src/Field/utils/useField.ts +17 -3
- package/src/FieldArray/BaseFieldArray.tsx +97 -0
- package/src/FieldArray/FieldArray.stories.js +2 -0
- package/src/FieldArray/FormDialog/ArrayDisplay/ArrayContainerDisplay.tsx +45 -0
- package/src/FieldArray/FormDialog/ArrayDisplay/ArrayDisplay.stories.js +14 -0
- package/src/FieldArray/FormDialog/ArrayDisplay/ArrayItemDisplay.tsx +337 -0
- package/src/FieldArray/FormDialog/ArrayDisplay/ArrayItemHeader.tsx +15 -0
- package/src/FieldArray/FormDialog/ArrayDisplay/__stories__/Cards.tsx +88 -0
- package/src/FieldArray/FormDialog/ArrayDisplay/__stories__/Default.tsx +93 -0
- package/src/FieldArray/FormDialog/ArrayDisplay/__stories__/ReadOnly.tsx +79 -0
- package/src/FieldArray/FormDialog/ArrayDisplay/__stories__/ReadOnlyCards.tsx +75 -0
- package/src/FieldArray/FormDialog/ArrayDisplay/__stories__/Sortable.tsx +93 -0
- package/src/FieldArray/FormDialog/ArrayDisplay/__stories__/SortableCards.tsx +88 -0
- package/src/FieldArray/FormDialog/ArrayDisplay/index.test.tsx +44 -0
- package/src/FieldArray/FormDialog/ArrayDisplay/index.tsx +67 -0
- package/src/FieldArray/FormDialog/ArrayEditModal.tsx +241 -0
- package/src/FieldArray/FormDialog/index.tsx +302 -0
- package/src/FieldArray/__stories__/CardsWithError.tsx +124 -0
- package/src/FieldArray/__stories__/Default.tsx +2 -1
- package/src/FieldArray/__stories__/WithExactLength.tsx +2 -1
- package/src/FieldArray/__stories__/WithModal.tsx +160 -0
- package/src/FieldArray/__tests__/fieldset-multiplicity.spec.tsx +271 -0
- package/src/FieldArray/__tests__/multiplicity-attachment.spec.tsx +280 -0
- package/src/FieldArray/__tests__/multiplicity-optional.spec.tsx +232 -0
- package/src/FieldArray/__tests__/multiplicity-required.spec.tsx +170 -0
- package/src/FieldArray/__tests__/nested-fieldset-multiplicity.spec.tsx +627 -0
- package/src/FieldArray/__tests__/preference-multiple-choice.spec.tsx +222 -0
- package/src/FieldArray/index.spec.tsx +355 -0
- package/src/FieldArray/index.test.tsx +12 -0
- package/src/FieldArray/index.tsx +84 -63
- package/src/FieldObject/index.tsx +50 -31
- package/src/Fieldset/FieldsetWithContext.tsx +1 -1
- package/src/Fieldset/index.tsx +6 -6
- package/src/Fieldset/types.tsx +2 -2
- package/src/FormBuilder/FormBuilder.stories.js +5 -0
- package/src/FormBuilder/__stories__/AutoErrorGrouping.tsx +63 -0
- package/src/FormBuilder/__stories__/Default.tsx +1 -1
- package/src/FormBuilder/__stories__/ErrorGrouping.tsx +43 -0
- package/src/FormBuilder/{FormBuilder.mdx → doc.mdx} +27 -35
- package/src/FormBuilder/index.test.tsx +12 -0
- package/src/FormBuilder/index.tsx +315 -7
- package/src/FormBuilder/interaction.test.tsx +40 -0
- package/src/FormBuilder/scenarios.test.tsx +1003 -130
- package/src/FormContext.tsx +7 -3
- package/src/MultiplicityField/MultiplicityField.stories.js +3 -0
- package/src/MultiplicityField/__stories__/Default.tsx +1 -1
- package/src/MultiplicityField/__stories__/PreviewDisplay.tsx +2 -4
- 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 +24 -29
- package/src/MultiplicityField/{MultiplicityField.mdx → doc.mdx} +112 -98
- package/src/MultiplicityField/index.test.tsx +4 -0
- package/src/MultiplicityField/index.tsx +22 -14
- package/src/MultiplicityField/types.ts +6 -3
- package/src/Questions/Questions.stories.js +3 -0
- package/src/Questions/Questions.tsx +6 -6
- package/src/Questions/QuestionsContext.tsx +1 -1
- package/src/Questions/Step/Step.tsx +1 -1
- package/src/Questions/Step/StepArrayReview.tsx +3 -3
- package/src/Questions/Step/StepContext.tsx +1 -1
- package/src/Questions/Step/StepDescription.tsx +2 -1
- package/src/Questions/Step/StepForm.tsx +2 -2
- package/src/Questions/Step/StepQuote.tsx +2 -1
- package/src/Questions/Step/StepTitle.tsx +5 -3
- package/src/Questions/Step/getAddMoreFields.tsx +2 -2
- package/src/Questions/Step/types.tsx +1 -1
- package/src/Questions/__snapshots__/index.spec.tsx.snap +11 -5
- package/src/Questions/__stories__/Default.tsx +1 -1
- package/src/Questions/{index.mdx → doc.mdx} +30 -53
- package/src/Questions/getNextStep.tsx +1 -1
- package/src/Questions/index.spec.tsx +14 -2
- package/src/Questions/index.test.tsx +4 -0
- package/src/Questions/types.tsx +1 -1
- package/src/create-simple-form.mdx +2 -6
- package/src/{index.mdx → doc.mdx} +29 -18
- package/src/hooks/__tests__/useFieldFocusManager.spec.tsx +1079 -0
- package/src/hooks/__tests__/utils.spec.ts +568 -0
- package/src/hooks/useFieldFocusManager.ts +162 -0
- package/src/hooks/utils.ts +122 -0
- package/src/index.ts +6 -0
- package/src/inputs/AutoCompleteInput/AutoComplete.stories.js +3 -0
- package/src/inputs/AutoCompleteInput/__stories__/Default.tsx +3 -11
- package/src/inputs/AutoCompleteInput/__stories__/Multiple.tsx +2 -9
- package/src/inputs/AutoCompleteInput/{index.mdx → doc.mdx} +2 -13
- package/src/inputs/AutoCompleteInput/index.test.tsx +4 -0
- package/src/inputs/AutoCompleteInput/index.tsx +39 -35
- 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.mdx → doc.mdx} +5 -15
- package/src/inputs/Checkboxes/index.test.tsx +4 -0
- package/src/inputs/Checkboxes/index.tsx +105 -94
- package/src/inputs/DateInput/DateInput.stories.js +7 -0
- package/src/inputs/DateInput/__stories__/Default.tsx +8 -13
- package/src/inputs/DateInput/__stories__/WithDefaultValue.tsx +26 -0
- package/src/inputs/DateInput/__stories__/WithInitialValue.tsx +28 -0
- package/src/inputs/DateInput/__stories__/WithWrongDefaultValue.tsx +26 -0
- package/src/inputs/DateInput/__stories__/WithWrongInitialValue.tsx +28 -0
- package/src/inputs/DateInput/{index.mdx → doc.mdx} +1 -8
- package/src/inputs/DateInput/index.test.tsx +20 -0
- package/src/inputs/DateInput/index.tsx +75 -25
- package/src/inputs/DateTimeInput/DateTimeInput.stories.js +14 -0
- package/src/inputs/DateTimeInput/__stories__/Default.tsx +25 -0
- package/src/inputs/DateTimeInput/__stories__/WithDefaultValue.tsx +26 -0
- package/src/inputs/DateTimeInput/__stories__/WithInitialValue.tsx +28 -0
- package/src/inputs/DateTimeInput/__stories__/WithWrongDefaultValue.tsx +26 -0
- package/src/inputs/DateTimeInput/__stories__/WithWrongInitialValue.tsx +28 -0
- package/src/inputs/DateTimeInput/doc.mdx +16 -0
- package/src/inputs/DateTimeInput/index.test.tsx +40 -0
- package/src/inputs/DateTimeInput/index.tsx +246 -0
- 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.mdx → doc.mdx} +1 -5
- package/src/inputs/FileInput/index.test.tsx +8 -0
- package/src/inputs/FileInput/index.tsx +102 -43
- package/src/inputs/ImageInput/ImageInput.stories.js +5 -1
- package/src/inputs/ImageInput/__stories__/Default.tsx +1 -1
- package/src/inputs/ImageInput/__stories__/{WithInvalidImageSize.tsx → MaxSize.tsx} +5 -3
- package/src/inputs/ImageInput/__stories__/WithInitialValues.tsx +45 -0
- package/src/inputs/ImageInput/__stories__/WithInvalidImageDimension.tsx +3 -1
- package/src/inputs/ImageInput/__stories__/logo.d.ts +4 -0
- package/src/inputs/ImageInput/__stories__/logo.png +0 -0
- package/src/inputs/ImageInput/doc.mdx +23 -0
- package/src/inputs/ImageInput/index.test.tsx +12 -4
- package/src/inputs/ImageInput/index.tsx +105 -52
- package/src/inputs/Input/Input.stories.js +6 -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 +3 -2
- package/src/inputs/Input/__stories__/MobilePhone.tsx +2 -1
- package/src/inputs/Input/__stories__/PhoneNumber.tsx +2 -1
- package/src/inputs/Input/__stories__/PostalCode.tsx +2 -1
- package/src/inputs/Input/__stories__/String.tsx +1 -1
- package/src/inputs/Input/__stories__/StringWithTrimValidation.tsx +26 -0
- package/src/inputs/Input/__stories__/TextWithLimit.tsx +2 -1
- package/src/inputs/Input/doc.mdx +56 -0
- package/src/inputs/Input/index.test.tsx +16 -0
- package/src/inputs/Input/index.tsx +52 -35
- package/src/inputs/Label/Label.stories.js +3 -0
- package/src/inputs/Label/__stories__/Default.tsx +1 -1
- package/src/inputs/Label/doc.mdx +14 -0
- package/src/inputs/Label/index.test.tsx +4 -0
- package/src/inputs/Label/index.tsx +3 -7
- package/src/inputs/OtpInput/OtpInput.stories.js +3 -0
- package/src/inputs/OtpInput/__stories__/Default.tsx +1 -1
- package/src/inputs/OtpInput/{index.mdx → doc.mdx} +1 -8
- package/src/inputs/OtpInput/index.test.tsx +4 -0
- package/src/inputs/OtpInput/index.tsx +45 -34
- package/src/inputs/Radio/Radio.stories.js +3 -0
- package/src/inputs/Radio/__stories__/Conditional.tsx +3 -2
- package/src/inputs/Radio/__stories__/Default.tsx +1 -1
- package/src/inputs/Radio/__stories__/WithDivider.tsx +1 -1
- package/src/inputs/Radio/{index.mdx → doc.mdx} +5 -15
- package/src/inputs/Radio/index.test.tsx +4 -0
- package/src/inputs/Radio/index.tsx +91 -13
- package/src/inputs/Select/Select.stories.js +3 -0
- package/src/inputs/Select/__stories__/Default.tsx +1 -1
- package/src/inputs/Select/{index.mdx → doc.mdx} +1 -5
- package/src/inputs/Select/index.test.tsx +4 -0
- package/src/inputs/Select/index.tsx +22 -9
- package/src/{Field/utils/index.ts → inputs/registry.ts} +29 -2
- package/src/installation.mdx +2 -5
- package/src/lazy.js +80 -62
- package/src/registry.js +122 -100
- package/src/types.tsx +17 -7
- package/src/utils.ts +43 -10
- package/src/validators/index.ts +116 -100
- package/src/validators/types.ts +1 -1
- package/src/validators/utils/amka.ts +39 -0
- package/src/validators/utils/date.ts +131 -0
- package/src/validators/utils/datetime.ts +222 -0
- package/src/validators/utils/email.ts +11 -0
- package/src/validators/utils/file.ts +35 -19
- package/src/validators/utils/iban.ts +2 -2
- package/src/validators/utils/image.ts +2 -2
- package/src/validators/utils/index.ts +8 -3
- package/src/validators/utils/int.ts +2 -2
- package/src/validators/utils/number.ts +2 -2
- package/src/validators/utils/otp.ts +2 -2
- package/src/validators/utils/phone.ts +3 -3
- package/src/validators/utils/postal_code.ts +3 -3
- package/src/validators/utils/text_limit.ts +2 -2
- package/src/validators/utils/uuid4.ts +2 -1
- package/src/validators/validators.spec.ts +3 -3
- package/types.d.ts +13 -7
- package/types.js.map +1 -1
- package/utils/index.js +30 -7
- package/utils.d.ts +4 -1
- package/utils.js.map +2 -2
- package/validators/index.d.ts +6 -6
- package/validators/index.js +67 -87
- package/validators/index.js.map +2 -2
- package/validators/types.d.ts +1 -1
- package/validators/utils/amka/index.js +36 -0
- package/validators/utils/amka/package.json +6 -0
- package/validators/utils/amka.d.ts +6 -0
- package/validators/utils/amka.js.map +7 -0
- package/validators/utils/date/index.js +126 -0
- package/validators/utils/date/package.json +6 -0
- package/validators/utils/date.d.ts +9 -0
- package/validators/utils/date.js.map +7 -0
- package/validators/utils/datetime/index.js +210 -0
- package/validators/utils/datetime/package.json +6 -0
- package/validators/utils/datetime.d.ts +9 -0
- package/validators/utils/datetime.js.map +7 -0
- package/validators/utils/email/index.js +16 -0
- package/validators/utils/email/package.json +6 -0
- package/validators/utils/email.d.ts +5 -0
- package/validators/utils/email.js.map +7 -0
- package/validators/utils/file/index.js +30 -17
- package/validators/utils/file.d.ts +2 -2
- package/validators/utils/file.js.map +2 -2
- package/validators/utils/iban.d.ts +2 -2
- package/validators/utils/iban.js.map +1 -1
- package/validators/utils/image.d.ts +2 -2
- package/validators/utils/image.js.map +1 -1
- package/validators/utils/index.d.ts +5 -2
- package/validators/utils/index.js +6 -1
- package/validators/utils/index.js.map +2 -2
- package/validators/utils/int/index.js +1 -1
- package/validators/utils/int.d.ts +1 -1
- package/validators/utils/int.js.map +2 -2
- package/validators/utils/number/index.js +1 -1
- package/validators/utils/number.d.ts +1 -1
- package/validators/utils/number.js.map +2 -2
- package/validators/utils/otp.d.ts +2 -2
- package/validators/utils/otp.js.map +1 -1
- package/validators/utils/phone.d.ts +3 -3
- package/validators/utils/phone.js.map +2 -2
- package/validators/utils/postal_code.d.ts +3 -3
- package/validators/utils/postal_code.js.map +1 -1
- package/validators/utils/text_limit.d.ts +2 -2
- package/validators/utils/text_limit.js.map +1 -1
- package/validators/utils/uuid4.js.map +2 -2
- package/Field/utils/calculateField/index.js +0 -27
- package/Field/utils/calculateField/package.json +0 -6
- package/Field/utils/calculateField.d.ts +0 -2
- package/Field/utils/calculateField.js.map +0 -7
- package/Field/utils/index.d.ts +0 -3
- package/Field/utils/index.js.map +0 -7
- package/FieldArray/FieldArray.stories/index.js +0 -14
- package/FieldArray/FieldArray.stories/package.json +0 -6
- package/FieldArray/FieldArray.stories.js.map +0 -7
- package/FieldArray/__stories__/Default/index.js +0 -95
- package/FieldArray/__stories__/Default/package.json +0 -6
- package/FieldArray/__stories__/Default.js.map +0 -7
- package/FieldArray/__stories__/WithExactLength/index.js +0 -95
- package/FieldArray/__stories__/WithExactLength/package.json +0 -6
- package/FieldArray/__stories__/WithExactLength.js.map +0 -7
- package/Form.stories/index.js +0 -7
- package/Form.stories.js.map +0 -7
- package/FormBuilder/FormBuilder.stories/index.js +0 -12
- package/FormBuilder/FormBuilder.stories/package.json +0 -6
- package/FormBuilder/FormBuilder.stories.js.map +0 -7
- package/FormBuilder/__stories__/Default/index.js +0 -32
- package/FormBuilder/__stories__/Default/package.json +0 -6
- package/FormBuilder/__stories__/Default.js.map +0 -7
- package/FormBuilder/index.test.d.ts +0 -1
- package/FormBuilder/scenarios.test.d.ts +0 -88
- package/MultiplicityField/MultiplicityField.stories/index.js +0 -22
- package/MultiplicityField/MultiplicityField.stories/package.json +0 -6
- package/MultiplicityField/MultiplicityField.stories.js.map +0 -7
- package/MultiplicityField/__stories__/Default/index.js +0 -100
- package/MultiplicityField/__stories__/Default/package.json +0 -6
- package/MultiplicityField/__stories__/Default.js.map +0 -7
- package/MultiplicityField/__stories__/PreviewDisplay/index.js +0 -70
- package/MultiplicityField/__stories__/PreviewDisplay/package.json +0 -6
- package/MultiplicityField/__stories__/PreviewDisplay.js.map +0 -7
- package/MultiplicityField/__stories__/WithExactLength/index.js +0 -97
- package/MultiplicityField/__stories__/WithExactLength/package.json +0 -6
- package/MultiplicityField/__stories__/WithExactLength.js.map +0 -7
- package/MultiplicityField/__stories__/WithMaxLength/index.js +0 -100
- package/MultiplicityField/__stories__/WithMaxLength/package.json +0 -6
- package/MultiplicityField/__stories__/WithMaxLength.js.map +0 -7
- package/MultiplicityField/__stories__/WithMinAndMaxLength/index.js +0 -101
- package/MultiplicityField/__stories__/WithMinAndMaxLength/package.json +0 -6
- package/MultiplicityField/__stories__/WithMinAndMaxLength.js.map +0 -7
- package/MultiplicityField/__stories__/WithMinLength/index.js +0 -100
- package/MultiplicityField/__stories__/WithMinLength/package.json +0 -6
- package/MultiplicityField/__stories__/WithMinLength.js.map +0 -7
- package/MultiplicityField/index.test.d.ts +0 -1
- package/Questions/Questions.stories/index.js +0 -12
- package/Questions/Questions.stories.js.map +0 -7
- package/Questions/__stories__/Default/index.js +0 -108
- package/Questions/__stories__/Default/package.json +0 -6
- package/Questions/__stories__/Default.js.map +0 -7
- package/Questions/index.spec.d.ts +0 -1
- package/Questions/index.test.d.ts +0 -1
- package/cjs/Field/utils/calculateField/index.js +0 -50
- package/cjs/Field/utils/calculateField.js.map +0 -7
- package/cjs/Field/utils/index.js.map +0 -7
- package/cjs/FieldArray/FieldArray.stories/index.js +0 -48
- package/cjs/FieldArray/FieldArray.stories.js.map +0 -7
- package/cjs/FieldArray/__stories__/Default/index.js +0 -128
- package/cjs/FieldArray/__stories__/Default.js.map +0 -7
- package/cjs/FieldArray/__stories__/WithExactLength/index.js +0 -128
- package/cjs/FieldArray/__stories__/WithExactLength.js.map +0 -7
- package/cjs/Form.stories.js.map +0 -7
- package/cjs/FormBuilder/FormBuilder.stories.js.map +0 -7
- package/cjs/FormBuilder/__stories__/Default.js.map +0 -7
- package/cjs/MultiplicityField/MultiplicityField.stories/index.js +0 -60
- package/cjs/MultiplicityField/MultiplicityField.stories.js.map +0 -7
- package/cjs/MultiplicityField/__stories__/Default/index.js +0 -133
- package/cjs/MultiplicityField/__stories__/Default.js.map +0 -7
- package/cjs/MultiplicityField/__stories__/PreviewDisplay/index.js +0 -86
- package/cjs/MultiplicityField/__stories__/PreviewDisplay.js.map +0 -7
- package/cjs/MultiplicityField/__stories__/WithExactLength/index.js +0 -130
- package/cjs/MultiplicityField/__stories__/WithExactLength.js.map +0 -7
- package/cjs/MultiplicityField/__stories__/WithMaxLength/index.js +0 -133
- package/cjs/MultiplicityField/__stories__/WithMaxLength.js.map +0 -7
- package/cjs/MultiplicityField/__stories__/WithMinAndMaxLength/index.js +0 -134
- package/cjs/MultiplicityField/__stories__/WithMinAndMaxLength.js.map +0 -7
- package/cjs/MultiplicityField/__stories__/WithMinLength/index.js +0 -133
- package/cjs/MultiplicityField/__stories__/WithMinLength.js.map +0 -7
- package/cjs/Questions/Questions.stories/index.js +0 -45
- package/cjs/Questions/Questions.stories.js.map +0 -7
- package/cjs/Questions/__stories__/Default/index.js +0 -136
- package/cjs/Questions/__stories__/Default.js.map +0 -7
- package/cjs/inputs/AutoCompleteInput/AutoComplete.stories/index.js +0 -48
- package/cjs/inputs/AutoCompleteInput/AutoComplete.stories.js.map +0 -7
- package/cjs/inputs/AutoCompleteInput/__stories__/Default/index.js +0 -83
- package/cjs/inputs/AutoCompleteInput/__stories__/Default.js.map +0 -7
- package/cjs/inputs/AutoCompleteInput/__stories__/Multiple/index.js +0 -84
- package/cjs/inputs/AutoCompleteInput/__stories__/Multiple.js.map +0 -7
- package/cjs/inputs/Checkboxes/Checkboxes.stories/index.js +0 -51
- package/cjs/inputs/Checkboxes/Checkboxes.stories.js.map +0 -7
- package/cjs/inputs/Checkboxes/__stories__/Conditional/index.js +0 -133
- package/cjs/inputs/Checkboxes/__stories__/Conditional.js.map +0 -7
- package/cjs/inputs/Checkboxes/__stories__/Default/index.js +0 -77
- package/cjs/inputs/Checkboxes/__stories__/Default.js.map +0 -7
- package/cjs/inputs/Checkboxes/__stories__/WithDivider/index.js +0 -78
- package/cjs/inputs/Checkboxes/__stories__/WithDivider.js.map +0 -7
- package/cjs/inputs/DateInput/DateInput.stories/index.js +0 -45
- package/cjs/inputs/DateInput/DateInput.stories.js.map +0 -7
- package/cjs/inputs/DateInput/__stories__/Default/index.js +0 -61
- package/cjs/inputs/DateInput/__stories__/Default.js.map +0 -7
- package/cjs/inputs/FileInput/FileInput.stories/index.js +0 -45
- package/cjs/inputs/FileInput/FileInput.stories.js.map +0 -7
- package/cjs/inputs/FileInput/__stories__/Default/index.js +0 -61
- package/cjs/inputs/FileInput/__stories__/Default.js.map +0 -7
- package/cjs/inputs/ImageInput/ImageInput.stories/index.js +0 -51
- package/cjs/inputs/ImageInput/ImageInput.stories.js.map +0 -7
- package/cjs/inputs/ImageInput/__stories__/Default/index.js +0 -63
- package/cjs/inputs/ImageInput/__stories__/Default.js.map +0 -7
- package/cjs/inputs/ImageInput/__stories__/WithInvalidImageDimension/index.js +0 -71
- package/cjs/inputs/ImageInput/__stories__/WithInvalidImageDimension.js.map +0 -7
- package/cjs/inputs/ImageInput/__stories__/WithInvalidImageSize/index.js +0 -68
- package/cjs/inputs/ImageInput/__stories__/WithInvalidImageSize.js.map +0 -7
- package/cjs/inputs/Input/Input.stories/index.js +0 -72
- package/cjs/inputs/Input/Input.stories.js.map +0 -7
- package/cjs/inputs/Input/__stories__/AFM/index.js +0 -63
- package/cjs/inputs/Input/__stories__/AFM.js.map +0 -7
- package/cjs/inputs/Input/__stories__/Boolean/index.js +0 -64
- package/cjs/inputs/Input/__stories__/Boolean.js.map +0 -7
- package/cjs/inputs/Input/__stories__/IBAN/index.js +0 -64
- package/cjs/inputs/Input/__stories__/IBAN.js.map +0 -7
- package/cjs/inputs/Input/__stories__/Integer/index.js +0 -78
- package/cjs/inputs/Input/__stories__/Integer.js.map +0 -7
- package/cjs/inputs/Input/__stories__/LandlineNumber/index.js +0 -67
- package/cjs/inputs/Input/__stories__/LandlineNumber.js.map +0 -7
- package/cjs/inputs/Input/__stories__/MobilePhone/index.js +0 -67
- package/cjs/inputs/Input/__stories__/MobilePhone.js.map +0 -7
- package/cjs/inputs/Input/__stories__/PhoneNumber/index.js +0 -66
- package/cjs/inputs/Input/__stories__/PhoneNumber.js.map +0 -7
- package/cjs/inputs/Input/__stories__/PostalCode/index.js +0 -64
- package/cjs/inputs/Input/__stories__/PostalCode.js.map +0 -7
- package/cjs/inputs/Input/__stories__/String/index.js +0 -64
- package/cjs/inputs/Input/__stories__/String.js.map +0 -7
- package/cjs/inputs/Input/__stories__/TextWithLimit/index.js +0 -64
- package/cjs/inputs/Input/__stories__/TextWithLimit.js.map +0 -7
- package/cjs/inputs/Input/inputsInputScenarios/index.js +0 -439
- package/cjs/inputs/Input/inputsInputScenarios.js.map +0 -7
- package/cjs/inputs/Label/Label.stories/index.js +0 -45
- package/cjs/inputs/Label/Label.stories.js.map +0 -7
- package/cjs/inputs/Label/__stories__/Default/index.js +0 -72
- package/cjs/inputs/Label/__stories__/Default.js.map +0 -7
- package/cjs/inputs/OtpInput/OtpInput.stories/index.js +0 -45
- package/cjs/inputs/OtpInput/OtpInput.stories.js.map +0 -7
- package/cjs/inputs/OtpInput/__stories__/Default/index.js +0 -64
- package/cjs/inputs/OtpInput/__stories__/Default.js.map +0 -7
- package/cjs/inputs/Radio/Radio.stories/index.js +0 -51
- package/cjs/inputs/Radio/Radio.stories.js.map +0 -7
- package/cjs/inputs/Radio/__stories__/Conditional/index.js +0 -133
- package/cjs/inputs/Radio/__stories__/Conditional.js.map +0 -7
- package/cjs/inputs/Radio/__stories__/Default/index.js +0 -81
- package/cjs/inputs/Radio/__stories__/Default.js.map +0 -7
- package/cjs/inputs/Radio/__stories__/WithDivider/index.js +0 -82
- package/cjs/inputs/Radio/__stories__/WithDivider.js.map +0 -7
- package/cjs/inputs/Select/Select.stories/index.js +0 -45
- package/cjs/inputs/Select/Select.stories.js.map +0 -7
- package/cjs/inputs/Select/__stories__/Default/index.js +0 -86
- package/cjs/inputs/Select/__stories__/Default.js.map +0 -7
- package/cjs/inputs/inputsScenarios/index.js +0 -540
- package/cjs/inputs/inputsScenarios.js.map +0 -7
- package/cjs/locales/el/index.js +0 -35
- package/cjs/locales/el.js.map +0 -7
- package/inputs/AutoCompleteInput/AutoComplete.stories/index.js +0 -14
- package/inputs/AutoCompleteInput/AutoComplete.stories/package.json +0 -6
- package/inputs/AutoCompleteInput/AutoComplete.stories.js.map +0 -7
- package/inputs/AutoCompleteInput/__stories__/Default/index.js +0 -50
- package/inputs/AutoCompleteInput/__stories__/Default/package.json +0 -6
- package/inputs/AutoCompleteInput/__stories__/Default.js.map +0 -7
- package/inputs/AutoCompleteInput/__stories__/Multiple/index.js +0 -51
- package/inputs/AutoCompleteInput/__stories__/Multiple/package.json +0 -6
- package/inputs/AutoCompleteInput/__stories__/Multiple.js.map +0 -7
- package/inputs/AutoCompleteInput/index.test.d.ts +0 -1
- package/inputs/Checkboxes/Checkboxes.stories/index.js +0 -16
- package/inputs/Checkboxes/Checkboxes.stories.js.map +0 -7
- package/inputs/Checkboxes/__stories__/Conditional/index.js +0 -100
- package/inputs/Checkboxes/__stories__/Conditional/package.json +0 -6
- package/inputs/Checkboxes/__stories__/Conditional.js.map +0 -7
- package/inputs/Checkboxes/__stories__/Default/index.js +0 -44
- package/inputs/Checkboxes/__stories__/Default/package.json +0 -6
- package/inputs/Checkboxes/__stories__/Default.js.map +0 -7
- package/inputs/Checkboxes/__stories__/WithDivider/index.js +0 -45
- package/inputs/Checkboxes/__stories__/WithDivider/package.json +0 -6
- package/inputs/Checkboxes/__stories__/WithDivider.js.map +0 -7
- package/inputs/Checkboxes/index.test.d.ts +0 -1
- package/inputs/DateInput/DateInput.stories/index.js +0 -12
- package/inputs/DateInput/DateInput.stories.js.map +0 -7
- package/inputs/DateInput/__stories__/Default/index.js +0 -28
- package/inputs/DateInput/__stories__/Default.js.map +0 -7
- package/inputs/DateInput/index.test.d.ts +0 -1
- package/inputs/FileInput/FileInput.stories/index.js +0 -12
- package/inputs/FileInput/FileInput.stories/package.json +0 -6
- package/inputs/FileInput/FileInput.stories.js.map +0 -7
- package/inputs/FileInput/__stories__/Default/index.js +0 -28
- package/inputs/FileInput/__stories__/Default/package.json +0 -6
- package/inputs/FileInput/__stories__/Default.js.map +0 -7
- package/inputs/FileInput/index.test.d.ts +0 -1
- package/inputs/ImageInput/ImageInput.stories/index.js +0 -16
- package/inputs/ImageInput/ImageInput.stories/package.json +0 -6
- package/inputs/ImageInput/ImageInput.stories.js.map +0 -7
- package/inputs/ImageInput/__stories__/Default/index.js +0 -30
- package/inputs/ImageInput/__stories__/Default/package.json +0 -6
- package/inputs/ImageInput/__stories__/Default.js.map +0 -7
- package/inputs/ImageInput/__stories__/WithInvalidImageDimension/index.js +0 -38
- package/inputs/ImageInput/__stories__/WithInvalidImageDimension/package.json +0 -6
- package/inputs/ImageInput/__stories__/WithInvalidImageDimension.js.map +0 -7
- package/inputs/ImageInput/__stories__/WithInvalidImageSize/index.js +0 -35
- package/inputs/ImageInput/__stories__/WithInvalidImageSize/package.json +0 -6
- package/inputs/ImageInput/__stories__/WithInvalidImageSize.d.ts +0 -3
- package/inputs/ImageInput/__stories__/WithInvalidImageSize.js.map +0 -7
- package/inputs/ImageInput/index.test.d.ts +0 -1
- package/inputs/Input/Input.stories/index.js +0 -30
- package/inputs/Input/Input.stories/package.json +0 -6
- package/inputs/Input/Input.stories.js.map +0 -7
- package/inputs/Input/__stories__/AFM/index.js +0 -30
- package/inputs/Input/__stories__/AFM/package.json +0 -6
- package/inputs/Input/__stories__/AFM.js.map +0 -7
- package/inputs/Input/__stories__/Boolean/index.js +0 -31
- package/inputs/Input/__stories__/Boolean/package.json +0 -6
- package/inputs/Input/__stories__/Boolean.js.map +0 -7
- package/inputs/Input/__stories__/IBAN/index.js +0 -31
- package/inputs/Input/__stories__/IBAN/package.json +0 -6
- package/inputs/Input/__stories__/IBAN.js.map +0 -7
- package/inputs/Input/__stories__/Integer/index.js +0 -45
- package/inputs/Input/__stories__/Integer/package.json +0 -6
- package/inputs/Input/__stories__/Integer.js.map +0 -7
- package/inputs/Input/__stories__/LandlineNumber/index.js +0 -34
- package/inputs/Input/__stories__/LandlineNumber/package.json +0 -6
- package/inputs/Input/__stories__/LandlineNumber.js.map +0 -7
- package/inputs/Input/__stories__/MobilePhone/index.js +0 -34
- package/inputs/Input/__stories__/MobilePhone/package.json +0 -6
- package/inputs/Input/__stories__/MobilePhone.js.map +0 -7
- package/inputs/Input/__stories__/PhoneNumber/index.js +0 -33
- package/inputs/Input/__stories__/PhoneNumber/package.json +0 -6
- package/inputs/Input/__stories__/PhoneNumber.js.map +0 -7
- package/inputs/Input/__stories__/PostalCode/index.js +0 -31
- package/inputs/Input/__stories__/PostalCode/package.json +0 -6
- package/inputs/Input/__stories__/PostalCode.js.map +0 -7
- package/inputs/Input/__stories__/String/index.js +0 -31
- package/inputs/Input/__stories__/String/package.json +0 -6
- package/inputs/Input/__stories__/String.js.map +0 -7
- package/inputs/Input/__stories__/TextWithLimit/index.js +0 -31
- package/inputs/Input/__stories__/TextWithLimit/package.json +0 -6
- package/inputs/Input/__stories__/TextWithLimit.js.map +0 -7
- package/inputs/Input/index.test.d.ts +0 -1
- package/inputs/Input/inputsInputScenarios/index.js +0 -406
- package/inputs/Input/inputsInputScenarios/package.json +0 -6
- package/inputs/Input/inputsInputScenarios.d.ts +0 -57
- package/inputs/Input/inputsInputScenarios.js.map +0 -7
- package/inputs/Label/Label.stories/index.js +0 -12
- package/inputs/Label/Label.stories/package.json +0 -6
- package/inputs/Label/Label.stories.js.map +0 -7
- package/inputs/Label/__stories__/Default/index.js +0 -39
- package/inputs/Label/__stories__/Default/package.json +0 -6
- package/inputs/Label/__stories__/Default.js.map +0 -7
- package/inputs/Label/index.test.d.ts +0 -1
- package/inputs/OtpInput/OtpInput.stories/index.js +0 -12
- package/inputs/OtpInput/OtpInput.stories/package.json +0 -6
- package/inputs/OtpInput/OtpInput.stories.js.map +0 -7
- package/inputs/OtpInput/__stories__/Default/index.js +0 -31
- package/inputs/OtpInput/__stories__/Default/package.json +0 -6
- package/inputs/OtpInput/__stories__/Default.js.map +0 -7
- package/inputs/OtpInput/index.test.d.ts +0 -1
- package/inputs/Radio/Radio.stories/index.js +0 -16
- package/inputs/Radio/Radio.stories/package.json +0 -6
- package/inputs/Radio/Radio.stories.js.map +0 -7
- package/inputs/Radio/__stories__/Conditional/index.js +0 -100
- package/inputs/Radio/__stories__/Conditional/package.json +0 -6
- package/inputs/Radio/__stories__/Conditional.js.map +0 -7
- package/inputs/Radio/__stories__/Default/index.js +0 -48
- package/inputs/Radio/__stories__/Default/package.json +0 -6
- package/inputs/Radio/__stories__/Default.js.map +0 -7
- package/inputs/Radio/__stories__/WithDivider/index.js +0 -49
- package/inputs/Radio/__stories__/WithDivider/package.json +0 -6
- package/inputs/Radio/__stories__/WithDivider.js.map +0 -7
- package/inputs/Radio/index.test.d.ts +0 -1
- package/inputs/Select/Select.stories/index.js +0 -12
- package/inputs/Select/Select.stories/package.json +0 -6
- package/inputs/Select/Select.stories.js.map +0 -7
- package/inputs/Select/__stories__/Default/index.js +0 -53
- package/inputs/Select/__stories__/Default/package.json +0 -6
- package/inputs/Select/__stories__/Default.js.map +0 -7
- package/inputs/Select/index.test.d.ts +0 -1
- package/inputs/inputsScenarios/index.js +0 -506
- package/inputs/inputsScenarios.d.ts +0 -338
- package/inputs/inputsScenarios.js.map +0 -7
- package/lazy.d.ts +0 -72
- package/lazy.js.map +0 -7
- package/locales/el/index.js +0 -6
- package/locales/el.d.ts +0 -2
- package/locales/el.js.map +0 -7
- package/registry.d.ts +0 -70
- package/registry.js.map +0 -7
- package/src/Field/index.mdx +0 -6
- package/src/Field/utils/calculateField.ts +0 -49
- package/src/index.tsx +0 -178
- package/src/inputs/ImageInput/index.mdx +0 -19
- package/src/inputs/Input/index.mdx +0 -95
- package/src/inputs/Input/inputsInputScenarios.ts +0 -405
- package/src/inputs/Label/index.mdx +0 -0
- package/src/inputs/inputsScenarios.ts +0 -503
- package/src/locales/el.ts +0 -3
- /package/{FieldArray/index.test.d.ts → hooks/__tests__/utils.spec.d.ts} +0 -0
|
@@ -34,15 +34,12 @@ __export(MultiplicityField_exports, {
|
|
|
34
34
|
module.exports = __toCommonJS(MultiplicityField_exports);
|
|
35
35
|
var import_react = __toESM(require("react"));
|
|
36
36
|
var import_react_hook_form = require("react-hook-form");
|
|
37
|
-
var import_FieldBaseContainer =
|
|
38
|
-
var import_FieldObject =
|
|
39
|
-
var import_add_objects =
|
|
40
|
-
var
|
|
41
|
-
var
|
|
42
|
-
var
|
|
43
|
-
var import_CardContent = require("@digigov/react-core/CardContent");
|
|
44
|
-
var import_CardHeading = require("@digigov/react-core/CardHeading");
|
|
45
|
-
var import_Heading = require("@digigov/react-core/Heading");
|
|
37
|
+
var import_FieldBaseContainer = require("@digigov/form/Field/FieldBaseContainer");
|
|
38
|
+
var import_FieldObject = require("@digigov/form/FieldObject");
|
|
39
|
+
var import_add_objects = require("@digigov/form/MultiplicityField/add-objects");
|
|
40
|
+
var import_Card = require("@digigov/ui/content/Card");
|
|
41
|
+
var import_Button = require("@digigov/ui/form/Button");
|
|
42
|
+
var import_Heading = require("@digigov/ui/typography/Heading");
|
|
46
43
|
const Multiplicity = ({
|
|
47
44
|
extra,
|
|
48
45
|
name,
|
|
@@ -56,7 +53,9 @@ const Multiplicity = ({
|
|
|
56
53
|
layout,
|
|
57
54
|
setValue,
|
|
58
55
|
getValues,
|
|
59
|
-
unregister
|
|
56
|
+
unregister,
|
|
57
|
+
resetField,
|
|
58
|
+
Field
|
|
60
59
|
}) => {
|
|
61
60
|
const { fields, append, remove } = (0, import_react_hook_form.useFieldArray)({
|
|
62
61
|
control,
|
|
@@ -73,13 +72,15 @@ const Multiplicity = ({
|
|
|
73
72
|
setStashedObjects(newStashedObjects);
|
|
74
73
|
};
|
|
75
74
|
return /* @__PURE__ */ import_react.default.createElement(
|
|
76
|
-
import_FieldBaseContainer.
|
|
75
|
+
import_FieldBaseContainer.FieldBaseContainer,
|
|
77
76
|
{
|
|
78
77
|
label,
|
|
79
78
|
layout,
|
|
80
79
|
error: formState.isSubmitted && !formState.isSubmitting && error?.message ? error : void 0,
|
|
80
|
+
hasError: formState.isSubmitted && !formState.isSubmitting && !!error,
|
|
81
81
|
wrapper: "fieldset",
|
|
82
|
-
name
|
|
82
|
+
name,
|
|
83
|
+
register
|
|
83
84
|
},
|
|
84
85
|
stashedObjects.length > 0 ? /* @__PURE__ */ import_react.default.createElement("div", null, /* @__PURE__ */ import_react.default.createElement(import_Heading.Heading, { size: "md" }, extra?.label.object.title_added), stashedObjects.map((_Object, index) => {
|
|
85
86
|
return /* @__PURE__ */ import_react.default.createElement(
|
|
@@ -97,7 +98,7 @@ const Multiplicity = ({
|
|
|
97
98
|
);
|
|
98
99
|
})) : "",
|
|
99
100
|
/* @__PURE__ */ import_react.default.createElement(
|
|
100
|
-
import_add_objects.
|
|
101
|
+
import_add_objects.AddObjects,
|
|
101
102
|
{
|
|
102
103
|
name,
|
|
103
104
|
register,
|
|
@@ -114,7 +115,9 @@ const Multiplicity = ({
|
|
|
114
115
|
getValues,
|
|
115
116
|
unregister,
|
|
116
117
|
trigger,
|
|
117
|
-
|
|
118
|
+
resetField,
|
|
119
|
+
clearErrors,
|
|
120
|
+
Field
|
|
118
121
|
}
|
|
119
122
|
)
|
|
120
123
|
);
|
|
@@ -131,8 +134,8 @@ const ListObject = ({
|
|
|
131
134
|
// onEdit,
|
|
132
135
|
}) => {
|
|
133
136
|
const currentName = `${name}.${index}`;
|
|
134
|
-
return /* @__PURE__ */ import_react.default.createElement(import_Card.Card, { variant: extra?.border && "border" }, /* @__PURE__ */ import_react.default.createElement(
|
|
135
|
-
import_FieldObject.
|
|
137
|
+
return /* @__PURE__ */ import_react.default.createElement(import_Card.Card, { variant: extra?.border && "border" }, /* @__PURE__ */ import_react.default.createElement(import_Card.CardHeading, null, extra?.label.object.title, " #", index + 1), /* @__PURE__ */ import_react.default.createElement(import_Card.CardContent, null, /* @__PURE__ */ import_react.default.createElement(
|
|
138
|
+
import_FieldObject.FieldObject,
|
|
136
139
|
{
|
|
137
140
|
name: currentName,
|
|
138
141
|
formState,
|
|
@@ -140,7 +143,7 @@ const ListObject = ({
|
|
|
140
143
|
control,
|
|
141
144
|
...extra?.of
|
|
142
145
|
}
|
|
143
|
-
)), /* @__PURE__ */ import_react.default.createElement(
|
|
146
|
+
)), /* @__PURE__ */ import_react.default.createElement(import_Card.CardAction, null, /* @__PURE__ */ import_react.default.createElement(import_Button.Button, { type: "button", variant: "link", onClick: () => onDelete(index) }, extra?.label.object.delete)));
|
|
144
147
|
};
|
|
145
148
|
// Annotate the CommonJS export names for ESM import in node:
|
|
146
149
|
0 && (module.exports = {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/MultiplicityField/index.tsx"],
|
|
4
|
-
"sourcesContent": ["import React, { useState } from 'react';\nimport {
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAgC;
|
|
6
|
-
"names": ["React"
|
|
4
|
+
"sourcesContent": ["import React, { useState } from 'react';\nimport type { UseFormReturn } from 'react-hook-form';\nimport { useFieldArray } from 'react-hook-form';\nimport { FieldBaseContainer } from '@digigov/form/Field/FieldBaseContainer';\nimport { FieldObject } from '@digigov/form/FieldObject';\nimport { AddObjects } from '@digigov/form/MultiplicityField/add-objects';\nimport type {\n MultiplicityProps,\n StashedObject,\n} from '@digigov/form/MultiplicityField/types';\nimport {\n Card,\n CardHeading,\n CardContent,\n CardAction,\n} from '@digigov/ui/content/Card';\nimport { Button } from '@digigov/ui/form/Button';\nimport { Heading } from '@digigov/ui/typography/Heading';\n\n// epeidh einai forwardRef to ref mas to dinei xwrista apo ta props\nexport const Multiplicity: React.FC<MultiplicityProps> = ({\n extra,\n name,\n control,\n error,\n register,\n trigger,\n clearErrors,\n formState,\n label,\n layout,\n setValue,\n getValues,\n unregister,\n resetField,\n Field,\n}) => {\n const { fields, append, remove } = useFieldArray({\n control,\n name,\n });\n const [stashedObjects, setStashedObjects] = useState<StashedObject[]>([]);\n const handleStash = (data) => {\n setStashedObjects([...stashedObjects, data]);\n };\n const handleDelete = (index) => {\n remove(index);\n // creating a new array to maintain immutability\n const newStashedObjects = [...stashedObjects];\n newStashedObjects.splice(index, 1);\n setStashedObjects(newStashedObjects);\n };\n return (\n <FieldBaseContainer\n label={label}\n layout={layout}\n error={\n formState.isSubmitted && !formState.isSubmitting && error?.message\n ? error\n : undefined\n }\n hasError={formState.isSubmitted && !formState.isSubmitting && !!error}\n wrapper=\"fieldset\"\n name={name}\n register={register}\n >\n {stashedObjects.length > 0 ? (\n <div>\n <Heading size=\"md\">{extra?.label.object.title_added}</Heading>\n {stashedObjects.map((_Object, index) => {\n return (\n <ListObject\n key={`${name}.${index}`}\n index={index}\n name={name}\n extra={extra}\n control={control}\n register={register}\n formState={formState}\n onDelete={handleDelete}\n />\n );\n })}\n </div>\n ) : (\n ''\n )}\n <AddObjects\n name={name}\n register={register}\n control={control}\n fields={fields}\n formState={formState}\n error={error}\n stashedObjects={stashedObjects}\n extra={extra}\n append={append}\n remove={remove}\n onStash={handleStash}\n setValue={setValue}\n getValues={getValues}\n unregister={unregister}\n trigger={trigger}\n resetField={resetField}\n clearErrors={clearErrors}\n Field={Field}\n />\n </FieldBaseContainer>\n );\n};\n\nexport default Multiplicity;\n\nexport interface ListObjectProps {\n index: number;\n name: string;\n control: UseFormReturn['control'];\n register: UseFormReturn['register'];\n formState: UseFormReturn['formState'];\n onDelete: (index: number) => void;\n extra?: Record<string, any>;\n}\n\nexport const ListObject: React.FC<ListObjectProps> = ({\n index,\n name,\n extra,\n control,\n register,\n onDelete,\n formState,\n // onEdit,\n}) => {\n const currentName = `${name}.${index}`;\n return (\n <Card variant={extra?.border && 'border'}>\n <CardHeading>\n {extra?.label.object.title} #{index + 1}\n </CardHeading>\n <CardContent>\n <FieldObject\n name={currentName}\n formState={formState}\n register={register}\n control={control}\n {...extra?.of}\n />\n </CardContent>\n <CardAction>\n <Button type=\"button\" variant=\"link\" onClick={() => onDelete(index)}>\n {extra?.label.object.delete}\n </Button>\n </CardAction>\n </Card>\n );\n};\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAgC;AAEhC,6BAA8B;AAC9B,gCAAmC;AACnC,yBAA4B;AAC5B,yBAA2B;AAK3B,kBAKO;AACP,oBAAuB;AACvB,qBAAwB;AAGjB,MAAM,eAA4C,CAAC;AAAA,EACxD;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAAM;AACJ,QAAM,EAAE,QAAQ,QAAQ,OAAO,QAAI,sCAAc;AAAA,IAC/C;AAAA,IACA;AAAA,EACF,CAAC;AACD,QAAM,CAAC,gBAAgB,iBAAiB,QAAI,uBAA0B,CAAC,CAAC;AACxE,QAAM,cAAc,CAAC,SAAS;AAC5B,sBAAkB,CAAC,GAAG,gBAAgB,IAAI,CAAC;AAAA,EAC7C;AACA,QAAM,eAAe,CAAC,UAAU;AAC9B,WAAO,KAAK;AAEZ,UAAM,oBAAoB,CAAC,GAAG,cAAc;AAC5C,sBAAkB,OAAO,OAAO,CAAC;AACjC,sBAAkB,iBAAiB;AAAA,EACrC;AACA,SACE,6BAAAA,QAAA;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA,OACE,UAAU,eAAe,CAAC,UAAU,gBAAgB,OAAO,UACvD,QACA;AAAA,MAEN,UAAU,UAAU,eAAe,CAAC,UAAU,gBAAgB,CAAC,CAAC;AAAA,MAChE,SAAQ;AAAA,MACR;AAAA,MACA;AAAA;AAAA,IAEC,eAAe,SAAS,IACvB,6BAAAA,QAAA,cAAC,aACC,6BAAAA,QAAA,cAAC,0BAAQ,MAAK,QAAM,OAAO,MAAM,OAAO,WAAY,GACnD,eAAe,IAAI,CAAC,SAAS,UAAU;AACtC,aACE,6BAAAA,QAAA;AAAA,QAAC;AAAA;AAAA,UACC,KAAK,GAAG,IAAI,IAAI,KAAK;AAAA,UACrB;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA,UAAU;AAAA;AAAA,MACZ;AAAA,IAEJ,CAAC,CACH,IAEA;AAAA,IAEF,6BAAAA,QAAA;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA,SAAS;AAAA,QACT;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA;AAAA,IACF;AAAA,EACF;AAEJ;AAEA,IAAO,4BAAQ;AAYR,MAAM,aAAwC,CAAC;AAAA,EACpD;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAEF,MAAM;AACJ,QAAM,cAAc,GAAG,IAAI,IAAI,KAAK;AACpC,SACE,6BAAAA,QAAA,cAAC,oBAAK,SAAS,OAAO,UAAU,YAC9B,6BAAAA,QAAA,cAAC,+BACE,OAAO,MAAM,OAAO,OAAM,MAAG,QAAQ,CACxC,GACA,6BAAAA,QAAA,cAAC,+BACC,6BAAAA,QAAA;AAAA,IAAC;AAAA;AAAA,MACC,MAAM;AAAA,MACN;AAAA,MACA;AAAA,MACA;AAAA,MACC,GAAG,OAAO;AAAA;AAAA,EACb,CACF,GACA,6BAAAA,QAAA,cAAC,8BACC,6BAAAA,QAAA,cAAC,wBAAO,MAAK,UAAS,SAAQ,QAAO,SAAS,MAAM,SAAS,KAAK,KAC/D,OAAO,MAAM,OAAO,MACvB,CACF,CACF;AAEJ;",
|
|
6
|
+
"names": ["React"]
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/MultiplicityField/types.ts"],
|
|
4
|
-
"sourcesContent": ["import { ErrorOption, UseFormReturn } from 'react-hook-form';\nimport {
|
|
4
|
+
"sourcesContent": ["import type { ErrorOption, UseFormReturn } from 'react-hook-form';\nimport type {\n FieldSpec,\n ControlledFieldProps,\n} from '@digigov/form/Field/types';\n\nexport interface MultiplicityProps\n extends Omit<ControlledFieldProps, 'value' | 'onChange' | 'error' | 'extra'> {\n name: string;\n control: UseFormReturn['control'];\n register: UseFormReturn['register'];\n trigger: UseFormReturn['trigger'];\n clearErrors: UseFormReturn['clearErrors'];\n formState: UseFormReturn['formState'];\n setValue: UseFormReturn['setValue'];\n getValues: UseFormReturn['getValues'];\n unregister: UseFormReturn['unregister'];\n resetField?: UseFormReturn['resetField'];\n error?: ErrorOption;\n extra?: Record<string, any>;\n label?: FieldSpec['label'];\n layout?: FieldSpec['layout'];\n}\n\nexport type StashedObject = Record<string, any>;\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;AAAA;AAAA;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -54,7 +54,7 @@ const Questions = ({
|
|
|
54
54
|
(0, import_react.useEffect)(() => {
|
|
55
55
|
if (forceStepName !== currentStep.name) {
|
|
56
56
|
const forceStep = steps.find(({ name: name2 }) => name2 === forceStepName);
|
|
57
|
-
forceStep
|
|
57
|
+
if (forceStep) setCurrentStep(forceStep);
|
|
58
58
|
}
|
|
59
59
|
}, [forceStepName]);
|
|
60
60
|
const localData = isBrowser && localDraft && window.localStorage.getItem(`questions-${name}`);
|
|
@@ -64,15 +64,16 @@ const Questions = ({
|
|
|
64
64
|
const submitStep = (stepName, stepData) => {
|
|
65
65
|
data[stepName] = stepData;
|
|
66
66
|
if (localDraft) {
|
|
67
|
-
|
|
67
|
+
if (isBrowser)
|
|
68
|
+
window.localStorage.setItem(`questions-${name}`, JSON.stringify(data));
|
|
68
69
|
}
|
|
69
70
|
if (onChange) {
|
|
70
|
-
onChange
|
|
71
|
+
onChange(data);
|
|
71
72
|
}
|
|
72
73
|
setData(data);
|
|
73
74
|
const nextStep = (0, import_getNextStep.getNextStep)(currentStep, steps, data);
|
|
74
75
|
if (nextStep) {
|
|
75
|
-
onActiveStep
|
|
76
|
+
if (onActiveStep) onActiveStep(nextStep);
|
|
76
77
|
setCurrentStep(nextStep);
|
|
77
78
|
} else {
|
|
78
79
|
onSubmit(data);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/Questions/Questions.tsx"],
|
|
4
|
-
"sourcesContent": ["import React, { useState, useEffect } from 'react';\nimport { getNextStep } from '@digigov/form/Questions/getNextStep';\nimport { QuestionsContext } from '@digigov/form/Questions/QuestionsContext';\nimport { StepInterface } from '@digigov/form/Questions/Step/types';\nimport { QuestionsInterface } from '@digigov/form/Questions/types';\n\nconst isBrowser = typeof window !== 'undefined';\n\n/**\n * The Question component accepts question data as props\n * uses composable components to provide a wholesome UX\n *\n */\nexport const Questions: React.FC<QuestionsInterface> = ({\n name,\n steps,\n initialData = {},\n onChange,\n onSubmit,\n onActiveStep,\n forceStepName,\n localDraft = false,\n children,\n}) => {\n const [currentStep, setCurrentStep] = useState<StepInterface>({ name: '' });\n useEffect(() => {\n if (!forceStepName) {\n setCurrentStep(steps[0]);\n }\n }, [forceStepName, steps]);\n useEffect(() => {\n if (forceStepName !== currentStep.name) {\n const forceStep = steps.find(({ name }) => name === forceStepName);\n forceStep
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAA2C;AAC3C,yBAA4B;AAC5B,8BAAiC;AAIjC,MAAM,YAAY,OAAO,WAAW;AAO7B,MAAM,YAA0C,CAAC;AAAA,EACtD;AAAA,EACA;AAAA,EACA,cAAc,CAAC;AAAA,EACf;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,aAAa;AAAA,EACb;AACF,MAAM;AACJ,QAAM,CAAC,aAAa,cAAc,QAAI,uBAAwB,EAAE,MAAM,GAAG,CAAC;AAC1E,8BAAU,MAAM;AACd,QAAI,CAAC,eAAe;AAClB,qBAAe,MAAM,CAAC,CAAC;AAAA,IACzB;AAAA,EACF,GAAG,CAAC,eAAe,KAAK,CAAC;AACzB,8BAAU,MAAM;AACd,QAAI,kBAAkB,YAAY,MAAM;AACtC,YAAM,YAAY,MAAM,KAAK,CAAC,EAAE,MAAAA,MAAK,MAAMA,UAAS,aAAa;AACjE,
|
|
4
|
+
"sourcesContent": ["import React, { useState, useEffect } from 'react';\nimport { getNextStep } from '@digigov/form/Questions/getNextStep';\nimport { QuestionsContext } from '@digigov/form/Questions/QuestionsContext';\nimport type { StepInterface } from '@digigov/form/Questions/Step/types';\nimport type { QuestionsInterface } from '@digigov/form/Questions/types';\n\nconst isBrowser = typeof window !== 'undefined';\n\n/**\n * The Question component accepts question data as props\n * uses composable components to provide a wholesome UX\n *\n */\nexport const Questions: React.FC<QuestionsInterface> = ({\n name,\n steps,\n initialData = {},\n onChange,\n onSubmit,\n onActiveStep,\n forceStepName,\n localDraft = false,\n children,\n}) => {\n const [currentStep, setCurrentStep] = useState<StepInterface>({ name: '' });\n useEffect(() => {\n if (!forceStepName) {\n setCurrentStep(steps[0]);\n }\n }, [forceStepName, steps]);\n useEffect(() => {\n if (forceStepName !== currentStep.name) {\n const forceStep = steps.find(({ name }) => name === forceStepName);\n if (forceStep) setCurrentStep(forceStep);\n }\n }, [forceStepName]);\n const localData =\n isBrowser && localDraft && window.localStorage.getItem(`questions-${name}`);\n const [data, setData] = useState(\n (localData && JSON.parse(localData)) || initialData\n );\n const submitStep = (stepName, stepData): void => {\n data[stepName] = stepData;\n if (localDraft) {\n if (isBrowser)\n window.localStorage.setItem(`questions-${name}`, JSON.stringify(data));\n }\n if (onChange) {\n onChange(data);\n }\n setData(data);\n const nextStep = getNextStep(currentStep, steps, data);\n if (nextStep) {\n if (onActiveStep) onActiveStep(nextStep);\n setCurrentStep(nextStep);\n } else {\n onSubmit(data);\n }\n };\n\n return (\n <QuestionsContext.Provider\n value={{\n steps,\n currentStep,\n submitStep,\n data,\n onActiveStep,\n }}\n >\n {children}\n </QuestionsContext.Provider>\n );\n};\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAA2C;AAC3C,yBAA4B;AAC5B,8BAAiC;AAIjC,MAAM,YAAY,OAAO,WAAW;AAO7B,MAAM,YAA0C,CAAC;AAAA,EACtD;AAAA,EACA;AAAA,EACA,cAAc,CAAC;AAAA,EACf;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,aAAa;AAAA,EACb;AACF,MAAM;AACJ,QAAM,CAAC,aAAa,cAAc,QAAI,uBAAwB,EAAE,MAAM,GAAG,CAAC;AAC1E,8BAAU,MAAM;AACd,QAAI,CAAC,eAAe;AAClB,qBAAe,MAAM,CAAC,CAAC;AAAA,IACzB;AAAA,EACF,GAAG,CAAC,eAAe,KAAK,CAAC;AACzB,8BAAU,MAAM;AACd,QAAI,kBAAkB,YAAY,MAAM;AACtC,YAAM,YAAY,MAAM,KAAK,CAAC,EAAE,MAAAA,MAAK,MAAMA,UAAS,aAAa;AACjE,UAAI,UAAW,gBAAe,SAAS;AAAA,IACzC;AAAA,EACF,GAAG,CAAC,aAAa,CAAC;AAClB,QAAM,YACJ,aAAa,cAAc,OAAO,aAAa,QAAQ,aAAa,IAAI,EAAE;AAC5E,QAAM,CAAC,MAAM,OAAO,QAAI;AAAA,IACrB,aAAa,KAAK,MAAM,SAAS,KAAM;AAAA,EAC1C;AACA,QAAM,aAAa,CAAC,UAAU,aAAmB;AAC/C,SAAK,QAAQ,IAAI;AACjB,QAAI,YAAY;AACd,UAAI;AACF,eAAO,aAAa,QAAQ,aAAa,IAAI,IAAI,KAAK,UAAU,IAAI,CAAC;AAAA,IACzE;AACA,QAAI,UAAU;AACZ,eAAS,IAAI;AAAA,IACf;AACA,YAAQ,IAAI;AACZ,UAAM,eAAW,gCAAY,aAAa,OAAO,IAAI;AACrD,QAAI,UAAU;AACZ,UAAI,aAAc,cAAa,QAAQ;AACvC,qBAAe,QAAQ;AAAA,IACzB,OAAO;AACL,eAAS,IAAI;AAAA,IACf;AAAA,EACF;AAEA,SACE,6BAAAC,QAAA;AAAA,IAAC,yCAAiB;AAAA,IAAjB;AAAA,MACC,OAAO;AAAA,QACL;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAAA;AAAA,IAEC;AAAA,EACH;AAEJ;",
|
|
6
6
|
"names": ["name", "React"]
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/Questions/QuestionsContext.tsx"],
|
|
4
|
-
"sourcesContent": ["import { createContext } from 'react';\nimport { QuestionsContextInterface } from '@digigov/form/Questions/types';\n\nconst defaultStep = { name: '' };\nexport const QuestionsContext = createContext<QuestionsContextInterface>({\n currentStep: defaultStep,\n steps: [],\n submitStep: () => null,\n});\n"],
|
|
4
|
+
"sourcesContent": ["import { createContext } from 'react';\nimport type { QuestionsContextInterface } from '@digigov/form/Questions/types';\n\nconst defaultStep = { name: '' };\nexport const QuestionsContext = createContext<QuestionsContextInterface>({\n currentStep: defaultStep,\n steps: [],\n submitStep: () => null,\n});\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAA8B;AAG9B,MAAM,cAAc,EAAE,MAAM,GAAG;AACxB,MAAM,uBAAmB,4BAAyC;AAAA,EACvE,aAAa;AAAA,EACb,OAAO,CAAC;AAAA,EACR,YAAY,MAAM;AACpB,CAAC;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/Questions/Step/Step.tsx"],
|
|
4
|
-
"sourcesContent": ["import React, { useContext, useState } from 'react';\nimport { QuestionsContext } from '@digigov/form/Questions/QuestionsContext';\nimport { StepArrayReview } from '@digigov/form/Questions/Step/StepArrayReview';\nimport { StepContext } from '@digigov/form/Questions/Step/StepContext';\nimport { StepInterface } from '@digigov/form/Questions/Step/types';\n\n/**\n * The Step component accepts Step data as props\n * uses composable components to provide a wholesome UX\n *\n */\nexport const Step: React.FC<StepInterface> = (props) => {\n // or return all Questions and currentStepName\n // or return a specific Step object\n const { currentStep, submitStep, data } = useContext(QuestionsContext);\n\n const [stepData, setStepData] = useState<Record<string, any>[]>([]);\n const [reviewActive, setReviewActive] = useState(false);\n\n const handleArraySubmit = (_name: string, data: any): void => {\n setStepData([...stepData, data]);\n setReviewActive(true);\n };\n\n const handleArrayDeleteItem = (deleteIndex: number): void => {\n const nextStepData = stepData.filter((_item, stepIndex) => {\n return stepIndex !== deleteIndex;\n });\n setStepData(nextStepData);\n if (nextStepData.length === 0) {\n setReviewActive(false);\n }\n };\n\n const handleArrayReviewStep = (data): void => {\n if (data.addMore === 'yes') {\n setReviewActive(false);\n } else if (data.addMore === 'no') {\n submitStep(currentStep.name, stepData);\n }\n };\n if (!currentStep || props.name !== currentStep.name) return null;\n\n // then provide the currentStep object\n return (\n <StepContext.Provider\n value={{\n ...currentStep,\n submitStep:\n currentStep.type === 'array' ? handleArraySubmit : submitStep,\n initial: data[props.name],\n }}\n >\n {reviewActive ? (\n <StepArrayReview\n array={stepData}\n handleSubmit={handleArrayReviewStep}\n handleDelete={handleArrayDeleteItem}\n />\n ) : (\n props.children\n )}\n </StepContext.Provider>\n );\n};\n\nexport default Step;\n"],
|
|
4
|
+
"sourcesContent": ["import React, { useContext, useState } from 'react';\nimport { QuestionsContext } from '@digigov/form/Questions/QuestionsContext';\nimport { StepArrayReview } from '@digigov/form/Questions/Step/StepArrayReview';\nimport { StepContext } from '@digigov/form/Questions/Step/StepContext';\nimport type { StepInterface } from '@digigov/form/Questions/Step/types';\n\n/**\n * The Step component accepts Step data as props\n * uses composable components to provide a wholesome UX\n *\n */\nexport const Step: React.FC<StepInterface> = (props) => {\n // or return all Questions and currentStepName\n // or return a specific Step object\n const { currentStep, submitStep, data } = useContext(QuestionsContext);\n\n const [stepData, setStepData] = useState<Record<string, any>[]>([]);\n const [reviewActive, setReviewActive] = useState(false);\n\n const handleArraySubmit = (_name: string, data: any): void => {\n setStepData([...stepData, data]);\n setReviewActive(true);\n };\n\n const handleArrayDeleteItem = (deleteIndex: number): void => {\n const nextStepData = stepData.filter((_item, stepIndex) => {\n return stepIndex !== deleteIndex;\n });\n setStepData(nextStepData);\n if (nextStepData.length === 0) {\n setReviewActive(false);\n }\n };\n\n const handleArrayReviewStep = (data): void => {\n if (data.addMore === 'yes') {\n setReviewActive(false);\n } else if (data.addMore === 'no') {\n submitStep(currentStep.name, stepData);\n }\n };\n if (!currentStep || props.name !== currentStep.name) return null;\n\n // then provide the currentStep object\n return (\n <StepContext.Provider\n value={{\n ...currentStep,\n submitStep:\n currentStep.type === 'array' ? handleArraySubmit : submitStep,\n initial: data[props.name],\n }}\n >\n {reviewActive ? (\n <StepArrayReview\n array={stepData}\n handleSubmit={handleArrayReviewStep}\n handleDelete={handleArrayDeleteItem}\n />\n ) : (\n props.children\n )}\n </StepContext.Provider>\n );\n};\n\nexport default Step;\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAA4C;AAC5C,8BAAiC;AACjC,6BAAgC;AAChC,yBAA4B;AAQrB,MAAM,OAAgC,CAAC,UAAU;AAGtD,QAAM,EAAE,aAAa,YAAY,KAAK,QAAI,yBAAW,wCAAgB;AAErE,QAAM,CAAC,UAAU,WAAW,QAAI,uBAAgC,CAAC,CAAC;AAClE,QAAM,CAAC,cAAc,eAAe,QAAI,uBAAS,KAAK;AAEtD,QAAM,oBAAoB,CAAC,OAAeA,UAAoB;AAC5D,gBAAY,CAAC,GAAG,UAAUA,KAAI,CAAC;AAC/B,oBAAgB,IAAI;AAAA,EACtB;AAEA,QAAM,wBAAwB,CAAC,gBAA8B;AAC3D,UAAM,eAAe,SAAS,OAAO,CAAC,OAAO,cAAc;AACzD,aAAO,cAAc;AAAA,IACvB,CAAC;AACD,gBAAY,YAAY;AACxB,QAAI,aAAa,WAAW,GAAG;AAC7B,sBAAgB,KAAK;AAAA,IACvB;AAAA,EACF;AAEA,QAAM,wBAAwB,CAACA,UAAe;AAC5C,QAAIA,MAAK,YAAY,OAAO;AAC1B,sBAAgB,KAAK;AAAA,IACvB,WAAWA,MAAK,YAAY,MAAM;AAChC,iBAAW,YAAY,MAAM,QAAQ;AAAA,IACvC;AAAA,EACF;AACA,MAAI,CAAC,eAAe,MAAM,SAAS,YAAY,KAAM,QAAO;AAG5D,SACE,6BAAAC,QAAA;AAAA,IAAC,+BAAY;AAAA,IAAZ;AAAA,MACC,OAAO;AAAA,QACL,GAAG;AAAA,QACH,YACE,YAAY,SAAS,UAAU,oBAAoB;AAAA,QACrD,SAAS,KAAK,MAAM,IAAI;AAAA,MAC1B;AAAA;AAAA,IAEC,eACC,6BAAAA,QAAA;AAAA,MAAC;AAAA;AAAA,QACC,OAAO;AAAA,QACP,cAAc;AAAA,QACd,cAAc;AAAA;AAAA,IAChB,IAEA,MAAM;AAAA,EAEV;AAEJ;AAEA,IAAO,eAAQ;",
|
|
6
6
|
"names": ["data", "React"]
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/Questions/Step/StepArrayReview.tsx"],
|
|
4
|
-
"sourcesContent": ["import React, { useContext } from 'react';\nimport { Field } from '@digigov/form/Field';\nimport { Fieldset } from '@digigov/form/Fieldset';\nimport FormBuilder from '@digigov/form/FormBuilder';\nimport Label from '@digigov/form/inputs/Label';\nimport { QuestionsContext } from '@digigov/form/Questions/QuestionsContext';\nimport { getAddMoreFields } from '@digigov/form/Questions/Step/getAddMoreFields';\nimport { StepArrayReviewInterface } from '@digigov/form/Questions/Step/types';\nimport { FieldSpec } from '@digigov/form/types';\nimport PageTitleContainer, {\n PageTitleHeading,\n} from '@digigov/ui/app/PageTitleContainer';\nimport {\n SummaryList,\n SummaryListItem,\n SummaryListItemKey,\n SummaryListItemValue,\n SummaryListItemAction,\n} from '@digigov/ui/content/SummaryList';\nimport Button from '@digigov/ui/form/Button';\nimport { useTranslation } from '@digigov/ui/i18n';\n\nexport const StepArrayReview: React.FC<StepArrayReviewInterface> = (props) => {\n const { t } = useTranslation();\n const { currentStep } = useContext(QuestionsContext);\n const fields = getAddMoreFields(currentStep);\n const primaryField =\n currentStep.fields.find(\n (field: { key: any }) => field.key === currentStep.review?.primaryFieldKey\n ) || {};\n return (\n <>\n <PageTitleContainer>\n <PageTitleHeading>\n {currentStep.review?.title && t(currentStep.review?.title)}\n </PageTitleHeading>\n </PageTitleContainer>\n <SummaryList>\n {props.array.map(\n (item:
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAkC;AAClC,mBAAsB;AACtB,sBAAyB;AACzB,yBAAwB;AACxB,mBAAkB;AAClB,8BAAiC;AACjC,8BAAiC;AAGjC,gCAEO;AACP,yBAMO;AACP,oBAAmB;AACnB,kBAA+B;AAExB,MAAM,kBAAsD,CAAC,UAAU;AAC5E,QAAM,EAAE,EAAE,QAAI,4BAAe;AAC7B,QAAM,EAAE,YAAY,QAAI,yBAAW,wCAAgB;AACnD,QAAM,aAAS,0CAAiB,WAAW;AAC3C,QAAM,eACJ,YAAY,OAAO;AAAA,IACjB,CAAC,UAAwB,MAAM,QAAQ,YAAY,QAAQ;AAAA,EAC7D,KAAK,CAAC;AACR,SACE,6BAAAA,QAAA,2BAAAA,QAAA,gBACE,6BAAAA,QAAA,cAAC,0BAAAC,SAAA,MACC,6BAAAD,QAAA,cAAC,kDACE,YAAY,QAAQ,SAAS,EAAE,YAAY,QAAQ,KAAK,CAC3D,CACF,GACA,6BAAAA,QAAA,cAAC,sCACE,MAAM,MAAM;AAAA,IACX,CAAC,
|
|
4
|
+
"sourcesContent": ["import React, { useContext } from 'react';\nimport { Field } from '@digigov/form/Field';\nimport { Fieldset } from '@digigov/form/Fieldset';\nimport FormBuilder from '@digigov/form/FormBuilder';\nimport Label from '@digigov/form/inputs/Label';\nimport { QuestionsContext } from '@digigov/form/Questions/QuestionsContext';\nimport { getAddMoreFields } from '@digigov/form/Questions/Step/getAddMoreFields';\nimport type { StepArrayReviewInterface } from '@digigov/form/Questions/Step/types';\nimport type { FieldSpec } from '@digigov/form/types';\nimport PageTitleContainer, {\n PageTitleHeading,\n} from '@digigov/ui/app/PageTitleContainer';\nimport {\n SummaryList,\n SummaryListItem,\n SummaryListItemKey,\n SummaryListItemValue,\n SummaryListItemAction,\n} from '@digigov/ui/content/SummaryList';\nimport Button from '@digigov/ui/form/Button';\nimport { useTranslation } from '@digigov/ui/i18n';\n\nexport const StepArrayReview: React.FC<StepArrayReviewInterface> = (props) => {\n const { t } = useTranslation();\n const { currentStep } = useContext(QuestionsContext);\n const fields = getAddMoreFields(currentStep);\n const primaryField =\n currentStep.fields.find(\n (field: { key: any }) => field.key === currentStep.review?.primaryFieldKey\n ) || {};\n return (\n <>\n <PageTitleContainer>\n <PageTitleHeading>\n {currentStep.review?.title && t(currentStep.review?.title)}\n </PageTitleHeading>\n </PageTitleContainer>\n <SummaryList>\n {props.array.map(\n (item: Record<string, React.ReactNode>, idx: number) => (\n <SummaryListItem key={idx}>\n <SummaryListItemKey>\n {t(primaryField.label.primary)}\n </SummaryListItemKey>\n <SummaryListItemValue>\n {item[primaryField.key]}\n </SummaryListItemValue>\n <SummaryListItemAction\n onClick={(): void => props.handleDelete(idx)}\n >\n {t('button.delete')}\n </SummaryListItemAction>\n </SummaryListItem>\n )\n )}\n </SummaryList>\n <FormBuilder key=\"addmore\" fields={fields} onSubmit={props.handleSubmit}>\n <Fieldset>\n <Label label={currentStep.review?.addMore.title} />\n {fields.map((field: FieldSpec) => (\n <Field key={field.key} name={field.key} />\n ))}\n </Fieldset>\n <Button type=\"submit\">{t('button.submit')}</Button>\n </FormBuilder>\n </>\n );\n};\n\nexport default StepArrayReview;\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAkC;AAClC,mBAAsB;AACtB,sBAAyB;AACzB,yBAAwB;AACxB,mBAAkB;AAClB,8BAAiC;AACjC,8BAAiC;AAGjC,gCAEO;AACP,yBAMO;AACP,oBAAmB;AACnB,kBAA+B;AAExB,MAAM,kBAAsD,CAAC,UAAU;AAC5E,QAAM,EAAE,EAAE,QAAI,4BAAe;AAC7B,QAAM,EAAE,YAAY,QAAI,yBAAW,wCAAgB;AACnD,QAAM,aAAS,0CAAiB,WAAW;AAC3C,QAAM,eACJ,YAAY,OAAO;AAAA,IACjB,CAAC,UAAwB,MAAM,QAAQ,YAAY,QAAQ;AAAA,EAC7D,KAAK,CAAC;AACR,SACE,6BAAAA,QAAA,2BAAAA,QAAA,gBACE,6BAAAA,QAAA,cAAC,0BAAAC,SAAA,MACC,6BAAAD,QAAA,cAAC,kDACE,YAAY,QAAQ,SAAS,EAAE,YAAY,QAAQ,KAAK,CAC3D,CACF,GACA,6BAAAA,QAAA,cAAC,sCACE,MAAM,MAAM;AAAA,IACX,CAAC,MAAuC,QACtC,6BAAAA,QAAA,cAAC,sCAAgB,KAAK,OACpB,6BAAAA,QAAA,cAAC,6CACE,EAAE,aAAa,MAAM,OAAO,CAC/B,GACA,6BAAAA,QAAA,cAAC,+CACE,KAAK,aAAa,GAAG,CACxB,GACA,6BAAAA,QAAA;AAAA,MAAC;AAAA;AAAA,QACC,SAAS,MAAY,MAAM,aAAa,GAAG;AAAA;AAAA,MAE1C,EAAE,eAAe;AAAA,IACpB,CACF;AAAA,EAEJ,CACF,GACA,6BAAAA,QAAA,cAAC,mBAAAE,SAAA,EAAY,KAAI,WAAU,QAAgB,UAAU,MAAM,gBACzD,6BAAAF,QAAA,cAAC,gCACC,6BAAAA,QAAA,cAAC,aAAAG,SAAA,EAAM,OAAO,YAAY,QAAQ,QAAQ,OAAO,GAChD,OAAO,IAAI,CAAC,UACX,6BAAAH,QAAA,cAAC,sBAAM,KAAK,MAAM,KAAK,MAAM,MAAM,KAAK,CACzC,CACH,GACA,6BAAAA,QAAA,cAAC,cAAAI,SAAA,EAAO,MAAK,YAAU,EAAE,eAAe,CAAE,CAC5C,CACF;AAEJ;AAEA,IAAO,0BAAQ;",
|
|
6
6
|
"names": ["React", "PageTitleContainer", "FormBuilder", "Label", "Button"]
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/Questions/Step/StepContext.tsx"],
|
|
4
|
-
"sourcesContent": ["import { createContext } from 'react';\nimport { StepInterface } from '@digigov/form/Questions/Step/types';\n\nexport const StepContext = createContext<StepInterface>({\n name: '',\n fields: [],\n initial: [],\n errorLabels: [],\n submitStep: '',\n review: {\n title: '',\n primaryFieldKey: '',\n addMore: {\n title: { primary: '' },\n answers: { positive: { primary: 'Yes' }, negative: { primary: 'No' } },\n },\n },\n type: 'object',\n});\n\nexport default StepContext;\n"],
|
|
4
|
+
"sourcesContent": ["import { createContext } from 'react';\nimport type { StepInterface } from '@digigov/form/Questions/Step/types';\n\nexport const StepContext = createContext<StepInterface>({\n name: '',\n fields: [],\n initial: [],\n errorLabels: [],\n submitStep: '',\n review: {\n title: '',\n primaryFieldKey: '',\n addMore: {\n title: { primary: '' },\n answers: { positive: { primary: 'Yes' }, negative: { primary: 'No' } },\n },\n },\n type: 'object',\n});\n\nexport default StepContext;\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAA8B;AAGvB,MAAM,kBAAc,4BAA6B;AAAA,EACtD,MAAM;AAAA,EACN,QAAQ,CAAC;AAAA,EACT,SAAS,CAAC;AAAA,EACV,aAAa,CAAC;AAAA,EACd,YAAY;AAAA,EACZ,QAAQ;AAAA,IACN,OAAO;AAAA,IACP,iBAAiB;AAAA,IACjB,SAAS;AAAA,MACP,OAAO,EAAE,SAAS,GAAG;AAAA,MACrB,SAAS,EAAE,UAAU,EAAE,SAAS,MAAM,GAAG,UAAU,EAAE,SAAS,KAAK,EAAE;AAAA,IACvE;AAAA,EACF;AAAA,EACA,MAAM;AACR,CAAC;AAED,IAAO,sBAAQ;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/Questions/Step/StepDescription.tsx"],
|
|
4
|
-
"sourcesContent": ["import React, { useContext } from 'react';\nimport { StepContext } from '@digigov/form/Questions/Step/StepContext';\nimport { useTranslation } from '@digigov/ui/i18n';\nimport
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAkC;AAClC,yBAA4B;AAC5B,kBAA+B;
|
|
4
|
+
"sourcesContent": ["import React, { useContext } from 'react';\nimport { StepContext } from '@digigov/form/Questions/Step/StepContext';\nimport { useTranslation } from '@digigov/ui/i18n';\nimport type { ParagraphProps } from '@digigov/ui/typography/Paragraph';\nimport Paragraph from '@digigov/ui/typography/Paragraph';\n\nexport interface StepDescriptionInterface extends ParagraphProps {\n description?: string;\n}\n\nexport const StepDescriptionBase: React.FC<StepDescriptionInterface> = ({\n children,\n description,\n ...props\n}) => {\n const { t } = useTranslation();\n return (\n <Paragraph {...props}>\n {children || (description && t(description))}\n </Paragraph>\n );\n};\n\nexport const StepDescription: React.FC<StepDescriptionInterface> = (props) => {\n const { description: descriptionContext } = useContext(StepContext);\n const description = props.description || descriptionContext;\n return (\n <StepDescriptionBase description={description} {...props}>\n {props.children}\n </StepDescriptionBase>\n );\n};\n\nexport default StepDescription;\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAkC;AAClC,yBAA4B;AAC5B,kBAA+B;AAE/B,uBAAsB;AAMf,MAAM,sBAA0D,CAAC;AAAA,EACtE;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAM;AACJ,QAAM,EAAE,EAAE,QAAI,4BAAe;AAC7B,SACE,6BAAAA,QAAA,cAAC,iBAAAC,SAAA,EAAW,GAAG,SACZ,YAAa,eAAe,EAAE,WAAW,CAC5C;AAEJ;AAEO,MAAM,kBAAsD,CAAC,UAAU;AAC5E,QAAM,EAAE,aAAa,mBAAmB,QAAI,yBAAW,8BAAW;AAClE,QAAM,cAAc,MAAM,eAAe;AACzC,SACE,6BAAAD,QAAA,cAAC,uBAAoB,aAA2B,GAAG,SAChD,MAAM,QACT;AAEJ;AAEA,IAAO,0BAAQ;",
|
|
6
6
|
"names": ["React", "Paragraph"]
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/Questions/Step/StepForm.tsx"],
|
|
4
|
-
"sourcesContent": ["import React, { useContext } from 'react';\nimport Field from '@digigov/form/Field';\nimport { FieldProps } from '@digigov/form/Field/types';\nimport Fieldset from '@digigov/form/Fieldset';\nimport FormBuilder from '@digigov/form/FormBuilder';\nimport { StepContext } from '@digigov/form/Questions/Step/StepContext';\nimport { FormBuilderProps } from '@digigov/form/types';\nimport Button from '@digigov/ui/form/Button';\nimport { useTranslation } from '@digigov/ui/i18n';\n\nexport interface StepFormProps {\n submitButton: boolean;\n children: React.ReactNode;\n fields?: FieldProps[];\n initial?: FormBuilderProps['initial'];\n}\n\n/**\n * The StepForm component accepts a title, a caption and a\n * decription about the Step asked to the User\n */\nexport const StepForm: React.FC<StepFormProps> = ({\n children,\n submitButton,\n ...props\n}) => {\n const { t } = useTranslation();\n const { name, submitStep, ...rest } = useContext(StepContext);\n const fields = rest.fields.length ? rest.fields : props.fields;\n const initial = rest.initial ? rest.initial : props.initial;\n return (\n <FormBuilder\n initial={initial}\n fields={fields}\n onSubmit={(data): void => {\n submitStep(name, data);\n }}\n >\n {children ? (\n <>\n {children}\n {submitButton && (\n <Button type=\"submit\">{t('button.continue')}</Button>\n )}\n </>\n ) : (\n <>\n <Fieldset>\n {fields.map((field) => (\n <Field key={field.key} name={field.key} />\n ))}\n </Fieldset>\n <Button type=\"submit\">{t('button.continue')}</Button>\n </>\n )}\n </FormBuilder>\n );\n};\n\nexport default StepForm;\n"],
|
|
4
|
+
"sourcesContent": ["import React, { useContext } from 'react';\nimport Field from '@digigov/form/Field';\nimport type { FieldProps } from '@digigov/form/Field/types';\nimport Fieldset from '@digigov/form/Fieldset';\nimport FormBuilder from '@digigov/form/FormBuilder';\nimport { StepContext } from '@digigov/form/Questions/Step/StepContext';\nimport type { FormBuilderProps } from '@digigov/form/types';\nimport Button from '@digigov/ui/form/Button';\nimport { useTranslation } from '@digigov/ui/i18n';\n\nexport interface StepFormProps {\n submitButton: boolean;\n children: React.ReactNode;\n fields?: FieldProps[];\n initial?: FormBuilderProps['initial'];\n}\n\n/**\n * The StepForm component accepts a title, a caption and a\n * decription about the Step asked to the User\n */\nexport const StepForm: React.FC<StepFormProps> = ({\n children,\n submitButton,\n ...props\n}) => {\n const { t } = useTranslation();\n const { name, submitStep, ...rest } = useContext(StepContext);\n const fields = rest.fields.length ? rest.fields : props.fields;\n const initial = rest.initial ? rest.initial : props.initial;\n return (\n <FormBuilder\n initial={initial}\n fields={fields}\n onSubmit={(data): void => {\n submitStep(name, data);\n }}\n >\n {children ? (\n <>\n {children}\n {submitButton && (\n <Button type=\"submit\">{t('button.continue')}</Button>\n )}\n </>\n ) : (\n <>\n <Fieldset>\n {fields.map((field) => (\n <Field key={field.key} name={field.key} />\n ))}\n </Fieldset>\n <Button type=\"submit\">{t('button.continue')}</Button>\n </>\n )}\n </FormBuilder>\n );\n};\n\nexport default StepForm;\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAkC;AAClC,mBAAkB;AAElB,sBAAqB;AACrB,yBAAwB;AACxB,yBAA4B;AAE5B,oBAAmB;AACnB,kBAA+B;AAaxB,MAAM,WAAoC,CAAC;AAAA,EAChD;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAM;AACJ,QAAM,EAAE,EAAE,QAAI,4BAAe;AAC7B,QAAM,EAAE,MAAM,YAAY,GAAG,KAAK,QAAI,yBAAW,8BAAW;AAC5D,QAAM,SAAS,KAAK,OAAO,SAAS,KAAK,SAAS,MAAM;AACxD,QAAM,UAAU,KAAK,UAAU,KAAK,UAAU,MAAM;AACpD,SACE,6BAAAA,QAAA;AAAA,IAAC,mBAAAC;AAAA,IAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA,UAAU,CAAC,SAAe;AACxB,mBAAW,MAAM,IAAI;AAAA,MACvB;AAAA;AAAA,IAEC,WACC,6BAAAD,QAAA,2BAAAA,QAAA,gBACG,UACA,gBACC,6BAAAA,QAAA,cAAC,cAAAE,SAAA,EAAO,MAAK,YAAU,EAAE,iBAAiB,CAAE,CAEhD,IAEA,6BAAAF,QAAA,2BAAAA,QAAA,gBACE,6BAAAA,QAAA,cAAC,gBAAAG,SAAA,MACE,OAAO,IAAI,CAAC,UACX,6BAAAH,QAAA,cAAC,aAAAI,SAAA,EAAM,KAAK,MAAM,KAAK,MAAM,MAAM,KAAK,CACzC,CACH,GACA,6BAAAJ,QAAA,cAAC,cAAAE,SAAA,EAAO,MAAK,YAAU,EAAE,iBAAiB,CAAE,CAC9C;AAAA,EAEJ;AAEJ;AAEA,IAAO,mBAAQ;",
|
|
6
6
|
"names": ["React", "FormBuilder", "Button", "Fieldset", "Field"]
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/Questions/Step/StepQuote.tsx"],
|
|
4
|
-
"sourcesContent": ["import React from 'react';\nimport
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAkB;
|
|
4
|
+
"sourcesContent": ["import React from 'react';\nimport type { ParagraphProps } from '@digigov/ui/typography/Paragraph';\nimport Paragraph from '@digigov/ui/typography/Paragraph';\n\nexport const StepQuote: React.FC<ParagraphProps> = ({ children, ...props }) => {\n return <Paragraph {...props}>{children}</Paragraph>;\n};\n\nexport default StepQuote;\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAkB;AAElB,uBAAsB;AAEf,MAAM,YAAsC,CAAC,EAAE,UAAU,GAAG,MAAM,MAAM;AAC7E,SAAO,6BAAAA,QAAA,cAAC,iBAAAC,SAAA,EAAW,GAAG,SAAQ,QAAS;AACzC;AAEA,IAAO,oBAAQ;",
|
|
6
6
|
"names": ["React", "Paragraph"]
|
|
7
7
|
}
|
|
@@ -35,13 +35,13 @@ __export(StepTitle_exports, {
|
|
|
35
35
|
module.exports = __toCommonJS(StepTitle_exports);
|
|
36
36
|
var import_react = __toESM(require("react"));
|
|
37
37
|
var import_StepContext = require("@digigov/form/Questions/Step/StepContext");
|
|
38
|
-
var
|
|
39
|
-
var import_HeadingCaption = __toESM(require("@digigov/react-core/HeadingCaption"));
|
|
40
|
-
var import_PageTitleContainer = __toESM(require("@digigov/ui/app/PageTitleContainer"));
|
|
38
|
+
var import_PageTitleContainer = require("@digigov/ui/app/PageTitleContainer");
|
|
41
39
|
var import_i18n = require("@digigov/ui/i18n");
|
|
42
40
|
var import_BackLink = require("@digigov/ui/navigation/BackLink");
|
|
41
|
+
var import_Heading = require("@digigov/ui/typography/Heading");
|
|
42
|
+
var import_HeadingCaption = require("@digigov/ui/typography/HeadingCaption");
|
|
43
43
|
const StepTitleHeading = (props) => {
|
|
44
|
-
return /* @__PURE__ */ import_react.default.createElement(import_Heading.
|
|
44
|
+
return /* @__PURE__ */ import_react.default.createElement(import_Heading.Heading, null, props.children);
|
|
45
45
|
};
|
|
46
46
|
const StepTitleBase = ({
|
|
47
47
|
caption,
|
|
@@ -51,7 +51,7 @@ const StepTitleBase = ({
|
|
|
51
51
|
children
|
|
52
52
|
}) => {
|
|
53
53
|
const { t } = (0, import_i18n.useTranslation)();
|
|
54
|
-
return /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, /* @__PURE__ */ import_react.default.createElement(import_BackLink.BackLink, null, backButton || t("button.back")), /* @__PURE__ */ import_react.default.createElement(import_PageTitleContainer.
|
|
54
|
+
return /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, /* @__PURE__ */ import_react.default.createElement(import_BackLink.BackLink, null, backButton || t("button.back")), /* @__PURE__ */ import_react.default.createElement(import_PageTitleContainer.PageTitleContainer, null, children || /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, /* @__PURE__ */ import_react.default.createElement(import_HeadingCaption.HeadingCaption, { size: "xl" }, caption && t(caption)), step && /* @__PURE__ */ import_react.default.createElement(import_PageTitleContainer.PageTitleCaption, null, step), /* @__PURE__ */ import_react.default.createElement(StepTitleHeading, null, title && t(title)))));
|
|
55
55
|
};
|
|
56
56
|
const StepTitle = (props) => {
|
|
57
57
|
const { caption, title, step, backButton } = (0, import_react.useContext)(import_StepContext.StepContext);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/Questions/Step/StepTitle.tsx"],
|
|
4
|
-
"sourcesContent": ["import React, { useContext } from 'react';\nimport { StepContext } from '@digigov/form/Questions/Step/StepContext';\nimport
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAkC;AAClC,yBAA4B;AAC5B,
|
|
6
|
-
"names": ["React"
|
|
4
|
+
"sourcesContent": ["import React, { useContext } from 'react';\nimport { StepContext } from '@digigov/form/Questions/Step/StepContext';\nimport {\n PageTitleContainer,\n PageTitleCaption,\n} from '@digigov/ui/app/PageTitleContainer';\nimport { useTranslation } from '@digigov/ui/i18n';\nimport { BackLink } from '@digigov/ui/navigation/BackLink';\nimport type { HeadingProps } from '@digigov/ui/typography/Heading';\nimport { Heading } from '@digigov/ui/typography/Heading';\nimport { HeadingCaption } from '@digigov/ui/typography/HeadingCaption';\n\nexport interface StepTitleInterface {\n title?: string;\n backButton?: string;\n caption?: string;\n step?: string;\n children?: React.ReactNode;\n}\n\nexport const StepTitleHeading: React.FC<HeadingProps> = (props) => {\n return <Heading>{props.children}</Heading>;\n};\n\nexport const StepTitleBase: React.FC<StepTitleInterface> = ({\n caption,\n step,\n title,\n backButton,\n children,\n}): React.ReactElement => {\n const { t } = useTranslation();\n return (\n <>\n <BackLink>{backButton || t('button.back')}</BackLink>\n <PageTitleContainer>\n {children || (\n <>\n <HeadingCaption size=\"xl\">{caption && t(caption)}</HeadingCaption>\n {step && <PageTitleCaption>{step}</PageTitleCaption>}\n <StepTitleHeading>{title && t(title)}</StepTitleHeading>\n </>\n )}\n </PageTitleContainer>\n </>\n );\n};\n\n/**\n * The StepTitle component accepts a title, a caption and a step indicator\n * about the Step asked to the User\n */\nexport const StepTitle: React.FC<StepTitleInterface> = (props) => {\n const { caption, title, step, backButton } = useContext(StepContext);\n return (\n <StepTitleBase\n backButton={backButton}\n caption={caption}\n step={step}\n title={title}\n >\n {props.children}\n </StepTitleBase>\n );\n};\n\nexport default StepTitle;\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAkC;AAClC,yBAA4B;AAC5B,gCAGO;AACP,kBAA+B;AAC/B,sBAAyB;AAEzB,qBAAwB;AACxB,4BAA+B;AAUxB,MAAM,mBAA2C,CAAC,UAAU;AACjE,SAAO,6BAAAA,QAAA,cAAC,8BAAS,MAAM,QAAS;AAClC;AAEO,MAAM,gBAA8C,CAAC;AAAA,EAC1D;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAA0B;AACxB,QAAM,EAAE,EAAE,QAAI,4BAAe;AAC7B,SACE,6BAAAA,QAAA,2BAAAA,QAAA,gBACE,6BAAAA,QAAA,cAAC,gCAAU,cAAc,EAAE,aAAa,CAAE,GAC1C,6BAAAA,QAAA,cAAC,oDACE,YACC,6BAAAA,QAAA,2BAAAA,QAAA,gBACE,6BAAAA,QAAA,cAAC,wCAAe,MAAK,QAAM,WAAW,EAAE,OAAO,CAAE,GAChD,QAAQ,6BAAAA,QAAA,cAAC,kDAAkB,IAAK,GACjC,6BAAAA,QAAA,cAAC,wBAAkB,SAAS,EAAE,KAAK,CAAE,CACvC,CAEJ,CACF;AAEJ;AAMO,MAAM,YAA0C,CAAC,UAAU;AAChE,QAAM,EAAE,SAAS,OAAO,MAAM,WAAW,QAAI,yBAAW,8BAAW;AACnE,SACE,6BAAAA,QAAA;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA,IAEC,MAAM;AAAA,EACT;AAEJ;AAEA,IAAO,oBAAQ;",
|
|
6
|
+
"names": ["React"]
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/Questions/Step/getAddMoreFields.tsx"],
|
|
4
|
-
"sourcesContent": ["import { StepInterface } from '@digigov/form/Questions/Step/types';\nimport { FieldSpec } from '@digigov/form/types';\n\nexport const getAddMoreFields = (currentStep: StepInterface): FieldSpec[] => {\n return [\n {\n key: 'addMore',\n type: 'choice:single',\n required: true,\n extra: {\n options: [\n {\n label: currentStep.review?.addMore.answers.positive || {\n primary: 'Yes',\n },\n value: 'yes',\n },\n {\n label: currentStep.review?.addMore.answers.negative || {\n primary: 'No',\n },\n value: 'no',\n },\n ],\n },\n },\n ];\n};\n"],
|
|
4
|
+
"sourcesContent": ["import type { StepInterface } from '@digigov/form/Questions/Step/types';\nimport type { FieldSpec } from '@digigov/form/types';\n\nexport const getAddMoreFields = (currentStep: StepInterface): FieldSpec[] => {\n return [\n {\n key: 'addMore',\n type: 'choice:single',\n required: true,\n extra: {\n options: [\n {\n label: currentStep.review?.addMore.answers.positive || {\n primary: 'Yes',\n },\n value: 'yes',\n },\n {\n label: currentStep.review?.addMore.answers.negative || {\n primary: 'No',\n },\n value: 'no',\n },\n ],\n },\n },\n ];\n};\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGO,MAAM,mBAAmB,CAAC,gBAA4C;AAC3E,SAAO;AAAA,IACL;AAAA,MACE,KAAK;AAAA,MACL,MAAM;AAAA,MACN,UAAU;AAAA,MACV,OAAO;AAAA,QACL,SAAS;AAAA,UACP;AAAA,YACE,OAAO,YAAY,QAAQ,QAAQ,QAAQ,YAAY;AAAA,cACrD,SAAS;AAAA,YACX;AAAA,YACA,OAAO;AAAA,UACT;AAAA,UACA;AAAA,YACE,OAAO,YAAY,QAAQ,QAAQ,QAAQ,YAAY;AAAA,cACrD,SAAS;AAAA,YACX;AAAA,YACA,OAAO;AAAA,UACT;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACF;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/Questions/Step/types.tsx"],
|
|
4
|
-
"sourcesContent": ["import { LabelProps } from '@digigov/form/inputs/Label';\n\nexport type StepType = 'object' | 'array';\nexport type StepReviewAnswersType = 'positive' | 'negative';\nexport interface StepAddMoreInterface {\n title: LabelProps;\n answers: Record<StepReviewAnswersType, LabelProps>;\n}\nexport interface StepReviewInterface {\n primaryFieldKey: string;\n title: string;\n caption?: string;\n addMore: StepAddMoreInterface;\n}\nexport interface StepInterface {\n name: string;\n title?: string;\n description?: string;\n caption?: string;\n backButton?: string;\n step?: string;\n fields?: any;\n initial?: any;\n errorLabels?: any;\n submitStep?: any;\n review?: StepReviewInterface;\n type?: StepType;\n children?: React.ReactNode;\n}\nexport interface StepArrayReviewInterface {\n array: Record<string, any>[];\n handleSubmit: (data: any) => void;\n handleDelete: (data: any) => void;\n}\n"],
|
|
4
|
+
"sourcesContent": ["import type { LabelProps } from '@digigov/form/inputs/Label';\n\nexport type StepType = 'object' | 'array';\nexport type StepReviewAnswersType = 'positive' | 'negative';\nexport interface StepAddMoreInterface {\n title: LabelProps;\n answers: Record<StepReviewAnswersType, LabelProps>;\n}\nexport interface StepReviewInterface {\n primaryFieldKey: string;\n title: string;\n caption?: string;\n addMore: StepAddMoreInterface;\n}\nexport interface StepInterface {\n name: string;\n title?: string;\n description?: string;\n caption?: string;\n backButton?: string;\n step?: string;\n fields?: any;\n initial?: any;\n errorLabels?: any;\n submitStep?: any;\n review?: StepReviewInterface;\n type?: StepType;\n children?: React.ReactNode;\n}\nexport interface StepArrayReviewInterface {\n array: Record<string, any>[];\n handleSubmit: (data: any) => void;\n handleDelete: (data: any) => void;\n}\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;AAAA;AAAA;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/Questions/getNextStep.tsx"],
|
|
4
|
-
"sourcesContent": ["import { StepInterface } from '@digigov/form/Questions/Step/types';\n\nexport function getNextStep(\n currentStep: any,\n steps: any[],\n data: any\n): StepInterface | null {\n if (currentStep.nextStep) {\n const nextStepName = currentStep.nextStep(data);\n if (nextStepName) {\n return steps.find((step) => step.name === nextStepName);\n }\n }\n const currentStepIndex = steps.findIndex(\n (step) => step.name === currentStep.name\n );\n const nextStep = steps.slice(currentStepIndex + 1).find((step) => {\n if (step.show) {\n return step.show(data);\n }\n return true;\n });\n return nextStep;\n}\n"],
|
|
4
|
+
"sourcesContent": ["import type { StepInterface } from '@digigov/form/Questions/Step/types';\n\nexport function getNextStep(\n currentStep: any,\n steps: any[],\n data: any\n): StepInterface | null {\n if (currentStep.nextStep) {\n const nextStepName = currentStep.nextStep(data);\n if (nextStepName) {\n return steps.find((step) => step.name === nextStepName);\n }\n }\n const currentStepIndex = steps.findIndex(\n (step) => step.name === currentStep.name\n );\n const nextStep = steps.slice(currentStepIndex + 1).find((step) => {\n if (step.show) {\n return step.show(data);\n }\n return true;\n });\n return nextStep;\n}\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEO,SAAS,YACd,aACA,OACA,MACsB;AACtB,MAAI,YAAY,UAAU;AACxB,UAAM,eAAe,YAAY,SAAS,IAAI;AAC9C,QAAI,cAAc;AAChB,aAAO,MAAM,KAAK,CAAC,SAAS,KAAK,SAAS,YAAY;AAAA,IACxD;AAAA,EACF;AACA,QAAM,mBAAmB,MAAM;AAAA,IAC7B,CAAC,SAAS,KAAK,SAAS,YAAY;AAAA,EACtC;AACA,QAAM,WAAW,MAAM,MAAM,mBAAmB,CAAC,EAAE,KAAK,CAAC,SAAS;AAChE,QAAI,KAAK,MAAM;AACb,aAAO,KAAK,KAAK,IAAI;AAAA,IACvB;AACA,WAAO;AAAA,EACT,CAAC;AACD,SAAO;AACT;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/Questions/types.tsx"],
|
|
4
|
-
"sourcesContent": ["import { StepInterface } from '@digigov/form/Questions/Step/types';\n\nexport interface QuestionsInterface {\n name: string;\n steps: StepInterface[];\n onSubmit: (...args) => void;\n onChange?: (...args) => void;\n onActiveStep?: (...args) => void;\n /* `forceQuestionName` should be used by an app developer\n * to force Questions to render a specified question by name */\n forceStepName?: string;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n initialData?: any;\n localDraft?: boolean;\n errorLabels?: Record<string, string>;\n children?: React.ReactNode;\n}\n\nexport interface QuestionsContextInterface {\n currentStep: StepInterface;\n steps: StepInterface[];\n submitStep: (...args) => void;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n data?: any;\n onActiveStep?: (...args) => void;\n}\n"],
|
|
4
|
+
"sourcesContent": ["import type { StepInterface } from '@digigov/form/Questions/Step/types';\n\nexport interface QuestionsInterface {\n name: string;\n steps: StepInterface[];\n onSubmit: (...args) => void;\n onChange?: (...args) => void;\n onActiveStep?: (...args) => void;\n /* `forceQuestionName` should be used by an app developer\n * to force Questions to render a specified question by name */\n forceStepName?: string;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n initialData?: any;\n localDraft?: boolean;\n errorLabels?: Record<string, string>;\n children?: React.ReactNode;\n}\n\nexport interface QuestionsContextInterface {\n currentStep: StepInterface;\n steps: StepInterface[];\n submitStep: (...args) => void;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n data?: any;\n onActiveStep?: (...args) => void;\n}\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;AAAA;AAAA;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
+
};
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
}
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
+
var useFieldFocusManager_exports = {};
|
|
19
|
+
__export(useFieldFocusManager_exports, {
|
|
20
|
+
default: () => useFieldFocusManager_default,
|
|
21
|
+
useFieldFocusManager: () => useFieldFocusManager
|
|
22
|
+
});
|
|
23
|
+
module.exports = __toCommonJS(useFieldFocusManager_exports);
|
|
24
|
+
var import_react = require("react");
|
|
25
|
+
var import_utils = require("@digigov/form/hooks/utils");
|
|
26
|
+
function useFieldFocusManager({
|
|
27
|
+
enabled = true,
|
|
28
|
+
control,
|
|
29
|
+
subscribe,
|
|
30
|
+
setFocus
|
|
31
|
+
}) {
|
|
32
|
+
const customFocusableElements = (0, import_react.useRef)(/* @__PURE__ */ new Map());
|
|
33
|
+
const focusableElements = (0, import_react.useRef)(/* @__PURE__ */ new Map());
|
|
34
|
+
(0, import_react.useEffect)(() => {
|
|
35
|
+
if (!enabled) {
|
|
36
|
+
customFocusableElements.current.clear();
|
|
37
|
+
focusableElements.current.clear();
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
}, [enabled]);
|
|
41
|
+
const updateFocusableElements = (0, import_react.useCallback)(() => {
|
|
42
|
+
focusableElements.current.clear();
|
|
43
|
+
const formElements = (0, import_utils.extractFieldEntries)(control._fields);
|
|
44
|
+
const customFieldRefs = (0, import_utils.mapElementsToFields)(
|
|
45
|
+
customFocusableElements.current
|
|
46
|
+
);
|
|
47
|
+
const customElements = (0, import_utils.extractFieldEntries)(customFieldRefs);
|
|
48
|
+
const combinedElements = new Map(formElements);
|
|
49
|
+
customElements.forEach((element, fieldName) => {
|
|
50
|
+
combinedElements.set(fieldName, element);
|
|
51
|
+
});
|
|
52
|
+
focusableElements.current = (0, import_utils.sortElementsByPosition)(combinedElements);
|
|
53
|
+
}, [control._fields]);
|
|
54
|
+
const registerCustomFocusableElement = (0, import_react.useCallback)(
|
|
55
|
+
(fieldName, element) => {
|
|
56
|
+
if (fieldName && element) {
|
|
57
|
+
customFocusableElements.current.set(fieldName, element);
|
|
58
|
+
updateFocusableElements();
|
|
59
|
+
}
|
|
60
|
+
return function unregister() {
|
|
61
|
+
customFocusableElements.current.delete(fieldName);
|
|
62
|
+
updateFocusableElements();
|
|
63
|
+
};
|
|
64
|
+
},
|
|
65
|
+
[updateFocusableElements]
|
|
66
|
+
);
|
|
67
|
+
(0, import_react.useEffect)(() => {
|
|
68
|
+
if (!enabled || !subscribe) return;
|
|
69
|
+
const callback = subscribe({
|
|
70
|
+
formState: {
|
|
71
|
+
errors: true
|
|
72
|
+
// Subscribe to any form state change that might indicate field structure changes
|
|
73
|
+
},
|
|
74
|
+
callback: () => {
|
|
75
|
+
setTimeout(updateFocusableElements, 0);
|
|
76
|
+
}
|
|
77
|
+
});
|
|
78
|
+
updateFocusableElements();
|
|
79
|
+
return () => callback();
|
|
80
|
+
}, [enabled, updateFocusableElements, subscribe]);
|
|
81
|
+
const focusOnError = (0, import_react.useCallback)(
|
|
82
|
+
(errors) => {
|
|
83
|
+
if (!enabled) return;
|
|
84
|
+
if (!errors || Object.keys(errors).length === 0) return;
|
|
85
|
+
for (const [fieldName, element] of Array.from(
|
|
86
|
+
focusableElements.current
|
|
87
|
+
)) {
|
|
88
|
+
if (hasFieldError(errors, fieldName)) {
|
|
89
|
+
if (element && typeof element.focus === "function") {
|
|
90
|
+
element.focus();
|
|
91
|
+
return;
|
|
92
|
+
} else if (element && element.name) {
|
|
93
|
+
setFocus(fieldName);
|
|
94
|
+
return;
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
},
|
|
99
|
+
[enabled, setFocus]
|
|
100
|
+
);
|
|
101
|
+
return {
|
|
102
|
+
/**
|
|
103
|
+
* Registers a custom focusable element with the given field name.
|
|
104
|
+
*
|
|
105
|
+
* Returns a callback function to unregister the element by field name.
|
|
106
|
+
*
|
|
107
|
+
* @param fieldName - The name of the field to associate with the element.
|
|
108
|
+
* @param element - The HTML element to register as focusable.
|
|
109
|
+
*/
|
|
110
|
+
registerCustomFocusableElement,
|
|
111
|
+
focusOnError
|
|
112
|
+
};
|
|
113
|
+
}
|
|
114
|
+
function hasFieldError(errors, fieldName) {
|
|
115
|
+
if (!errors || typeof errors !== "object") return false;
|
|
116
|
+
if (errors[fieldName]) {
|
|
117
|
+
return true;
|
|
118
|
+
}
|
|
119
|
+
const keys = fieldName.split(/[.[\]]+/).filter(Boolean);
|
|
120
|
+
let current = errors;
|
|
121
|
+
for (const key of keys) {
|
|
122
|
+
if (current && typeof current === "object") {
|
|
123
|
+
current = current[key];
|
|
124
|
+
} else {
|
|
125
|
+
return false;
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
return !!current;
|
|
129
|
+
}
|
|
130
|
+
var useFieldFocusManager_default = useFieldFocusManager;
|
|
131
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
132
|
+
0 && (module.exports = {
|
|
133
|
+
useFieldFocusManager
|
|
134
|
+
});
|
|
135
|
+
//# sourceMappingURL=useFieldFocusManager.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/hooks/useFieldFocusManager.ts"],
|
|
4
|
+
"sourcesContent": ["import { useCallback, useEffect, useRef } from 'react';\nimport type { Control, FieldValues, Ref, UseFormReturn } from 'react-hook-form';\nimport {\n extractFieldEntries,\n mapElementsToFields,\n sortElementsByPosition,\n} from '@digigov/form/hooks/utils';\n\nexport interface UseFieldFocusManagerProps<T extends FieldValues> {\n enabled?: boolean;\n control: Control<T>;\n subscribe: UseFormReturn['subscribe'];\n setFocus: UseFormReturn['setFocus'];\n}\n\n/**\n * Custom hook to manage focus on form fields.\n *\n * It collects all focusable elements from the form fields and sorts them according to their position in the DOM.\n */\nexport function useFieldFocusManager<T extends FieldValues>({\n enabled = true,\n control,\n subscribe,\n setFocus,\n}: UseFieldFocusManagerProps<T>) {\n /** Array to hold any external focusable elements registered by the user */\n const customFocusableElements = useRef(new Map<string, HTMLElement>());\n /** Map to hold focusable elements by field name */\n const focusableElements = useRef(new Map<string, Ref>());\n\n // When disabled, clear custom focusable elements and focusable elements map\n useEffect(() => {\n if (!enabled) {\n customFocusableElements.current.clear();\n focusableElements.current.clear();\n return;\n }\n }, [enabled]);\n\n const updateFocusableElements = useCallback(() => {\n // Clear existing focusable elements\n focusableElements.current.clear();\n // Extract from form fields\n const formElements = extractFieldEntries(control._fields);\n // Extract from custom elements (convert to FieldRefs format first)\n const customFieldRefs = mapElementsToFields(\n customFocusableElements.current\n );\n const customElements = extractFieldEntries(customFieldRefs);\n\n // Combine both maps\n const combinedElements = new Map(formElements);\n customElements.forEach((element, fieldName) => {\n combinedElements.set(fieldName, element);\n });\n\n // Sort once by DOM position\n focusableElements.current = sortElementsByPosition(combinedElements);\n }, [control._fields]);\n\n // Register / unregister custom focusable elements\n const registerCustomFocusableElement = useCallback(\n (fieldName: string, element: HTMLElement) => {\n if (fieldName && element) {\n customFocusableElements.current.set(fieldName, element);\n updateFocusableElements();\n }\n\n return function unregister() {\n customFocusableElements.current.delete(fieldName);\n updateFocusableElements();\n };\n },\n [updateFocusableElements]\n );\n\n // Collect focusable elements when fields change\n useEffect(() => {\n if (!enabled || !subscribe) return;\n const callback = subscribe({\n formState: {\n errors: true,\n // Subscribe to any form state change that might indicate field structure changes\n },\n callback: () => {\n // Defer to next tick to ensure DOM is updated\n setTimeout(updateFocusableElements, 0);\n },\n });\n\n // Initial update\n updateFocusableElements();\n\n return () => callback();\n }, [enabled, updateFocusableElements, subscribe]);\n\n // Subscribe to errors and focus the first field (according to the DOM) with an error\n const focusOnError = useCallback(\n (errors: Record<string, any>) => {\n if (!enabled) return;\n if (!errors || Object.keys(errors).length === 0) return;\n for (const [fieldName, element] of Array.from(\n focusableElements.current\n )) {\n if (hasFieldError(errors, fieldName)) {\n if (element && typeof element.focus === 'function') {\n element.focus(); // Focus the element directly\n return;\n } else if (element && element.name) {\n setFocus(fieldName); // Field is registered with react-hook-form\n return;\n }\n }\n }\n },\n [enabled, setFocus]\n );\n\n return {\n /**\n * Registers a custom focusable element with the given field name.\n *\n * Returns a callback function to unregister the element by field name.\n *\n * @param fieldName - The name of the field to associate with the element.\n * @param element - The HTML element to register as focusable.\n */\n registerCustomFocusableElement,\n focusOnError,\n };\n}\n\n// Helper function to check for nested field errors\nfunction hasFieldError(\n errors: Record<string, any>,\n fieldName: string\n): boolean {\n if (!errors || typeof errors !== 'object') return false;\n\n // Handle direct field names first\n if (errors[fieldName]) {\n return true;\n }\n\n // Split the field name and traverse the error object\n const keys = fieldName.split(/[.[\\]]+/).filter(Boolean);\n let current = errors;\n\n for (const key of keys) {\n if (current && typeof current === 'object') {\n current = current[key];\n } else {\n return false;\n }\n }\n\n // Check if we found a truthy error value\n return !!current;\n}\n\nexport default useFieldFocusManager;\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAA+C;AAE/C,mBAIO;AAcA,SAAS,qBAA4C;AAAA,EAC1D,UAAU;AAAA,EACV;AAAA,EACA;AAAA,EACA;AACF,GAAiC;AAE/B,QAAM,8BAA0B,qBAAO,oBAAI,IAAyB,CAAC;AAErE,QAAM,wBAAoB,qBAAO,oBAAI,IAAiB,CAAC;AAGvD,8BAAU,MAAM;AACd,QAAI,CAAC,SAAS;AACZ,8BAAwB,QAAQ,MAAM;AACtC,wBAAkB,QAAQ,MAAM;AAChC;AAAA,IACF;AAAA,EACF,GAAG,CAAC,OAAO,CAAC;AAEZ,QAAM,8BAA0B,0BAAY,MAAM;AAEhD,sBAAkB,QAAQ,MAAM;AAEhC,UAAM,mBAAe,kCAAoB,QAAQ,OAAO;AAExD,UAAM,sBAAkB;AAAA,MACtB,wBAAwB;AAAA,IAC1B;AACA,UAAM,qBAAiB,kCAAoB,eAAe;AAG1D,UAAM,mBAAmB,IAAI,IAAI,YAAY;AAC7C,mBAAe,QAAQ,CAAC,SAAS,cAAc;AAC7C,uBAAiB,IAAI,WAAW,OAAO;AAAA,IACzC,CAAC;AAGD,sBAAkB,cAAU,qCAAuB,gBAAgB;AAAA,EACrE,GAAG,CAAC,QAAQ,OAAO,CAAC;AAGpB,QAAM,qCAAiC;AAAA,IACrC,CAAC,WAAmB,YAAyB;AAC3C,UAAI,aAAa,SAAS;AACxB,gCAAwB,QAAQ,IAAI,WAAW,OAAO;AACtD,gCAAwB;AAAA,MAC1B;AAEA,aAAO,SAAS,aAAa;AAC3B,gCAAwB,QAAQ,OAAO,SAAS;AAChD,gCAAwB;AAAA,MAC1B;AAAA,IACF;AAAA,IACA,CAAC,uBAAuB;AAAA,EAC1B;AAGA,8BAAU,MAAM;AACd,QAAI,CAAC,WAAW,CAAC,UAAW;AAC5B,UAAM,WAAW,UAAU;AAAA,MACzB,WAAW;AAAA,QACT,QAAQ;AAAA;AAAA,MAEV;AAAA,MACA,UAAU,MAAM;AAEd,mBAAW,yBAAyB,CAAC;AAAA,MACvC;AAAA,IACF,CAAC;AAGD,4BAAwB;AAExB,WAAO,MAAM,SAAS;AAAA,EACxB,GAAG,CAAC,SAAS,yBAAyB,SAAS,CAAC;AAGhD,QAAM,mBAAe;AAAA,IACnB,CAAC,WAAgC;AAC/B,UAAI,CAAC,QAAS;AACd,UAAI,CAAC,UAAU,OAAO,KAAK,MAAM,EAAE,WAAW,EAAG;AACjD,iBAAW,CAAC,WAAW,OAAO,KAAK,MAAM;AAAA,QACvC,kBAAkB;AAAA,MACpB,GAAG;AACD,YAAI,cAAc,QAAQ,SAAS,GAAG;AACpC,cAAI,WAAW,OAAO,QAAQ,UAAU,YAAY;AAClD,oBAAQ,MAAM;AACd;AAAA,UACF,WAAW,WAAW,QAAQ,MAAM;AAClC,qBAAS,SAAS;AAClB;AAAA,UACF;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAAA,IACA,CAAC,SAAS,QAAQ;AAAA,EACpB;AAEA,SAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IASL;AAAA,IACA;AAAA,EACF;AACF;AAGA,SAAS,cACP,QACA,WACS;AACT,MAAI,CAAC,UAAU,OAAO,WAAW,SAAU,QAAO;AAGlD,MAAI,OAAO,SAAS,GAAG;AACrB,WAAO;AAAA,EACT;AAGA,QAAM,OAAO,UAAU,MAAM,SAAS,EAAE,OAAO,OAAO;AACtD,MAAI,UAAU;AAEd,aAAW,OAAO,MAAM;AACtB,QAAI,WAAW,OAAO,YAAY,UAAU;AAC1C,gBAAU,QAAQ,GAAG;AAAA,IACvB,OAAO;AACL,aAAO;AAAA,IACT;AAAA,EACF;AAGA,SAAO,CAAC,CAAC;AACX;AAEA,IAAO,+BAAQ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|